chore: collect auth-server wiki and lib refresh

Picks up the rewritten auth-server wiki (platform anatomy theme) and the
regenerated lib artifacts, including the new pep-typed marker bounce.
This commit is contained in:
2026-09-16 19:51:24 +05:30
parent 7aadae1736
commit a115df113d
12 changed files with 233 additions and 154 deletions

View File

@@ -498,7 +498,7 @@
<li class="md-nav__item">
<a href="#repository-layout" class="md-nav__link">
<span class="md-ellipsis">
Repository layout
📂 Repository layout
</span>
</a>
@@ -507,7 +507,7 @@
<li class="md-nav__item">
<a href="#setup" class="md-nav__link">
<span class="md-ellipsis">
Setup
🔧 Setup
</span>
</a>
@@ -516,7 +516,7 @@
<li class="md-nav__item">
<a href="#tests" class="md-nav__link">
<span class="md-ellipsis">
Tests
🧪 Tests
</span>
</a>
@@ -525,7 +525,7 @@
<li class="md-nav__item">
<a href="#regenerating-the-openapi-spec" class="md-nav__link">
<span class="md-ellipsis">
Regenerating the OpenAPI spec
📜 Regenerating the OpenAPI spec
</span>
</a>
@@ -534,7 +534,16 @@
<li class="md-nav__item">
<a href="#building-documentation-docforge" class="md-nav__link">
<span class="md-ellipsis">
Building documentation (docforge)
📝 Building documentation (docforge)
</span>
</a>
</li>
<li class="md-nav__item">
<a href="#read-next" class="md-nav__link">
<span class="md-ellipsis">
📚 Read Next
</span>
</a>
@@ -564,9 +573,10 @@
<h1 id="development">Development</h1>
<h1 id="development">🛠️ Development</h1>
<p>Working on the auth server itself.</p>
<h2 id="repository-layout">Repository layout</h2>
<hr />
<h2 id="repository-layout">📂 Repository layout</h2>
<table>
<thead>
<tr>
@@ -605,7 +615,8 @@
</tr>
</tbody>
</table>
<h2 id="setup">Setup</h2>
<hr />
<h2 id="setup">🔧 Setup</h2>
<div class="language-bash highlight"><table class="highlighttable"><tr><td class="linenos"><div class="linenodiv"><pre><span></span><span class="normal"><a href="#__codelineno-0-1">1</a></span>
<span class="normal"><a href="#__codelineno-0-2">2</a></span></pre></div></td><td class="code"><div><pre><span></span><code><span id="__span-0-1"><a id="__codelineno-0-1" name="__codelineno-0-1"></a>python<span class="w"> </span>-m<span class="w"> </span>venv<span class="w"> </span>.venv
</span><span id="__span-0-2"><a id="__codelineno-0-2" name="__codelineno-0-2"></a>.venv/Scripts/pip<span class="w"> </span>install<span class="w"> </span>-r<span class="w"> </span>requirements.txt
@@ -617,20 +628,23 @@ and the <code>Dockerfile</code>). Core runtime packages:</p>
<li><code>mongo-ops==0.1.3</code> — MongoDB persistence layer</li>
<li><code>fastapi</code>, <code>uvicorn</code>, <code>python-jose</code>, <code>passlib</code>, <code>bcrypt</code>, <code>pymongo</code></li>
</ul>
<h2 id="tests">Tests</h2>
<hr />
<h2 id="tests">🧪 Tests</h2>
<p>Run the suite (no network or Mongo required — an in-memory mock is used):</p>
<div class="language-bash highlight"><table class="highlighttable"><tr><td class="linenos"><div class="linenodiv"><pre><span></span><span class="normal"><a href="#__codelineno-1-1">1</a></span></pre></div></td><td class="code"><div><pre><span></span><code><span id="__span-1-1"><a id="__codelineno-1-1" name="__codelineno-1-1"></a>.venv/Scripts/pytest<span class="w"> </span>--asyncio-mode<span class="o">=</span>auto
</span></code></pre></div></td></tr></table></div>
<p>Coverage spans the full HTTP flow: register → login → wrong-password <code>401</code>
<code>/me</code> with and without a token → stateless logout.</p>
<h2 id="regenerating-the-openapi-spec">Regenerating the OpenAPI spec</h2>
<hr />
<h2 id="regenerating-the-openapi-spec">📜 Regenerating the OpenAPI spec</h2>
<p>The committed <code>docs/api/openapi.json</code> is produced offline:</p>
<div class="language-bash highlight"><table class="highlighttable"><tr><td class="linenos"><div class="linenodiv"><pre><span></span><span class="normal"><a href="#__codelineno-2-1">1</a></span>
<span class="normal"><a href="#__codelineno-2-2">2</a></span></pre></div></td><td class="code"><div><pre><span></span><code><span id="__span-2-1"><a id="__codelineno-2-1" name="__codelineno-2-1"></a><span class="nb">set</span><span class="w"> </span><span class="nv">MONGO_HOST</span><span class="o">=</span><span class="m">127</span>.0.0.1
</span><span id="__span-2-2"><a id="__codelineno-2-2" name="__codelineno-2-2"></a>python<span class="w"> </span>generate_spec.py
</span></code></pre></div></td></tr></table></div>
<p><code>MONGO_HOST</code> only needs to be set for the import; no connection is opened.</p>
<h2 id="building-documentation-docforge">Building documentation (docforge)</h2>
<hr />
<h2 id="building-documentation-docforge">📝 Building documentation (docforge)</h2>
<p>The site is generated by <a href="https://git.aetoskia.com/aetos/doc-forge"><code>docforge</code></a>
and served per kind under <code>site/{kind}</code>:</p>
<div class="language-bash highlight"><table class="highlighttable"><tr><td class="linenos"><div class="linenodiv"><pre><span></span><span class="normal"><a href="#__codelineno-3-1">1</a></span>
@@ -640,15 +654,21 @@ and served per kind under <code>site/{kind}</code>:</p>
<span class="normal"><a href="#__codelineno-3-5">5</a></span></pre></div></td><td class="code"><div><pre><span></span><code><span id="__span-3-1"><a id="__codelineno-3-1" name="__codelineno-3-1"></a>doc-forge<span class="w"> </span>build<span class="w"> </span><span class="se">\</span>
</span><span id="__span-3-2"><a id="__codelineno-3-2" name="__codelineno-3-2"></a><span class="w"> </span>--api<span class="w"> </span>--openapi-spec<span class="w"> </span>docs/api/openapi.json<span class="w"> </span><span class="se">\</span>
</span><span id="__span-3-3"><a id="__codelineno-3-3" name="__codelineno-3-3"></a><span class="w"> </span>--mkdocs<span class="w"> </span>--wiki<span class="w"> </span><span class="se">\</span>
</span><span id="__span-3-4"><a id="__codelineno-3-4" name="__codelineno-3-4"></a><span class="w"> </span>--module-is-source<span class="w"> </span>--module<span class="w"> </span>jwt<span class="w"> </span><span class="se">\</span>
</span><span id="__span-3-4"><a id="__codelineno-3-4" name="__codelineno-3-4"></a><span class="w"> </span>--module<span class="w"> </span>jwt<span class="w"> </span><span class="se">\</span>
</span><span id="__span-3-5"><a id="__codelineno-3-5" name="__codelineno-3-5"></a><span class="w"> </span>--site-name<span class="w"> </span><span class="s2">&quot;Aetoskia Auth Server&quot;</span>
</span></code></pre></div></td></tr></table></div>
<ul>
<li><code>--api</code> renders <code>openapi.json</code> with Swagger UI.</li>
<li><code>--mkdocs</code> renders the library reference from <code>jwt</code> docstrings.</li>
<li><code>--mkdocs</code> renders the library reference from the <code>jwt</code> package docstrings
(nested under <code>docs/lib/jwt/</code>, matching <code>docforge.nav.yml</code>).</li>
<li><code>--wiki</code> builds this wiki.</li>
<li>Navigation layout is defined in <code>docforge.nav.yml</code>.</li>
</ul>
<blockquote>
<p>The <code>jwt</code> module is rendered <strong>without</strong> <code>--module-is-source</code> so the library
output stays nested under <code>docs/lib/jwt/</code>, matching the committed
<code>docs/mkdocs.lib.yml</code> nav.</p>
</blockquote>
<p>Preview locally:</p>
<div class="language-bash highlight"><table class="highlighttable"><tr><td class="linenos"><div class="linenodiv"><pre><span></span><span class="normal"><a href="#__codelineno-4-1">1</a></span>
<span class="normal"><a href="#__codelineno-4-2">2</a></span>
@@ -657,6 +677,11 @@ and served per kind under <code>site/{kind}</code>:</p>
</span><span id="__span-4-3"><a id="__codelineno-4-3" name="__codelineno-4-3"></a>doc-forge<span class="w"> </span>serve<span class="w"> </span>--wiki
</span></code></pre></div></td></tr></table></div>
<hr />
<h2 id="read-next">📚 Read Next</h2>
<ul>
<li><a href="../04_deployment/">Deployment</a> — environment and CI/CD.</li>
<li><a href="../02_how_to_use/">How to Use</a> — exercising the service end to end.</li>
</ul>