Repository navigation
Share assistant access from the iPhone with a short code - #95
Conversation
|
To use Codex here, create an environment for this repo. |
Codex Review SummaryThis comment shows the latest Codex review activity on this pull request.
ℹ️ About Codex in GitHubYour team has set up Codex to review pull requests in this repo. Reviews are triggered when you
Codex reacts with 👀 while any review is running, comments if it has suggestions, and reacts with 👍 once all reviews finish with no findings. |
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: 461459bbb6
ℹ️ About Codex in GitHub
Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you
- Open a pull request for review
- Mark a draft as ready
- Comment "@codex review".
If Codex has suggestions, it will comment; otherwise it will react with 👍.
Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".
461459b to
351a3df
Compare
An owner can open Shared access in the iPhone's Assistants and support view, choose rights and an access expiry, then share a six-character invitation code. The recipient connects its own assistant and gets a separate agent connection the owner can remove. Setup and control start off; technical backup access names its saved-credential risk.
Keep the strong invitation and exact signed request only in memory. Read Core's time before first signing, preserve the request after an unknown outcome, and re-sign the same fields with the replacement key only after a definite signature refusal. Recover a saved invitation after a lost reply. Publish its strong proof through TLS to get the short code; checking status can republish it after a Cloud restart without another Core grant or Face ID. Refresh ordinary agent rows when a claim completes so removal is available at once.
Core pair: srcfl/ftw#1735. Cloud pair: srcfl/ftw-cloud#38. Canonical registry: srcfl/ftw-webapp#100. Base setup PR: #92. Keep these separate from the current beta freeze and merge only after the Core pair.
Contract-pair: srcfl/ftw@codex/mcp-shared-access
Validation: all 554 Swift tests in 83 suites pass on head461459bb, including invitation signing, lost replies, replacement keys and the shared wire vector. The iPhone simulator build and shared JVM tests pass. The real view was reviewed in an isolated demo simulator in light and dark mode and at the largest text size; the code, choices and action remain readable and reachable. No production grant, TestFlight upload or hardware verification occurred.
The access time picker now follows the live box limit, with a 30-day fallback. Check the duration before Face ID and again before saving a signed request. A definite duration or claim-deadline refusal opens the form for a new approval; a timeout preserves the exact request. The permission summary also handles setup-only, control-only and empty grants. All 557 Swift tests in 83 suites, the Simulator build and JVM tests pass on head 351a3df. The actual picker was rendered and inspected in light, dark and largest text in a closed component preview. The earlier full invitation flow was also reviewed in those appearances. The component preview moved the picker to the first row only for inspection; the source was restored byte for byte and the working tree is clean. No preview changes enter this PR.