Skip to content

docs(roadmap): host killer demo in llm4s, not termflow (§3.3) - #194

Merged
rorygraves merged 1 commit into
mainfrom
docs/killer-demo-host
Apr 30, 2026
Merged

docs(roadmap): host killer demo in llm4s, not termflow (§3.3)#194
rorygraves merged 1 commit into
mainfrom
docs/killer-demo-host

Conversation

@rorygraves

Copy link
Copy Markdown
Contributor

Summary

Resolves the dependency-direction question raised when sketching §3.3 in chat: llm4s already depends on termflow for samples, so an llm4s-backed chat demo hosted here would create a sibling cycle that bites at release time even though the published-artifact graph stays acyclic.

§3.3 now:

  • Records the decision that the source lives in llm4s, with a screenshot + link from termflow's README.
  • Sketches the app shape (Layout.Border shell, Cmd.asyncResult streaming, Dialogs.confirm tool gating, mouse-wheel scrollback via §4.6, Cmd.RequestAttention for completed long replies, slash commands).
  • Notes coordination — open the llm4s issue once §4 hardening is closed so the demo lands against a 1.0-RC of termflow rather than a moving target.

§3.6 DoD updated; §8 recent-decisions log gets a one-liner with the rationale.

No code changes.

Test plan

  • mdbook build (or local read-through) — no broken links, sentences scan.
  • Cross-link from llm4s side after the demo is implemented (out of scope for this PR).

Resolves the dependency-direction question raised when sketching §3.3:
llm4s already depends on termflow for samples, so hosting an
llm4s-backed chat demo here would create a sibling cycle that bites at
release time even if the published-artifact graph stays acyclic.

§3.3 now describes the app shape (Layout.Border shell, Cmd.asyncResult
streaming, Dialogs.confirm tool gating, mouse-wheel scrollback,
RequestAttention) and records that the source lives in llm4s with a
screenshot + link from termflow's README. §3.6 DoD updated. Recent
decisions log gets a one-liner with the rationale.
@rorygraves
rorygraves merged commit b777f01 into main Apr 30, 2026
4 checks passed
rorygraves added a commit that referenced this pull request Apr 30, 2026
Adds docs/contrib/KILLER_DEMO_SPEC.md — a self-contained design doc
for the streaming chat-client demo that the llm4s team will implement
against a 1.0-RC of termflow. Covers context and ownership, goals and
non-goals, UI sketch, full keybinding + slash-command surface, Model
and Msg shape, layout (Border + toBudgetedRootNode), streaming token
pipeline (Cmd.asyncResult + Sub.Every pump), tool-call flow with
Dialogs.confirm gating, termflow API surface checklist with file refs,
llm4s API placeholder, acceptance criteria mirroring §3.6, recommended
file layout, testing strategy with TuiTestDriver + a stub LlmClient,
and a list of open questions for the implementer to resolve in their
PR.

ROADMAP §3.3 gains a closing paragraph that points at the spec; the
existing prose (host-in-llm4s rationale, app shape sketch, slash
commands, coordination notes — landed via #194) is unchanged. The
spec is registered in docs/SUMMARY.md so it builds with the docs site.
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