moooon
Motir
Vibe the project. Bring an idea — Motir's three AI layers plan it, track it, and ship it, end to end. You're looking at Motir, built in Motir.
- Vibe Project
- Open Source
- AI Agent
- AI Loop
- 6
- requests
- 4
- upvotes
- 532
- planned
- 5,569
- shipped
- Planning bug: the `subsumption` advisory only sees MERGED pull requests — a defect filed 48 min into the OPEN window of the PR fixing it is invisible to every check
- (motir-core) There is no `work_item:archive` key — a REVERSIBLE, non-cascading soft-remove is governed by `work_item:delete`, so granting archive confers the irreversible subtree delete
- (motir-core) `coverage-gate-globs` is a whole-tree scan MOTIR-3144's lane left behind — it globs 483 files in 0.8 s and times out at 15 s on a loaded coverage shard, twice in three days
- Planning bug: three 8.4 legal cards were typed `coding_agent` while their acceptance required counsel review — and the human-sized estimate was the tell nobody read
- Planning bug: two bugs were filed mid-run WITHOUT the bug-filing protocol — one proposed a rule the corpus already carries in both homes, and the rule forbidding exactly that was routed to the pass that skipped it
- 8.5.6 Wire Sentry error monitoring (source maps + tunnel, env-gated)
- 8.5.19 Protect the production Neon branch — `main` on `snowy-truth-13928044` is `protected: false`, so nothing refuses its deletion
- AI prompt content can be routed to an upstream with no lawful EU transfer basis — the gateway's channel set is unconstrained and nothing pins which providers may serve EU traffic
- 8.5.12 Prove the Fly deploy gate REFUSES a red-CI commit, and record a tested rollback (manual)
- (motir-ai) The lesson-delivery guard still reads the PRE-`occ:` marker grammar, so the first migration generated after MOTIR-3552 fails CI on a correct corpus
- 8.5.7 Wire consent-gated product analytics (ties to 8.4 cookie consent)
- 8.5.8 Configure DB backups + perform a tested restore (runbook + verification)
- 8.5.17 Turn the delivery webhook ON in production — register the endpoint with Resend, set `RESEND_WEBHOOK_SECRET` on `motir-core`, and read the first real event back
- (motir-core) WHO moves a plan out of `planned` — the eager `work-item/transitioned` consumer, the approve-path backstop, and the repair transitions
- (motir-core) The FIFTH `PlanStatus` member, TOTAL across every surface that switches on one — enum + migration, DTO, v1, MCP, five display switches, en/zh
- (motir-core) A plan ref written as a `MOTIR-<n>` KEY resolves or is refused — never silently accepted
- (motir-core) `validate_plan` stops answering VALID for a plan the approve button rejects — the ref-graph verdict joins the finishability one
- (motir-core) Decision — what `planned` PROMISES, and what the drift state is called given `planStalenessService` already owns the word `stale`
- (motir-core) Gate the KNOWABLE plan rejections before `planned` — the two PURE ref-graph checks at the append, the batched ones at the close
- 8.30 (motir-core) `planned` must mean APPROVABLE — gate the knowable rejections before close, and give the drift case a status of its own