Repository navigation
ALL-159: Expose scoped native presentation with generated runtime client - #342
Merged
Merged
Conversation
allisoneer
force-pushed
the
codex/all-159-native-runtime
branch
from
October 8, 2026 17:10
7a90d70 to
1ef87f5
Compare
Collaborator
Author
|
cursor review |
allisoneer
marked this pull request as ready for review
October 8, 2026 17:36
allisoneer
requested review from
Cecocho,
Crystalcareai,
eric-tramel and
sapiosaturn
as code owners
October 8, 2026 17:36
allisoneer
marked this pull request as draft
October 9, 2026 15:37
allisoneer
force-pushed
the
codex/all-159-native-runtime
branch
from
October 9, 2026 15:40
1ef87f5 to
474c18f
Compare
Collaborator
Author
|
cursor review |
Collaborator
Author
|
cursor review |
Collaborator
Author
|
@cursor bugbot review |
|
Unable to authenticate your request. Please make sure to connect your GitHub account to Cursor. Go to Cursor |
Collaborator
Author
|
cursor review |
Collaborator
Author
|
cursor review |
There was a problem hiding this comment.
✅ Bugbot reviewed your changes and found no new issues!
Comment @cursor review or bugbot run to trigger another review on this PR
Reviewed by Cursor Bugbot for commit 0d4c05d. Configure here.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to subscribe to this conversation on GitHub.
Already have an account?
Sign in.
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
ALL-159 prerequisite for ALL-108 / ALL-121: make the existing native presentation reusable with an injected runtime and the full generated typed HTTP/SSE client. A caller retains its endpoint/authentication, router and static hosting; native caches, stores, subscriptions, overlays and keyboard behavior close with that runtime. SDK-only imports remain runtime-free.
The existing private
@arcee-ai/nac-client-all-121package exports the presentation, explicit CSS, fonts and asset manifest with optional UI peers. Styles and formula fonts are scoped through existing CSSOM APIs. Rust remains the generated API contract's source of truth.Independent stack root on current
dev@eb518255c9d4131474b9b3487c59233545662cf8; reviewed head0d4c05dfb919b6d53ffcef0a177010c71e913792. Both final workflows checked out synthetic merge21e7ef1809ca85483ad7c04c46f0cbe32663b0a1, with dev/native parents and a tree identical to the PR head. Seven original native commits remain patch-equivalent after the conflict-free refresh.Qualifying review/CI repairs preserve injected URL mapping for initial and reconnecting SSE; restore standalone read retry=1 through an explicit bounded option while hosted reads default to false and mutations remain no-retry; and serialize the three source-binary copy/execute fixtures to prevent the observed Linux descriptor race. The URL and standalone retry regressions fail before their fixes. Product upgrade behavior, command budgets, delays and test assertions are retained.
Final exact-head validation is green: stable CI includes 540 web tests, generated-assets checks, default-parallel Rust tests, Linux/macOS builds and all 66 production-browser cases. Managed CI includes repository acceptance, private fault fixtures and an exact integrated linux/amd64 image build/smoke without publication. Fresh Bugbot found no new issues; the coordinator's bounded independent review cleared this head; all qualifying findings are addressed and zero review threads remain unresolved.
Source distribution: exact 0d4c05df archive, verified HTTP 200 with all 1,072 paired source/generated files and 393 npm package files matching. Source integrity:
sha512-D6g6RLj0arr6yFDMEN3tz4gvj8sn2zMpnESuY83rcg4x1UPLeq672HyMPNlXzzf0ew3El1TBwEIe5lcOZFjWVQ==. Reproducible npm pack/clean-consumer integrity:sha512-WVrmRCPENIa4coLS13i7svP8hSmyZGR1VVg9bd7GW/Fy3GbF52ijtPrp1lACQbiWhBCUi4OfOekPd0reMHWmDA==.The first 9cfd CI failure remains preserved: errno 26 occurred when executing a just-copied fixture binary, before upgrade ran. A deterministic Linux check confirms the inherited-writer mechanism; exact CI scheduling was not captured. A separate local parallel run failed/hung in the unchanged upstream creation-saturation fixture; isolated cases and a full serial run pass. That local limitation is retained separately from the passing final default-parallel CI. Superseded/canceled and older-base runs are historical evidence.
This supplies the native package/runtime prerequisite. Real Clerk/M2M/resource authorization, signed receiving journeys, comparative performance, historical-browser certification and serialized Dev2 acceptance remain with their owning units. Existing public APIs/session behaviors/standalone routes are preserved. No registry publication, package rename, migration, deployment or merge; Allison retains review and merge.
Note
Medium Risk
Broad front-end packaging and injected transport/SSE behavior affect embedders and live session UX, but server auth and wire contracts stay generated; risk is mainly integration regressions and stale committed build artifacts.
Overview
Adds a packaged native React presentation (
packages/nac-presentation,@arcee-ai/nac-client-all-121/presentation) that hosts can mount viacreateNativeRuntimeandNativePresentationRoot, with caller-supplied endpoint, HTTP headers, andEventSourceconstruction. The web app’s runtime layer owns query cache, stores, and stream lifetime; replacing or closing the runtime tears down subscriptions and UI state without taking over the caller’s router or global styles (scoped CSS, asset manifest, external React peers).Extends the private
nac-clientwithcreateNacApi(full OpenAPI-aligned resource facade),NAC_API_SURFACE, andNacHttpTransportso consumers can inject an existing authenticated transport. SSE subscription gains an optional finite connection lease (maxConnectionMs) and stricter handling so stale connections do not deliver events after reconnect.Build/CI:
npm run buildandmake test-assetsnow require committednac-presentation/distalongside existing client and embedded server assets; lint/format ignore the new dist tree.Verification: New Playwright suites exercise hosted and packed-tarball consumers (files/Git, settings uncertainty on lost responses, MCP, model configs, style/router isolation, MathJax fonts). Rust
source_binary_contracttests serialize binary copy/exec with a mutex to avoid Linux ETXTBSY races. Embeddednac-serverassets are refreshed to match the new bundle hashes.Reviewed by Cursor Bugbot for commit 74fc5b4. Bugbot is set up for automated code reviews on this repo. Configure here.