-
Notifications
You must be signed in to change notification settings - Fork 0
Repository Ownership and SSOT Policy
Purpose: Defines ownership boundaries, single-source-of-truth rules, and duplication policy across UIAO repositories. Audience: Developers, contributors, and pipeline maintainers. Cross-Links: UIAO Canon (Read the Docs) | Source Repository
This page is the authoritative statement of where things live, who owns them, and why. When in doubt, return here.
uiao-docs owns the human-readable documentation canon and the Quarto rendering pipeline.
uiao-core owns the machine-readable YAML canon, the OSCAL generation engine, and the adapter framework code.
These repositories are peers. Neither is subordinate to the other. They serve different consumers: uiao-docs serves human readers; uiao-core serves machines and integrations.
| What | Location | Authority |
|---|---|---|
20+ canonical .qmd documents |
uiao-docs/docs/ |
uiao-docs |
| YAML data schemas (30 files) | uiao-docs/data/ |
uiao-docs |
| Rendered HTML site | whalermike.github.io/uiao-docs |
uiao-docs (auto-generated build artifact) |
| DOCX/PPTX reference templates | uiao-docs/data/ |
uiao-docs |
| CI/CD workflows | uiao-docs/.github/workflows/ |
uiao-docs |
| Quarto configuration | uiao-docs/_quarto.yml |
uiao-docs |
| Visual assets (Gemini images) | uiao-docs/docs/images/ |
uiao-docs |
| OSCAL JSON generation | uiao-core |
uiao-core |
| Adapter framework code | uiao-core |
uiao-core |
| Python generation engine | uiao-core/src/ |
uiao-core |
| Generation inputs (YAML) | uiao-core/generation-inputs/ |
uiao-core |
| JSON validation schemas | uiao-core/schemas/ |
uiao-core |
| YAML data schemas (synced copy) | uiao-core/data/ |
uiao-docs (synced via sync-data-to-core.yml) |
Reading or editing a document? → uiao-docs/docs/
Generating OSCAL artifacts? → uiao-core
Understanding or debugging the CI/CD pipeline? → This wiki
Looking for a compliance mapping, architecture diagram, or glossary? → Rendered site. The wiki does not duplicate it.
The rendered site is a build artifact. It is not a source of truth. Never edit rendered HTML directly. Edit the .qmd source in uiao-docs/docs/ and push to main.
This wiki is an operational companion. It covers how-to guides, contributor workflows, CI/CD reference, and troubleshooting. It does not cover:
- Architecture overviews — those are in the rendered site (
00_ControlPlaneArchitecture.qmd,01_UnifiedArchitecture.qmd, etc.) - Compliance frameworks and crosswalks — those are in
03_FedRAMPCrosswalk.qmd,09_CrosswalkIndex.qmd, and related canon docs - Zero Trust theory — that is in
zero_trust_narrative_v1.0.qmd - Vendor technology descriptions — that is in
vendor_stack_v1.0.qmd - Modernization phases and timelines — those are in
08_ModernizationTimeline.qmdandroadmap.qmd - Glossary definitions — those are in
11_GlossaryAndDefinitions.qmd
If a topic belongs in the rendered site, the wiki does not repeat it. The wiki may link to the rendered site with a one-sentence summary. That is the full extent of overlap permitted.
If content exists in the rendered docs site, the wiki must not duplicate it. The wiki may link to the rendered site with a one-sentence summary. Nothing more.
This rule exists because duplication creates drift. When the canon updates, a wiki page that shadows it becomes stale, contradictory, and misleading. Stale documentation is worse than no documentation.
If you find wiki content that duplicates the rendered site, open a PR to delete it and replace it with a link.
Ask these questions in order:
- Is this a how-to, workflow, or operational procedure? → Wiki.
-
Is this conceptual, architectural, or specification content? → Canon (
.qmdinuiao-docs/docs/). -
Is this machine-readable data or a generation artifact? →
uiao-coreoruiao-docs/data/.- YAML data schemas are authored in
uiao-docs/data/and synced touiao-core/data/automatically. - Generation inputs (diagram YAML, visual manifests) live in
uiao-core/generation-inputs/— these are code inputs, not documentation.
- YAML data schemas are authored in
- Does it already exist somewhere? → Link to it. Do not copy it.
If you are unsure, default to the canon. The wiki has a higher bar for new content: a new wiki page must describe something the canon cannot or should not cover (operational steps, environment-specific setup, CI/CD internals).
| Repository | URL | Purpose |
|---|---|---|
uiao-docs |
github.com/WhalerMike/uiao-docs | Documentation canon, Quarto pipeline, YAML schemas |
uiao-core |
github.com/WhalerMike/uiao-core | OSCAL generation, adapter framework, Python engine |
| Rendered site | whalermike.github.io/uiao-docs | Published HTML documentation (build artifact) |
| This wiki | github.com/WhalerMike/uiao-docs/wiki | Operational companion — how-tos, CI/CD, troubleshooting |
- Repository Structure — directory layout and file inventory
- CI/CD Pipeline — workflow reference
- Contributing Guidelines — branch workflow and PR process
Policy
Getting Started
- Getting Started
- Rendering Locally
- Adding a New Document
- Contributing Guidelines
- Repository Structure
Working With
Standards
Operations