feat: full-stack MCP surface — client template, npm CI, 13 repos
- build.py: vendor templates/client into mcp/templates/client with client.json manifest (16 kinds); register drone-npm as a third CI shape (types: pypi/npm/docker); root *.py stale doc numbers fixed - registry.py: registry://client resource + list_client_components / get_client_component / get_client_template tools; build prompt gains the client scaffold step (docs://modules/ui_admin); compliance prompt covers npm packages; drone docs describe all three shapes - repos.json (+mcp): doc-weaver, react-auth, react-openapi (npm Type B, package.json version source), vet (app Type C, VERSION) - docs: 90_drone_pipelines gains Type B npm section; 91_versioning covers package.json as a version source; 94_repository_inventory gains the npm package table and services/apps Type C; lib index updated Verified: bundle regen (24 modules, client 16, drone 3, repos 13); registry client readers exercised against the vendored bundle.
This commit is contained in:
@@ -602,18 +602,27 @@
|
||||
</li>
|
||||
|
||||
<li class="md-nav__item">
|
||||
<a href="#packages-type-a" class="md-nav__link">
|
||||
<a href="#packages-type-a-pypi" class="md-nav__link">
|
||||
<span class="md-ellipsis">
|
||||
Packages (Type A)
|
||||
Packages (Type A — PyPI)
|
||||
</span>
|
||||
</a>
|
||||
|
||||
</li>
|
||||
|
||||
<li class="md-nav__item">
|
||||
<a href="#services-type-b" class="md-nav__link">
|
||||
<a href="#packages-type-b-npm" class="md-nav__link">
|
||||
<span class="md-ellipsis">
|
||||
Services (Type B)
|
||||
Packages (Type B — npm)
|
||||
</span>
|
||||
</a>
|
||||
|
||||
</li>
|
||||
|
||||
<li class="md-nav__item">
|
||||
<a href="#services-apps-type-c" class="md-nav__link">
|
||||
<span class="md-ellipsis">
|
||||
Services & Apps (Type C)
|
||||
</span>
|
||||
</a>
|
||||
|
||||
@@ -667,13 +676,13 @@
|
||||
<p>The canonical list of Aetos repositories covered by the CI and versioning
|
||||
standards, with the artifact each one produces, its version source, and its
|
||||
Drone shape. Every entry maps to the contract in
|
||||
<a href="../91_versioning_and_changelog/">91 – Versioning & Changelog</a> and the two CI
|
||||
<a href="../91_versioning_and_changelog/">91 – Versioning & Changelog</a> and the three CI
|
||||
files in <a href="../90_drone_pipelines/">90 – Drone Pipelines</a>.</p>
|
||||
<p>The same data is published machine-readably as the <code>registry://repos</code> MCP
|
||||
resource (and the <code>list_repos</code> tool), sourced from <code>standards/src/repos.json</code>.
|
||||
Paths are relative to the <code>aetos/</code> workspace root.</p>
|
||||
<hr />
|
||||
<h2 id="packages-type-a">Packages (Type A)</h2>
|
||||
<h2 id="packages-type-a-pypi">Packages (Type A — PyPI)</h2>
|
||||
<p>A wheel + sdist published to the private index. Version source is
|
||||
<code>pyproject.toml</code>; Drone file is <code>python-lib.yaml</code> (tag-triggered).</p>
|
||||
<table>
|
||||
@@ -737,7 +746,41 @@ Paths are relative to the <code>aetos/</code> workspace root.</p>
|
||||
</tbody>
|
||||
</table>
|
||||
<hr />
|
||||
<h2 id="services-type-b">Services (Type B)</h2>
|
||||
<h2 id="packages-type-b-npm">Packages (Type B — npm)</h2>
|
||||
<p>A package published to the private npm registry (<code>npm.aetoskia.com</code>). Version
|
||||
source is <code>package.json</code>; Drone file is <code>npm-lib.yaml</code> (tag-triggered).</p>
|
||||
<table>
|
||||
<thead>
|
||||
<tr>
|
||||
<th>Repo</th>
|
||||
<th>Path</th>
|
||||
<th>Docs</th>
|
||||
<th>MCP server</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
<tr>
|
||||
<td><code>doc-weaver</code></td>
|
||||
<td><code>doc-weaver</code></td>
|
||||
<td>lib, wiki</td>
|
||||
<td><code>doc-weaver:8010</code></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><code>react-auth</code></td>
|
||||
<td><code>react/react-auth</code></td>
|
||||
<td>lib, wiki</td>
|
||||
<td><code>react-auth:8011</code></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><code>react-openapi</code></td>
|
||||
<td><code>react/react-openapi</code></td>
|
||||
<td>lib, wiki</td>
|
||||
<td><code>react-openapi:8012</code></td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
<hr />
|
||||
<h2 id="services-apps-type-c">Services & Apps (Type C)</h2>
|
||||
<p>A container image pushed to the registry and run on the Docker host. Version
|
||||
source is the <code>VERSION</code> file; Drone file is <code>service-docker.yaml</code>.</p>
|
||||
<table>
|
||||
@@ -745,6 +788,7 @@ source is the <code>VERSION</code> file; Drone file is <code>service-docker.yaml
|
||||
<tr>
|
||||
<th>Repo</th>
|
||||
<th>Path</th>
|
||||
<th>Type</th>
|
||||
<th>Trigger</th>
|
||||
<th>Docs</th>
|
||||
</tr>
|
||||
@@ -753,9 +797,17 @@ source is the <code>VERSION</code> file; Drone file is <code>service-docker.yaml
|
||||
<tr>
|
||||
<td><code>auth-server</code></td>
|
||||
<td><code>auth-server</code></td>
|
||||
<td>service</td>
|
||||
<td>tag</td>
|
||||
<td>api, lib, wiki</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><code>vet</code></td>
|
||||
<td><code>react/vet</code></td>
|
||||
<td>app</td>
|
||||
<td>tag</td>
|
||||
<td>lib, wiki</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
<p>Tag-triggered and enforces <code>tag == VERSION</code>.</p>
|
||||
@@ -772,13 +824,19 @@ source is the <code>VERSION</code> file; Drone file is <code>service-docker.yaml
|
||||
</thead>
|
||||
<tbody>
|
||||
<tr>
|
||||
<td>package</td>
|
||||
<td>package (PyPI)</td>
|
||||
<td><code>pyproject.toml</code></td>
|
||||
<td><code>CHANGELOG.md</code></td>
|
||||
<td><code>python-lib.yaml</code></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>service</td>
|
||||
<td>package (npm)</td>
|
||||
<td><code>package.json</code></td>
|
||||
<td><code>CHANGELOG.md</code></td>
|
||||
<td><code>npm-lib.yaml</code></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>service / app</td>
|
||||
<td><code>VERSION</code></td>
|
||||
<td><code>CHANGELOG.md</code></td>
|
||||
<td><code>service-docker.yaml</code></td>
|
||||
|
||||
Reference in New Issue
Block a user