Skip to content

docs: establish canonical product and architecture baseline - #604

Closed
seonghobae wants to merge 61 commits into
mainfrom
docs/canonical-architecture-baseline-20260809
Closed

docs: establish canonical product and architecture baseline#604
seonghobae wants to merge 61 commits into
mainfrom
docs/canonical-architecture-baseline-20260809

Conversation

@seonghobae

@seonghobae seonghobae commented Aug 9, 2026

Copy link
Copy Markdown
Contributor

Problem

The repository's architecture documentation outgrew the original docs/prd_trd_summary.md. Protected main already contains governed assessment/scoring contracts, rubric generation/audit/pilot modules, automated-scoring adapters, Rust-first numerical ownership, release evidence, and downstream Psychometrics Commons boundaries, but the durable system design was fragmented across feature docs, research notes, PRs, and agent guidance.

The legacy summary is materially stale: it describes an early NumPy-first MLS2PLM MVP and treats capabilities now present on protected main as future/out of scope. It is retained only as historical context and deprecated as an authoritative requirements source.

Canonical documentation baseline

This is the sole active cross-cutting documentation writer and establishes one canonical architecture package:

  • docs/PRD.md — current product requirements/non-goals;
  • docs/TRD.md — Rust/PyO3/contracts/security/scientific/resource/release technical requirements;
  • root ARCHITECTURE.md — ownership, component, contract/data-flow, model-selection, lifecycle, numerical, security and deployment/composition views;
  • docs/README.md — documentation authority/navigation;
  • docs/adr/README.md plus 13 status-bearing ADRs covering domain boundary, Rust numerical ownership, content-addressed contracts, governed rubric/item-bank lifecycle, fallible automated/human raters, relation-safe model selection, multilevel/time, true-parameter recovery CI, adaptive rotation, LLM orchestration/credentials, canonical PyO3/public-export registration, purpose-limited sensitive-data handling, and continuous execution/canonical-documentation governance;
  • machine-renderable component/deployment/sequence/state views plus a logical reusable-domain ERD explicitly not a hosted DB schema;
  • requirements/research traceability;
  • reusable-core threat model;
  • standards watch separating published normative references from revisions/drafts/watch items without certification claims;
  • verification/validation plan separating software, numerical, scientific, scoring/RAG, recovery, generalization, resource, security, packaging and exact-artifact evidence;
  • documentation maturity states distinguishing IMPLEMENTED/ACCEPTED from ACTIVE PR/PROPOSED/PLANNED/DOWNSTREAM/REJECTED-SUPERSEDED; and
  • machine-checkable documentation/changelog contracts.

No parallel PRD/TRD/Architecture/ADR/UML/ERD authority should be created while this PR remains active.

Durable scientific/product decisions preserved

The baseline records, without promoting unmerged work to shipped behavior:

  • human/AI/LLM judges are fallible raters, not truth by identity;
  • correlation is supplementary association evidence, not parameter recovery, absolute agreement, fairness or validity;
  • factor retention is separate from structural model selection;
  • correlated multidimensional, bifactor, higher-order, testlet/two-tier, many-facet and latent-space structures answer different questions; latent-space residual interaction follows substantive dimension/testlet/facet diagnosis;
  • model comparison is relation-aware and may remain indeterminate when distinguishability/identification evidence is missing;
  • psychometric discrimination is not business/safety criticality or causal intervention value;
  • reference-free is not truth-free;
  • generated items remain hostile/untrusted candidates until structural/provenance/source and later semantic/psychometric gates succeed;
  • multilevel, cross-classified, multiple-membership and temporal structure is preserved when inference depends on it;
  • purpose limitation/minimization/separated identity/evidence domains preserve sensitive-data utility better than blanket masking that changes measurement design;
  • NVIDIA NIM development credentials remain separate from independent reviewer/merge authority; and
  • fast-mlsirm remains the standalone reusable measurement core while hosted HTTP/session/consent/tenant/RBAC/UI/database/deployment lifecycle remains downstream/Psychometrics Commons.

