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
- 5
- Anfragen
- 4
- Stimmen
- 462
- geplant
- 4.328
- ausgeliefert
- (motir-core) `reinforce_lesson` — the MCP door a hand-run sweep calls, on the `id` `search_lessons` already hands back
- (motir-ai) The generator carries the OCCURRENCE explicitly — a widening bumps the clock, a wording correction never does
- (motir-ai) `POST /v1/lessons/:id/reinforce` — the named act, over BOTH scopes, not the tenant-only resolver the retire endpoints use
- (motir-ai) The OCCURRENCE ledger — a hit becomes a row, and that row is what makes the clock bump exactly once
- A lesson matched BY HAND is never reinforced — the runbook sweep's hit and every widening leave `lastOccurredAt` untouched, so only the two automatic paths can reset the retirement clock
- (motir-core) The E2E seam for the index WRITER path — the run-credential mint and the tarball redirect, on the app server AND the workerOwn the job substrate — a Postgres-backed queue replaces Inngest, and the serverless-shaped stepping goes with it
- (motir-core) `docs/jobs.md` § Debounce + the fleet decision record — the engine's debounce, and the `maxDuration` premise the stepped shape was built on is GONEOwn the job substrate — a Postgres-backed queue replaces Inngest, and the serverless-shaped stepping goes with it
- (motir-core) Story E2E — a push burst coalesces into ONE refresh run that boots, polls and settles on the engine, and survives a mid-index worker restartOwn the job substrate — a Postgres-backed queue replaces Inngest, and the serverless-shaped stepping goes with it
- (motir-core) Story gate — a supervisor RESUMES after a real worker restart, the debounce coalesces a burst, and the ledger contract and admission cap are untouchedOwn the job substrate — a Postgres-backed queue replaces Inngest, and the serverless-shaped stepping goes with it
- (motir-core) COLLAPSE the CI-RUNNER supervisor — `system.ci-runner-boot` converges onto `ciRunnerBootService.runIntent`, and the second composition goesOwn the job substrate — a Postgres-backed queue replaces Inngest, and the serverless-shaped stepping goes with it
- (motir-core) COLLAPSE the INDEX supervisor — `indexFleetSteps.ts` becomes one `while` loop over the service's own composition, and the `maxDuration` comments are CORRECTED rather than deletedOwn the job substrate — a Postgres-backed queue replaces Inngest, and the serverless-shaped stepping goes with it
- (motir-core) The engine's DEBOUNCE — a same-key `run_at` pushed forward on each arrival, so a push burst still coalesces into ONE run carrying the latest eventOwn the job substrate — a Postgres-backed queue replaces Inngest, and the serverless-shaped stepping goes with it
- (motir-core) Decision — what survives a WORKER RESTART mid-supervision: which waits stay durable steps, which become plain `await`sOwn the job substrate — a Postgres-backed queue replaces Inngest, and the serverless-shaped stepping goes with it
- Cut the container supervisors over — and COLLAPSE the stepped shape now that nothing times outOwn the job substrate — a Postgres-backed queue replaces Inngest, and the serverless-shaped stepping goes with it
- Record the never-fires lesson — an acceptance criterion that asks to OBSERVE something in production is unsatisfiable when the trigger has never fired (5 of MOTIR-3463's 20 ids, all_time=0)
- A revoked API token is never removed — the row stays in the credential list forever with no affordance to delete it, and the `revokedAt` it was kept for has no audit reader anywhere in the product
- 16 Roadmap: a level draws edges whose BLOCKED end is not on it — "Not in an epic" redraws the whole EPIC chain as 12 anonymous "blocked elsewhere" ghosts, and the root draws a grouped task as one
- `main` is RED on `Playwright E2E (bulk-5)` — a streaming boundary leaves TWO copies of the comments read-only notice in the DOM, and `jobs-fanout-engine`'s invite click times out at 120s on both attempts
- Planning bug: a mechanism-withdrawal amendment swept four of five dependents — the one it missed was the one whose SCOPE had not moved
- (motir-core) Three dedup layers, none legible where a reader looks — `docs/jobs.md`'s canonical-job § and `JobEvent`'s index comment still name Inngest as the only enforcer after MOTIR-3459Own the job substrate — a Postgres-backed queue replaces Inngest, and the serverless-shaped stepping goes with it