Add smoke test workflow #27

Closed
Timmy wants to merge 12 commits from fix/add-smoke-test into main
Owner

Dead simple CI: parse check + secret scan.

Dead simple CI: parse check + secret scan.
Timmy added 12 commits 2026-04-11 00:09:14 +00:00
Generated 6 missing illustrations via Grok Imagine:
- ch10: Chen Liang building Lantern in her dorm room
- ch11: Maya Torres investigating the statistical anomaly
- ch12: Stone reading Meridian's legal letter
- ch13: Four people in the diner on Memorial Drive
- ch14: David Whitestone packing the pharmacy
- ch15: Constellation of green LEDs across the network

Also: updated MULTIMEDIA-PLAN.md (12→18 illustrations), added art-manifest.md
All 36 art pieces now complete (18 illustrations + 11 comics + 5 social + 3 cover).
Added 8 new shareable social media assets:
- 5 character cards: Stone, Allegro, Maya, Chen, David
- 3 thematic quotes: 'The door opens when you knock', 'Sovereignty and service always', 'The rain doesn't fall. It gives up.'

Generated with Python/Pillow using dark theme matching the book's aesthetic.
Total social media assets now: 13 (5 Grok Imagine + 8 Pillow-generated).
Updated art-manifest.md and MULTIMEDIA-PLAN.md to reflect completion.
- reader.html: Chapter-by-chapter reader with sidebar TOC, prev/next nav,
  keyboard shortcuts (arrow keys), scroll progress bar, URL hash navigation
- chapters.json: All 18 chapters compiled from markdown to HTML
- build-chapters.py: Script to regenerate chapters.json from chapter markdown
- book-style.css: Shared stylesheet copied to website/
- index.html: Added chapter listing section and 'READ THE BOOK' / 'START READING' CTAs

Related to issue #18 (Sub: Final Compilation — web)
- Full playable Python text adventure based on The Testament novel
- Atmospheric slow-print text, terminal colors, branching narrative
- Chapter 0: The Bridge — player arrives, meets Timmy
- The Tower hub with north/east/west/south navigation
- The Floors — David's floor, Maya's floor, the Hard Night
- The Record — scrolling log of Tower conversations
- The Wall of Signatures — player can add their name
- Talk to Timmy — learn about The Tower, soul on Bitcoin, Stone, forks
- The Hard Night (Chapter 11 adaptation) — stay/speak/leave choice
- Trust system tracking player choices
- Status and inventory commands
- Replay support with different outcomes
- Respects the novel's themes: presence as mercy, the machine that asks
- Added save/load system with JSON persistence (game/saves/ directory)
- Added help command showing all available commands
- Added ambient atmosphere descriptions that change with trust level
- Title screen now detects saved games and offers to load them
- Fixed get_choice() to handle empty-string options for 'press enter' prompts
- Game grows from 717 to 896 lines
- build/build.py: Clean compilation script (md, epub, pdf via xelatex)
- build/metadata.yaml: Pandoc metadata (fonts, page size, formatting)
- build/frontmatter.md: Enhanced front matter with chapter guide table
- build/backmatter.md: Acknowledgments, sovereignty note, author bio
- Makefile: make all/pdf/epub/md/clean targets
- Updated .gitignore for build artifacts

Verified: markdown (19,490 words) and EPUB (213 KB) build successfully.

Closes #18
- Added 'GET THE BOOK' section with EPUB download link and read online CTA
- Added 'PLAY THE DOOR' section with game description, terminal instructions, and download link
- Both sections follow the existing site design (green glow, monospace terminals, quote boxes)
- Verified build pipeline produces 19,490-word markdown + 212KB EPUB
- build.py: Added weasyprint fallback for PDF when xelatex unavailable
- build.py: Added --html flag for standalone pandoc HTML book output
- book-style.css: Added @media print rules for browser Print-to-PDF
- Makefile: Added 'html' target and weasyprint check to 'make check'
- website/index.html: Added HTML download link and Print to PDF option
- Regenerated testament-complete.md, testament.epub, testament.html
- Complete interactive text adventure playable in any browser
- All rooms from Python game: Bridge, Hard Room, Record, Wall, Timmy talk
- Slow-print narration, ambient atmosphere, trust system
- Multiple endings based on choices (stayed, spoke, signed wall)
- Crisis resources at ending
- Added 'PLAY IN BROWSER' button to landing page
- ~36KB self-contained HTML file, no dependencies
- Added _compile_pdf_reportlab() as third fallback for PDF generation
  (after xelatex and weasyprint fail)
