docs: accuracy audit of the 89 docs-only pages; fix the example defects the reviews found - #1042
Merged
Conversation
|
The latest updates on your projects. Learn more about Vercel for GitHub. 1 Skipped Deployment
|
Contributor
blove
enabled auto-merge (squash)
September 6, 2026 22:30
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
…on-context claims Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
…er signature, the standard function set, and expand the runtime reference Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
…eclared environment reference, and retire the directory label Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
…ract Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Installation now installs and lists @threadplane/telemetry; introduction and quickstart describe the real recursion, visibility and internal-store behavior; the registry, store, views, events and lifecycle pages document what the code actually does. api/views.mdx and guides/lifecycle.mdx are rewritten. Also fixes the signalStateStore JSDoc example, which omitted the required leading slash on the pointer path. Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
… expansion and pending status Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
…fallback semantics Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Covers LANGGRAPH_THREADS_CONFIG including titleFallback, the Thread mapping, every adapter method, archivedThreads(), refreshOnRunEnd(), and a compiling <chat-thread-list> pairing that uses threadSelected and a consumer-owned thread-id signal. Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
… API pages Custom-transport example now reports created thread ids; error() typed as AgentError; retry()/events$/clientTools added to the neutral table; mock error test asserts signal state instead of a rejection that never happens; telemetry default, factory config, and multi-agent caveat corrected. Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Peer table pins @threadplane/chat exactly and lists @threadplane/telemetry; adds the note on what npm pulls in transitively; FormsModule imported where ngModel is used; ApplicationConfig type imports added; the Python graph is no longer attributed to a repository file it does not match. Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
…FECYCLE threadPersistedAt is derived from history$, not hooked; six of eight derive; classification is the error constructor name, so error()?.kind is the discriminator; the library never provides AGENT_LIFECYCLE; registry must be provided at or above the injector that calls provideAgent(). Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
…rface across the API pages Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
…ph and correct the guides Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
… in getting-started and architecture Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
…ate-management snippets in the concepts pages Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
…rrupt, template and scroll claims Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
…s inert on getting-started Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
…token, markdown override point, adapter contract Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
…uickstart walk-throughs from the shipped examples Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
…e export tables, add page descriptions Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
…zes, drop contractions and first person Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
- durable-execution: the generate node fabricated a user turn from the
plan node's AIMessage. It now carries the newest human message forward
alongside the answer, so the thread holds the real question.
- memory: MemoryState.messages gains an add_messages reducer (the graph
was wiping the transcript every turn), the extraction excerpt is
guaranteed to include the newest human turn, and the module docstring
no longer claims cross-thread persistence for thread state.
- time-travel: Replay and Fork were byte-identical setBranch() calls.
Replay becomes Select (what setBranch does), and Fork now submits with
{ checkpointId } so it actually starts a run from the past checkpoint.
- render/repeat-loops: the Simple List spec declared three literal Text
elements and no repeat at all, so + Add Item changed nothing on screen.
It is now one repeated element over /items, and the e2e adds an item
and asserts the new rendered row.
- chat/debug: the page mounted only the devtools dock, with no composer,
so no run could be started. It now composes <chat> beside <chat-debug>.
- chat/threads: archiving was one-way because the Unarchive action is
built only for a list in archived mode. A second, archived-mode list
renders when archived threads exist.
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Sixteen prompt/code contradictions, plus eleven orphans:
- render/state-management: get(path) returns a value, not a Signal, and
update() takes a Record of path->value, not a callback.
- render/registry: the accessor is getEntry(name), not get(type).
- render/repeat-loops: RepeatScope fields are item/index/basePath, not
repeatItem/repeatIndex/repeatBasePath; adds the $item/$index forms.
- render/spec-rendering: a spec is { root, elements } with capitalized
registered type names and children as element KEYS, not a nested
{ type, props, children } tree.
- client-tools (langgraph and ag-ui): "three client tools" then listed
five; five are registered.
- generative-ui and ag-ui/json-render: the residual "raw JSON only, no
code fences" rule predates the render_spec tool — the spec now travels
as that tool's arguments.
- chat/{debug,input,messages,theming,threads,timeline}: dropped the
"10 US airports and 4 airlines" note; those graphs bind no tools and
have no aviation dataset. It stays only where it is true.
- runtimes/aws-strands: the build spec forbade the very subagent
delegation the backend ships; it now describes research_availability,
the tool-less specialist, and why the native multi-agent routes are
avoided.
- chat/a2ui and ag-ui/a2ui: these are published assets, not runtime
prompts (both graphs use inline structured-output templates), so they
now document how the graph routes and wraps envelopes itself.
- deleted eleven orphaned prompts under langgraph/streaming/python that
nothing loads, references in promptAssetPaths, or ships in a
descriptor; only streaming.md is wired.
deployments/ag-ui-dev/deps regenerated with
scripts/generate-ag-ui-deployment-config.ts.
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
…ot exist serve-example.ts unconditionally ran `npx nx serve cockpit --port 4201`; there is no `cockpit` project in the workspace, so every invocation printed a failing child and advertised a port that never answered. The script now starts the Angular example and, when the capability declares a pythonDir, its backend — nothing else. COCKPIT_RUNTIME_ENV existed only to configure that child and is gone with it. Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
… defects - langgraph/guides/durable-execution: the generate node no longer fabricates a user turn, so the page says what it now carries forward and what the thread holds afterwards. - langgraph/guides/time-travel: Replay is now Select, and Fork actually submits from the checkpoint, so the demo walkthrough, the handler section, and the callout describe two distinct behaviors. - langgraph/guides/memory: the demo now declares add_messages, so the short-term memory paragraph states it rather than describing it in the abstract. - render/guides/repeat-loops: Simple List is a real repeat now, so the walkthrough, the callout, and the two conditional sentences say that adding an item adds a rendered row. - chat/components/chat-debug: the demo composes chat beside the dock, so the page drops the missing-composer framing; the graph binds no tools, so the prompt description no longer claims an aviation dataset. - chat/guides/thread-routing: the demo renders a second archived-mode list, so archive is a round trip and the menu callout says which list offers Unarchive. Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
… MultipleChoice claim Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
blove
force-pushed
the
blove/docs-accuracy-audit
branch
from
September 6, 2026 22:30
728de70 to
2ddba0f
Compare
Contributor
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.
Accuracy audit of the 89 docs pages the example-first program never reviewed (every page without a running example), plus the example-app defects those reviews surfaced. Nine read-only factual reviewers audited each page against
libs/,packages/, andcockpit/source; nine fix agents applied the findings, re-verifying each cited source line before changing the page. Roughly 160 wrong or stale claims corrected; about 60 pages gained adescriptionfrontmatter; everyCard icon=(rendered as literal text) and contraction removed.Pages rewritten from source (the old page's organizing premise was wrong):
a2ui/reference/parser-resolver-guards(now covers the function registry),ag-ui/api/provide-agent(both overloads, last-ref-wins rule), the backend half ofag-ui/guides/custom-events(adispatch_custom_eventis the path that reachescustomEvents()underag-ui-langgraph;get_stream_writeris dropped),chat/components/chat-select(menu is portaled to a body-level container;panelClassis the styling seam), the API section ofchat/components/chat,chat/getting-started/changelog(was at 0.0.52; now through 0.0.66 from tags),langgraph/api/langgraph-threads-adapter(its only example had three compile errors),langgraph/guides/testing(every spec fence was executed in a temporary vitest file before publishing),render/api/views(theui-field detection section did not describe anything real),render/guides/lifecycle, and the walk-through sections of the three runtime quickstarts (prompts now match the shipped welcome suggestions).Highest-impact corrections:
error()isAgentError | undefined(documented asunknownorHttpErrorResponseon six pages);retry()restored to every contract table;provideChat()/CHAT_CONFIGis read by no library component (three pages presented it as required setup); the app-wideMARKDOWN_VIEW_REGISTRYoverride cannot work (section deleted, CHANGELOG corrected);<chat>renders no interrupt banner; the middleware quickstart skeleton could not compile (routing to atoolsnode that the state channel forbids in LangGraph JS — docs now useserver_toolswithtoolsNode); peer tables now carry exact pins and the missing@threadplane/telemetry; runtime quickstarts state Python 3.12 / Node 22;CHAT_LIFECYCLEis component-scoped;signalStateStorepaths need the leading slash (JSDoc fixed too).Example apps fixed (
cockpit/**): durable-executiongenerateno longer fabricates a user turn from the plan node; time-travel Fork now submits{ checkpointId }(Replay renamed Select, since it only moved a pointer); memory graph gainsadd_messagesand a thread-scoped docstring; repeat-loops finally emits arepeat(its e2e now adds an item and asserts a rendered row); chat/debug mounts<chat>beside the dock so a run is possible; threads renders an archived list sounarchiveis reachable; aws-strands and spec-rendering prompts describe what the code does. Sixteen prompt/graph mismatches corrected (six prompts claimed an aviation dataset their graphs never bind); eleven orphaned prompt files underlanggraph/streamingdeleted after a repo-wide reference check.scripts/examples/serve-example.tsno longer spawns the retiredcockpitproject. Deployment mirrors regenerated;api-docs.jsonregenerated after the JSDoc fixes inlibs/a2uiandlibs/render.Library defects the docs now describe truthfully (follow-up candidates, not changed here):
CHAT_CONFIG/provideChat()is dead weight: nothing readsavatarLabel/assistantName.MARKDOWN_VIEW_REGISTRYis always shadowed by<chat-streaming-md>'s own provider;<chat>does not forward[viewRegistry].clientToolsRouter()/routeAfterAgent()defaulttoolsNodeto'tools', which LangGraph JS rejects as a node name whenclientToolsChannel()is in the state.AGENT_LIFECYCLEis exported but never provided;streamErrorAt().classificationis always'AgentError';AgentLifecycleRegistryregistration is construction-ordered.injectAgent()silently resolves the last ref when severalprovideAgent(ref, …)share an injector (both adapters).FakeAgent'sscriptoption is constructor-only, unreachable throughprovideFakeAgent().get_stream_writeroutput is silently dropped underag-ui-langgraph.Agent.interruptis optional, soagent.interrupt()fails understrictNullChecks; example apps build withstrict: false.MockAgentTransport.emit()cannot be awaited; every spec hand-rolls a macrotask flush.ContentTypehas a'mixed'member the classifier never produces;messageContent()is typed against LangChainBaseMessagewhile consumers holdMessage.parsePointerdrops segment 0 without validating the slash; element-scope lifecycle events gate on an undeclaredlifecyclefield;stateChangehardcodespath: '/';ActionBinding.confirm/onSuccess/onError/preventDefaultare never read;paramsare spread unresolved;visibleis skipped on repeating elements.chat-popuplauncher position is hard-coded rather than tokenized.Verification: website unit suite 1290/1290;
nx run-many -t test,lintfor scripts, a2ui, render, chat, langgraph, cockpit-registry all green; both deployment generators andgenerate-api-docsshow no drift; production build renders every docs page (include counts equal tag counts on the six re-edited example pages); touched example apps build and their e2e suites pass (durable-execution, time-travel, memory, repeat-loops, threads);nx e2e website124 passed.🤖 Generated with Claude Code