Commit Graph

  • 586bc73c8c feat(modules): add Gemini AI integration module tiennm99 2026-05-10 02:30:04 +07:00
  • b387a6ea42 feat(modules): port new command modules + update registry tiennm99 2026-05-10 02:29:58 +07:00
  • 03c2476616 docs(aws): bootstrap + ops cheatsheets tiennm99 2026-05-10 02:29:52 +07:00
  • e5cee5c08f feat(deploy): AWS SAM template + Makefile + GitHub Actions tiennm99 2026-05-10 02:29:49 +07:00
  • 27a54977d3 feat(server): wire KV_PROVIDER env selection (memory|firestore|dynamodb) tiennm99 2026-05-10 02:29:43 +07:00
  • b061ab78df feat(storage): add DynamoDB KV provider sibling to Firestore tiennm99 2026-05-10 02:29:39 +07:00
  • 5bcb643222 docs(plans): research AWS vs GCP free tier + create AWS port plan tiennm99 2026-05-10 02:29:35 +07:00
  • 2b9bbf27ae feat(observability): request log middleware + in-memory metrics tiennm99 2026-05-09 17:30:15 +07:00
  • 4bcd8ed7cf ci: bump golangci-lint v2.2.2 -> v2.12.2 for Go 1.25 support tiennm99 2026-05-09 17:19:49 +07:00
  • 3cfb0366c3 ci: bump golangci-lint-action to v7; drop firestore emulator tiennm99 2026-05-09 17:18:36 +07:00
  • be13a597c7 feat(modules): port lolschedule (5 commands; daily-push cron deferred) tiennm99 2026-05-09 17:14:01 +07:00
  • d7ccafafb3 feat(modules): port loldle-splash tiennm99 2026-05-09 17:00:24 +07:00
  • 08e5a6d7fa feat(modules): port loldle-ability tiennm99 2026-05-09 16:53:26 +07:00
  • ec890ef0f4 feat(modules): port loldle-quote tiennm99 2026-05-09 16:45:51 +07:00
  • 4046d6af42 chore(plans): mark fix-all-review-findings plan completed tiennm99 2026-05-09 16:33:43 +07:00
  • bdbcc43f85 chore(tooling): golangci-lint + govulncheck + defensive guards tiennm99 2026-05-09 16:33:21 +07:00
  • 765cce549d test(handlers): integration tests + recording bot + emulator on CI tiennm99 2026-05-09 16:19:38 +07:00
  • 9abade4ce0 feat(log): structured slog.JSONHandler + 22-site rewire tiennm99 2026-05-09 16:01:00 +07:00
  • 80ef664473 refactor(modules): extract shared chathelper + champname packages tiennm99 2026-05-09 15:52:40 +07:00
  • 939c5fedab feat(server): high-priority hardening + critical blockers tiennm99 2026-05-09 15:52:15 +07:00
  • 980126ea28 chore(plans): mark Phase 6a partial; log code-review findings tiennm99 2026-05-09 12:19:27 +07:00
  • 0b2914fe34 feat(modules): port loldle-emoji tiennm99 2026-05-09 12:19:22 +07:00
  • 79fc690ed3 refactor(modules): allow hyphens in module names tiennm99 2026-05-09 12:19:16 +07:00
  • e99253fc2b chore(plans): mark Phase 5 done; log review findings tiennm99 2026-05-09 09:57:00 +07:00
  • 479a6ea9ea feat(modules): port loldle classic + fix winRate truncation tiennm99 2026-05-09 09:56:54 +07:00
  • 676c481def refactor(modules): extract per-subject lock to internal/keylock tiennm99 2026-05-09 09:56:47 +07:00
  • 8c62d73895 build: claude-code project settings + ignore agent runtime state tiennm99 2026-05-09 09:35:32 +07:00
  • fda1510e6e chore(plans): mark Phase 5b done, log review findings tiennm99 2026-05-09 09:35:28 +07:00
  • 5980897475 feat(modules): port wordle module + per-subject locking tiennm99 2026-05-09 09:35:23 +07:00
  • 25f06eaaf2 chore(plans): mark Phase 5a partial, log review findings tiennm99 2026-05-09 08:25:01 +07:00
  • 45a57e1573 feat(modules): port util + misc; expose Registry to handlers tiennm99 2026-05-09 08:24:52 +07:00
  • c7a631bffd chore(plans): mark Phase 04 done + record review findings tiennm99 2026-05-08 23:51:32 +07:00
  • 1f86f3df12 feat(storage): Firestore KVStore + KVProvider abstraction tiennm99 2026-05-08 23:51:24 +07:00
  • 067abb72a1 chore(plans): update phase 02-03 status and record code review findings tiennm99 2026-05-08 23:27:21 +07:00
  • 35ad4cb997 feat(server,modules): bootstrap server and module framework tiennm99 2026-05-08 23:27:12 +07:00
  • 5d27cd8356 chore: switch to Apache-2.0 license; import plans from upstream miti99bot tiennm99 2026-05-08 22:48:34 +07:00
  • ab617ade63 Initial commit tiennm99 2026-05-08 22:44:45 +07:00
  • 9eb1c527af Clear and rewrite tiennm99 2026-08-04 23:21:19 +07:00
  • 46e073d607 chore(plans): migrate to miti99bot-go repo tiennm99 2026-05-08 22:51:36 +07:00
  • b2616155dd feat(lolschedule): add /lolschedule [date] command tiennm99 2026-05-08 14:42:59 +07:00
  • d6af89efe7 revert(loldle): restore default max guesses to pre-tuning values tiennm99 2026-05-07 15:06:25 +07:00
  • 293c6adfde chore(repo): ignore .claude/ local agent state tiennm99 2026-05-07 15:06:23 +07:00
  • b52fa7094e feat(loldle): tunable max guesses per subject + retuned defaults tiennm99 2026-05-07 13:52:09 +07:00
  • 5782e4779e revert(loldle): restore default max guesses to pre-tuning values tiennm99 2026-05-07 15:06:25 +07:00
  • 14e5668c96 chore(repo): ignore .claude/ local agent state tiennm99 2026-05-07 15:06:23 +07:00
  • e03d2a937c feat(loldle): tunable max guesses per subject + retuned defaults tiennm99 2026-05-07 13:52:09 +07:00
  • 59a0b76f91 chore(plans): drop orphan reports tied to no active plan tiennm99 2026-04-26 10:24:44 +07:00
  • 3a310dbf06 chore(plans): co-locate reports with their archived plans tiennm99 2026-04-26 10:13:43 +07:00
  • 5cb1a812d4 chore(plans): archive completed plans + mark atlas migration code-complete tiennm99 2026-04-26 09:56:38 +07:00
  • b660692eb2 feat(db): finalize MongoDB Atlas migration documentation tiennm99 2026-04-26 09:34:25 +07:00
  • 54f4c28807 feat(scripts): phase 07 — reverse-backfill scripts + delete guard tiennm99 2026-04-26 09:29:14 +07:00
  • 439e874a11 feat(observability): phase 06 — timing telemetry + soak analyzer + burst tester tiennm99 2026-04-26 09:22:04 +07:00
  • afe7d768b7 feat(scripts): phase 05 — backfill + verify + wipe (local node, no admin routes) tiennm99 2026-04-26 09:13:00 +07:00
  • e1890e1dea feat(db,cron): phase 04 — dual-write wrappers + factory routing + drift verifier + e2e tiennm99 2026-04-26 09:02:07 +07:00
  • 1eb4991700 feat(db,trading): phase 03 — MongoTradesStore + trading refactor + SqlStore shim tiennm99 2026-04-26 08:48:18 +07:00
  • ccf8e4599e feat(db): phase 02 — MongoKVStore + memoized client + fake-mongo tiennm99 2026-04-26 08:48:01 +07:00
  • 3ef8540665 feat(db): phase 01 — atlas wrangler config + secret-leak lint + mongodb dep tiennm99 2026-04-26 08:32:19 +07:00
  • 96015442c6 docs(plans): add mongodb atlas migration plan with 3-round review tiennm99 2026-04-25 21:03:38 +07:00
  • 434b0cc35b feat(loldle): add ability and splash champion-guessing modules tiennm99 2026-04-24 23:58:42 +07:00
  • a91d82a15d feat(loldle): add emoji and quote champion-guessing modules tiennm99 2026-04-24 23:30:11 +07:00
  • bf0b53a426 docs(plans): archive code-review audit report from twentyq plan tiennm99 2026-04-24 18:58:12 +07:00
  • eb00d0c409 docs(architecture): add missing types.js to file tree tiennm99 2026-04-24 18:54:23 +07:00
  • 0be7cc9a95 chore: project cleanup — purge stale function-calling refs + sync docs tiennm99 2026-04-24 18:30:25 +07:00
  • 1412166ad7 feat(twentyq): LLM-generated category + initial hint from bare keyword seeds tiennm99 2026-04-24 16:26:55 +07:00
  • 1d41d27b2b fix(webhook): bump grammY timeout 10s → 25s for LLM call headroom tiennm99 2026-04-24 15:51:16 +07:00
  • 93eb0a458f tune(twentyq): make AI hints cryptic/indirect instead of definition-like tiennm99 2026-04-24 15:47:23 +07:00
  • 94bba2efa9 fix(twentyq): drop function calling, use JSON-in-content for Gemma 4 compat tiennm99 2026-04-24 14:57:58 +07:00
  • 85a266b7f7 feat(twentyq): add reverse-Akinator yes/no game module powered by Workers AI tiennm99 2026-04-24 14:37:23 +07:00
  • a9e11de92a feat(doantu): add /doantu_hint — 3 warm-but-not-hot related words tiennm99 2026-04-23 13:23:53 +07:00
  • 58deb531e8 refactor(doantu): drop sigmoid calibration — map raw cosine * 100 tiennm99 2026-04-23 12:55:58 +07:00
  • 7725f5a3ba fix(doantu): retune calibration for phow2sim's wider cosine distribution tiennm99 2026-04-23 12:54:43 +07:00
  • 6373a2f882 fix(doantu): reset round when target fell out of phow2sim vocab tiennm99 2026-04-23 12:20:43 +07:00
  • 155b7dc245 feat(doantu): constrain target pool to phow2sim rank 100-1000 tiennm99 2026-04-23 12:09:56 +07:00
  • 5030ae4630 fix(register): stub env.AI so semantle init doesn't break registration tiennm99 2026-04-23 11:38:27 +07:00
  • 9be979d268 refactor(doantu): swap Workers AI bge-m3 for hosted phow2sim HTTP API tiennm99 2026-04-23 11:35:32 +07:00
  • 837314fa72 feat(semantle,doantu): calibrate cosine score via normalized sigmoid tiennm99 2026-04-23 00:33:54 +07:00
  • 9116d58708 refactor(semantle): switch embedding model from bge-small-en-v1.5 to bge-m3 tiennm99 2026-04-23 00:22:28 +07:00
  • 458c979fe0 refactor(semantle,doantu): drop ConceptNet vestiges, trim wordlist API tiennm99 2026-04-23 00:19:28 +07:00
  • 8bf2499914 refactor(doantu): swap ConceptNet for Workers AI bge-m3 embeddings tiennm99 2026-04-22 23:53:36 +07:00
  • 8390e37f1c refactor(semantle): swap ConceptNet for Workers AI embeddings tiennm99 2026-04-22 23:48:17 +07:00
  • 2649c139db feat(doantu): add Vietnamese semantle module (protected visibility) tiennm99 2026-04-22 23:29:36 +07:00
  • 9305f7a683 refactor(semantle): drop word filter, expose line-based wordlist API tiennm99 2026-04-22 23:19:51 +07:00
  • 866f6d663f feat(semantle): source target pool from google-10000-english dictionary tiennm99 2026-04-22 23:12:07 +07:00
  • b459cc9ee7 refactor(semantle): swap word2sim backend for ConceptNet tiennm99 2026-04-22 23:07:54 +07:00
  • 52c50528a7 refactor(semantle): drop /semantle_new; reply on duplicate guesses tiennm99 2026-04-22 22:20:47 +07:00
  • e3fcc2e9c8 feat(semantle): add word2vec guessing game module tiennm99 2026-04-22 22:05:27 +07:00
  • ba829d2906 fix(loldle): start round timer on first guess, not round end tiennm99 2026-04-22 17:00:31 +07:00
  • cedd9da4ac chore: run biome format across the repo tiennm99 2026-04-22 14:14:29 +07:00
  • 173d1dbb18 fix(loldle): recover newer champions skipped by the scraper tiennm99 2026-04-22 14:07:11 +07:00
  • 1cb5215a01 refactor(loldle): align display labels with loldle.net grid tiennm99 2026-04-22 13:54:23 +07:00
  • 57832c3a6c refactor(loldle): trim module to current behavior only tiennm99 2026-04-22 13:49:38 +07:00
  • f1ea74b0c5 refactor(loldle): store only championNames in KV, recompute rows on render tiennm99 2026-04-22 13:33:46 +07:00
  • aa11847acb refactor(loldle): consume loldle.net's raw schema directly tiennm99 2026-04-22 13:29:55 +07:00
  • b794c25a45 refactor(loldle): import champions.json directly, drop ESM wrapper tiennm99 2026-04-22 13:24:24 +07:00
  • 470130195e refactor(loldle): source all champion data from loldle.net tiennm99 2026-04-22 13:19:10 +07:00
  • 8dd4a4617f chore(loldle): refresh champion data from loldle.net tiennm99 2026-04-22 13:14:23 +07:00
  • 4cb5cf341a feat(loldle): weekly scraper for champion data from loldle.net tiennm99 2026-04-22 13:14:12 +07:00
  • da79408542 feat(loldle): reject duplicate guesses within a round tiennm99 2026-04-22 09:35:22 +07:00
  • d03b1859a5 feat(loldle): sticker reactions + per-attempt flavor + solve time tiennm99 2026-04-22 00:00:50 +07:00
  • 06a93c6c60 feat(util): add private /stickerid to capture bot-scoped sticker file_ids tiennm99 2026-04-21 23:48:27 +07:00