Commit Graph

101 Commits

Author SHA1 Message Date
0cb35d10a6 Phase 7: serve the vet sample from the template tools and docs
- build.py: _TEMPLATE_COMPONENTS rewritten around the vet sample (53 kinds —
  per-resource slices, jobs, worked appointment_reminder family, tests);
  seed tokens dropped from the manifest ('sample: vet' instead)
- registry.py: get_app_component(kind) no longer renames item/example seeds;
  prompts and tool docs updated to 'copy a slice and adapt'
- templates/README.md, 01_build_recipe, 40_ui_admin, wiki/03 updated off the
  old seed scheme; repo inventory/config now exclude vet (docs move under
  standards; react/vet itself is deleted in a later phase)
- regenerated MCP bundle, vendored templates, and site output
2026-10-20 14:58:17 +05:30
56aa1322fb Phase 6: replace app template with the vet sample domain + jobs slice, pipelines and worker
- templates/app now carries the vet server (parents/pets/treatments/vets/appointments)
- added domain/jobs slice with /jobs OpenAPI paths and Job schema (x- extensions)
- added pipelines/shared scaffold (loader, ports, registry) and the
  appointment_reminder family; worker.py dispatches jobs by kind
- wired init.py, config.py worker knobs, .env.example, docker-compose worker
- unit tests for jobs routes, the pipeline family and worker dispatch (12 passing)
2026-10-20 14:49:10 +05:30
6f6f0d6e6d chore: refresh collected sites — adopt vet, sync react-openapi bundle
collect.py run: adds the vet reference app (TypeDoc lib site + doc-weaver
MCP bundle), picks up the refreshed react-openapi specExtensions module from
Phase 1, and re-renders the docs homepage.
2026-10-20 13:00:11 +05:30
164aa413da feat: adopt vet as the full-stack reference app in the docs hub
Add react/vet (section: apps) serving its TypeDoc lib site and the
doc-weaver MCP bundle (docs/mcp, port 8013) alongside react-auth,
react-openapi and doc-weaver.
2026-10-20 12:03:34 +05:30
d7c344c9aa 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.
2026-10-20 12:02:31 +05:30
406affcfcf feat: renumber lib reference into 4-pillar anatomy
Renumber the 15 reference docs into pillar groups (recipe -> anatomy):
- 01 Build Recipe (entry), 02 Composition Root
- domains: 10 Layering Rules
- contract: 20 Spec-First Routing, 21 CRUD Template, 22 Auth Integration
- interfaces/infra: 30 Infra Adapters
- UI: 40 UI: Auto-Rendered Admin & Custom Pages (new; @aetoskia packages,
  client template, x- catalog via react-openapi MCP module)
- pipelines: 50 Pipeline Scaffold, 51 Worker & Progress, 52 Human-in-the-Loop
- delivery/meta: 90 Drone Pipelines, 91 Versioning & Changelog,
  92 Genericity Matrix, 93 Library Registry, 94 Repository Inventory

MCP module names are unchanged (NN_ prefix stripped); all cross-references
(wiki, templates, hooks, registry) updated; lib index rewritten pillar-first;
build recipe bootstraps the client template. Bundle + HTML sites regenerated.
2026-10-19 17:42:55 +05:30
e88005d936 feat: upgrade app template server from vet reference
- integer-id persistence: memory (default, zero-dep) + mongo_int repos
  selected by REPO_BACKEND via create_repo factory
- interfaces/_common.py: shared svc/dump/paginate/expand_ref/read_or_404
  helpers; item/job routes rebuilt on them (paginated {total,items} lists,
  PUT replace, 204 deletes, int path ids)
- interfaces/system: /health liveness probe (public)
- openapi.yaml rewritten to 3.1.0 with x- extensions on Item/Job
  (x-resource, x-primary-key, x-display-format, x-list-columns, x-label,
  x-order, x-hidden, x-filterable, x-sortable, x-autocomplete), auth-server
  x-* securityScheme wiring, shared error responses
- config/init/main: REPO_BACKEND knob, load_dotenv before spec build
Verified: 7/7 tests pass; live smoke test (/health ok, 401 without token)
2026-10-19 17:06:47 +05:30
ee954431cc feat: add client template (React admin + auth shell)
Generalized from the vet reference client:
- @aetoskia/react-auth + @aetoskia/react-openapi from npm.aetoskia.com
  (.npmrc), no local aliases