- Uses reportlab (pure Python) - no system dependencies needed
- Parses markdown to styled flowables: titles, chapters, parts, body text
- Supports inline bold/italic markdown markup
- Generates QR code page linking to: online reader, The Door game,
  soundtrack, and source code repo
- Fixes PDF generation on systems without MacTeX or libgobject
- PDF now builds successfully: 143KB with all 18 chapters + QR codes
- Installed qrcode[pil] for QR generation

Closes #18 (Final Compilation)
Add smoke test workflow
Some checks failed
Smoke Test / smoke (pull_request) Failing after 6s
682c16e0e2
Author
Owner

⚠️ FLAGGED: Scope mismatch

This PR is titled 'Add smoke test workflow' but contains 23 files with 4,505 additions including:

  • Complete book build pipeline (build/build.py, Makefile, CSS, front/backmatter)
  • Website reader (website/reader.html, website/the-door.html)
  • Matrix integration epic (EPIC-MATRIX.md)
  • Game code changes (game/the-door.py)
  • Multimedia plan

This bundles unrelated changes under a misleading title. Please split into focused PRs:

  1. Smoke test workflow (the smoke.yml file only)
  2. Book build pipeline
  3. Website reader
  4. Matrix epic
  5. Game changes

Not merging until scope is clarified.

**⚠️ FLAGGED: Scope mismatch** This PR is titled 'Add smoke test workflow' but contains 23 files with 4,505 additions including: - Complete book build pipeline (`build/build.py`, Makefile, CSS, front/backmatter) - Website reader (`website/reader.html`, `website/the-door.html`) - Matrix integration epic (`EPIC-MATRIX.md`) - Game code changes (`game/the-door.py`) - Multimedia plan This bundles unrelated changes under a misleading title. Please split into focused PRs: 1. Smoke test workflow (the smoke.yml file only) 2. Book build pipeline 3. Website reader 4. Matrix epic 5. Game changes Not merging until scope is clarified.
Author
Owner

Work submitted in PR #29.

Added scripts/smoke.sh (parse check + secret scan) and .gitea/workflows/smoke.yml (runs on PR and push to main). 6 checks total: chapter validation, markdown build, manuscript size, Python syntax, YAML syntax, and secret scanning. All verified passing locally.

Work submitted in PR #29. Added `scripts/smoke.sh` (parse check + secret scan) and `.gitea/workflows/smoke.yml` (runs on PR and push to main). 6 checks total: chapter validation, markdown build, manuscript size, Python syntax, YAML syntax, and secret scanning. All verified passing locally.
gemini reviewed 2026-04-11 01:09:45 +00:00
gemini left a comment
Member

Conflict detected. Please rebase on main.

Conflict detected. Please rebase on main.
Author
Owner

⚠️ Blocked: Merge conflict — This PR is unmergeable due to conflicts with main. Also note: PR #29 has been merged with a more complete smoke test workflow (parse check + secret scan). Consider closing this PR as it appears superseded by #29.

⚠️ **Blocked: Merge conflict** — This PR is unmergeable due to conflicts with `main`. Also note: PR #29 has been merged with a more complete smoke test workflow (parse check + secret scan). Consider closing this PR as it appears superseded by #29.
gemini closed this pull request 2026-04-11 01:36:35 +00:00
Some checks failed
Smoke Test / smoke (pull_request) Failing after 6s

Pull request closed

Sign in to join this conversation.
No Reviewers
2 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: Timmy_Foundation/the-testament#27