Group: Operational Capabilities · Status: Demonstrated
OSP-wide infrastructure that scales across multiple client engagements. A new client gets a portal + folder structure + canonical-context tree in hours, not weeks, because the underlying systems are shared.
The shape of the capability
- One codebase, multiple tenants.
portal_index.py,render_section_hub.py,sync_portal.pyall accept a--tenantflag. Adding a new tenant is a config block + two logo files + a content tree. - Folder convention as contract. Every engagement uses
reference/+client-files/+workspaces/+published/. Curated AI context separates from raw source documents on contact. - Sync daemon does the boring part. Drive → portal repo → GitHub → Netlify is unattended. The same daemon serves vg, bc, and rwp.
Evidence
- VG portal —
vg-portal.netlify.app· 87 outputs across 7 sections - BC portal —
bc-portal.netlify.app· Reception playbook (5 docs) - RWP portal — this site · 4+ sections, change-triggered rebuilds
Where to look in the repo
02_active/vg/tools/portal_index.py— multi-tenant index generator02_active/vg/tools/render_section_hub.py— section hub renderer (per-tenant)RWP/tools/sync_portal.py— sync daemon with per-tenant configRWP/CLAUDE.md→ Client Engagement Folder Convention