Skip to content

Survey output redesign — value & numbers first (folds 8 feedback seeds)#360

Merged
clkao merged 5 commits into
mainfrom
spacedock-ensign/survey-output-redesign
Jun 13, 2026
Merged

Survey output redesign — value & numbers first (folds 8 feedback seeds)#360
clkao merged 5 commits into
mainfrom
spacedock-ensign/survey-output-redesign

Conversation

@clkao

@clkao clkao commented Jun 13, 2026

Copy link
Copy Markdown
Collaborator

Redesign the spacedock:survey step-4 report to lead with plain value and concrete numbers, folding eight user-feedback seeds into one coherent output.

What changed

  • Rewrite step-4 to a value-&-numbers-first spine (WHAT THIS GIVES YOU lede + BY THE NUMBERS; demoted detail below the fold)
  • Add dispatch-fact and decision-no-followup queries; rename mode mechanicalmanual; add a knowledge-work archetype
  • Reframe the knowledge-work offer to a per-entity tracker that auto-runs the user's existing processing skills
  • Name the specific TYPE of knowledge work in the report body, not the bare archetype label
  • Detect spacedock as an incumbent scaffold via a file-probe, so a genuine spacedock repo isn't hidden from SCAFFOLD

Evidence

  • TestSurveyQuerySmoke + scaffold-incumbent probe 20/20 passed; full go test ./... green (15 pkgs)
  • Render-level ACs proven by live survey drives over the fixture + real corpus; detached audit refuted nothing material

5wv

clkao and others added 5 commits June 13, 2026 14:04
…ork mode, manual rename

