Add /go/ permalinks for the AgenTrust agentic control set - #39
Merged
Conversation
OpenCRE's CONTRIBUTING.md calls the automated linking method preferred because it is self-maintaining: a standard puts opencre.org/cre/<id> references into its own text, and OpenCRE reads the source to build the reciprocal link. Doing that needs one public page carrying the control set with a stable anchor per control. This adds it. The four specs are organized by problem and architecture, so no per-control section existed to link to. /go/ is that surface: 30 controls, one requirement sentence each, 62 links into 53 existing Common Requirements. It proposes no new CREs, which follows the rule Rob van der Veer set on OWASP/OpenCRE#1045: OpenCRE organizes requirements that standards state, it does not state them. - go/index.html, the control set, grouped into six families - go/<slug>/index.html x30, permalinks that redirect to the anchor so a later restructure changes the target and not the cited URL - data/agentic-controls.json, the source of truth the page is generated from - sitemap.xml and llms.txt entries, since neither picks up a new directory on its own Fourteen of the thirty control names carry the AGT ACS enforcement point they apply at. That is Rob's suggestion for making loop placement visible without amending the OpenCRE taxonomy, since a linked standard's control names are displayed as-is. The generator currently lives outside this repo. Porting it to scripts/ with a --check job, following the render-adoption.mjs pattern, is the follow-up. Refs: agentrust-io/trace-spec#213, OWASP/OpenCRE#1045 Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_011bK4o12bqYuPW4U1YTUzut
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.
Why
OpenCRE's CONTRIBUTING.md calls the automated linking method the preferred one, because it is self-maintaining:
We committed to that method on OWASP/OpenCRE#1045. It needs one public page carrying the control set with a stable anchor per control. There wasn't one:
trace-spec,cmcp,ca2aandagent-manifestare all organized by problem and architecture, so no per-control section existed to point at. This adds the surface.What
go/index.htmlgo/<slug>/index.htmldata/agentic-controls.jsonsitemap.xml,llms.txtIt proposes no new CREs. That follows the rule Rob van der Veer set on OWASP/OpenCRE#1045: OpenCRE organizes requirements that standards state, it does not state them. The first pass proposed 19 new CREs; applied against that rule, all 19 collapsed into links.
Fourteen of the thirty control names carry the AGT ACS enforcement point they apply at (
agent_startup,pre_tool_call,output, and so on). That is Rob's own suggestion for making loop placement visible without amending the OpenCRE taxonomy, since a linked standard's control names are displayed as-is. The other sixteen have no single point and are unmarked rather than forced.Decisions worth a second opinion
owaspai.org/go/<slug>/. If we later split the controls into their own pages, the cited URL does not change, only the redirect target. That durability is the whole argument in docs: stable per-primitive anchors so external standards can deep link (OpenCRE prerequisite) trace-spec#213./go/is the document.Checked
sitemap.xmlparsesdesign-system.css?v=10unchanged, so no cache-key churnNot done
The generator lives outside this repo, so the page and
data/agentic-controls.jsoncan drift. Porting it toscripts/with a--checkjob, following therender-adoption.mjspattern, is the follow-up.Nothing goes to OpenCRE until these URLs resolve. Refs agentrust-io/trace-spec#213, OWASP/OpenCRE#1045.