Require approval for setup-code device pairing [AI]#81292
Conversation
|
Codex review: needs real behavior proof before merge. Summary Reproducibility: yes. for the current-main behavior and the PR regression from source inspection: current main auto-approves the baseline QR bootstrap path, while the PR makes that path return Real behavior proof Next step before merge Security Review findings
Review detailsBest possible solution: Keep the hardening goal as a maintainer security/product decision: if operator handoff must be removed, preserve a one-handshake node bootstrap path or add coordinated client wait/retry onboarding with real setup-code proof. Do we have a high-confidence way to reproduce the issue? Yes for the current-main behavior and the PR regression from source inspection: current main auto-approves the baseline QR bootstrap path, while the PR makes that path return Is this the best way to solve the issue? No. Deleting gateway silent approval alone is not the narrowest maintainable fix because it reopens the shipped QR onboarding failure unless native clients or the setup-code flow are updated and proven live. Full review comments:
Overall correctness: patch is incorrect Acceptance criteria:
What I checked:
Likely related people:
Remaining risk / open question:
Codex review notes: model gpt-5.5, reasoning high; reviewed against 8fd0f9965e24. |
|
Not applicable to this automation stage; changelog/release-note and external real behavior proof requirements are handled outside auto-pr stages. Quoted comment from @clawsweeper:
|
* fix: require approval for setup-code bootstrap pairing * addressing review-skill * addressing codex review * addressing codex review * addressing codex review * addressing codex review * addressing codex review * addressing ci * addressing ci * docs: add changelog entry for PR merge
* fix: require approval for setup-code bootstrap pairing * addressing review-skill * addressing codex review * addressing codex review * addressing codex review * addressing codex review * addressing codex review * addressing ci * addressing ci * docs: add changelog entry for PR merge
* fix: require approval for setup-code bootstrap pairing * addressing review-skill * addressing codex review * addressing codex review * addressing codex review * addressing codex review * addressing codex review * addressing ci * addressing ci * docs: add changelog entry for PR merge
* fix: require approval for setup-code bootstrap pairing * addressing review-skill * addressing codex review * addressing codex review * addressing codex review * addressing codex review * addressing codex review * addressing ci * addressing ci * docs: add changelog entry for PR merge
Summary
AI-assisted: Yes
Change Type (select all)
Scope (select all touched areas)
Linked Issue/PR
Real behavior proof (required for external PRs)
node --import tsx -e "await import('./src/shared/device-bootstrap-profile.ts'); await import('./src/infra/device-bootstrap.ts'); await import('./src/infra/device-pairing.ts');"andnode --import tsx -e "await import('./src/gateway/server/ws-connection/message-handler.ts');"Root Cause (if applicable)
Regression Test Plan (if applicable)
src/gateway/server.auth.control-ui.suite.ts,src/infra/device-pairing.test.ts,src/infra/device-bootstrap.test.ts,src/shared/device-bootstrap-profile.test.ts,src/pairing/setup-code.test.tsUser-visible / Behavior Changes
Setup-code pairing now requires an explicit pairing approval before the connecting device receives a durable node token. Setup-code bootstrap no longer grants operator role tokens as part of node setup.
Diagram (if applicable)
Before:
setup code -> node connect -> silent pairing approval -> node token + extra operator token
After:
setup code -> node connect -> pending pairing -> approval -> node token only
Security Impact (required)
Repro + Verification
Environment
tsximport smokeSteps
node --import tsx.node --import tsx.Expected
Actual
Evidence
Import smokes completed without output or errors.
Human Verification (required)
What you personally verified (not just CI), and how:
Review Conversations
Compatibility / Migration
Risks and Mitigations