MotirBuilding in public
MOTIR · moooon
onMotir
You’re viewing a public project. Anyone can view it — no account needed. Sign in to submit, upvote, or comment on requests.View-only — you can’t edit work items
MOTIR-3898

Re-cut 1 of 3 — the CROSS-CUTTING rules: what every cell gets, and the back-reference rewrites

Implemented
Description

First of three re-cut subtasks. Establishes what stays in core and the phase packs — the rules whose situation occurs on every card regardless of kind or type — and performs the connective rewrites MOTIR-3892 enumerates, so the two later cuts move self-standing limbs.

Doing the rewrites HERE rather than spread across the three cuts is deliberate: they are the only prose edits in the whole story, and they belong in one reviewable diff.

What is cross-cutting, from the measurement

Of VERIFY_EVERY_PRECONDITION's 48,703 chars, roughly 9,550 in the head plus the numbered limbs (1)–(8) are genuinely kind- and type-agnostic: the verdict ladder, blocked_by vs relates_to, the already-linked key, prerequisite-beside-not-under, the cross-repo producer, cardinality-as-a-smuggled-assumption, and the whole measurement family — population against a ref, carry the search not the verdict, a second vocabulary, a sweep is not its pattern, a quote owes its ref, a sibling measurement. A count is a count whatever the card's type.

Acceptance criteria

  • Each connective named by MOTIR-3892 is rewritten so its limb stands alone, and the PR lists them one per row: the phrase before, the phrase after, and the antecedent it used to depend on. No limb keeps a reference to text in another pack.
  • No obligation is lost in a rewrite: each row of that table states what the sentence still requires, and a reviewer can check it without opening the old text.
  • The conservation baseline is refreshed in the same commit and its own diff is reviewed in the PR — the rewrites are replace ops by construction, which is the case the deliberate-refresh path exists for.
  • The cautionary-register count does not rise; if it does, the PR says which marker and why the clause is a rule rather than a lesson.
  • SHARED_PLANNING_RULES composed from the new segments is measured against the old, and any difference beyond the named rewrites is a defect, not a rounding.
  • The cross-cutting set is asserted REACHABLE from every legal cell — that is the property that makes it cross-cutting rather than merely unrouted.

Context refs

  • motir-ai src/llm/planningRulePacks.tsVERIFY_EVERY_PRECONDITION and the phase-deepen / core segments.
  • motir-ai tests/planningRuleConservation.test.ts — the classifier and the refresh path.
  • motir-ai tests/planningRuleRegister.test.ts — the ratchet.
  • MOTIR-3892 — supplies the enumerated connective list this card executes; without it the scope is discovered mid-move.