Files
Edward Cheng-I Wu 30ad279cdf fix: declare markdown-it-py floor and make the autolink round-trip tail run visibly (#801) (#802)
* fix: declare markdown-it-py floor and make the autolink round-trip tail run visibly (#801)

The no-link_open round-trip tail of test_gfm_bare_urls_emails_and_schemes_
cannot_autolink soft-imported markdown-it-py (undeclared in requirements-
dev.txt) and silently returned when absent, so it had never run in CI, while
ambient markdown-it-py 2.x failed it on clean main (2.2.0 + linkify-it-py
2.0.3, reported in #799). Verified dividing line: 2.2.0 fails, 3.0.0 and
4.0.0 pass with linkify-it-py held at 2.0.3.

- Split the tail into test_escaped_markdown_yields_no_linkify_tokens_on_
  round_trip, gated by pytest.importorskip minversions (markdown_it 3.0.0,
  linkify_it 2.0.3): ambient-old environments skip visibly.
- Declare markdown-it-py>=3.0 + linkify-it-py>=2.0.3 in requirements-dev.txt
  with a reverse pointer at the consuming test, so CI exercises the round
  trip for the first time.
- Move the identical soft-import tail in test_renderer_neutralizes_markdown_
  active_inventory_path (newly activated in CI by the same declaration) to
  the same importorskip idiom; no floor needed (default CommonMark, no
  linkify) — verified passing under 2.2.0, 3.0.0, and 4.0.0.
- Consolidate the triplicated hostile-row construction in
  test_evidence_rows.py into one _hostile_row helper.

Renderer behavior and every renderer-side assertion are unchanged.
Verification: both full files 414 passed under markdown-it-py 4.0.0;
affected tests re-run under 2.2.0 (pass + visible skip) and 3.0.0 (pass).

Closes #801

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_013R81d1YwGvJAznkPKk9gNw

* fix: flatten inline token children in the newly activated manifest markdown scan (#801)

Cross-model review (codex, xhigh) on PR #802 flagged that the twin test's
token scan iterated only top-level tokens, but markdown-it nests link_open /
image / html_inline under inline tokens' children — so the assertion could
only ever catch html_block. Verified empirically, then flattened children
into the scan (same idiom as the evidence-rows round-trip test).
Strengthened assertion passes under markdown-it-py 2.2.0, 3.0.0, and 4.0.0.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_013R81d1YwGvJAznkPKk9gNw

---------

Co-authored-by: Claude Fable 5 <noreply@anthropic.com>
2026-08-27 10:35:29 +08:00

10 lines
337 B
Plaintext

pyyaml
ruamel.yaml>=0.17
jsonschema[format]>=4.17
pypdf
defusedxml
# Floors consumed by scripts/test_evidence_rows.py::test_escaped_markdown_yields_no_linkify_tokens_on_round_trip (#801).
# markdown-it-py < 3 linkifies escaped bare URLs; dropping these lines makes that test silently skip in CI.
markdown-it-py>=3.0
linkify-it-py>=2.0.3