From 173f4282e9b8a7850aaad27f3967d38d50307a29 Mon Sep 17 00:00:00 2001 From: yuandonghao Date: Tue, 4 Aug 2026 10:51:02 +0800 Subject: [PATCH] =?UTF-8?q?docs(architecture):=20refine=20=C2=A74=20Other?= =?UTF-8?q?=20bucket=20into=20Media,=20System,=20and=20residual=20flat?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Updates the Route Ownership Map (§4) to break the 23-file catch-all Other bucket into clearer groupings: - **Media** (new): tts + stt — parallel audio I/O with dedicated service packages (services/tts/, services/stt/) - **System / Admin** (new): backup + diagnostics + workspace — operator-only endpoints behind require_admin - **Residual flat**: 9 files with no genuine functional peer stay flat (prefs, upload, hwfit, preset, signature, embedding, emoji, font, personal) Reassigns editor_draft → Gallery and chatgpt_subscription → Auth (both have natural homes in existing domains, no new folder needed). Removes 7 already-migrated shim files from the Other list. Refs #4082 / #4071. No code changes — docs only. --- specs/architecture-runtime-inventory.md | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/specs/architecture-runtime-inventory.md b/specs/architecture-runtime-inventory.md index 5c8e4bc21..e496ea4e1 100644 --- a/specs/architecture-runtime-inventory.md +++ b/specs/architecture-runtime-inventory.md @@ -163,7 +163,16 @@ Routes can be grouped into logical feature domains. Current flat structure obscu | **Research** | `research_routes.py` | — | LOW | | **MCP** | `mcp_routes.py` | — | LOW | | **Notes** | `note_routes.py` | — | LOW | -| **Other** | `prefs_routes.py`, `upload_routes.py`, `vault_routes.py`, `webhook_routes.py`, `workspace_routes.py`, `search_routes.py`, `history_routes.py`, `hwfit_routes.py`, `preset_routes.py`, `signature_routes.py`, `backup_routes.py`, `cleanup_routes.py`, `diagnostics_routes.py`, `embedding_routes.py`, `emoji_routes.py`, `font_routes.py`, `stt_routes.py`, `tts_routes.py`, `compare_routes.py`, `personal_routes.py`, `editor_draft_routes.py`, `admin_wipe_routes.py`, `chatgpt_subscription_routes.py` | 2,000+ | LOW individual, HIGH cumulative | +| **Media** (new) | `tts_routes.py`, `stt_routes.py` | 144 | LOW — parallel audio I/O with dedicated service packages (`services/tts/`, `services/stt/`) | +| **System / Admin** (new) | `backup_routes.py`, `diagnostics_routes.py`, `workspace_routes.py` | 407 | LOW — operator-only endpoints (`require_admin`): backup/restore, health probes, filesystem browser | +| **Other** (residual flat) | `prefs_routes.py`, `upload_routes.py`, `hwfit_routes.py`, `preset_routes.py`, `signature_routes.py`, `embedding_routes.py`, `emoji_routes.py`, `font_routes.py`, `personal_routes.py` | ~2,251 | LOW individual, MEDIUM cumulative — no genuine functional peer; stay flat | + +> **Reassignments into existing domains** (no new folder needed): +> - `editor_draft_routes.py` → **Gallery** (persisted gallery-editor sessions with `GalleryImage` back-reference) +> - `chatgpt_subscription_routes.py` → **Auth** (OAuth device-flow built on `device_flow.py`) +> +> **Files already migrated** to subdirectories (now shims, removed from "Other"): +> vault, webhook, search, history, cleanup, compare, admin_wipe (slices #5780, #5781, #5779, #5090, #5658, #5660, #5659) ---