Skip to content

fix: wire upstream and watch/triage commands in cli-entry.ts#280

Merged
bradygaster merged 2 commits intobradygaster:mainfrom
tamirdresher:fix/rewire-upstream-watch
Mar 8, 2026
Merged

fix: wire upstream and watch/triage commands in cli-entry.ts#280
bradygaster merged 2 commits intobradygaster:mainfrom
tamirdresher:fix/rewire-upstream-watch

Conversation

@tamirdresher
Copy link
Contributor

Summary

Both upstream and watch/triage commands had full implementations but were not routed in cli-entry.ts - the recurring unwired command bug class (issues #224, #236, #237).

What changed

  • cli-entry.ts: Wire upstream command (import + routing block)
  • cli-entry.ts: Replace triage/watch placeholder stub with actual runWatch() call
  • cli-entry.ts: Add upstream command to help text
  • cli-command-wiring.test.ts: Clear KNOWN_UNWIRED set - all 18 commands now wired

Root cause

Brady's cli-entry.ts rewrite (v0.8.21-0.8.23) overwrote the routing added in merged PRs #225 and #238. The command implementations survived (they're in separate files), but the routing was lost.

Testing

  • 22/22 wiring regression tests pass
  • TypeScript compiles clean (tsc --noEmit)
  • upstream.ts now routed via upstreamCommand()
  • watch.ts now routed via runWatch() (was printing 'pending')

Fixes squad upstream and squad watch/squad triage commands for the next release.

@tamirdresher tamirdresher force-pushed the fix/rewire-upstream-watch branch 2 times, most recently from c9f3caa to 8ff8654 Compare March 8, 2026 18:30
Both commands had full implementations (upstream.ts, watch.ts) but were
not routed in cli-entry.ts — the recurring 'unwired command' bug class
(issues bradygaster#224, bradygaster#236, bradygaster#237).

- upstream: add import + routing block for upstreamCommand()
- triage/watch: replace placeholder stub with actual runWatch() call
- help text: add upstream command description
- test: clear KNOWN_UNWIRED set (all commands now wired)

Root cause: Brady's cli-entry.ts rewrite (v0.8.21-0.8.23) overwrote
the wiring added in PRs bradygaster#225 and bradygaster#238.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
@tamirdresher tamirdresher force-pushed the fix/rewire-upstream-watch branch from 8ff8654 to 3c762d4 Compare March 8, 2026 18:41
Tests that read live .squad/team.md and .squad/routing.md were hardcoding
agent names (Fenster, Keaton, Hockney). Every time Brady renames the squad
(e.g., Usual Suspects → Apollo 13), these tests break.

Fixed by making live-file tests assert structure and behavior, not names:
- parseRoster(): verify properties exist, not specific member names
- parseRoutingRules(): verify structure, emoji presence, not agent strings
- parseModuleOwnership(): verify shape, not which agent owns which module
- triageIssue(): verify source/confidence, not which agent was selected

Tests with inline fixtures (hardcoded test data) still assert specific
names — those are self-contained and don't break on rebirths.

Also bumps speed-gates line count budget for upstream help text.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
@tamirdresher tamirdresher force-pushed the fix/rewire-upstream-watch branch from 3c762d4 to 619e06d Compare March 8, 2026 18:49
@bradygaster
Copy link
Owner

i am sorry!

@bradygaster bradygaster merged commit 94aef2e into bradygaster:main Mar 8, 2026
1 check passed
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.

2 participants