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
- 558
- planned
- 5,471
- shipped
- Planning bug: MOTIR-4703 enumerated a field's READERS, concluded it was unwired, and prescribed a fix that contradicts the contract recorded at its WRITE site
- (motir-ai) A session reads the PLAN, not the TREE — an author session's level omits the COMMITTED siblings under the same parent, and a REVISION is grounded on its proposals alone with every committed work item refused, though a reviewer may ask for one to change
- (motir-ai) The REVISION arm never descends either — `readRevisePlanTarget` passes no `walk`, so a revision's one lay session is the project's TOP LEVEL whatever the plan holds, and `lay/story` · `lay/task` · `lay/bug` stay unreachable for it
- 3937.16 (motir-ai) A revision of ANY plan holding a `subtask` or `task` proposal THROWS — `PlanStateItem` carries no `type`, so `authorPending`'s per-proposal author session cannot compose `author/subtask`
- (motir-ai) The lay session's STEP 5 opens with a rule about DESCRIPTIONS it never sees — "if a later description invalidates an earlier sibling, go BACK and fix it" is a single-session leftover in `RUNBOOK_LAY_CLOSE`
- (motir-ai) The augment situation prompt is a second runbook — its operation-era STEP list collides with the FIVE STEPS (an author session is told "STEP 4 alone", then handed STEPS 1, 2 and 5), and its two CORE RULE boxes reach BOTH phases of EVERY anchored run and forbid the reconcile the lay session is told to perform
- (motir-ai) The LAY tier still speaks in ONBOARDING's voice — "THE ONBOARDING WORKFLOW", "the onboarding root rule" and "THE ONBOARDING GROUNDING" reach every lay session of every situation, though only the project-first row is onboarding
- (motir-core · design) `todo-list.mock.html` puts CSS escapes inside its `class` attributes, so 138 utilities never match — right by accident in light, and unreadable in its own dark panel
- A plan's TITLE and SUMMARY cannot be corrected after creation — the correction door reaches every proposal but never the plan, so one wrong sentence costs the whole plan
- (motir-ai) The MODE is a PASS-START SNAPSHOT stated as a fact about the plan — every `author` session in pass 1 is told "the plan is empty, nothing has been proposed on it yet" right after the level's titles were proposed; a session reads the tree before it starts, so the axis is a relic of the pass loop and should be retired (or read per session)
- (motir-ai) A LAY session cannot RE-TITLE a committed sibling — `title` is a body key owned by `author`, which left the lay surface, and a kept sibling never gets an author session; the `phase-lay` reconcile rule still promises "re-title … a `modify`" for a tool that no longer exists, so a `todo` item with a wrong title can only be archived and re-proposed
- (motir-ai) The ROOT level has no cell — `lay/epic` is two levels: the project's top level (lays EPICS) and an epic's level (lays STORIES) share one key, one pack list and one declaration, so "a skeleton cell knows what it LAYS" is false at the root
- Sweep the `Modal.Body`-bypass class app-wide — measure every `<Modal>` call site that owns no scroll container, fix the ones that clip, and add a guard so there is no fourth instanceSelf-improvement — auto-reported quality bugs
- (motir-ai) "Plan a new story" lays the project's EPIC level on both doors — a bare prompt routes to the project arm and skips PART 1, and a settled `{target: null, kind}` is written on a frame and consumed by nothing, so the no-id `author` the ADR calls THE ENTRY is unreachable
- (motir-gateway) `NOTICE` and `UPSTREAM.md` assert the Motir layer sits OUTSIDE the upstream tree — 22 upstream files carry Motir edits and 15 Motir files live inside it, so the documented SECURITY-rebase procedure is calibrated to a tree that no longer exists
- (motir-core) app.motir.co/robots.txt advertises http://localhost:3000 — the route is PRERENDERED at build time, where MOTIR_BASE_URL does not exist, and never reads the correct runtime value
- (motir-core) Verify on a REAL merge burst that no `Acceptance video` main baseline is evicted — the post-merge half of MOTIR-4095Self-improvement — auto-reported quality bugs
- (motir-core) app.motir.co serves an EMPTY sitemap Search Console errors on permanently — an empty `<urlset>` cannot express "nothing to crawl", so the deliberate signal is unreceivable
- 8.87 (motir-core) The plan review rail's transcript states ONE overflow axis — a summary token wider than its 311px column draws a rail-wide HORIZONTAL scrollbar instead of wrapping
- THE CUTOVER — set the public-site origin, verify the external registrations, submit the sitemap and smoke the live journeyMotir's public web presence — one host per audience, and an open-core line through motir-core (motir.co · app.motir.co)