Skip to main content

ADR 001 ossa three repo separation

ADR-001: OSSA Three-Repo Separation of Duty

Status: Accepted
Date: 2026-02-18
Context: openstandardagents (spec), openstandardagents.org (website), ossa-webagents (consumer app)

Decision

  • Canonical spec/schema: Owned only by the openstandardagents repo. All schema and spec authoring and version bumps happen there; publish via @bluefly/openstandardagents.
  • openstandardagents.org: Holds a synced copy of the spec only. Single synced location is root spec/ (populated by fetch-spec from openstandardagents). Any other spec path (e.g. src/spec/) is deprecated for authoring; do not edit schema there.
  • Single content root: All site content lives under website/content/. No second content root at repo level; merge any root-level content/ into website/content/ and remove the root content/ directory.
  • Version display: Single source is website/lib/versions.json (written by src/tools/website/fetch-versions). No hardcoded version numbers; version.ts derives only from this file and throws if missing or invalid.
  • ossa-webagents: Consumer-only app. Schema in public/schemas/ is a copy; canonical source is openstandardagents.org or @bluefly/openstandardagents. No spec ownership.

Consequences

  • Spec divergence risk is reduced by a single synced copy and no authoring in .org.
  • Content and version have one source of truth each; CI and tooling can rely on them.
  • All three repos have clear boundaries; new work can be assigned to the correct repo.

References

  • Separation of duties: /Volumes/AgentPlatform/config/SOD/applications-SEPARATION-OF-DUTIES.md
  • Project status: OSSA Three-Repo Cleanup (2026-02-18)