From 771944830afeaeec1b53c765ed1087c485a90ad7 Mon Sep 17 00:00:00 2001 From: anti Date: Sun, 3 May 2026 21:30:13 -0400 Subject: [PATCH] docs(behave): close Phase B in BEHAVE-EXTRACTOR.md Tick the four Phase B checkboxes (B.1-B.4) and append a Phase B completion log inline (per the "append phase logs to design docs" memory rule). Captures per-primitive confidence ranges, source signals, and the PII-discipline regression that all four primitives uphold. Phase A + Phase B = 10 primitives emitting on every shard; PHASE_AB_PRIMITIVES is binding for every subsequent phase. Phase C (motor.shell_mastery.*) lands next. --- development/BEHAVE-EXTRACTOR.md | 38 +++++++++++++++++++++++++++++---- 1 file changed, 34 insertions(+), 4 deletions(-) diff --git a/development/BEHAVE-EXTRACTOR.md b/development/BEHAVE-EXTRACTOR.md index f797f888..10243acc 100644 --- a/development/BEHAVE-EXTRACTOR.md +++ b/development/BEHAVE-EXTRACTOR.md @@ -640,10 +640,10 @@ unchecked = no v0 tag.** - [x] Step 10 — Phase A complete: floor green ### Phase B — `motor.*` completion -- [ ] B.1 `motor.keystroke_cadence` -- [ ] B.2 `motor.motor_stability` -- [ ] B.3 `motor.error_correction` -- [ ] B.4 `motor.command_chunking` +- [x] B.1 `motor.keystroke_cadence` +- [x] B.2 `motor.motor_stability` +- [x] B.3 `motor.error_correction` +- [x] B.4 `motor.command_chunking` ### Phase C — `motor.shell_mastery.*` - [ ] C.1 `motor.shell_mastery.tab_completion` @@ -730,6 +730,36 @@ worker's interface. --- +## Phase B completion log + +Closed in 4 commits, one primitive per commit. The +``motor.*`` family (minus ``shell_mastery``) now emits. + +| Primitive | Confidence | Source signal | +|---|---|---| +| `motor.keystroke_cadence` | 0.60 / 0.65 / 0.70 / 0.85 | median within-burst CV; bursts split at gaps > IKI_THINK_MAX_S; sub-5 ms mean + sub-0.05 CV → ``machine`` | +| `motor.motor_stability` | 0.60 / 0.65 / 0.70 | tremor: ≥10% within-burst IATs below 30 ms (physiologically implausible double-press); else burst-CV picks steady vs variable | +| `motor.error_correction` | 0.55 / 0.55 / 0.65 / 0.65 | backspace IAT to preceding key (≤500 ms = immediate); ^U/^W with no backspaces → route_around | +| `motor.command_chunking` | 0.60 / 0.65 / 0.80 | median CV of per-command typed IATs; 1 command → ``single_command`` | + +Implementation note: B.2 and B.4 are first principled +implementations — the prototype extractor doesn't ship them. B.3 +replaces the prototype's two-line "0 vs >0 backspaces" heuristic +with a full-vocabulary classifier. + +PII discipline preserved across all four: only counts and timing +aggregates leave the helper functions; no character data is +retained or serialised. The PII regression for ``error_correction`` +is pinned by ``test_pii_no_command_bodies_in_observation``. + +**Calibration grid widened:** ``PHASE_AB_PRIMITIVES`` now contains +10 names and is binding for every subsequent phase. All five +class shards still emit every Phase A+B primitive at least once. + +Phase C (``motor.shell_mastery.*``, 3 primitives) lands next. + +--- + **Owner:** ANTI. **Implementation gate:** Step 0 starts after this doc is reviewed + Phase 1 of `BEHAVE-INTEGRATION.md` lands (storage table exists).