Skip to content

spec(ship-two-models): v3.00 → v3.01 — §56 5g.1 LIVE smoke validated; ~17hr full run operator-dispatch#1501

Merged
noahgift merged 1 commit into
mainfrom
spec/section-56-5g-1-smoke-validated
May 5, 2026
Merged

spec(ship-two-models): v3.00 → v3.01 — §56 5g.1 LIVE smoke validated; ~17hr full run operator-dispatch#1501
noahgift merged 1 commit into
mainfrom
spec/section-56-5g-1-smoke-validated

Conversation

@noahgift

@noahgift noahgift commented May 5, 2026

Copy link
Copy Markdown
Contributor

Summary

§55 (in-flight PR #1500) closed the polymorphic preflight strictness gap and unblocked 5g.1 dispatch. §56 records the LIVE smoke that validates 5g.1's correctness end-to-end before committing to the multi-hour full run.

Smoke result

```
apr tokenize encode-corpus \
--corpus python-permissive-5k.jsonl \
--tokenizer /tmp/qwen-0.5b-tokenizer-extracted \
--output smoke-shards --shard-tokens 1000000

→ 13 valid u32 shards (~13M tokens for 5000 docs)
→ ~110 sec / M-token single-thread
→ No errors; shard rotation correct
→ Killed when sufficient evidence accumulated
```

Throughput

Tokenizer Vocab Merges Throughput 565M-token wall
Legacy 50257 50257 49997 ~64 sec / M-token 9.99 hr (validated)
Qwen 151643 151643 151387 ~110 sec / M-token ~17 hr (projected)

Qwen is ~70% slower per-token because the BPE merge table is 3× larger. Below the 48hr `feedback_compute_pre_authorized.md` ceiling, so 5g.1 full run is pre-authorized.

Updated 5g roadmap

# Step LOC / wall Status
5g.0 apr tokenize import-hf ~700 ✅ MERGED #1497
5g.0.1 §55 polymorphic preflight relaxation ~140 in-flight #1500
5g.1 Re-tokenize corpus with Qwen vocab 0 + ~17 hr CORRECTNESS-VALIDATED (this PR), full run pending operator
5g.2 LIVE 500-step fine-tune 0 + ~30 min gated on 5g.1 full run
5g.3 val_loss < 9.38 verdict; flip MODEL-2 57% → ≥58% 0 gated on 5g.2

Five Whys

  1. Why smoke before full run? ~17hr non-trivial; smoke proves chain correctness before committing.
  2. Why 5000 docs? Smallest slice that exercises shard rotation (12M tokens > 10 shards).
  3. Why kill smoke instead of complete? 13 shards = sufficient evidence.
  4. Why Qwen 70% slower? BPE merge-table size dominates encoding cost.
  5. Why not parallelize? Out of 5g.1 scope; single-thread wall is below 48hr ceiling.

Net effects

  • Spec v3.00.0 → v3.01.0 (assumes §55 lands first; safe either way — §56 has no code/contract changes).
  • 5g.1 reaches CORRECTNESS-VALIDATED state.
  • MODEL-1 ship % unchanged at 91%.
  • MODEL-2 ship % unchanged at 57% until 5g.3.

Test plan

  • PMAT pre-commit quality gates pass
  • LIVE smoke: 13 valid u32 shards from 5000-doc corpus slice
  • Throughput characterized (110 sec/M-token)
  • Wall projection ≤ 48hr authorization ceiling
  • CI gate green (workspace-test, ci/gate)
  • Auto-merge fires on green CI

🤖 Generated with Claude Code

@noahgift noahgift enabled auto-merge (squash) May 5, 2026 04:52
…ted; full run is ~17hr operator-dispatch

§55 (in-flight PR #1500) closes the polymorphic preflight strictness
gap and unblocks 5g.1 dispatch. §56 records the LIVE smoke that
validates 5g.1's correctness end-to-end before committing to the
multi-hour full run.

  apr tokenize encode-corpus \
    --corpus <python-permissive-5k.jsonl> \
    --tokenizer /tmp/qwen-0.5b-tokenizer-extracted \
    --output <smoke-shards> --shard-tokens 1000000

  → 13 valid u32 shards (12 full × ~1M + 1 partial = ~13M tokens for 5000 docs)
  → ~110 sec / M-token single-thread
  → No errors; shard rotation correct
  → Killed before manifest.json write (sufficient evidence accumulated)

  Legacy 50257-vocab:   ~64 sec / M-token  →  9.99 hr for 565M (validated)
  Qwen 151643-vocab:    ~110 sec / M-token →  ~17 hr for 565M (projected)

Qwen is ~70% slower per-token because the BPE merge table is 3× larger
(151387 vs 49997 merges); per-character merge-table search dominates
encoding cost. Below the 48hr feedback_compute_pre_authorized.md
ceiling, so 5g.1 full run is pre-authorized.

  5g.0  ✅ MERGED PR #1497  (apr tokenize import-hf)
  5g.0.1 in-flight PR #1500 (§55 polymorphic preflight relaxation)
  5g.1  CORRECTNESS-VALIDATED (this PR), full run pending operator
  5g.2  gated on 5g.1 full run
  5g.3  gated on 5g.2 (val_loss < 9.38 verdict)

1. Why smoke before full run? ~17hr non-trivial; smoke proves chain
   correctness before committing to long wall.
2. Why 5000 docs? Smallest slice that exercises shard rotation (12M
   tokens > 10 shards).
3. Why kill smoke instead of complete? 13 shards = sufficient evidence;
   finishing wouldn't add information.
4. Why Qwen 70% slower? BPE merge-table size dominates encoding cost.
5. Why not parallelize? Out of 5g.1 scope; single-thread wall is below
   48hr ceiling; ROI negative for current cycle.

- Spec v3.00.0 → v3.01.0 (assumes §55 lands first; safe either way —
  §56 has no code/contract changes).
- 5g.1 reaches CORRECTNESS-VALIDATED state.
- MODEL-1 ship % unchanged at 91%.
- MODEL-2 ship % unchanged at 57% until 5g.3.

Refs: SPEC-SHIP-TWO-001 §54 (PR #1496), §55 (PR #1500 in-flight),
      §56 (this PR), evidence/section-56-5g-1-smoke-2026-05-05/

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
@noahgift noahgift force-pushed the spec/section-56-5g-1-smoke-validated branch from 7f2f316 to 789d5f6 Compare May 5, 2026 05:28
@noahgift noahgift merged commit 4c8f4dd into main May 5, 2026
10 checks passed
@noahgift noahgift deleted the spec/section-56-5g-1-smoke-validated branch May 5, 2026 05:44
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant