diff --git a/config/external-sources.lock.json b/config/external-sources.lock.json index 6cef16c1..452d5a5d 100644 --- a/config/external-sources.lock.json +++ b/config/external-sources.lock.json @@ -24,8 +24,8 @@ "repo": "https://github.com/Yeachan-Heo/oh-my-codex.git", "ref": "main", "adapter": "codex-plugin", - "commit": "3ad79a8a6fe6e95fdbb8c00e40716fffe4011ce2", - "syncedAt": "2026-08-22T16:00:00Z" + "commit": "54e79b031cbfc823590064bb45a713baadfe67cd", + "syncedAt": "2026-08-29T16:00:00Z" }, { "id": "ui-ux-pro-max", @@ -96,8 +96,8 @@ "repo": "https://github.com/hugohe3/ppt-master.git", "ref": "main", "adapter": "claude-skill", - "commit": "d6bcaf96b7946667f4a8871b0688b903181db527", - "syncedAt": "2026-08-28T16:00:00Z" + "commit": "bf81f3ece547e769095a6c0b82f40d33be3d2cf7", + "syncedAt": "2026-08-29T16:00:00Z" }, { "id": "grill-me", @@ -114,8 +114,8 @@ "repo": "https://github.com/vercel/next.js.git", "ref": "canary", "adapter": "skill-collection", - "commit": "1cb20a1d1431f9216f44230a1e5a698c23ba9f70", - "syncedAt": "2026-08-28T16:00:00Z" + "commit": "7421a868ad7eb878efcaa27cbc280b39e72ed757", + "syncedAt": "2026-08-29T16:00:00Z" } ] } diff --git a/plugins/codex/plugins/mcp-playwright/MCP_SOURCE.json b/plugins/codex/plugins/mcp-playwright/MCP_SOURCE.json index 06ccf318..e98d006d 100644 --- a/plugins/codex/plugins/mcp-playwright/MCP_SOURCE.json +++ b/plugins/codex/plugins/mcp-playwright/MCP_SOURCE.json @@ -3,5 +3,5 @@ "name": "playwright浏览器自动化操作", "version": "20260605", "keySource": "none", - "syncedAt": "2026-08-28T16:01:55Z" + "syncedAt": "2026-08-29T16:01:57Z" } diff --git a/plugins/codex/plugins/next-skills/THIRD_PARTY_SOURCE.json b/plugins/codex/plugins/next-skills/THIRD_PARTY_SOURCE.json index fd8ff4da..a6af0837 100644 --- a/plugins/codex/plugins/next-skills/THIRD_PARTY_SOURCE.json +++ b/plugins/codex/plugins/next-skills/THIRD_PARTY_SOURCE.json @@ -2,8 +2,8 @@ "sourceId": "next-skills", "repo": "https://github.com/vercel/next.js.git", "ref": "canary", - "commit": "1cb20a1d1431f9216f44230a1e5a698c23ba9f70", + "commit": "7421a868ad7eb878efcaa27cbc280b39e72ed757", "adapter": "skill-collection", "sourcePath": "skills", - "syncedAt": "2026-08-28T16:00:00Z" + "syncedAt": "2026-08-29T16:00:00Z" } diff --git a/plugins/codex/plugins/oh-my-codex/THIRD_PARTY_SOURCE.json b/plugins/codex/plugins/oh-my-codex/THIRD_PARTY_SOURCE.json index e619f702..9c21457c 100644 --- a/plugins/codex/plugins/oh-my-codex/THIRD_PARTY_SOURCE.json +++ b/plugins/codex/plugins/oh-my-codex/THIRD_PARTY_SOURCE.json @@ -2,8 +2,8 @@ "sourceId": "oh-my-codex", "repo": "https://github.com/Yeachan-Heo/oh-my-codex.git", "ref": "main", - "commit": "3ad79a8a6fe6e95fdbb8c00e40716fffe4011ce2", + "commit": "54e79b031cbfc823590064bb45a713baadfe67cd", "adapter": "codex-plugin", "sourcePath": "plugins/oh-my-codex", - "syncedAt": "2026-08-22T16:00:00Z" + "syncedAt": "2026-08-29T16:00:00Z" } diff --git a/plugins/codex/plugins/oh-my-codex/skills/doctor/SKILL.md b/plugins/codex/plugins/oh-my-codex/skills/doctor/SKILL.md index a2ce042a..84a11a65 100644 --- a/plugins/codex/plugins/oh-my-codex/skills/doctor/SKILL.md +++ b/plugins/codex/plugins/oh-my-codex/skills/doctor/SKILL.md @@ -17,7 +17,7 @@ omx doctor --force # repair eligible repo artifact ownership issues omx doctor --dry-run --force # preview eligible ownership repairs ``` -For a local source checkout, build first and invoke `node bin/omx.js doctor`. Keep command output and exact paths for the report. +For a local source checkout, build first and invoke `node dist/cli/omx.js doctor`. Keep command output and exact paths for the report. ### Plugin cache and version diff --git a/plugins/codex/plugins/oh-my-codex/skills/omx-setup/SKILL.md b/plugins/codex/plugins/oh-my-codex/skills/omx-setup/SKILL.md index 6c3a8e7a..5784eef1 100644 --- a/plugins/codex/plugins/oh-my-codex/skills/omx-setup/SKILL.md +++ b/plugins/codex/plugins/oh-my-codex/skills/omx-setup/SKILL.md @@ -48,7 +48,7 @@ omx doctor Expect doctor evidence for prompts and skills in the selected scope, project-root AGENTS.md, `.omx/state`, and CLI-first config in the scope target `config.toml`. First-party MCP and shared registry sync are omitted unless setup used `--mcp compat` (if supported by the installed CLI). -If using local source, run `npm run build` before `node bin/omx.js setup --force --verbose` and `node bin/omx.js doctor`. If AGENTS was not overwritten or merged, stop the active OMX session and rerun with `--force` or `--merge-agents`; do not edit lifecycle state manually. +If using local source, run `npm run build` before `node dist/cli/omx.js setup --force --verbose` and `node dist/cli/omx.js doctor`. If AGENTS was not overwritten or merged, stop the active OMX session and rerun with `--force` or `--merge-agents`; do not edit lifecycle state manually. ## Discovery troubleshooting diff --git a/plugins/codex/plugins/oh-my-codex/skills/team/SKILL.md b/plugins/codex/plugins/oh-my-codex/skills/team/SKILL.md index c91764f2..8f24f8e3 100644 --- a/plugins/codex/plugins/oh-my-codex/skills/team/SKILL.md +++ b/plugins/codex/plugins/oh-my-codex/skills/team/SKILL.md @@ -15,6 +15,8 @@ Use only for an explicit `$team` request or `omx team ...` launch that benefits - Require `tmux -V`, a leader session with `$TMUX`, and the intended `omx` executable. In Codex App/plain non-tmux sessions, explain the runtime boundary instead of pretending Team is available. - Before launch, ground the task in a recent `.omx/context/{slug}-*.md`; create a concise snapshot when none exists. Include target, evidence, constraints, unknowns, and likely touchpoints. - Do not launch nested Team runs. Pick worker roles deliberately; use `OMX_TEAM_WORKER_CLI=codex|claude|auto` or `OMX_TEAM_WORKER_CLI_MAP=...` only when needed. +- Per-agent reasoning is set by `agentReasoning`; accepted values are `low`, `medium`, `high`, `xhigh`, and `max`. `max` is passed unchanged and remains capability-dependent. `ultra` is unsupported and is not an alias for `max`. +- Invalid configured values use the built-in role-default fallback. An explicit raw `-c model_reasoning_effort=...` is opaque and wins. When both sources are present, explicit raw reasoning wins over inherited Team reasoning and environment reasoning. Do not downgrade or retry `max` as `xhigh`; built-in role defaults remain unchanged. ## Operational steps diff --git a/plugins/codex/plugins/ppt-master/THIRD_PARTY_SOURCE.json b/plugins/codex/plugins/ppt-master/THIRD_PARTY_SOURCE.json index 72606c21..5a2226bb 100644 --- a/plugins/codex/plugins/ppt-master/THIRD_PARTY_SOURCE.json +++ b/plugins/codex/plugins/ppt-master/THIRD_PARTY_SOURCE.json @@ -2,8 +2,8 @@ "sourceId": "ppt-master", "repo": "https://github.com/hugohe3/ppt-master.git", "ref": "main", - "commit": "d6bcaf96b7946667f4a8871b0688b903181db527", + "commit": "bf81f3ece547e769095a6c0b82f40d33be3d2cf7", "adapter": "claude-skill", "sourcePath": "skills/ppt-master", - "syncedAt": "2026-08-28T16:00:00Z" + "syncedAt": "2026-08-29T16:00:00Z" } diff --git a/plugins/codex/plugins/ppt-master/skills/ppt-master/SKILL.md b/plugins/codex/plugins/ppt-master/skills/ppt-master/SKILL.md index 6cff44c7..0ae97994 100644 --- a/plugins/codex/plugins/ppt-master/skills/ppt-master/SKILL.md +++ b/plugins/codex/plugins/ppt-master/skills/ppt-master/SKILL.md @@ -50,6 +50,19 @@ never compete with it. --- +## Authored Expression Range + +**Reference — not a constraint**: what a generated page can carry. Text — inline +emphasis runs, lead-in, kicker, pull quote, hero number, takeaway line. Geometry +— 187 Office presets, Boolean merge, connectors, freeform, page-field and +outline-carrier composition. Image — full-bleed field, editorial crop, shaped +picture, registered layers, scrim and spotlight, cross-page continuity. Paint — +gradients, channel alpha, native shadow and glow, halftone, faceted form. +Recurrence — one cross-page motif varied by page role. Each form's syntax lives +in the selected runtime authority's construction references. + +--- + ## Global Execution Discipline 1. **Serial execution** — Follow the selected authority's steps in order. A completed non-blocking step may continue directly to the next eligible step. diff --git a/plugins/codex/plugins/ppt-master/skills/ppt-master/references/executor-base.md b/plugins/codex/plugins/ppt-master/skills/ppt-master/references/executor-base.md index 080c95ec..37591765 100644 --- a/plugins/codex/plugins/ppt-master/skills/ppt-master/references/executor-base.md +++ b/plugins/codex/plugins/ppt-master/skills/ppt-master/references/executor-base.md @@ -1,6 +1,6 @@ # Executor Flat and Shared Core -Always-loaded Executor authority for flat SVG page authoring and behavior shared by every Generate route. Load conditional branches only when their trigger is present. +Always-loaded Executor authority for flat SVG page authoring and behavior shared by every Generate route; Default and Quick both load it. Items marked `Default only` bind to the persisted Design Spec / `spec_lock.md`. Quick applies the same craft to the transient anchors it resolved under [`quick-generate.md`](../workflows/profiles/quick-generate.md) §2, and its own pacing, single final checker, and export steps replace §3 `Generation rhythm`, the first-page gate, §6, and §7. Load conditional branches only when their trigger is present. **Conditional branch routing**: @@ -31,6 +31,51 @@ Evaluate branches from each object's actual information model, not only from a C --- +## Page Expression Core + +Read this before §1. It is the expression vocabulary every page draws from; the +technical contracts below bound how it is written, not whether it is available. + +**Capability — typographic feature elements**: beyond the structural roles fixed +by `typography` anchors, a page may carry deliberate typographic hierarchy — a +lead-in sentence, an inline emphasis run, a pull quote, a kicker, a hero number, +a takeaway line. Each is its own feature element with its own size and treatment; +a recurring one becomes a named role. + +**Capability — inline emphasis is one editable frame**: a `` paragraph may +nest non-positional `` runs carrying their own `fill`, `font-weight`, or +`font-size`. Export walks those nested runs and emits one DrawingML run per +styled segment, so a coloured or bold phrase inside a sentence stays inside the +same editable PowerPoint text frame. Positioned line-break `` children may +themselves contain inline runs. + +```xml +腐朽但仍可加固接续的千年木梁,不做整体更换;风化的古墙,只做防风化微创处理。 +``` + +**Reference — everyday device menu (not a constraint, not a quota)**: the pieces most slides are built from. + +| Device | Typical job | Realization | +|---|---|---| +| Gradient block or band | Cover / chapter field, title backing, zone separation | `` / `` in 2–3 stops of the deck hue | +| Rounded card | One content module among peers, a feature or option block | `` in `secondary_bg`; a shadow only when it floats over a photo or colored panel | +| Icon with label | Feature markers, list prefixes, step or category cues | `` at 32–48 px in an accent or primary role | +| Numbered circle or badge | Ordered steps, ranked items, chapter marks | `` + centered number; oversized numeral for a chapter | +| Color swatch | A color, material, or sample that the content names | `` / `` filled with the subject's own value, labeled with its name and HEX | +| KPI card | Metric name + hero number + trend or comparison | Card + number at the hero size + small annotation; icon optional | +| Takeaway box | One-sentence conclusion under a title | Tinted band (`fill-opacity` 0.06–0.10) with the sentence in lead size | +| Divider or rule | Separate sections, columns, header from body | Hairline `` in `divider`, or a 2 px accent bar | +| Full-bleed image + scrim | Cover, chapter divider, mood page | Image `slice` + directional gradient scrim + floating title | +| Framed or shaped picture | Portrait, product, place, evidence photo | Circle / rounded clip on ``, hairline frame, caption | +| Quote block | Pull quote, testimonial, source sentence | Oversized quotation mark or accent rule + text at lead size + attribution | +| Timeline or step strip | Ordered events or stages | Baseline `` with ticks/nodes, or chevron presets, labels above/below | + +**Reference — page-level recipes**: [`svg-effects.md`](./svg-effects.md) §6.13 +carries a back-to-front layer stack for cover, divider, text-led, process, +evidence, comparison, closing, and cross-page-motif pages. + +--- + ## 1. Effect Capability Discovery **Reference — effects vocabulary**: [`svg-effects.md`](./svg-effects.md) §6.1 @@ -49,11 +94,13 @@ baked/alternative-only. --- -## 2. Design Parameter Confirmation (Mandatory Step) +## 2. Design Parameter Confirmation (Mandatory Step — Default only) Before the first SVG page, output a confirmation listing: the compact communication objective, canvas dimensions, body font size, color scheme (primary/secondary/accent HEX), font plan, the measured line capacity of the body and annotation roles (run `python3 ${SKILL_DIR}/scripts/text_measure.py measure` on one representative CJK/Latin line per role and state "≈ N chars per W px"; the checker's module check adds DrawingML wrapping headroom, so a hand count of characters × font size underestimates by roughly 15%), and the live-preview URL reported by the launcher. If the preview launch failed, state that failure before generating SVGs instead of silently proceeding. Prevents purpose/spec/execution drift. -### 2.1 Execution context validity (Mandatory) +### 2.1 Execution context validity (Mandatory — Default only) + +> Quick has no Design Spec or lock: skip the artifact reads, roster, recovery, and lock re-read rules in this section, but apply its reading-mode, authored-texture, `page_rhythm`, and typography-anchor tables to the transient anchors from `quick-generate.md` §2. - **Valid**: if the exact complete Design Spec and lock remain in the unchanged, uncompacted active context, reuse both for every page. Do not reread or poll them. The one scheduled exception is the five-page lightweight lock re-read defined below. - **Invalid**: fresh/resumed/restarted execution, compaction/summary-only recovery, or an external/unknown change requires one complete read of `design_spec.md`, then `spec_lock.md`, plus triggered references/template inputs. Mid-deck recovery also reads the latest completed SVG and, when images are used, current image metadata. @@ -163,34 +210,19 @@ Before drawing each page, look up its entry in `page_rhythm` (key format `P` - **Spec adherence**: follow binding color, canvas, typography, identity, resource, and template anchors; apply layout and other Reference directions under §2.1 without turning them into locks - **Template structure**: inherit the native visual framework only for `template_reuse_scope: mirror|layout`; `style` uses the flat route - **Main-agent ownership**: SVG generation must run in the main agent (not sub-agents) — pages share upstream context for cross-page visual continuity -- **Generation rhythm**: P01 → first-page gate → remaining pages with one page gate per first-exercised `not-exercised` item → final gate, in one context without batches or other mid-run checker calls. +- **Generation rhythm (Default only)**: P01 → first-page gate → remaining pages with one page gate per first-exercised `not-exercised` item → final gate, in one context without batches or other mid-run checker calls. - **Fact provenance**: when a §IX page lists `Fact IDs`, resolve each ID from `sources/*.facts.json` and keep the claim/value unchanged. Render a compact source footnote using the source name and a short URL/domain when space permits; when speaker notes are enabled, state the attribution naturally there too. When §IX says `Data class: scenario`, place a visible localized `Scenario data` / `情景数据` label adjacent to the affected KPI/chart and, when notes are enabled, state naturally there that the number is illustrative. Never attach an external fact ID to scenario data or let an unlabeled invented KPI look factual. - **Mandatory — resolve the page carrier mix before coordinates**: decide background paint/field, editable text and optional lettering, native geometry/lines, prepared photos/scenes/illustration/icon assets, and applicable visualizations in one page-level composition decision. Use only prepared external resources, preserve every binding resource job and constraint, and choose the actual combination, visual weight, z-order, and local native construction from the page message and hierarchy. The resolved style controls treatment and emphasis, never carrier eligibility, image source, or the complete native construction vocabulary. At this decision, recall the construction vocabulary already loaded: the resolved style's §1 `Composition geometry`, [`svg-effects.md`](./svg-effects.md) §6.1 Visual Job Router, and [`native-shape-authoring.md`](./native-shape-authoring.md) §2.1 composition lenses. - **Default — stage each page with the style's composition geometry (may override when another page-fit move is stronger)**: an SVG page is a canvas, not a DOM. Resolve the page-scale move from `spec_lock.md`: a preset uses that selected style's §1 `Composition geometry`; `custom` executes `visual_style_behavior` first, then uses §1 geometry only from exact `visual_style_references` that the behavior assigns a shape or composition job. Other bases contribute only their assigned job, and an unreferenced novel custom follows its behavior alone. Treat every listed move as generative vocabulary rather than a finite menu, then apply [`native-shape-authoring.md`](./native-shape-authoring.md) §2.1's shared exact-fit geometry gate. - **Default — consider the planned motif direction (may override when another coherent expression better serves the deck)**: when §III `Theme` recommends a cross-page motif or element family, decide whether it earns a continuity job. If adopted, keep its reuse coherent while varying scale, crop, density, position, and content interaction by page role; otherwise adapt or decline it and establish a more fitting style-consistent expression. An explicit user/template motif remains binding. - **Ordinary carriers stay ordinary**: cards, icon-and-label rows, color swatches, soft shadows, and gradient fields are everyday slide carriers. Use them whenever content groups, compares, enumerates, or names a color, material, or sample, and give peers one shared treatment. When the subject itself is a color or material, draw it: a swatch is content, its value comes from the source, and it needs no lock row. -- **Reference — everyday device menu (not a constraint, not a quota)**: the pieces most slides are built from; reach for them by page job and let the locked style set their treatment. - -| Device | Typical job | Realization | -|---|---|---| -| Gradient block or band | Cover / chapter field, title backing, zone separation | `` / `` in 2–3 stops of the deck hue | -| Rounded card | One content module among peers, a feature or option block | `` in `secondary_bg`; a shadow only when it floats over a photo or colored panel | -| Icon with label | Feature markers, list prefixes, step or category cues | `` at 32–48 px in an accent or primary role | -| Numbered circle or badge | Ordered steps, ranked items, chapter marks | `` + centered number; oversized numeral for a chapter | -| Color swatch | A color, material, or sample that the content names | `` / `` filled with the subject's own value, labeled with its name and HEX | -| KPI card | Metric name + hero number + trend or comparison | Card + number at the hero size + small annotation; icon optional | -| Takeaway box | One-sentence conclusion under a title | Tinted band (`fill-opacity` 0.06–0.10) with the sentence in lead size | -| Divider or rule | Separate sections, columns, header from body | Hairline `` in `divider`, or a 2 px accent bar | -| Full-bleed image + scrim | Cover, chapter divider, mood page | Image `slice` + directional gradient scrim + floating title | -| Framed or shaped picture | Portrait, product, place, evidence photo | Circle / rounded clip on ``, hairline frame, caption | -| Quote block | Pull quote, testimonial, source sentence | Oversized quotation mark or accent rule + text at lead size + attribution | -| Timeline or step strip | Ordered events or stages | Baseline `` with ticks/nodes, or chevron presets, labels above/below | +- **Everyday devices**: the device menu in `Page Expression Core` above is the recall list; reach for a device by page job and let the locked style set its treatment. - **Inherited containers**: preserve meaningful template frames; restyle radius, fill, stroke, and depth from the active Design Spec and `spec_lock.md`. Selected Chart/Table reference adaptation is owned by [`executor-visualization.md`](./executor-visualization.md); preview effects never override project styling or structural roles. - **Reference — prefer semantic geometry over preset stacks**: for relationships such as ascending, converging, breaking through, or stacking, first compose faithful primitives and exact presets as one page geometry system; use a Boolean only when the contour itself must merge, open, or fragment. Only when neither construction works should one page-specific polygon/path replace a stack of generic arrows. - **Phased generation** (recommended): - 1. **Visual Construction Phase**: generate all SVG pages sequentially for visual consistency. Apply every triggered information-model branch while drawing. **MUST embed one object-scoped plot-area marker** per §IX-named or Quick-promoted value-driven chart object under [`executor-chart.md`](./executor-chart.md) §2; coordinate calibration is a post-generation step (see [`verify-charts`](../workflows/stages/verify-charts.md)). Write every `=yes` native marker plus JSON metadata atomically under [`native-data-interface.md`](./native-data-interface.md) §2, then record its fallback baseline before that page's gate with `python3 ${SKILL_DIR}/scripts/stamp_native_fallbacks.py /svg_output/.svg --write`; rerun it after any later visible edit inside the marker group, because a missing or stale baseline blocks the canonical gate and native Chart/Table export. **Reach for native presets** per §3.0 as you draw each page: a block arrow, chevron, banner/ribbon, callout, standard flowchart node, or star is authored through `preset_shape_svg.py` at draw time — decided by the object's intent as you create it, never by scanning finished paths, and never committed to a bare ``/`` when a preset expresses it; several presets selected for one page are generated in one `preset_shape_svg.py render-batch --input -` round (a gradient fill/stroke or a pattern fill is the one paint exception — keep those ordinary SVG; when justified, one registered [`svg-effects.md`](./svg-effects.md) §6.4 shadow/glow stays on the helper-authored shape). **First-page gate (Mandatory)**: after completing the first page, run `python3 ${SKILL_DIR}/scripts/svg_quality_checker.py --canonical-authoring --stage first-page --json` directly without output filtering. Review the whole P01 issue set, make one consolidated edit pass for every error and any selected warnings, then perform one verification rerun. If it still fails, treat that complete output as the next batch; never check between individual fixes. After it passes, draw P02 through the last page; the only further mid-run checker call is the first-exercise page gate (`--stage page --page `) on the first page that exercises a `not-exercised` item. - 2. **Quality Check Gate**: only after every planned SVG exists, run `python3 ${SKILL_DIR}/scripts/svg_quality_checker.py --canonical-authoring --stage final --json` directly on `svg_output/` without `tail` / `head` / `grep` filtering. One run already reports all pages. Review its complete issue set, fix every `error` plus any selected advisory warnings in one consolidated edit pass, then perform one verification rerun. If it still fails, its complete output begins the next batch cycle; never use checker calls to discover or fix one next issue at a time. Every `warning` is advisory: it never sends the page back for required modification, never authorizes automatic rewriting of compatible user syntax, and needs no acknowledgement/disposition line. Recommendation warnings describe the generated-SVG default; fidelity/quality warnings may be surfaced when material, while the existing input remains releasable. Prototype-identical diagnostics are recorded as `inherited`, source conversion losses as `source-import`, changed/new advisories as `introduced`, and release failures as `blocking` in `validation/svg_quality_report.json`. If release truly depends on a condition, it belongs in `errors`. On success, use the exit status and terminal summary; do not open or `cat` the complete JSON into model context. If terminal output is truncated on failure, read only the relevant issue arrays from the report written by that same run. Do NOT defer error handling to after `finalize_svg.py` — finalize rewrites SVG and masks some violations. + 1. **Visual Construction Phase**: generate all SVG pages sequentially for visual consistency. Apply every triggered information-model branch while drawing. **MUST embed one object-scoped plot-area marker** per §IX-named or Quick-promoted value-driven chart object under [`executor-chart.md`](./executor-chart.md) §2; coordinate calibration is a post-generation step (see [`verify-charts`](../workflows/stages/verify-charts.md)). Write every `=yes` native marker plus JSON metadata atomically under [`native-data-interface.md`](./native-data-interface.md) §2, then record its fallback baseline before that page's gate with `python3 ${SKILL_DIR}/scripts/stamp_native_fallbacks.py /svg_output/.svg --write`; rerun it after any later visible edit inside the marker group, because a missing or stale baseline blocks the canonical gate and native Chart/Table export. **Reach for native presets** per §3.0 as you draw each page: a block arrow, chevron, banner/ribbon, callout, standard flowchart node, or star is authored through `preset_shape_svg.py` at draw time — decided by the object's intent as you create it, never by scanning finished paths, and never committed to a bare ``/`` when a preset expresses it; several presets selected for one page are generated in one `preset_shape_svg.py render-batch --input -` round (a gradient fill/stroke or a pattern fill is the one paint exception — keep those ordinary SVG; when justified, one registered [`svg-effects.md`](./svg-effects.md) §6.4 shadow/glow stays on the helper-authored shape). **First-page gate (Mandatory — Default only; Quick runs only its one final checker)**: after completing the first page, run `python3 ${SKILL_DIR}/scripts/svg_quality_checker.py --canonical-authoring --stage first-page --json` directly without output filtering. Review the whole P01 issue set, make one consolidated edit pass for every error and any selected warnings, then perform one verification rerun. If it still fails, treat that complete output as the next batch; never check between individual fixes. After it passes, draw P02 through the last page; the only further mid-run checker call is the first-exercise page gate (`--stage page --page `) on the first page that exercises a `not-exercised` item. + 2. **Quality Check Gate**: only after every planned SVG exists, run `python3 ${SKILL_DIR}/scripts/svg_quality_checker.py --canonical-authoring --stage final --json` (Quick adds its route flag) directly on `svg_output/` without `tail` / `head` / `grep` filtering. One run already reports all pages. Review its complete issue set, fix every `error` plus any selected advisory warnings in one consolidated edit pass, then perform one verification rerun. If it still fails, its complete output begins the next batch cycle; never use checker calls to discover or fix one next issue at a time. Every `warning` is advisory: it never sends the page back for required modification, never authorizes automatic rewriting of compatible user syntax, and needs no acknowledgement/disposition line. Recommendation warnings describe the generated-SVG default; fidelity/quality warnings may be surfaced when material, while the existing input remains releasable. Prototype-identical diagnostics are recorded as `inherited`, source conversion losses as `source-import`, changed/new advisories as `introduced`, and release failures as `blocking` in `validation/svg_quality_report.json`. If release truly depends on a condition, it belongs in `errors`. On success, use the exit status and terminal summary; do not open or `cat` the complete JSON into model context. If terminal output is truncated on failure, read only the relevant issue arrays from the report written by that same run. Do NOT defer error handling to after `finalize_svg.py` — finalize rewrites SVG and masks some violations. 3. **Logic Construction Phase (conditional)**: after SVGs pass the quality check, batch-generate speaker notes for narrative continuity only when the effective Speaker Notes outcome is enabled. **Mandatory — final carrier-receipt review**: The final checker prints one @@ -340,7 +372,7 @@ test -f "/icons//.svg" ## 5. Font Usage -Read typography from `spec_lock.md`: `_family` → `title_family` / `body_family` → legacy `font_family`; sparse accents follow §2.1. Under [`native-formula.md`](./native-formula.md), blocks use marker style; inline math inherits size / visible solid fill and exports with the project text language in Cambria Math. +Default reads typography from `spec_lock.md` (Quick: from its transient §2 typography anchor): `_family` → `title_family` / `body_family` → legacy `font_family`; sparse accents follow §2.1. Under [`native-formula.md`](./native-formula.md), blocks use marker style; inline math inherits size / visible solid fill and exports with the project text language in Cambria Math. **Default — locked-stack realization (may vary treatment)**: Express the Design Spec Character Reference through scale, weight, spacing, color, and composition; keep the locked family. Put the common stack on root ``, omit matching descendants, and override at the nearest clear ``, ``, or ``. @@ -350,7 +382,7 @@ Read typography from `spec_lock.md`: `_family` → `title_family` / `body_ --- -## 6. Completion Routing +## 6. Completion Routing (Default only) After every SVG page passes the final quality check, load [`executor-notes.md`](./executor-notes.md) and complete its notes contract only @@ -358,7 +390,7 @@ when the effective Speaker Notes outcome in `design_spec.md §I` is enabled. When disabled, proceed directly to the route's conditional motion handling and Step 7. -## 7. Next Steps After Completion +## 7. Next Steps After Completion (Default only) > **Auto-continuation**: After Visual Construction Phase and any enabled Logic Construction Phase are complete, the Executor proceeds directly to the post-processing pipeline. diff --git a/plugins/codex/plugins/ppt-master/skills/ppt-master/references/shared-standards-core.md b/plugins/codex/plugins/ppt-master/skills/ppt-master/references/shared-standards-core.md index eb029220..862e9c36 100644 --- a/plugins/codex/plugins/ppt-master/skills/ppt-master/references/shared-standards-core.md +++ b/plugins/codex/plugins/ppt-master/skills/ppt-master/references/shared-standards-core.md @@ -28,6 +28,10 @@ Mandatory reference for every route that authors or regenerates slide visuals th **Reference — effects vocabulary**: Default and Quick Generate load [`svg-effects.md`](./svg-effects.md); its §6.1 Visual Job Router lists the visual jobs an effect can serve. Whether any compatible technique is added is the author's call. +**Reference — where expression lives**: §4.2 owns editable text form, including +per-run inline emphasis and leading; §4.3 owns grouping. §1.4's imported-PowerPoint +metadata applies only to import, mirror, and round-trip routes. + **Fidelity labels**: | Label | Meaning | @@ -645,7 +649,7 @@ These forms are needed only when the stated PPT behavior matters: | Desired behavior | Required form | |---|---| -| One editable PPT text frame with mixed formatting or multiline prose | Use one `` per logical paragraph and non-positional `` children for inline runs. Keep the first line as direct text; later lines use direct positioned `` children that repeat parent `x` with positive relative `dy`; an all-`` form may start at `dy="0"`. Default retains these breaks without PowerPoint wrapping; `--reflow-text` may join eligible lines. A font-size change, list marker, or larger accepted gap starts another paragraph. Sibling `` elements are forbidden as one paragraph's line breaks; they remain valid for independent frames. | +| One editable PPT text frame with mixed formatting or multiline prose | Use one `` per logical paragraph and non-positional `` children for inline runs. Per-run `fill` / `font-weight` / `font-size` is retained: export walks nested runs and emits one DrawingML run per styled segment, so an emphasised phrase stays inside the same editable frame, and a positioned line-break `` may itself contain inline runs. Keep the first line as direct text; later lines use direct positioned `` children that repeat parent `x` with positive relative `dy`; an all-`` form may start at `dy="0"`. Default retains these breaks without PowerPoint wrapping; `--reflow-text` may join eligible lines. A font-size change, list marker, or larger accepted gap starts another paragraph. Sibling `` elements are forbidden as one paragraph's line breaks; they remain valid for independent frames. | | Stable object grouping or object-level animation anchor | Wrap the intended object in ``. Content grouping is **mandatory** per §4.3 — a top-level `` is also the animation anchor; it is not an optional convenience. | | Native PowerPoint background promotion | Outside structured mode, the first eligible visual layer may be a direct full-canvas `` or one inside a simple single-child group. Its fill must have a registered native mapping (solid, linear/radial gradient, or preset pattern), and it must have no transform, filter, clip, rounding, or visible stroke. Export writes the fill as Slide `p:bg`; image elements remain pictures. Structured routes use the narrower explicit solid-background ownership contract in [`pptx-structure-interface.md`](./pptx-structure-interface.md). | | Free-design / brand-only PowerPoint structure | Use `pptx_structure.mode: flat`. Keep represented objects Slide-local; export emits one clean Master plus Blank Layout, removes stock content placeholders/Layout inventory, and retains the standard date/footer/slide-number hooks. Do not author Master/Layout identities, layers, or slots. Without a Layout/Deck owner, Quick uses the same ownership with converter-default theme scaffolding. | diff --git a/plugins/codex/plugins/ppt-master/skills/ppt-master/references/strategist.md b/plugins/codex/plugins/ppt-master/skills/ppt-master/references/strategist.md index 723a3aef..52dd41a0 100644 --- a/plugins/codex/plugins/ppt-master/skills/ppt-master/references/strategist.md +++ b/plugins/codex/plugins/ppt-master/skills/ppt-master/references/strategist.md @@ -600,7 +600,7 @@ includes transitions. - **page_rhythm is mandatory**: Based on the page list in §IX Content Outline, assign each page one of `anchor` / `dense` / `breathing`. This is what breaks the uniform "every page is a card grid" feel. New locks may not omit the section; consumer omission behavior is owned by [`executor-base.md`](executor-base.md) §2.1. - **Fact IDs and scenario labels are mandatory when applicable**: Read any `sources/*.facts.json`. For each §IX page, list the stable IDs actually used; never cite an ID whose claim is absent from the page. Mark invented KPIs/targets/internal ratios as `Data class: scenario` and state which values are scenario data. Executor carries external sources into notes/footnotes and renders a visible scenario label for scenario figures. - **Mandatory — whole-roster rhythm check**: During the same §IX composition, compare neighbors and section arcs to judge whether chapter entries visibly reset, extended same-density runs are intentional, extended same-carrier or same-topology runs form an intentional semantic sub-arc, repeated dominant geometry carries a continuity job, any qualifying §6.1 visible-state sequence preserves a recognizable mental map while making its next semantic change legible, each section follows a mode-fitting progression—including framework → explanation/evidence → judgment/action when it serves the objective—and the final arc resolves the communication objective before a genuine ending lowers information load. Same section, equal weight or density, one style, and prior-page precedent do not establish a semantic sub-arc. Repair the existing roster, `Layout` recommendations, and `page_rhythm` choices in place. This is judgment, not quota; preserve intentional continuity, legitimately all-`dense` material, and 1:1/literal order. Do not invent filler pages to manufacture rhythm; a `breathing` page marks a meaningful pause—chapter transition, standalone emphasis, or SCQA bridge—and must stand alone. Create no field, lock row, artifact, or second review/execution pass. - - **Cover impact is mandatory**: In `design_spec.md §IX`, give `P01` one concrete hook from the source's strongest claim, metaphor, number, moment, or conflict plus a recommended composition. The hook binds; Executor may adopt, adapt, or decline the composition while preserving the hook and explicit constraints. With no suitable image, recommend a native-SVG hook instead of a generic title treatment. Beautify preservation paths are exempt. + - **Cover impact is mandatory**: In `design_spec.md §IX`, give `P01` one concrete hook from the source's strongest claim, metaphor, number, moment, or conflict plus a recommended composition. **Reference — not a constraint**: composition starting points include full-bleed image with floating title, typographic poster, hero object, data hook, editorial scene, and high-contrast abstract geometry; a fresh composition the subject suggests is equally valid — these are starting points rather than the allowed set. A distilled display phrase taken from the deck's own subject may carry the cover as the dominant mark while the complete title stays as a native subtitle. The hook binds; Executor may adopt, adapt, or decline the composition while preserving the hook and explicit constraints. With no suitable image, recommend a native-SVG hook instead of a generic title treatment. Beautify preservation paths are exempt. - **Cover rhythm lock**: `P01` remains `anchor`. Default away from generic content-page templates; a card grid, agenda, or equal-weight columns remains valid when content, user direction, or the template makes it the clearest cover. - **Closing impact (only when the deck closes)**: For a genuine conclusion / CTA / final takeaway, name the binding takeaway plus a recommended composition; Executor may adopt, adapt, or decline the latter while preserving the takeaway and explicit constraints. Do not default to an information-empty "Thank you", contact-only slide, or cover reprise; an explicit contact/event CTA may serve the purpose. **Do NOT invent a closing page to satisfy this**. Preservation paths are exempt. - **pptx_structure is mandatory**: Free-design, brand-only, and `template_reuse_scope: style` routes write `mode: flat`; a style-reference route may also record `template_reuse_scope: style` but omits every structure mapping and `template_adherence`. `template_reuse_scope: mirror|layout` writes `mode: structured` plus `template_adherence: strict|adaptive`. Do not write legacy `baseline`, `template`, `preserve`, `layout_strategy`, or Layout-kind rows into a new project. diff --git a/plugins/codex/plugins/ppt-master/skills/ppt-master/references/svg-effects.md b/plugins/codex/plugins/ppt-master/skills/ppt-master/references/svg-effects.md index 7cd2ae24..4e56de99 100644 --- a/plugins/codex/plugins/ppt-master/skills/ppt-master/references/svg-effects.md +++ b/plugins/codex/plugins/ppt-master/skills/ppt-master/references/svg-effects.md @@ -38,6 +38,11 @@ serve. | Surface / select | Name the target, confirm its owning subsection and fidelity, and let the Router recall candidates. Choose a compatible technique that fully performs the job; prefer simpler/native-stable alternatives only when communication is equal. `Approximate` requires review, not automatic rejection. | | Integrate / stop | Align paint, contour, light, hierarchy, and z-order; combine only techniques with different jobs. Check legibility, editability, density, fidelity, and style; simplify failures, use legal alternatives, and bake only the smallest pixel-dependent layer. Keep authoritative text/data native. | +**Reference — page-level recipes**: §6.13 carries a back-to-front layer stack for +cover, divider, text-led explanation, process, evidence, comparison, closing, and +cross-page motif pages. Read it with this router rather than after the page is +already composed. + **Default — one dominant composition scaffold (may override when a second scaffold performs an independent communication job)**: Integrate the page-scale move and every active Structure / Image / Chart / Table branch into one dominant @@ -62,6 +67,7 @@ contracts are the boundary; membership in this table is not. | Picture/card/overlay elevation or boundary is unclear | Object or picture/carrier shadow, restrained glow, or hairline | §6.4; one light direction | | Native copy and image do not integrate | Scrim, fade, wash, vignette, off-center spotlight, or faux glass | §6.5 and the Image-Treatment Implementation Map; verify contrast; no backdrop blur | | Relationship state, direction, continuity, or boundary is unclear | Draft/optional/future → dash; direction → marker; undirected → solid; continuous flow → gradient stroke; repeated boundary → frame/contour/crop edge; exact grid → multi-subpath | §6.6 / §6.3; every line needs a job | +| Body copy carries a load-bearing figure, contrast, or noun that does not survive a scan | Inline emphasis run — a nested `` with its own fill or weight inside the same paragraph | §6.7; the frame stays one editable text object | | Short display text needs notation, silhouette, or material/image emphasis | Removed/former → strike; eyebrow distinction → tracking; display silhouette → outline/gradient; justified material/image emphasis → native picture/texture fill; luminous metric → glow; semantic list → native bullet | §6.7 / §6.3 / §6.4; no decorative body-copy treatment | | Tilt, repetition, or reversible asset direction helps composition | Rotate, translate/mirror, or local `` | §6.8; never mirror text, logos, or directional evidence | | Resolved style needs hand, print, pixel, facets, layers, ribbon, or line-plus-area | Matching constructed recipe | §6.11; no generic decorative freeform | diff --git a/plugins/codex/plugins/ppt-master/skills/ppt-master/scripts/prompt_audit_manifest.json b/plugins/codex/plugins/ppt-master/skills/ppt-master/scripts/prompt_audit_manifest.json index 54c49cfa..6c2b50fb 100644 --- a/plugins/codex/plugins/ppt-master/skills/ppt-master/scripts/prompt_audit_manifest.json +++ b/plugins/codex/plugins/ppt-master/skills/ppt-master/scripts/prompt_audit_manifest.json @@ -17,7 +17,7 @@ }, "file_budgets": { "AGENTS.md": 3250, - "skills/ppt-master/SKILL.md": 1250, + "skills/ppt-master/SKILL.md": 1500, "skills/ppt-master/references/executor-base.md": 12000, "skills/ppt-master/references/executor-structured.md": 5500, "skills/ppt-master/references/executor-chart.md": 3500, @@ -29,7 +29,7 @@ "skills/ppt-master/references/executor-web-image.md": 750, "skills/ppt-master/references/executor-notes.md": 1000, "skills/ppt-master/references/shared-standards.md": 500, - "skills/ppt-master/references/shared-standards-core.md": 13000, + "skills/ppt-master/references/shared-standards-core.md": 14000, "skills/ppt-master/references/svg-effects.md": 16000, "skills/ppt-master/references/native-data-interface.md": 7750, "skills/ppt-master/references/pptx-structure-interface.md": 4750, @@ -54,7 +54,7 @@ "skills/ppt-master/SKILL.md", "skills/ppt-master/workflows/routing.md" ], - "max_tokens": 7750 + "max_tokens": 8000 }, "support.sponsor-recommendation.en": { "description": "English sponsor context for explicit user requests for model, AI image model, API/provider, or hosted-service recommendations.", @@ -205,7 +205,7 @@ "max_tokens": 130000 }, "route.generate.quick-generate": { - "description": "Self-contained one-pass Generate profile with source intake, the fixed planning-capability batch, a conservative audit envelope for only the resolved preset or exact custom bases, conditional resource preparation, and complete flat SVG visual-construction authorities. Ceiling raised after BUDGET_LOAD_SET reported 108610 tokens.", + "description": "Self-contained one-pass Generate profile with source intake, the fixed planning-capability batch, a conservative audit envelope for only the resolved preset or exact custom bases, conditional resource preparation, and complete flat SVG visual-construction authorities. Ceiling raised after BUDGET_LOAD_SET reported 128946 tokens.", "scope": "cumulative", "include": [ "bootstrap.routing" @@ -214,6 +214,7 @@ "skills/ppt-master/workflows/profiles/quick-generate.md", "skills/ppt-master/references/artifact-ownership.md", "skills/ppt-master/references/shared-standards-core.md", + "skills/ppt-master/references/executor-base.md", "skills/ppt-master/references/svg-effects.md", "skills/ppt-master/references/native-shape-authoring.md", "skills/ppt-master/references/preset-shape-vocabulary.md", @@ -257,20 +258,20 @@ "registry": "image-renderings" } ], - "max_tokens": 120000 + "max_tokens": 130000 }, "route.generate.quick-generate.beautify": { - "description": "Quick Generate with the shared strict 1:1 Beautify profile. Ceiling raised after BUDGET_LOAD_SET reported 116355 tokens.", + "description": "Quick Generate with the shared strict 1:1 Beautify profile. Ceiling raised after BUDGET_LOAD_SET reported 136685 tokens.", "scope": "cumulative", "include": [ "route.generate.quick-generate", "profile.generate.beautify-pptx" ], "files": [], - "max_tokens": 130000 + "max_tokens": 140000 }, "route.generate.quick-generate.image-to-pptx": { - "description": "Codex-supported Quick-only Image to PPTX with registered reference-image layers and shared plates.", + "description": "Codex-supported Quick-only Image to PPTX with registered reference-image layers and shared plates. Ceiling raised after BUDGET_LOAD_SET reported 156580 tokens.", "scope": "cumulative", "include": [ "route.generate.quick-generate.in-hand-image", @@ -280,10 +281,10 @@ "skills/ppt-master/references/image-base.md", "skills/ppt-master/references/image-generator.md" ], - "max_tokens": 145000 + "max_tokens": 160000 }, "route.generate.quick-generate.video-design": { - "description": "Quick Generate with conditional video-delivery design, frozen-script notes, custom animation, and narration/audio delivery. Ceiling raised after BUDGET_LOAD_SET reported 154620 tokens.", + "description": "Quick Generate with conditional video-delivery design, frozen-script notes, custom animation, and narration/audio delivery. Ceiling raised after BUDGET_LOAD_SET reported 178699 tokens.", "scope": "cumulative", "include": [ "route.generate.quick-generate", @@ -293,10 +294,10 @@ "stage.shared.generate-audio" ], "files": [], - "max_tokens": 175000 + "max_tokens": 180000 }, "route.generate.quick-generate.template-fusion": { - "description": "Quick Generate with the maximum Brand, Style, Layout, and Deck exact-root fusion; installed Layout/Deck ownership determines flat or structured authoring. Ceiling raised after BUDGET_LOAD_SET reported 125689 tokens.", + "description": "Quick Generate with the maximum Brand, Style, Layout, and Deck exact-root fusion; installed Layout/Deck ownership determines flat or structured authoring. Ceiling raised after BUDGET_LOAD_SET reported 150785 tokens.", "scope": "cumulative", "include": [ "route.generate.quick-generate", @@ -305,59 +306,59 @@ "files": [ "skills/ppt-master/references/pptx-structure-interface.md" ], - "max_tokens": 140000 + "max_tokens": 155000 }, "route.generate.quick-generate.topic-research": { - "description": "Quick Generate with gap-targeted factual research before direct resource preparation and SVG authoring. Ceiling raised after BUDGET_LOAD_SET reported 111104 tokens.", + "description": "Quick Generate with gap-targeted factual research before direct resource preparation and SVG authoring. Ceiling raised after BUDGET_LOAD_SET reported 131440 tokens.", "scope": "cumulative", "include": [ "route.generate.quick-generate", "stage.generate.topic-research" ], "files": [], - "max_tokens": 125000 + "max_tokens": 135000 }, "route.generate.quick-generate.icon": { - "description": "Quick Generate with project-local bundled icon selection and synchronization; the icon capability contract is already in the fixed planning context. Ceiling raised after BUDGET_LOAD_SET reported 108610 tokens.", + "description": "Quick Generate with project-local bundled icon selection and synchronization; the icon capability contract is already in the fixed planning context. Ceiling raised after BUDGET_LOAD_SET reported 128946 tokens.", "scope": "cumulative", "include": [ "route.generate.quick-generate" ], "files": [], - "max_tokens": 120000 + "max_tokens": 130000 }, "route.generate.quick-generate.in-hand-image": { - "description": "Quick Generate with supplied, extracted, or placeholder image resources prepared before SVG authoring. Ceiling raised after BUDGET_LOAD_SET reported 113046 tokens.", + "description": "Quick Generate with supplied, extracted, or placeholder image resources prepared before SVG authoring. Ceiling raised after BUDGET_LOAD_SET reported 133387 tokens.", "scope": "cumulative", "include": [ "route.generate.quick-generate", "stage.generate.executor.image" ], "files": [], - "max_tokens": 125000 + "max_tokens": 135000 }, "route.generate.quick-generate.formula": { - "description": "Quick Generate with direct PowerPoint-native formula marker authoring. Ceiling raised after BUDGET_LOAD_SET reported 110614 tokens.", + "description": "Quick Generate with direct PowerPoint-native formula marker authoring. Ceiling raised after BUDGET_LOAD_SET reported 131188 tokens.", "scope": "cumulative", "include": [ "route.generate.quick-generate", "stage.generate.executor.formula" ], "files": [], - "max_tokens": 125000 + "max_tokens": 135000 }, "route.generate.quick-generate.hyperlink": { - "description": "Quick Generate with direct PowerPoint-native external and same-deck hyperlink authoring. Ceiling raised after BUDGET_LOAD_SET reported 110212 tokens.", + "description": "Quick Generate with direct PowerPoint-native external and same-deck hyperlink authoring. Ceiling raised after BUDGET_LOAD_SET reported 130116 tokens.", "scope": "cumulative", "include": [ "route.generate.quick-generate", "stage.generate.executor.hyperlink" ], "files": [], - "max_tokens": 125000 + "max_tokens": 135000 }, "route.generate.quick-generate.ai-two-types": { - "description": "Quick Generate with AI resource preparation, representative rendering inputs, and two local image types. Ceiling raised after BUDGET_LOAD_SET reported 140175 tokens.", + "description": "Quick Generate with AI resource preparation, representative rendering inputs, and two local image types. Ceiling raised after BUDGET_LOAD_SET reported 160162 tokens.", "scope": "cumulative", "include": [ "route.generate.quick-generate", @@ -365,7 +366,7 @@ "stage.generate.executor.image" ], "files": [], - "max_tokens": 155000 + "max_tokens": 165000 }, "route.generate.quick-generate.web-image": { "description": "Quick Generate with web resource preparation, provenance, attribution, and image execution. Ceiling raised after BUDGET_LOAD_SET reported 115146 tokens.", @@ -380,7 +381,7 @@ "max_tokens": 145000 }, "route.generate.quick-generate.visualization": { - "description": "Quick Generate with complete Chart/Table expression vocabularies already in the fixed planning context, their data-object branches, optional native-data metadata, and chart-coordinate verification before the final checker; the fixed Quick context already carries Shape Composition Grammar. Ceiling raised after BUDGET_LOAD_SET reported 126726 tokens.", + "description": "Quick Generate with complete Chart/Table expression vocabularies already in the fixed planning context, their data-object branches, optional native-data metadata, and chart-coordinate verification before the final checker; the fixed Quick context already carries Shape Composition Grammar. Ceiling raised after BUDGET_LOAD_SET reported 147143 tokens.", "scope": "cumulative", "include": [ "route.generate.quick-generate", @@ -391,7 +392,7 @@ "stage.generate.verify-charts" ], "files": [], - "max_tokens": 140000 + "max_tokens": 150000 }, "route.generate.planning-image": { "description": "Generate-PPTX planning context after a non-none image source is proposed or confirmed; image decision and layout authorities are already in the fixed planning context. Ceiling raised after BUDGET_LOAD_SET reported 116384 tokens.", @@ -2071,7 +2072,7 @@ { "path": "skills/ppt-master/references/executor-base.md", "role": "consumer", - "fingerprint": "4925a1ead978", + "fingerprint": "0d87db8a5c40", "reason": "This consumer needs the field contract for deterministic execution." }, { diff --git a/plugins/codex/plugins/ppt-master/skills/ppt-master/workflows/profiles/quick-generate.md b/plugins/codex/plugins/ppt-master/skills/ppt-master/workflows/profiles/quick-generate.md index 8c7c2ba7..499aaae1 100644 --- a/plugins/codex/plugins/ppt-master/skills/ppt-master/workflows/profiles/quick-generate.md +++ b/plugins/codex/plugins/ppt-master/skills/ppt-master/workflows/profiles/quick-generate.md @@ -539,6 +539,7 @@ terminal-status rows. Read fixed references together, never file by file: [`shared-standards-core.md`](../../references/shared-standards-core.md), +[`executor-base.md`](../../references/executor-base.md), [`svg-effects.md`](../../references/svg-effects.md), [`native-shape-authoring.md`](../../references/native-shape-authoring.md), [`preset-shape-vocabulary.md`](../../references/preset-shape-vocabulary.md), @@ -552,10 +553,11 @@ Keep one-pass-selected mode/style files and realize that direction. Exact actually used by a custom: apply one basis under its behavior, synthesize several by their stated contributions, or follow the behavior directly when none exist. -Do not load `executor-base.md`: it owns Default's persisted-plan handoff, -first-page gate, and completion routing. Excluding that file is not a capability -exclusion; Quick loads the shared and conditional execution authorities here -directly. Reuse the already-loaded image-layout authorities. When any image +`executor-base.md` binds Quick authoring exactly as it binds Default, except +its items marked `Default only` — the persisted-plan handoff in §2 / §2.1, the +`Generation rhythm` and first-page gate, §6, and §7 — which Quick's transient +§2 anchors, single final checker, and export steps below own instead. Reuse the +already-loaded image-layout authorities. When any image exists, read once before the first affected page and reuse throughout the valid execution context: [`executor-image.md`](../../references/executor-image.md) and [`svg-image-embedding.md`](../../references/svg-image-embedding.md); add