0(motir-core) `roadmap-flow.spec.ts`'s seed races the status-derivation job — the SECOND spec in this class, and `retries: 1` made the run greenBug
0Planning bug: a card planned a live-run indicator on the READY list, whose membership predicate excludes every item that has a run — and removing it exposed that a run had no general door at allBug
0Repoint the motir.co apex, issue the certificate, and update every external registration (manual)Sub-task
0THE CUTOVER — the apex moves, the certificate is issued, and every external registration followsStory
0moooon's legal documents leave motir-core — /legal moves to motir-marketing, and the core keeps configurable legal linksStory
0Build-in-public is a CLOUD feature — MOTIR_CLOUD gates /explore and /p/*, and a self-hosted Motir is single-tenantStory
0Mirror the SUM re-cut into motir-meta — retire `kind-leaf`, cut `phase-deepen` on its subjectsFeature
0Planning bug: a story ACCEPTANCE CRITERION had no child that owns it — MOTIR-3870 pre-dates MOTIR-3891 and was scoped against a different parentBug
0Global lessons added since the day-one seed batch do not RETRIEVE — two rows queried near-verbatim are absent from the ranked set, and every global row `search_lessons` returns carries a `cmr11*` idBug
0Planning bug: a story was authored with three children whose acceptance criteria can only be met after the story's own merge and deploy — the container had no exit, and every gating signal read greenBug
0Planning bug: MOTIR-3892 "measured" a closed PR from its CARD — #332 never split the constant, changed no test, and turned no guard redBug
0Planning bug: the `AgentRun` collision was RECORDED and not removed — the name shipped into the plan anyway, and a year's drift made it three-wayBug
0Playwright E2E + acceptance video — the whole public journey on one host, and the old app-host paths redirectingSub-task
0Vitest gate (motir-core) — coverage floor over the moved surface, the host/origin seams, and a guard that every app/(public) segment has a declared hostSub-task
0301 app.motir.co/{explore,docs,legal}/* and / to motir.co — plus the in-code sweep of every absolute-URL readerSub-task
0One robots.txt and one sitemap.xml for the whole host — and publicSiteOrigin() stops delegating to MOTIR_BASE_URLSub-task
0Design — one public chrome for motir.co: the landing, /explore, /docs and /legal under a single header, nav and footerSub-task
0Decision (ADR) — one origin per hostname: which host answers for each public surface, and what becomes of motir-marketingSub-task
0Public project pages join the brand host — /p/* answers on motir.co, and leaves the session's origin behindStory
0(motir-core) With Vitest balanced, E2E becomes CI's ceiling at ~15.5 min — five bulk legs carry 1705 s of test work behind a 178 s per-leg boot nobody has costedBug
0(motir-core) 19 of the 30 most expensive test files landed on ONE Vitest leg — `--shard` slices the alphabet, so the `tests/integration/**` cluster travels togetherBug
0The story's coverage + integration gate — the assembled selector, end to end from a generation passSub-task
0Re-cut 1 of 3 — the CROSS-CUTTING rules: what every cell gets, and the back-reference rewritesSub-task
0The selector re-cut — phase → kind at skeleton, kind OR type at deepen, and the cell space becomes a SUMSub-task
0`type` becomes an output of SKELETON — `propose_node` carries it, and `bug` leaves the typed setSub-task
0The planning rule packs, re-cut on a phase → kind | type selector — and `type` becomes an output of SKELETONStory
0Mirror the pack restructure into motir-meta — and teach `split.py` about packs that do not exist in the pre-split corpusFeature
0(motir-core) The Vitest lane is CI's critical path at 24.8 min — 1.6x the next-longest job — and the runners it would need to halve that are sitting idle (queue time is zero)Bug
08.3.18 The `/design` design asset predates the package it draws — both mocks inline 0.1.0's dark accent ink, and the current-page nav treatment is justified by a 4.41:1 that is now 5.76:1 (motir-marketing)Bug
08.3.17 motir.co serves `@motir/design-system@0.1.0`, which predates MOTIR-3745 AND MOTIR-3774 — five accent-ink cells fail AA on the live site, and `/design` is about to make every one of them reachable in one clickBug
0`replan` is `plan` — retire the operation axis from rule selection, because a fresh plan already carries the reconcile TOOLS without the reconcile RULESFeature
0One pack PER TYPE, and containers get their packs at `deepen` — eight types have no authoring bar, and `deepen/epic` and `deepen/story` compose byte-identicallyFeature
08.3.15 Copy — the `/design` showcase page's words + the nav label, at the marketing register (motir-marketing)Sub-task
08.3.14 Design — the public design showcase at motir.co (`/design`): the composed specimen, the three axis pickers + theme toggle, and the site's first current-page nav entry (motir-marketing)Sub-task
0The `type` axis reaches only 4 of 14 types, and `phase-deepen` carries the other ten's rules — every deepen cell pays 78,304 chars it cannot all needFeature
0Planning bug: an acceptance criterion's own COMMAND enumerated a strict superset of its claim, so the criterion was unpassable and its literal reading was destructiveBug
0Planning bug: a card generalised the side-effects-outside-the-transaction rule onto the AUDIT ROW, which is the one write that must be inside itBug
0Planning bug: a card's rung-2 evidence asserted an absent workflow edge that ships — the decision survived, the argument's KIND did notBug
0Planning bug: MOTIR-3735 deliverable 2 asserted `schema.prisma`'s `sessionBranch` "carries no comment" — it carries a 12-line one at the cited refBug
0Planning bug: a card whose precondition is a DEPLOY was gated by a `blocked_by` edge, which discharges at MERGE — the RULE half (the lesson shipped)Bug
0(motir-core) A `modify` proposal's body cannot carry an intra-plan CHIP — materialize rewrites `motir-ref:planItem:` on `add`s only, so an amendment naming a card the same plan proposes ships an inert linkBug
08.3.13 Publish `@motir/brand@0.1.0` to npm by hand + configure its Trusted Publisher (manual)Sub-task
0Planning bug: the delivery-reader inventory's own re-measurement was short by two — its grep cannot match `?.workItemId`Bug
0Planning bug: a story was authored with a DEPLOYED-tenant verification card inside it, gating three siblings that ship at merge — so the story's own pull request could never openBug
0Planning bug: a card's post-merge PUBLISH obligation was recorded as a comment and offered as a question ("say so and I will propose one") instead of filed as a card — MOTIR-1456 went `done` with `@motir/brand` unpublished, and MOTIR-1152 hit it eight hours laterBug
0Planning bug: the corpus CONTRADICTS ITSELF on what approve does to a proposal's status — `_shared.md` and `run.md` say it derives nothing and cite the code, `plan-procedure.md` says it derives from the edges, and the shipped `materialize` agrees with `plan-procedure.md`Bug
0Planning bug: a card that ENUMERATES the homes of a symbol quotes a grep it did not run — MOTIR-3777 named seven of tenBug