-
Notifications
You must be signed in to change notification settings - Fork 0
ADR 009 Two Repo Strategy
Status: Accepted Date: 2026-05-16 Deciders: Michael Zargham Related: ADR-001 Foundations First Approach; ADR-008 Repo Name and Org Transfer Plan; Design Spec
The foundations-first approach (see ADR-001 Foundations First Approach) generates two qualitatively different kinds of output: (a) research artifacts — design spec, wiki pages, ADRs, mathematical elaborations, future-work documentation, paper drafts; (b) implementation artifacts — code, tests, ontology files, SHACL shapes, CI configuration, release artifacts. A monorepo holds both together but bloats the implementation repo with research history irrelevant to a software adopter; a single research-only repo with no implementation pair leaves the implementation homeless. The question is which split is right for v0.1. See Design Spec §0 and §2.
The project uses a two-repo strategy: flexo-rtm-research (this repo) holds research, design spec, wiki, ADRs, future-work documentation, paper drafts; flexo-rtm (the implementation repo, see ADR-008 Repo Name and Org Transfer Plan) holds code, tests, ontology files, SHACL shapes, CI, release artifacts. The research repo is built first, then flexo-rtm is initialized referencing this repo's ADRs and design spec.
- Clean separation of concerns: software adopters of
flexo-rtmget a tidy implementation repo; researchers and reviewers of the design get a complete research artifact inflexo-rtm-research - The research-first ordering is what makes the foundations-first approach (see ADR-001 Foundations First Approach) work — the design spec, wiki, and ADRs exist before code begins, and
flexo-rtmADRs point at this repo as their source of authority - Two repos can be versioned, licensed, and governed independently (research repo CC-BY-4.0 + MIT for code samples; implementation repo MIT or Apache-2.0 as a separate decision)
- Cross-repo links via stable URLs (and eventual OpenMBEE org transfer — see ADR-008 Repo Name and Org Transfer Plan) are auditable and reproducible
- Cross-repo coordination overhead: an ADR change here that affects the implementation requires a parallel change in
flexo-rtm; mitigated by treating this repo as the canonical source of design authority andflexo-rtmADRs as pointers - Two repos to maintain, two CI setups, two release cadences; mitigated by the research repo being mostly-additive (new wiki pages, new ADRs) rather than feature-churning
- Newcomers may be unclear which repo to look at first; mitigated by a clear README in both repos with cross-links
- The split mirrors the conventional distinction in published research between the paper (canonical narrative) and the supplementary code (reproduction artifact), but at a larger scale and with two-way cross-references
-
Monorepo (research + implementation together): One repo with
docs/,wiki/,oracle/,tests/all in the same tree. Rejected: bloats the implementation repo with research history (paper drafts, design iterations, exploratory notes) that is irrelevant and confusing to software adopters. The cleanliness of an implementation repo affects adoption — adopters want a repo they can clone, read the README, and understand quickly. A monorepo undermines that.
-
flexo-rtm-research(this repo) is built first; this wiki, the design spec, and all 26 ADRs land here beforeflexo-rtminitialization -
flexo-rtmADRs reference this repo's design spec by stable URL; the canonical authority for any design decision lives in this repo's wiki - Both repos follow the same org-transfer plan (see ADR-008 Repo Name and Org Transfer Plan): personal namespace through foundations, OpenMBEE org at MVP service
- A sync script (
scripts/sync-wiki.sh) mirrors this repo'swiki/directory to the GitHub wiki repository; the wiki repo is a published mirror and is never directly edited
- Design Spec §0 (Repo Identity), §2 (Cadence and Approach)
- ADR-001 Foundations First Approach — the approach this repo strategy enables
- ADR-008 Repo Name and Org Transfer Plan — the org-home plan that applies to both repos
- Flexo Git Coexistence
- ADCS Prototype Lessons
- MVC Pattern from RIME TRL ANT
- Human-AI Accountability
- Multi-Agent Discourse Graph Precedent
- OSLC RM and QM Review
- INCOSE V2 Review
- OMG SysMLv2
- PROV EARL GSN P-PLAN
- Dragon Architecture and Mission Enterprise
- Traditional Forward and Backward Analysis
- Attestation Infrastructure in v0.1
- Identity Boundaries and Policy Projections
- External URI References
- Signed Envelopes and Established Standards
- Aspect Coverage with Adequacy and Sufficiency
- Federated Audit and Composition
- Certification Predicate
- Gap Taxonomy
- Quantitative Outcomes
- Engineering Lifecycle Stages (v0.2)
- Topological Framework Future Work (research phase)
- Vertices Edges Faces (research phase)
- Three-Layer Architecture
- Operational Layer UX Discipline
- Storage Layer Flexo Conventions
- Analysis Layer Scope Algebra
- OSLC Roundtrip Acceptance
- Identity Adapter Contract
- Flexo REST Binding
- SysMLv2 Ingestion Contract
- External URI Rules
- Signed Envelope Shapes
- Parsimony Manifest
- Lossless Roundtrip Definition
- Vendor Extension Carry-Through
- OSLC RM Adapter Contract
- OSLC QM Adapter Contract
- ADR Template
- ADR-001 Foundations First Approach
- ADR-002 SysMLv2 Anchoring
- ADR-003 Topological Framework Documented as Future Work
- ADR-003a v0.1 Ships Traditional Analysis Only
- ADR-004 Quantitative Certification Outcome
- ADR-005 Adequacy and Sufficiency as Guidance Subtypes
- ADR-006 Three-Layer Architecture
- ADR-007 Scope as First-Class RDF Resource
- ADR-008 Repo Name and Org Transfer Plan
- ADR-009 Two-Repo Strategy
- ADR-010 OSLC-RM and OSLC-QM in v0.1
- ADR-011 Lossless Criterion A plus C
- ADR-012 Direct RDF Properties over Reified Edges
- ADR-013 Simplicial Complex as Derived View When Built
- ADR-014 Parsimony Layer Build-Time Extraction
- ADR-015 GSN Adoption for Adequacy and Sufficiency
- ADR-016 Composable SHACL Profiles
- ADR-017 knowledgecomplex as Optional Extras
- ADR-018 V minus F Invariant Deferred with Topological Framework
- ADR-019 Derived Binary View from Quantitative Metrics
- ADR-020 Vocabulary Alignment with Zargham 2026
- ADR-021 Three Attestation Subclasses Ship in v0.1
- ADR-022 External URI References as Open-Source Foundation
- ADR-023 Cryptography by Composition of Battle-Tested Standards
- ADR-024 Identity by Thin Projection of External Sources
- ADR-025 Reproducibility is Structural and Local
- ADR-026 Cryptographic Agility via Algorithm Profiles
- ADR-027 Bit-Exactness vs Numerical Tolerances Are Both First-Class
- ADR-028 Scope-Level Adequacy and Sufficiency for Federated Audit
- ADR-029 Engineering Lifecycle Stages as Scope Metadata
- ADR-030 Polycentric ASOT Authority Model
- ADR-031 Attestation Status Pass Fail Deferred Deprecated
- ADR-032 Methodology Agnosticism as Foundational Axiom
- ADR-033 Generalized ASOT Principle for All Identified Things