Skip to content

Preserve results across syntax provider failures - #118

Merged
stef-k merged 7 commits into
mainfrom
fix/115-provider-failure-isolation
Aug 28, 2026
Merged

Preserve results across syntax provider failures#118
stef-k merged 7 commits into
mainfrom
fix/115-provider-failure-isolation

Conversation

@stef-k

@stef-k stef-k commented Aug 28, 2026

Copy link
Copy Markdown
Owner

Summary

  • preserve independent LOC, Markdown, and unaffected syntax results when one selected source file has known syntax/provider unavailability
  • emit an explicit incomplete result with structured paths, guard completeness, stable scope accounting, and blocking exit 3
  • preserve strict direct analysis and propagate unexpected programming errors

Closes #115

Contract

Incomplete runs use overall: incomplete, retain the completed aggregate separately, preserve authoritative findings, and mark only affected syntax guards incomplete. Successful output keeps its existing schema and bytes. --ci never makes unavailable evidence successful.

The syntax pipeline continues only for SyntaxAnalysisError and ProviderUnavailableError. Arbitrary exceptions, including unexpected concrete-parser exceptions, retain the existing abort boundary.

Validation

  • focused provider isolation — 6 passed
  • strict production analysis — 26 passed
  • completed-output compatibility suites — passed
  • python -m unittest discover -s tests — 312 passed
  • freshly built disposable wheel installed successfully
  • installed-package syntax smoke — passed
  • disposable-wheel code-guard . --ci — exit 0 with visible non-blocking REVIEW
  • LOC baseline absent and not a symlink
  • python -m compileall -q src skills research tests — exit 0
  • git diff --check origin/main...HEAD — exit 0

Review

Independent review found and blocked overly broad concrete-parser exception wrapping. The remediation narrows translation to RuntimeError, proves arbitrary exception identity propagation through the real provider boundary, and passed independent re-review at 4e7ea2cf176b30b06713e319ce918b1f78e74f58.

@stef-k
stef-k merged commit 47610ff into main Aug 28, 2026
14 of 15 checks passed
@stef-k
stef-k deleted the fix/115-provider-failure-isolation branch August 28, 2026 19:56
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.

Preserve independent guard results when one syntax provider fails

1 participant