mirror of
https://github.com/Yeachan-Heo/oh-my-claudecode.git
synced 2026-09-03 06:25:33 +08:00
* fix(workflows): remove remaining UltraQA lifecycle dependencies (#3826) Independent fix-forward owner for promotion #3749; does not batch with PR #3827 (Ultrawork/CCG retirement). Rebased onto dev@7704866f. Live lifecycle removal: - Ralph startup: drop the UltraQA mutual-exclusion blocker and isUltraQAActive (src/hooks/ralph/loop.ts, ralph/index.ts, hooks barrel). - Delete src/hooks/ultraqa/ and scripts/test-mutual-exclusion.ts. - Workflow lifecycle: remove ultraqa from mode-registry ExecutionMode and MODE_CONFIGS, mode-names maps/lists, skill-state canonical workflows and protection map, keyword-detector CANONICAL_WORKFLOW_SLASH_SKILLS, pre-compact checkpoint reading/display, merge-readiness evidence set, constants/names MODES. - Stop hook (scripts/persistent-mode.{mjs,cjs} + template): remove the Priority 7 UltraQA reinforcement block; retired state no longer blocks Stop. SessionStart/SessionEnd still clear retired ultraqa-state.json (bounded pre-existing-state cleanup only). - autopilot: stop seeding ultraqa_cycles (bridge, state, AutopilotQA type); transitions no longer start/clear UltraQA state; QA and transition prompts drop the UltraQA wording (stage prompts rebuilt). - state-tools: ultraqa no longer state_write-eligible; stays read/clear-eligible via RETIRED_READ_CLEAR_MODES for /cancel cleanup. - autopilot cancel: ultraqa cleanup routes through mode-state-io as bounded cleanup of pre-existing retired state. - Docs/skills: drop live ultraqa guidance; historical 5.0.0 removal notes retained; reserved-name guards intentionally keep ultraqa. Generated artifacts: dist/ and bridge/ rebuilt from the patched sources so the committed runtime closure matches what prepack ships (removes dist/hooks/ultraqa/*, adds the tracked entitlement fixtures #3822 introduced in src). No __pycache__ or other cache artifacts. Tests: hooks.test.ts UltraQA/mutual-exclusion suites removed; cancel.test.ts uses real retired-state files; Stop-hook contract test asserts retired ultraqa state does NOT block. Verification at this head: tsc --noEmit clean; eslint 0 errors (22 warnings = exact dev base level); vitest full suite green except known pre-existing load flakes (session-end detached-worker, skill-entitlements-cross-surface timeout, python-sandbox timing, smoke cancel race) which reproduce identically on clean dev base and pass in isolation; inventory regenerated: 0 ultraqa occurrences, drift suite green; npm pack closure subset test green; prompt projections in sync. Closes #3826 Co-authored-by: Claude Opus 5 <noreply@anthropic.com> * chore(inventory): bind post-rebase UltraQA closure provenance Inventory-only commit anchoring provenance.head to the UltraQA lifecycle removal source commit (issue #3826 / PR #3830) on dev@5e168123. Co-authored-by: Claude Opus 5 <noreply@anthropic.com> --------- Co-authored-by: gaebal-gajae <clawdbot@users.noreply.github.com> Co-authored-by: Claude Opus 5 <noreply@anthropic.com>