Skip to content

sanad: coder panel P1a — approvals bridge, respond sidecar, web proxies - #2

Merged
osodev-1 merged 9 commits into
mainfrom
coder-panel-p1
Aug 13, 2026
Merged

sanad: coder panel P1a — approvals bridge, respond sidecar, web proxies#2
osodev-1 merged 9 commits into
mainfrom
coder-panel-p1

Conversation

@osodev-1

Copy link
Copy Markdown
Owner

P1a of the coder-panel effort (spec: docs/superpowers/specs/2026-08-12-coder-agent-panel-design.md, plan: docs/superpowers/plans/2026-08-13-coder-panel-p1a-approvals-bridge.md).

The browser coder agent becomes interactive:

  • Async on_request seam in WireRunner (architect reject-path unchanged)
  • CoderRunner request bridge: ApprovalRequest/QuestionRequest → per-turn journal + pending registry; capabilities flipped to supports_question/plan_mode
  • Fail-closed respond(): request_gone (410) / invalid_response (400, leaves request pending); strict pending check, never the wire layer's lenient id match
  • POST /internal/coder/.../respond + pendingRequests in /turn; P0 deny golden test consciously replaced by a threaded HTTP approval round-trip
  • Conversation cap (CODER_MAX_CONVERSATIONS=3, checked before ticket burn)
  • Architect wall-clock budget (ARCHITECT_MAX_TURN_SECONDS=1800) — closes the P0 idle-probe unbounded-hold regression
  • sanad-web /api/coder/* proxies behind authenticateCoderPanel (terminal allowlist → coder allowlist, both fail closed)

Verification: terminal-server suite 177 passed (12.5s); web suite 249 passed; tsc clean; final whole-branch review clean (carried items: journal-order hardening, respond/cancel race semantics, no-turn reject test → P1b brief).

Known fork-CI noise: pr-title-checker + typos fail on upstream Kimi artifacts, same as PR #1 — not required checks.

@osodev-1
osodev-1 merged commit 64b8e45 into main Aug 13, 2026
1 of 4 checks passed
@osodev-1
osodev-1 deleted the coder-panel-p1 branch August 13, 2026 13:07
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