Skip to content

AI-agent surface: llms-full.txt, robots, agent-rules, self-healing violations - #181

Merged
nightmoose merged 2 commits into
mainfrom
nightly-maintenance-2026-08-23-llm-surface
Aug 23, 2026
Merged

AI-agent surface: llms-full.txt, robots, agent-rules, self-healing violations#181
nightmoose merged 2 commits into
mainfrom
nightly-maintenance-2026-08-23-llm-surface

Conversation

@nightmoose

Copy link
Copy Markdown
Owner

Summary

  • Machine discovery — new llms-full.txt (playbook + all reference docs, one HTTP round-trip), robots.txt with named allows for GPTBot/ClaudeBot/PerplexityBot/Google-Extended/CCBot/anthropic-ai (previously 404), and <link rel="alternate" type="text/markdown"> tags for both LLM surfaces.
  • Playbookllm-integration.md §4 now leads with contractgate deploy-contract; the jq | curl pipeline is a fallback for shells without the CLI. §2 gains a cg infer --from-stdin note. Canonicalised README.md + marketing script on app.datacontractgate.com/llm-integration.md (the marketing root was 308→307→200-hopping).
  • docs/agent-rules/ — drop-in presets for Cursor (.mdc), Windsurf, Copilot, plus a portable AGENT.md and a README index. Zero maintenance cost, gives users a one-line adoption path.
  • Self-healing violationsViolation and BatchRecordViolation grew three optional fields (received, expected, suggestion) marked skip_serializing_if = None, so the wire format is backwards compatible. Populated at every practical check site (type/enum/range/pattern/length/required/date/completeness/freshness/uniqueness/leakage). Documented in docs/v1-ingest-reference.md.

Explicitly not in this PR (deferred, need design discussion):

  • Official MCP server package
  • contractgate codegen (Pydantic / Zod / Serde)

Test plan

  • cargo check --all-targets clean
  • cargo clippy --lib --bins -- -D warnings clean
  • cargo test --lib → 98 passed
  • cargo test --bins → 314 passed
  • dashboard/: npm run type-check clean, next build succeeds and lists /robots.txt in the route table
  • Rendered HTML contains both <link rel="alternate" type="text/markdown" ...> tags with absolute URLs
  • sync-llm-docs.mjs generates a 1307-line llms-full.txt from 6 source docs
  • On deploy: verify curl -sS https://app.datacontractgate.com/llms-full.txt returns 200 with content-type: text/plain
  • On deploy: verify curl -sS https://app.datacontractgate.com/robots.txt returns 200 (was 404)

🤖 Generated with Claude Code

…s, self-healing violations.

- Add llms-full.txt: playbook + all reference docs concatenated, generated by sync-llm-docs.mjs and served with the same text/plain+CORS headers as llms.txt. Large-context agents can ingest in one HTTP round-trip.
- Add dashboard/app/robots.ts: named allows for GPTBot, ClaudeBot, PerplexityBot, Google-Extended, CCBot, anthropic-ai. Previously 404.
- Add <link rel="alternate" type="text/markdown"> tags for both llms.txt and llms-full.txt so agents can auto-discover them.
- docs/agent-rules/: drop-in presets for Cursor (.mdc), Windsurf, Copilot, plus portable AGENT.md and README index.
- llm-integration.md §4 now leads with `contractgate deploy-contract`; the jq|curl pipeline is a fallback for shells without the CLI. §2 gains a `cg infer --from-stdin` note.
- Canonicalise references on app.datacontractgate.com (README, marketing script) — the root domain was 308→307→200-hopping.
- Extend Violation and BatchRecordViolation with optional received/expected/suggestion fields (skip_serializing_if = None, so wire format is backwards compatible). Populated at type/enum/range/pattern/length/required/date/completeness/freshness/uniqueness/leakage sites. Documented in docs/v1-ingest-reference.md.

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
@vercel

vercel Bot commented Aug 23, 2026

Copy link
Copy Markdown

The latest updates on your projects. Learn more about Vercel for GitHub.

Project Deployment Actions Updated (UTC)
contractgate Ready Ready Preview Aug 23, 2026 10:21pm

Request Review

CI's cargo fmt --check failed on one over-length format! in check_uniqueness_batch.
@nightmoose
nightmoose merged commit f6e1f6b into main Aug 23, 2026
20 checks 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