Skip to content

fix(partial-markdown): unify projected events#29

Merged
blove merged 2 commits into
mainfrom
blove/partial-markdown-canonical-events
Jul 12, 2026
Merged

fix(partial-markdown): unify projected events#29
blove merged 2 commits into
mainfrom
blove/partial-markdown-canonical-events

Conversation

@blove

@blove blove commented Jul 12, 2026

Copy link
Copy Markdown
Contributor

Summary

  • replace the separate projected event graph with one canonical public root shared by parser.root and emitted events
  • preserve live node identity through projection-to-commit transitions while enforcing nonnegative, live-unique parser-session IDs
  • make reconciliation event ordering deterministic and add incremental fast paths for long open lines
  • prepare @cacheplane/partial-markdown 0.5.8 for OIDC trusted publishing

Why

Streaming projections could expose nodes in emitted events that were not the same objects reachable from parser.root. That split contract allowed downstream renderers to observe structural churn, synthetic IDs, and transient table rows outside the existing table. The parser now owns reconciliation and exposes a single canonical graph.

This intentionally tightens the public contract without a compatibility adapter. Numeric IDs are parser-session-local and must not be compared across independent parser instances.

Verification

  • pnpm verify
  • 252 partial-json tests passed
  • 415 partial-markdown tests passed
  • pnpm --filter @cacheplane/partial-markdown publint
  • pnpm --filter @cacheplane/partial-markdown attw
  • packed and consumed /tmp/cacheplane-partial-markdown-0.5.8.tgz in the Angular integration worktree
  • Chrome smoke coverage for long-pause tables, blockquote plus table, thematic breaks, code fences, and regenerate

Release

After merge, tag the merged commit as partial-markdown-v0.5.8. The existing publish workflow uses npm OIDC trusted publishing with provenance.

@blove blove merged commit 7aed073 into main Jul 12, 2026
3 checks passed
@blove blove deleted the blove/partial-markdown-canonical-events branch July 12, 2026 08:31
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.

1 participant