ppt-master v5.0.0

v5.0.0
Added 4
  • Carrier use and batch native presets are now exposed to the author
  • ChatGPT image API models are supported as a backend
  • Gemini reference-image editing is supported, allowing existing images to be passed as references
  • Illustrated icon slices can be generated as a family and sliced to individual transparent elements
Changed 10
  • Repository history was rewritten to remove the 578 MB examples/ tree from all commits, reducing clone size from 808 MB to 116 MB
  • Chart, preset, table, and sound catalogs are now complete maps documenting the full expressible set instead of keyword-searchable subsets
  • Visual Job Router became a recall reference that informs decisions rather than standing in front of them
  • Semantic fit is now required before a neutral layout is selected, tested before defaulting to a neutral container
  • Preset discovery is now semantic and page-local, running against the page's own content and geometry rather than deck-level heuristics
  • Lettering and illustration planning now select image carriers by what the page needs rather than by page role or available capability
Fixed 4
  • Preset discovery inspection path is now execution-safe and shell-safe, previously could break on shell metacharacters in page content
  • Compact preset atoms are now exempt from root-bounds checks, with bounds contract documented
  • Inline math now reserves structural height so formulas no longer collide with the line box around them
  • Backend failures that are permanent stop being retried, and global backend failure halts manifest batch instead of retrying all remaining prompts
Removed 2
  • Examples/ directory removed from main repository; example decks now live in separate ppt-master-examples repository
  • Mandatory recall was removed as a gate; it is now a reference the author consults when needed rather than an obligatory step

From ppt-master

[!IMPORTANT] This release rewrote the repository history. The 578 MB examples/ tree was removed from every commit it ever appeared in, cutting a clone from 808 MB to 116 MB. Example decks now live in their own repository — ppt-master-examples — and stay browsable at https://hugohe3.github.io/ppt-master-examples/, with the same in-browser viewer and the same .pptx downloads.

Existing clones and forks will not fast-forward. Because the history was rewritten, the old and new commits share no ancestor, and git pull will fail or produce an unrelated-histories merge. Realign an existing clone like this:

git log origin/main..HEAD --oneline   # check for unpushed commits first
git fetch origin
git reset --hard origin/main
rm -rf examples                       # no longer tracked; remove the leftover directory
git reflog expire --expire=now --expire-unreachable=now --all
git gc --prune=now                    # without this the old objects stay and the size never drops

Forks are affected the same way. Nothing else about the project moved: the skill, the scripts, the templates, and the documentation all stay in this repository.

v4.8.0 built out the image path. This release changes how the system chooses — across native shapes, charts, tables, sounds, layouts, and imagery. The old pattern was a mandatory recall step followed by heuristic matching: read the catalog, then guess which entry fits. That produced two failure modes at once — pages that reached for a preset because recall demanded it, and pages that settled for a neutral box because the heuristic found nothing. Both are gone. Every catalog is now a complete vocabulary the author reads as a map of what is expressible, and selection is decided by semantic fit at page scale. Nothing is selected because a step required it, and nothing falls back to neutral before fit has actually been tested.

Vocabulary-led selection replaces heuristic recall
  • The chart, preset, table, and sound catalogs are now complete maps. Each one documents the full expressible set rather than a keyword-searchable subset, so the author decides from what the system can actually express instead of from what a lookup happened to surface.
  • Mandatory recall was removed as a gate. Recall used to be an obligatory step that a page had to pass through, which pushed pages toward using a preset whether or not one fit. It is now a reference the author consults when the page has a shape question to answer.
  • The Visual Job Router became recall, not a gate. Same correction, applied to effects: the router informs the decision rather than standing in front of it.
  • Semantic fit is required before a neutral layout. A neutral container is a legitimate answer, but only after fit has been tested — not as the default landing spot when nothing obvious matched.
  • Preset discovery is semantic and page-local. Discovery runs against the page's own content and geometry rather than deck-level heuristics, and the inspection path is execution-safe and shell-safe (previously it could break on shell metacharacters in page content).
  • Lettering and illustration planning follow the same rule. Image carriers are selected by what the page needs, not by page role or by which capability happens to be available.
  • Style guidance no longer narrows capability. A resolved visual style expresses preference; it does not remove carriers from consideration. A restrained style still reaches for a photographic or lettering carrier when the page calls for one.
Page geometry as an authoring decision
  • Compound page geometry is authored, not assembled. Pages that combine multiple shape systems are designed at page scale, with the geometry decision made before the parts are chosen.
  • Page geometry is separated from relationship topology. How elements sit on the page and how they relate to each other are two decisions; conflating them produced layouts where the diagram's logic dictated the composition.
  • Preset selection moved into authoring. It belongs where the page is designed rather than in a preparation step that runs ahead of it.
  • Compact preset atoms are exempt from root-bounds checks, with the bounds contract documented — the checker previously flagged legitimately small native atoms.
  • Inline math reserves structural height, so a formula set inline no longer collides with the line box around it.
  • Carrier use and batch native presets are exposed to the author, so a page can commit to a carrier and generate its native parts together.
Image generation
  • ChatGPT image API models are supported as a backend.
  • Gemini reference-image editing is supported — an existing image can be passed as a reference rather than described from scratch.
  • Illustrated icon slices can be generated as a family and sliced to individual transparent elements.
  • Backend failures stop being retried when they are permanent, and a global backend failure halts the manifest batch instead of grinding through every remaining prompt against a backend that is down.
  • The MiniMax backend handles the documented image_urls response shape it actually returns.
Templates and workflow
  • Template kinds compose within one project workspace — a project can hold more than one kind, with the multi-kind workspace contract documented.
  • Create Template loads the shape vocabulary before contours are chosen, so template geometry is decided against the full expressible set.
  • Page carriers are resolved before resource preparation, so preparation serves decisions already made rather than guessing what will be needed.
  • Role-owned capability knowledge is preloaded, and the boundary between Strategist advice and Executor authority is stated explicitly.
  • The page-count recommendation defaults to a range rather than a single number, since the right length is usually an interval.
  • The three recommended directions are free of catalog framing — they are design directions, not catalog entries dressed up as choices.
  • PyYAML is declared as a dependency for template registration.
Failures that used to pass silently
  • Four swallowed conversion failures now surface. Source conversion could fail and report success, leaving an empty or partial document downstream.
  • The SVG editor stops reporting silent failures as success.
  • An empty icon search says so instead of returning nothing that reads as a valid empty result.
  • SVG documents that start with an XML declaration are detected during finalization rather than falling through the format check.
  • Text width no longer overestimates halfwidth forms and CJK bold, and module bounds are judged against real glyph width — both produced spurious overflow reports.
  • Quick reads the signals the scripts already emit, instead of re-deriving state that was already reported.
  • Supported native objects default to dormant markers, so a deck carries the markers without activating behavior nobody asked for.
  • Runtime paths are anchored to the installed skill root, which matters for the ZIP and plugin installs that have no repository around them.
Repository
  • Example decks moved to their own repository and the history was rewritten to remove them — see the note at the top of these release notes for what that means for an existing clone.
  • Four selection-level authoring defaults were restored in svg-effects.
  • Documentation was reconciled against the code: broken procedures repaired, contract drift settled, missing authority edges added, icon confirmation and brand resource policy aligned, and the FAQ answering the questions users actually asked.
  • Parameter refresh from PR #268.

Full changelog: https://github.com/hugohe3/ppt-master/compare/v4.8.0...v5.0.0

View original

Upgraded? How did it go?

Discussion