Pre-Release Roadmap
Historical scope: This originally tracked preparation for 0.1.0. The package is currently released at 0.3.3; see the current docs index, published demos, and the changelog for up-to-date status. Items below are preserved as verification evidence rather than a claim that 0.1.x is current.
This roadmap tracks the work that turns a complete package into a package that
has been proven in real consumer use before a public 1.0.0 commitment.
Gates Before Public 1.0
- Dogfood in a real consumer and write a friction report.
- Freeze the
0.1.xpublic API contract and mark experimental surfaces. - Publish a private/canary package and install it from a separate clean project.
- Add visual regression baselines on top of the existing screenshot evidence.
- Expand adapter recipes for deeper generated-surface scenarios.
- Harden optional authoring UX around edit patches, note dragging, and anchor movement.
- Keep performance and stress testing in CI.
- Document accessibility recipes for keyboard and screen-reader workflows.
- Maintain a compatibility matrix for Node, TypeScript, React, Vega, Mermaid, D2, and React Flow.
- Decide final public package/repository naming and release ownership.
Current Status
- Package implementation: complete for
0.1.0. - Repository operations: CI, release workflow, package metadata, templates, and repo-readiness checks are in place.
- Dogfood:
npm run test:dogfoodinstalls the packed package into a clean Vite report consumer, renders DOM, Vega-Lite, and Mermaid surfaces, and records friction indocs/dogfood-clean-consumer-report.md. - Real report dogfood:
npm run test:dogfood:bronto-reportinstalls the packed package beside public@ponchia/uireport CSS in a clean Vite consumer, annotates rendered report stat cards and a mixed DOM/SVG report figure, and records friction indocs/dogfood-bronto-report.md. - Self dogfood:
npm run test:dogfood:self-reportinstalls the packed package into a clean Vite consumer, renders a release-evidence report fromdocs/readiness-matrix.json,docs/completion-audit.json, andpackage.json, annotates DOM report regions plus generated SVG chart and diagram geometry, and records friction indocs/dogfood-self-report.md. - External consumer dogfood:
npm run test:dogfood:externalis an env-gated local harness that builds a real Astro/React consumer, measures rendered DOM stack-page geometry or rendered React Flow diagram geometry in Chromium, injects a package-generated SVG layer, and records friction indocs/dogfood-external-consumer-report.md. - API freeze:
docs/api-stability.manifest.jsonlabels every public export as stable or experimental for0.1.x, source entrypoints carry@publicand@experimentalnotes, andnpm run test:api-stabilityenforces coverage. - Canary publishing:
.github/workflows/canary.ymlpublished0.1.0-canary.1.e754177to GitHub Packages and installed it from a clean registry consumer;docs/canary-publish-report.mdrecords the evidence andnpm run test:canarykeeps the lane wired. - Visual regression:
test/visual-baselines/browser-screenshots.jsonstores approved browser metrics for every example viewport and packed browser consumer, andnpm run test:screenshotscompares new output against it. - Performance:
npm run test:performanceexercises deterministic 10, 50, and 200 annotation layouts. - Compatibility:
npm run test:compatibilitychecks package peer ranges, optional-peer metadata, CI Node lanes, and docs againstdocs/compatibility.md;npm run test:compatibility:lanesinstalls clean consumers for the TypeScript 5.8, React 18, and Vega 5 lanes. - Accessibility:
npm run test:dogfoodverifies an external note list with roving focus, note focus sync, keyboard activation, and a screen-reader summary derived from validation and layout-quality results. - Adapter recipes:
docs/adapter-recipes-proof.mdrecords which deeper generated-surface recipes are already test-proven or browser-proven. - Authoring UX:
createAnnotationEditSession,createAnnotationEditEvent, andcreateAnnotationEditDeltaprovide DOM-free note-drag, keyboard nudge, and anchor-move suggestions for React and custom authoring surfaces;includeQualityIssuesandqualityDebugprovide opt-in visual issue boxes for manual-placement review; hosts still own state and persistence. - Public release decisions:
docs/public-release-decisions.mdfixes the@ponchia/annotationspackage name,Ponchia/bronto-annotationsrepository policy, public npm access, README positioning, and examples hosting decisions for the0.1.xlane. - Remaining high-value proof: keep widening dogfood beyond the first external consumer into additional production host apps or reports before widening public API stability promises.
Tracking Documents
- API stability:
docs/api-stability.md - API stability manifest:
docs/api-stability.manifest.json - Compatibility matrix:
docs/compatibility.md - Compatibility gate:
npm run test:compatibility - Compatibility lane smoke:
npm run test:compatibility:lanes - Dogfood report template:
docs/dogfood-friction-report.md - Clean-consumer dogfood report:
docs/dogfood-clean-consumer-report.md - Bronto report dogfood report:
docs/dogfood-bronto-report.md - Self-dogfood report:
docs/dogfood-self-report.md - External consumer dogfood report:
docs/dogfood-external-consumer-report.md - Canary release runbook:
docs/canary-release.md - Canary publish evidence:
docs/canary-publish-report.md - Public release decisions:
docs/public-release-decisions.md - Visual regression baselines:
docs/visual-regression.md - Performance expectations:
docs/performance.md - Accessibility recipes:
docs/accessibility.md - Adapter recipe roadmap:
docs/adapter-recipes-roadmap.md - Adapter recipe proof:
docs/adapter-recipes-proof.md