Skip to content

Prevent include parsing across inline documentation tokens#1975

Open
RyanTanuki wants to merge 2 commits into
mainfrom
fix/1974-inline-include-parser
Open

Prevent include parsing across inline documentation tokens#1975
RyanTanuki wants to merge 2 commits into
mainfrom
fix/1974-inline-include-parser

Conversation

@RyanTanuki

Copy link
Copy Markdown
Collaborator

Summary

Fixes #1974 by preventing the body-form include regex from crossing a nested <include opener.

Root cause

An inline documentation token could pair with a much later genuine closing tag. The parser returned hundreds of lines as one include path, and agentic_update._compute_include_allowlist raised OSError: [Errno 36] File name too long when constructing Path(...).

Changes

  • Temper the body-form regex so a match cannot cross another include opener.
  • Preserve bare, attributed-body, self-closing, and include-many parsing.
  • Add the exact inline-token-before-real-include regression.
  • Update the owning prompt contract and run deterministic PDD metadata sync.

Validation

Per the requested workflow, no local test command was run; PR CI is the validation gate.

@RyanTanuki

Copy link
Copy Markdown
Collaborator Author

Added commit 115dbaedc to record the PDD-generated sync_order fingerprint.

Root cause of the first auto-heal failure:

  • The parser prompt and generated code were intentionally changed together.
  • Deterministic metadata sync generated .pdd/meta/sync_order_python.json, but the repository-wide metadata ignore rule left this previously untracked module fingerprint out of the PR.
  • Without a tracked current fingerprint, auto-heal correctly reported an unresolved prompt/code conflict.

The fingerprint is now explicitly tracked as the reconciliation record. The other reported drift, agentic_change_orchestrator, pre-exists this branch and is repaired by PR #1620; this branch will merge updated main after #1620 lands.

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.

Prevent include parser from spanning inline documentation tokens

1 participant