Skip to content

MDI 2.1 editorial comments across bindings and publication tools - #90

Merged
Iktahana merged 1 commit into
mainfrom
feature/comments-2.1
Sep 13, 2026
Merged

Iktahana merged 1 commit into
mainfrom
feature/comments-2.1

Conversation

@Iktahana

Copy link
Copy Markdown
Contributor

Summary

Recognize editorial comments in all MDI documents, including declared 2.0 and unversioned source. Keep exact payloads and UTF-8 spans in the Rust-owned internal tree and canonical source saving. Default document APIs retain comment-free IR 1.0; explicit inclusion returns IR 1.1. Body projections, layout and publications always omit valid comments. Previously visible HTML comment text in old documents now disappears from publications; unterminated comments remain literal with a warning.

Extend Rust, WASM, C/JNI, Python, Swift, Android, all JavaScript adapters and CLI consistently. Preserve opaque multiline payloads through mdast serialization. Publish the ecosystem on the 2.1 series using explicit version preflight, dependency closure and immutable CI artifacts with checksum-verified recovery.

Related issue

Closes #89.

Validation

  • Rust: cargo test, cargo clippy -- -D warnings, formatting, shared comment fixtures and a 10,000-unterminated-opener regression.
  • Node: pnpm typecheck, pnpm build, pnpm test:coverage, packed browser WASM contracts in Chromium/Firefox/WebKit, and nine packing/release-policy/recovery tests.
  • Publication contracts: 65 DOCX, 74 PDF, 7 EPUB, 3 HTML, including Open XML SDK, seven LibreOffice imports, EPUBCheck and HTML validation. Comment sentinels are checked in archive contents, HTML, PDF text, metadata and attachments.
  • Python: 45 tests passed. Swift: 18 tests, one optional external-format smoke skipped. Android: unit coverage gate and five instrumentation tests passed with a headless emulator.
  • Rust performance: 100k, 1M, 10M and 100M characters passed. Downstream Milkdown: coverage gate, three-browser editing and comment round-trip tests, local and browser large-document gates passed.
  • actionlint and git diff --check passed. Local 2.1.0 tarballs record candidate SHA and SHA-512 integrity values; registry preflight finds all eleven versions available.

Checklist

  • Changes are focused on comments, compatibility and their release path.
  • Regression tests and shared fixtures cover behavior changes.
  • Specification, binding documentation, changelogs and recovery documentation are updated.
  • Relevant local checks are recorded above; complete cross-platform CI is required before merge.
  • Package changelogs and the explicit minor release policy cover publication (this repository uses its release calculator rather than Changesets).
  • No credentials or sensitive data added.

Notes for reviewers

Existing entry points and default IR remain compatible. Source version declarations are preserved. Filtered external IR cannot restore omitted comments. All production publishing remains in GitHub Actions. The downstream editor uses hidden atoms and prepared cache version 2; this PR does not release the illusions application.

@codecov

codecov Bot commented Sep 13, 2026

Copy link
Copy Markdown

@Iktahana
Iktahana merged commit 5e292f7 into main Sep 13, 2026
22 checks passed
@Iktahana Iktahana mentioned this pull request Sep 13, 2026
4 tasks
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.

MDI 2.1: preserved editorial comments with opt-in IR and publication omission

1 participant