mirror of
https://github.com/tiennm99/miti99bot.git
synced 2026-04-17 11:20:53 +00:00
grammY-based bot with a module plugin system loaded from the MODULES env var. Three command visibility levels (public/protected/private) share a unified command namespace with conflict detection at registry build. - 4 initial modules (util, wordle, loldle, misc); util fully implemented, others are stubs proving the plugin system end-to-end - util: /info (chat/thread/sender ids) + /help (pure renderer over the registry, HTML parse mode, escapes user-influenced strings) - KVStore interface with CFKVStore and a per-module prefixing factory; getJSON/putJSON convenience helpers; other backends drop in via one file - Webhook at POST /webhook with secret-token validation via grammY's webhookCallback; no admin HTTP surface - Post-deploy register script (npm run deploy = wrangler deploy && node --env-file=.env.deploy scripts/register.js) for setWebhook and setMyCommands; --dry-run flag for preview - 56 vitest unit tests across 7 suites covering registry, db wrapper, dispatcher, help renderer, validators, and HTML escaper - biome for lint + format; phased implementation plan under plans/
34 lines
681 B
JSON
34 lines
681 B
JSON
{
|
|
"$schema": "https://biomejs.dev/schemas/1.9.0/schema.json",
|
|
"organizeImports": { "enabled": true },
|
|
"linter": {
|
|
"enabled": true,
|
|
"rules": {
|
|
"recommended": true,
|
|
"style": {
|
|
"noNonNullAssertion": "off",
|
|
"useTemplate": "off"
|
|
},
|
|
"suspicious": {
|
|
"noConsoleLog": "off"
|
|
}
|
|
}
|
|
},
|
|
"formatter": {
|
|
"enabled": true,
|
|
"indentStyle": "space",
|
|
"indentWidth": 2,
|
|
"lineWidth": 100
|
|
},
|
|
"javascript": {
|
|
"formatter": {
|
|
"quoteStyle": "double",
|
|
"semicolons": "always",
|
|
"trailingCommas": "all"
|
|
}
|
|
},
|
|
"files": {
|
|
"ignore": ["node_modules", ".wrangler", "dist", "coverage"]
|
|
}
|
|
}
|