codsh-bundle@0.24.0
Minor Changes
- 10b27cc:
/shipcontinues after HITL, dispatches a Landing wave, and always shows the two-ring panorama (/goalstays disarmed). The Web panorama is one loopback URL for the TTY session: the page polls the live graph and is not rebound when/shipcontinues or a spec appears. Decision tickets join the inner ring as soon as they are written (a published map pointer is not a ticket and does not hide local wayfinder files); landing tickets join the outer ring from the approved plan. Phase contracts are the injected prompt;/shipdoes not look up wayfinder, grill-me, to-spec, to-tickets, or tdd skills. - 698f622: Show the original requirement, overall Ship goal, and individual decision questions and user answers directly in the local Web graph. Persist human responses separately from the graph cache so they survive rebuilds and resumed runs, keep missing answers explicit, and support complete long-text inspection. Use English for all Web interface labels while preserving recorded source text verbatim.
- 698f622: Replace the Web panorama's ring diagram with locally bundled React Flow sub-flows. Show six ordered layers from Wayfinder through Grill, Spec, Tickets, Landing, and Done, with nested workflow steps, live ticket claims, prerequisite/Track relations, phase navigation, and expand/collapse controls. Preserve the existing TTY projection and canonical graph identities. Read phase status from the spec, retain the last graph during connection failures, and serve browser assets locally without a CDN. Distinguish phase states and ticket claims with colored node fills, borders, and labeled badges, with a matching status legend and separate Track-anchor styling. Dedicate the entire vertical viewport in the center column to the flowchart, placing branding, spec path, phase navigation, canvas controls, ticket claims, inspector details, and legends neatly into the left and right sidebars.
- d12f168: Show the subagents a session started, the way Grok Build's tasks pane does. A row under the box counts them by state (
subagents 2 · 1 running · 1 done · Ctrl+H) for as long as the session holds any; Ctrl+H or a click on it opens a numbered list with each child's mark, label, elapsed time, calls, and latest call; Enter or a click on a row enters that child's view, whose status row now names it and ticks with it; Esc returns. A finished child stays listed with its outcome and opens read-only from its persisted log./subagentsprints the same list for pipes. - e4d4efa: Show thinking open and keep tool calls to one row, the way Grok Build does. A thought streams into the transcript under a
thinking…head that becomes its clock, and stays open until the next turn folds it to that row; a click folds or opens the one under the pointer, Ctrl+O opens whatever is folded and folds everything once nothing is, and a form chosen by hand survives later turns. Every tool card is one row — its title,+n -mor· N lines,✔or✗, and a failed row's reason — with the output behind it. An empty Enter, a chrome command, or a!line no longer folds anything: only a turn spent moves the conversation on. Pipes keep the digest: the clock row and the one-line cards./ui comfortableno longer keeps a two-line thinking preview under the box, since finished lines are in the transcript for both densities.
Patch Changes
-
698f622: Esc from a Child view restores the covered parent transcript — history, scroll offset, and open folds — instead of replaying the log from scratch and landing at the tail.
-
698f622: Select chrome-row text with a drag and copy it on release, the same gesture the transcript, the input box, and the status row already use.
-
698f622: Stop a running turn with Ctrl-C. Escape still dismisses overlays, readers, and Child views, and no longer cancels the agent.
-
698f622: Paint a terminal tool card that exited non-zero or was killed as a failed row (
✗), not a green pass. -
698f622: Clarify in both gallery languages that every project was built from a one-sentence request with one round of interaction and recommended answers to every question, and add a prominent gallery invitation to both READMEs.
-
698f622: Add the International Mall project to the bilingual gallery, with a real screenshot and a shoppable static snapshot.
-
698f622: Add the Web Music Player project to the bilingual gallery, with a real screenshot and a playable static snapshot.
-
698f622: Resolve landing and merge-back conflicts autonomously, including lockfiles and modify/delete conflicts, and retry validation feedback before reporting a blocker. Preserve clean auto-merged files instead of misclassifying them as unrelated edits, and finalize real merge and squash conflicts with the correct non-interactive Git commit. Keep sealed requirements, interruption recovery, and integrated proof checks intact.
-
698f622: Clear completed ship status rows after verified delivery, including the plan, ticket counts, old todo readout, and settled subagent readout. Keep history and the final Web graph available, preserve running or blocked work, and prevent later events from restoring completed progress or applying the retired mission guard.
-
698f622: A live Conflict-resolution child can fill merge hunks without Alignment Gate refusing the writes as unmapped landing work. Invented
supports, missing Track mappings, and path aliases no longer stall/shipon leftover conflict markers. -
698f622: Keep
/shipin the same invocation after Gate 2 while a Landing wave is in flight: the working line stays on, the panorama teaser reportsin-flight, and each landing child receives the TDD contract. Do not invent a worktree directory or dispatch whengit worktree addfails. -
698f622: Lay out landing tickets that share a prerequisite side by side, stack only a true wait under that ticket, and dispatch those siblings as parallel worktree children. A numbered
Blocked by: 1, 2next toBlocked by: 1is a fan-out, not a second wait. -
698f622: Align parallel landing subagent writes with their respective ticket in the Alignment Gate, and register landing child sessions in the subagent roster with start and end lifecycle events so they appear in the subagent roster list (
Ctrl+H) and status chrome. -
1946513: Keep
/shipon the panorama teaser. The fullscreen overlay opens on Ctrl+G or a click on that row, not when the graph first binds. -
698f622: Fix false
/shipsnapshot-change stops after Gate 1 by comparing saved field values independently of JSON key order, while continuing to reject missing, corrupt, or changed snapshots.Recognize local Wayfinder
decision-NN-slug.mdtickets and Markdown-list metadata so each ticket and its status appear in the live TTY and web panorama. Share the filename and Status handling with claim recovery, preserve closed decisions, and specify the local ticket format in the injected Wayfinder contract. Stack the web graph and details on narrow screens so the graph remains usable. -
698f622: Keep
/shipplan and land-chip chrome following spec checkboxes after a mid-run interrupt or idle stop, so a later typed continue still updatesplan k/nwithout another/ship. -
698f622: Remove the duplicate Ticket claims counts from the Web panorama sidebar. Claim colors stay in the Node status legend.
-
698f622: Draw ticket relations as orthogonal lanes with staggered exits and entries. Skipped-rank edges split left and right of the phase so concurrent prerequisites no longer share one horizontal or vertical run.
-
698f622: Cluster each decision ticket with its answers: the ticket sits on the left, answers stack on the right, and prerequisite arrows stay in the ticket lane instead of looping around the phase.
-
698f622: Make the Ship Web flowchart more compact while reserving space for arrows and labels. Route cross-phase and long dependencies outside node columns, and animate the current phase, its claimed tickets, and supported incoming flow. Stop motion for completed or unrecorded phases, connection loss, and reduced-motion preferences without inventing individual step execution.
-
698f622: The Web panorama page title and heading use the typed
/shipidea instead of a fixed Ship Flow label. -
698f622: Give Wayfinder continuation answers a join from each decision column instead of a line from the last workflow step, size CJK answer cards by display width, and space Landing DAGs so skipped-rank prerequisite edges leave the columns instead of crossing tickets.
-
698f622: Lay out sibling dependents of one prerequisite in the same rank, each with its own ticket/answer cluster, so the flowchart forks on a short path. Do not stack those tickets into one column, wrap the prerequisite around the phase, invent research-ticket user answers, or repeat an unlinked copy of a question already shown on its ticket.
-
698f622: Smooth viewport transitions when navigating workflow steps and context items in Ship Web panorama.
-
698f622: Draw the parent-ticket-to-answer connection as a straight horizontal line at ticket mid-height, even when the answer card is taller, instead of an elbow between the two card centers.
-
698f622:
/shipno longer opens the Web panorama in a browser. The loopback URL is pinned on the panorama teaser and overlay title; a pipe still prints it once. -
698f622: Avoid duplicate Wayfinder decision cards when a local ticket repeats a captured human response with a translated or reworded question. Reconcile unique matches in the Web projection, preserving the captured wording, ticket selection, and stored history; retain ambiguous matches, short confirmations, and changed answers.
-
698f622: Simplify the bilingual site homepages, move detailed documentation into guide pages, and add a gallery of one-sentence projects with a real screenshot and playable WWII browser-game demo.
-
698f622: Select status-row text with a drag and copy it on release, the same gesture the transcript and the input box already use.
-
698f622: Draw one connecting
│down every transcript row — prompts, thinking, tools, answers, notices, and blank separators — and colour it by what the row is. Drop the mixed›/✻/·gutter glyphs so the left rail no longer breaks between blocks. -
698f622: Fold thinking by default and drop the tool-card highlight. A thought still streams as a
thinking…head that becomes its clock, but the deliberation stays behind a click or Ctrl+O; tool rows keep their one-line form without a panel fill or amber title. -
698f622: Animate an in-progress thought. The
thinking…head ticks the same Braille frames as the working line, and the hint row saysthinkinguntil the clock lands. -
698f622: Quiet the tool-row column. A finished success bullet is dim instead of green, so the trailing tick carries the pass; consecutive one-line cards on a TTY open with a blank between them so a long run is readable.
-
698f622: Use the same filled background and text inset for canned command prompts (
/ship,/init, and custom commands) as ordinary user messages. Keep streaming and collapsed thinking to one row, retaining padded reasoning only when expanded.