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
- solicitações
- 4
- votos
- 382
- planejadas
- 4.152
- entregues
- (motir-core) The SIX low-level installation-token mints that resolve no role — three in the GitHub provider, three in `checkRuns.ts`, where the `Motir / work item link` check has never been written on a hosted repositoryApproval gates — every decision that holds work up happens IN Motir, behind ONE approve language new kinds join
- (motir-core) The acceptance-video switch's copy COMPLETES its sentence — "its status cannot be moved by hand" ships once the acceptance gate is on the contract AND the manual flip is refused (en + zh)Approval gates — every decision that holds work up happens IN Motir, behind ONE approve language new kinds join
- (motir-core) DECIDE whether a dead letter should FILE a work item — the dead-letter → Sentry → bug path already exists, so the open question is the THRESHOLD and the duplicateProduction errors become planned work — a monitor connects, its issues arrive as bugs in a container the project chooses, and fixing one closes it back
- (motir-core · test) Story E2E + ACCEPTANCE VIDEO — one Approve on a story run decides the acceptance and merges the story's pull request; a single-card run's E2E subtask shows no acceptance question and the story does (en + zh)Approval gates — every decision that holds work up happens IN Motir, behind ONE approve language new kinds join
- (motir-core · test) VITEST gate — coverage floor over the acceptance gate's changed surface, the placement matrix (story run vs single-card run), one press → acceptance decided + members merged, and the no-second-door guardApproval gates — every decision that holds work up happens IN Motir, behind ONE approve language new kinds join
- (motir-core) THE STORY SAYS WHICH QUESTION — the acceptance frame leads with the receipt and renders the story's pull requests + How to test beneath it as what Approve merges, and stands alone when the story delivers nothing (en + zh)Approval gates — every decision that holds work up happens IN Motir, behind ONE approve language new kinds join
- (motir-core) THE GATE SET LEARNS ACCEPTANCE — `acceptance_result` joins the predicate as a PRIMARY carrier, and pressing it on a story run also merges the story's pull requests through the existing merge-or-enqueue pathApproval gates — every decision that holds work up happens IN Motir, behind ONE approve language new kinds join
- (motir-core) Register `acceptance_result` as a gate KIND — the enum row + migration, the handler and the renderer, raised on the STORY whatever the run target, and the bespoke acceptance flip retires into the contractApproval gates — every decision that holds work up happens IN Motir, behind ONE approve language new kinds join
- (motir-core) The FOUR SEAM callers that mint without their repository — the reconcile worker among them, whose per-pass token cache is keyed on the installation aloneApproval gates — every decision that holds work up happens IN Motir, behind ONE approve language new kinds join
- The ACCEPTANCE-VIDEO gate — a story's receipt becomes a decision ON THE STORY in the ONE approve language, and on a story run it leads a double gate whose one press also merges the story's codeApproval gates — every decision that holds work up happens IN Motir, behind ONE approve language new kinds join
- (motir-core) The plan-review read carries each proposal's FOLDER TRAIL — `folderTrail: { id, name }[]`, root first, for its own folder or its root-most committed ancestor's, from one batched read
- (motir-core) E2E — folders on both planning canvases: the root draws folder cards and no filed item, a folder drills to its folders then its items, a folder-filed proposal is drawn where the design places it, and the folder crumb navigates back
- (motir-core) The plan-review canvas (`PlanReviewCanvas`, `/plans/[id]`) draws FOLDERS — the folder read at the root, a folder's own level, the empty-folder state and the navigable folder crumb, with folder-filed proposals placed as the design settles
- (motir-core) The plan-change overlay canvas (`PlanChangeCanvas`) draws FOLDERS — the folder read at the root, a folder's own level, the empty-folder state and the navigable folder crumb, with folder-filed proposals placed as the design settles
- 40 (motir-core) The planning canvases never draw a FOLDER — MOTIR-5710 opted `/roadmap` into the folder read, and the planning overlay (`PlanChangeCanvas`) and plan review (`PlanReviewCanvas`) still draw every filed item loose at the root
- (motir-core) The `Failed jobs` health signal counts dead letters over a 24-HOUR window, so 1,381 standing unreplayed rows render as a green `0 dead-lettered · 24h`
- 42 (motir-core) A LOST check completion strands a green pull request at `ci: running` for ever — every reconcile path skips a set that still holds a pending row, so the card never reaches In Review and no approve-to-merge gate is ever raised
- (motir-core) The pull-request webhook's changed-path capture mints through the user-facing App for a HOSTED repository, so a hosted repository's pull requests never record their pathsApproval gates — every decision that holds work up happens IN Motir, behind ONE approve language new kinds join
- (motir-core) RUN the CI-state backfill on PRODUCTION — dry run, read the counts, apply, re-run dry, and record all three on this cardApproval gates — every decision that holds work up happens IN Motir, behind ONE approve language new kinds join
- (motir-core) A required integration secret can be absent from the deployment with nothing detecting it — `SENTRY_APP_CLIENT_SECRET` was missing for 7 days after MOTIR-5257 recorded it set, and only a human clicking Connect would ever have found out