stemedb/applications/pitch/screenshots
jordan 157dbbb9eb feat: Complete Aphoria Phase 8-9 + UAT suite (90/90 tests passing)
## Phase 8: Enterprise Extractor Improvements 
- 14 security extractors (TLS, JWT, SQL injection, XSS, etc.)
- 10 framework-specific extractors (Spring, Django, Rails, etc.)
- Config file security detection (YAML, TOML)

## Phase 9: Autonomous Extractor Generation 
- Shadow mode executor with TP/FP tracking
- Graduation pipeline with confidence thresholds
- Auto-rollback on regression detection
- Cross-project pattern syncing

## UAT Suite Complete (14 scripts, 90 tests)
- test-core-detection.sh (6 tests)
- test-declarative-extractors.sh (5 tests)
- test-domain-frameworks.sh (5 tests)
- test-domain-unreal.sh (3 tests)
- test-llm-extraction.sh (6 tests)
- test-eval-harness.sh (5 tests)
- test-cross-language.sh (3 tests)
- test-precommit-performance.sh (4 tests)
- test-output-formats.sh (8 tests)
- test-drift-detection.sh (6 tests)
- test-exit-codes.sh (12 tests)
+ 3 more scripts

## Other Changes
- Updated roadmap to mark Phase 8-9 complete
- Added .gitignore entries for build artifacts
- Updated pre-commit: 800 line limit, exclude tests/data/cmd

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-02-06 22:50:55 -07:00
..
demo-circuit.png feat: Complete Aphoria Phase 8-9 + UAT suite (90/90 tests passing) 2026-02-06 22:50:55 -07:00
demo-quarantine.png feat: Complete Aphoria Phase 8-9 + UAT suite (90/90 tests passing) 2026-02-06 22:50:55 -07:00
demo-skeptic-query.png feat: Complete Aphoria Phase 8-9 + UAT suite (90/90 tests passing) 2026-02-06 22:50:55 -07:00
demo-skeptic-results.png feat: Complete Aphoria Phase 8-9 + UAT suite (90/90 tests passing) 2026-02-06 22:50:55 -07:00
demo-sources.png feat: Complete Aphoria Phase 8-9 + UAT suite (90/90 tests passing) 2026-02-06 22:50:55 -07:00
README.md feat: Complete Aphoria Phase 8-9 + UAT suite (90/90 tests passing) 2026-02-06 22:50:55 -07:00

Screenshot Capture

Playwright-based screenshot capture for pitch videos and demos.

Setup

cd applications/pitch
pnpm install
npx playwright install chromium

Usage

  1. Create a config file (e.g., my-screenshots.json):
{
  "baseUrl": "http://localhost:18188",
  "outputDir": "screenshots/demo",
  "screenshots": [
    { "url": "/skeptic", "name": "skeptic-query.png" },
    { "url": "/skeptic", "name": "skeptic-results.png", "waitFor": ".results" },
    { "url": "/sources", "name": "sources.png", "delay": 500 }
  ]
}
  1. Run:
pnpm capture my-screenshots.json
  1. Screenshots saved to screenshots/demo/

Config Options

Field Required Description
baseUrl No Base URL (default: http://localhost:18188)
outputDir No Output directory (default: screenshots)
screenshots Yes Array of screenshots to capture

Screenshot Fields

Field Required Description
url Yes Page URL (relative to baseUrl or absolute)
name Yes Output filename (e.g., demo.png)
waitFor No CSS selector to wait for before capturing
delay No Milliseconds to wait after page load

Examples

Basic capture

{
  "screenshots": [
    { "url": "/dashboard", "name": "dashboard.png" }
  ]
}

Wait for element

{
  "screenshots": [
    { "url": "/results", "name": "results.png", "waitFor": ".data-loaded" }
  ]
}

Wait for animation

{
  "screenshots": [
    { "url": "/chart", "name": "chart.png", "delay": 1000 }
  ]
}

Full URLs

{
  "screenshots": [
    { "url": "https://example.com/page", "name": "external.png" }
  ]
}