OpenPresentation owner handoff — September 15, 2026
Outcome and boundaries
The published websites demonstrate editable OPF JSON and live slides. Reusable packages provide an open local authoring foundation for scoped developer integrations today. This is not full PowerPoint parity or a finished all-feature presentation editor.
The owner requested committed, remotely preserved work, validated merges or explicit roadmap deferral, and a completed PR cleanup. Eleven dependency PRs and four shared-furniture PRs were accepted. One Node26-types update was closed to retain Node24. Four remaining shaping PRs conclude as docs/evidence only; their complete runtime prototypes remain on remote archives. No failed font implementation is promoted, no history is force-pushed, and archives must stay.
Use the original PRs listed below for final merge/check receipts. This document is committed in core83 before its final checks/merge and does not invent its own future merge SHA. Merging a roadmap does not release its archived feature.
Repositories and environment
| Repository | Default | Responsibility |
|---|---|---|
| OpenPresentation/opf | main | Schemas, catalogs, composition/edit/lint, CLI, six skills and plans |
| OpenPresentation/opf-render | main | Font preparation, rendering and image/PDF output |
| OpenPresentation/opf-editor | main | Reusable editor controls and source-preserving interaction |
| OpenPresentation/opf-pptx | main | Editable PPTX import/export and provenance |
| Data-Advantage/openpresentation-site | main | Main website/playground |
| Data-Advantage/pptx-gallery | main | Gallery and embedded editor demo |
| Data-Advantage/pptx-dev | master | Authoring/inspector/tooling website |
Use Node24. Core/site/gallery pin pnpm10.33.2; pptx-dev pins pnpm11.1.3; standalone libraries use npm lockfiles. Read each AGENTS.md, use codex/ branches and focused commits/PRs as work proceeds. Gallery requires Conventional Commits and its documented coauthor. Read relevant OPF skills for document operations.
Local clones live under /Users/michael/Source. This handoff is portable: GitHub contains archives and committed evidence. Do not depend on temporary worktrees, local dependency symlinks, untracked output or this Mac's credentials.
Published baseline and accepted source
Registry inspection confirmed @openpresentation/opf 0.10.0, opf-render 0.8.0, opf-editor 0.7.0, opf-pptx 0.8.0, and cli 0.8.0. Home/playground support JSON editing and preview edits in both directions, contextual catalog choices, indentation, paired quotes and other code-editor assistance. Shared controls and contextual lint/design contracts are available.
The CLI supports create, validate, lint, revision-guarded JSON edits, data import, pagination, schema/catalog lookup and skill installation/update/status. Do not invent CLI render/export commands: use documented library/UI APIs. Schema-property access is not proof of full WYSIWYG interaction coverage.
Core79 (d0c8841), renderer20 (130a2fa), editor17 (cfdeae6) and PPTX34 (c077b7a) add accepted shared header/footer geometry, editing and provenance. Their main CI passed, including coordinated packages and Linux/Windows PPTX checks. These new APIs need a new coordinated release. Do not claim they are in the listed npm versions just because main contains them.
Keep release-plan.json and immutable verification references accurate. Never overwrite published versions, change snapshots to conceal regressions or count sibling-source imports as installed-package checks. Some older docs/skills still call released APIs unreleased: audit them with the developer quickstart.
Deployment receipts
Latest retained canonical production checks cover 41 workflows:
| Website | Verified source commit | Workflows |
|---|---|---|
| openpresentation.org | bb6b006e5fa18f565779781ad347a839fea4ec83 | 26 |
| pptx.gallery | fe395e4e7187cdb85c2b8a4041ef2801fd81f72d | 5 |
| pptx.dev | 3b17ff5366f7a556cf02aae320e6baf87fdf3678 | 10 |
Deployment records and browser logs are in PR consolidation evidence. They establish exercised flows, not every capability. The Zod4.6.2 preview failure is fixed/merged in pptx-dev37 using explicit record keys/values and public schema identification.
Preserved unfinished implementation
Every library repository retains remote branch codex/archive-shaping-20260915:
| Repository / original PR | Complete immutable prototype |
|---|---|
| opf83 | 36ff66b3d62b39d7d27dcda022b7e79e541bd603 |
| renderer21 | 343fb84223f4383ffe546157c6989ccc505c0acb |
| editor21 | ae4cc6426b04c7ca428c1b4acacea2e11d99fa84 |
| PPTX35 | fbe9a73d012dbd51d65a39251e405e488651a70b |
These contain HarfBuzz shaping, variable/CFF preparation, prepared SVG glyphs, rich-source groups, grapheme/caret/selection/navigation work and native rich/tab export experiments, with tests, licenses and evidence. See the deferred implementation plan. Resume from main and port bounded changes; do not merge an archive wholesale.
Renderer Linux still fails the unchanged 0.1px gate: Source Serif SmText Bold measures 334.06213682353496px versus Chromium334.193115234375px. Rounding fixes five Linux rows but breaks five macOS rows. Some native platform widths differ by more than twice the tolerance. Define an honest supported metric/painting contract; offsets, platform guesses and relaxed assertions do not solve it. Track renderer24.
Archived editor CI separately has a packed-test mismatch: thirteen rich-input workflows pass but the aggregate expects ten. Repair that assertion and rerun the complete packed command when resuming; the archived run is not green.
Core87 and the native plan retain image opening, current-content provenance after edit/save/reopen, tab tolerances, notes-master ordering and physical font identity/embedding. Browser, serialization and self-import checks do not establish Office acceptance. Windows host recovery is not authorized: do not retry COM or kill Office processes until recovery is confirmed. Aptos4.40 is restricted; do not use/distribute it without compatible permission.
Next milestones
Follow the developer adoption roadmap. First release the accepted increment and provide a clean installed example with current API/version docs. Then finish public-site integration in core88, preserving appearance. Package adoption and feature adoption need separate checks.
Broader work: supported multilingual fonts/fallback/IME/bidi and editing; native Office evidence; bounded deterministic layout repair for dense/nested content; full visual-editor interaction coverage. Current PDF is raster-backed. Selectable vector PDF with legal embedding/Unicode extraction and general SVG/ semantic Mermaid follow font reliability. See the linked plans for acceptance.
Keep the foundation provider-neutral and useful offline without an account or model call. Preserve content, whitespace, formatting, reading order, authored intent and undo. Bound layout repair and return actionable failure; never delete content to fit. AI may be optional application wiring, not a required embedded design agent. The broad ecosystem objective remains open. The Codex goal was paused, not completed or replaced by this cleanup.
Audit record
Final evidence records registry versions, remote archive checks, all seven repository/worktree inventories and latest archived CI failures. Source audit found no uncommitted source, stashes or local-only branch commits. A stale untracked dependency symlink was removed without changing its target. A legacy temporary directory lacking Git metadata was not treated as an active checkout.
The four concluding PRs restore runtime/tests/locks/CI to validated main, then add docs/evidence. Verify their final diffs and CI and merge them before reporting queue completion. Do not confuse preserved history with newly accepted code.