From edbea1395046513333edbb34f1ba96482324f106 Mon Sep 17 00:00:00 2001 From: ancplua Date: Thu, 30 Apr 2026 23:50:08 +0200 Subject: [PATCH] docs(agents): add ecosystem table with repo links, CI checks, dependency graph Co-Authored-By: Claude Opus 4.6 (1M context) --- AGENTS.md | 40 ++++++++++++++++++++++++++++++++++++++++ 1 file changed, 40 insertions(+) diff --git a/AGENTS.md b/AGENTS.md index b011518..4e244ab 100644 --- a/AGENTS.md +++ b/AGENTS.md @@ -122,3 +122,43 @@ src/ ANcpLua.AotReflection/ # AOT reflection source generator ANcpLua.AotReflection.Attributes/ # AOT reflection attribute contracts ``` + +## ANcpLua Ecosystem + +| Repo | Purpose | NuGet | CI checks required | +|---|---|---|---| +| [ANcpLua.NET.Sdk](https://github.com/ANcpLua/ANcpLua.NET.Sdk) | Opinionated MSBuild SDK — standardized defaults, policy enforcement, analyzer injection | [nuget.org](https://www.nuget.org/packages/ANcpLua.NET.Sdk) | `compute_version`, `lint_config`, `test (ubuntu/windows/macos)`, `create_nuget` | +| [ANcpLua.Analyzers](https://github.com/ANcpLua/ANcpLua.Analyzers) | Custom Roslyn analyzers (auto-injected by the SDK) | [nuget.org](https://www.nuget.org/packages/ANcpLua.Analyzers) | `build`, `test (ubuntu/windows/macos)` | +| [ANcpLua.Roslyn.Utilities](https://github.com/ANcpLua/ANcpLua.Roslyn.Utilities) | Source generator utilities, TryParse extensions, polyfills | [nuget.org](https://www.nuget.org/packages/ANcpLua.Roslyn.Utilities) | `build (ubuntu/windows)`, `version` | +| [ANcpLua.Agents](https://github.com/ANcpLua/ANcpLua.Agents) | MAF runtime helpers + agent test infrastructure | [nuget.org](https://www.nuget.org/packages/ANcpLua.Agents) | `build (ubuntu/windows/macos)`, `version` | + +### Branch protection (all 4 repos) + +- PR required to merge into `main` (0 approvals, squash preferred) +- Required status checks must pass (CI jobs listed above) +- Branch must be up-to-date with `main` before merge +- Force push and branch deletion blocked on `main` +- Optional checks (CodeRabbit, GitGuardian, Copilot review, auto-merge) do not block merges + +### Dependency graph + +``` +ANcpLua.NET.Sdk + ├── injects ANcpLua.Analyzers (compile-time) + └── ships Version.props (version truth for all consumers) + +ANcpLua.Analyzers + └── consumes ANcpLua.Roslyn.Utilities.Sources (source-only, internal) + +ANcpLua.Roslyn.Utilities + └── standalone (no first-party deps) + +ANcpLua.Agents + └── standalone (no first-party deps) +``` + +### Release flow + +1. Push to `main` via PR — CI runs, auto-merge bots handle dep bumps +2. Tag `vX.Y.Z` on `main` — publish workflow pushes to NuGet +3. NuGet indexes in ~4-8 minutes — downstream repos pick up via Renovate