- generic Home (resource cards + live preview table), Header, Footer
- AppTheme/shared-theme with MUI v5 type shims
- VITE_API_BASE_URL / VITE_AUTH_BASE_URL env wiring
Verified: tsc --noEmit + vite build pass against built @aetoskia packages.
2026-10-19 16:55:08 +05:30
86243dbfff feat: add npm-lib Drone template for private npm publishing 2026-10-19 15:46:02 +05:30
854c23651e remove vet from docs hub and all files
Some checks reported errors
continuous-integration/drone/push Build was killed
2026-10-19 14:33:46 +05:30
bd6fca43aa docs: add react-auth, react-openapi, vet sites; update standards registry and MCP setup 2026-10-19 13:47:00 +05:30
a4f428b451 added favicon
All checks were successful
continuous-integration/drone/push Build is passing
2026-10-18 12:55:38 +05:30
a67edf4175 docs(standards): add MCP setup page covering all clients and servers
All checks were successful
continuous-integration/drone/push Build is passing
New wiki page documents the ten per-repo MCP servers (standards + libraries, ports 8001-8010) and per-client config for Claude Code, Codex, Antigravity, OpenCode, and PyCharm, each with linked localhost / mcp.aetoskia.com tabs.
2026-10-18 12:41:42 +05:30
4e310ae74d drone 8010 deployment
All checks were successful
continuous-integration/drone/push Build is passing
2026-10-18 00:00:13 +05:30
12a2493c6c doc-weaver init and cross wiki-lib links fixes
Some checks reported errors
continuous-integration/drone/push Build was killed
2026-10-17 23:59:31 +05:30
1af4fee63f docs: re-collect wiki sites (doc-forge, openapi-first)
All checks were successful
continuous-integration/drone/push Build is passing
Reflect rebuilt consumer wikis in the hub: doc-forge gains the MkDocs cross-kind link notes; openapi-first gains the codegen --template-style content. Purely cosmetic (toolchain escaping) and sitemap mtime deltas were left out.
2026-10-17 17:26:55 +05:30
a1b74e5086 docs(standards): rebase cross-kind wiki links via MkDocs hook
The standards wiki links to the sibling library reference with ../lib/... paths. Add src/hooks.py and enable it in mkdocs.wiki.yml so those links climb to the repo root and resolve to /standards/lib/... under directory URLs.
2026-10-17 17:22:37 +05:30
f2f09cf2c9 fixes
All checks were successful
continuous-integration/drone/push Build is passing
2026-10-17 04:41:34 +05:30
3092dab3c7 fix(standards): correct service-docker quality gate to use the private index
Authenticate the quality-gate pip install with the private index URL (scheme-stripped AUTH_URL, --index-url/--extra-index-url) instead of the broken --extra-index-url form, and guard against missing PIP_* secrets. Also drop the fetch-tags inline comments. Regenerated the mcp copy from src.
2026-10-17 04:38:44 +05:30
41135ea7e6 fix(standards): drop Drone template header comments; fix python-lib quality-gate auth 2026-10-17 04:25:58 +05:30
104bf3eb1e feat(standards): drop the site CI variant + require changelog reconciliation before release
- Remove the push-triggered build-and-deploy-site pipeline and every "site"
  reference; Type B is now a single tag-triggered service pipeline
  (service-docker.yaml).
- Inventory now covers packages + the auth-server service only (repos.json
  11 -> 9; docs/mcp are no longer part of the standard).
- Versioning standard: reconcile [Unreleased] against the last tag before
  promoting, and always show proposed entries to the user for approval.
- Update registry.py compliance/release text and list_repos types, build.py
  component descriptions, and rebuild the MCP bundle + lib/wiki HTML.
