From a64e514e4d7870fb04bc1d0718e84b71589c6b01 Mon Sep 17 00:00:00 2001 From: Henry Lach Date: Mon, 18 May 2026 11:05:52 -0400 Subject: [PATCH] fix(overview): restore truncated tails on pages 01-12 Pages 01 through 12 were silently truncated (and pages 04 and 12 also contained null bytes) at some point between commits cc527612 and f1a29c1a. The truncation was committed and shipped to the live Pages microsite. Visible symptom: page 5's 'Left to the model' column ended with a half-written bullet 'Exit inter' instead of 'Exit interception - supervisor re-steer up to 2x', and several other pages were missing their footer principle / pull-quote / closing band content. Browsers were lenient enough to render the remainder, so the damage went unnoticed on the first pass. Pages 13-17 and index.html were authored after the corruption window and were unaffected. Recovery strategy: 1. Source each file from cc527612, which is the last commit before the corruption window and confirmed intact. 2. Re-apply the two deliberate edits that landed in the rename PR: a. -> b. add after the title in the eyebrow header. 3. Write the result back into docs/taskplane-overview/. No other changes were made to pages 01-12 between cc527612 and HEAD, so this restore is non-destructive: every intentional edit since the extended PR (subtitle width default, page-12 next-arrow link, etc.) either lived in shared.css (untouched) or was already in cc527612. Verified: - All 12 files now end with and contain no null bytes. - Each carries exactly one .eyebrow-logo reference. - None still reference _shared.css. - Page 5 'Exit interception' bullet is whole. --- .../01-origin-timeline.html | 12 ++++++++++- .../02-light-factory-vs-dark.html | 13 +++++++++++- docs/taskplane-overview/03-agent-quartet.html | 6 +++++- .../04-task-packet-anatomy.html | 1 - .../05-determinism-spectrum.html | 13 +++++++++++- .../06-cross-model-review.html | 13 +++++++++++- .../07-mailbox-protocol.html | 11 +++++++++- .../08-waves-lanes-worktrees.html | 11 +++++++++- .../09-branching-lifecycle.html | 19 +++++++++++++++++- .../taskplane-overview/10-semantic-merge.html | 12 ++++++++++- .../11-polyrepo-segments.html | 10 ++++++++- .../12-dashboard-visibility.html | Bin 10898 -> 6945 bytes 12 files changed, 110 insertions(+), 11 deletions(-) diff --git a/docs/taskplane-overview/01-origin-timeline.html b/docs/taskplane-overview/01-origin-timeline.html index dc80ef98..ead0025b 100644 --- a/docs/taskplane-overview/01-origin-timeline.html +++ b/docs/taskplane-overview/01-origin-timeline.html @@ -147,4 +147,14 @@

The road to Taskplane

Taskplane
today · deterministic orchestration
Four agents. Verbose packets. File-backed state. Worktree isolation. Cross-model reviews. Semantic merges. A web-based dashboard to drive observability.
-
rule → < \ No newline at end of file +
rule → Autonomy is fine. Inspectable autonomy is the goal.
+
+ + + + + + + diff --git a/docs/taskplane-overview/02-light-factory-vs-dark.html b/docs/taskplane-overview/02-light-factory-vs-dark.html index 74bdc875..77c0af6c 100644 --- a/docs/taskplane-overview/02-light-factory-vs-dark.html +++ b/docs/taskplane-overview/02-light-factory-vs-dark.html @@ -130,4 +130,15 @@

