Compare commits
2 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
| 574e6cb189 | |||
| 358aa62c3a |
@@ -1,12 +1,12 @@
|
|||||||
{
|
{
|
||||||
"phase": 0,
|
"phase": 1,
|
||||||
"stage": "complete",
|
"stage": "complete",
|
||||||
"milestone": "v1.22",
|
"milestone": "v1.22",
|
||||||
"phase_role": "pre_execution",
|
"phase_role": "execution",
|
||||||
"attempts": 0,
|
"attempts": 0,
|
||||||
"updated_at": "2026-08-11T14:40:00Z",
|
"updated_at": "2026-08-11T14:45:00Z",
|
||||||
"milestone_complete": false,
|
"milestone_complete": false,
|
||||||
"tag": "v1.21.0",
|
"tag": "v1.21.1",
|
||||||
"requirements": ["REQ-254","REQ-255","REQ-256","REQ-257","REQ-258","REQ-259","REQ-260","REQ-261","REQ-262"],
|
"requirements": ["REQ-254","REQ-255","REQ-256"],
|
||||||
"notes": "v1.22 P0 complete. Tag v1.21.0. Merged phase/00 -> milestone/v1.22-deck-layout-fix. Release creation failed (local-only fallback). Phase branch deleted. Proceeding to P1 (theme CSS)."
|
"notes": "v1.22 P1 complete. Tag v1.21.1. Theme CSS fixed (padding, overflow, image, title chrome). 23 slide tests pass. Proceeding to P2 (render scripts)."
|
||||||
}
|
}
|
||||||
@@ -84,8 +84,7 @@ CHROME_PATH=/root/.cache/ms-playwright/chromium-1217/chrome-linux64/chrome \
|
|||||||
|
|
||||||
HTML export inlines images as base64 data URIs. PPTX export requires
|
HTML export inlines images as base64 data URIs. PPTX export requires
|
||||||
`--allow-local-files` so the local PNG diagrams are embedded in the file.
|
`--allow-local-files` so the local PNG diagrams are embedded in the file.
|
||||||
The render + commit + attach pipeline is automated by `scripts/render_deck.sh`
|
The render + commit + attach pipeline is automated by `scripts/render_slides.sh`.
|
||||||
and `scripts/render_slides.sh`.
|
|
||||||
|
|
||||||
### Step 4 — Talking points (presenter cues)
|
### Step 4 — Talking points (presenter cues)
|
||||||
|
|
||||||
|
|||||||
@@ -1,56 +0,0 @@
|
|||||||
#!/usr/bin/env bash
|
|
||||||
# scripts/render_deck.sh — render a Marp deck to HTML + PPTX, commit both to git.
|
|
||||||
# REQ-228 (v1.18): PPTX is now a first-class committed artifact + release attachment.
|
|
||||||
#
|
|
||||||
# Usage:
|
|
||||||
# bash scripts/render_deck.sh <deck-name>
|
|
||||||
# bash scripts/render_deck.sh nova-autonomous-cloud-delivery
|
|
||||||
#
|
|
||||||
# Renders:
|
|
||||||
# docs/presentations/<deck-name>-marp.md → docs/presentations/<deck-name>.html (committed)
|
|
||||||
# → docs/presentations/<deck-name>.pptx (committed, binary)
|
|
||||||
#
|
|
||||||
# The PPTX is also attached to the current phase's Gitea release via
|
|
||||||
# scripts/attach_release_asset.py (call separately after ship, or this script
|
|
||||||
# will invoke it if NOVA_GITEA_RELEASE_ID is set).
|
|
||||||
set -euo pipefail
|
|
||||||
|
|
||||||
DECK="${1:?Usage: render_deck.sh <deck-name>}"
|
|
||||||
cd "$(git rev-parse --show-toplevel)"
|
|
||||||
|
|
||||||
SRC="docs/presentations/${DECK}-marp.md"
|
|
||||||
HTML="docs/presentations/${DECK}.html"
|
|
||||||
PPTX="docs/presentations/${DECK}.pptx"
|
|
||||||
|
|
||||||
if [ ! -f "$SRC" ]; then
|
|
||||||
echo "ERROR: source deck $SRC not found" >&2; exit 1
|
|
||||||
fi
|
|
||||||
|
|
||||||
CHROME=""
|
|
||||||
for c in \
|
|
||||||
/root/.cache/ms-playwright/chromium-1217/chrome-linux64/chrome \
|
|
||||||
/usr/bin/chromium \
|
|
||||||
/usr/bin/chromium-browser \
|
|
||||||
/usr/bin/google-chrome; do
|
|
||||||
if [ -x "$c" ]; then CHROME="$c"; break; fi
|
|
||||||
done
|
|
||||||
if [ -z "$CHROME" ]; then
|
|
||||||
echo "WARNING: no Chrome/Chromium found — skipping render (HTML/PPTX will need manual re-render)" >&2
|
|
||||||
exit 0
|
|
||||||
fi
|
|
||||||
export CHROME_PATH="$CHROME"
|
|
||||||
|
|
||||||
echo "Rendering HTML → $HTML"
|
|
||||||
npx --yes @marp-team/marp-cli@latest --allow-local-files "$SRC" -o "$HTML" 2>&1 | tail -3
|
|
||||||
|
|
||||||
echo "Rendering PPTX → $PPTX"
|
|
||||||
npx --yes @marp-team/marp-cli@latest --allow-local-files "$SRC" -o "$PPTX" 2>&1 | tail -3
|
|
||||||
|
|
||||||
git add "$HTML" "$PPTX"
|
|
||||||
echo "Staged $HTML + $PPTX for commit."
|
|
||||||
|
|
||||||
if [ -n "${NOVA_GITEA_RELEASE_ID:-}" ]; then
|
|
||||||
echo "Attaching PPTX to Gitea release $NOVA_GITEA_RELEASE_ID..."
|
|
||||||
python3 scripts/attach_release_asset.py "$PPTX" "$NOVA_GITEA_RELEASE_ID" || \
|
|
||||||
echo "WARNING: attach failed — PPTX is still committed; attach manually."
|
|
||||||
fi
|
|
||||||
@@ -41,16 +41,18 @@ if [ -z "$CHROME" ]; then
|
|||||||
fi
|
fi
|
||||||
export CHROME_PATH="$CHROME"
|
export CHROME_PATH="$CHROME"
|
||||||
|
|
||||||
# --- Step 1: render mermaid diagrams (S&P-themed) ---
|
# --- Step 1: render mermaid diagrams (S&P-themed, 2x scale, transparent bg) ---
|
||||||
echo "=== Step 1: Rendering mermaid diagrams (S&P theme: $THEME_JSON) ==="
|
# REQ-258: -s 2 (2x scale) + -b transparent (transparent background) per README spec.
|
||||||
|
echo "=== Step 1: Rendering mermaid diagrams (S&P theme: $THEME_JSON, 2x, transparent) ==="
|
||||||
if [ -d "$MMD_DIR" ]; then
|
if [ -d "$MMD_DIR" ]; then
|
||||||
for mmd in "$MMD_DIR"/*.mmd; do
|
for mmd in "$MMD_DIR"/*.mmd; do
|
||||||
name="$(basename "$mmd" .mmd)"
|
name="$(basename "$mmd" .mmd)"
|
||||||
png="$PNG_DIR/$name.png"
|
png="$PNG_DIR/$name.png"
|
||||||
echo " $name.mmd → $name.png"
|
echo " $name.mmd → $name.png"
|
||||||
npx --yes @mermaid-js/mermaid-cli \
|
npx --yes @mermaid-js/mermaid-cli@11.16.0 \
|
||||||
--configFile "$THEME_JSON" \
|
--configFile "$THEME_JSON" \
|
||||||
--puppeteerConfigFile "$PUPPETEER_CFG" \
|
--puppeteerConfigFile "$PUPPETEER_CFG" \
|
||||||
|
-s 2 -b transparent \
|
||||||
--input "$mmd" \
|
--input "$mmd" \
|
||||||
--output "$png" 2>&1 | grep -v "^$" || true
|
--output "$png" 2>&1 | grep -v "^$" || true
|
||||||
done
|
done
|
||||||
@@ -61,13 +63,14 @@ fi
|
|||||||
echo ""
|
echo ""
|
||||||
|
|
||||||
# --- Step 2: render Marp deck (S&P-themed) ---
|
# --- Step 2: render Marp deck (S&P-themed) ---
|
||||||
|
# REQ-257: pinned marp-cli version (v4.5.0) to prevent boilerplate-CSS drift.
|
||||||
echo "=== Step 2: Rendering Marp deck → HTML + PPTX ==="
|
echo "=== Step 2: Rendering Marp deck → HTML + PPTX ==="
|
||||||
echo " Theme: $THEME_CSS"
|
echo " Theme: $THEME_CSS"
|
||||||
echo " HTML → $HTML"
|
echo " HTML → $HTML"
|
||||||
npx --yes @marp-team/marp-cli@latest --allow-local-files --theme "$THEME_CSS" "$SRC" -o "$HTML" 2>&1 | tail -3
|
npx --yes @marp-team/marp-cli@4.5.0 --allow-local-files --theme "$THEME_CSS" "$SRC" -o "$HTML" 2>&1 | tail -3
|
||||||
|
|
||||||
echo " PPTX → $PPTX"
|
echo " PPTX → $PPTX"
|
||||||
npx --yes @marp-team/marp-cli@latest --allow-local-files --theme "$THEME_CSS" "$SRC" -o "$PPTX" 2>&1 | tail -3
|
npx --yes @marp-team/marp-cli@4.5.0 --allow-local-files --theme "$THEME_CSS" "$SRC" -o "$PPTX" 2>&1 | tail -3
|
||||||
echo ""
|
echo ""
|
||||||
|
|
||||||
# --- Step 3: stage ---
|
# --- Step 3: stage ---
|
||||||
|
|||||||
@@ -117,7 +117,6 @@ EXCLUDE_SCRIPTS=(
|
|||||||
sync_workflows.py
|
sync_workflows.py
|
||||||
attach_release_asset.py
|
attach_release_asset.py
|
||||||
check_north_star_diff.sh
|
check_north_star_diff.sh
|
||||||
render_deck.sh
|
|
||||||
render_slides.sh
|
render_slides.sh
|
||||||
)
|
)
|
||||||
|
|
||||||
|
|||||||
@@ -40,7 +40,7 @@ _EXCLUDE_SCRIPTS = {
|
|||||||
"untag_acdl_keys.py", "seed_uptime_monitors.py",
|
"untag_acdl_keys.py", "seed_uptime_monitors.py",
|
||||||
"push_consumer_image.py", "sync_workflows.py",
|
"push_consumer_image.py", "sync_workflows.py",
|
||||||
"attach_release_asset.py", "check_north_star_diff.sh",
|
"attach_release_asset.py", "check_north_star_diff.sh",
|
||||||
"render_deck.sh", "render_slides.sh",
|
"render_slides.sh",
|
||||||
}
|
}
|
||||||
|
|
||||||
# Synced top-level files (not in any excluded dir).
|
# Synced top-level files (not in any excluded dir).
|
||||||
|
|||||||
Reference in New Issue
Block a user