Skip to content

fix: Support complete large comparison assessment after file recovery budget exhaustion in (#773) - #790

Merged
efraespada merged 2 commits into
developfrom
bugfix/773-support-complete-large-comparison-assessment-after-file-recovery-budget-exhaustion-in
Oct 29, 2026
Merged

efraespada merged 2 commits into
developfrom
bugfix/773-support-complete-large-comparison-assessment-after-file-recovery-budget-exhaustion-in

Conversation

@efraespada

@efraespada efraespada commented Oct 29, 2026 •

Copy link
Copy Markdown
Member

Fixes #773.

A complete 140-file specification package previously stopped at the 64-file recovery limit, even after omitted patches could be recovered. Native progress analysis now collects verified immutable contents through bounded recovery frames and assesses every source part before one final assessment and the existing publication freshness checks. Each request and retained response identity binds the complete source manifest, pinned base/head/preimage, fresh invocation, issue scope and locale; incomplete, corrupt, duplicated or replayed evidence fails closed.

Validation

  • The realistic success and late-corruption fixtures first failed at the old 64-file boundary. They preserve 140 paths, 85 recovered blobs, 4,446,409 represented bytes, a 1,106,150-byte registry and 1,035,821 bytes of complete patches. All reconstructed contents and tail markers are checked; the corrupt final blob permits no model request or publication.

  • Ten new suites pass 177 cases (109 pure policies, 32 adapter, 24 application/integration, 12 diagnostics), plus one added binary-boundary regression. Full root: 784 suites / 14,457 passing tests, existing 35 skips. Global coverage: 98.05% lines, 97.26% statements, 97.94% functions, 94.96% branches. All new pure policies and immutable recovery reach 100%; every module budget passes. Setup acceptance remains 336/350 with 14 explicitly open cases.

  • Extension: 267 tests / 100% every coverage metric. TypeScript, lint, specifications/catalog, documentation, workflow contracts, generated bundles, npm inventory (87 files) and CLI/API/local-web smoke tests pass. Graphify updated.

Review notes

Native recovery uses at most four accounting frames (64 files, 4 MiB represented bytes, 256 object requests, 50,000 directory entries each), with independent finite invocation totals. Each blob is capped at 2 MiB. Assessment uses at most four rounds of 16 parts. The 299-path inventory, 512 units, 120,000-byte JSON slices, 256,000-byte source/manifest, 384,000-byte fact and 512 KiB full request ceilings remain enforced. Admission now counts the exact native security/schema/task envelope and unchanged configured-effort suffix and reserves 1,024 bytes for variable data framing before the scope request. A boundary regression first failed with zero remaining bytes. The direct legacy recovery adapter retains its former bounds; no configuration switch is added.

Continuation is invocation-local. An interrupted run starts a fresh complete attempt against current native source, with no durable partial receipts or partial progress publication. Consumer access was authorized read-only metadata inspection; all source/model fixtures are synthetic and do not claim semantic model accuracy or execution of a consumer repository. Owning SDD, catalog, communication ledger, diagnostics and operator guidance are updated together.

…covery-budget-exhaustion-in: assess complete comparisons through bounded frames
…covery-budget-exhaustion-in: include native effort and framing in admission
@docs-page

docs-page Bot commented Oct 29, 2026

Copy link
Copy Markdown

To preview the documentation for this pull request, visit the following URL:

docs.page/vypdev/copilot~790

Documentation is deployed and generated using docs.page

@vypbot vypbot changed the title Fix progress assessment for complete large comparisons fix: Support complete large comparison assessment after file recovery budget exhaustion in (#773) Oct 29, 2026
@vypbot
vypbot self-requested a review October 29, 2026 14:16
@vypbot vypbot added this to vypdev Oct 29, 2026
@vypbot vypbot moved this to In Progress in vypdev Oct 29, 2026
@vypbot
vypbot changed the base branch from develop to master October 29, 2026 14:17
@vypbot
vypbot changed the base branch from master to develop October 29, 2026 14:17
@vypbot vypbot added size: XXL Indicates an extremely large task or issue that requires significant time and effort to complete. 70% Progress: 70% labels Oct 29, 2026
@vypbot

vypbot commented Oct 29, 2026

Copy link
Copy Markdown
Contributor

Bugbot: review complete

Current status: No active findings on 632fd81.

Pull request · Verified commit · Workflow run

@vypbot

vypbot commented Oct 29, 2026 •

Copy link
Copy Markdown
Contributor

Copilot approval · Human review needed

Status: A protected workflow, policy, or trust-boundary file changed.
Completed: 1/1 observed checks succeeded; Bugbot complete.
Action required: Ask a human reviewer to decide.
Impact: No new approval is confirmed for this revision.
See checks

Technical evidence

Revision: 632fd815166f; base: 1118dcc81f71; reason: protected-path.

@codecov-commenter

Copy link
Copy Markdown

Codecov Report

❌ Patch coverage is 99.55752% with 1 line in your changes missing coverage. Please review.
✅ Project coverage is 94.84%. Comparing base (5b3664f) to head (632fd81).
⚠️ Report is 64 commits behind head on develop.

Files with missing lines Patch % Lines
src/data/repository/progress_diff_repository.ts 92.30% 0 Missing and 1 partial ⚠️
Additional details and impacted files
@@             Coverage Diff             @@
##           develop     #790      +/-   ##
===========================================
+ Coverage    94.50%   94.84%   +0.33%     
===========================================
  Files         1035     1084      +49     
  Lines        33299    35138    +1839     
  Branches      9824    10427     +603     
===========================================
+ Hits         31468    33325    +1857     
+ Misses         699      682      -17     
+ Partials      1132     1131       -1     
Files with missing lines Coverage Δ
...plication/policies/agent_prompt_envelope_policy.ts 100.00% <100.00%> (ø)
...tion/policies/application_error_message_catalog.ts 100.00% <ø> (ø)
...ication/policies/progress_diff_partition_policy.ts 100.00% <100.00%> (ø)
...tion/policies/progress_evidence_protocol_policy.ts 100.00% <100.00%> (ø)
...tion/policies/progress_partition_receipt_policy.ts 100.00% <100.00%> (ø)
...cation/policies/progress_prompt_capacity_policy.ts 100.00% <100.00%> (ø)
...tion/policies/progress_recovery_capacity_policy.ts 100.00% <100.00%> (ø)
src/application/policies/progress_scope_policy.ts 100.00% <100.00%> (ø)
...ion/usecases/actions/progress_analysis_workflow.ts 98.73% <100.00%> (+0.51%) ⬆️
...ecases/actions/summarize_progress_diff_workflow.ts 100.00% <100.00%> (ø)
... and 5 more

... and 79 files with indirect coverage changes

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.
  • 📦 JS Bundle Analysis: Save yourself from yourself by tracking and limiting bundle sizes in JS merges.

@efraespada
efraespada merged commit 0f77083 into develop Oct 29, 2026
13 checks passed
@github-project-automation github-project-automation Bot moved this from In Progress to Done in vypdev Oct 29, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

70% Progress: 70% size: XXL Indicates an extremely large task or issue that requires significant time and effort to complete. state:verified

Projects

Status: Done

Development

Successfully merging this pull request may close these issues.

🐛🧑‍💻 - Support complete large comparison assessment after file recovery budget exhaustion in

3 participants