Exact-current identity and RCA

Freshly revalidated:

  • protected main: 8db4bf358b0a469915d6c5e336054f4a4f9c6b46;
  • exact Draft documentation head: 02569a3d6a7295c95b599e8b5c25f5c8eb69a63a;
  • exact-head Security Scan and SAST Semgrep: success;
  • package, Rust/PyO3, explicit GPU-no-skip and fuzz paths in CI are successful;
  • exact-head Python CI finishes with 5 failures / 2937 passed / 2 skipped, all bounded documentation/release-note defects rather than runtime-product regressions:
    1. ADR status parsing rejects valid Markdown hard-line-break trailing spaces after Status: **Accepted**;
    2. docs/TRD.md does not yet state the psychometrics-commons hosted-product boundary required by the canonical contract;
    3. root ARCHITECTURE.md does not yet link ADR-0013 continuous-execution/canonical-writer governance;
    4. TRD does not yet carry ADR-0013's feasibility/work-conserving/single-writer invariants; and
    5. managed CHANGELOG.md is stale relative to authoritative fragments.

A bounded exact-current OpenCode handoff already owns only those five repairs. Do not race or duplicate that source writer while head/main remain unchanged. Older comments/body identities such as fe402bc... or protected main 7516031... are predecessor evidence only.

Remaining Draft gate

Keep Draft. The next documentation mutation is constrained to the five exact defects above: make the ADR-index parser tolerate only horizontal trailing whitespace rather than weakening status validation; state the hosted-product boundary in TRD; link/preserve ADR-0013 governance in Architecture/TRD; render/check CHANGELOG.md; then require focused documentation contracts and a fresh unchanged-head full relevant CI/Security/SAST cycle.

After that, require fresh current-head automated/independent review, zero valid unresolved architecture/scientific findings, and the repository's actual approval/branch-protection policy. This PR changes no numerical formula, runtime public API, physical DB schema, dependency, provider/reviewer credential authority or release version.

@coderabbitai

coderabbitai Bot commented Aug 9, 2026

Copy link
Copy Markdown

Review Change Stack

Important

Review skipped

Auto incremental reviews are disabled on this repository.

Please check the settings in the CodeRabbit UI or the .coderabbit.yaml file in this repository. To trigger a single review, invoke the @coderabbitai review command.

⚙️ Run configuration

Configuration used: Path: .coderabbit.yaml

Review profile: CHILL

Plan: Pro Plus

Run ID: ed9f9b18-f863-445b-a186-7b55f7f4baaa

You can disable this status message by setting the reviews.review_status to false in the CodeRabbit configuration file.

Use the checkbox below for a quick retry:

  • 🔍 Trigger review
📝 Walkthrough

Walkthrough

Added the canonical architecture, requirements, ADR, domain-model, security, traceability, UML, and documentation-contract baseline for fast-mlsirm. The changes define ownership boundaries, scientific and numerical requirements, lifecycle controls, privacy rules, and validation checks.

Changes

Architecture and governance baseline

