Skip to content

Keep external OCaml JSON inputs open and owned contracts closed - #74

Merged
RCmerci merged 4 commits into
mainfrom
codex/external-input-open-json-20261014
Oct 14, 2026
Merged

RCmerci merged 4 commits into
mainfrom
codex/external-input-open-json-20261014

Conversation

@RCmerci

@RCmerci RCmerci commented Oct 14, 2026 •

Copy link
Copy Markdown
Contributor

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 953d4a7 and 9293bad by randomizing only the test observer hash order; the correction passed 20 case executions across both snapshots. Full dune runtest --force passed after the final correction, including 259 sync cases and 82 application-view cases. Final head a5b58d5 passed Journal CI, including the full build/native embed and regression suite.

Independent read-only incremental review of exact final head a5b58d5b511cfe0fb588619510531b5d378c7ea9 found 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.

@chatgpt-codex-connector

Copy link
Copy Markdown

Codex Review Summary

This comment shows the latest Codex review activity on this pull request.

Review Status Commit Review trigger
📝 Code Review ✅ Completed 2026-10-14T07:48:20.944506Z 3511e42 PR opened
ℹ️ 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" or "@codex security review".

Codex reacts with 👀 while any review is running, comments if it has suggestions, and reacts with 👍 once all reviews finish with no findings.

@RCmerci RCmerci changed the title Keep external JSON inputs open and owned contracts closed Keep external OCaml JSON inputs open and owned contracts closed Oct 14, 2026
@RCmerci
RCmerci merged commit b9c32f6 into main Oct 14, 2026
2 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.

1 participant