fix: prefill invitation socket address from API server #69

Merged
morten-olsen merged 1 commit from fix/c6a4b291-invitation-address into main 2026-10-20 21:20:29 +02:00
Owner

Summary

Invitation export opens with the inviting installation’s socket address derived from the signed-in API server. HTTPS becomes WSS and HTTP becomes WS, preserving the host and port and using /api/agent-connections/socket. The field stays editable for an address the peer can reach.

Settings → Agent connections → Export invitation → prefilled address → edit if needed → Create invitation file

Evidence

  • Before: the deployed export form starts blank at phone and desktop widths.
  • After: the built app shows its server’s socket address; clearing disables creation, and editing is preserved in the downloaded JSON. Phone/desktop Settings tests also cover local setup, remote import approval, permissions, runtime sponsorship, history, revocation and offline state.
  • App/E2E type checks, focused ESLint, dependency rules and diff checks pass. Parallel Standards and Spec self-review: zero findings. CI results are linked below when complete.

Merge danger

Door: two-way. Reverting restores the blank default; no storage, authentication or exposure change.

Blast radius: app.

Rollback and verification

  • Roll back: revert this commit or use compatible v0.50.0; preserve migration 037 and all durable records.
  • Verify after rollout: exact release image pair and Argo revision, then production HTTPS export form at phone/desktop widths, editable address and empty-field disabled state.
  • Reviewers: owner self-review complete; no new security trigger or requested Designer sign-off. Native device interaction remains the existing explicitly recorded follow-up.
## Summary Invitation export opens with the inviting installation’s socket address derived from the signed-in API server. HTTPS becomes WSS and HTTP becomes WS, preserving the host and port and using `/api/agent-connections/socket`. The field stays editable for an address the peer can reach. `Settings → Agent connections → Export invitation → prefilled address → edit if needed → Create invitation file` ## Evidence - Before: the deployed export form starts blank at phone and desktop widths. - After: the built app shows its server’s socket address; clearing disables creation, and editing is preserved in the downloaded JSON. Phone/desktop Settings tests also cover local setup, remote import approval, permissions, runtime sponsorship, history, revocation and offline state. - App/E2E type checks, focused ESLint, dependency rules and diff checks pass. Parallel Standards and Spec self-review: zero findings. CI results are linked below when complete. ## Merge danger **Door:** two-way. Reverting restores the blank default; no storage, authentication or exposure change. **Blast radius:** app. ## Rollback and verification - **Roll back:** revert this commit or use compatible v0.50.0; preserve migration 037 and all durable records. - **Verify after rollout:** exact release image pair and Argo revision, then production HTTPS export form at phone/desktop widths, editable address and empty-field disabled state. - **Reviewers:** owner self-review complete; no new security trigger or requested Designer sign-off. Native device interaction remains the existing explicitly recorded follow-up.
fix: prefill invitation socket address from API server
All checks were successful
ci/woodpecker/pr/image-agent Pipeline was successful
ci/woodpecker/push/quality Pipeline was successful
ci/woodpecker/pr/quality Pipeline was successful
ci/woodpecker/push/docs Pipeline was successful
ci/woodpecker/pr/docs Pipeline was successful
ci/woodpecker/pr/deploy-tools Pipeline was successful
ci/woodpecker/push/deploy-tools Pipeline was successful
ci/woodpecker/pr/image Pipeline was successful
8c237d67d1
morten-olsen left a comment

Owner self-review of 8c237d6 against main57a858b8.

Standards: 0 findings. Reviewed app instructions, module/barrel conventions and smell baseline in parallel; focused lint/types/dependency/format checks pass.

Spec: 0 findings. Default derives from signed-in api.server, maps HTTP(S) to WS(S), uses the existing socket route and preserves editable export address. Phone/desktop Settings acceptance: 4/4 passed, including default, empty disabled state and manually edited JSON export. HTTPS production verification follows rollout; native device sharing remains recorded separately.

CI #477/#478 running; merge waits for green. No new authentication/exposure/storage changes. Rollback is revert/compatible v0.50.0, retaining migration037 and all records.

Owner self-review of 8c237d6 against main57a858b8. Standards: 0 findings. Reviewed app instructions, module/barrel conventions and smell baseline in parallel; focused lint/types/dependency/format checks pass. Spec: 0 findings. Default derives from signed-in api.server, maps HTTP(S) to WS(S), uses the existing socket route and preserves editable export address. Phone/desktop Settings acceptance: 4/4 passed, including default, empty disabled state and manually edited JSON export. HTTPS production verification follows rollout; native device sharing remains recorded separately. CI #477/#478 running; merge waits for green. No new authentication/exposure/storage changes. Rollback is revert/compatible v0.50.0, retaining migration037 and all records.
Sign in to join this conversation.
No reviewers
No labels
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set

Reference
ai/mission-control!69
No description provided.