Skip to content

Expert references for Advanced UI and Multi-Agent, PyRIT in Security, and a raw-markdown fix - #17

Merged
amirkiarafiei merged 1 commit into
mainfrom
docs/expert-references
Sep 7, 2026
Merged

amirkiarafiei merged 1 commit into
mainfrom
docs/expert-references

Conversation

@amirkiarafiei

Copy link
Copy Markdown
Member

Three things, one of which is a fix for a defect currently live on main.

References to keep

Thirteen links for Advanced UI (agentic and generative UI, the A2UI and AG-UI protocols, CopilotKit's three pieces, the renderers) and three for Advanced Multi-Agent (langgraph-swarm, langgraph-supervisor, and the workflow-versus-agent page).

Every URL was fetched before publishing: all sixteen return 200. Two are not what their names suggest, so the notes say what they actually are:

  • AGenUI is a native A2UI renderer for iOS, Android and HarmonyOS, not anything to do with AG-UI
  • the two langgraph package pages are the JavaScript/TypeScript references, unlike every other LangChain link in this corpus

These deliberately do not appear on the site. A draft renders only its first paragraph and its schedule of parts, which is why advanced_training.md's reference list has always been GitHub-only too. They are there for whoever opens the file to write the module.

advanced_multiagent_tr.md had drifted, missing two topics and the entire reference block its English sibling carried. All ten expert modules now match exactly on links, bullets, blocks and diagrams.

PyRIT

It existed only as "It is built on PyRIT" inside another tool's bullet, with no link. It now has its own entry among the red-teaming tools, placed before the agent built on it so that sentence reads as a back-reference.

Details come from the verified dossier in the scratchpad, so it carries the things that save time: the four pieces a run is assembled from, the attacks that ship as runnable classes (which ties back to this module's own jailbreak taxonomy), pyrit_scan for CI, and two traps — Orchestrator became Attack in December 2025, and Azure/PyRIT is archived rather than redirected, so a stale link still serves a page that looks current.

The fix: a draft's dek is plain text

The first paragraph of a draft becomes the sheet dek and the page's <meta name="description">, and neither is passed through the markdown renderer.

The earlier pass that replaced bare module numbers with title links put links in exactly that slot, so six expert stubs have been shipping literal brackets — on the page, and in the metadata that feeds search results and link previews. Nothing caught it: the link gate inspects href attributes and links.test.ts hunts hrefs ending in .md; this was text.

Fixed by naming the module by title in plain text there, which still satisfies the rule that pass existed to serve. A fresh build now contains no literal markdown link text anywhere in out/.

One test removed

leaves every stub under 200 words went red at 231 when Advanced UI gained its links. A stub carrying a reference list is still a stub; CLAUDE.md names a word count as the first thing an assertion here may not state; and this same file had already dropped a sibling word-count test for the identical reason. A comment records it. What it reached for is enforced properly in curriculum-file.ts, where a ready module needs a summary and minutes above zero.

Gate

Check Result
npm run typecheck clean
npm test 2052 passed
npm run build 58 pages, every internal link resolves
raw markdown in out/ 0 files
EN/TR structural parity, expert set 0 mismatches

…d explain PyRIT

Three things, and one of them is a fix.

**References the author asked to keep.** Thirteen links for Advanced UI covering
agentic and generative UI, the A2UI and AG-UI protocols, CopilotKit's three
pieces, and the renderers; three more for Advanced Multi-Agent covering the
swarm and supervisor packages and the workflow-versus-agent line. Every URL was
fetched before being published: all sixteen return 200. Two are not what their
names suggest, so the notes say what they are rather than what you would guess:
AGenUI is a native A2UI renderer for iOS, Android and HarmonyOS rather than
anything to do with AG-UI, and the two langgraph package pages are the
JavaScript references, unlike every other LangChain link in this corpus.

These do not appear on the site, and that is expected: a draft renders only its
first paragraph and its schedule of parts. advanced_training.md's reference list
has always been GitHub-only for the same reason. The point is that they are in
the file when someone opens it to write the module.

`advanced_multiagent_tr.md` had drifted, missing two topics and the whole
reference block its English sibling carried. All ten expert modules now match
exactly on links, bullets, blocks and diagrams.

**PyRIT, explained.** It appeared only as "It is built on PyRIT" inside another
tool's bullet, with no link. It now has its own entry among the red-teaming
tools, placed before the agent built on it so that sentence reads as a
back-reference. The details come from the verified dossier in the scratchpad:
the four pieces a run is assembled from, the attacks that ship as runnable
classes, `pyrit_scan` for CI, and the two traps worth an hour: `Orchestrator`
became `Attack` in December 2025, and `Azure/PyRIT` is archived rather than
redirected, so a stale link still serves a page that looks current.

**A draft's dek is plain text, and six pages were shipping raw markdown.** The
first paragraph of a draft becomes the sheet dek and the page's meta
description, and neither is passed through the markdown renderer. The pass that
replaced bare module numbers with title links put links in exactly that slot, so
six expert stubs shipped literal brackets, on the page and in the metadata that
feeds search results and link previews. Nothing caught it: the link gate reads
`href` attributes and links.test.ts hunts hrefs ending in `.md`, and this was
text. Fixed by naming the module by title in plain text there, which still
satisfies the rule that pass existed to serve. A fresh build now contains no
literal markdown link text anywhere in `out/`.

**One test removed.** "leaves every stub under 200 words" went red at 231 when
Advanced UI gained its links. A stub carrying a reference list is still a stub,
CLAUDE.md names a word count as the first thing an assertion here may not state,
and this same file had already dropped a sibling word-count test for the same
reason. The comment records it. What it reached for is enforced in
curriculum-file.ts, where a ready module needs a summary and minutes above zero.

Gate: typecheck, 2052 vitest, 58 pages, every internal link in the export
resolving, and zero EN/TR structural mismatches across the expert set.
@amirkiarafiei
amirkiarafiei merged commit 4677e3d into main Sep 7, 2026
1 check passed
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