Skip to content

fix(ISA): remove stale TheRouter.hook.ts classifier references#1525

Open
jbmml wants to merge 1 commit into
danielmiessler:mainfrom
jbmml:fix/isa-stale-therouter-refs
Open

fix(ISA): remove stale TheRouter.hook.ts classifier references#1525
jbmml wants to merge 1 commit into
danielmiessler:mainfrom
jbmml:fix/isa-stale-therouter-refs

Conversation

@jbmml

@jbmml jbmml commented Jul 17, 2026

Copy link
Copy Markdown
Contributor

TheRouter.hook.ts was retired with the modes/tiers system (HookSystem.md: "retired entirely (commit 4dd0fbe19)… There is no successor classifier"), but the ISA skill still instructs the model to expect its GOAL_SIGNAL / INTERVIEW_ELIGIBLE emissions. This promotes each workflow's own already-designed fallback to primary, so the guidance matches reality with no behavior change.

Scope is deliberately ISA-only. The ~48 other "TheRouter" mentions across the repo are historical records (CHANGELOG, HookSystem.md, RouterSystem.md) that correctly document the retirement and are left untouched. Only the three operational instructions that tell the model to act on the dead signals are changed.

Changes

LifeOS/install/skills/ISA/Workflows/Scaffold.md:61
Before:

Classifier handshake: TheRouter.hook.ts may emit GOAL_SIGNAL: <1|2|3|4|none> in additionalContext. Trust as hint, re-validate via the detector above.

After:

Goal-signal detection: no classifier hook emits GOAL_SIGNAL anymore (TheRouter.hook.ts was retired with the modes/tiers system) — the four-signal detector above is the only mechanism.

LifeOS/install/skills/ISA/Workflows/Scaffold.md:92
Before:

  • INTERVIEW_ELIGIBLE: false in the most recent TheRouter.hook.ts additionalContext block (the hook decided this is fast-path work). Line absent — e.g. a continuation prompt where the hook didn't re-fire — → infer eligibility from the running tier: true iff tier ≥ E3. This handoff is explicit text-passing; no shared state, no subprocess IPC. The model is the carrier.

After:

  • Interview eligibility is inferred from the running tier: true iff tier ≥ E3 (below E3 is fast-path work, so the check is skipped). (TheRouter.hook.ts, which used to emit INTERVIEW_ELIGIBLE hints, was retired with the modes/tiers system — the tier rule, formerly the line-absent fallback, is now the sole determinant.)

LifeOS/install/skills/ISA/Workflows/CheckCompleteness.md:112
Before:

  • If session additionalContext contains GOAL_SIGNAL: <1|2|3|4> (non-none) AND principal_stated_goal: in ISA frontmatter is empty/null → hard failure: "literal capture missed — classifier detected goal-signal but Scaffold did not preserve."

After:

  • If principal_stated_goal_signal: in the ISA frontmatter is set (the four-signal detector fired at scaffold) AND principal_stated_goal: is empty/null → hard failure: "literal capture missed — the detector fired but Scaffold did not preserve the literal." (Formerly checked the retired classifier's GOAL_SIGNAL line; now an ISA-internal consistency check between the recorded signal and the recorded literal.)

Fixes #1524

TheRouter.hook.ts was retired with the modes/tiers system, but the ISA
skill still instructs the model to expect its GOAL_SIGNAL /
INTERVIEW_ELIGIBLE emissions. Promote the workflows' own line-absent
fallbacks to primary: detector-only goal-signal capture, tier-derived
interview eligibility, and an ISA-internal literal-preservation check
(recorded signal vs recorded literal) replacing the dead
session-additionalContext condition.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

ISA skill still references retired TheRouter.hook.ts (GOAL_SIGNAL / INTERVIEW_ELIGIBLE handshake)

1 participant