Repository navigation
feat(platform): provide fixed Connect cloud config CAS - #980
Open
simonvanlaak wants to merge 2 commits into
Open
simonvanlaak wants to merge 2 commits into
simonvanlaak wants to merge 2 commits into
Conversation
simonvanlaak
marked this pull request as ready for review
November 7, 2026 06:31
This branch has not been deployed
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 join this conversation on GitHub.
Already have an account?
Sign in to comment
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.
Connect's TypeScript login/logout adoption needs durable access to the existing cloud config group. Add fixed
connect-ownerreadConnectCloud/compareAndSwapConnectCloudoperations to the existing config helper and exposecreateConnectCloudConfigfrom compiled@apparent/config-host/cloudESM/declarations.CAS compares the entire presence/value under the same config writer lock and atomic publication used by existing writers. It preserves config outside
cloud; Connect constructs the next opaque group and retains nested server/unknown fields/secrets, consent and cutover policy. Missing remains distinct from null. Conflict/read do not rewrite, and matching same-value CAS republishes after an uncertain durability result. Lost/uncertain replies are unknown with no automatic retry. No arbitrary key selector, second writer, GUI operation or installed-route switch is added.The package requires Node >=22.18 and the paired contracts peer; its cloud declaration graph is headless. Values remain bounded to 16,384 serialized JSON bytes, and the existing protocol frame to 65,536 bytes including LF. The native producer explicitly builds the public adapter before exercising the exact staged helper, and its verify lane includes a normal packed consumer install.
Validation: independent Luna priority source review approved; TypeScript transport 12/12; cold paired tar normal install/plain Node/strict declarations without React and installed transport 12/12 with cargo/rustc/tsc/esbuild denied; native Rust 4 library + 2 host + 18 integration tests; clean frozen-source Linux RELEASE producer and six public staged-helper cases; AppShell 50 checks and architecture passed. Root build passed; the root suite passed 941 tests with 14 ignored under a private umask inside the admitted driver. All five packaged Linux Electron checks passed using the documented owned Xvfb and existing sandbox helper. Initial local runs without those test-environment requirements remain retained as failed evidence; no production safeguard was weakened.
Required before usable delivery: applicable fresh Linux/Mac PR native producers, merge gates and exact-main artifact/receipt/attestation admission. Connect's live Rust writer remains authoritative until its owner qualifies the separate transition. No activation or installed GUI proof is claimed. Platform retains a direct usable API/package/helper/evidence return to the existing waiting Connect owner.