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
This commit is contained in:
2026-10-11 23:12:19 +05:30
parent 74aaf2f53e
commit c5619bc5e8
526 changed files with 10 additions and 104714 deletions

View File

@@ -296,7 +296,16 @@ def collect(config: dict, dry_run: bool = False) -> list[str]:
if not src.is_dir():
errors.append(f"{name}: {kind} site missing ({src})")
continue
dst = ROOT / name
if site_rel == "site":
# Kinds share a single site root; copy only the per-kind
# subdir so stray root output never leaks into the hub.
src = src / kind
if not src.is_dir():
errors.append(f"{name}: {kind} site subdir missing ({src})")
continue
dst = ROOT / name / kind
else:
dst = ROOT / name
copied.append(f"{kind:>4} {name} {dst.relative_to(ROOT)}/")
if not dry_run:
_copy_dir(src, dst)