Query-level ACs (AC-1b/AC-3/AC-5/R6#1) for the survey output redesign:
- dispatch-fact (za): count distinct in-repo parents that dispatched subagents
  + total dispatched, via relationship_type='subagent' + parent_session_id parent-join,
  scoped to the body's exact parent scope.
- decision-no-followup (9h): count `done` decisions with no later Edit/Write in the
  same session, ordered by the real tool_calls.message_id -> messages.ordinal
  chronological join (not tool_calls.id insertion order).
- mode-classification: rename 'mechanical' -> 'manual' for repetitive-but-substantive
  tracks; add the knowledge-work branch (intake/process/file/log/close loop + content/ops
  edits, gated on the loop marker, scored beside manual/exploration with the margin guard).
- Extend testdata/survey/fixture-sessions.sql: tool_calls.message_id + messages.ordinal,
  sessions.parent_session_id + relationship_type; seed dispatch (2|3), no-followup (1),
  knowledge-work (notes-ops), all-unlabeled-Codex mutation. Each expected value is a
  fixture-derived oracle with a non-vacuous mutation (higher-ordinal Edit decrements
  no-followup; out-of-repo subagent re-point flips dispatch; kloop-strip drops knowledge-work).

14/14 TestSurveyQuerySmoke subtests pass; 26/26 integration package.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Render-level redesign (AC-1/AC-2/AC-4/AC-6), folding all six feedback seeds into the
captain-locked output structure:
- step 4 report template rewritten: SpaceDock-survey title carrying the window (5x),
  recent-window-snapshot + agent-logs-only subhead, WHAT THIS GIVES YOU plain lede (9h),
  BY THE NUMBERS block (interruptions, hanging-threads count, no-follow-up count,
  sessions-read with the workdir-vs-name caveat, conditional za dispatch line), HOW YOU
  WORK de-jargoned loop + the knowledge-work archetype (zb#2), the ↓ full-analysis pointer,
  then the demoted detail: THREADS TO PULL reframe of the frontier (9h#4), BACKLOG, RECENT
  DECISIONS, WORKSTREAMS/WORK-BY-AREA (with the branch-and-merge caveat, zw#2)/CODEX (with
  the conditional all-unlabeled collapse, h5#1)/SCAFFOLD/INTERRUPTIONS, and one consolidated
  WHAT THIS CAN'T SEE block (5x).
- explicit no-scratch-preamble instruction (h5#2): the first line is the title, never
  "I have everything I need" / "Let me ...".
- mode-aware commission offer (zw#1): manual keeps gate-and-drive; exploration leads with
  iterate/steer; knowledge-work gets batch book-keeping.
- step 2 run_query list + prose updated (dispatch-fact, decision-no-followup, knowledge-work
  archetype, manual rename); Overview + synthesis guidance updated to match.

Proven by a LIVE survey drive over this repo's real agentsview corpus (68 sessions,
33 orchestrating parents, decision-no-followup=2, dispatch=33/1720) rendering the new spine
with corpus-derived numbers and no scratch preamble — not a SKILL.md prose-grep.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Clarity-only edits (Strunk): split run-ons in the WHAT THIS GIVES YOU lede and the
manual/exploration/knowledge-work offers, tighten 'roughly N times in this window',
'these passed N times'. State-list notation kept in slash form to match the report's
state glyphs. No {slot} tokens or structure changed.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
…bent scaffold detection

(A) Knowledge-work offer reframe (R5/R6): the shipped offer framed knowledge-work as
passive book-keeping and disclaimed automation — backwards. Rewrite the step-4
knowledge-work mode-keyed offer to a per-thread tracker that AUTO-RUNS the processing the
user already built: long-lived per-entity threads (per recurring counterpart / advisory
topic / one-off interview-or-strategy pass); a new entry auto-runs the user's existing
processing/commentary skills (their index/update skill becomes ONE automated step), stopping
only at the judgment calls (intake/filing + commentary emphasis). Drop the "book-keeping" /
"no automation" framing; mirror in the synthesis-guidance mode-keyed-offers bullet. Proven by
a live drive over the knowledge-work fixture (notes-ops → knowledge-work; rendered offer names
per-entity threads + auto-running existing skills + judgment-call gates, no "no automation").

(B) Spacedock-incumbent scaffold detection (R7; folds seed dyxqywnwb4c3zwb3pka1p6s0): the DB
tally excludes WHERE family <> 'spacedock' (stops the survey's own self-call reading every
repo as spacedock), which also hid spacedock from SCAFFOLD on a genuine spacedock repo. Add a
spacedock FILE-PROBE to step 3 — a runnable spacedock_incumbent() bash function matching
.spacedock-state/ / a workflow README with spacedock frontmatter / _mods/ — so SCAFFOLD names
spacedock WHEN a workflow is on disk, while KEEPING the tally exclusion. The file-probe
distinguishes the genuine incumbent from the self-call. New TestSurveyScaffoldIncumbentProbe
extracts the function from SKILL.md and executes it over a committed testdata/scaffold/ fixture
pair (workflow-on-disk → spacedock; survey-self-only → nothing) — outcome from on-disk state,
not a SKILL.md grep. Live drive over this repo (a genuine spacedock repo): probe now names
spacedock via docs/dev/.spacedock-state.

20/20 survey query+probe subtests; 1255/16 full go test; go vet clean. Existing R1-R6
behavior + KEEP-SIGNAL unchanged.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
…e report body

The render leaned on the bare archetype label "knowledge-work" (HOW YOU WORK line,
WORKSTREAMS mode column) — too vague. Now NAME THE SPECIFIC TYPE, synthesized from the
workstream names + areas (+ the user's checked-in skills), so "knowledge-work" never stands
alone:
- SKILL.md step 4 HOW YOU WORK: the knowledge-work line characterizes the actual kinds
  (e.g. "People 1-1s & team assessment, … memo intake & filing — a knowledge-work loop run
  mostly autonomously"), not a bare "A knowledge-work loop".
- SKILL.md step 4 WORKSTREAMS mode column: qualify the bare label with the track's specific
  type (e.g. `knowledge-work · 1-1s & team assessment`). The mode-classification VALUE stays
  `knowledge-work` (the underlying class); only the user-facing characterization names the type.
- synthesis-guidance: new "Name the SPECIFIC TYPE of knowledge work" bullet. No sub-type
  classifier — the type is synthesized from the workstream/area signal the survey already has.

Seed a SECOND distinct knowledge-work track (client-1on1s: people 1-1s & assessment) beside
notes-ops so the render demonstrably names ≥2 DISTINCT types; mode-classification asserts both
→ knowledge-work; scoping 15→17. Proven by a live drive over the two-track fixture: HOW YOU
WORK + WORKSTREAMS name distinct specific types per track, knowledge-work never standing alone.

R1-R6 + cycle-1 (offer reframe, AC-7 scaffold probe) intact. 20/20 query+probe subtests;
1255/16 full go test; go vet clean.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
clkao added a commit that referenced this pull request Jun 13, 2026
@clkao clkao merged commit 4d40680 into main Jun 13, 2026
6 of 9 checks passed
clkao added a commit that referenced this pull request Jun 13, 2026
clkao added a commit that referenced this pull request Jun 13, 2026
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