Skip to content

Fix scoped app access prompts and readonly recovery (FX-A) - #410

Merged
Maneek21 merged 2 commits into
masterfrom
fix/fx-a-functional-runtime
Oct 21, 2026
Merged

Maneek21 merged 2 commits into
masterfrom
fix/fx-a-functional-runtime

Conversation

@Maneek21

@Maneek21 Maneek21 commented Oct 21, 2026 •

Copy link
Copy Markdown
Owner

Apps now compute the compact access prompt from controls on the current screen. Read-only documents and lists do not request unrelated private stores; missing form/local-job access names the specific saved-record feature. Full access settings and every permission guard remain intact.

Seeded forms hydrate opaque Runtime-owned source defaults without creating a record. Independent locator/metadata and seed preflight reads run concurrently, with exact session/account/resource/store/consent pin checks before browser storage or disclosure. A stalled opening is bounded and offers an enabled Retry. Writes retain original acknowledgement and reconciliation rules.

Read-only list failures get one retry after resolving identical current authority and remain with their screen instead of leaving a false Runtime-outage banner on healthy settings. No writes replay and no consent lifetime extends. External image placeholders are hidden until requested, with Images hidden / Show images controls; saved automatic-image choices keep their existing checks.

Evidence: read-only demo search for Deft Email Stage 1 returned seven matches (HTTP 200). The reported provider banner correlated with concurrent automatic-image failures; a resource_list denied during an account status check explained the false Runtime outage. Email-specific behavior is in deft-email #22, whose CI is green. Coordinate both changes when integrating.

Validation: the exact installed-app CI contract suite passed locally (522/522); focused Host regressions 84/84; final client/read-retry 26/26; web typecheck and app boundary gate passed (1274 exact findings, 1274 existing exceptions, zero errors). Real-browser image checks at 1440px and 390px confirmed zero image requests, hidden placeholders and no overflow.

Fresh raw CodeQL run 39689516157 was reviewed: the same 26 findings, with only three existing opaque-frame locations shifted by three lines. The query/message/partial fingerprints/flow steps are otherwise unchanged. Updated those exact findings and the one changed source pin; all supporting guard pins remain. The exact gate passes with 26 reviewed, zero unresolved and zero unused reviews; all ten disposition tests pass. Raw SARIF remains unchanged, and the evidence is recorded in docs/security/codeql-reviewed-findings.md.

FX-A ownership only. No demo data changed. The orchestrator owns merges and releases.

Current-head CI is green at be240e5: main CI 39690623944 (including API tests, production web build, image/browser smoke and upgrade), Security 39690624153 (including exact CodeQL disposition), and Native Mentions 39690624051. The Hermes gate is skipped by the existing core release scope. Both PRs remain open and unmerged; integrate Host support before enabling the updated Email app.

🤖 Generated with Claude Code

Keep transient list failures with their current screen and retry once under identical freshly resolved authority. Open seeded forms with parallel readonly preflight, bounded recovery, and opaque source hydration. Hide external image placeholders until requested, and compute access prompts from visible record controls.

Co-Authored-By: Claude Opus 5.5 <[email protected]>
Keep the VM fixtures aligned with the real request schema, screen-access state and Show images control. Re-review the unchanged opaque-frame flows against fresh Security run 39689516157 and pin their moved locations and source bytes.

Co-Authored-By: Claude Opus 5.5 <[email protected]>
@Maneek21
Maneek21 merged commit 3aa6f33 into master Oct 21, 2026
13 checks 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