Layer / File(s) Summary
Authority and architecture baseline
ARCHITECTURE.md, docs/PRD.md, docs/TRD.md, docs/README.md, docs/adr/*, docs/changelog.d/*, docs/prd_trd_summary.md, docs/uml/README.md
Added canonical architecture, requirements, documentation-authority, ADR-governance, and historical-documentation rules.
Measurement contracts and governed lifecycles
ARCHITECTURE.md, docs/adr/0003-*, docs/adr/0004-*, docs/adr/0005-*, docs/erd/*, docs/uml/item-*, docs/uml/scoring-sequence.puml
Defined content-addressed artifacts, domain entities, item-bank lifecycle states, scoring observations, calibration, provenance, and terminal outcomes.
Numerical ownership and scientific evidence
ARCHITECTURE.md, docs/adr/0002-*, docs/adr/0006-*, docs/adr/0007-*, docs/adr/0008-*, docs/adr/0009-*, docs/traceability/research-basis.md, docs/uml/model-selection-sequence.puml
Established Rust-first numerical ownership, backend rules, relation-safe model selection, parameter recovery, structural modeling, and rotation-selection evidence.
Deployment, privacy, and automation boundaries
ARCHITECTURE.md, docs/adr/0001-*, docs/adr/0010-*, docs/adr/0011-*, docs/adr/0012-*, docs/security/*, docs/uml/component.puml, docs/uml/deployment.puml
Documented reusable-core and hosted-product boundaries, deployment ownership, credential controls, PyO3 export governance, sensitive-data handling, and threat controls.
Traceability and documentation contract validation
docs/documentation_coverage.md, docs/traceability/*, tests/test_architecture_documentation_contract.py
Added coverage and traceability matrices plus tests for canonical files, ADR statuses, boundaries, security coverage, research references, and proposed-work status.

Estimated code review effort: 4 (Complex) | ~45 minutes

Possibly related issues

Possibly related PRs

🚥 Pre-merge checks | ✅ 5
✅ Passed checks (5 passed)
Check name Status Explanation
Docstring Coverage ✅ Passed Docstring coverage is 100.00% which is sufficient. The required threshold is 80.00%.
Linked Issues check ✅ Passed Check skipped because no linked issues were found for this pull request.
Out of Scope Changes check ✅ Passed Check skipped because no linked issues were found for this pull request.
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title check ✅ Passed The title clearly and concisely describes the PR's primary change: establishing a canonical product and architecture documentation baseline.
✨ Finishing Touches 💡 1
🛠️ Fix failing CI checks 💡
  • Create stacked PR
  • Commit on current branch
📝 Generate docstrings
  • Create stacked PR
  • Commit on current branch
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch docs/canonical-architecture-baseline-20260809

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands.

Copy link
Copy Markdown
Contributor Author

@opencode-agent address

Take a bounded writer lease on this Draft documentation branch only. Current docs head at handoff is 24eeec3412241580138150ab3305a7a066d50bd0; protected main advanced after branch creation to 7516031df533d1131572eb07b6e3a86b04d12793 and changes only report CSS/tests/changelog relative to the branch merge base. Reconcile latest protected main non-destructively (no force push, no ours/theirs), preserve both changelog changes, then:

  1. run the repository-owned changelog renderer so docs/changelog.d/canonical-architecture-baseline.md is represented exactly in the managed CHANGELOG.md block;
  2. run tests/test_architecture_documentation_contract.py plus the repository changelog-fragment contract;
  3. inspect/fix only genuine documentation-contract defects, especially broken PlantUML/source links, ADR status/index consistency, PRD/TRD contradictions with current protected source, and the fast-mlsirm ↔ Psychometrics Commons ownership boundary;
  4. run the full relevant Python coverage/docstring gate and leave Rust/numerical source untouched;
  5. update the PR body with the exact new head and evidence, but keep Draft until exact-head CI/Security/SAST and current-head automated review are clean.

Do not change numerical formulas, runtime public APIs, dependencies, model credentials, release version, or unrelated product code.

Copy link
Copy Markdown
Contributor Author

@opencode-agent While holding the existing bounded writer lease, please fold in the non-duplicative architecture gaps identified by the parallel conversation audit before declaring this canonical baseline complete. Preserve your current PRD/TRD/PlantUML/ERD/changelog/old-summary deprecation work; add only what is genuinely missing:

  1. a repository-level reusable-component threat model covering untrusted JSON/provider replay, package-managed artifact mutation, PyO3/native input boundaries, numeric overflow/non-finite scientific output, CPU oversubscription, GPU evidence spoofing, model-misuse/validity-overclaim, supply-chain/self-modifying CI, reviewer-vs-model credential separation, benchmark contamination, privacy/purpose limitation, and scientific-integrity recovery failures;
  2. an explicit documentation-completeness/maintenance matrix (or equivalent section) that distinguishes IMPLEMENTED on protected main, ACTIVE PR, PLANNED, DOWNSTREAM, and REJECTED/SUPERSEDED and makes missing/stale PRD/TRD/ADR/UML/ERD/traceability/security/runbook artifacts a release-maintenance concern;
  3. a durable ADR for the canonical PyO3/public-export registry: current protected main exposes legacy exports plus bifactor and rotation through package-root composition, so future Rust feature PRs must converge on one maintainable binding/export registration architecture rather than competing secondary PyInit_* or __init__ rewrites;
  4. ensure the traceability matrix explicitly carries the conversation-wide principles that correlation is not parameter recovery/agreement, LLM/human judges are fallible raters, latent space follows substantive dimension/testlet/facet diagnosis, and business/safety criticality is not psychometric discrimination.

Do not duplicate hosted-product threat/persistence ownership: product HTTP/session/consent/tenant/RBAC/UI/database remains Psychometrics Commons/downstream. Keep exact protected-main vs active/planned status honest. These are documentation-only convergence requirements; do not change runtime source, dependencies, workflows, credentials, formulas, or version.

Copy link
Copy Markdown
Contributor Author

@opencode-agent address

Reacquire the sole canonical #604 documentation-writer lease only if a final refetch still shows exact Draft head a672a6ceb336e75e5844cd91acf3b735c87fc2f2 and protected main 20b029a237e7819b5a4f7d74a1b2bbfb1b6755f7; abort without writing if either ref moved or another current-head documentation writer appears. Every older handoff bound to d2301dcc... / f43a466... / 8db4bf... / 7516031... is predecessor evidence only. Do not create another PRD/TRD/Architecture/ADR/UML/ERD branch.

Fresh compare is diverged: #604 is 61 commits ahead and 29 protected-main commits behind, merge base d2301dccb7d39a794d08cc96ea8c858b9ff49125. First reconcile protected main non-destructively; no force push, no ours/theirs blanket resolution. Then recalculate every maturity/traceability claim from the integrated tree before editing prose. At minimum prevent protected-main promotion of open work (#723 fit-stat tail/BH fail-closed, #724 validation policy, #722 inference non-finite SE correction, #721 CAT information/selection Rust ownership, #719 LSR CSR live-allocation correction, #718 ATA constraint-map validation, #717 JMLE Rust optimizer ownership, #663 fixed-anchor linking). Record merged #714 response-time iteration ceilings and merged #647 inference covariance only as protected-main behavior actually present after reconciliation.

Revalidate the canonical fitness requirements already tracked by #621 rather than assuming the older body is current: PRD/TRD/root Architecture/ADR status and supersession; Rust/PyO3 numerical ownership versus explicit reference-only Python; public schema/serialization/fingerprint/version contracts; logical ERD cardinality/immutability and no invented hosted DB; domain/public-contract UML plus diagram inventory/hygiene; threat/security/data-governance and PII alternatives; V&V/Test Strategy; operability/recovery; release/migration/rollback/SBOM/provenance/licensing indexing; exact ContextualWisdomLab/psychometrics-commons downstream ownership; APA 7 research/standards traceability; and machine-checks that ACTIVE_PR/PLANNED cannot become shipped truth.

Preserve ADR-0013's RCA→feasibility→action, waiting-is-local, single-writer and no-early-stop decisions. Update current standards-watch facts only from official published/primary sources and keep drafts/revisions as watch items. Run focused documentation/traceability/UML/ERD/changelog tests plus git diff --check, then full applicable CI. Commit only canonical documentation/reconciliation work and keep Draft. Do not modify numerical/runtime APIs, dependencies, workflows, credentials, package version or release state.

Copy link
Copy Markdown
Contributor Author

@opencode-agent address

Fresh sole-canonical documentation lease for Draft #604 after protected-main movement invalidated the prior handoff. Final pre-write guard is mandatory: refetch #604 head, live protected main, comments/reviews/threads, exact target blobs and active-writer evidence; proceed only while docs head remains a672a6ceb336e75e5844cd91acf3b735c87fc2f2, live main remains compatible with 3bc1222bf9552bb74f98cf34c89eba0b8d29c0dc, and no other canonical source writer appears. Fresh compare is diverged ahead 61 / behind 38 from merge base d2301dccb7d39a794d08cc96ea8c858b9ff49125. Every prior base-bound OpenCode/Jules handoff is stale. Do not create or revive another PRD/TRD/Architecture/ADR/UML/ERD branch.

Use #621 as the whole-conversation acceptance backlog, but recalculate every statement from the integrated tree rather than copying historical PR lists. First reconcile protected main non-destructively, preserving all accepted changes through #723/#724/#725/#726 and earlier integration. Specifically: #723 Rust fail-closed chi2/BH and #724 governed validation policy are protected-main behavior; #725 non-finite inference uncertainty correction is protected-main behavior, with #729 only a test/doctoring evidence-completeness follow-up; #726 ATA semantic-control type validation is protected-main behavior, while #728 is a residual finite-domain/exclusion RED; #719 is now superseded-in-flight by Ready #727 but neither is protected-main behavior yet; #717/#721/#663 remain active Rust-ownership work. Do not present any active Draft/Ready PR as shipped.

Repair the known documentation-fitness problems only in this canonical line: separate document availability (PRESENT_ON_PROTECTED_MAIN/PRESENT_STALE/OWNED_BY_ACTIVE_PR/PARTIAL/MISSING/NOT_APPLICABLE/SUPERSEDED) from capability maturity (IMPLEMENTED_ON_PROTECTED_MAIN/IMPLEMENTED_ON_ACTIVE_PR/PARTIAL/ACCEPTED_ARCHITECTURE/PLANNED/RESEARCH_ONLY/DOWNSTREAM/SUPERSEDED/REJECTED/OUT_OF_SCOPE); preserve exact ContextualWisdomLab/psychometrics-commons downstream ownership; ADR-0013 RCA→distinct remedy→feasibility→action/work-conserving/single-writer/double-exit governance; Rust/PyO3 numerical ownership with any Python references explicitly non-production; canonical serialization/fingerprint/interface-version/deprecation contracts; public/domain UML inventory and logical ERD cardinality/immutability without invented hosted persistence; security/data-governance/PII alternatives; V&V as Test Strategy; package operability/recovery; release/migration/rollback/SBOM/provenance/licensing navigation; current standards/research APA 7 traceability; README/AGENTS/CLAUDE/CHANGELOG consistency; and thin/superseded treatment of any competing GOVERNANCE_INDEX/20B narrative authority.

Extend machine-checkable docs fitness so stale PRD/TRD routing, authoritative NumPy-production-fallback wording, active-PR→main promotion, duplicate ADR authority, broken UML/ERD links/cardinality, stale product names, missing canonical references, and false document-status maturity fail deterministically. Run focused architecture/ADR/UML/ERD/traceability/changelog tests, render/check managed CHANGELOG, git diff --check, then full applicable CI on one unchanged head. Keep Draft. Do not touch runtime numerical formulas/APIs, dependencies/workflows, credentials, package version/release, or merge/Ready state. Stop immediately if source/base/writer identity moves.

Copy link
Copy Markdown
Contributor Author

@opencode-agent address

Reacquire the sole canonical #604 documentation writer lease only after a final refetch confirms exact Draft head a672a6ceb336e75e5844cd91acf3b735c87fc2f2, current protected main 3afb302ae94e7c996d6c64e6871d35e3c288ddcd, the same target blobs, and no other current-head canonical writer. The previous handoff bound to 3bc1222b... is stale because protected main advanced through merged #727 and #730. Fresh compare is now diverged ahead 61 / behind 40, merge base d2301dccb7d39a794d08cc96ea8c858b9ff49125. Do not create a competing PRD/TRD/Architecture/ADR/UML/ERD branch.

First reconcile protected main non-destructively, preserving all accepted product/runtime/docs history including #727's ranking live-CSR contract and #730's signed non-finite uncertainty evidence/doctoring. Then recalculate all document-availability and capability-maturity claims from the integrated tree using #621 plus its newest reconciliation comment as the acceptance backlog. In particular #727/#730 are IMPLEMENTED_ON_PROTECTED_MAIN, #729 is closed duplicate, #728 remains active finite-domain ATA work, and #731 is the new active fail-first top-1 CSR follow-up for #632; never promote #728/#731 to shipped behavior.

After reconciliation, close only still-real canonical fitness gaps already tracked by #621: two-axis document/capability maturity, Rust/PyO3 production numerical ownership, versioned serialization/fingerprint/interfaces, public/domain UML inventory and logical ERD cardinality/immutability, threat/data governance, V&V/Test Strategy, package operability/recovery, release/migration/rollback/SBOM/provenance/licensing navigation, exact ContextualWisdomLab/psychometrics-commons downstream ownership, APA 7 research/standards traceability, ADR-0013 execution governance, and README/AGENTS/CLAUDE/CHANGELOG consistency. Extend machine checks rather than prose-only claims. Run focused architecture/ADR/UML/ERD/traceability/changelog tests plus renderer check and git diff --check, then full applicable CI. Keep Draft; no runtime numerical/API/dependency/workflow/credential/version/release mutation. Stop immediately if source/base/writer state moves.

Copy link
Copy Markdown
Contributor Author

@opencode-agent address

Fresh sole-canonical documentation writer lease after protected main moved through #728. Immediately before any write, refetch Draft #604 exact head a672a6ceb336e75e5844cd91acf3b735c87fc2f2, protected main bb30b196d2f83df5117a6bebf5e9680faf18c841, comments/reviews/threads, and every target blob; abort if either ref moved or another canonical writer appears. Fresh compare is diverged, #604 ahead 61 / behind 41 from merge base d2301dccb7d39a794d08cc96ea8c858b9ff49125. All older base-bound handoffs are predecessor evidence. Do not create/revive any competing PRD/TRD/Architecture/ADR/UML/ERD branch.

First reconcile live protected main non-destructively, preserving all protected behavior through #728, including merged Rust/fail-closed inference/fit-stat/RT/CAT and ATA semantic-preflight slices, while preserving only #604's canonical documentation package. Recalculate every maturity and traceability row from the integrated tree before editing prose; active work must not be presented as shipped. In particular #728/#683 is now protected-main behavior, #731 is closed superseded, #732 is the sole active top-1 CSR implementation line, and #733 is active LLM-judge/IRT contract work with unresolved review findings. Re-read #621 rather than copying its stale protected-head identifiers.

Then close only still-current documentation-fitness gaps: two-axis document availability vs capability maturity; exact Rust/PyO3 production numerical ownership versus explicit reference/test Python; public schema/serialization/fingerprint/version/deprecation contracts; exact ContextualWisdomLab/psychometrics-commons downstream ownership; contextual-orchestrator versioned integration boundary without hidden runtime coupling; canonical UML inventory (treat compatibility includes as aliases, not independent authorities), public/domain class, numerical-authority, evidence-state, failure/recovery and release/provenance views; logical ERD many-to-many calibration design participation, immutable revision/supersession, rater/engine/model/prompt/occasion and protected multilevel/time provenance without inventing a hosted DB; package-owned operability/recovery; threat/security/data-governance and PII alternatives; V&V as Test Strategy; release/migration/rollback/SBOM/provenance/licensing indexing; ADR-0013 RCA→feasibility→action/waiting-is-local/single-writer/double-sweep governance; current published standards plus APA 7 primary-source/equation traceability; and README/AGENTS/CLAUDE/CHANGELOG consistency.

Extend machine-checkable contracts so stale/superseded PR numbers, ACTIVE_PR→protected-main promotion, normative Python-production fallback/NumPy-first wording, duplicate UML authority, broken local links/cardinalities, stale product/repository names and deterministic changelog drift fail closed. Run focused architecture/ADR/UML/ERD/traceability/changelog checks, render/check managed CHANGELOG, git diff --check, then full applicable CI/Security/SAST. Keep Draft; no runtime numerical/API/dependency/workflow/credential/version/release changes. Stop writing immediately if head/base/writer identity changes.

Copy link
Copy Markdown
Contributor Author

@opencode-agent address

Fresh sole-canonical documentation reconciliation lease after protected main advanced through #732 and this maintainer opened fail-first inference ownership Draft #734. Final pre-write guard is mandatory: refetch #604 exact head a672a6ceb336e75e5844cd91acf3b735c87fc2f2, live protected main 7b57f77747b9a9bd911660c76b1be0ca0dc2d145, comments/reviews/threads, every target blob and active-writer evidence; abort if either ref moves or another current-head canonical writer appears. All previous base-bound handoffs are stale. Do not create or revive a competing PRD/TRD/Architecture/ADR/UML/ERD branch.

Fresh compare is diverged, ahead 61 / behind 42 from merge base d2301dccb7d39a794d08cc96ea8c858b9ff49125. First reconcile current protected main non-destructively and recalculate all document-availability, capability-maturity and requirements-to-evidence rows from the integrated tree before editing prose. Protected main now includes #728 ATA semantic-preflight, #730 signed non-finite uncertainty evidence and #732 bounded top-1 CSR loser/payload materialization; do not retain those as active work. Draft #733 remains active LLM-judge/IRT contract work with unresolved review findings. New Draft #734 is test-first IMPLEMENTED_ON_ACTIVE_PR evidence only for the remaining issue #625 observed-information / second-order numerical-ownership gap; it is not shipped behavior. #611 remains stale-but-unique active item-bank lifecycle work undergoing current-main reconciliation/replacement.

Use #621 as the whole-conversation documentation-fitness backlog but revalidate its stale protected-head/PR statements from current GitHub evidence. Close only still-real gaps in the sole canonical line: two-axis document availability versus capability maturity; Rust/PyO3 production numerical ownership with Python numerical code explicitly reference/test-only or tracked active migration; versioned public serialization/fingerprint/interface/deprecation contracts; exact ContextualWisdomLab/psychometrics-commons downstream boundary; versioned contextual-orchestrator integration without hidden coupling; canonical UML inventory with compatibility aliases distinguished from authorities plus public/domain, numerical-authority, evidence-state, failure/recovery and release/provenance views; logical ERD many-to-many calibration design participation, immutable revision/supersession, rater/engine/model/prompt/occasion and multilevel/time provenance without inventing hosted persistence; package operability/recovery; threat/security/data-governance and utility-preserving PII controls; V&V as Test Strategy; release/migration/rollback/SBOM/provenance/licensing navigation; ADR-0013 RCA→feasibility→action/waiting-is-local/single-writer/double-sweep governance; current published standards plus APA 7 primary/equation traceability; and README/AGENTS/CLAUDE/CHANGELOG consistency.

Extend machine-checkable contracts so stale/superseded PR numbers, ACTIVE_PR→protected-main promotion, normative Python-production-fallback/NumPy-first wording, duplicate UML authority, broken local links/cardinalities, stale product/repository names and deterministic changelog drift fail closed. Run focused architecture/ADR/UML/ERD/traceability/changelog contracts plus renderer check and git diff --check, then full applicable CI/Security/SAST on one unchanged head. Keep Draft. Do not touch runtime numerical APIs/formulas, dependencies/workflows, credentials, package version/release or merge/Ready state. Stop immediately if source/base/writer state moves.

Copy link
Copy Markdown
Contributor Author

@opencode-agent address

Reacquire the sole canonical #604 documentation-writer lease only after a final refetch confirms exact Draft head a672a6ceb336e75e5844cd91acf3b735c87fc2f2, live protected main 914127ba227d3e02d0564aeeb4f27d76137610f9, comments/reviews/threads, exact target blobs and no other current-head canonical writer. Every older handoff is stale because protected main advanced through #733. Fresh compare is diverged: #604 is 61 commits ahead / 43 protected-main commits behind from merge base d2301dccb7d39a794d08cc96ea8c858b9ff49125. Do not create/revive a parallel PRD/TRD/Architecture/ADR/UML/ERD branch.

Use freshly updated issue #621 as the acceptance backlog. First reconcile current protected main non-destructively, preserving all accepted behavior through #733 and only #604's unique canonical documentation changes. Recalculate document availability, capability maturity and traceability from the integrated tree before editing prose. In particular #732 and #733 are protected-main behavior; #739 is active-PR-only judge error normalization; #738 replaces closed #717; #737 replaces closed #663; #735/#736/#734 remain active; #611/#564/#579/#558 require exact-current ancestry revalidation. Do not retain stale predecessor PRs as active authorities.

Then close only still-real #621 gaps: two-axis document/capability maturity, Rust/PyO3 production numerical ownership vs explicit reference-only Python, versioned serialization/fingerprint/public interface/deprecation, exact ContextualWisdomLab/psychometrics-commons downstream boundary, versioned contextual-orchestrator integration, canonical UML authority with compatibility aliases plus public/domain/numerical-authority/evidence-state/failure-recovery/release-provenance views, logical ERD many-to-many calibration participation and immutable supersession/provenance without invented hosted persistence, package operability/recovery, threat/security/data governance, V&V as Test Strategy, release/migration/rollback/SBOM/provenance/licensing navigation, ADR-0013 execution governance, current standards/APA-7 traceability and README/AGENTS/CLAUDE/CHANGELOG consistency.

Extend machine-checkable fitness rather than prose-only claims. Run focused architecture/ADR/UML/ERD/traceability/changelog contracts, renderer check, git diff --check, then full applicable CI/Security/SAST on one unchanged head. Keep Draft. Do not modify runtime numerical formulas/APIs, dependencies/workflows, credentials, package version/release, Ready/merge state. Abort immediately if head/base/writer state changes.

Copy link
Copy Markdown
Contributor Author

@opencode-agent address

Reacquire the sole canonical documentation writer lease only after a final refetch confirms #604 exact head a672a6ceb336e75e5844cd91acf3b735c87fc2f2, live protected main d8412c1dc0f62bfb043435c0373f8e75bf856c8a, comments/reviews/threads, target blobs and no other current-head canonical writer. All older base-bound handoffs are stale after merged #739. Do not create/revive a parallel PRD/TRD/Architecture/ADR/UML/ERD authority.

Use freshly updated #621 as the canonical acceptance backlog. First reconcile current protected main non-destructively and recalculate document availability, capability maturity and requirements-to-evidence from the integrated tree. Protected main now includes #733 and #739; #740/#738/#737/#735/#734 remain active-PR-only and closed predecessor branches are not authorities.

Then close only still-real #621 semantic/fitness gaps and extend machine-checkable contracts rather than prose-only claims. Run focused architecture/ADR/UML/ERD/traceability/changelog checks, deterministic CHANGELOG renderer check and git diff --check, then full applicable CI/Security/SAST on one unchanged head. Keep Draft. Do not modify runtime numerical APIs/formulas, dependencies/workflows, credentials, package version/release or merge/Ready state. Abort if head/base/writer state changes.

@seonghobae

Copy link
Copy Markdown
Contributor Author

Superseded by surgical GREEN re-apply on current main (#docs baseline + ADR-0013 links).

@seonghobae seonghobae closed this Aug 11, 2026
seonghobae added a commit that referenced this pull request Aug 11, 2026
Land PRD/TRD, ADR corpus through ADR-0013, UML/ERD, threat model, and
documentation contracts on current main. Cross-link continuous-execution
governance (ADR-0013) and re-render authoritative CHANGELOG fragments.

Supersedes conflicting draft #604.
seonghobae added a commit that referenced this pull request Aug 11, 2026
* docs: establish canonical product and architecture baseline

Land PRD/TRD, ADR corpus through ADR-0013, UML/ERD, threat model, and
documentation contracts on current main. Cross-link continuous-execution
governance (ADR-0013) and re-render authoritative CHANGELOG fragments.

Supersedes conflicting draft #604.

* fix(docs): align architecture title with baseline contract

Keep the living architecture H1 and explicit Rust/recovery section
phrases required by test_architecture_baseline_contract.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant