Commit Graph

18 Commits

Author SHA1 Message Date
Jordan Ritter 19b65882d1 style: auto-fix formatting 2026-06-16 22:34:44 -07:00
Jordan Ritter 6cc1803f37 docs(showcase): consolidate + re-tier for agent navigation (README fanout entry)
Re-tier the showcase docs tree to be an agent entry point: README.md
opens with a 'when X, see Y' fanout table that routes to the right
procedural doc; each procedural doc gets a one-line tagline answering
'what does this answer'.

Consolidation:
- DELETE showcase/RUNBOOK.md — operational content merged into DEBUGGING.md
  (Integration Patterns, Docker Compose Environment, Production Debugging,
  Anti-Patterns, Aimock Fixture Deployment, Dev Iteration Speed). The
  --isolate mechanics + CLI rules were already duplicated in DEBUGGING.md.
- DELETE showcase/QA-COVERAGE.md — per-demo coverage matrix + starter hero
  matrix + probe depth + infra locations + gaps folded into TESTING.md as
  the 'Per-Demo Coverage Matrix' section.

Taglines added (no behavioral change to content): TESTING.md, DEBUGGING.md,
GOTCHAS.md, INTEGRATION-CHECKLIST.md, STYLING-GUIDE.md, FRONTEND-STRATEGY.md,
RAILWAY.md, bin/README.md, aimock/README.md, aimock/RAILWAY.md,
harness/README.md, harness/docs/rotation-drill.md.

Cross-link fixups: FRONTEND-STRATEGY.md (was QA-COVERAGE.md →
TESTING.md#per-demo-coverage-matrix), TESTING.md (removed dangling RUNBOOK
companion reference), README.md (rewritten as fanout entry + retained
from-scratch setup + dashboard SOPs below the fanout).

PARITY_NOTES.md × 12 left alone (per-slug context, not redundant).

(cherry picked from commit 75c9d9755c9118c8abc1fa52deda2012b768cab1)
(cherry picked from commit b64189bae0fe2c9e3a5e3ca440013deb4121f23b)
2026-06-16 22:30:08 -07:00
Jordan Ritter 423167d12e docs(showcase): SOP for cell red→green + control-plane vs --direct CLI reference; prune stale invocation guidance
New content:
- TESTING.md: add 10-step cell red→green SOP + bin/showcase test invocation
  table (control-plane vs --direct, per-demo scoping matrix); retain
  existing CI gating matrix below.
- GOTCHAS.md: add operational gotchas — aimock caches fixtures at container
  startup (warm-slot reuse needs docker restart) + --isolate slot collisions
  with foreign Docker projects.
- README.md: cross-link to TESTING.md SOP from CLI section; flesh out
  --isolate / --direct in test options table; update use cases.
- RUNBOOK.md: update Verifying a Slug's D6 State to use auto-named --isolate;
  note A21+A21b per-slug rebuild scoping; rewrite Fixture Matching to teach
  picking the backend-id-invariant discriminator (turnIndex post-A12/A13/A20);
  modernize Debugging Sequence to --isolate flow.
- DEBUGGING.md: lead with TESTING.md SOP cross-link; update Phase 1 to
  --isolate canonical; soften turnIndex-only log-line description; note
  aimock startup caching in Phase 5; switch Strategy 5 gold-standard check
  to --isolate.

Pruned/updated stale claims (post-A11/A12/A13/A18/A20/A21/A21b):
- RUNBOOK.md "Do not use turnIndex in new fixtures" — turnIndex is now
  the canonical backend-id-invariant alternative when toolCallId is fragile
  (Anthropic / TanStack Responses API ID rewrites). Replaced with discriminator
  selection guidance.
- RUNBOOK.md anti-pattern "NEVER use turnIndex" — replaced with NEVER
  anchor on toolCallId strict equality against ID-rewriting backends, and
  NEVER use --direct for value-tests.
- RUNBOOK.md bin/showcase test <slug> --d5 (no --isolate) as canonical SOP
  — replaced with --isolate canonical, no manual name required.
- README.md --d5 option description claiming "subagents/tool-rendering/agentic-chat"
  fixed slate — replaced with "defaults to agentic-chat representative; :demo
  qualifier honored post-A18".
- DEBUGGING.md Phase 1 "showcase up aimock <slug> && showcase test <slug> --d5"
  as primary — kept as legacy alternative; --isolate is now lead.
- DEBUGGING.md Phase 5 "fixtures baked into Docker image" — clarified that
  aimock additionally caches fixtures in memory at startup (volume-mounted
  isolated stack still requires docker restart for warm-slot edits).
- DEBUGGING.md Strategy 5 "showcase test langgraph-python --d5" — replaced
  with :demo + --isolate so the gold-standard check exercises the same cell.

(cherry picked from commit 0e548455043396972f7fb5b96f8c0ea8abdf1d98)
(cherry picked from commit 592c02d392350d02cc5e17544e663a6605b8da65)
2026-06-16 22:30:08 -07:00
Jordan Ritter 497b205d1e fix: auto-format 16 files with pre-existing oxfmt violations
These files accumulated formatting drift across recent PRs. Fixes the
format CI check on main.
2026-04-29 19:12:22 -07:00
Jordan Ritter 0d0f0a9dfa docs(showcase): add DEBUGGING.md playbook and update README CLI reference
DEBUGGING.md: 6-phase debugging loop (baseline, fixture trace, aimock
  rebuild, integration fix, fixture iteration, verify green), common
  gotchas (restart vs recreate, Depot interception, aimock statefulness),
  workflow recipes by use case, environment variable reference.

