Repository navigation
Keep external OCaml JSON inputs open and owned contracts closed - #74
Merged
Merged
Conversation
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. |
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.
Journal rejects external server extensions such as
pull/ok.txs[0].tx-id, terminating sync before transactions are applied. External WS and E2EE HTTP input records now use separate input-only open OCaml PPX readers, including nested objects. Required fields, declared types/nullability, supported variants, semantics, duplicate safety and size limits remain validated; unused fields are discarded.Owned client/output DTOs and existing internal Config/Protocol/full persistence admission stay closed. Catalog/snapshot and outbox metadata projection readers expose decoding only. Swift codecs and their test/compiler/CI wiring have no net changes from the merge-base.
The existing Application feedback test globally looked up a title shared by Timeline and Detail. Hash iteration could select the Detail node and falsely fail the retained-root layout assertion. The minimal test correction limits root-content lookup to its navigation owner and preserves the original layout and node identity assertions, including after Back. Production UI behavior is unchanged.
Validation: codec regressions were verified RED on the previous WS/HTTP behavior, then GREEN through public Sync_protocol, Runner and Core boundaries. The old Application selector failure was reproduced on both
953d4a7and9293badby randomizing only the test observer hash order; the correction passed 20 case executions across both snapshots. Fulldune runtest --forcepassed after the final correction, including 259 sync cases and 82 application-view cases. Final heada5b58d5passed Journal CI, including the full build/native embed and regression suite.Independent read-only incremental review of exact final head
a5b58d5b511cfe0fb588619510531b5d378c7ea9found no evidenced P1/P2. The reviewer confirmed that root-owner selection and the original containment/node identity assertions remain intact; review used source and existing test evidence without rerunning tests.Actual-data evidence is limited to the reported screenshot and prior authorized type-only App HTTP logs. Local TLS and regression payloads are synthetic. Deployment SHA and screenshot tx-id value/type remain unknown, and no fresh signed-in snapshot/asset samples were collected. No production UI changes, new diagnostics or account/graph writes are included.