2026-10-17 00:41:52 +05:30
e33a6d6704 feat(standards): serve service version-wiring rule + bundle wiki pages in MCP
Versioning standard now states services must read their VERSION (e.g. a build arg) rather than hardcoding it; the compliance prompt repeats it. build_bundle also bundles src/wiki/** as wiki_-prefixed modules (e.g. docs://modules/wiki_development_releasing), so the release runbook is reachable from the MCP. Bundle grows to 22 modules.
2026-10-15 18:50:03 +05:30
5971f26c08 feat(standards): MR-based tag strategy + repository inventory (registry://repos)
Versioning standard now documents the MR flow: bump pyproject.toml/VERSION and promote CHANGELOG in the MR (referencing the version/tag, not a commit id), merge/squash, then tag the resulting commit. Adds the agent-assisted tagging procedure (wait for the go-ahead, find the version-bump commit, tag only it, ask the user to push) to both the reference page and the releasing wiki runbook. Adds the repo inventory (src/repos.json -> mcp/repos.json), the registry://repos resource + list_repos tool, the 15_repository_inventory lib page, and two MCP prompts: compliance (remediate repos) and release (agent tagging).
2026-10-15 14:39:21 +05:30
df03f41771 docs(standards): rebuild lib + wiki HTML for versioning/changelog and drone pages 2026-10-15 14:21:50 +05:30
8cc9631fe7 feat(standards): add versioning + changelog standard, release templates, and Drone version guard
Add lib page 11 (SemVer contract, pre-1.0 rule, tag==version invariant, Keep a Changelog), the releasing wiki runbook, and canonical release templates (CHANGELOG.md, VERSION). Vendor them into the MCP bundle as templates/release + release.json and expose registry://release with list/get tools. Add a changelog component to the app template. Enforce the tag<->version contract in both Drone shapes: Type A check-version and the backfill loop verify pyproject version; Type B adds a VERSION guard step.
2026-10-15 01:24:25 +05:30
a754366901 feat(standards): add Drone CI standard (PyPI package + Docker deployment)
Document the two `.drone.yml` shapes used across the org, derived from the
repos:

- Type A `python-lib.yaml`: build-and-publish-pypi + backfill-pypi-from-tags
- Type B `service-docker.yaml`: build-and-deploy-service + build-and-deploy-site

- add reference page `10_drone_pipelines`
- vendor `src/templates/drone/` into the MCP bundle (`drone.json`)
- expose `registry://drone` + `list_drone_templates` / `get_drone_template`
- wire `build.py` to vendor drone templates; rebuild nav/index (14 modules)
2026-10-15 00:52:38 +05:30
18d52bdb7c feat(standards): integrate auth-server via pinned spec (docs://spec) + auth recipe and template slice
- serve the pinned auth-server OpenAPI contract as the standards MCP resource docs://spec (no auth-server MCP bundle)
- add Auth Integration recipe (14) and wire it into the registry, prompts, index, and nav
- un-defer Auth Server in the library registry (spec/recipe pointers)
- ship the opt-in template auth slice: interfaces/auth/ (placeholder + mergeable bearerAuth security.yaml) and AUTH_SERVER/JWT_SERVER env
- rebuild bundle (13 modules, 44 components); template stays authless by default
2026-10-14 16:18:14 +05:30
6c0d859a1e feat(standards): fix F11-F16 and rebuild bundle (43 components) + trial findings
- F11 PopulateRule field_name/collection_name corrections
- F12 service adaptor update handles PopulatingRepository
- F13 nested-references section; F14 authless /users/me guidance
- F15 template ruff-clean; F16 stop vendoring .ruff_cache, ship .gitignore
- document --template-style in build_recipe/spec_first_routing; refresh collected
  openapi-first + standards bundle (12 modules, 43 components)
- add trial.md and trial_findings.md (F1-F16, re-trial A/B evidence)
2026-10-13 19:35:12 +05:30
fced40af59 feat(standards): codify codegen, ship generic Tier-B infra, add get_app_template + prompts; fix docs:// regressions
P0: fix doc:// -> docs:// across standards src/server/registry and regenerate stale mongo-ops bundle. P1: build recipe + spec-first routing now document the openapi-first codegen fast path (models/routes with --inject-request/--package). P4: CRUD template documents the model-vs-document id rule (BaseDocument owns id). P5: authless guidance (omit security keys). P6: template gains generic infra (http_cache, keyed SSE bus, KV port+in-memory+Redis), interfaces/openapi.py + .dockerignore + generic build test registered as components, and a get_app_template tool; genericity matrix marks LLM pool + human-in-loop as reference-app patterns. P7: intake/build/start_app/trial prompts. P8: template ships tests/integration/test_openapi_app_builds.py. Rebuilt standards + openapi-first bundles and re-collected.
2026-10-13 03:26:51 +05:30
ef951a1913 use docs:// instead of doc:// to maintain parity with other mcp docs 2026-10-12 22:22:09 +05:30
e15864f82f build(standards): rebuild bundle and collect docs (build_recipe module, start-an-app page) 2026-10-12 21:31:38 +05:30
3e5905eacb docs(standards): move build recipe into the MCP bundle; add Start an App entry point 2026-10-12 21:26:40 +05:30
2d1278911c docs(standards): vendor template into MCP bundle; add component tools + start_app prompt 2026-10-12 21:24:10 +05:30
715bfd8022 docs(standards): document internal-library bootstrap; wire private index into template Dockerfile 2026-10-12 21:20:38 +05:30
52b4d76d93 docs(standards): add reusable Tier-B template scaffolds (pipeline family, shared loader/registry, converters, scripts) 2026-10-12 21:08:19 +05:30
99fac53c2b docs(standards): split genericity matrix and infra adapters into Tier A/B/C 2026-10-12 21:06:35 +05:30
9390839d9b docs(standards): assign Hexa MCP port 8008; mark Auth Server deferred 2026-10-12 21:05:34 +05:30
7d1694148a docs(standards): align layering docs with the port seam; split runtime vs wiring diagrams 2026-10-12 13:15:35 +05:30
8a10c4768c docs(standards): horizontal nav tabs; top-to-bottom component diagram
- mkdocs.wiki.yml: enable navigation.tabs, toc.integrate, header.autohide

- 02_components.md: flowchart TB with increased rank spacing for clarity
2026-10-12 12:35:35 +05:30
06ff5bce6e docs(standards): mirror doc-forge wiki style; mermaid + copyable build prompt
- move templates into src/templates; renumber wiki pages; add app-components page

- embed agentic build prompt as a copyable markdown block; add mermaid diagrams

- build.py writes <name>/mcp; config static bundle -> standards/mcp

- registry reads libraries.json as bytes (committed file was UTF-16LE); normalize to UTF-8

- Dockerfile: drop stale blog copy; per-repo <name>/mcp copies

- drop nested standards/mcp/standards duplicate and empty root mcp/
2026-10-12 00:21:41 +05:30
9929f05334 refactor: serve MCP bundles under <name>/mcp with nginx guard; rename core->mcp_server
- collect.py: copy repo MCP bundles to ROOT/<name>/mcp (instead of ROOT/mcp/<name>); add nginx location guard to deny /<name>/mcp/
- config.py: bundle roots now point to <repo>/mcp and standards/mcp for static bundles
- Rename core.py -> mcp_server.py and update imports in main.py and registry.py
- Dockerfile: per-repo MCP COPYs under /app/<name>/mcp, drop blog copy; add ports 8008/8009 in .drone.yml
- Restore standards/mcp/libraries.json from git for registry server
2026-10-11 23:37:46 +05:30
c5619bc5e8 fix: vendor per-kind sites in the hub; drop stale blog docs
- collect.py: when a kind points at the shared site root, copy only the
  per-kind subdir (site/lib -> <repo>/lib) instead of the whole site, so
  stray single-site build output never leaks into the hub
- Purge stale collected artifacts (404.html, assets/, search/, sitemaps,
  objects.inv, duplicate mcp/) from every repo dir, matching the cleaned
  source site/ roots
- Refresh collected output from source repos, incl. the khata-app app
- Remove the vendored Blog API docs (config.yml entry + blog/) and its card
2026-10-11 23:12:19 +05:30
74aaf2f53e refactor: conform standards docs to doc-forge wiki/lib layout; generic build.py; static kind links 2026-10-11 23:04:56 +05:30
1208945e1d feat: add standards wiki, MCP registry, and app template 2026-10-11 22:09:30 +05:30
1ef2efbeda feat: collect khata-app lib, api and wiki 2026-09-18 17:07:40 +05:30
b3b1c3404b feat: collect py-jwt wiki; register wiki kind; refresh lib and mcp artifacts
Adds the py-jwt wiki to the hub alongside lib and mcp and picks up
the regenerated flat lib reference and standardized MCP modules.
2026-09-16 20:08:15 +05:30
b1447fb72b feat: collect mail-intake wiki; register wiki kind; refresh lib and mcp artifacts
Adds the mail-intake wiki to the hub alongside lib and mcp and picks up
the regenerated flat lib reference and standardized MCP modules.
2026-09-16 20:02:55 +05:30
aedd2061e1 feat: collect omniread wiki; register wiki kind; refresh lib and mcp artifacts
Adds the omniread wiki to the hub alongside lib and mcp and completes the
library nav with csv/xlsx groups, picking up regenerated MCP modules.
2026-09-16 19:59:00 +05:30
a115df113d 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.
2026-09-16 19:51:24 +05:30
7aadae1736 feat: collect dagpipe wiki, refresh lib and mcp artifacts
Enables dagpipe wiki on the docs hub alongside lib and mcp, removes stale nested lib pages, and picks up regenerated GSDFC docstrings in the MCP bundle.
2026-09-16 15:43:14 +05:30