[AAASM-5520] ♻️ (docs): Generate canonical contacts from registry - #64
Merged
Merged
Conversation
Extend the org-profile generator to render bounded contact/security-response regions for SECURITY.md and SUPPORT.md from the merged AAASM-5519 registry, so the .com contact addresses and structured SLAs have one owner and are drift- gated. Publishes intent only: the rendered legacy-alias note states the .dev address still delivers via Cloudflare Email Routing and never claims the .com mailbox is live-sending. Refs AAASM-5520 Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Add BEGIN/END GENERATED regions to SECURITY.md and SUPPORT.md carrying the canonical .com reporting/support addresses and structured SLAs; migrate the profile README security link off the hand-copied .dev literal to point at SECURITY.md. Generated blocks match the generator byte-for-byte (idempotent). Refs AAASM-5520 Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Add SECURITY.md and SUPPORT.md to the drift workflow paths so the new generated contact regions are blocking-validated on every PR/push, and document the new consumers + the intent-only mail note in metadata/README.md. Refs AAASM-5520 Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
…istry Scan finding: CODE_OF_CONDUCT.md routed conduct reports to the legacy security@agent-assembly.dev literal. Wrap it in a BEGIN/END GENERATED region rendering the canonical .com primary, add it to the drift gate, and add a test. Preserves the existing route to the security mailbox. Refs AAASM-5520 Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
|
This was referenced Aug 4, 2026
Merged
Chisanan232
marked this pull request as ready for review
August 4, 2026 08:18
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.




Jira Ticket
Summary
Consumer rollout of the canonical contact/mail/security-policy registry merged in AAASM-5519. This is the primary PR of the AAASM-5520 set and carries the org-wide repository scan report. It extends the existing
generate_org_profile.py(one generator, no second registry) to render bounded contact/SLA regions intoSECURITY.md,SUPPORT.md, andCODE_OF_CONDUCT.md, and migrates the profile-README security link off its hand-copied.devliteral.What is completable now and IS done here: contact generation + drift gates for the in-repo consumers. The only thing not yet true is
.comlive-sending (no Google Workspace tenant;mail_platform.*_status == planned) — this PR explicitly does not claim it. The rendered legacy-alias note states the.devaddress still delivers via Cloudflare Email Routing during the transition.Changes
scripts/generate_org_profile.py: newrender_security_contact_block,render_support_contacts_block,render_conduct_contact_block,_format_sla;build_artifacts()now also emitsSECURITY.md,SUPPORT.md,CODE_OF_CONDUCT.md. New block ids:security_contact,support_contacts,conduct_contact.SECURITY.md/SUPPORT.md/CODE_OF_CONDUCT.md:<!-- BEGIN/END GENERATED -->regions rendering canonicalsecurity@agent-assembly.com/support@agent-assembly.com, structured SLAs (2/5 business days), and the labeled legacy-.devnote. Repo-specific prose (supported versions, disclosure, enforcement) stays hand-authored.profile/README.md: security link no longer embeds a raw address — therepo_tableandinstall_channelsgenerated blocks are byte-identical tomain..github/workflows/org-profile-drift.yml: gate paths extended to the new consumers.scripts/test_contact_schema.py: tests for the new render functions.metadata/README.md: documents the new consumers + intent-only mail note.Cross-repo distribution contract
This repo is the source registry. Downstream repos pin its
registry.jsonto a recorded commit (see each PR). Fail-closed: the generator validates +--checkblocks drift; malformed/leakage-prone input aborts.Repository-wide scan — classification report
Scanned
.github,python-sdk,agent-assembly,horonomy/.github,horonomy/official-websiteforagent-assembly.dev/horonomy.dev/ non-canonical contact literals. Every remaining match is classified below; no unclassified current non-historical contact literal remains..githubmetadata/org-profile.yaml,metadata/generated/registry.json,metadata/README.md*@agent-assembly.dev.devaliases; correct by design.githubscripts/generate_org_profile.py,scripts/test_*.pyagent-assembly.devLEGACY_APEXconstant + schema tests.githubSECURITY.md/SUPPORT.md/CODE_OF_CONDUCT.mdgenerated blockssecurity@…dev(in legacy note only).comis the published primarypython-sdkexamples/basic_usage.py:12gateway.agent-assembly.devagent-assemblyaa-api/**,aa-gateway/**apiVersion: agent-assembly.dev/v1alpha1agent-assemblyinfra/install-endpoint/**,infra/RUNBOOK-domains.md,infra/redirects/**tool.agent-assembly.dev.githubregistry comment says the alternate installer host was retired in AAASM-4931, but this infra still serves it — a registry-vs-infra discrepancy to reconcile (URL contract, not this ticket)agent-assemblydocs/src/adr/0014-*.md:251-252team@…dev,security@…devagent-assemblydesign/*/scrub.jsxsupport@external-vendor.ioagent-assemblyCODE_OF_CONDUCT.md(held PR #1053)security@agent-assembly.devhoronomy/***@horonomy.dev,horonomy.dev.commigration applies)horonomy/.githubCODE_OF_CONDUCT.md:7conduct@horonomy.devDefects found and FIXED here:
.github/CODE_OF_CONDUCT.mdrouted conduct reports to the legacysecurity@agent-assembly.dev— migrated to the canonical.comprimary via a new generated block + drift gate.Held-PR coordination (#1053)
ai-agent-assembly/agent-assemblyPR #1053 (do-not-merge, AAASM-427) introducesCODE_OF_CONDUCT.mdwithsecurity@agent-assembly.devas the enforcement contact. It was not touched. When #1053 is eventually merged, its CoC address must be re-pointed to the canonicalsecurity@agent-assembly.com(ideally via the same generated-block pattern) so it does not reintroduce drift. It also targets basemaster, which is stale vs themaindefault — a separate concern for that PR's owner.Related AAASM-5520 PRs (cross-linked)
ai-agent-assembly/.github— this PRai-agent-assembly/python-sdk— pyproject author email + SECURITY.mdai-agent-assembly/agent-assembly— SECURITY.md + READMEhoronomy/.github— company registry + generator + consumershoronomy/official-website— generated TS company-metadata moduleValidation
python3 scripts/generate_org_profile.py --check→ exit 0 (idempotent;repo_table/install_channelsbyte-identical to main)python3 -m unittest discover -s scripts→ 21 passed.comlive-sending claim; no second registry; no secrets/private-repo names emitted; legacy aliases + historical artifacts preservedReview focus
.comis live).repo_table/install_channelsblocks are unchanged..com).🤖 Generated with Claude Code