README.md: align command tables and diagram with implemented CLI,
  add ports/debugging commands, fix diagram labels.
2026-04-28 22:29:40 -07:00
github-actions[bot] b1146b2c2a style: auto-fix formatting 2026-04-29 00:40:27 +00:00
Jordan Ritter 342b1604df docs(showcase): note CLI works from any directory 2026-04-28 17:37:58 -07:00
Jordan Ritter c31f75382c feat(showcase): add bin/showcase wrapper for simpler CLI invocation
Shell script resolves cli.ts relative to its own location, so it works
from any cwd. Update README quick start to use the wrapper.
2026-04-28 17:36:02 -07:00
Jordan Ritter 132070f998 docs(showcase): fix quick start to use CLI for container lifecycle
The CLI manages up/down/rebuild directly — no need to drop to
dev-local.sh in the quick start flow.
2026-04-28 17:34:32 -07:00
Jordan Ritter 5288ef4d32 docs(showcase): add local CLI section to README
Document the parity-testing CLI (commands, test levels, options, config,
architecture diagram, use cases). Reorder so the CLI appears before the
lower-level docker-compose workflow it wraps.
2026-04-28 17:32:55 -07:00
Jordan Ritter 2ecc96ce15 docs(showcase): document PocketBase fetch cap limitation
If INITIAL_CAP is exceeded by new probe dimensions, the
dashboard silently drops e2e per-cell records and shows D2.
2026-04-28 10:40:19 -07:00
Jordan Ritter d4736a911a fix(showcase): update CI workflows, Dockerfiles, and configs
for integrations/ rename

Update GitHub Actions workflows to reference
showcase/integrations/ instead of showcase/packages/.
Fix Dockerfiles to dereference symlinks during COPY.
Remove obsolete showcase_template-drift workflow.
Update docker-compose, shell Dockerfiles, and registry paths.
2026-04-28 07:51:06 -07:00
github-actions[bot] 9acb3e3f24 style: auto-fix formatting 2026-04-24 06:38:58 +00:00
Jordan Ritter b82a6e6eb3 docs(showcase): add dashboard update SOPs 2026-04-23 23:37:02 -07:00
Jordan Ritter f02f70a09b docs(showcase): document generated data files in README
Add a table covering all 6 generated JSON files, their generator
scripts, which shell apps consume them, and what each file does.
Explains that shells are independent and how to add a new shell app
that needs generated data.
2026-04-23 21:13:34 -07:00
Jordan Ritter daf09358c4 chore(showcase): rename shell-internal → shell-dashboard and provision Railway service @ dashboard.showcase.copilotkit.ai
- Renamed showcase/shell-internal/ → showcase/shell-dashboard/ (git mv for history).
- Updated package name to @copilotkit/showcase-shell-dashboard (+ lockfile).
- Updated external references: showcase/scripts/{probe-docs,generate-status}.ts comments and showcase/README.md.
- Added dispatch + filter + ALL_SERVICES entry for shell-dashboard in .github/workflows/showcase_deploy.yml.
- Provisioned Railway service showcase-shell-dashboard (id 4d5dfd74-be61-40b2-8564-b53b7dd4c15b):
  - image source ghcr.io/copilotkit/showcase-shell-dashboard:latest
  - env vars OPENAI_API_KEY, ANTHROPIC_API_KEY, PORT copied from showcase-shell
  - custom domain dashboard.showcase.copilotkit.ai attached (CNAME → 6u9icvje.up.railway.app)
  - image will be built and pushed via showcase_deploy.yml on merge
2026-04-20 13:54:17 -07:00
Atai Barkai 099c105272 feat(showcase): Docker-based local dev for Railway parity
Adds a single command to spin up the exact image Railway deploys,
for any of the 17 showcase packages, with a single shared .env:

  ./showcase/scripts/dev-local.sh up [<slug> ...]   # all if empty
  ./showcase/scripts/dev-local.sh down|build|logs|ps|ports

Pieces:
- `docker-compose.local.yml` with a service per package. Ports come
  from `shared/local-ports.json` (langgraph-python -> 3100, ...).
- `.env.example` as a commit-safe template. Real `.env` is gitignored
  and fed to every container via `env_file`, so keys (OPENAI_API_KEY,
  etc.) live in one place.
- `dev-local.sh` wraps `docker compose` and handles the
  `shared_python/` / `shared_typescript/` staging step that CI does
  before `docker build` (see showcase_deploy.yml).
- Staged `shared_*` dirs added to .gitignore.

Shell wiring:
- `shell/next.config.ts` reads `shared/local-ports.json` when
  `SHOWCASE_LOCAL=1` is set and injects it as a public env.
- `/integrations/[slug]/[demo]/preview` uses that map to iframe
  `http://localhost:<port>` instead of `integration.backend_url`.
  Per-slug; any slug not running locally falls back to Railway.
  Unset SHOWCASE_LOCAL -> prod behavior, unchanged.

Full workflow + prerequisites (Colima / Docker Desktop) documented in
showcase/README.md.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-04-17 17:37:37 -07:00
Jordan Ritter 479e62cb7f feat: add unified showcase platform with CI, Docker starters, and 13 deployed integrations 2026-04-08 19:59:29 -07:00