diff --git a/.claude/agents/presentation-claude-gemini.md b/.claude/agents/presentation-claude-gemini.md index 2732cac..b2ecb1e 100644 --- a/.claude/agents/presentation-claude-gemini.md +++ b/.claude/agents/presentation-claude-gemini.md @@ -181,4 +181,5 @@ After completing changes, report to the user: - **2026-04-24 Skills emoji updated + 2 new slides inserted at 38-39 (63 → 65 slides)**: Edit 1 — slide 37's h1 emoji changed from `🎓` (graduation cap) to `🎯` (target) to match the Skills pillar-footer card emoji established on slide 14 and used across all 12 pillar footers. Edit 2 — new slide 38 ("Create your first skill", `data-level="skills"`) inserted with a `.two-col` layout: two `.col-card` divs (both green `#4caf50` border-left) for Method 1 (write by prompting) and Method 2 (use Anthropic's `skill-creator`), followed by an inline amber warning box (`background: #fff3e0; border-left: 4px solid #ff9800`) flagging the wrong-structure gotcha of Method 1. Edit 3 — new slide 39 ("Skill config fields with frontmatter", `data-level="skills"`) mirrors slide 29's agent field-table pattern exactly: 8 field rows using `.field-row` / `.field-name` / `.field-desc` / `.field-enforced` / `.pill-harness` / `.pill-prompt` CSS classes, italic intro sentence, and a centered `.fafafa` footnote callout for `description`. Old slides 38-63 renumbered to 40-65 via Python sentinel replacement (descending-order sentinel phase + resolve phase). **Redundancy flag**: old Skills section opener (was slide 39, now slide 41 — `data-level="skills"`, `section-slide` class, "Topic 2 — What the Weather Reporter Knows") is now downstream of the new teaching slides 38-39 which already fire `→ skills` earlier. Same pattern as the CLAUDE.md dual-fire situation at slides 33 and 52. Recommended: keep slide 41 as a breathing-space divider into the weather-reporter narrative arc; the journey bar will not re-fire (same level). Final section-divider positions: **Agents=23, Skills=38 (first skills data-level), Context=47, CLAUDE.md=52, Commands=58, Workflow=61**. Total slides: **65**. - **2026-04-24 context-section concept-intro enrichment (65 → 68 slides)**: (1) Green pill `✅ Fresh every chat` (bg `#2e7d32`) added to slide 41 as the first pill before the 2 existing red pills — visual order green/property first, red/pitfalls after. (2) New slide 42 ("Claude's Brain", `data-level="context"`) and slide 43 ("What Loads at Session Start", `data-level="context"`) inserted between slide 41 and the old Skills section opener (old 42 → 44). Both new slides pull content forward from the old deep-dive slides 49/50 (which become slides 51/52 after the +2 renumber). Both carry full pillar-footers with Context active. Renumber technique: Python sentinel with per-occurrence targeting — `data-slide="42" data-level="skills"` and `data-slide="43">` were each targeted individually before the bulk 44-66→46-68 sweep, because slides 42/43 now have two occurrences each (new context + old skills). The CSS rule `.slide[data-slide="1"]` creates a false-positive when counting `data-slide` occurrences via regex — use `Counter` + ignore the CSS line, or grep for `
` with 3 items). Yellow callout div (`background: #fff8e1; border-left: 4px solid #f9a825`) at bottom of right column ties the academic finding to the "dumb-zone problem" vocabulary already established. Image file did NOT exist at insertion time — placeholder path used; user must drop `lost-in-middle.png` into `presentation/assets/concepts/context/`. Renumber method: Python sentinel replacing `data-slide="44"` through `"68"` → `"45"` through `"69"`, with a first-occurrence restore for the new slide's own `"44"` sentinel. New section-divider positions: **agents=23 (unchanged), skills=45, context=51, claude-md=56, commands=62, workflow=65**. Total slides: **69**. +- **2026-04-30 removed "How the Harness Reaches the World" (53 → 52 slides)**: slide was confirmed at `data-slide="14"` (content match, not cached number). It carried no `data-level` — journey bar unaffected. Removal rationale: this slide was added after the GDG Kolachi event (Apr 25, 2026) and does not belong in the historical event record. The slide lives on in the forked `presentation/claude-code-best-practice/index.html` (owned by `presentation-claude-code` agent) — the two decks are intentionally divergent from this point. Method: Python line-slice to delete lines 779-790 (banner comment + div + trailing blank), then sentinel renumber for old slides 15-53 → 14-52. No `goToSlide` hardcoded calls exist — no TOC update needed. Final section-divider positions: **agents=23, claude-md=33, skills=38, context=42, workflow=45**. Total slides: **52**. **Deliberate-divergence rule**: when the GDG event deck and the best-practice fork differ on a slide, record the rationale here (event-record vs canonical-reference) so future runs do not re-add the slide to the GDG deck. - **2026-04-24 mass deletion (slides 45-69) + single replacement + image relocation (69 → 45 slides)**: (1) Images `context-window.jpeg` and `context.jpg` moved from `presentation/assets/concepts/` to `presentation/assets/concepts/context/` alongside the already-resident `lost-in-the-middle.png`. All 5 `` references updated via sed (2 old-path `context-window.jpeg` refs, 2 old-path `context.jpg` refs, 1 `lost-in-middle.png` → `lost-in-the-middle.png` filename fix). (2) Slides 45-69 deleted (all 25 slides + their banner comments, lines 2289-3057 in 1-indexed) by slicing the lines array in Python and re-joining — the Python line-slice approach is the cleanest for deleting a contiguous range; no sentinel needed because no renumbering occurs within the retained block. (3) New slide 45 inserted in the same atomic write: `section-slide` with `data-level="workflow"`, h1 `📘 Workflow`, yellow pill `.claude/commands/`, green pills for Reproducible recipes / Same steps / Team-shareable, and a full pillar-footer with Workflows as the ONLY active card (all four others inactive). **Final state**: 45 slides, contiguous 1-45. data-level assignments: agents=23 (first), claude-md=33 (first), skills=38 (first), context=42 (first), workflow=45. Note: `commands` level is gone from data-level assignments (no remaining command-section slides). `LEVEL_LABELS` in JS still contains `'commands'` as a key — this is harmless (no slides will fire it) but should be removed in a future cleanup pass if desired. **Python line-slice pattern**: `before = lines[:del_start_0idx]`, `after = lines[del_end_0idx + 1:]`, new_content = join(before) + new_html + join(after). Atomic, no collision risk, trivially auditable.