Orchestrata Ultimate › Plans › e2e-deepseek-test-results

E2E DeepSeek-v4-pro Dogfood — Test Results

Source: plans/e2e-deepseek-test-results.md at 8a2cb42ad · last changed 2026-07-27 · first committed 2026-05-27 · 121 lines.

Prose pending.

Plan text

E2E DeepSeek-v4-pro Dogfood — Test Results

Companion to e2e-deepseek-test-plan.md. Records the actual runs of the orchestrata pipeline driven on deepseek-v4-pro via scripts/e2e_run.py, with full real-time capture (volk conversations, CXP flow, structured logs, errors) under logs/e2e-runs/<ts>-<slug>/.

Last updated: 2026-05-28


Outcome summary

The end-to-end pipeline runs to a clean terminal on deepseek-v4-pro and produces real, compiling code — once five defects (none caught by the unit suite) were fixed. Every LLM exchange is deepseek-v4-pro; CXP packets are audited to Neo4j; conversations + logs + errors are captured per run.

Bugs found by the dogfood test (all fixed + committed)

These only surface with a live, loop-bound async provider driven through the synchronous CXP router — invisible to the unit suite.

# Defect Fix Commit
1 Dead model ids deepseek-chat/deepseek-reasoner (API now serves only v4) Register deepseek-v4-pro/-flash; default tiers flash/pro 4138a64c
2 volk=None calls silently fell back to Claude/sonnet (model resolved only when a volk alias was passed) Resolve model whenever model is absent; stamp volk=self.alias in base._call_llm 4138a64c
3 httpx AsyncClient bound to a torn-down event loop (route_sync uses one asyncio.run per call) → "Event loop is closed" on the 2nd call _ensure_client recreates the client when the running loop changes 4138a64c
4 CodeDirector scaffold crashed: 'pyproject.toml.j2' not found — the templates/ dir was never ported (.j2 ≠ Python) Ported the 4 Jinja2 templates from the frozen monorepo 82afac04
5 J:Junior review crashed: No module named 'scripts' — launcher put scripts/ on sys.path[0], not the repo root Prepend repo root to sys.path + PYTHONPATH in the runner b82de5b9
6 U:Cd crashed on a 429 rate-limit burst — retry backoff (effective 1+2+4+8 = 15s) too short to clear deepseek-v4-pro's per-minute window; an unguarded call_llm exhausted retries MAX_RETRIES=6, RETRY_DELAYS=[5,10,20,40,60,60] (135s effective) 9bf9fcfb

Commit map: 4138a64c = bugs 1–3 + capture hook + harness + plan; 82afac04 = templates (#4); b82de5b9 = harness path (#5); 9bf9fcfb = retry backoff (#6).

Scenario results

# Scenario Intent Result
S1 docs-kernel "Generate developer docs (Markdown) for the kernel package…" ✅ completed → implementation_ready
S2 newproj-jsonschema "CLI tool that validates a JSON file against a JSON Schema…" ⟳ re-running after #6 (1st attempt: 7 compiling modules, then a 429 crash)
S3 (new project) TBD planned

S2 — first attempt (logs/e2e-runs/20260528-003004-newproj-jsonschema/)

Generated 7 real, compiling modules (cli.py, validator.py, models.py, reporter.py, exceptions.py, decorators.py, all deepseek-v4-pro), but U:Cd crashed on a 429 burst (25× 429) before implementation_ready, so the harness maxed its clarification rounds. This exposed bug #6; re-running with the longer backoff.

S1 — logs/e2e-runs/20260528-000325-docs-kernel/

Key findings

  1. The volk pipeline is a greenfield project builder. Every intent — including "document the kernel" — is interpreted as "scaffold and implement a new project that does X." It does not edit an existing codebase in place. In-place editing of this repo would require a different driver mode (e.g. the aider / claude-code driver pointed at a worktree), not this Cx→…→Cd chain. The plan's "S2: edit existing code" is therefore reframed as a greenfield build.
  2. v4-pro latency dominates runtime (~30–90 s per reasoning call; the implement→review loop ran 19 driver iterations). A full run is ~15–25 min.
  3. Logging/observability is complete — every provider round-trip is captured to conversation.jsonl (verified: actual completion count == captured count), CXP to Neo4j + cxp.jsonl, structured logs to app.jsonl, errors isolated.
  4. The harness reaches a clean terminal once the pipeline can complete — the earlier "maxed-out clarification rounds" was a symptom of the downstream crashes (#4, #5), not a harness bug; with those fixed, S1 ended at implementation_ready in 2 rounds.

CXP-over-Redis verification

Verified: the volks communicate using the CXP protocol, and it is watchable on Redis (db0 @ 10.92.53.10). Evidence:

Watch commands:

redis-cli -h 10.92.53.10 MONITOR | grep -E 'cxp:thread|postman:q|cxp:dedup'  # live writes
redis-cli -h 10.92.53.10 LRANGE cxp:thread:<thread_id> 0 -1                  # a conversation
redis-cli -h 10.92.53.10 --scan --pattern 'postman:q:*'                       # volk inboxes

How to reproduce / inspect

cd /tmp/oua-master
PYTHONUNBUFFERED=1 ./.venv/bin/python scripts/e2e_run.py \
    --intent "<intent>" --slug <label> --max-rounds 10
# artifacts:
ls logs/e2e-runs/<run>/   # conversation.jsonl cxp.jsonl app.jsonl summary.json console.log workspace/
tail -f logs/e2e-runs/<run>/conversation.jsonl | jq .