WS-ART-001: correct guide materialization and extraction plan - #220
Conversation
|
Warning Review limit reached
Next review available in: 52 minutes Enable usage-based reviews in Billing to review now. Otherwise, wait until the next included review is available. How can I continue?After more reviews become available, a review can be triggered using the To avoid repeated limits, reduce automatic review volume by pausing incremental auto-reviews earlier, using label-based review opt-in, excluding WIP or generated PR titles, or requesting reviews manually when the PR is ready. If your team needs uninterrupted high-volume reviews, an organization admin can enable usage-based reviews. How do review limits work?CodeRabbit enforces per-developer PR review limits for each organization. Most developers receive the normal plan review availability. For paid Pro and Pro+ PR reviews, CodeRabbit uses adaptive limits for sustained high-volume activity. When a developer's recent PR review activity reaches the 95th percentile or higher among CodeRabbit users, additional reviews become available more gradually as earlier reviews age out of the rolling window. Please refer docs for additional details. Review details⚙️ Run configurationConfiguration used: defaults Review profile: CHILL Plan: Pro Plus Run ID: 📒 Files selected for processing (5)
📝 WalkthroughWalkthroughThis planning-only change decomposes ART-03B into five ordered contracts covering guide binding, materialization, extraction, and Celery sufficiency continuation. It also defines canonical extraction provenance, failure outcomes, supported formats, and AUTH-04B fixed-service activation requirements. ChangesGuide-source planning correction
Estimated code review effort: 3 (Moderate) | ~20 minutes Possibly related PRs
Suggested reviewers: 🚥 Pre-merge checks | ✅ 5✅ Passed checks (5 passed)
✨ 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: 5
🤖 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
@.agent-loop/initiatives/WS-ART-001-immutable-artifact-storage/chunks/WS-ART-001-03B4-guide-sufficiency-continuation.md:
- Around line 56-58: Align all listed verification recipes with the
repository-wide 78% coverage requirement: in
.agent-loop/initiatives/WS-ART-001-immutable-artifact-storage/chunks/WS-ART-001-03B4-guide-sufficiency-continuation.md
lines 56-58, replace the pytest --cov-fail-under=0 option with an explicit
coverage report --fail-under=78 check while retaining the scoped 90% report; in
.agent-loop/initiatives/WS-ART-001-immutable-artifact-storage/chunks/WS-ART-001-03B3A-extraction-framework-text.md
lines 39-40 and
.agent-loop/initiatives/WS-ART-001-immutable-artifact-storage/chunks/WS-ART-001-03B3B-complex-format-extractors.md
lines 45-47, add the same repository-wide 78% coverage check.
In @.agent-loop/initiatives/WS-ART-001-immutable-artifact-storage/DECISIONS.md:
- Around line 389-403: Update the 03B3A and 03B3B contracts to define concrete
values for every extraction limit named by D42, identify where each limit is
enforced, and specify stable outcomes for each breach. Add boundary tests
covering each configured limit, including input/output size, container, time,
memory, and document limits, plus cleanup and executor-loss behavior.
In @.agent-loop/initiatives/WS-ART-001-immutable-artifact-storage/PLAN.md:
- Around line 528-536: The terminal extraction outcome section must define
stable public mappings for every canonical status, including explicit redacted
codes and recovery behavior for ambiguous and limit_exceeded alongside
guide_artifact_incident, guide_source_format_unsupported,
guide_source_malformed, and guide_source_extraction_failed. Update the
ProjectSetupRun.status=setup_blocked contract so API, Operator, and Project
Manager handling consistently uses these mappings, while preserving the
distinction that none is a guide-insufficiency decision.
In
@.agent-loop/initiatives/WS-XINT-002-art-auth-end-to-end/chunks/WS-XINT-002-04B-guide-read-binding-activation.md:
- Around line 5-6: Update the wording in the guide binding activation
description to hyphenate “guide-read” consistently, using “fixed-service guide
binding and guide-read actions” or equivalent without changing the activation
conditions or ART-03C requirement.
In `@docs/spec_artifact_storage_service.md`:
- Around line 1223-1239: Update the artifact extraction/report flow description
to require a second full lineage validation immediately before report
persistence. Explicitly state that project, guide, source snapshot, setup run
and generation, exact binding, content integrity, and extraction provenance are
revalidated before committing the report.
🪄 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: defaults
Review profile: CHILL
Plan: Pro Plus
Run ID: cdf94321-bcdb-4f51-b816-8a151e7fab79
📒 Files selected for processing (21)
.agent-loop/initiatives/WS-ART-001-immutable-artifact-storage/AUTH_HANDOFF.md.agent-loop/initiatives/WS-ART-001-immutable-artifact-storage/CHUNK_MAP.md.agent-loop/initiatives/WS-ART-001-immutable-artifact-storage/DECISIONS.md.agent-loop/initiatives/WS-ART-001-immutable-artifact-storage/DISCOVERY.md.agent-loop/initiatives/WS-ART-001-immutable-artifact-storage/INTENT.md.agent-loop/initiatives/WS-ART-001-immutable-artifact-storage/PLAN.md.agent-loop/initiatives/WS-ART-001-immutable-artifact-storage/REVIEW_LOG.md.agent-loop/initiatives/WS-ART-001-immutable-artifact-storage/RISKS.md.agent-loop/initiatives/WS-ART-001-immutable-artifact-storage/STATUS.md.agent-loop/initiatives/WS-ART-001-immutable-artifact-storage/chunks/WS-ART-001-03B-guide-source-binding-materialization.md.agent-loop/initiatives/WS-ART-001-immutable-artifact-storage/chunks/WS-ART-001-03B1-guide-binding-generation.md.agent-loop/initiatives/WS-ART-001-immutable-artifact-storage/chunks/WS-ART-001-03B2-guide-materialization-classification.md.agent-loop/initiatives/WS-ART-001-immutable-artifact-storage/chunks/WS-ART-001-03B3A-extraction-framework-text.md.agent-loop/initiatives/WS-ART-001-immutable-artifact-storage/chunks/WS-ART-001-03B3B-complex-format-extractors.md.agent-loop/initiatives/WS-ART-001-immutable-artifact-storage/chunks/WS-ART-001-03B4-guide-sufficiency-continuation.md.agent-loop/initiatives/WS-ART-001-immutable-artifact-storage/chunks/WS-ART-001-03C-guide-source-cutover-continuation.md.agent-loop/initiatives/WS-ART-001-immutable-artifact-storage/reviews/WS-ART-001-03B-PLAN-external-review-response.md.agent-loop/initiatives/WS-ART-001-immutable-artifact-storage/reviews/WS-ART-001-03B-PLAN-internal-review-evidence.md.agent-loop/initiatives/WS-ART-001-immutable-artifact-storage/reviews/WS-ART-001-03B-PLAN-pr-trust-bundle.md.agent-loop/initiatives/WS-XINT-002-art-auth-end-to-end/chunks/WS-XINT-002-04B-guide-read-binding-activation.mddocs/spec_artifact_storage_service.md
There was a problem hiding this comment.
Actionable comments posted: 1
🤖 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 @.agent-loop/initiatives/WS-ART-001-immutable-artifact-storage/DECISIONS.md:
- Around line 459-469: Extend the exhaustive ProjectSetupRun.status mapping in
DECISIONS.md to cover D42’s timeout, memory termination, and executor-loss
failures, explicitly defining stable public statuses plus whether each is
retryable or requires a corrected/new snapshot; preserve bounded incident
references and the rule that limits are not raised inline. In
reviews/WS-ART-001-03B-PLAN-external-review-response.md, update the completion
claim only after these mappings and recovery semantics are documented.
🪄 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: defaults
Review profile: CHILL
Plan: Pro Plus
Run ID: 932dc04a-5b70-4c11-92bb-fa13aca54db1
📒 Files selected for processing (11)
.agent-loop/initiatives/WS-ART-001-immutable-artifact-storage/DECISIONS.md.agent-loop/initiatives/WS-ART-001-immutable-artifact-storage/PLAN.md.agent-loop/initiatives/WS-ART-001-immutable-artifact-storage/REVIEW_LOG.md.agent-loop/initiatives/WS-ART-001-immutable-artifact-storage/chunks/WS-ART-001-03B2-guide-materialization-classification.md.agent-loop/initiatives/WS-ART-001-immutable-artifact-storage/chunks/WS-ART-001-03B3A-extraction-framework-text.md.agent-loop/initiatives/WS-ART-001-immutable-artifact-storage/chunks/WS-ART-001-03B3B-complex-format-extractors.md.agent-loop/initiatives/WS-ART-001-immutable-artifact-storage/chunks/WS-ART-001-03B4-guide-sufficiency-continuation.md.agent-loop/initiatives/WS-ART-001-immutable-artifact-storage/reviews/WS-ART-001-03B-PLAN-external-review-response.md.agent-loop/initiatives/WS-ART-001-immutable-artifact-storage/reviews/WS-ART-001-03B-PLAN-pr-trust-bundle.md.agent-loop/initiatives/WS-XINT-002-art-auth-end-to-end/chunks/WS-XINT-002-04B-guide-read-binding-activation.mddocs/spec_artifact_storage_service.md
🚧 Files skipped from review as they are similar to previous changes (8)
- .agent-loop/initiatives/WS-ART-001-immutable-artifact-storage/chunks/WS-ART-001-03B2-guide-materialization-classification.md
- .agent-loop/initiatives/WS-ART-001-immutable-artifact-storage/chunks/WS-ART-001-03B4-guide-sufficiency-continuation.md
- .agent-loop/initiatives/WS-ART-001-immutable-artifact-storage/chunks/WS-ART-001-03B3B-complex-format-extractors.md
- .agent-loop/initiatives/WS-ART-001-immutable-artifact-storage/reviews/WS-ART-001-03B-PLAN-pr-trust-bundle.md
- .agent-loop/initiatives/WS-XINT-002-art-auth-end-to-end/chunks/WS-XINT-002-04B-guide-read-binding-activation.md
- .agent-loop/initiatives/WS-ART-001-immutable-artifact-storage/chunks/WS-ART-001-03B3A-extraction-framework-text.md
- docs/spec_artifact_storage_service.md
- .agent-loop/initiatives/WS-ART-001-immutable-artifact-storage/PLAN.md
PR Trust Bundle: WS-ART-001-03B Planning Correction
Chunk
WS-ART-001-03B-PLAN— planning-only correction before implementation.Goal
Define the safe path from verified Project Manager guide-source bytes to exact
same-generation sufficiency input without confusing it with contributor ZIPs.
Human-Approved Intent
What Changed And Why
The old 03B contract combined too many boundaries. It is now five executable
PRs:
03B1 -> 03B2 -> 03B3A -> 03B3B -> 03B4 -> AUTH-04B -> 03C.Design Chosen
Original bytes remain authoritative in
ArtifactStore. Existing materializationand scratch capabilities rehash every full read. Content-derived extraction is
separate from binding/run/generation usage. Canonical extraction is bounded
PostgreSQL processing evidence, not an unapproved provider write. Agent input
is typed, bounded, provenance-linked, and explicitly untrusted.
Alternatives Rejected
Parsing in upload, forcing guides into contributor ZIPs, direct provider access,
a second scratch manager, one large parser PR, image OCR by implication, raw
binary/excerpt agent input, and provider writes under guide-read authority.
Scope Control And Product Behavior
Planning/specification only. Guide items support PDF, DOCX, PPTX, CSV, XLSX,
Markdown, text, JSON, and PNG/JPEG/WebP metadata. Audio/video and ordinary ZIP
guide semantics are unsupported. Artifact/extraction failures create redacted
setup_blockedoutcomes, not guide-insufficiency decisions.Acceptance Proof, Test Delta, And CI Integrity
coverage, the 78% repository gate, Agent Gates, and hosted Backend checks;
Reviewer Results
All nine tracks passed after repairs. Details are in
WS-ART-001-03B-PLAN-internal-review-evidence.md.External Review
Pending CodeRabbit and hosted GitHub checks after the PR opens.
Remaining Risks And Follow-Up
Human Review Focus
Confirm the upload separation, five-PR split, AUTH-04B placement, PostgreSQL
canonical extraction records, v0.1 format boundary, and dependency approval gate.
Human Merge Ownership
A maintainer must explicitly approve this planning PR. Merge starts no
implementation automatically.
Summary by CodeRabbit