Light factory vs dark factory

  • File-backed state. .DONE, STATUS.md, batch-state.json. Resume from any crash.
  • Worktree isolation. Every lane is its own checkout. No collisions, ever.
  • Cross-model reviews. Different family on the other side. Independent quality gate.
  • -
  • Dashboard reads disk. SSE-streamed truth. Cannot lie. Doesn't decide.
    Dashboard reads disk. SSE-streamed truth. Cannot lie. Doesn't decide.
  • + +
    visibility → full · recoverability → atomic · operator clarity → first-class
    + + + + + + + diff --git a/docs/taskplane-overview/03-agent-quartet.html b/docs/taskplane-overview/03-agent-quartet.html index 5d56509b..1039527f 100644 --- a/docs/taskplane-overview/03-agent-quartet.html +++ b/docs/taskplane-overview/03-agent-quartet.html @@ -189,4 +189,8 @@

    The agent quartet

    - supervisor spawns workersupervisor spawns worker per lane worker calls reviewer at step boundaries wave completes merger combines lanes next wave +
    + + + diff --git a/docs/taskplane-overview/04-task-packet-anatomy.html b/docs/taskplane-overview/04-task-packet-anatomy.html index ed1ed4a8..77789191 100644 --- a/docs/taskplane-overview/04-task-packet-anatomy.html +++ b/docs/taskplane-overview/04-task-packet-anatomy.html @@ -190,4 +190,3 @@

    Anatomy of a Taskplane task packet

    - \ No newline at end of file diff --git a/docs/taskplane-overview/05-determinism-spectrum.html b/docs/taskplane-overview/05-determinism-spectrum.html index d5e01028..738e1d0d 100644 --- a/docs/taskplane-overview/05-determinism-spectrum.html +++ b/docs/taskplane-overview/05-determinism-spectrum.html @@ -176,4 +176,15 @@

    Where Taskplane sits on the determinism spectrum

  • Supervisor steeringwhen / what to inject
  • Discovery hydrationcheckbox expansion at runtime
  • Verify-then-fixtest failures post-merge
  • -
  • Exit inter \ No newline at end of file +
  • Exit interceptionsupervisor re-steer up to 2×
  • + + + + +
    + Two runs of the same batch produce the same waves, the same lanes, the same branch names —
    + only the contents of the model's tokens differ. +
    + + + diff --git a/docs/taskplane-overview/06-cross-model-review.html b/docs/taskplane-overview/06-cross-model-review.html index bd951380..5051dc95 100644 --- a/docs/taskplane-overview/06-cross-model-review.html +++ b/docs/taskplane-overview/06-cross-model-review.html @@ -258,4 +258,15 @@

    Cross-model reviews

    UNAVAILABLE
    -
    Reviewer crashed / timed out. Worker proceeds cautiously. Logged for the operator.
    Reviewer crashed / timed out. Worker proceeds cautiously. Logged for the operator.
    + + + + + + + + diff --git a/docs/taskplane-overview/07-mailbox-protocol.html b/docs/taskplane-overview/07-mailbox-protocol.html index 86eed5e5..27934e66 100644 --- a/docs/taskplane-overview/07-mailbox-protocol.html +++ b/docs/taskplane-overview/07-mailbox-protocol.html @@ -203,4 +203,13 @@

    The file-based mailbox

    bidirectional
    -
    agents reply into \ No newline at end of file +
    agents reply into outbox/ — the engine polls and surfaces alerts to the supervisor.
    +
    +
    +
    portable
    +
    windows, macOS, linux — same protocol. no sockets, no named pipes, no daemon.
    +
    +
    + + + diff --git a/docs/taskplane-overview/08-waves-lanes-worktrees.html b/docs/taskplane-overview/08-waves-lanes-worktrees.html index 9e996ea4..4d80f112 100644 --- a/docs/taskplane-overview/08-waves-lanes-worktrees.html +++ b/docs/taskplane-overview/08-waves-lanes-worktrees.html @@ -297,4 +297,13 @@

    Batch, waves, lanes, worktrees, tasks

    Lanes are parallel
    -
    Up to max_lanes within a \ No newline at end of file +
    Up to max_lanes within a wave. Each lane is one subprocess worker against one worktree against one branch.
    +
    +
    +
    Tasks share lanes when scopes overlap
    +
    Affinity-first assignment. Overlapping ## File Scope entries collapse onto the same lane and run serially.
    +
    +
    + + + diff --git a/docs/taskplane-overview/09-branching-lifecycle.html b/docs/taskplane-overview/09-branching-lifecycle.html index ba1dc298..74efb145 100644 --- a/docs/taskplane-overview/09-branching-lifecycle.html +++ b/docs/taskplane-overview/09-branching-lifecycle.html @@ -244,4 +244,21 @@

    How Taskplane uses branches

    wave merge
    After each wave, a merge agent combines lane branches back into orch. Next wave sees the previous wave's merged changes.
    -
    +
    4
    +
    all waves complete
    +
    Orch branch now holds the full batch result. Your working branch is still untouched.
    +
    +
    +
    5
    +
    /orch-integrate
    +
    Fast-forward, merge commit, or open a PR. Your choice. Always an explicit step.
    +
    + + +
    + your working branch is sacred — never touched until /orch-integrate +
    + + + diff --git a/docs/taskplane-overview/10-semantic-merge.html b/docs/taskplane-overview/10-semantic-merge.html index 758b071d..a86addcd 100644 --- a/docs/taskplane-overview/10-semantic-merge.html +++ b/docs/taskplane-overview/10-semantic-merge.html @@ -200,4 +200,14 @@

    Semantic merge vs git merge

    5
    result.json
    -
    Engine polls. Counters u \ No newline at end of file +
    Engine polls. Counters update. Next wave provisions.
    +
    +
    + + +
    + merge health monitor polls every 2 min · stale at 10 · stuck at 20 · emits events, never kills autonomously +
    + + + diff --git a/docs/taskplane-overview/11-polyrepo-segments.html b/docs/taskplane-overview/11-polyrepo-segments.html index 1a4af69d..2b6734a1 100644 --- a/docs/taskplane-overview/11-polyrepo-segments.html +++ b/docs/taskplane-overview/11-polyrepo-segments.html @@ -274,4 +274,12 @@

    Polyrepo: tasks decompose into segments

    Segment isolation
    Workers read across all repos for planning. They write only to the active segment repo + the packet home.
    -
    \ No newline at end of file + +
    +
    Per-repo orch branches
    +
    An orch/… branch is created in every repo with work. /orch-integrate loops over all of them.
    +
    + + + + diff --git a/docs/taskplane-overview/12-dashboard-visibility.html b/docs/taskplane-overview/12-dashboard-visibility.html index a467250b8d8aa6019c871d7e3d76c69cc9a1de26..72ee4f37b24bcc500b8d562350c1e2c19133720b 100644 GIT binary patch delta 7 OcmbOfy3lNcqBH;uZ33$R literal 10898 zcmeHM%aYr;70udTfhd*Oo;0b4yW4HGTAT5t%2laks>VqwOOS*_q(OoMfUQ=hT$PW= zzs!C;g$#xxH$LRb1$w|zkdJcZ$JM1`|n6@3bB5%vVVx6<@RpE z%87lzXof!pGnAw`RhpT*$zMMHA-b`nh8w}wf1NMLfByAv@}BBEkyK^mfoq;{!Ofl& zv|3I5yca9M%X^}jxSMFR7fk1jnF+}i+u#XSXIY$TZC7^V>lcK?g6?H)$WQo8NXB)A z2TQV5JiB#|?5D`E0?!SLQYq@9)JrnoDDq}8s~*EFS}n=q#((|v!Y-V(=K8f0n%-}f ztjlak9;kX1MY>iSnzGk^iA1W5DXd&Q5-kPCG2JZxd@w0eG~>0kqBWqRS;oullFa;S z@`0(1kh>+xd6u#A7N?tjLsG#jVsb`wsu(MEE)6l#J#nV7jHFVPOlk7X6sPz!JP9wh zW26!x(|f!E0_*^MA5tY@;Kw4TGSRgxmc~hCLehe7sFu zD-rfOcmW&pviDlWh0v$L-CC};R0UJ*{4YMoqYme28Tbb1b;JzNwv1i0n4gM=Xc1QY zA0ooRWbKaye_-S%u(yZi)^hyyEeSRp9qU%ecrjkUx}!lC?6tw5>jE^|M^+cc7=KnZ z6ss6DuP!gFeuPsxcXW82;HWdR**j&e!%nKob5JA=LXDT&z-XO1hu_*r8WVybp5a5y30WWj$?1mLS;N4`SXsI_+A>iw(Vk)JY`QZ_wK@A3Hc%Y&N zd)!XX59K$HBKY#)4DR{iRxxDsI8~3#O~!K*7z6V#Y#!2vu@H(&n_Q2T=0vgnMxKgJQus&uFD5e_6^ii6( z-s#c;kR#pmLsWv-zD_oJeiXLZ1y=(WwQh`Wu0D%?fFZU}4Bs=AqDq};`+u`py-&(k&_T-v_8xwyK#xSn6k;_DC<#}v9i6gt8U4(p7^Z6u71 zq{}JSp`FVOS0GcGb72#D-!{jr5JTP3v{AA=DOe{t=u4r|W!8pOfO#V&3iV-?;}L3m z74Cc?6ZS9eC--y^eIb4hsbEx`A0*M{iumcpY8skCt7+&;B{JLF9?>e}59pjwt?woq zMGJ-wlD(7kpR+wnP%MWLjNztIuF<*r%ZlDLdlLLuEFEli5HMwgNNV#@dI2x4|A)=A*k71r)RRZe(bt>T;m<QpuIdZk5QP&cTtMY(cy_4H!Y(h<%lf`Ut zJ-eD;eVo0!dV4h^1$w1B`oN;a(zbcgW;E2)I8?zD2nW)EL>K-q(J24HJ=>49r-4!4 zRn527Z*Hs?gAUvFt)rv9Oqi_SQ#6)+w$S92ML3eB*uM^2*?0ZFRV`YFcbROk2@Di` z?GJ9x#a2^%Zv)4!V<-4?m+(BAtNQpHU%nk5qp6L^6EEf{7^K=Cf73=H+nspRd*b+u z1?3`shNw}F$fXy=A53m@?U8u&JQt?{Q$O^tFE{4~^R zxO?s*v7qI?aXu*MzU8!H`W6A%@}6waII^Kx5d07Ta#|rE8U^wf~W98-;^JI_>NRHI?7m3)u>m{u(h&aXmaah0Uyw}!Wl3F0uQmk&k`?D zKxtX9UC!`{32meQDN9;{lVlJ5(CCm4?XZQIlK2eZ_tO`O=sZGxi4Eu|PQ_vkR^#KM)c^bmH zr~W;4>2ufD1}(=>gci8 C+EW$)