feat(storage): bind strict publication producers - #591
Conversation
|
Temporarily returned to Draft after adversarial review found four release-blocking gaps: retained source authority for static export, pre-DOM JSON complexity bounds, workspace session revocation serialization, and destination expectation enforcement. Fixes and deterministic regressions are in progress. Dependent PR #592 is also Draft until this layer is revalidated. |
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: 2bc21fbf4e
ℹ️ 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".
If Codex has suggestions, it will comment; otherwise it will react with 👍.
Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".
|
The draft blockers from the previous review are now closed in
Independent final review of the frozen 20-file diff reported P0/P1/P2 = 0/0/0. The PR remains Draft while the new remote checks run and while #592 is restacked. |
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: b0b508e836
ℹ️ 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".
If Codex has suggestions, it will comment; otherwise it will react with 👍.
Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".
Preserve exact provider callback outcomes, authenticate manifest containment, reroot frozen source paths, and support universal newlines without publication drift. Verified with 319 relevant tests, Python 3.12/3.13 compatibility checks, adversarial path tests, and static checks.
b0b508e to
0fb85b1
Compare
Summary
Bind strict publication producers to bounded metadata validation, callback-scoped directory readers, retained repository-source authority, and an exact trusted workspace-provider contract.
This is a stacked PR based on #590. It does not yet add the strict BM25 or context-artifact producer; those remain separate because they must reconcile the newer portable-inert native authorization contract.
Changes
OwnedDirectoryStagegeneration with authenticated frontend copying and exact staged/published reader validationType of Change
Testing
pytest -q test/test_atomic_directory.py test/test_captured_directory.py test/test_workspace_provider.py test/test_bounded_json.py test/artifacts/test_publish.py test/test_source_fingerprint.py test/test_repository_summary.py test/wiki/test_builder.py test/web/test_static_export.py test/web/test_repo_registry.py test/web/test_codemap.py test/graph/test_hierarchy.py --tb=short(569 passed, 15 skipped)348 passed, 5 skipped; PID/concurrency/zero-publication matrix repeated 10 times (70 passed)litellmenvironment files:4679 passed, 31 skipped; the 17 remaining failures all require attributes absent from this checkout's namespace-onlylitellminstallation and are unrelated to this diffgit diff --checkon the changed surfaceChecklist
Dependency: #590 is published, mergeable, and green but intentionally not merged yet. This PR remains draft until its updated remote checks complete.