Capture the chat session that was previously reconstructed - #44
Merged
Conversation
Every terminal image in the documentation was real captured output except the one showing the feature the project is built around. chat.svg was reconstructed from the literal strings in ChatCommand.cs, because the REPL refuses to start without an interactive terminal and so cannot be piped to a file. That was disclosed in generate.py's docstring -- a place nobody reads -- while the image itself carried no caveat. It is now a real session, captured by copying the terminal buffer of a live run against the Azure workspace on 2026-08-06, with the workspace's identifiers replaced by the synthetic ones the other transcripts use. Capturing it verified three things that had never been observed end to end: the REPL starts and answers against a live Agent, a follow-up keeps its context -- "and break that down by quarter" re-grouped the same figures without restating them -- and /sql prints the query behind the follow-up rather than the first question. That follow-up is the behaviour the README argues the project exists for, and until now nothing had watched it work. Substituting the table name shortens the line inside a box-drawing border, so the displaced padding has to be restored or the box renders ragged. That had already happened once and shipped: ask.svg's FROM line has been short since its own identifier substitution. Both are fixed, and generate.py now warns the next person. The image is wider than the others because the session was captured at a 152-column terminal. It is embedded at a width that keeps it readable; a narrower re-capture would match ask.svg's scale more closely, which is polish rather than correction and is not worth a second live session on its own.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Every terminal image in the documentation was real captured output — except the one showing the
feature this project is built around.
chat.svgwas reconstructed from the literal strings inChatCommand.cs, because the REPLrefuses to start without an interactive terminal and cannot be piped to a file. That was disclosed
in
generate.py's docstring, a place nobody reads, while the image itself carried no caveat. In arepository whose entire pitch is labelling what has and has not been verified, it was the one place
the labelling did not reach.
It is now a real session, captured against the live Azure workspace on 2026-08-06 by copying the
terminal buffer, with the workspace's identifiers replaced by the synthetic ones the other
transcripts already use.
What capturing it verified
Three things that had never been observed end to end, now recorded in
docs/compatibility.md:/sql/exitThat follow-up is the behaviour
README.mdargues the project exists for. Until now nothing hadwatched it work — the underlying API call was covered live, the loop around it was not.
ROADMAP.mdlistedchatas one of three v0.1 paths that resist automation, needing a human at aterminal. That one is now struck through and dated; the other two remain.
A defect this exposed
Substituting the table name shortens the line inside a box-drawing border, so the displaced padding
has to be restored or the box renders ragged. That had already happened and shipped:
ask.svg'sFROMline has been short since its own identifier substitution, in an image the README displaystoday. Both are fixed, and
generate.pynow warns whoever does this next.Known cosmetic limitation, stated rather than hidden
The session was captured at a 152-column terminal, so
chat.svgis 1052px wide againstask.svg's791px. It is embedded at a width that keeps it readable, but its text renders smaller than the other
images'. A narrower re-capture would match more closely — that is polish, not correction, and did
not seem worth a second live session on its own.
Verification
229 tests green. All relative links resolve. No workspace identifier appears in any transcript or
generated SVG (checked for the real catalog, schema, table, workspace host and Agent id). Regenerating
is idempotent — running
generate.pytwice produces no further diff.