feat(core): expose retained evidence posture on readings#380
Conversation
|
Warning Review limit reached
More reviews will be available in 17 minutes and 57 seconds. Learn how PR review limits work. Your organization has run out of usage credits. Purchase more in the billing tab. ⌛ How to resolve this issue?After more reviews become available, a review can be triggered using the We recommend that you space out your commits to avoid hitting the rate limit. 🚦 How do rate limits work?CodeRabbit enforces hourly rate limits for each developer per organization. Our paid plans include higher PR review limits than trial, open-source, and free plans. In all cases, reviews become available again over time. During sustained high-volume PR review activity, CodeRabbit may temporarily slow when the next review becomes available. Please see our Fair Usage Limits Policy for further information. ℹ️ Review info⚙️ Run configurationConfiguration used: Path: .coderabbit.yaml Review profile: ASSERTIVE Plan: Pro Run ID: 📒 Files selected for processing (3)
📝 WalkthroughWalkthroughObservation artifacts now encode retained-evidence posture: a generic semantic marker indicating whether reading coordinate or payload bytes are locally available or missing retention. ABI version 11→12, observation artifact version v3→v4. ReadingEnvelope carries retained_evidence vector; computation emits postures only when both contract evidence and query identity exist. Core retained-evidence type refactors missing states into two explicit variants carrying semantic input and obstruction. ABI pipeline converts postures to kernel port shape. Tests verify round-trip CBOR encoding and contract query identity participation in v4 artifact identity. ChangesRetained Evidence in Observation Artifacts
Estimated code review effort🎯 3 (Moderate) | ⏱️ ~25 minutes Possibly related PRs
Poem
🚥 Pre-merge checks | ✅ 4 | ❌ 1❌ Failed checks (1 warning)
✅ Passed checks (4 passed)
✏️ Tip: You can configure your own custom pre-merge checks in the settings. ✨ Finishing Touches🧪 Generate unit tests (beta)
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
There was a problem hiding this comment.
Actionable comments posted: 2
🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.
Inline comments:
In `@crates/warp-core/src/observation.rs`:
- Around line 975-1021: The MissingContent branch recomputes the coordinate_id
(heavy BLAKE3) multiple times; fix by computing coordinate_id once (let coord_id
= reference.coordinate.coordinate_id().to_vec()), then build the ABI values
reusing that id: construct an abi::RetainedEvidenceCoordinate with coord_id and
use it for the coordinate field, and construct an abi::RetainedEvidenceRef that
uses the same coord_id for its coordinate and for evidence_ref_id, instead of
calling retained_evidence_coordinate_to_abi or evidence_ref_id() which trigger
another hash; update retained_evidence_posture_to_abi (MissingContent arm) to
assemble these ABI structs directly from the precomputed coord_id and call
retained_obstruction_id(obstruction) as before.
In `@docs/WorkItems.md`:
- Line 296: Update the platform name capitalization in the WorkItems table row
referencing issue [`#285`]: change "Github" to the official "GitHub" in the table
cell text that currently reads ".github/workflows/det-gates.yml computes..." so
the row becomes consistent with platform naming (identify the row by the issue
link "[`#285`]" and the quoted file names `det-gates.yml` / `det-policy.yaml` for
locating it).
🪄 Autofix (Beta)
Fix all unresolved CodeRabbit comments on this PR:
- Push a commit to this branch (recommended)
- Create a new PR with the fixes
ℹ️ Review info
⚙️ Run configuration
Configuration used: Path: .coderabbit.yaml
Review profile: ASSERTIVE
Plan: Pro
Run ID: bf9abbb2-7124-4579-995a-ab336c7c2129
📒 Files selected for processing (20)
CHANGELOG.mdcrates/echo-wasm-abi/src/kernel_port.rscrates/echo-wasm-abi/src/lib.rscrates/warp-core/src/observation.rscrates/warp-core/src/optic/tests.rscrates/warp-core/src/retained_evidence.rscrates/warp-core/tests/installed_contract_intent_pipeline_tests.rscrates/warp-wasm/README.mdcrates/warp-wasm/src/lib.rsdocs/BEARING.mddocs/WorkItems.mddocs/design/causal-wal-end-to-end.mddocs/design/v0.1.0-jedit-next-ten-slices.mddocs/design/work-item-sequencing-and-prioritization.mddocs/method/backlog/v0.1.0/PLATFORM_js-wasm-browser-client-release-surface.mddocs/method/backlog/v0.1.0/PLATFORM_retained-evidence-durability-boundary.mddocs/method/backlog/v0.1.0/PLATFORM_wal-wsc-storage-relationship.mddocs/method/backlog/v0.1.0/PLATFORM_wsc-causal-history-storage.mddocs/method/backlog/v0.1.0/RELEASE_package-publish-and-versioning.mddocs/spec/SPEC-0009-wasm-abi.md
|
|
||
| | Issue | Disposition | Evidence | | ||
| | ------------------------------------------------------- | ------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------ | | ||
| | [#285](https://github.com/flyingrobots/echo/issues/285) | Closed as completed. | `.github/workflows/det-gates.yml` computes `DETERMINISM_PATHS` from `det-policy.yaml`; `PLATFORM_ci-det-policy-hardening.md` marks the item completed. | |
There was a problem hiding this comment.
Use official capitalization for GitHub.
Use GitHub (capital H) in this table row to avoid platform-name inconsistency in release evidence docs.
As per coding guidelines, documentation accuracy matters and factual errors should be flagged.
🧰 Tools
🪛 LanguageTool
[uncategorized] ~296-~296: The official name of this software platform is spelled with a capital “H”.
Context: ...85) | Closed as completed. | .github/workflows/det-gates.yml computes `DETE...
(GITHUB)
🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.
In `@docs/WorkItems.md` at line 296, Update the platform name capitalization in
the WorkItems table row referencing issue [`#285`]: change "Github" to the
official "GitHub" in the table cell text that currently reads
".github/workflows/det-gates.yml computes..." so the row becomes consistent with
platform naming (identify the row by the issue link "[`#285`]" and the quoted file
names `det-gates.yml` / `det-policy.yaml` for locating it).
|
@codex self-review pass for PR #380.
False positive checked:
No P0-P3 correctness issues found in this review pass. |
|
Summary
Testing
|
|
@codex resolution update for the self-review thread:
Validation:
|
Summary
Testing / Checks
No commit was created, and |
|
@codex CI follow-up:
Validation:
|
Summary
Testing
|
Summary
Validation
Cross-repo note
Paired with the jedit branch stack/jedit-echo-production-cutover-plan, which consumes adapter-projected retained reading evidence in the product witness path.
Summary by CodeRabbit
New Features
Improvements
Documentation