- cari.ts: /cari + /search twin, 128-char pre-search cap (T-04-21), honest no-match refusal (D-13), single sendVenue card with inline OPEN + alternates - deep-link carrier corrected per RESEARCH Pitfall 1: web_app button URL carries ?dest=<plain slug id> — WebAppInfo has only a url field; no crypto - origin from configured MINI_APP_URL only (never user input); blank origin omits the OPEN button instead of guessing (T-04-30) - strings.ts: searchUsage/searchNoMatch/searchQueryTooLong/searchOpenButton/ osmAttribution in en+ms; helpMenu gains the /cari line in both locales - category-only logging law (D-15): four literal rejection categories, query never logged; success path logs nothing - config: MINI_APP_URL in Env + wrangler vars (public, not secret) + .dev.vars.example + docs/CONFIGURATION.md row and sections - bot deps gain @araharah/search (workspace link)
23 lines
564 B
JSON
23 lines
564 B
JSON
{
|
|
"name": "@araharah/bot",
|
|
"private": true,
|
|
"type": "module",
|
|
"scripts": {
|
|
"test": "node test/runner.mjs",
|
|
"typecheck": "tsc --noEmit",
|
|
"dev": "wrangler dev --port 8787 --local",
|
|
"deploy": "wrangler deploy && node scripts/set-webhook.mjs",
|
|
"commands": "node scripts/register-commands.mjs"
|
|
},
|
|
"dependencies": {
|
|
"grammy": "^1.46.0",
|
|
"@araharah/search": "*"
|
|
},
|
|
"devDependencies": {
|
|
"wrangler": "^4.151.3",
|
|
"typescript": "^5.9.3",
|
|
"@cloudflare/workers-types": "^5.20261022.1",
|
|
"@types/node": "^26.6.5"
|
|
}
|
|
}
|