From b613ec3d1339162df713ac3c6dc599bf43ac96bd Mon Sep 17 00:00:00 2001 From: Seongho Bae Date: Thu, 20 Aug 2026 18:20:36 +0900 Subject: [PATCH 01/52] docs: add live product technical gap baseline --- CHANGELOG.md | 4 + DOCUMENTATION.md | 1 + docs/product-technical-gap-baseline.md | 147 +++++++++++++++++++++++++ scripts/validate_documentation.py | 2 + 4 files changed, 154 insertions(+) create mode 100644 docs/product-technical-gap-baseline.md diff --git a/CHANGELOG.md b/CHANGELOG.md index 93891a27..7caccf76 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -6,6 +6,10 @@ All notable changes to TEPP are documented here. The format follows Keep a Chang ### Added +- Live `docs/product-technical-gap-baseline.md` mapping buyer-visible gaps to + protected-main maturity, exact current PR/issue state, stacked delivery order, + and closure evidence; placeholder-only issues #161 and #162 were closed as + queue hygiene. - `tepp_api` adaptive orchestration router (ADR 0010): versioned `direct`/`verify`/`committee`/`conductor`/`abstain` selection from CPU `f64` risk, ambiguity, evidence, and token-budget inputs; recorded stages, recursion, decomposition, access lists, and role-specific reasoning effort; fail-closed document-controlled policy/access/credentials; LLM plans remain proposals under deterministic statistical authority; comparable-budget ablation requires a direct baseline; credential-free contextual-orchestrator binding. Live NIM HTTP remains accepted-target. - `tepp_api` purpose-bound provider-payload minimization: time-bounded `PurposeGrant` evaluation, fail-closed expired/not-yet-valid/inverted/cross-tenant/impossible-calendar denial, semantic UTC calendar validation, refusal to copy identity mappings into model-provider payloads or ordinary logs, preservation of opaque analytical identifiers and membership roles (no blanket PII mask), a separately authorized scientific re-identification path, and an internally bound FIPS 180-4 SHA-256 audit digest appended through `ReidentificationAuditSink` before disclosure. - `persistence_postgres` backup/restore integrity: restored snapshots stay unusable until tenant, canonical `SHA-256`, knowledge-cutoff eligibility, temporal window order, and append-only triggers revalidate; SQL probes raise `restore integrity failed` (ADR 0013). diff --git a/DOCUMENTATION.md b/DOCUMENTATION.md index 3f094947..c7b26635 100644 --- a/DOCUMENTATION.md +++ b/DOCUMENTATION.md @@ -5,6 +5,7 @@ TEPP's approved PRD v0.4 and implementation plan are the primary product baselin | Area | Canonical document | |---|---| | Approved product requirements | [`docs/product/prd-v0.4-approved.md`](docs/product/prd-v0.4-approved.md) | +| Live product and technical gap baseline | [`docs/product-technical-gap-baseline.md`](docs/product-technical-gap-baseline.md) | | Whole-conversation documentation fitness | [`docs/DOCUMENTATION_ASSESSMENT.md`](docs/DOCUMENTATION_ASSESSMENT.md) | | Technical requirements | [`docs/TRD.md`](docs/TRD.md) | | Architecture | [`ARCHITECTURE.md`](ARCHITECTURE.md) | diff --git a/docs/product-technical-gap-baseline.md b/docs/product-technical-gap-baseline.md new file mode 100644 index 00000000..d60e51e9 --- /dev/null +++ b/docs/product-technical-gap-baseline.md @@ -0,0 +1,147 @@ +# Product and Technical Gap Baseline + +**Status:** Live delivery baseline +**Product:** Temporal Event Psychometrics Platform (TEPP) +**Snapshot:** 2026-08-20 18:15 KST +**Protected-main evidence:** `7c29e7c971d7940e1fb3def1ed3aae2d1bc8ad4a` + +## Purpose + +This document turns the approved product, technical, scientific, security, and +operability documents into an executable buyer-gap register. It records what a +buyer can use on protected `main`, what is being delivered on open pull +requests, and the evidence required before a capability can be described as +shipped. Re-read the live pull request and check links before making a release +or customer commitment; the table below is a time-stamped snapshot, not a +replacement for current-head GitHub evidence. + +The immediate buyer action is to use the priority order and acceptance gates in +this document to choose which integration or measurement outcome to validate +next. A capability marked `active-PR` is not available from protected `main`. + +## Authority and derivation + +The gap register is derived from these canonical sources: + +| Concern | Authority | How it constrains the gap register | +|---|---|---| +| Product outcomes and user decisions | [`docs/product/prd-v0.4-approved.md`](product/prd-v0.4-approved.md) | Defines temporal evidence, relational measurement, scientific users, visual outputs, and release outcomes. | +| Technical and runtime contracts | [`docs/TRD.md`](TRD.md) | Separates protected-main implementation from accepted-target architecture and requires Rust, temporal eligibility, modular APIs, and realistic validation. | +| Runtime and service boundaries | [`docs/UML.md`](UML.md), [`ARCHITECTURE.md`](../ARCHITECTURE.md), [`docs/API_CONTRACT.md`](API_CONTRACT.md) | Defines standalone crates, versioned interchange, temporal flows, and no cross-service application-table coupling. | +| Data authority and persistence | [`docs/ERD.md`](ERD.md), [`docs/TRACEABILITY.md`](TRACEABILITY.md), [`docs/adr/0013-bitemporal-persistence-reproducibility-and-split-authority.md`](adr/0013-bitemporal-persistence-reproducibility-and-split-authority.md) | Requires immutable provenance, six-clock eligibility, relation-aware splits, third-normal-form persistence, and reproducible artifacts. | +| Scientific and release promotion | [`docs/validation/temporal-event-foundation.md`](validation/temporal-event-foundation.md), [`docs/adr/0014-scientific-claim-promotion-and-release-evidence.md`](adr/0014-scientific-claim-promotion-and-release-evidence.md) | Prevents a design document, simulation, queued check, or LLM judgment from becoming a product claim. | +| Automation and merge authority | [`docs/operations/HOURLY_NIM_PRODUCT_DEVELOPMENT.md`](operations/HOURLY_NIM_PRODUCT_DEVELOPMENT.md), [`docs/adr/0015-autonomous-development-review-and-merge-authority.md`](adr/0015-autonomous-development-review-and-merge-authority.md) | Keeps proposal, verification, publication, independent review, and merge authority separate. | +| Scientific, privacy, and assurance constraints | [`docs/TEST_STRATEGY.md`](TEST_STRATEGY.md), [`docs/PRIVACY_DATA_GOVERNANCE.md`](PRIVACY_DATA_GOVERNANCE.md), [`docs/COMPLIANCE_READINESS.md`](COMPLIANCE_READINESS.md) | Requires recovery/parity tests, purpose-bound identity handling, and CSAP/SOC 2 readiness evidence without false certification claims. | +| Live delivery state | [TEPP open pull requests](https://github.com/ContextualWisdomLab/TEPP/pulls?q=is%3Apr+is%3Aopen), [TEPP open issues](https://github.com/ContextualWisdomLab/TEPP/issues?q=is%3Aissue+is%3Aopen) | Supplies current-head SHA, base branch, review, check, dependency, and issue evidence. | + +## Buyer-gap register + +| ID | Buyer-visible gap | Current maturity | Delivery authority | Closure evidence | +|---|---|---|---|---| +| GAP-001 | A consumer can submit an analysis run and receive a durable receipt, but protected `main` does not yet publish the separate deterministic completed-result contract needed to distinguish `accepted`, `running`, success, and typed terminal failure. | `active-PR` | PR #157; linked issue #156 | Current-head checks and qualifying review; request/result binding, cutoff/snapshot/model/output-profile identity, canonical digest, bounded summary, deterministic retrieval, and fail-closed mismatch tests. | +| GAP-002 | LineageWeave and other modular consumers cannot yet rely on a protected-main live HTTP consumer boundary for analysis-run submission, temporal evidence context, and cutoff-safe history projection. | `active-PR` | Stacked PRs #107 → #155 → #158/#159 | Merge the stack in base order after current-head review/check evidence; preserve loopback/credential/cutoff/idempotency refusal and live TCP tests. | +| GAP-003 | The platform foundation has strong temporal, evidence, membership, privacy, event, topic-coordinate, and compute contracts, but a buyer cannot yet run the complete multilingual temporal psychometrics product from protected `main`. | `partial` / `accepted-target` by capability | PRs #48, #50, #51, #91, #100, #106, #110, plus later estimator/service work | Each capability must independently pass realistic scientific recovery, numerical parity, security, documentation, and exact-head merge gates; no aggregate claim is allowed from planning documents. | +| GAP-004 | Research and operational evidence is discoverable, but there was no single live register mapping buyer outcomes to current PR/issue state, protected-main maturity, and closure evidence. | `active-PR` in this change | This document, linked from the documentation map | The baseline is required by the documentation validator and refreshed whenever the protected head, PR queue, issue queue, or capability maturity changes materially. | +| GAP-005 | Coordinated visual analytics, accessible exact-value exports, design tokens, Storybook inventory, and Figma interaction contracts are not yet needed for the current headless Rust/API slice, so a buyer cannot yet validate a visual analytics workflow. | `accepted-target` | PRD phase 7 and the visual-analytics roadmap phase | Start a separate UI/product-design PR only after the stable data/API contract exists; that PR's ADR must record the real Figma File ID and Storybook inventory before implementation. | + +## Current pull-request queue + +The following table was read from GitHub at the snapshot time. `pending` is the +number of queued or in-progress check entries returned for that exact HEAD; +`failed` counts completed failure/cancellation/timeout/action-required entries. +An empty review decision means that no qualifying decision was reported by the +API at snapshot time. These values do not authorize a merge by themselves. + +| PR | Head | Base | Merge state | Review decision | Pending | Failed | Delivery role | +|---:|---|---|---|---|---:|---:|---| +| [159](https://github.com/ContextualWisdomLab/TEPP/pull/159) | `5295f5e` | `feat/lineageweave-live-consumer-contract` | `MERGEABLE/UNSTABLE` | required | 6 | 0 | LineageWeave cutoff-safe history projection | +| [158](https://github.com/ContextualWisdomLab/TEPP/pull/158) | `99c8d4c` | `feat/lineageweave-live-consumer-contract` | `MERGEABLE/UNSTABLE` | required | 4 | 0 | LineageWeave temporal evidence context | +| [157](https://github.com/ContextualWisdomLab/TEPP/pull/157) | `30918e5` | `main` | `MERGEABLE/BLOCKED` | `REVIEW_REQUIRED` | 0 | 0 | Completed analysis-run result contract | +| [155](https://github.com/ContextualWisdomLab/TEPP/pull/155) | `0e29108` | `cursor/bc-422aba2a-86ab-45e3-9911-95cff5c28a87-5627` | `MERGEABLE/CLEAN` | required | 0 | 0 | Modular LineageWeave consumer parent | +| [116](https://github.com/ContextualWisdomLab/TEPP/pull/116) | `5f9d7bf` | `main` | `MERGEABLE/BLOCKED` | `REVIEW_REQUIRED` | 0 | 0 | APA 7 method-paper doctoring | +| [115](https://github.com/ContextualWisdomLab/TEPP/pull/115) | `2525b8e` | `main` | `MERGEABLE/BLOCKED` | required | 1 | 0 | Coverage-authority quality validator | +| [110](https://github.com/ContextualWisdomLab/TEPP/pull/110) | `c63e1cf` | `main` | `MERGEABLE/BLOCKED` | `REVIEW_REQUIRED` | 17 | 0 | Corpus-split leakage-audit manifest | +| [107](https://github.com/ContextualWisdomLab/TEPP/pull/107) | `a6cea38` | `main` | `MERGEABLE/BLOCKED` | `REVIEW_REQUIRED` | 17 | 0 | Loopback Naruon analysis-run service | +| [106](https://github.com/ContextualWisdomLab/TEPP/pull/106) | `d01892e` | `main` | `MERGEABLE/BLOCKED` | `REVIEW_REQUIRED` | 0 | 0 | Privacy audit-event inspection | +| [100](https://github.com/ContextualWisdomLab/TEPP/pull/100) | `3e928bc` | `main` | `MERGEABLE/BLOCKED` | `REVIEW_REQUIRED` | 0 | 0 | Live service-TLS bind policy | +| [91](https://github.com/ContextualWisdomLab/TEPP/pull/91) | `53a5a31` | `main` | `MERGEABLE/BLOCKED` | `CHANGES_REQUESTED` | 1 | 0 | Derived-artifact sensitivity inheritance | +| [51](https://github.com/ContextualWisdomLab/TEPP/pull/51) | `0111a1a` | `main` | `MERGEABLE/BLOCKED` | `CHANGES_REQUESTED` | 0 | 0 | VRAM budget and CPU fallback types | +| [50](https://github.com/ContextualWisdomLab/TEPP/pull/50) | `af67f14` | `main` | `MERGEABLE/BLOCKED` | `CHANGES_REQUESTED` | 17 | 0 | TDT/CHRONOS transition boundary | +| [48](https://github.com/ContextualWisdomLab/TEPP/pull/48) | `8e88b33` | `main` | `MERGEABLE/BLOCKED` | `CHANGES_REQUESTED` | 0 | 0 | Logistic-normal topic coordinates | + +### Merge and review order + +1. Process independent current-main PRs by exact-head review and required-check + evidence; no stale `CHANGES_REQUESTED` or queued check is sufficient. +2. Process the LineageWeave stack in dependency order: **#107 → #155 → + (#158 and #159)**. Re-fetch each remote head immediately before any commit, + push, or merge and preserve remote-agent commits. +3. Process #157 as the completion of issue #156. Keep the issue open until the + PR is actually merged and the protected-main result contract is verified. +4. After each merge or closure, enumerate the queue again. A clean merge state + without a qualifying independent review is not merge-ready. + +## Issue queue and hygiene + +At the snapshot, issue #156 is the only open issue with product acceptance +criteria. It remains open because PR #157 is not merged. Issues #161 and #162 +were closed as queue-hygiene placeholders: they contained no buyer outcome, +acceptance criteria, or evidence requirement. Reopen a placeholder only with a +concrete customer action and verifiable acceptance test. + +## Product and technical delivery specification + +The next buyer-facing delivery slice is the completed-result interchange: + +- Keep the accepted receipt and completed result as separate DTO families. +- Bind result identity to tenant/workspace, accepted run, immutable snapshot, + knowledge cutoff, model contract, output profile, idempotency key, and result + digest. +- Permit only terminal success or typed terminal failure to carry completion + metadata; `accepted` and `running` remain non-measurement states. +- Reject unknown fields, unsupported versions, malformed timestamps/digests, + oversized payloads, cross-tenant/snapshot/cutoff/model/profile mismatches, + source text, credentials, and direct identity. +- Keep deterministic/statistical scientific authority outside the LLM; an LLM + interpretation can annotate evidence but cannot promote a result to truth. + +This specification is already owned by issue #156 and PR #157. Do not create a +duplicate implementation while that PR is in the review/check loop. + +## Architecture, data, and assurance constraints + +- Rust owns production mathematical and psychometric arithmetic; every future + estimator needs a CPU `f64` reference, bounded parallel execution, GPU parity, + and safe VRAM-to-CPU fallback evidence. +- Temporal analyses must preserve event, assertion, document, system, + availability, and knowledge-cutoff clocks and must reject future-available + evidence. +- Multiple-membership and cross-classified structures remain explicit so a + document is not treated as an independent atom when it belongs to several + authors, teams, projects, episodes, or roles. +- Database objects use descriptive two-or-more-word `snake_case` names and + normalized ownership/temporal/provenance tables; hot-partition mitigation + must be designed with measured access patterns before a physical migration. +- Purpose-bound authorization, opaque analytical identifiers, protected identity + mappings, encryption, retention/deletion, selective disclosure, and audit + preserve PII utility without blanket masking. +- CSAP and SOC 2 are readiness targets only. Certification or attestation needs + independent evidence outside this repository. +- The present slice has no frontend interaction contract. Figma and Storybook + are therefore deferred; when visual analytics begins, create the Figma file, + record its actual File ID in the owning ADR, and test the shared design tokens + and accessible interaction states. + +## Refresh rule + +Refresh this file when a PR head/base changes materially, a review or required +check changes, an issue opens/closes, a capability crosses a maturity boundary, +or a buyer-visible gap is added/removed. Use the current protected-main SHA and +current PR head SHA in every claim. Keep the document small: update the table +and evidence links rather than creating a second planning register. + +## References + +The authoritative APA 7 research register is [`docs/research/standards-and-literature.md`](research/standards-and-literature.md). +Method-specific sources remain in the linked doctoring documents and ADRs; this +baseline records delivery implications and does not replace those sources. diff --git a/scripts/validate_documentation.py b/scripts/validate_documentation.py index c0603c4d..121c6164 100644 --- a/scripts/validate_documentation.py +++ b/scripts/validate_documentation.py @@ -41,6 +41,7 @@ "docs/adr/0015-autonomous-development-review-and-merge-authority.md", "docs/adr/0016-tdt-chronos-event-intelligence-boundary.md", "docs/product/prd-v0.4-approved.md", + "docs/product-technical-gap-baseline.md", "docs/roadmaps/2026-08-05-tepp-delivery-roadmap.md", "docs/superpowers/plans/2026-08-05-temporal-event-foundation.md", "docs/research/standards-and-literature.md", @@ -79,6 +80,7 @@ CANONICAL_LINKS = ( "docs/product/prd-v0.4-approved.md", + "docs/product-technical-gap-baseline.md", "docs/DOCUMENTATION_ASSESSMENT.md", "docs/TRD.md", "ARCHITECTURE.md", From 7a3a53e5ccef06c60146671bd96eaec381f8702b Mon Sep 17 00:00:00 2001 From: Seongho Bae Date: Thu, 20 Aug 2026 19:01:06 +0900 Subject: [PATCH 02/52] docs: refresh live delivery baseline --- docs/product-technical-gap-baseline.md | 42 ++++++++++++++------------ 1 file changed, 22 insertions(+), 20 deletions(-) diff --git a/docs/product-technical-gap-baseline.md b/docs/product-technical-gap-baseline.md index d60e51e9..1c330578 100644 --- a/docs/product-technical-gap-baseline.md +++ b/docs/product-technical-gap-baseline.md @@ -2,7 +2,7 @@ **Status:** Live delivery baseline **Product:** Temporal Event Psychometrics Platform (TEPP) -**Snapshot:** 2026-08-20 18:15 KST +**Snapshot:** 2026-08-20 18:57 KST **Protected-main evidence:** `7c29e7c971d7940e1fb3def1ed3aae2d1bc8ad4a` ## Purpose @@ -46,28 +46,30 @@ The gap register is derived from these canonical sources: ## Current pull-request queue -The following table was read from GitHub at the snapshot time. `pending` is the -number of queued or in-progress check entries returned for that exact HEAD; -`failed` counts completed failure/cancellation/timeout/action-required entries. +The following table was read from GitHub at the snapshot time. Check evidence is +reported qualitatively so a queued run cannot be mistaken for a completed pass. An empty review decision means that no qualifying decision was reported by the API at snapshot time. These values do not authorize a merge by themselves. -| PR | Head | Base | Merge state | Review decision | Pending | Failed | Delivery role | -|---:|---|---|---|---|---:|---:|---| -| [159](https://github.com/ContextualWisdomLab/TEPP/pull/159) | `5295f5e` | `feat/lineageweave-live-consumer-contract` | `MERGEABLE/UNSTABLE` | required | 6 | 0 | LineageWeave cutoff-safe history projection | -| [158](https://github.com/ContextualWisdomLab/TEPP/pull/158) | `99c8d4c` | `feat/lineageweave-live-consumer-contract` | `MERGEABLE/UNSTABLE` | required | 4 | 0 | LineageWeave temporal evidence context | -| [157](https://github.com/ContextualWisdomLab/TEPP/pull/157) | `30918e5` | `main` | `MERGEABLE/BLOCKED` | `REVIEW_REQUIRED` | 0 | 0 | Completed analysis-run result contract | -| [155](https://github.com/ContextualWisdomLab/TEPP/pull/155) | `0e29108` | `cursor/bc-422aba2a-86ab-45e3-9911-95cff5c28a87-5627` | `MERGEABLE/CLEAN` | required | 0 | 0 | Modular LineageWeave consumer parent | -| [116](https://github.com/ContextualWisdomLab/TEPP/pull/116) | `5f9d7bf` | `main` | `MERGEABLE/BLOCKED` | `REVIEW_REQUIRED` | 0 | 0 | APA 7 method-paper doctoring | -| [115](https://github.com/ContextualWisdomLab/TEPP/pull/115) | `2525b8e` | `main` | `MERGEABLE/BLOCKED` | required | 1 | 0 | Coverage-authority quality validator | -| [110](https://github.com/ContextualWisdomLab/TEPP/pull/110) | `c63e1cf` | `main` | `MERGEABLE/BLOCKED` | `REVIEW_REQUIRED` | 17 | 0 | Corpus-split leakage-audit manifest | -| [107](https://github.com/ContextualWisdomLab/TEPP/pull/107) | `a6cea38` | `main` | `MERGEABLE/BLOCKED` | `REVIEW_REQUIRED` | 17 | 0 | Loopback Naruon analysis-run service | -| [106](https://github.com/ContextualWisdomLab/TEPP/pull/106) | `d01892e` | `main` | `MERGEABLE/BLOCKED` | `REVIEW_REQUIRED` | 0 | 0 | Privacy audit-event inspection | -| [100](https://github.com/ContextualWisdomLab/TEPP/pull/100) | `3e928bc` | `main` | `MERGEABLE/BLOCKED` | `REVIEW_REQUIRED` | 0 | 0 | Live service-TLS bind policy | -| [91](https://github.com/ContextualWisdomLab/TEPP/pull/91) | `53a5a31` | `main` | `MERGEABLE/BLOCKED` | `CHANGES_REQUESTED` | 1 | 0 | Derived-artifact sensitivity inheritance | -| [51](https://github.com/ContextualWisdomLab/TEPP/pull/51) | `0111a1a` | `main` | `MERGEABLE/BLOCKED` | `CHANGES_REQUESTED` | 0 | 0 | VRAM budget and CPU fallback types | -| [50](https://github.com/ContextualWisdomLab/TEPP/pull/50) | `af67f14` | `main` | `MERGEABLE/BLOCKED` | `CHANGES_REQUESTED` | 17 | 0 | TDT/CHRONOS transition boundary | -| [48](https://github.com/ContextualWisdomLab/TEPP/pull/48) | `8e88b33` | `main` | `MERGEABLE/BLOCKED` | `CHANGES_REQUESTED` | 0 | 0 | Logistic-normal topic coordinates | +| PR | Head | Base | Merge state | Review decision | Current check evidence | Delivery role | +|---:|---|---|---|---|---|---| +| [164](https://github.com/ContextualWisdomLab/TEPP/pull/164) | `b613ec3` | `main` | `MERGEABLE/BLOCKED` | `REVIEW_REQUIRED` | required Checks queued; no completed failure observed | Product/technical gap baseline | +| [159](https://github.com/ContextualWisdomLab/TEPP/pull/159) | `586cda5` | `feat/lineageweave-live-consumer-contract` | `MERGEABLE/UNSTABLE` | required | required Checks queued; no completed failure observed | LineageWeave cutoff-safe history projection | +| [158](https://github.com/ContextualWisdomLab/TEPP/pull/158) | `99c8d4c` | `feat/lineageweave-live-consumer-contract` | `MERGEABLE/CLEAN` | required | current Checks green; independent review still required | LineageWeave temporal evidence context | +| [157](https://github.com/ContextualWisdomLab/TEPP/pull/157) | `f1c94f7` | `main` | `MERGEABLE/BLOCKED` | `REVIEW_REQUIRED` | required Checks queued; no completed failure observed | Completed analysis-run result contract | +| [155](https://github.com/ContextualWisdomLab/TEPP/pull/155) | `0e29108` | `cursor/bc-422aba2a-86ab-45e3-9911-95cff5c28a87-5627` | `MERGEABLE/CLEAN` | required | current Checks green; independent review still required | Modular LineageWeave consumer parent | +| [144](https://github.com/ContextualWisdomLab/TEPP/pull/144) | `980b62b` | `agent/psychometric-posterior-esem-input` | `MERGEABLE/UNSTABLE` | required | required Checks queued; scientific tests pass locally | Multilevel event-time psychometric recovery | +| [116](https://github.com/ContextualWisdomLab/TEPP/pull/116) | `5f9d7bf` | `main` | `MERGEABLE/BLOCKED` | `REVIEW_REQUIRED` | current Checks green; independent review still required | APA 7 method-paper doctoring | +| [115](https://github.com/ContextualWisdomLab/TEPP/pull/115) | `2106170` | `main` | `MERGEABLE/BLOCKED` | `REVIEW_REQUIRED` | required Checks queued; no completed failure observed | Coverage-authority quality validator | +| [110](https://github.com/ContextualWisdomLab/TEPP/pull/110) | `c63e1cf` | `main` | `MERGEABLE/BLOCKED` | `REVIEW_REQUIRED` | current Checks green; independent review still required | Corpus-split leakage-audit manifest | +| [107](https://github.com/ContextualWisdomLab/TEPP/pull/107) | `542fa0a` | `main` | `MERGEABLE/BLOCKED` | `REVIEW_REQUIRED` | current Checks green; independent review still required | Loopback Naruon analysis-run service | +| [106](https://github.com/ContextualWisdomLab/TEPP/pull/106) | `d01892e` | `main` | `MERGEABLE/BLOCKED` | `REVIEW_REQUIRED` | current Checks green; independent review still required | Privacy audit-event inspection | +| [100](https://github.com/ContextualWisdomLab/TEPP/pull/100) | `3e928bc` | `main` | `MERGEABLE/BLOCKED` | `REVIEW_REQUIRED` | current Checks green; independent review still required | Live service-TLS bind policy | +| [91](https://github.com/ContextualWisdomLab/TEPP/pull/91) | `53a5a31` | `main` | `MERGEABLE/BLOCKED` | `CHANGES_REQUESTED` | no completed failure; review changes remain | Derived-artifact sensitivity inheritance | +| [62](https://github.com/ContextualWisdomLab/TEPP/pull/62) | `1951ab4` | `main` | `MERGEABLE/BLOCKED` | required | required Checks queued; no completed failure observed | Simulation cutoff eligibility | +| [51](https://github.com/ContextualWisdomLab/TEPP/pull/51) | `0111a1a` | `main` | `MERGEABLE/BLOCKED` | `CHANGES_REQUESTED` | current Checks green; review changes remain | VRAM budget and CPU fallback types | +| [50](https://github.com/ContextualWisdomLab/TEPP/pull/50) | `fa4dff2` | `main` | `MERGEABLE/BLOCKED` | `CHANGES_REQUESTED` | current Checks green; review changes remain | TDT/CHRONOS transition boundary | +| [48](https://github.com/ContextualWisdomLab/TEPP/pull/48) | `8e88b33` | `main` | `MERGEABLE/BLOCKED` | `CHANGES_REQUESTED` | current Checks green; review changes remain | Logistic-normal topic coordinates | ### Merge and review order From 294e1200a7236146f6f08b10bc59077f108fa0be Mon Sep 17 00:00:00 2001 From: Seongho Bae Date: Thu, 20 Aug 2026 19:07:50 +0900 Subject: [PATCH 03/52] docs: record psychometric draft state --- docs/product-technical-gap-baseline.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/product-technical-gap-baseline.md b/docs/product-technical-gap-baseline.md index 1c330578..01e3846b 100644 --- a/docs/product-technical-gap-baseline.md +++ b/docs/product-technical-gap-baseline.md @@ -58,7 +58,7 @@ API at snapshot time. These values do not authorize a merge by themselves. | [158](https://github.com/ContextualWisdomLab/TEPP/pull/158) | `99c8d4c` | `feat/lineageweave-live-consumer-contract` | `MERGEABLE/CLEAN` | required | current Checks green; independent review still required | LineageWeave temporal evidence context | | [157](https://github.com/ContextualWisdomLab/TEPP/pull/157) | `f1c94f7` | `main` | `MERGEABLE/BLOCKED` | `REVIEW_REQUIRED` | required Checks queued; no completed failure observed | Completed analysis-run result contract | | [155](https://github.com/ContextualWisdomLab/TEPP/pull/155) | `0e29108` | `cursor/bc-422aba2a-86ab-45e3-9911-95cff5c28a87-5627` | `MERGEABLE/CLEAN` | required | current Checks green; independent review still required | Modular LineageWeave consumer parent | -| [144](https://github.com/ContextualWisdomLab/TEPP/pull/144) | `980b62b` | `agent/psychometric-posterior-esem-input` | `MERGEABLE/UNSTABLE` | required | required Checks queued; scientific tests pass locally | Multilevel event-time psychometric recovery | +| [144](https://github.com/ContextualWisdomLab/TEPP/pull/144) | `980b62b` | `agent/psychometric-posterior-esem-input` | `MERGEABLE/UNSTABLE` | draft; review required after ready-for-review | required Checks queued; scientific tests pass locally | Multilevel event-time psychometric recovery | | [116](https://github.com/ContextualWisdomLab/TEPP/pull/116) | `5f9d7bf` | `main` | `MERGEABLE/BLOCKED` | `REVIEW_REQUIRED` | current Checks green; independent review still required | APA 7 method-paper doctoring | | [115](https://github.com/ContextualWisdomLab/TEPP/pull/115) | `2106170` | `main` | `MERGEABLE/BLOCKED` | `REVIEW_REQUIRED` | required Checks queued; no completed failure observed | Coverage-authority quality validator | | [110](https://github.com/ContextualWisdomLab/TEPP/pull/110) | `c63e1cf` | `main` | `MERGEABLE/BLOCKED` | `REVIEW_REQUIRED` | current Checks green; independent review still required | Corpus-split leakage-audit manifest | From a1ab6cee5112e778d28439f65c82ca7ce2172b1e Mon Sep 17 00:00:00 2001 From: Seongho Bae Date: Thu, 20 Aug 2026 19:19:57 +0900 Subject: [PATCH 04/52] docs: refresh temporal and image delivery queue --- docs/product-technical-gap-baseline.md | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/docs/product-technical-gap-baseline.md b/docs/product-technical-gap-baseline.md index 01e3846b..9e401f55 100644 --- a/docs/product-technical-gap-baseline.md +++ b/docs/product-technical-gap-baseline.md @@ -2,7 +2,7 @@ **Status:** Live delivery baseline **Product:** Temporal Event Psychometrics Platform (TEPP) -**Snapshot:** 2026-08-20 18:57 KST +**Snapshot:** 2026-08-20 19:19 KST **Protected-main evidence:** `7c29e7c971d7940e1fb3def1ed3aae2d1bc8ad4a` ## Purpose @@ -67,6 +67,8 @@ API at snapshot time. These values do not authorize a merge by themselves. | [100](https://github.com/ContextualWisdomLab/TEPP/pull/100) | `3e928bc` | `main` | `MERGEABLE/BLOCKED` | `REVIEW_REQUIRED` | current Checks green; independent review still required | Live service-TLS bind policy | | [91](https://github.com/ContextualWisdomLab/TEPP/pull/91) | `53a5a31` | `main` | `MERGEABLE/BLOCKED` | `CHANGES_REQUESTED` | no completed failure; review changes remain | Derived-artifact sensitivity inheritance | | [62](https://github.com/ContextualWisdomLab/TEPP/pull/62) | `1951ab4` | `main` | `MERGEABLE/BLOCKED` | required | required Checks queued; no completed failure observed | Simulation cutoff eligibility | +| [61](https://github.com/ContextualWisdomLab/TEPP/pull/61) | `8ebbc04` | `main` | `MERGEABLE/BLOCKED` | `REVIEW_REQUIRED` | required Checks queued; no completed failure observed | Interval-aware uncertain availability cutoff | +| [58](https://github.com/ContextualWisdomLab/TEPP/pull/58) | `e98ada4` | `main` | `MERGEABLE/BLOCKED` | `REVIEW_REQUIRED` | required Checks queued; no completed failure observed | Positional embedded image source units | | [51](https://github.com/ContextualWisdomLab/TEPP/pull/51) | `0111a1a` | `main` | `MERGEABLE/BLOCKED` | `CHANGES_REQUESTED` | current Checks green; review changes remain | VRAM budget and CPU fallback types | | [50](https://github.com/ContextualWisdomLab/TEPP/pull/50) | `fa4dff2` | `main` | `MERGEABLE/BLOCKED` | `CHANGES_REQUESTED` | current Checks green; review changes remain | TDT/CHRONOS transition boundary | | [48](https://github.com/ContextualWisdomLab/TEPP/pull/48) | `8e88b33` | `main` | `MERGEABLE/BLOCKED` | `CHANGES_REQUESTED` | current Checks green; review changes remain | Logistic-normal topic coordinates | From ad6c2590ced21d579b49c98fa83efc0b92d9a05f Mon Sep 17 00:00:00 2001 From: Seongho Bae Date: Thu, 20 Aug 2026 19:28:13 +0900 Subject: [PATCH 05/52] docs: record Unicode identity PR in gap baseline --- docs/product-technical-gap-baseline.md | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/docs/product-technical-gap-baseline.md b/docs/product-technical-gap-baseline.md index 9e401f55..1e1c6977 100644 --- a/docs/product-technical-gap-baseline.md +++ b/docs/product-technical-gap-baseline.md @@ -2,7 +2,7 @@ **Status:** Live delivery baseline **Product:** Temporal Event Psychometrics Platform (TEPP) -**Snapshot:** 2026-08-20 19:19 KST +**Snapshot:** 2026-08-20 19:27 KST **Protected-main evidence:** `7c29e7c971d7940e1fb3def1ed3aae2d1bc8ad4a` ## Purpose @@ -53,7 +53,7 @@ API at snapshot time. These values do not authorize a merge by themselves. | PR | Head | Base | Merge state | Review decision | Current check evidence | Delivery role | |---:|---|---|---|---|---|---| -| [164](https://github.com/ContextualWisdomLab/TEPP/pull/164) | `b613ec3` | `main` | `MERGEABLE/BLOCKED` | `REVIEW_REQUIRED` | required Checks queued; no completed failure observed | Product/technical gap baseline | +| [164](https://github.com/ContextualWisdomLab/TEPP/pull/164) | `a1ab6ce` | `main` | `MERGEABLE/BLOCKED` | `REVIEW_REQUIRED` | required Checks queued; no completed failure observed | Product/technical gap baseline | | [159](https://github.com/ContextualWisdomLab/TEPP/pull/159) | `586cda5` | `feat/lineageweave-live-consumer-contract` | `MERGEABLE/UNSTABLE` | required | required Checks queued; no completed failure observed | LineageWeave cutoff-safe history projection | | [158](https://github.com/ContextualWisdomLab/TEPP/pull/158) | `99c8d4c` | `feat/lineageweave-live-consumer-contract` | `MERGEABLE/CLEAN` | required | current Checks green; independent review still required | LineageWeave temporal evidence context | | [157](https://github.com/ContextualWisdomLab/TEPP/pull/157) | `f1c94f7` | `main` | `MERGEABLE/BLOCKED` | `REVIEW_REQUIRED` | required Checks queued; no completed failure observed | Completed analysis-run result contract | @@ -69,6 +69,7 @@ API at snapshot time. These values do not authorize a merge by themselves. | [62](https://github.com/ContextualWisdomLab/TEPP/pull/62) | `1951ab4` | `main` | `MERGEABLE/BLOCKED` | required | required Checks queued; no completed failure observed | Simulation cutoff eligibility | | [61](https://github.com/ContextualWisdomLab/TEPP/pull/61) | `8ebbc04` | `main` | `MERGEABLE/BLOCKED` | `REVIEW_REQUIRED` | required Checks queued; no completed failure observed | Interval-aware uncertain availability cutoff | | [58](https://github.com/ContextualWisdomLab/TEPP/pull/58) | `e98ada4` | `main` | `MERGEABLE/BLOCKED` | `REVIEW_REQUIRED` | required Checks queued; no completed failure observed | Positional embedded image source units | +| [59](https://github.com/ContextualWisdomLab/TEPP/pull/59) | `43bf6cf` | `main` | `MERGEABLE/BLOCKED` | `REVIEW_REQUIRED` | required Checks queued; no completed failure observed | Unicode NFC/NFD canonical identity for split leakage | | [51](https://github.com/ContextualWisdomLab/TEPP/pull/51) | `0111a1a` | `main` | `MERGEABLE/BLOCKED` | `CHANGES_REQUESTED` | current Checks green; review changes remain | VRAM budget and CPU fallback types | | [50](https://github.com/ContextualWisdomLab/TEPP/pull/50) | `fa4dff2` | `main` | `MERGEABLE/BLOCKED` | `CHANGES_REQUESTED` | current Checks green; review changes remain | TDT/CHRONOS transition boundary | | [48](https://github.com/ContextualWisdomLab/TEPP/pull/48) | `8e88b33` | `main` | `MERGEABLE/BLOCKED` | `CHANGES_REQUESTED` | current Checks green; review changes remain | Logistic-normal topic coordinates | From 771f3436375ad38f70ce4b5df4c501e36fffdee9 Mon Sep 17 00:00:00 2001 From: Seongho Bae Date: Thu, 20 Aug 2026 19:45:15 +0900 Subject: [PATCH 06/52] docs: refresh buyer gap baseline for psychometric PR --- docs/product-technical-gap-baseline.md | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/docs/product-technical-gap-baseline.md b/docs/product-technical-gap-baseline.md index 1e1c6977..5972a5bc 100644 --- a/docs/product-technical-gap-baseline.md +++ b/docs/product-technical-gap-baseline.md @@ -2,7 +2,7 @@ **Status:** Live delivery baseline **Product:** Temporal Event Psychometrics Platform (TEPP) -**Snapshot:** 2026-08-20 19:27 KST +**Snapshot:** 2026-08-20 19:44 KST **Protected-main evidence:** `7c29e7c971d7940e1fb3def1ed3aae2d1bc8ad4a` ## Purpose @@ -72,6 +72,7 @@ API at snapshot time. These values do not authorize a merge by themselves. | [59](https://github.com/ContextualWisdomLab/TEPP/pull/59) | `43bf6cf` | `main` | `MERGEABLE/BLOCKED` | `REVIEW_REQUIRED` | required Checks queued; no completed failure observed | Unicode NFC/NFD canonical identity for split leakage | | [51](https://github.com/ContextualWisdomLab/TEPP/pull/51) | `0111a1a` | `main` | `MERGEABLE/BLOCKED` | `CHANGES_REQUESTED` | current Checks green; review changes remain | VRAM budget and CPU fallback types | | [50](https://github.com/ContextualWisdomLab/TEPP/pull/50) | `fa4dff2` | `main` | `MERGEABLE/BLOCKED` | `CHANGES_REQUESTED` | current Checks green; review changes remain | TDT/CHRONOS transition boundary | +| [49](https://github.com/ContextualWisdomLab/TEPP/pull/49) | `199ed6c` | `main` | `MERGEABLE/BLOCKED` | `REVIEW_REQUIRED` | required Checks queued; no completed failure observed | Posterior ESEM input gates and true-parameter RMSE | | [48](https://github.com/ContextualWisdomLab/TEPP/pull/48) | `8e88b33` | `main` | `MERGEABLE/BLOCKED` | `CHANGES_REQUESTED` | current Checks green; review changes remain | Logistic-normal topic coordinates | ### Merge and review order From 83ebbb9dc919f116ee0cce4e0faea3f38d052d7c Mon Sep 17 00:00:00 2001 From: Seongho Bae Date: Thu, 20 Aug 2026 20:01:37 +0900 Subject: [PATCH 07/52] docs: refresh baseline for branch coverage repair --- docs/product-technical-gap-baseline.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/docs/product-technical-gap-baseline.md b/docs/product-technical-gap-baseline.md index 5972a5bc..82fca4b9 100644 --- a/docs/product-technical-gap-baseline.md +++ b/docs/product-technical-gap-baseline.md @@ -2,7 +2,7 @@ **Status:** Live delivery baseline **Product:** Temporal Event Psychometrics Platform (TEPP) -**Snapshot:** 2026-08-20 19:44 KST +**Snapshot:** 2026-08-20 20:01 KST **Protected-main evidence:** `7c29e7c971d7940e1fb3def1ed3aae2d1bc8ad4a` ## Purpose @@ -71,7 +71,7 @@ API at snapshot time. These values do not authorize a merge by themselves. | [58](https://github.com/ContextualWisdomLab/TEPP/pull/58) | `e98ada4` | `main` | `MERGEABLE/BLOCKED` | `REVIEW_REQUIRED` | required Checks queued; no completed failure observed | Positional embedded image source units | | [59](https://github.com/ContextualWisdomLab/TEPP/pull/59) | `43bf6cf` | `main` | `MERGEABLE/BLOCKED` | `REVIEW_REQUIRED` | required Checks queued; no completed failure observed | Unicode NFC/NFD canonical identity for split leakage | | [51](https://github.com/ContextualWisdomLab/TEPP/pull/51) | `0111a1a` | `main` | `MERGEABLE/BLOCKED` | `CHANGES_REQUESTED` | current Checks green; review changes remain | VRAM budget and CPU fallback types | -| [50](https://github.com/ContextualWisdomLab/TEPP/pull/50) | `fa4dff2` | `main` | `MERGEABLE/BLOCKED` | `CHANGES_REQUESTED` | current Checks green; review changes remain | TDT/CHRONOS transition boundary | +| [50](https://github.com/ContextualWisdomLab/TEPP/pull/50) | `2a29e24` | `main` | `MERGEABLE/BLOCKED` | `CHANGES_REQUESTED` | required Checks queued after branch-coverage fix; no completed failure observed on this head | TDT/CHRONOS transition boundary | | [49](https://github.com/ContextualWisdomLab/TEPP/pull/49) | `199ed6c` | `main` | `MERGEABLE/BLOCKED` | `REVIEW_REQUIRED` | required Checks queued; no completed failure observed | Posterior ESEM input gates and true-parameter RMSE | | [48](https://github.com/ContextualWisdomLab/TEPP/pull/48) | `8e88b33` | `main` | `MERGEABLE/BLOCKED` | `CHANGES_REQUESTED` | current Checks green; review changes remain | Logistic-normal topic coordinates | From 6ce5375dba937c59b00b82e64c332b1b515b3932 Mon Sep 17 00:00:00 2001 From: Seongho Bae Date: Thu, 20 Aug 2026 20:09:17 +0900 Subject: [PATCH 08/52] docs: refresh baseline with current PR heads --- docs/product-technical-gap-baseline.md | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/docs/product-technical-gap-baseline.md b/docs/product-technical-gap-baseline.md index 82fca4b9..f4240e0b 100644 --- a/docs/product-technical-gap-baseline.md +++ b/docs/product-technical-gap-baseline.md @@ -2,7 +2,7 @@ **Status:** Live delivery baseline **Product:** Temporal Event Psychometrics Platform (TEPP) -**Snapshot:** 2026-08-20 20:01 KST +**Snapshot:** 2026-08-20 20:08 KST **Protected-main evidence:** `7c29e7c971d7940e1fb3def1ed3aae2d1bc8ad4a` ## Purpose @@ -53,9 +53,9 @@ API at snapshot time. These values do not authorize a merge by themselves. | PR | Head | Base | Merge state | Review decision | Current check evidence | Delivery role | |---:|---|---|---|---|---|---| -| [164](https://github.com/ContextualWisdomLab/TEPP/pull/164) | `a1ab6ce` | `main` | `MERGEABLE/BLOCKED` | `REVIEW_REQUIRED` | required Checks queued; no completed failure observed | Product/technical gap baseline | -| [159](https://github.com/ContextualWisdomLab/TEPP/pull/159) | `586cda5` | `feat/lineageweave-live-consumer-contract` | `MERGEABLE/UNSTABLE` | required | required Checks queued; no completed failure observed | LineageWeave cutoff-safe history projection | -| [158](https://github.com/ContextualWisdomLab/TEPP/pull/158) | `99c8d4c` | `feat/lineageweave-live-consumer-contract` | `MERGEABLE/CLEAN` | required | current Checks green; independent review still required | LineageWeave temporal evidence context | +| [164](https://github.com/ContextualWisdomLab/TEPP/pull/164) | `83ebbb9` | `main` | `MERGEABLE/BLOCKED` | `REVIEW_REQUIRED` | required Checks queued; no completed failure observed | Product/technical gap baseline | +| [159](https://github.com/ContextualWisdomLab/TEPP/pull/159) | `a18076d` | `feat/lineageweave-live-consumer-contract` | `MERGEABLE/UNSTABLE` | `REVIEW_REQUIRED` | current-head Checks re-running after a hosted Clippy fix; no current completed failure observed | LineageWeave cutoff-safe history projection | +| [158](https://github.com/ContextualWisdomLab/TEPP/pull/158) | `0073e83` | `feat/lineageweave-live-consumer-contract` | `MERGEABLE/UNSTABLE` | `REVIEW_REQUIRED` | current-head Checks re-running after trust-boundary fixes; no current completed failure observed | LineageWeave temporal evidence context | | [157](https://github.com/ContextualWisdomLab/TEPP/pull/157) | `f1c94f7` | `main` | `MERGEABLE/BLOCKED` | `REVIEW_REQUIRED` | required Checks queued; no completed failure observed | Completed analysis-run result contract | | [155](https://github.com/ContextualWisdomLab/TEPP/pull/155) | `0e29108` | `cursor/bc-422aba2a-86ab-45e3-9911-95cff5c28a87-5627` | `MERGEABLE/CLEAN` | required | current Checks green; independent review still required | Modular LineageWeave consumer parent | | [144](https://github.com/ContextualWisdomLab/TEPP/pull/144) | `980b62b` | `agent/psychometric-posterior-esem-input` | `MERGEABLE/UNSTABLE` | draft; review required after ready-for-review | required Checks queued; scientific tests pass locally | Multilevel event-time psychometric recovery | From 6b07d661e95ff28199d75249370993be50f9d192 Mon Sep 17 00:00:00 2001 From: Seongho Bae Date: Thu, 20 Aug 2026 20:16:09 +0900 Subject: [PATCH 09/52] docs: record validation claim promotion head --- docs/product-technical-gap-baseline.md | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/docs/product-technical-gap-baseline.md b/docs/product-technical-gap-baseline.md index 82fca4b9..44e3fe14 100644 --- a/docs/product-technical-gap-baseline.md +++ b/docs/product-technical-gap-baseline.md @@ -2,7 +2,7 @@ **Status:** Live delivery baseline **Product:** Temporal Event Psychometrics Platform (TEPP) -**Snapshot:** 2026-08-20 20:01 KST +**Snapshot:** 2026-08-20 20:15 KST **Protected-main evidence:** `7c29e7c971d7940e1fb3def1ed3aae2d1bc8ad4a` ## Purpose @@ -53,7 +53,7 @@ API at snapshot time. These values do not authorize a merge by themselves. | PR | Head | Base | Merge state | Review decision | Current check evidence | Delivery role | |---:|---|---|---|---|---|---| -| [164](https://github.com/ContextualWisdomLab/TEPP/pull/164) | `a1ab6ce` | `main` | `MERGEABLE/BLOCKED` | `REVIEW_REQUIRED` | required Checks queued; no completed failure observed | Product/technical gap baseline | +| [164](https://github.com/ContextualWisdomLab/TEPP/pull/164) | `83eb9bb` | `main` | `MERGEABLE/BLOCKED` | `REVIEW_REQUIRED` | required Checks queued; no completed failure observed | Product/technical gap baseline | | [159](https://github.com/ContextualWisdomLab/TEPP/pull/159) | `586cda5` | `feat/lineageweave-live-consumer-contract` | `MERGEABLE/UNSTABLE` | required | required Checks queued; no completed failure observed | LineageWeave cutoff-safe history projection | | [158](https://github.com/ContextualWisdomLab/TEPP/pull/158) | `99c8d4c` | `feat/lineageweave-live-consumer-contract` | `MERGEABLE/CLEAN` | required | current Checks green; independent review still required | LineageWeave temporal evidence context | | [157](https://github.com/ContextualWisdomLab/TEPP/pull/157) | `f1c94f7` | `main` | `MERGEABLE/BLOCKED` | `REVIEW_REQUIRED` | required Checks queued; no completed failure observed | Completed analysis-run result contract | @@ -70,6 +70,7 @@ API at snapshot time. These values do not authorize a merge by themselves. | [61](https://github.com/ContextualWisdomLab/TEPP/pull/61) | `8ebbc04` | `main` | `MERGEABLE/BLOCKED` | `REVIEW_REQUIRED` | required Checks queued; no completed failure observed | Interval-aware uncertain availability cutoff | | [58](https://github.com/ContextualWisdomLab/TEPP/pull/58) | `e98ada4` | `main` | `MERGEABLE/BLOCKED` | `REVIEW_REQUIRED` | required Checks queued; no completed failure observed | Positional embedded image source units | | [59](https://github.com/ContextualWisdomLab/TEPP/pull/59) | `43bf6cf` | `main` | `MERGEABLE/BLOCKED` | `REVIEW_REQUIRED` | required Checks queued; no completed failure observed | Unicode NFC/NFD canonical identity for split leakage | +| [57](https://github.com/ContextualWisdomLab/TEPP/pull/57) | `14014b7` | `main` | `MERGEABLE/BLOCKED` | `REVIEW_REQUIRED` | required Checks queued; no completed failure observed | Exact-head scientific claim promotion gates | | [51](https://github.com/ContextualWisdomLab/TEPP/pull/51) | `0111a1a` | `main` | `MERGEABLE/BLOCKED` | `CHANGES_REQUESTED` | current Checks green; review changes remain | VRAM budget and CPU fallback types | | [50](https://github.com/ContextualWisdomLab/TEPP/pull/50) | `2a29e24` | `main` | `MERGEABLE/BLOCKED` | `CHANGES_REQUESTED` | required Checks queued after branch-coverage fix; no completed failure observed on this head | TDT/CHRONOS transition boundary | | [49](https://github.com/ContextualWisdomLab/TEPP/pull/49) | `199ed6c` | `main` | `MERGEABLE/BLOCKED` | `REVIEW_REQUIRED` | required Checks queued; no completed failure observed | Posterior ESEM input gates and true-parameter RMSE | From 36c18455d7d0e0fa4621a65f3d0349af5d930164 Mon Sep 17 00:00:00 2001 From: Seongho Bae Date: Thu, 20 Aug 2026 20:21:57 +0900 Subject: [PATCH 10/52] docs: refresh live PR baseline --- docs/product-technical-gap-baseline.md | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/docs/product-technical-gap-baseline.md b/docs/product-technical-gap-baseline.md index af7021dc..55907fa1 100644 --- a/docs/product-technical-gap-baseline.md +++ b/docs/product-technical-gap-baseline.md @@ -2,7 +2,7 @@ **Status:** Live delivery baseline **Product:** Temporal Event Psychometrics Platform (TEPP) -**Snapshot:** 2026-08-20 20:15 KST +**Snapshot:** 2026-08-20 20:21 KST **Protected-main evidence:** `7c29e7c971d7940e1fb3def1ed3aae2d1bc8ad4a` ## Purpose @@ -53,11 +53,11 @@ API at snapshot time. These values do not authorize a merge by themselves. | PR | Head | Base | Merge state | Review decision | Current check evidence | Delivery role | |---:|---|---|---|---|---|---| -| [164](https://github.com/ContextualWisdomLab/TEPP/pull/164) | `83ebbb9` | `main` | `MERGEABLE/BLOCKED` | `REVIEW_REQUIRED` | required Checks queued; no completed failure observed | Product/technical gap baseline | -| [159](https://github.com/ContextualWisdomLab/TEPP/pull/159) | `a18076d` | `feat/lineageweave-live-consumer-contract` | `MERGEABLE/UNSTABLE` | `REVIEW_REQUIRED` | current-head Checks re-running after a hosted Clippy fix; no current completed failure observed | LineageWeave cutoff-safe history projection | -| [158](https://github.com/ContextualWisdomLab/TEPP/pull/158) | `0073e83` | `feat/lineageweave-live-consumer-contract` | `MERGEABLE/UNSTABLE` | `REVIEW_REQUIRED` | current-head Checks re-running after trust-boundary fixes; no current completed failure observed | LineageWeave temporal evidence context | -| [157](https://github.com/ContextualWisdomLab/TEPP/pull/157) | `f1c94f7` | `main` | `MERGEABLE/BLOCKED` | `REVIEW_REQUIRED` | required Checks queued; no completed failure observed | Completed analysis-run result contract | -| [155](https://github.com/ContextualWisdomLab/TEPP/pull/155) | `0e29108` | `cursor/bc-422aba2a-86ab-45e3-9911-95cff5c28a87-5627` | `MERGEABLE/CLEAN` | required | current Checks green; independent review still required | Modular LineageWeave consumer parent | +| [164](https://github.com/ContextualWisdomLab/TEPP/pull/164) | `cfc4570` | `main` | `BLOCKED` | `REVIEW_REQUIRED` | required Checks queued; no completed failure observed | Product/technical gap baseline | +| [159](https://github.com/ContextualWisdomLab/TEPP/pull/159) | `a18076d` | `feat/lineageweave-live-consumer-contract` | `UNSTABLE` | none reported | required Checks queued for current HEAD; no completed failure observed | LineageWeave cutoff-safe history projection | +| [158](https://github.com/ContextualWisdomLab/TEPP/pull/158) | `0073e83` | `feat/lineageweave-live-consumer-contract` | `UNSTABLE` | none reported | required Checks queued for current HEAD; no completed failure observed | LineageWeave temporal evidence context | +| [157](https://github.com/ContextualWisdomLab/TEPP/pull/157) | `fb783f5` | `main` | `BLOCKED` | `REVIEW_REQUIRED` | required Checks queued for current HEAD after empty-host coverage fix; no completed failure observed | Completed analysis-run result contract | +| [155](https://github.com/ContextualWisdomLab/TEPP/pull/155) | `0e29108` | `cursor/bc-422aba2a-86ab-45e3-9911-95cff5c28a87-5627` | `CLEAN` | none reported | current Checks green; independent review still required | Modular LineageWeave consumer parent | | [144](https://github.com/ContextualWisdomLab/TEPP/pull/144) | `980b62b` | `agent/psychometric-posterior-esem-input` | `MERGEABLE/UNSTABLE` | draft; review required after ready-for-review | required Checks queued; scientific tests pass locally | Multilevel event-time psychometric recovery | | [116](https://github.com/ContextualWisdomLab/TEPP/pull/116) | `5f9d7bf` | `main` | `MERGEABLE/BLOCKED` | `REVIEW_REQUIRED` | current Checks green; independent review still required | APA 7 method-paper doctoring | | [115](https://github.com/ContextualWisdomLab/TEPP/pull/115) | `2106170` | `main` | `MERGEABLE/BLOCKED` | `REVIEW_REQUIRED` | required Checks queued; no completed failure observed | Coverage-authority quality validator | From 6904b559efcb08d5648171473d1048bd46c5cb4b Mon Sep 17 00:00:00 2001 From: Seongho Bae Date: Thu, 20 Aug 2026 20:22:46 +0900 Subject: [PATCH 11/52] docs: bind baseline to refresh head --- docs/product-technical-gap-baseline.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/docs/product-technical-gap-baseline.md b/docs/product-technical-gap-baseline.md index 55907fa1..7e43c37c 100644 --- a/docs/product-technical-gap-baseline.md +++ b/docs/product-technical-gap-baseline.md @@ -2,7 +2,7 @@ **Status:** Live delivery baseline **Product:** Temporal Event Psychometrics Platform (TEPP) -**Snapshot:** 2026-08-20 20:21 KST +**Snapshot:** 2026-08-20 20:23 KST **Protected-main evidence:** `7c29e7c971d7940e1fb3def1ed3aae2d1bc8ad4a` ## Purpose @@ -53,7 +53,7 @@ API at snapshot time. These values do not authorize a merge by themselves. | PR | Head | Base | Merge state | Review decision | Current check evidence | Delivery role | |---:|---|---|---|---|---|---| -| [164](https://github.com/ContextualWisdomLab/TEPP/pull/164) | `cfc4570` | `main` | `BLOCKED` | `REVIEW_REQUIRED` | required Checks queued; no completed failure observed | Product/technical gap baseline | +| [164](https://github.com/ContextualWisdomLab/TEPP/pull/164) | `36c1845` | `main` | `BLOCKED` | `REVIEW_REQUIRED` | required Checks queued for this refresh; no completed failure observed | Product/technical gap baseline | | [159](https://github.com/ContextualWisdomLab/TEPP/pull/159) | `a18076d` | `feat/lineageweave-live-consumer-contract` | `UNSTABLE` | none reported | required Checks queued for current HEAD; no completed failure observed | LineageWeave cutoff-safe history projection | | [158](https://github.com/ContextualWisdomLab/TEPP/pull/158) | `0073e83` | `feat/lineageweave-live-consumer-contract` | `UNSTABLE` | none reported | required Checks queued for current HEAD; no completed failure observed | LineageWeave temporal evidence context | | [157](https://github.com/ContextualWisdomLab/TEPP/pull/157) | `fb783f5` | `main` | `BLOCKED` | `REVIEW_REQUIRED` | required Checks queued for current HEAD after empty-host coverage fix; no completed failure observed | Completed analysis-run result contract | From 00ace4a2a1c941a11d6f7a818040db2f81c6d55b Mon Sep 17 00:00:00 2001 From: Seongho Bae Date: Thu, 20 Aug 2026 20:31:20 +0900 Subject: [PATCH 12/52] docs: refresh gap baseline current heads --- docs/product-technical-gap-baseline.md | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/docs/product-technical-gap-baseline.md b/docs/product-technical-gap-baseline.md index 7e43c37c..f08a29ff 100644 --- a/docs/product-technical-gap-baseline.md +++ b/docs/product-technical-gap-baseline.md @@ -2,7 +2,7 @@ **Status:** Live delivery baseline **Product:** Temporal Event Psychometrics Platform (TEPP) -**Snapshot:** 2026-08-20 20:23 KST +**Snapshot:** 2026-08-20 20:31 KST **Protected-main evidence:** `7c29e7c971d7940e1fb3def1ed3aae2d1bc8ad4a` ## Purpose @@ -53,10 +53,10 @@ API at snapshot time. These values do not authorize a merge by themselves. | PR | Head | Base | Merge state | Review decision | Current check evidence | Delivery role | |---:|---|---|---|---|---|---| -| [164](https://github.com/ContextualWisdomLab/TEPP/pull/164) | `36c1845` | `main` | `BLOCKED` | `REVIEW_REQUIRED` | required Checks queued for this refresh; no completed failure observed | Product/technical gap baseline | +| [164](https://github.com/ContextualWisdomLab/TEPP/pull/164) | `6904b55` | `main` | `BLOCKED` | `REVIEW_REQUIRED` | required Checks queued for this refresh; no completed failure observed | Product/technical gap baseline | | [159](https://github.com/ContextualWisdomLab/TEPP/pull/159) | `a18076d` | `feat/lineageweave-live-consumer-contract` | `UNSTABLE` | none reported | required Checks queued for current HEAD; no completed failure observed | LineageWeave cutoff-safe history projection | | [158](https://github.com/ContextualWisdomLab/TEPP/pull/158) | `0073e83` | `feat/lineageweave-live-consumer-contract` | `UNSTABLE` | none reported | required Checks queued for current HEAD; no completed failure observed | LineageWeave temporal evidence context | -| [157](https://github.com/ContextualWisdomLab/TEPP/pull/157) | `fb783f5` | `main` | `BLOCKED` | `REVIEW_REQUIRED` | required Checks queued for current HEAD after empty-host coverage fix; no completed failure observed | Completed analysis-run result contract | +| [157](https://github.com/ContextualWisdomLab/TEPP/pull/157) | `0cb9ff6` | `main` | `BLOCKED` | `REVIEW_REQUIRED` | required Checks queued for current HEAD after empty-host coverage fix; no completed failure observed | Completed analysis-run result contract | | [155](https://github.com/ContextualWisdomLab/TEPP/pull/155) | `0e29108` | `cursor/bc-422aba2a-86ab-45e3-9911-95cff5c28a87-5627` | `CLEAN` | none reported | current Checks green; independent review still required | Modular LineageWeave consumer parent | | [144](https://github.com/ContextualWisdomLab/TEPP/pull/144) | `980b62b` | `agent/psychometric-posterior-esem-input` | `MERGEABLE/UNSTABLE` | draft; review required after ready-for-review | required Checks queued; scientific tests pass locally | Multilevel event-time psychometric recovery | | [116](https://github.com/ContextualWisdomLab/TEPP/pull/116) | `5f9d7bf` | `main` | `MERGEABLE/BLOCKED` | `REVIEW_REQUIRED` | current Checks green; independent review still required | APA 7 method-paper doctoring | From 2dc0006001e11737dd581d5f4c24b19eead33686 Mon Sep 17 00:00:00 2001 From: Seongho Bae Date: Thu, 20 Aug 2026 22:01:18 +0900 Subject: [PATCH 13/52] docs: refresh live pull request evidence --- docs/product-technical-gap-baseline.md | 50 +++++++++++++------------- 1 file changed, 25 insertions(+), 25 deletions(-) diff --git a/docs/product-technical-gap-baseline.md b/docs/product-technical-gap-baseline.md index f08a29ff..be5cc061 100644 --- a/docs/product-technical-gap-baseline.md +++ b/docs/product-technical-gap-baseline.md @@ -2,7 +2,7 @@ **Status:** Live delivery baseline **Product:** Temporal Event Psychometrics Platform (TEPP) -**Snapshot:** 2026-08-20 20:31 KST +**Snapshot:** 2026-08-20 21:57 KST **Protected-main evidence:** `7c29e7c971d7940e1fb3def1ed3aae2d1bc8ad4a` ## Purpose @@ -51,30 +51,30 @@ reported qualitatively so a queued run cannot be mistaken for a completed pass. An empty review decision means that no qualifying decision was reported by the API at snapshot time. These values do not authorize a merge by themselves. -| PR | Head | Base | Merge state | Review decision | Current check evidence | Delivery role | -|---:|---|---|---|---|---|---| -| [164](https://github.com/ContextualWisdomLab/TEPP/pull/164) | `6904b55` | `main` | `BLOCKED` | `REVIEW_REQUIRED` | required Checks queued for this refresh; no completed failure observed | Product/technical gap baseline | -| [159](https://github.com/ContextualWisdomLab/TEPP/pull/159) | `a18076d` | `feat/lineageweave-live-consumer-contract` | `UNSTABLE` | none reported | required Checks queued for current HEAD; no completed failure observed | LineageWeave cutoff-safe history projection | -| [158](https://github.com/ContextualWisdomLab/TEPP/pull/158) | `0073e83` | `feat/lineageweave-live-consumer-contract` | `UNSTABLE` | none reported | required Checks queued for current HEAD; no completed failure observed | LineageWeave temporal evidence context | -| [157](https://github.com/ContextualWisdomLab/TEPP/pull/157) | `0cb9ff6` | `main` | `BLOCKED` | `REVIEW_REQUIRED` | required Checks queued for current HEAD after empty-host coverage fix; no completed failure observed | Completed analysis-run result contract | -| [155](https://github.com/ContextualWisdomLab/TEPP/pull/155) | `0e29108` | `cursor/bc-422aba2a-86ab-45e3-9911-95cff5c28a87-5627` | `CLEAN` | none reported | current Checks green; independent review still required | Modular LineageWeave consumer parent | -| [144](https://github.com/ContextualWisdomLab/TEPP/pull/144) | `980b62b` | `agent/psychometric-posterior-esem-input` | `MERGEABLE/UNSTABLE` | draft; review required after ready-for-review | required Checks queued; scientific tests pass locally | Multilevel event-time psychometric recovery | -| [116](https://github.com/ContextualWisdomLab/TEPP/pull/116) | `5f9d7bf` | `main` | `MERGEABLE/BLOCKED` | `REVIEW_REQUIRED` | current Checks green; independent review still required | APA 7 method-paper doctoring | -| [115](https://github.com/ContextualWisdomLab/TEPP/pull/115) | `2106170` | `main` | `MERGEABLE/BLOCKED` | `REVIEW_REQUIRED` | required Checks queued; no completed failure observed | Coverage-authority quality validator | -| [110](https://github.com/ContextualWisdomLab/TEPP/pull/110) | `c63e1cf` | `main` | `MERGEABLE/BLOCKED` | `REVIEW_REQUIRED` | current Checks green; independent review still required | Corpus-split leakage-audit manifest | -| [107](https://github.com/ContextualWisdomLab/TEPP/pull/107) | `542fa0a` | `main` | `MERGEABLE/BLOCKED` | `REVIEW_REQUIRED` | current Checks green; independent review still required | Loopback Naruon analysis-run service | -| [106](https://github.com/ContextualWisdomLab/TEPP/pull/106) | `d01892e` | `main` | `MERGEABLE/BLOCKED` | `REVIEW_REQUIRED` | current Checks green; independent review still required | Privacy audit-event inspection | -| [100](https://github.com/ContextualWisdomLab/TEPP/pull/100) | `3e928bc` | `main` | `MERGEABLE/BLOCKED` | `REVIEW_REQUIRED` | current Checks green; independent review still required | Live service-TLS bind policy | -| [91](https://github.com/ContextualWisdomLab/TEPP/pull/91) | `53a5a31` | `main` | `MERGEABLE/BLOCKED` | `CHANGES_REQUESTED` | no completed failure; review changes remain | Derived-artifact sensitivity inheritance | -| [62](https://github.com/ContextualWisdomLab/TEPP/pull/62) | `1951ab4` | `main` | `MERGEABLE/BLOCKED` | required | required Checks queued; no completed failure observed | Simulation cutoff eligibility | -| [61](https://github.com/ContextualWisdomLab/TEPP/pull/61) | `8ebbc04` | `main` | `MERGEABLE/BLOCKED` | `REVIEW_REQUIRED` | required Checks queued; no completed failure observed | Interval-aware uncertain availability cutoff | -| [58](https://github.com/ContextualWisdomLab/TEPP/pull/58) | `e98ada4` | `main` | `MERGEABLE/BLOCKED` | `REVIEW_REQUIRED` | required Checks queued; no completed failure observed | Positional embedded image source units | -| [59](https://github.com/ContextualWisdomLab/TEPP/pull/59) | `43bf6cf` | `main` | `MERGEABLE/BLOCKED` | `REVIEW_REQUIRED` | required Checks queued; no completed failure observed | Unicode NFC/NFD canonical identity for split leakage | -| [57](https://github.com/ContextualWisdomLab/TEPP/pull/57) | `14014b7` | `main` | `MERGEABLE/BLOCKED` | `REVIEW_REQUIRED` | required Checks queued; no completed failure observed | Exact-head scientific claim promotion gates | -| [51](https://github.com/ContextualWisdomLab/TEPP/pull/51) | `0111a1a` | `main` | `MERGEABLE/BLOCKED` | `CHANGES_REQUESTED` | current Checks green; review changes remain | VRAM budget and CPU fallback types | -| [50](https://github.com/ContextualWisdomLab/TEPP/pull/50) | `2a29e24` | `main` | `MERGEABLE/BLOCKED` | `CHANGES_REQUESTED` | required Checks queued after branch-coverage fix; no completed failure observed on this head | TDT/CHRONOS transition boundary | -| [49](https://github.com/ContextualWisdomLab/TEPP/pull/49) | `199ed6c` | `main` | `MERGEABLE/BLOCKED` | `REVIEW_REQUIRED` | required Checks queued; no completed failure observed | Posterior ESEM input gates and true-parameter RMSE | -| [48](https://github.com/ContextualWisdomLab/TEPP/pull/48) | `8e88b33` | `main` | `MERGEABLE/BLOCKED` | `CHANGES_REQUESTED` | current Checks green; review changes remain | Logistic-normal topic coordinates | +| PR | Head SHA | Base ref | Base SHA | Merge state | Review decision | Current check evidence | Delivery role | +|---:|---|---|---|---|---|---|---| +| [164](https://github.com/ContextualWisdomLab/TEPP/pull/164) | `00ace4a2a1c941a11d6f7a818040db2f81c6d55b` | `main` | `7c29e7c971d7940e1fb3def1ed3aae2d1bc8ad4a` | `BLOCKED` | `REVIEW_REQUIRED` | 21 completed checks passed; 1 remains queued; no completed failure observed | Product/technical gap baseline | +| [159](https://github.com/ContextualWisdomLab/TEPP/pull/159) | `855c6c7153c2f66a1c14e842ad700f571592dd35` | `feat/lineageweave-live-consumer-contract` | `0e2910825a042d7fdeb6497a20975b538493c65c` | `UNSTABLE` | none reported | 6 required Checks remain queued; no completed failure observed | LineageWeave cutoff-safe history projection | +| [158](https://github.com/ContextualWisdomLab/TEPP/pull/158) | `6d28d23c432288c4dbecbd74a25f093ed9d9ef61` | `feat/lineageweave-live-consumer-contract` | `0e2910825a042d7fdeb6497a20975b538493c65c` | `UNSTABLE` | none reported | 6 required Checks remain queued; no completed failure observed | LineageWeave temporal evidence context | +| [157](https://github.com/ContextualWisdomLab/TEPP/pull/157) | `0cb9ff6b32afb56849214bbe464ea39004c1e106` | `main` | `7c29e7c971d7940e1fb3def1ed3aae2d1bc8ad4a` | `BLOCKED` | `REVIEW_REQUIRED` | 21 completed checks passed; 1 remains queued; no completed failure observed | Completed analysis-run result contract | +| [155](https://github.com/ContextualWisdomLab/TEPP/pull/155) | `0e2910825a042d7fdeb6497a20975b538493c65c` | `cursor/bc-422aba2a-86ab-45e3-9911-95cff5c28a87-5627` | `760ac3b412223c9b269b76eb0653d991a959d727` | `CLEAN` | none reported | 6 completed Checks passed; independent review still required | Modular LineageWeave consumer parent | +| [144](https://github.com/ContextualWisdomLab/TEPP/pull/144) | `d125515ae73c33de2e7cf900dc0fa3b7deb39614` | `agent/psychometric-posterior-esem-input` | `b1004197ff9b9146de7eec8a585ed25f70aefa25` | `DIRTY` | draft; review required after ready-for-review | no Checks reported for the current draft HEAD | Multilevel event-time psychometric recovery | +| [116](https://github.com/ContextualWisdomLab/TEPP/pull/116) | `5f9d7bf73552180d73a30ddd889d9c80865c817f` | `main` | `7c29e7c971d7940e1fb3def1ed3aae2d1bc8ad4a` | `BLOCKED` | `REVIEW_REQUIRED` | 19 completed Checks passed; no queued or failed check observed | APA 7 method-paper doctoring | +| [115](https://github.com/ContextualWisdomLab/TEPP/pull/115) | `2106170a0d7984291e78c68fd68125f217746f3f` | `main` | `7c29e7c971d7940e1fb3def1ed3aae2d1bc8ad4a` | `BLOCKED` | `REVIEW_REQUIRED` | 23 completed Checks passed; 1 remains queued; no completed failure observed | Coverage-authority quality validator | +| [110](https://github.com/ContextualWisdomLab/TEPP/pull/110) | `c63e1cfce2e3fcddc46e945a54a9af71e4c9d7ab` | `main` | `7c29e7c971d7940e1fb3def1ed3aae2d1bc8ad4a` | `BLOCKED` | `REVIEW_REQUIRED` | 24 completed Checks passed; no queued or failed check observed | Corpus-split leakage-audit manifest | +| [107](https://github.com/ContextualWisdomLab/TEPP/pull/107) | `07bb21f74f3259168f5e21a0c1bdd25a812fd661` | `main` | `7c29e7c971d7940e1fb3def1ed3aae2d1bc8ad4a` | `BLOCKED` | `REVIEW_REQUIRED` | 16 completed Checks passed; 6 remain queued; no completed failure observed | Loopback Naruon analysis-run service | +| [106](https://github.com/ContextualWisdomLab/TEPP/pull/106) | `d01892e1783a3b416fbb79966821b4ea804ef2b5` | `main` | `7c29e7c971d7940e1fb3def1ed3aae2d1bc8ad4a` | `BLOCKED` | `REVIEW_REQUIRED` | 24 completed Checks passed; no queued or failed check observed | Privacy audit-event inspection | +| [100](https://github.com/ContextualWisdomLab/TEPP/pull/100) | `3e928bc0f209c74b941fa99b742d92814f610362` | `main` | `7c29e7c971d7940e1fb3def1ed3aae2d1bc8ad4a` | `BLOCKED` | `REVIEW_REQUIRED` | 24 completed Checks passed; no queued or failed check observed | Live service-TLS bind policy | +| [91](https://github.com/ContextualWisdomLab/TEPP/pull/91) | `53a5a31f893e24146b4881c7e717021649fbb330` | `main` | `7c29e7c971d7940e1fb3def1ed3aae2d1bc8ad4a` | `BLOCKED` | `CHANGES_REQUESTED` | 24 completed Checks passed; no queued or failed check observed; review changes remain | Derived-artifact sensitivity inheritance | +| [62](https://github.com/ContextualWisdomLab/TEPP/pull/62) | `1951ab43c90deda0a23106fc2bf8898328c98` | `main` | `7c29e7c971d7940e1fb3def1ed3aae2d1bc8ad4a` | `BLOCKED` | `REVIEW_REQUIRED` | 22 completed Checks passed; 1 remains queued; no completed failure observed | Simulation cutoff eligibility | +| [61](https://github.com/ContextualWisdomLab/TEPP/pull/61) | `8ebbc04eac07231413a089d7fc6b64b36ed6a61b` | `main` | `7c29e7c971d7940e1fb3def1ed3aae2d1bc8ad4a` | `BLOCKED` | `REVIEW_REQUIRED` | 22 completed Checks passed; 1 remains queued; no completed failure observed | Interval-aware uncertain availability cutoff | +| [58](https://github.com/ContextualWisdomLab/TEPP/pull/58) | `e98ada4361fd877017394c0ae83d132fabfdd4d3` | `main` | `7c29e7c971d7940e1fb3def1ed3aae2d1bc8ad4a` | `BLOCKED` | `REVIEW_REQUIRED` | 20 completed Checks passed; 1 remains queued; 2 completed coverage checks failed; [branch](https://github.com/ContextualWisdomLab/TEPP/actions/runs/32358361180/job/96392387109) and [line](https://github.com/ContextualWisdomLab/TEPP/actions/runs/32358361180/job/96392387108) coverage failures require triage | Positional embedded image source units | +| [59](https://github.com/ContextualWisdomLab/TEPP/pull/59) | `43bf6cf0d0a15e105fcfe6309657403d0b9cf76f` | `main` | `7c29e7c971d7940e1fb3def1ed3aae2d1bc8ad4a` | `BLOCKED` | `REVIEW_REQUIRED` | 22 completed Checks passed; 1 remains queued; no completed failure observed | Unicode NFC/NFD canonical identity for split leakage | +| [57](https://github.com/ContextualWisdomLab/TEPP/pull/57) | `14014b73d8c6015ff99b94f51c9a19f2b078811c` | `main` | `7c29e7c971d7940e1fb3def1ed3aae2d1bc8ad4a` | `BLOCKED` | `REVIEW_REQUIRED` | 21 completed Checks passed; 1 remains queued; no completed failure observed | Exact-head scientific claim promotion gates | +| [51](https://github.com/ContextualWisdomLab/TEPP/pull/51) | `0ac8055e4f7f8c06f87cdea10d74810074b66cc1` | `main` | `7c29e7c971d7940e1fb3def1ed3aae2d1bc8ad4a` | `BLOCKED` | `CHANGES_REQUESTED` | 21 completed Checks passed; 1 remains queued; no completed failure observed; review changes remain | VRAM budget and CPU fallback types | +| [50](https://github.com/ContextualWisdomLab/TEPP/pull/50) | `2a29e2496409b5ab411eed5f045f89d52a24abcf` | `main` | `7c29e7c971d7940e1fb3def1ed3aae2d1bc8ad4a` | `BLOCKED` | `CHANGES_REQUESTED` | 21 completed Checks passed; 1 remains queued; no completed failure observed; review changes remain | TDT/CHRONOS transition boundary | +| [49](https://github.com/ContextualWisdomLab/TEPP/pull/49) | `199ed6c3f7bacf5193bd852a7fe58c13a633d709` | `main` | `7c29e7c971d7940e1fb3def1ed3aae2d1bc8ad4a` | `BLOCKED` | `REVIEW_REQUIRED` | 20 completed Checks passed; 1 remains queued; [Production branch coverage on pinned nightly](https://github.com/ContextualWisdomLab/TEPP/actions/runs/32360371581/job/96398481245) failed | Posterior ESEM input gates and true-parameter RMSE | +| [48](https://github.com/ContextualWisdomLab/TEPP/pull/48) | `8e88b337e0bb1a44749b0fe48c635e3e3e7535da` | `main` | `7c29e7c971d7940e1fb3def1ed3aae2d1bc8ad4a` | `BLOCKED` | `CHANGES_REQUESTED` | 24 completed Checks passed; no queued or failed check observed; review changes remain | Logistic-normal topic coordinates | ### Merge and review order From 6e0d8fcc2c1d926d634443e7aea7fd9456c29bbe Mon Sep 17 00:00:00 2001 From: Seongho Bae Date: Thu, 20 Aug 2026 06:12:48 -0700 Subject: [PATCH 14/52] docs: expand TEPP completion gaps and issue roadmap --- docs/product-technical-gap-baseline.md | 347 +++++++++++++++---------- 1 file changed, 215 insertions(+), 132 deletions(-) diff --git a/docs/product-technical-gap-baseline.md b/docs/product-technical-gap-baseline.md index be5cc061..6cea3a7d 100644 --- a/docs/product-technical-gap-baseline.md +++ b/docs/product-technical-gap-baseline.md @@ -1,154 +1,237 @@ # Product and Technical Gap Baseline -**Status:** Live delivery baseline -**Product:** Temporal Event Psychometrics Platform (TEPP) -**Snapshot:** 2026-08-20 21:57 KST -**Protected-main evidence:** `7c29e7c971d7940e1fb3def1ed3aae2d1bc8ad4a` +**Status:** Live delivery baseline +**Product:** Temporal Event Psychometrics Platform (TEPP) +**Snapshot:** 2026-08-20 22:10 KST +**Protected-main evidence:** `7c29e7c971d7940e1fb3def1ed3aae2d1bc8ad4a` +**Workspace version on protected main:** `0.1.0` ## Purpose -This document turns the approved product, technical, scientific, security, and -operability documents into an executable buyer-gap register. It records what a -buyer can use on protected `main`, what is being delivered on open pull -requests, and the evidence required before a capability can be described as -shipped. Re-read the live pull request and check links before making a release -or customer commitment; the table below is a time-stamped snapshot, not a -replacement for current-head GitHub evidence. +This document is the executable buyer-gap register for TEPP. It separates: -The immediate buyer action is to use the priority order and acceptance gates in -this document to choose which integration or measurement outcome to validate -next. A capability marked `active-PR` is not available from protected `main`. +- capabilities a buyer can use from protected `main`; +- bounded work that exists only on open pull requests; +- product-completion issues with measurable acceptance evidence; and +- release claims that remain prohibited. -## Authority and derivation +A planning document, local test, queued check, predecessor-head result, LLM +judgment, or mergeable branch does not make a capability shipped. Re-read live +GitHub state before any customer, release, certification, or valuation claim. + +## Snapshot facts + +| Signal | Snapshot evidence | Delivery implication | +|---|---:|---| +| Protected-main SHA | `7c29e7c971d7940e1fb3def1ed3aae2d1bc8ad4a` | All as-built claims are bounded to this commit. | +| Workspace members | 10 Rust crates | The foundation is modular, but the approved target contains additional semantic, estimator, compute, psychometric, event-intelligence, network, interpretation, artifact, and visual boundaries. | +| Open pull requests | **92** | The queue is itself a release blocker and requires consolidation. | +| Draft pull requests | **55** | Most queued work is not independently review-ready. | +| Non-draft pull requests | **37** | A non-draft state is not a qualifying review or required-check result. | +| Open product issues | **12** | Issue #156 plus the product-completion program #166–#176. | +| Current package version | `0.1.0` | No supported product release is established by the repository version alone. | -The gap register is derived from these canonical sources: +The pull-request counts come from the live GitHub search at this snapshot. The +full exact-head classification is owned by +[issue #175](https://github.com/ContextualWisdomLab/TEPP/issues/175); this file +keeps the buyer-level summary rather than duplicating a 92-row volatile ledger. + +## Authority and derivation -| Concern | Authority | How it constrains the gap register | +| Concern | Canonical authority | Constraint | |---|---|---| -| Product outcomes and user decisions | [`docs/product/prd-v0.4-approved.md`](product/prd-v0.4-approved.md) | Defines temporal evidence, relational measurement, scientific users, visual outputs, and release outcomes. | -| Technical and runtime contracts | [`docs/TRD.md`](TRD.md) | Separates protected-main implementation from accepted-target architecture and requires Rust, temporal eligibility, modular APIs, and realistic validation. | -| Runtime and service boundaries | [`docs/UML.md`](UML.md), [`ARCHITECTURE.md`](../ARCHITECTURE.md), [`docs/API_CONTRACT.md`](API_CONTRACT.md) | Defines standalone crates, versioned interchange, temporal flows, and no cross-service application-table coupling. | -| Data authority and persistence | [`docs/ERD.md`](ERD.md), [`docs/TRACEABILITY.md`](TRACEABILITY.md), [`docs/adr/0013-bitemporal-persistence-reproducibility-and-split-authority.md`](adr/0013-bitemporal-persistence-reproducibility-and-split-authority.md) | Requires immutable provenance, six-clock eligibility, relation-aware splits, third-normal-form persistence, and reproducible artifacts. | -| Scientific and release promotion | [`docs/validation/temporal-event-foundation.md`](validation/temporal-event-foundation.md), [`docs/adr/0014-scientific-claim-promotion-and-release-evidence.md`](adr/0014-scientific-claim-promotion-and-release-evidence.md) | Prevents a design document, simulation, queued check, or LLM judgment from becoming a product claim. | -| Automation and merge authority | [`docs/operations/HOURLY_NIM_PRODUCT_DEVELOPMENT.md`](operations/HOURLY_NIM_PRODUCT_DEVELOPMENT.md), [`docs/adr/0015-autonomous-development-review-and-merge-authority.md`](adr/0015-autonomous-development-review-and-merge-authority.md) | Keeps proposal, verification, publication, independent review, and merge authority separate. | -| Scientific, privacy, and assurance constraints | [`docs/TEST_STRATEGY.md`](TEST_STRATEGY.md), [`docs/PRIVACY_DATA_GOVERNANCE.md`](PRIVACY_DATA_GOVERNANCE.md), [`docs/COMPLIANCE_READINESS.md`](COMPLIANCE_READINESS.md) | Requires recovery/parity tests, purpose-bound identity handling, and CSAP/SOC 2 readiness evidence without false certification claims. | -| Live delivery state | [TEPP open pull requests](https://github.com/ContextualWisdomLab/TEPP/pulls?q=is%3Apr+is%3Aopen), [TEPP open issues](https://github.com/ContextualWisdomLab/TEPP/issues?q=is%3Aissue+is%3Aopen) | Supplies current-head SHA, base branch, review, check, dependency, and issue evidence. | +| Product outcomes | [`docs/product/prd-v0.4-approved.md`](product/prd-v0.4-approved.md) | Defines the release product, users, visual surfaces, scientific claims, and eight delivery phases. | +| Technical/runtime requirements | [`docs/TRD.md`](TRD.md) | Requires independently usable Rust boundaries, CPU `f64` authority, temporal eligibility, realistic validation, and warning-free release evidence. | +| Architecture and service boundaries | [`ARCHITECTURE.md`](../ARCHITECTURE.md), [`docs/UML.md`](UML.md), [`docs/API_CONTRACT.md`](API_CONTRACT.md) | Separates evidence, measurement, compute, psychometrics, event intelligence, interpretation, artifacts, and visual analytics. | +| Data authority | [`docs/ERD.md`](ERD.md), [`docs/TRACEABILITY.md`](TRACEABILITY.md), [`docs/adr/0013-bitemporal-persistence-reproducibility-and-split-authority.md`](adr/0013-bitemporal-persistence-reproducibility-and-split-authority.md) | Requires normalized persistence, six-clock eligibility, relation-aware splits, immutable provenance, and reproducible artifacts. | +| Scientific claim promotion | [`docs/adr/0014-scientific-claim-promotion-and-release-evidence.md`](adr/0014-scientific-claim-promotion-and-release-evidence.md), [`docs/TEST_STRATEGY.md`](TEST_STRATEGY.md) | Requires production-code recovery, uncertainty, parity, exact-head checks, and independent review before promotion. | +| LLM authority | [`docs/adr/0010-adaptive-llm-orchestration.md`](adr/0010-adaptive-llm-orchestration.md), [`docs/LLM_ORCHESTRATION.md`](LLM_ORCHESTRATION.md) | LLMs may propose and verify interpretations; deterministic/statistical gates remain authoritative. | +| Privacy/security/assurance | [`docs/PRIVACY_DATA_GOVERNANCE.md`](PRIVACY_DATA_GOVERNANCE.md), [`SECURITY.md`](../SECURITY.md), [`docs/THREAT_MODEL.md`](THREAT_MODEL.md), [`docs/COMPLIANCE_READINESS.md`](COMPLIANCE_READINESS.md) | Preserves legitimate PII utility through purpose-bound access while prohibiting credential/source leakage and unsupported certification claims. | +| Research | [`docs/research/standards-and-literature.md`](research/standards-and-literature.md) | Method and standards claims require current authoritative sources and APA 7 traceability. | +| Live delivery | [open PRs](https://github.com/ContextualWisdomLab/TEPP/pulls?q=is%3Apr+is%3Aopen), [open issues](https://github.com/ContextualWisdomLab/TEPP/issues?q=is%3Aissue+is%3Aopen) | Live GitHub state supersedes this time-stamped queue snapshot. | + +## Protected-main as-built baseline + +Protected `main` contains the following workspace boundaries: + +```text +evidence_core +temporal_core +event_core +relation_graph +membership_core +persistence_postgres +corpus_split +tepp_simulation +validation_core +tepp_api +``` + +The traceability ledger records meaningful protected-main implementation in +immutable evidence, six clocks and interval reasoning, forward transitions, +event mention/instance separation, weighted multiple membership, cutoff-safe +splits, validation metrics, simulations, PostgreSQL slices, versioned API/export +contracts, orchestration routing, privacy authorization, and release-evidence +generation. + +Protected `main` does **not** yet establish the complete approved product. In +particular, it does not contain the full multilingual semantic pipeline, a +shared-latent temporal topic estimator, a production longitudinal ESEM/DSEM +estimator, a calibrated TDT/CHRONOS workflow, a posterior network estimator, +real accelerator kernels, a production interpretation gateway, the coordinated +visual workspace, or a supported multi-tenant release. ## Buyer-gap register -| ID | Buyer-visible gap | Current maturity | Delivery authority | Closure evidence | +| ID | Buyer-visible gap | Maturity | Delivery authority | Closure evidence | |---|---|---|---|---| -| GAP-001 | A consumer can submit an analysis run and receive a durable receipt, but protected `main` does not yet publish the separate deterministic completed-result contract needed to distinguish `accepted`, `running`, success, and typed terminal failure. | `active-PR` | PR #157; linked issue #156 | Current-head checks and qualifying review; request/result binding, cutoff/snapshot/model/output-profile identity, canonical digest, bounded summary, deterministic retrieval, and fail-closed mismatch tests. | -| GAP-002 | LineageWeave and other modular consumers cannot yet rely on a protected-main live HTTP consumer boundary for analysis-run submission, temporal evidence context, and cutoff-safe history projection. | `active-PR` | Stacked PRs #107 → #155 → #158/#159 | Merge the stack in base order after current-head review/check evidence; preserve loopback/credential/cutoff/idempotency refusal and live TCP tests. | -| GAP-003 | The platform foundation has strong temporal, evidence, membership, privacy, event, topic-coordinate, and compute contracts, but a buyer cannot yet run the complete multilingual temporal psychometrics product from protected `main`. | `partial` / `accepted-target` by capability | PRs #48, #50, #51, #91, #100, #106, #110, plus later estimator/service work | Each capability must independently pass realistic scientific recovery, numerical parity, security, documentation, and exact-head merge gates; no aggregate claim is allowed from planning documents. | -| GAP-004 | Research and operational evidence is discoverable, but there was no single live register mapping buyer outcomes to current PR/issue state, protected-main maturity, and closure evidence. | `active-PR` in this change | This document, linked from the documentation map | The baseline is required by the documentation validator and refreshed whenever the protected head, PR queue, issue queue, or capability maturity changes materially. | -| GAP-005 | Coordinated visual analytics, accessible exact-value exports, design tokens, Storybook inventory, and Figma interaction contracts are not yet needed for the current headless Rust/API slice, so a buyer cannot yet validate a visual analytics workflow. | `accepted-target` | PRD phase 7 and the visual-analytics roadmap phase | Start a separate UI/product-design PR only after the stable data/API contract exists; that PR's ADR must record the real Figma File ID and Storybook inventory before implementation. | - -## Current pull-request queue - -The following table was read from GitHub at the snapshot time. Check evidence is -reported qualitatively so a queued run cannot be mistaken for a completed pass. -An empty review decision means that no qualifying decision was reported by the -API at snapshot time. These values do not authorize a merge by themselves. - -| PR | Head SHA | Base ref | Base SHA | Merge state | Review decision | Current check evidence | Delivery role | -|---:|---|---|---|---|---|---|---| -| [164](https://github.com/ContextualWisdomLab/TEPP/pull/164) | `00ace4a2a1c941a11d6f7a818040db2f81c6d55b` | `main` | `7c29e7c971d7940e1fb3def1ed3aae2d1bc8ad4a` | `BLOCKED` | `REVIEW_REQUIRED` | 21 completed checks passed; 1 remains queued; no completed failure observed | Product/technical gap baseline | -| [159](https://github.com/ContextualWisdomLab/TEPP/pull/159) | `855c6c7153c2f66a1c14e842ad700f571592dd35` | `feat/lineageweave-live-consumer-contract` | `0e2910825a042d7fdeb6497a20975b538493c65c` | `UNSTABLE` | none reported | 6 required Checks remain queued; no completed failure observed | LineageWeave cutoff-safe history projection | -| [158](https://github.com/ContextualWisdomLab/TEPP/pull/158) | `6d28d23c432288c4dbecbd74a25f093ed9d9ef61` | `feat/lineageweave-live-consumer-contract` | `0e2910825a042d7fdeb6497a20975b538493c65c` | `UNSTABLE` | none reported | 6 required Checks remain queued; no completed failure observed | LineageWeave temporal evidence context | -| [157](https://github.com/ContextualWisdomLab/TEPP/pull/157) | `0cb9ff6b32afb56849214bbe464ea39004c1e106` | `main` | `7c29e7c971d7940e1fb3def1ed3aae2d1bc8ad4a` | `BLOCKED` | `REVIEW_REQUIRED` | 21 completed checks passed; 1 remains queued; no completed failure observed | Completed analysis-run result contract | -| [155](https://github.com/ContextualWisdomLab/TEPP/pull/155) | `0e2910825a042d7fdeb6497a20975b538493c65c` | `cursor/bc-422aba2a-86ab-45e3-9911-95cff5c28a87-5627` | `760ac3b412223c9b269b76eb0653d991a959d727` | `CLEAN` | none reported | 6 completed Checks passed; independent review still required | Modular LineageWeave consumer parent | -| [144](https://github.com/ContextualWisdomLab/TEPP/pull/144) | `d125515ae73c33de2e7cf900dc0fa3b7deb39614` | `agent/psychometric-posterior-esem-input` | `b1004197ff9b9146de7eec8a585ed25f70aefa25` | `DIRTY` | draft; review required after ready-for-review | no Checks reported for the current draft HEAD | Multilevel event-time psychometric recovery | -| [116](https://github.com/ContextualWisdomLab/TEPP/pull/116) | `5f9d7bf73552180d73a30ddd889d9c80865c817f` | `main` | `7c29e7c971d7940e1fb3def1ed3aae2d1bc8ad4a` | `BLOCKED` | `REVIEW_REQUIRED` | 19 completed Checks passed; no queued or failed check observed | APA 7 method-paper doctoring | -| [115](https://github.com/ContextualWisdomLab/TEPP/pull/115) | `2106170a0d7984291e78c68fd68125f217746f3f` | `main` | `7c29e7c971d7940e1fb3def1ed3aae2d1bc8ad4a` | `BLOCKED` | `REVIEW_REQUIRED` | 23 completed Checks passed; 1 remains queued; no completed failure observed | Coverage-authority quality validator | -| [110](https://github.com/ContextualWisdomLab/TEPP/pull/110) | `c63e1cfce2e3fcddc46e945a54a9af71e4c9d7ab` | `main` | `7c29e7c971d7940e1fb3def1ed3aae2d1bc8ad4a` | `BLOCKED` | `REVIEW_REQUIRED` | 24 completed Checks passed; no queued or failed check observed | Corpus-split leakage-audit manifest | -| [107](https://github.com/ContextualWisdomLab/TEPP/pull/107) | `07bb21f74f3259168f5e21a0c1bdd25a812fd661` | `main` | `7c29e7c971d7940e1fb3def1ed3aae2d1bc8ad4a` | `BLOCKED` | `REVIEW_REQUIRED` | 16 completed Checks passed; 6 remain queued; no completed failure observed | Loopback Naruon analysis-run service | -| [106](https://github.com/ContextualWisdomLab/TEPP/pull/106) | `d01892e1783a3b416fbb79966821b4ea804ef2b5` | `main` | `7c29e7c971d7940e1fb3def1ed3aae2d1bc8ad4a` | `BLOCKED` | `REVIEW_REQUIRED` | 24 completed Checks passed; no queued or failed check observed | Privacy audit-event inspection | -| [100](https://github.com/ContextualWisdomLab/TEPP/pull/100) | `3e928bc0f209c74b941fa99b742d92814f610362` | `main` | `7c29e7c971d7940e1fb3def1ed3aae2d1bc8ad4a` | `BLOCKED` | `REVIEW_REQUIRED` | 24 completed Checks passed; no queued or failed check observed | Live service-TLS bind policy | -| [91](https://github.com/ContextualWisdomLab/TEPP/pull/91) | `53a5a31f893e24146b4881c7e717021649fbb330` | `main` | `7c29e7c971d7940e1fb3def1ed3aae2d1bc8ad4a` | `BLOCKED` | `CHANGES_REQUESTED` | 24 completed Checks passed; no queued or failed check observed; review changes remain | Derived-artifact sensitivity inheritance | -| [62](https://github.com/ContextualWisdomLab/TEPP/pull/62) | `1951ab43c90deda0a23106fc2bf8898328c98` | `main` | `7c29e7c971d7940e1fb3def1ed3aae2d1bc8ad4a` | `BLOCKED` | `REVIEW_REQUIRED` | 22 completed Checks passed; 1 remains queued; no completed failure observed | Simulation cutoff eligibility | -| [61](https://github.com/ContextualWisdomLab/TEPP/pull/61) | `8ebbc04eac07231413a089d7fc6b64b36ed6a61b` | `main` | `7c29e7c971d7940e1fb3def1ed3aae2d1bc8ad4a` | `BLOCKED` | `REVIEW_REQUIRED` | 22 completed Checks passed; 1 remains queued; no completed failure observed | Interval-aware uncertain availability cutoff | -| [58](https://github.com/ContextualWisdomLab/TEPP/pull/58) | `e98ada4361fd877017394c0ae83d132fabfdd4d3` | `main` | `7c29e7c971d7940e1fb3def1ed3aae2d1bc8ad4a` | `BLOCKED` | `REVIEW_REQUIRED` | 20 completed Checks passed; 1 remains queued; 2 completed coverage checks failed; [branch](https://github.com/ContextualWisdomLab/TEPP/actions/runs/32358361180/job/96392387109) and [line](https://github.com/ContextualWisdomLab/TEPP/actions/runs/32358361180/job/96392387108) coverage failures require triage | Positional embedded image source units | -| [59](https://github.com/ContextualWisdomLab/TEPP/pull/59) | `43bf6cf0d0a15e105fcfe6309657403d0b9cf76f` | `main` | `7c29e7c971d7940e1fb3def1ed3aae2d1bc8ad4a` | `BLOCKED` | `REVIEW_REQUIRED` | 22 completed Checks passed; 1 remains queued; no completed failure observed | Unicode NFC/NFD canonical identity for split leakage | -| [57](https://github.com/ContextualWisdomLab/TEPP/pull/57) | `14014b73d8c6015ff99b94f51c9a19f2b078811c` | `main` | `7c29e7c971d7940e1fb3def1ed3aae2d1bc8ad4a` | `BLOCKED` | `REVIEW_REQUIRED` | 21 completed Checks passed; 1 remains queued; no completed failure observed | Exact-head scientific claim promotion gates | -| [51](https://github.com/ContextualWisdomLab/TEPP/pull/51) | `0ac8055e4f7f8c06f87cdea10d74810074b66cc1` | `main` | `7c29e7c971d7940e1fb3def1ed3aae2d1bc8ad4a` | `BLOCKED` | `CHANGES_REQUESTED` | 21 completed Checks passed; 1 remains queued; no completed failure observed; review changes remain | VRAM budget and CPU fallback types | -| [50](https://github.com/ContextualWisdomLab/TEPP/pull/50) | `2a29e2496409b5ab411eed5f045f89d52a24abcf` | `main` | `7c29e7c971d7940e1fb3def1ed3aae2d1bc8ad4a` | `BLOCKED` | `CHANGES_REQUESTED` | 21 completed Checks passed; 1 remains queued; no completed failure observed; review changes remain | TDT/CHRONOS transition boundary | -| [49](https://github.com/ContextualWisdomLab/TEPP/pull/49) | `199ed6c3f7bacf5193bd852a7fe58c13a633d709` | `main` | `7c29e7c971d7940e1fb3def1ed3aae2d1bc8ad4a` | `BLOCKED` | `REVIEW_REQUIRED` | 20 completed Checks passed; 1 remains queued; [Production branch coverage on pinned nightly](https://github.com/ContextualWisdomLab/TEPP/actions/runs/32360371581/job/96398481245) failed | Posterior ESEM input gates and true-parameter RMSE | -| [48](https://github.com/ContextualWisdomLab/TEPP/pull/48) | `8e88b337e0bb1a44749b0fe48c635e3e3e7535da` | `main` | `7c29e7c971d7940e1fb3def1ed3aae2d1bc8ad4a` | `BLOCKED` | `CHANGES_REQUESTED` | 24 completed Checks passed; no queued or failed check observed; review changes remain | Logistic-normal topic coordinates | - -### Merge and review order - -1. Process independent current-main PRs by exact-head review and required-check - evidence; no stale `CHANGES_REQUESTED` or queued check is sufficient. -2. Process the LineageWeave stack in dependency order: **#107 → #155 → - (#158 and #159)**. Re-fetch each remote head immediately before any commit, - push, or merge and preserve remote-agent commits. -3. Process #157 as the completion of issue #156. Keep the issue open until the - PR is actually merged and the protected-main result contract is verified. -4. After each merge or closure, enumerate the queue again. A clean merge state - without a qualifying independent review is not merge-ready. - -## Issue queue and hygiene - -At the snapshot, issue #156 is the only open issue with product acceptance -criteria. It remains open because PR #157 is not merged. Issues #161 and #162 -were closed as queue-hygiene placeholders: they contained no buyer outcome, -acceptance criteria, or evidence requirement. Reopen a placeholder only with a -concrete customer action and verifiable acceptance test. - -## Product and technical delivery specification - -The next buyer-facing delivery slice is the completed-result interchange: - -- Keep the accepted receipt and completed result as separate DTO families. -- Bind result identity to tenant/workspace, accepted run, immutable snapshot, - knowledge cutoff, model contract, output profile, idempotency key, and result - digest. -- Permit only terminal success or typed terminal failure to carry completion - metadata; `accepted` and `running` remain non-measurement states. -- Reject unknown fields, unsupported versions, malformed timestamps/digests, - oversized payloads, cross-tenant/snapshot/cutoff/model/profile mismatches, - source text, credentials, and direct identity. -- Keep deterministic/statistical scientific authority outside the LLM; an LLM - interpretation can annotate evidence but cannot promote a result to truth. - -This specification is already owned by issue #156 and PR #157. Do not create a -duplicate implementation while that PR is in the review/check loop. +| GAP-001 | Submission can produce a durable accepted receipt, but protected `main` lacks the separate deterministic terminal-result lifecycle. | `active-PR` | [#156](https://github.com/ContextualWisdomLab/TEPP/issues/156) / [PR #157](https://github.com/ContextualWisdomLab/TEPP/pull/157) | Exact request/result/snapshot/cutoff/model/profile binding, typed terminal failures, deterministic retrieval, current-head checks, and qualifying review. | +| GAP-002 | LineageWeave and other modular consumers cannot yet rely on the complete protected-main HTTP evidence/result boundary. | `active-PR stack` | [#107](https://github.com/ContextualWisdomLab/TEPP/pull/107) → [#155](https://github.com/ContextualWisdomLab/TEPP/pull/155) → [#158](https://github.com/ContextualWisdomLab/TEPP/pull/158) / [#159](https://github.com/ContextualWisdomLab/TEPP/pull/159) | Merge in dependency order with live loopback, framing, credential, idempotency, cutoff, tenant, and result-evidence tests. | +| GAP-003 | A buyer cannot run immutable evidence through estimation, validation, persistence, and terminal artifact retrieval as one product workflow. | `accepted-target` | [#166](https://github.com/ContextualWisdomLab/TEPP/issues/166) | Realistic end-to-end Compose/CLI/API execution, durable idempotent job lifecycle, production scientific metrics, restart/recovery, and reproducibility manifest. | +| GAP-004 | The central shared-latent temporal/relational topic estimator is absent. | `accepted-target` | [#167](https://github.com/ContextualWisdomLab/TEPP/issues/167) | Rust CPU `f64` fitting, sparse bounded parallelism, posterior artifacts, convergence, true-parameter RMSE/bias/coverage, and real candidate-K fitting. | +| GAP-005 | Real multilingual documents are not yet transformed into validated exact-span semantic units and versioned shared concepts. | `accepted-target` | [#168](https://github.com/ContextualWisdomLab/TEPP/issues/168) | Unicode/layout/language-tailored processing, unknown-concept review, multilingual calibration/invariance, image-position evidence, and prompt-injection tests. | +| GAP-006 | Posterior topic measurements cannot yet be fitted through a complete cross-classified longitudinal ESEM/DSEM engine. | `accepted-target` | [#169](https://github.com/ContextualWisdomLab/TEPP/issues/169) | Plausible-value/joint uncertainty, invariance, irregular event time, within/between separation, multiple membership, true-parameter recovery, and causal-claim refusal. | +| GAP-007 | TDT detection/tracking and CHRONOS schema/forecast/temporal reasoning remain isolated bounded gates rather than one calibrated product workflow. | `accepted-target` | [#170](https://github.com/ContextualWisdomLab/TEPP/issues/170) | Span-grounded mentions, calibrated TDT metrics, schema/forecast hypothesis states, interval consistency, known-truth recovery, persistence, and exports. | +| GAP-008 | GPU support is policy-only; no production estimator kernel has real hardware parity or declared VRAM evidence. | `accepted-target` | [#171](https://github.com/ContextualWisdomLab/TEPP/issues/171) | Real CUDA/portable backend execution, CPU parity, streamed memory, bounded OOM/fallback, hardware profiles, telemetry, and no skipped-support claim. | +| GAP-009 | Topic association and cluster outputs lack posterior-valid estimation, uncertainty, edge stability, and consensus communities. | `accepted-target` | [#172](https://github.com/ContextualWisdomLab/TEPP/issues/172) | Valid log-ratio coordinates, interval/stability-bearing edges, repeated Leiden consensus, known-truth network/cluster recovery, and reproducible exports. | +| GAP-010 | Buyers lack coordinated accessible visual analytics and exact-value export workflows. | `accepted-target` | [#173](https://github.com/ContextualWisdomLab/TEPP/issues/173) | Real Figma File ID in ADR, Storybook/design tokens, ten PRD views, exact-value tables, accessible interaction/print/PDF states, provenance, and source-consistent exports. | +| GAP-011 | TEPP is not yet an operable multi-tenant service or supported release. | `accepted-target` | [#174](https://github.com/ContextualWisdomLab/TEPP/issues/174) | Durable queue/storage, OIDC/RLS/purpose controls, OpenTelemetry/SLOs, load/recovery, migrations, signed release/SBOM/provenance, assurance evidence, and support policy. | +| GAP-012 | The 92-PR queue obscures authority, repeatedly stales exact-head evidence, and fragments product boundaries. | `release-blocker` | [#175](https://github.com/ContextualWisdomLab/TEPP/issues/175) | Every PR classified; unique landing vehicles; compatible slices folded; superseded work closed with provenance; scheduler prioritizes consolidation; queue reaches zero before GA. | +| GAP-013 | Evidence-grounded LLM interpretation is routed but not executed and validated as a production interpreter/verifier port. | `partial` / `accepted-target` | [#176](https://github.com/ContextualWisdomLab/TEPP/issues/176), [PR #69](https://github.com/ContextualWisdomLab/TEPP/pull/69), [PR #165](https://github.com/ContextualWisdomLab/TEPP/pull/165) | Contextual-orchestrator execution, evidence citations, verifier refusals, comparable-budget ablations, provider eligibility/fallback, abstention, live/offline contract tests, and no numerical-authority escalation. | +| GAP-014 | README/TRD and some PR descriptions lag protected-main and live queue reality. | `partial` | [#175](https://github.com/ContextualWisdomLab/TEPP/issues/175) | Reconcile README, TRD, traceability, ADR maturity, CHANGELOG, preferred-merge declarations, and exact protected-main evidence. | +| GAP-015 | There was no canonical live product/buyer-gap register tied to documentation validation. | `active-PR` | [PR #164](https://github.com/ContextualWisdomLab/TEPP/pull/164) | Merge this document and its validator/map integration after exact-head checks and independent review. | + +## Product-completion issue register + +| Issue | Product vertical | Depends on / constrains | +|---:|---|---| +| [#156](https://github.com/ContextualWisdomLab/TEPP/issues/156) | Completed analysis-run result contract | Must land before consumers can call accepted work a measurement result. | +| [#166](https://github.com/ContextualWisdomLab/TEPP/issues/166) | Executable end-to-end analysis run | Integrates all scientific/service verticals; cannot substitute placeholders. | +| [#167](https://github.com/ContextualWisdomLab/TEPP/issues/167) | Shared-latent temporal topic CPU estimator | Numerical foundation for K selection, networks, psychometrics, interpretation, and product E2E. | +| [#168](https://github.com/ContextualWisdomLab/TEPP/issues/168) | Multilingual semantic units and concept dictionary | Supplies validated span-grounded estimator evidence. | +| [#169](https://github.com/ContextualWisdomLab/TEPP/issues/169) | Multilevel longitudinal ESEM/DSEM | Consumes posterior topic coordinates and membership/time contracts. | +| [#170](https://github.com/ContextualWisdomLab/TEPP/issues/170) | TDT/CHRONOS event intelligence | Consumes evidence/time/event contracts and supplies calibrated event artifacts. | +| [#171](https://github.com/ContextualWisdomLab/TEPP/issues/171) | Real GPU compute and parity | Accelerates production estimators only after CPU authority is stable. | +| [#172](https://github.com/ContextualWisdomLab/TEPP/issues/172) | Posterior network and consensus clustering | Depends on a real fitted topic posterior. | +| [#173](https://github.com/ContextualWisdomLab/TEPP/issues/173) | Accessible visual analytics and exports | Starts after stable API/artifact contracts; requires Figma and Storybook evidence. | +| [#174](https://github.com/ContextualWisdomLab/TEPP/issues/174) | Commercial deployment/release/support | Wraps a scientifically complete product without weakening gates. | +| [#175](https://github.com/ContextualWisdomLab/TEPP/issues/175) | PR queue and delivery consolidation | Immediate release-system priority; prevents further unbounded fragmentation. | +| [#176](https://github.com/ContextualWisdomLab/TEPP/issues/176) | Contextual-orchestrator interpreter/verifier | Consumes validated artifacts and cannot promote scientific truth. | + +## Priority pull-request queue + +This table is intentionally non-exhaustive. Issue #175 owns the full exact-head +inventory and classification. The pull request's live page is authoritative +because its head can change after this file is committed. + +| PR | Current delivery role | Required next action | +|---:|---|---| +| [#164](https://github.com/ContextualWisdomLab/TEPP/pull/164) | This product/technical gap baseline | Re-run exact-head documentation/repository checks and obtain independent review. | +| [#165](https://github.com/ContextualWisdomLab/TEPP/pull/165) | Hourly agent routing through contextual-orchestrator | Ensure queue-consolidation policy from #175 prevents unrelated micro-PR growth. | +| [#157](https://github.com/ContextualWisdomLab/TEPP/pull/157) | Terminal result contract for #156 | Complete exact-head review/check gates; keep #156 open until protected-main verification. | +| [#107](https://github.com/ContextualWisdomLab/TEPP/pull/107) | Loopback analysis-run service | Review/merge before dependent consumer work. | +| [#155](https://github.com/ContextualWisdomLab/TEPP/pull/155) | Modular LineageWeave consumer parent | Preserve current stack parent and obtain independent review. | +| [#158](https://github.com/ContextualWisdomLab/TEPP/pull/158) | Temporal evidence context | Revalidate after its parent lands. | +| [#159](https://github.com/ContextualWisdomLab/TEPP/pull/159) | Cutoff-safe history projection | Revalidate after its parent lands. | +| [#48](https://github.com/ContextualWisdomLab/TEPP/pull/48) | Logistic-normal/ILR coordinate slice | Resolve requested changes and fold into the estimator landing plan; do not call it fitting. | +| [#51](https://github.com/ContextualWisdomLab/TEPP/pull/51) | VRAM budget/fallback policy types | Resolve requested changes; connect only to a real production kernel under #171. | +| [#53](https://github.com/ContextualWisdomLab/TEPP/pull/53) | Concept/language-profile gates | Integrate into the semantic pipeline authority under #168. | +| [#67](https://github.com/ContextualWisdomLab/TEPP/pull/67) | Model-selection gates | Rebase/merge only with an explicit path to real candidate fitting under #167. | +| [#69](https://github.com/ContextualWisdomLab/TEPP/pull/69) | Interpretation grounding/refusal metrics | Fold into the product interpreter/verifier under #176. | +| [#71](https://github.com/ContextualWisdomLab/TEPP/pull/71) | Compositional geometry/network pair metrics | Fold into the network estimator under #172. | +| [#119](https://github.com/ContextualWisdomLab/TEPP/pull/119) | Bounded loading/lag recovery slice | Consolidate into the psychometric engine under #169. | +| [#144](https://github.com/ContextualWisdomLab/TEPP/pull/144) | Draft multilevel event-time scalar recovery stack | Compare exact unique evidence and consolidate rather than land many scalar crates independently. | + +## Delivery sequence + +The dependency-aware product order is: + +1. **Consolidate delivery authority:** #175 and PR #164. +2. **Finish live result/consumer contracts:** #156/#157 and #107 → #155 → #158/#159. +3. **Build validated multilingual evidence:** #168. +4. **Build the CPU topic estimator:** #167. +5. **Build event intelligence and posterior networks:** #170 and #172. +6. **Build the posterior-aware longitudinal psychometric engine:** #169. +7. **Accelerate real kernels with parity:** #171. +8. **Complete the durable end-to-end run:** #166. +9. **Execute and validate interpretation:** #176. +10. **Design and implement the buyer workspace:** #173. +11. **Productionize and release:** #174. + +Stacking is appropriate where public contracts make dependencies explicit. +Stacking is not a reason to leave multiple unexplained implementation authorities +or stale draft predecessors open. + +## Definition of product complete + +TEPP is not complete until one released version proves all of the following on +the same protected source lineage: + +- a documented user can install, authenticate, ingest, run, inspect, export, and + recover the product without repository-internal intervention; +- immutable source evidence, six clocks, relation/membership structure, cutoff, + splits, model/config, backend, seeds, and artifacts are reproducible; +- the shared-latent topic estimator and longitudinal psychometric model recover + declared known truth with pre-registered RMSE, bias, coverage, convergence, + calibration, and error-rate gates; +- declared language profiles have span/concept/alignment/invariance evidence; +- event intelligence, topic networks, and clusters have known-truth and + uncertainty/stability evidence; +- accelerator claims use real hardware and match the CPU scientific reference; +- LLM interpretation cites allowed evidence, rejects unsupported claims, and + abstains when evidence or policy is insufficient; +- every visual value has an accessible exact-value and provenance path; +- tenant, purpose, identity, retention, security, migration, backup/restore, + observability, capacity, rollback, SBOM, provenance, and support evidence pass; +- production statement coverage, branch coverage, and public documentation are + 100% for shipped TEPP code; +- current-head CI, security, supply-chain, scientific, and independent review + gates pass with no unresolved release blocker; +- version, CHANGELOG, signed artifacts, and release notes match the protected + source and make no unsupported certification, causality, language, GPU, or + valuation claim; +- the release-blocking PR and issue queues are zero. + +A `200억 달러` bar remains a prioritization heuristic. It is not a valuation +result and cannot replace buyer adoption, predictive/construct validity, +operational reliability, proprietary advantage, revenue, retention, or +independent diligence evidence. ## Architecture, data, and assurance constraints -- Rust owns production mathematical and psychometric arithmetic; every future - estimator needs a CPU `f64` reference, bounded parallel execution, GPU parity, - and safe VRAM-to-CPU fallback evidence. -- Temporal analyses must preserve event, assertion, document, system, - availability, and knowledge-cutoff clocks and must reject future-available - evidence. -- Multiple-membership and cross-classified structures remain explicit so a - document is not treated as an independent atom when it belongs to several - authors, teams, projects, episodes, or roles. -- Database objects use descriptive two-or-more-word `snake_case` names and - normalized ownership/temporal/provenance tables; hot-partition mitigation - must be designed with measured access patterns before a physical migration. -- Purpose-bound authorization, opaque analytical identifiers, protected identity - mappings, encryption, retention/deletion, selective disclosure, and audit - preserve PII utility without blanket masking. -- CSAP and SOC 2 are readiness targets only. Certification or attestation needs - independent evidence outside this repository. -- The present slice has no frontend interaction contract. Figma and Storybook - are therefore deferred; when visual analytics begins, create the Figma file, - record its actual File ID in the owning ADR, and test the shared design tokens - and accessible interaction states. +- Rust owns production mathematical and psychometric arithmetic. +- CPU `f64` is the numerical reference; parallelism is bounded and GPU work must + prove real-hardware parity. +- Event, assertion, document, system, availability, and knowledge-cutoff clocks + remain distinct. +- Cross-classified and weighted multiple membership prevents atomistic + pseudo-replication. +- Topic proportions remain compositional; valid latent/log-ratio coordinates + feed ESEM and network analysis. +- Database objects use descriptive two-or-more-word `snake_case`, third-normal + form where applicable, explicit tenant/temporal/provenance authority, and + measured hot-partition mitigation. +- Documents, web/search results, connector data, and LLM output are untrusted. +- Purpose-bound access and protected identity mappings preserve PII utility + without broadcasting or blanket masking. +- External products integrate through versioned API/event/artifact contracts, + never direct application-table access. +- CSAP/SOC 2/ISO/NIST alignment is readiness evidence, not certification. +- Every method/standard decision updates APA 7 doctoring and source-to-test + traceability in the same reviewed change. ## Refresh rule -Refresh this file when a PR head/base changes materially, a review or required -check changes, an issue opens/closes, a capability crosses a maturity boundary, -or a buyer-visible gap is added/removed. Use the current protected-main SHA and -current PR head SHA in every claim. Keep the document small: update the table -and evidence links rather than creating a second planning register. +Refresh this file when any of the following changes materially: -## References +- protected-main SHA or package version; +- open PR/draft/issue counts; +- a priority PR head/base/review/check/merge state; +- an issue or buyer-gap acceptance boundary; +- a capability's implementation maturity; +- the dependency/landing order; +- a release, deprecation, replacement, Figma file, or standards/research basis. -The authoritative APA 7 research register is [`docs/research/standards-and-literature.md`](research/standards-and-literature.md). -Method-specific sources remain in the linked doctoring documents and ADRs; this -baseline records delivery implications and does not replace those sources. +Keep this file buyer-oriented. Store the volatile per-PR classification in the +artifact required by issue #175, and link it here. Never rewrite an active-PR +capability as protected-main before merge and exact-head verification. From 147fdc3ae94692b2ec06c2b7fb9e11f56a0c38b8 Mon Sep 17 00:00:00 2001 From: Seongho Bae Date: Fri, 21 Aug 2026 00:42:50 +0900 Subject: [PATCH 15/52] docs: add product and technical gap baseline --- CHANGELOG.md | 1 + DOCUMENTATION.md | 1 + docs/product-technical-gap-baseline.md | 67 ++++++++++++++++++++++++++ 3 files changed, 69 insertions(+) create mode 100644 docs/product-technical-gap-baseline.md diff --git a/CHANGELOG.md b/CHANGELOG.md index 93891a27..b8c144ac 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -6,6 +6,7 @@ All notable changes to TEPP are documented here. The format follows Keep a Chang ### Added +- Product/technical gap baseline linking the approved measurement target, live PR evidence, buyer-visible gaps, repository ownership boundaries, and exact acceptance gates for the next autonomous delivery loop. - `tepp_api` adaptive orchestration router (ADR 0010): versioned `direct`/`verify`/`committee`/`conductor`/`abstain` selection from CPU `f64` risk, ambiguity, evidence, and token-budget inputs; recorded stages, recursion, decomposition, access lists, and role-specific reasoning effort; fail-closed document-controlled policy/access/credentials; LLM plans remain proposals under deterministic statistical authority; comparable-budget ablation requires a direct baseline; credential-free contextual-orchestrator binding. Live NIM HTTP remains accepted-target. - `tepp_api` purpose-bound provider-payload minimization: time-bounded `PurposeGrant` evaluation, fail-closed expired/not-yet-valid/inverted/cross-tenant/impossible-calendar denial, semantic UTC calendar validation, refusal to copy identity mappings into model-provider payloads or ordinary logs, preservation of opaque analytical identifiers and membership roles (no blanket PII mask), a separately authorized scientific re-identification path, and an internally bound FIPS 180-4 SHA-256 audit digest appended through `ReidentificationAuditSink` before disclosure. - `persistence_postgres` backup/restore integrity: restored snapshots stay unusable until tenant, canonical `SHA-256`, knowledge-cutoff eligibility, temporal window order, and append-only triggers revalidate; SQL probes raise `restore integrity failed` (ADR 0013). diff --git a/DOCUMENTATION.md b/DOCUMENTATION.md index 3f094947..7284fc29 100644 --- a/DOCUMENTATION.md +++ b/DOCUMENTATION.md @@ -21,6 +21,7 @@ TEPP's approved PRD v0.4 and implementation plan are the primary product baselin | Test/scientific validation strategy | [`docs/TEST_STRATEGY.md`](docs/TEST_STRATEGY.md) | | Operability/recovery/release | [`docs/OPERABILITY.md`](docs/OPERABILITY.md) | | Requirement/research/evidence traceability | [`docs/TRACEABILITY.md`](docs/TRACEABILITY.md) | +| Product and technical gap baseline | [`docs/product-technical-gap-baseline.md`](docs/product-technical-gap-baseline.md) | | Architecture decision index / ownership map | [`docs/adr/README.md`](docs/adr/README.md) | | ADR status, maturity, and supersession policy | [`docs/adr/ADR_POLICY.md`](docs/adr/ADR_POLICY.md) | | Delivery roadmap | [`docs/roadmaps/2026-08-05-tepp-delivery-roadmap.md`](docs/roadmaps/2026-08-05-tepp-delivery-roadmap.md) | diff --git a/docs/product-technical-gap-baseline.md b/docs/product-technical-gap-baseline.md new file mode 100644 index 00000000..13ab9da2 --- /dev/null +++ b/docs/product-technical-gap-baseline.md @@ -0,0 +1,67 @@ +# TEPP product and technical gap baseline + +**Snapshot date:** 2026-08-21 +**Authority:** approved PRD v0.4, ADRs, traceability ledger, validation ledger, and live GitHub state +**Purpose:** give the next developer a bounded, evidence-based queue of buyer-visible gaps and the acceptance proof required to close each one. + +This baseline is a planning and evidence document. It does not promote an active pull request to protected-main implementation, and it does not claim CSAP, SOC 2, ISO, NIST, GPU, multilingual, psychometric, or production-service certification. Recheck the exact head, Checks, review, ruleset, and deployment evidence before promoting any row. + +## Buyer promise and evidence rule + +TEPP should let a research or risk team trace a measured change from an immutable source span through time, event, membership, latent measurement, uncertainty, and a reproducible export. A buyer can rely on that promise only when the numerical authority is deterministic Rust, availability cutoffs are enforced, multiple-membership structure is retained, LLM output remains a proposal, and exact-head scientific, security, and operational evidence is available. + +Protected-main evidence is authoritative. An active PR is a delivery candidate only. A queued Check, predecessor-head result, bot comment, simulation that bypasses production code, or LLM agreement cannot close a gap. + +## Gap register + +| ID | Buyer-visible gap | Current evidence | Next bounded slice | Closure evidence and owner boundary | +|---|---|---|---|---| +| G-01 | A buyer can inspect contracts, but cannot yet run TEPP as a deployed modular service with `naruon` or `contextual-orchestrator`. | `tepp_api` DTO/export contracts and connector documents are on protected `main`; live HTTP service and deployed port remain open. | Ship one versioned HTTPS analysis-run/export port with health, authorization, timeout, provenance, and no cross-service table access. | Contract tests, live same-origin integration, failure/rollback proof, SBOM/provenance, and a consumer test in the owning service repositories. TEPP owns the contract; each service owns its deployment. | +| G-02 | The foundation validates recovery metrics but does not yet provide a production psychometric estimator vertical slice. | `validation_core`, truth simulation, temporal, relation, and membership foundations are on protected `main`; topic and psychometric estimator crates remain target work. | Implement one Rust estimator with a CPU `f64` reference, bounded multithreaded CPU path, explicit multilevel/multiple-membership inputs, time-varying state, and a realistic known-truth recovery test. | RMSE, bias, interval coverage, reproducibility, temporal leakage, and branch/line/docstring evidence at 100%; GPU parity is promoted only after real hardware or an explicit deployment-owned hardware gate. Owner: TEPP compute/measurement crates. | +| G-03 | Event users cannot yet move from separated mentions and hypothetical forecasts to a complete TDT/CHRONOS workflow. | Mention/instance separation and forward-transition protection are on protected `main`; occurrence forecast calibration is an active PR; detection, tracking, schema, and temporal-consistency stack remain incomplete. | Complete one event-intelligence vertical slice: evidence-bounded detection, schema proposal, calibrated occurrence forecast, and refusal to promote a forecast into an observed state. | Synthetic and realistic event fixtures, Brier calibration, temporal-order and contradiction tests, provenance spans, exact-head checks, and independent review. `event_core` owns semantics; LLMs only propose. | +| G-04 | Multilingual and semantic search value is specified but not measurable as shared-latent measurement invariance. | PRD and ADR 0004 define shared latent space and language-specific emissions; implementation remains a target. | Add paragraph/sentence/DOM/message semantic-unit contracts, shared-space alignment diagnostics, and a language-paired invariance recovery study without default TF-IDF/BM25 inferential weighting. | Cross-language parameter recovery, invariance thresholds, lexical/semantic drift separation, exact-span provenance, and adversarial segmentation tests. Owner: future semantic/topic boundary; do not hide this in `tepp_api`. | +| G-05 | Documents containing embedded base64 images cannot yet preserve image position, OCR/object/tag evidence, or searchable image identity. | The product requirement is recorded in the user brief and architecture direction; no protected-main image evidence schema or extraction contract is present. | Define a normalized image asset/region/observation contract that stores source position, digest, OCR, object/tag observations, model/version, confidence, and separate image-search references while preserving the original document. | 3NF schema review, hostile base64/size/depth tests, OCR/object provenance, position round-trip, deletion/retention authorization, and multimodal retrieval quality evidence. Owner: evidence/persistence boundary; provider adapters never receive identity mappings by default. | +| G-06 | A buyer sees architecture and contracts but not an accessible visual analysis product. | PRD requests bitemporal/network/drift/invariance views; `visual_analytics` is not implemented and no stable Figma contract exists. | First stabilize one user story and exact-value export contract; then create a Figma file and Storybook token/component inventory only for that approved interaction. | Accessibility, keyboard/interaction/i18n/edge tests, design-token tests, visual regression, and an ADR containing the real Figma File ID. Until then, no Figma ID is claimed and no UI dependency is added. | +| G-07 | Release operators do not yet receive a complete reproducible package/image evidence bundle. | CycloneDX SBOM, exact-head provenance, and checksums are generated in CI; full package/image SBOM, migration rollback, and deployment recovery bundle remain partial. | Produce one release candidate bundle with version consistency, signed/provenance-linked artifacts, migration/recovery rehearsal, and an operator-readable evidence index. | Exact protected-head CI/security evidence, SBOM, provenance, checksum, rollback/recovery logs, `CHANGELOG.md`, and no unsupported certification claim. Owner: release/operability boundary. | +| G-08 | Rust workflow changes can be reported as incomplete by the central Strix scope gate. | TEPP PR #154 exposed the issue; the root-cause repair is central `ContextualWisdomLab/.github#1173` at head `a6764368c634e9ea3a49d162a560d771d518e37e`. | Merge the central scanner repair under its own checks and review, then rerun PR #154 from its exact current head. | Central protected-main evidence, TEPP exact-head Strix success, and no TEPP-local workaround. The central repository owns scanner scope; TEPP owns Rust source correctness. | +| G-09 | The PR queue contains useful work but its evidence maturity is difficult for a buyer to audit. | The live queue includes active implementation, stale/dirty lineage, queued checks, and clean-but-unapproved candidates; current-head status changes continuously. | Keep this ledger synchronized after every merge, repair, close, or new gap; classify each PR by exact head, current checks, review, and merge state. | A machine-readable or deterministic inventory can reproduce the snapshot; stale reviews/checks are not reused; protected merge is never bypassed. Owner: repository governance. | + +## Live PR delivery ledger + +The following is the bounded queue snapshot used for the next loop. It is not a promise that these PRs are mergeable. + +| PR | Current purpose | Snapshot evidence | Next action | +|---:|---|---|---| +| #50 | TDT/CHRONOS state-transition admission | head `1b12210af301098a18ad0cf729b947f20db02a2e`; open, blocked by stale review state and queued current-head Checks, no qualifying independent approval | Recheck reviews and exact-head Checks; merge only after policy gates pass | +| #85 | CHRONOS occurrence-prediction Brier calibration | head `af3060afdf3a7df2231dd04bfdd59253c83a0637`; refreshed from protected `main`; current Checks queued, no qualifying independent approval | Let exact-head Checks and review run; do not promote forecast calibration before protected merge | +| #84 | Measurement-invariance loading validation | head `e0ef1f869c46aa20969ce083f9ca31d622c31bb4`; dirty/queued current head, no qualifying independent approval | Resolve current-head merge state and rerun focused/full evidence | +| #154 | Rust toolchain/coverage baseline | head `aaadb7f`; required Strix run queued after root-cause diagnosis | Follow central #1173, then rerun exact-head evidence | +| #165 | Hourly contextual-orchestrator product-development scheduler | head `37f85fed18d78e992e5ec2de3ffcc44eb98bbca4`; current coverage evidence queued, no qualifying independent approval | Verify scheduler secrets/model pin/permissions and wait for exact-head Checks while working another bounded queue item | +| #159, #158, #155 | Clean candidates with focused repairs | heads `855c6c7153c2f66a1c14e842ad700f571592dd35`, `6d28d23c432288c4dbecbd74a25f093ed9d9ef61`, and `0e2910825a042d7fdeb6497a20975b538493c65c`; required Checks were green at snapshot, but no qualifying independent approval | Re-fetch live review/ruleset state; merge only when the protected policy supplies approval | + +Closed or stale predecessor PRs are not used as evidence. For example, a closed event predecessor must be represented by its open successor and reacquire all current-head gates. + +## Loop contract + +For each open PR, the next developer performs these actions in order: + +1. Fetch the current head, base, merge state, reviews, review threads, required Checks, ruleset, and changed-file responsibility boundary. +2. Reproduce every actionable review or failed Check with the smallest relevant test. +3. Apply the root-cause fix in the owning repository; preserve concurrent remote commits and never force-push. +4. Run focused and complete verification, including scientific, security, documentation, coverage, and operational evidence affected by the change. +5. Update the owning ADR, traceability, validation ledger, research citation, API/architecture document, and changelog when the contract changed. +6. Re-fetch exact-head evidence and merge only with required Checks and a qualifying independent approval. Never use admin, self-approval, or bypass. +7. Rebuild the queue. If no PR or issue remains, select the highest-impact bounded gap above, open a PR, and repeat. + +Checks and review latency pause one branch only. The loop continues with another safe branch or with a bounded buyer gap. + +## Release gate + +No TEPP release is claimed until the selected capability is implemented on protected `main`, exact-head Checks and security evidence are green, scientific recovery and edge cases pass, public documentation and APA 7 research references are current, SBOM/provenance and rollback evidence exist, and the buyer can exercise the documented standalone and modular path. + +## Evidence sources + +- Product and measurement target: [`docs/product/prd-v0.4-approved.md`](prd-v0.4-approved.md) +- Technical and security contracts: [`DOCUMENTATION.md`](../../DOCUMENTATION.md), [`ARCHITECTURE.md`](../../ARCHITECTURE.md), [`docs/TRACEABILITY.md`](../TRACEABILITY.md) +- Scientific/release promotion: [`docs/validation/temporal-event-foundation.md`](../validation/temporal-event-foundation.md), [`docs/TEST_STRATEGY.md`](../TEST_STRATEGY.md), [`docs/research/standards-and-literature.md`](../research/standards-and-literature.md) +- Live repository evidence: GitHub PR/Checks/review/ruleset APIs fetched on 2026-08-21; re-fetch before acting. From 9473b055436c310a709256d067cd5a21502f0441 Mon Sep 17 00:00:00 2001 From: Seongho Bae Date: Fri, 21 Aug 2026 01:11:54 +0900 Subject: [PATCH 16/52] docs: normalize buyer gap maturity --- docs/product-technical-gap-baseline.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/product-technical-gap-baseline.md b/docs/product-technical-gap-baseline.md index a0e52ad5..00ea248b 100644 --- a/docs/product-technical-gap-baseline.md +++ b/docs/product-technical-gap-baseline.md @@ -97,7 +97,7 @@ visual workspace, or a supported multi-tenant release. | GAP-010 | Buyers lack coordinated accessible visual analytics and exact-value export workflows. | `accepted-target` | [#173](https://github.com/ContextualWisdomLab/TEPP/issues/173) | Real Figma File ID in ADR, Storybook/design tokens, ten PRD views, exact-value tables, accessible interaction/print/PDF states, provenance, and source-consistent exports. | | GAP-011 | TEPP is not yet an operable multi-tenant service or supported release. | `accepted-target` | [#174](https://github.com/ContextualWisdomLab/TEPP/issues/174) | Durable queue/storage, OIDC/RLS/purpose controls, OpenTelemetry/SLOs, load/recovery, migrations, signed release/SBOM/provenance, assurance evidence, and support policy. | | GAP-012 | The 92-PR queue obscures authority, repeatedly stales exact-head evidence, and fragments product boundaries. | `release-blocker` | [#175](https://github.com/ContextualWisdomLab/TEPP/issues/175) | Every PR classified; unique landing vehicles; compatible slices folded; superseded work closed with provenance; scheduler prioritizes consolidation; queue reaches zero before GA. | -| GAP-013 | Evidence-grounded LLM interpretation is routed but not executed and validated as a production interpreter/verifier port. | `partial` / `accepted-target` | [#176](https://github.com/ContextualWisdomLab/TEPP/issues/176), [PR #69](https://github.com/ContextualWisdomLab/TEPP/pull/69), [PR #165](https://github.com/ContextualWisdomLab/TEPP/pull/165) | Contextual-orchestrator execution, evidence citations, verifier refusals, comparable-budget ablations, provider eligibility/fallback, abstention, live/offline contract tests, and no numerical-authority escalation. | +| GAP-013 | Evidence-grounded LLM interpretation is routed but not executed and validated as a production interpreter/verifier port. | `partial` | [#176](https://github.com/ContextualWisdomLab/TEPP/issues/176), [PR #69](https://github.com/ContextualWisdomLab/TEPP/pull/69), [PR #165](https://github.com/ContextualWisdomLab/TEPP/pull/165) | Contextual-orchestrator execution, evidence citations, verifier refusals, comparable-budget ablations, provider eligibility/fallback, abstention, live/offline contract tests, and no numerical-authority escalation. | | GAP-014 | README/TRD and some PR descriptions lag protected-main and live queue reality. | `partial` | [#175](https://github.com/ContextualWisdomLab/TEPP/issues/175) | Reconcile README, TRD, traceability, ADR maturity, CHANGELOG, preferred-merge declarations, and exact protected-main evidence. | | GAP-015 | There was no canonical live product/buyer-gap register tied to documentation validation. | `active-PR` | [PR #164](https://github.com/ContextualWisdomLab/TEPP/pull/164) | Merge this document and its validator/map integration after exact-head checks and independent review. | From a6efbd1e24c4941b205169202443def0674782fe Mon Sep 17 00:00:00 2001 From: Seongho Bae Date: Fri, 21 Aug 2026 01:33:55 +0900 Subject: [PATCH 17/52] docs: remove duplicate gap baseline index entry --- DOCUMENTATION.md | 1 - 1 file changed, 1 deletion(-) diff --git a/DOCUMENTATION.md b/DOCUMENTATION.md index 406ae25b..c7b26635 100644 --- a/DOCUMENTATION.md +++ b/DOCUMENTATION.md @@ -22,7 +22,6 @@ TEPP's approved PRD v0.4 and implementation plan are the primary product baselin | Test/scientific validation strategy | [`docs/TEST_STRATEGY.md`](docs/TEST_STRATEGY.md) | | Operability/recovery/release | [`docs/OPERABILITY.md`](docs/OPERABILITY.md) | | Requirement/research/evidence traceability | [`docs/TRACEABILITY.md`](docs/TRACEABILITY.md) | -| Product and technical gap baseline | [`docs/product-technical-gap-baseline.md`](docs/product-technical-gap-baseline.md) | | Architecture decision index / ownership map | [`docs/adr/README.md`](docs/adr/README.md) | | ADR status, maturity, and supersession policy | [`docs/adr/ADR_POLICY.md`](docs/adr/ADR_POLICY.md) | | Delivery roadmap | [`docs/roadmaps/2026-08-05-tepp-delivery-roadmap.md`](docs/roadmaps/2026-08-05-tepp-delivery-roadmap.md) | From 2fb757d01cff24687971ff0d6a29edc47164d66a Mon Sep 17 00:00:00 2001 From: Seongho Bae Date: Fri, 21 Aug 2026 04:35:48 +0900 Subject: [PATCH 18/52] docs(gap): refresh live queue snapshot --- docs/product-technical-gap-baseline.md | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/docs/product-technical-gap-baseline.md b/docs/product-technical-gap-baseline.md index 00ea248b..298f5e11 100644 --- a/docs/product-technical-gap-baseline.md +++ b/docs/product-technical-gap-baseline.md @@ -2,7 +2,7 @@ **Status:** Live delivery baseline **Product:** Temporal Event Psychometrics Platform (TEPP) -**Snapshot:** 2026-08-20 22:10 KST +**Snapshot:** 2026-08-21 04:34 KST **Protected-main evidence:** `7c29e7c971d7940e1fb3def1ed3aae2d1bc8ad4a` **Workspace version on protected main:** `0.1.0` @@ -26,8 +26,8 @@ GitHub state before any customer, release, certification, or valuation claim. | Protected-main SHA | `7c29e7c971d7940e1fb3def1ed3aae2d1bc8ad4a` | All as-built claims are bounded to this commit. | | Workspace members | 10 Rust crates | The foundation is modular, but the approved target contains additional semantic, estimator, compute, psychometric, event-intelligence, network, interpretation, artifact, and visual boundaries. | | Open pull requests | **92** | The queue is itself a release blocker and requires consolidation. | -| Draft pull requests | **55** | Most queued work is not independently review-ready. | -| Non-draft pull requests | **37** | A non-draft state is not a qualifying review or required-check result. | +| Draft pull requests | **19** | Most queued work is not independently review-ready. | +| Non-draft pull requests | **73** | A non-draft state is not a qualifying review or required-check result. | | Open product issues | **12** | Issue #156 plus the product-completion program #166–#176. | | Current package version | `0.1.0` | No supported product release is established by the repository version alone. | From cb1dd2758cde19fa1b23cd4efa6f01b789f7f345 Mon Sep 17 00:00:00 2001 From: Seongho Bae Date: Fri, 21 Aug 2026 04:42:27 +0900 Subject: [PATCH 19/52] docs(gap): split executable product capabilities --- docs/product-technical-gap-baseline.md | 35 +++++++++++++------------- 1 file changed, 18 insertions(+), 17 deletions(-) diff --git a/docs/product-technical-gap-baseline.md b/docs/product-technical-gap-baseline.md index 298f5e11..0b58f41d 100644 --- a/docs/product-technical-gap-baseline.md +++ b/docs/product-technical-gap-baseline.md @@ -83,23 +83,24 @@ visual workspace, or a supported multi-tenant release. ## Buyer-gap register -| ID | Buyer-visible gap | Maturity | Delivery authority | Closure evidence | -|---|---|---|---|---| -| GAP-001 | Submission can produce a durable accepted receipt, but protected `main` lacks the separate deterministic terminal-result lifecycle. | `active-PR` | [#156](https://github.com/ContextualWisdomLab/TEPP/issues/156) / [PR #157](https://github.com/ContextualWisdomLab/TEPP/pull/157) | Exact request/result/snapshot/cutoff/model/profile binding, typed terminal failures, deterministic retrieval, current-head checks, and qualifying review. | -| GAP-002 | LineageWeave and other modular consumers cannot yet rely on the complete protected-main HTTP evidence/result boundary. | `active-PR stack` | [#107](https://github.com/ContextualWisdomLab/TEPP/pull/107) → [#155](https://github.com/ContextualWisdomLab/TEPP/pull/155) → [#158](https://github.com/ContextualWisdomLab/TEPP/pull/158) / [#159](https://github.com/ContextualWisdomLab/TEPP/pull/159) | Merge in dependency order with live loopback, framing, credential, idempotency, cutoff, tenant, and result-evidence tests. | -| GAP-003 | A buyer cannot run immutable evidence through estimation, validation, persistence, and terminal artifact retrieval as one product workflow. | `accepted-target` | [#166](https://github.com/ContextualWisdomLab/TEPP/issues/166) | Realistic end-to-end Compose/CLI/API execution, durable idempotent job lifecycle, production scientific metrics, restart/recovery, and reproducibility manifest. | -| GAP-004 | The central shared-latent temporal/relational topic estimator is absent. | `accepted-target` | [#167](https://github.com/ContextualWisdomLab/TEPP/issues/167) | Rust CPU `f64` fitting, sparse bounded parallelism, posterior artifacts, convergence, true-parameter RMSE/bias/coverage, and real candidate-K fitting. | -| GAP-005 | Real multilingual documents are not yet transformed into validated exact-span semantic units and versioned shared concepts. | `accepted-target` | [#168](https://github.com/ContextualWisdomLab/TEPP/issues/168) | Unicode/layout/language-tailored processing, unknown-concept review, multilingual calibration/invariance, image-position evidence, and prompt-injection tests. | -| GAP-006 | Posterior topic measurements cannot yet be fitted through a complete cross-classified longitudinal ESEM/DSEM engine. | `accepted-target` | [#169](https://github.com/ContextualWisdomLab/TEPP/issues/169) | Plausible-value/joint uncertainty, invariance, irregular event time, within/between separation, multiple membership, true-parameter recovery, and causal-claim refusal. | -| GAP-007 | TDT detection/tracking and CHRONOS schema/forecast/temporal reasoning remain isolated bounded gates rather than one calibrated product workflow. | `accepted-target` | [#170](https://github.com/ContextualWisdomLab/TEPP/issues/170) | Span-grounded mentions, calibrated TDT metrics, schema/forecast hypothesis states, interval consistency, known-truth recovery, persistence, and exports. | -| GAP-008 | GPU support is policy-only; no production estimator kernel has real hardware parity or declared VRAM evidence. | `accepted-target` | [#171](https://github.com/ContextualWisdomLab/TEPP/issues/171) | Real CUDA/portable backend execution, CPU parity, streamed memory, bounded OOM/fallback, hardware profiles, telemetry, and no skipped-support claim. | -| GAP-009 | Topic association and cluster outputs lack posterior-valid estimation, uncertainty, edge stability, and consensus communities. | `accepted-target` | [#172](https://github.com/ContextualWisdomLab/TEPP/issues/172) | Valid log-ratio coordinates, interval/stability-bearing edges, repeated Leiden consensus, known-truth network/cluster recovery, and reproducible exports. | -| GAP-010 | Buyers lack coordinated accessible visual analytics and exact-value export workflows. | `accepted-target` | [#173](https://github.com/ContextualWisdomLab/TEPP/issues/173) | Real Figma File ID in ADR, Storybook/design tokens, ten PRD views, exact-value tables, accessible interaction/print/PDF states, provenance, and source-consistent exports. | -| GAP-011 | TEPP is not yet an operable multi-tenant service or supported release. | `accepted-target` | [#174](https://github.com/ContextualWisdomLab/TEPP/issues/174) | Durable queue/storage, OIDC/RLS/purpose controls, OpenTelemetry/SLOs, load/recovery, migrations, signed release/SBOM/provenance, assurance evidence, and support policy. | -| GAP-012 | The 92-PR queue obscures authority, repeatedly stales exact-head evidence, and fragments product boundaries. | `release-blocker` | [#175](https://github.com/ContextualWisdomLab/TEPP/issues/175) | Every PR classified; unique landing vehicles; compatible slices folded; superseded work closed with provenance; scheduler prioritizes consolidation; queue reaches zero before GA. | -| GAP-013 | Evidence-grounded LLM interpretation is routed but not executed and validated as a production interpreter/verifier port. | `partial` | [#176](https://github.com/ContextualWisdomLab/TEPP/issues/176), [PR #69](https://github.com/ContextualWisdomLab/TEPP/pull/69), [PR #165](https://github.com/ContextualWisdomLab/TEPP/pull/165) | Contextual-orchestrator execution, evidence citations, verifier refusals, comparable-budget ablations, provider eligibility/fallback, abstention, live/offline contract tests, and no numerical-authority escalation. | -| GAP-014 | README/TRD and some PR descriptions lag protected-main and live queue reality. | `partial` | [#175](https://github.com/ContextualWisdomLab/TEPP/issues/175) | Reconcile README, TRD, traceability, ADR maturity, CHANGELOG, preferred-merge declarations, and exact protected-main evidence. | -| GAP-015 | There was no canonical live product/buyer-gap register tied to documentation validation. | `active-PR` | [PR #164](https://github.com/ContextualWisdomLab/TEPP/pull/164) | Merge this document and its validator/map integration after exact-head checks and independent review. | +| ID | Buyer-visible gap | Maturity | Protected-main authority | Current delivery authority | Current head SHA | Closure evidence | +|---|---|---|---|---|---|---| +| GAP-001 | Submission can produce a durable accepted receipt, but protected `main` lacks the separate deterministic terminal-result lifecycle. | `active-PR` | `7c29e7c` (accepted receipt only) | [#156](https://github.com/ContextualWisdomLab/TEPP/issues/156) / [PR #157](https://github.com/ContextualWisdomLab/TEPP/pull/157) | `0cb9ff6` | Exact request/result/snapshot/cutoff/model/profile binding, typed terminal failures, deterministic retrieval, current-head checks, and qualifying review. | +| GAP-002 | LineageWeave and other modular consumers cannot yet rely on the complete protected-main HTTP evidence/result boundary. | `active-PR stack` | `7c29e7c` (versioned API contracts) | [#107](https://github.com/ContextualWisdomLab/TEPP/pull/107) → [#155](https://github.com/ContextualWisdomLab/TEPP/pull/155) → [#158](https://github.com/ContextualWisdomLab/TEPP/pull/158) / [#159](https://github.com/ContextualWisdomLab/TEPP/pull/159) | `07bb21f` → `0e29108` → `6d28d23` / `855c6c7` | Merge in dependency order with live loopback, framing, credential, idempotency, cutoff, tenant, and result-evidence tests. | +| GAP-003A | Immutable evidence cannot yet be submitted to a durable validation run that produces buyer-usable scientific acceptance evidence. | `accepted-target` | `7c29e7c` (validation metrics are library-level only) | [#166](https://github.com/ContextualWisdomLab/TEPP/issues/166) | `—` (issue program; no current implementation PR) | Compose/CLI/API execution must bind immutable evidence, cutoffs, model configuration, validation metrics, and reproducibility manifests to one idempotent run. | +| GAP-003B | Scientific result artifacts cannot yet be persisted, restarted, and recovered as one supported buyer workflow. | `accepted-target` | `7c29e7c` (persistence contracts lack E2E recovery) | [#166](https://github.com/ContextualWisdomLab/TEPP/issues/166) | `—` (issue program; no current implementation PR) | Durable storage, migration/rollback, restart/recovery, artifact digest verification, and terminal retrieval must pass against a real Compose deployment. | +| GAP-004 | The central shared-latent temporal/relational topic estimator is absent. | `accepted-target` | `7c29e7c` (no production estimator) | [#167](https://github.com/ContextualWisdomLab/TEPP/issues/167) / [PR #48](https://github.com/ContextualWisdomLab/TEPP/pull/48) | `45224e5` | Rust CPU `f64` fitting, sparse bounded parallelism, posterior artifacts, convergence, true-parameter RMSE/bias/coverage, and real candidate-K fitting. | +| GAP-005 | Real multilingual documents are not yet transformed into validated exact-span semantic units and versioned shared concepts. | `accepted-target` | `7c29e7c` (evidence spans exist without full semantic pipeline) | [#168](https://github.com/ContextualWisdomLab/TEPP/issues/168) / [PR #53](https://github.com/ContextualWisdomLab/TEPP/pull/53) | `c07e512` | Unicode/layout/language-tailored processing, unknown-concept review, multilingual calibration/invariance, image-position evidence, and prompt-injection tests. | +| GAP-006 | Posterior topic measurements cannot yet be fitted through a complete cross-classified longitudinal ESEM/DSEM engine. | `accepted-target` | `7c29e7c` (temporal and membership primitives only) | [#169](https://github.com/ContextualWisdomLab/TEPP/issues/169) / [PR #119](https://github.com/ContextualWisdomLab/TEPP/pull/119) | `2ea08a8` | Plausible-value/joint uncertainty, invariance, irregular event time, within/between separation, multiple membership, true-parameter recovery, and causal-claim refusal. | +| GAP-007 | TDT detection/tracking and CHRONOS schema/forecast/temporal reasoning remain isolated bounded gates rather than one calibrated product workflow. | `accepted-target` | `7c29e7c` (event/time primitives only) | [#170](https://github.com/ContextualWisdomLab/TEPP/issues/170) / [PR #70](https://github.com/ContextualWisdomLab/TEPP/pull/70) | `dae7e55` | Span-grounded mentions, calibrated TDT metrics, schema/forecast hypothesis states, interval consistency, known-truth recovery, persistence, and exports. | +| GAP-008 | GPU support is policy-only; no production estimator kernel has real hardware parity or declared VRAM evidence. | `accepted-target` | `7c29e7c` (VRAM policy only) | [#171](https://github.com/ContextualWisdomLab/TEPP/issues/171) / [PR #51](https://github.com/ContextualWisdomLab/TEPP/pull/51) | `240979b` | Real CUDA/portable backend execution, CPU parity, streamed memory, bounded OOM/fallback, hardware profiles, telemetry, and no skipped-support claim. | +| GAP-009 | Topic association and cluster outputs lack posterior-valid estimation, uncertainty, edge stability, and consensus communities. | `accepted-target` | `7c29e7c` (network primitives only) | [#172](https://github.com/ContextualWisdomLab/TEPP/issues/172) / [PR #71](https://github.com/ContextualWisdomLab/TEPP/pull/71) | `90b531e` | Valid log-ratio coordinates, interval/stability-bearing edges, repeated Leiden consensus, known-truth network/cluster recovery, and reproducible exports. | +| GAP-010 | Buyers lack coordinated accessible visual analytics and exact-value export workflows. | `accepted-target` | `7c29e7c` (no visual workspace) | [#173](https://github.com/ContextualWisdomLab/TEPP/issues/173) | `—` (Figma work not started) | Real Figma File ID in ADR, Storybook/design tokens, ten PRD views, exact-value tables, accessible interaction/print/PDF states, provenance, and source-consistent exports. | +| GAP-011 | TEPP is not yet an operable multi-tenant service or supported release. | `accepted-target` | `7c29e7c` (library contracts only) | [#174](https://github.com/ContextualWisdomLab/TEPP/issues/174) | `—` (issue program; no current implementation PR) | Durable queue/storage, OIDC/RLS/purpose controls, OpenTelemetry/SLOs, load/recovery, migrations, signed release/SBOM/provenance, assurance evidence, and support policy. | +| GAP-012 | The 92-PR queue obscures authority, repeatedly stales exact-head evidence, and fragments product boundaries. | `release-blocker` | `7c29e7c` (protected-main truth) | [#175](https://github.com/ContextualWisdomLab/TEPP/issues/175) | `—` (live queue program) | Every PR classified; unique landing vehicles; compatible slices folded; superseded work closed with provenance; scheduler prioritizes consolidation; queue reaches zero before GA. | +| GAP-013 | Evidence-grounded LLM interpretation is routed but not executed and validated as a production interpreter/verifier port. | `partial` | `7c29e7c` (routing and refusal contracts only) | [#176](https://github.com/ContextualWisdomLab/TEPP/issues/176), [PR #69](https://github.com/ContextualWisdomLab/TEPP/pull/69), [PR #165](https://github.com/ContextualWisdomLab/TEPP/pull/165) | `e780e1d` / `02ace78` | Contextual-orchestrator execution, evidence citations, verifier refusals, comparable-budget ablations, provider eligibility/fallback, abstention, live/offline contract tests, and no numerical-authority escalation. | +| GAP-014 | README/TRD and some PR descriptions lag protected-main and live queue reality. | `partial` | `7c29e7c` (documentation is not fully synchronized) | [#175](https://github.com/ContextualWisdomLab/TEPP/issues/175) | `—` (queue-consolidation work) | Reconcile README, TRD, traceability, ADR maturity, CHANGELOG, preferred-merge declarations, and exact protected-main evidence. | +| GAP-015 | There was no canonical live product/buyer-gap register tied to documentation validation. | `active-PR` | `7c29e7c` (no live gap register) | [PR #164](https://github.com/ContextualWisdomLab/TEPP/pull/164) | `2fb757d` | Merge this document and its validator/map integration after exact-head checks and independent review. | ## Product-completion issue register From 78e5852332fb31447f216b1d187128ac18ccfd1d Mon Sep 17 00:00:00 2001 From: Seongho Bae Date: Fri, 21 Aug 2026 04:56:21 +0900 Subject: [PATCH 20/52] docs(gap): align queue snapshot timestamp --- docs/product-technical-gap-baseline.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/product-technical-gap-baseline.md b/docs/product-technical-gap-baseline.md index 0b58f41d..fee09fc0 100644 --- a/docs/product-technical-gap-baseline.md +++ b/docs/product-technical-gap-baseline.md @@ -2,7 +2,7 @@ **Status:** Live delivery baseline **Product:** Temporal Event Psychometrics Platform (TEPP) -**Snapshot:** 2026-08-21 04:34 KST +**Snapshot:** 2026-08-21 04:55 KST **Protected-main evidence:** `7c29e7c971d7940e1fb3def1ed3aae2d1bc8ad4a` **Workspace version on protected main:** `0.1.0` From 5b707221ecc4fda68db8c571d57ab2ad181493ab Mon Sep 17 00:00:00 2001 From: Seongho Bae Date: Fri, 21 Aug 2026 04:59:20 +0900 Subject: [PATCH 21/52] docs(gap): normalize maturity and authority fields --- docs/product-technical-gap-baseline.md | 38 +++++++++++++------------- 1 file changed, 19 insertions(+), 19 deletions(-) diff --git a/docs/product-technical-gap-baseline.md b/docs/product-technical-gap-baseline.md index fee09fc0..bd7e0731 100644 --- a/docs/product-technical-gap-baseline.md +++ b/docs/product-technical-gap-baseline.md @@ -83,24 +83,24 @@ visual workspace, or a supported multi-tenant release. ## Buyer-gap register -| ID | Buyer-visible gap | Maturity | Protected-main authority | Current delivery authority | Current head SHA | Closure evidence | -|---|---|---|---|---|---|---| -| GAP-001 | Submission can produce a durable accepted receipt, but protected `main` lacks the separate deterministic terminal-result lifecycle. | `active-PR` | `7c29e7c` (accepted receipt only) | [#156](https://github.com/ContextualWisdomLab/TEPP/issues/156) / [PR #157](https://github.com/ContextualWisdomLab/TEPP/pull/157) | `0cb9ff6` | Exact request/result/snapshot/cutoff/model/profile binding, typed terminal failures, deterministic retrieval, current-head checks, and qualifying review. | -| GAP-002 | LineageWeave and other modular consumers cannot yet rely on the complete protected-main HTTP evidence/result boundary. | `active-PR stack` | `7c29e7c` (versioned API contracts) | [#107](https://github.com/ContextualWisdomLab/TEPP/pull/107) → [#155](https://github.com/ContextualWisdomLab/TEPP/pull/155) → [#158](https://github.com/ContextualWisdomLab/TEPP/pull/158) / [#159](https://github.com/ContextualWisdomLab/TEPP/pull/159) | `07bb21f` → `0e29108` → `6d28d23` / `855c6c7` | Merge in dependency order with live loopback, framing, credential, idempotency, cutoff, tenant, and result-evidence tests. | -| GAP-003A | Immutable evidence cannot yet be submitted to a durable validation run that produces buyer-usable scientific acceptance evidence. | `accepted-target` | `7c29e7c` (validation metrics are library-level only) | [#166](https://github.com/ContextualWisdomLab/TEPP/issues/166) | `—` (issue program; no current implementation PR) | Compose/CLI/API execution must bind immutable evidence, cutoffs, model configuration, validation metrics, and reproducibility manifests to one idempotent run. | -| GAP-003B | Scientific result artifacts cannot yet be persisted, restarted, and recovered as one supported buyer workflow. | `accepted-target` | `7c29e7c` (persistence contracts lack E2E recovery) | [#166](https://github.com/ContextualWisdomLab/TEPP/issues/166) | `—` (issue program; no current implementation PR) | Durable storage, migration/rollback, restart/recovery, artifact digest verification, and terminal retrieval must pass against a real Compose deployment. | -| GAP-004 | The central shared-latent temporal/relational topic estimator is absent. | `accepted-target` | `7c29e7c` (no production estimator) | [#167](https://github.com/ContextualWisdomLab/TEPP/issues/167) / [PR #48](https://github.com/ContextualWisdomLab/TEPP/pull/48) | `45224e5` | Rust CPU `f64` fitting, sparse bounded parallelism, posterior artifacts, convergence, true-parameter RMSE/bias/coverage, and real candidate-K fitting. | -| GAP-005 | Real multilingual documents are not yet transformed into validated exact-span semantic units and versioned shared concepts. | `accepted-target` | `7c29e7c` (evidence spans exist without full semantic pipeline) | [#168](https://github.com/ContextualWisdomLab/TEPP/issues/168) / [PR #53](https://github.com/ContextualWisdomLab/TEPP/pull/53) | `c07e512` | Unicode/layout/language-tailored processing, unknown-concept review, multilingual calibration/invariance, image-position evidence, and prompt-injection tests. | -| GAP-006 | Posterior topic measurements cannot yet be fitted through a complete cross-classified longitudinal ESEM/DSEM engine. | `accepted-target` | `7c29e7c` (temporal and membership primitives only) | [#169](https://github.com/ContextualWisdomLab/TEPP/issues/169) / [PR #119](https://github.com/ContextualWisdomLab/TEPP/pull/119) | `2ea08a8` | Plausible-value/joint uncertainty, invariance, irregular event time, within/between separation, multiple membership, true-parameter recovery, and causal-claim refusal. | -| GAP-007 | TDT detection/tracking and CHRONOS schema/forecast/temporal reasoning remain isolated bounded gates rather than one calibrated product workflow. | `accepted-target` | `7c29e7c` (event/time primitives only) | [#170](https://github.com/ContextualWisdomLab/TEPP/issues/170) / [PR #70](https://github.com/ContextualWisdomLab/TEPP/pull/70) | `dae7e55` | Span-grounded mentions, calibrated TDT metrics, schema/forecast hypothesis states, interval consistency, known-truth recovery, persistence, and exports. | -| GAP-008 | GPU support is policy-only; no production estimator kernel has real hardware parity or declared VRAM evidence. | `accepted-target` | `7c29e7c` (VRAM policy only) | [#171](https://github.com/ContextualWisdomLab/TEPP/issues/171) / [PR #51](https://github.com/ContextualWisdomLab/TEPP/pull/51) | `240979b` | Real CUDA/portable backend execution, CPU parity, streamed memory, bounded OOM/fallback, hardware profiles, telemetry, and no skipped-support claim. | -| GAP-009 | Topic association and cluster outputs lack posterior-valid estimation, uncertainty, edge stability, and consensus communities. | `accepted-target` | `7c29e7c` (network primitives only) | [#172](https://github.com/ContextualWisdomLab/TEPP/issues/172) / [PR #71](https://github.com/ContextualWisdomLab/TEPP/pull/71) | `90b531e` | Valid log-ratio coordinates, interval/stability-bearing edges, repeated Leiden consensus, known-truth network/cluster recovery, and reproducible exports. | -| GAP-010 | Buyers lack coordinated accessible visual analytics and exact-value export workflows. | `accepted-target` | `7c29e7c` (no visual workspace) | [#173](https://github.com/ContextualWisdomLab/TEPP/issues/173) | `—` (Figma work not started) | Real Figma File ID in ADR, Storybook/design tokens, ten PRD views, exact-value tables, accessible interaction/print/PDF states, provenance, and source-consistent exports. | -| GAP-011 | TEPP is not yet an operable multi-tenant service or supported release. | `accepted-target` | `7c29e7c` (library contracts only) | [#174](https://github.com/ContextualWisdomLab/TEPP/issues/174) | `—` (issue program; no current implementation PR) | Durable queue/storage, OIDC/RLS/purpose controls, OpenTelemetry/SLOs, load/recovery, migrations, signed release/SBOM/provenance, assurance evidence, and support policy. | -| GAP-012 | The 92-PR queue obscures authority, repeatedly stales exact-head evidence, and fragments product boundaries. | `release-blocker` | `7c29e7c` (protected-main truth) | [#175](https://github.com/ContextualWisdomLab/TEPP/issues/175) | `—` (live queue program) | Every PR classified; unique landing vehicles; compatible slices folded; superseded work closed with provenance; scheduler prioritizes consolidation; queue reaches zero before GA. | -| GAP-013 | Evidence-grounded LLM interpretation is routed but not executed and validated as a production interpreter/verifier port. | `partial` | `7c29e7c` (routing and refusal contracts only) | [#176](https://github.com/ContextualWisdomLab/TEPP/issues/176), [PR #69](https://github.com/ContextualWisdomLab/TEPP/pull/69), [PR #165](https://github.com/ContextualWisdomLab/TEPP/pull/165) | `e780e1d` / `02ace78` | Contextual-orchestrator execution, evidence citations, verifier refusals, comparable-budget ablations, provider eligibility/fallback, abstention, live/offline contract tests, and no numerical-authority escalation. | -| GAP-014 | README/TRD and some PR descriptions lag protected-main and live queue reality. | `partial` | `7c29e7c` (documentation is not fully synchronized) | [#175](https://github.com/ContextualWisdomLab/TEPP/issues/175) | `—` (queue-consolidation work) | Reconcile README, TRD, traceability, ADR maturity, CHANGELOG, preferred-merge declarations, and exact protected-main evidence. | -| GAP-015 | There was no canonical live product/buyer-gap register tied to documentation validation. | `active-PR` | `7c29e7c` (no live gap register) | [PR #164](https://github.com/ContextualWisdomLab/TEPP/pull/164) | `2fb757d` | Merge this document and its validator/map integration after exact-head checks and independent review. | +| ID | Buyer-visible gap | Maturity | Delivery status | Protected-main authority | Current delivery authority | Current head SHA | Closure evidence | +|---|---|---|---|---|---|---|---| +| GAP-001 | Submission can produce a durable accepted receipt, but protected `main` lacks the separate deterministic terminal-result lifecycle. | `active-PR` | landing vehicle | `7c29e7c` (accepted receipt only) | [#156](https://github.com/ContextualWisdomLab/TEPP/issues/156) / [PR #157](https://github.com/ContextualWisdomLab/TEPP/pull/157) | `0cb9ff6` | Exact request/result/snapshot/cutoff/model/profile binding, typed terminal failures, deterministic retrieval, current-head checks, and qualifying review. | +| GAP-002 | LineageWeave and other modular consumers cannot yet rely on the complete protected-main HTTP evidence/result boundary. | `active-PR` | stacked dependency | `7c29e7c` (versioned API contracts) | [#107](https://github.com/ContextualWisdomLab/TEPP/pull/107) → [#155](https://github.com/ContextualWisdomLab/TEPP/pull/155) → [#158](https://github.com/ContextualWisdomLab/TEPP/pull/158) / [#159](https://github.com/ContextualWisdomLab/TEPP/pull/159) | `07bb21f` → `0e29108` → `6d28d23` / `855c6c7` | Merge in dependency order with live loopback, framing, credential, idempotency, cutoff, tenant, and result-evidence tests. | +| GAP-003A | Immutable evidence cannot yet be submitted to a durable validation run that produces buyer-usable scientific acceptance evidence. | `accepted-target` | product-completion | `7c29e7c` (validation metrics are library-level only) | [#166](https://github.com/ContextualWisdomLab/TEPP/issues/166) | `—` (issue program; no current implementation PR) | Compose/CLI/API execution must bind immutable evidence, cutoffs, model configuration, validation metrics, and reproducibility manifests to one idempotent run. | +| GAP-003B | Scientific result artifacts cannot yet be persisted, restarted, and recovered as one supported buyer workflow. | `accepted-target` | product-completion | `7c29e7c` (persistence contracts lack E2E recovery) | [#166](https://github.com/ContextualWisdomLab/TEPP/issues/166) | `—` (issue program; no current implementation PR) | Durable storage, migration/rollback, restart/recovery, artifact digest verification, and terminal retrieval must pass against a real Compose deployment. | +| GAP-004 | The central shared-latent temporal/relational topic estimator is absent. | `accepted-target` | product vertical | `7c29e7c` (no production estimator) | [#167](https://github.com/ContextualWisdomLab/TEPP/issues/167) / [PR #48](https://github.com/ContextualWisdomLab/TEPP/pull/48) | `45224e5` | Rust CPU `f64` fitting, sparse bounded parallelism, posterior artifacts, convergence, true-parameter RMSE/bias/coverage, and real candidate-K fitting. | +| GAP-005 | Real multilingual documents are not yet transformed into validated exact-span semantic units and versioned shared concepts. | `accepted-target` | product vertical | `7c29e7c` (evidence spans exist without full semantic pipeline) | [#168](https://github.com/ContextualWisdomLab/TEPP/issues/168) / [PR #53](https://github.com/ContextualWisdomLab/TEPP/pull/53) | `c07e512` | Unicode/layout/language-tailored processing, unknown-concept review, multilingual calibration/invariance, image-position evidence, and prompt-injection tests. | +| GAP-006 | Posterior topic measurements cannot yet be fitted through a complete cross-classified longitudinal ESEM/DSEM engine. | `accepted-target` | product vertical | `7c29e7c` (temporal and membership primitives only) | [#169](https://github.com/ContextualWisdomLab/TEPP/issues/169) / [PR #119](https://github.com/ContextualWisdomLab/TEPP/pull/119) | `2ea08a8` | Plausible-value/joint uncertainty, invariance, irregular event time, within/between separation, multiple membership, true-parameter recovery, and causal-claim refusal. | +| GAP-007 | TDT detection/tracking and CHRONOS schema/forecast/temporal reasoning remain isolated bounded gates rather than one calibrated product workflow. | `accepted-target` | product vertical | `7c29e7c` (event/time primitives only) | [#170](https://github.com/ContextualWisdomLab/TEPP/issues/170) / [PR #70](https://github.com/ContextualWisdomLab/TEPP/pull/70) | `dae7e55` | Span-grounded mentions, calibrated TDT metrics, schema/forecast hypothesis states, interval consistency, known-truth recovery, persistence, and exports. | +| GAP-008 | GPU support is policy-only; no production estimator kernel has real hardware parity or declared VRAM evidence. | `accepted-target` | product vertical | `7c29e7c` (VRAM policy only) | [#171](https://github.com/ContextualWisdomLab/TEPP/issues/171) / [PR #51](https://github.com/ContextualWisdomLab/TEPP/pull/51) | `240979b` | Real CUDA/portable backend execution, CPU parity, streamed memory, bounded OOM/fallback, hardware profiles, telemetry, and no skipped-support claim. | +| GAP-009 | Topic association and cluster outputs lack posterior-valid estimation, uncertainty, edge stability, and consensus communities. | `accepted-target` | product vertical | `7c29e7c` (network primitives only) | [#172](https://github.com/ContextualWisdomLab/TEPP/issues/172) / [PR #71](https://github.com/ContextualWisdomLab/TEPP/pull/71) | `90b531e` | Valid log-ratio coordinates, interval/stability-bearing edges, repeated Leiden consensus, known-truth network/cluster recovery, and reproducible exports. | +| GAP-010 | Buyers lack coordinated accessible visual analytics and exact-value export workflows. | `accepted-target` | product vertical | `7c29e7c` (no visual workspace) | [#173](https://github.com/ContextualWisdomLab/TEPP/issues/173) | `—` (Figma work not started) | Real Figma File ID in ADR, Storybook/design tokens, ten PRD views, exact-value tables, accessible interaction/print/PDF states, provenance, and source-consistent exports. | +| GAP-011 | TEPP is not yet an operable multi-tenant service or supported release. | `accepted-target` | product vertical | `7c29e7c` (library contracts only) | [#174](https://github.com/ContextualWisdomLab/TEPP/issues/174) | `—` (issue program; no current implementation PR) | Durable queue/storage, OIDC/RLS/purpose controls, OpenTelemetry/SLOs, load/recovery, migrations, signed release/SBOM/provenance, assurance evidence, and support policy. | +| GAP-012 | The 92-PR queue obscures authority, repeatedly stales exact-head evidence, and fragments product boundaries. | `partial` | release blocker | `7c29e7c` (protected-main truth) | [#175](https://github.com/ContextualWisdomLab/TEPP/issues/175) | `—` (live queue program) | Every PR classified; unique landing vehicles; compatible slices folded; superseded work closed with provenance; scheduler prioritizes consolidation; queue reaches zero before GA. | +| GAP-013 | Evidence-grounded LLM interpretation is routed but not executed and validated as a production interpreter/verifier port. | `partial` | active integration | `7c29e7c` (routing and refusal contracts only) | [#176](https://github.com/ContextualWisdomLab/TEPP/issues/176), [PR #69](https://github.com/ContextualWisdomLab/TEPP/pull/69), [PR #165](https://github.com/ContextualWisdomLab/TEPP/pull/165) | `e780e1d` / `5a98c8a` | Contextual-orchestrator execution, evidence citations, verifier refusals, comparable-budget ablations, provider eligibility/fallback, abstention, live/offline contract tests, and no numerical-authority escalation. | +| GAP-014 | README/TRD and some PR descriptions lag protected-main and live queue reality. | `partial` | documentation drift | `7c29e7c` (documentation is not fully synchronized) | [#175](https://github.com/ContextualWisdomLab/TEPP/issues/175) | `—` (queue-consolidation work) | Reconcile README, TRD, traceability, ADR maturity, CHANGELOG, preferred-merge declarations, and exact protected-main evidence. | +| GAP-015 | There was no canonical live product/buyer-gap register tied to documentation validation. | `active-PR` | landing vehicle | `7c29e7c` (no live gap register) | [PR #164](https://github.com/ContextualWisdomLab/TEPP/pull/164) | `78e5852` | Merge this document and its validator/map integration after exact-head checks and independent review. | ## Product-completion issue register @@ -218,7 +218,7 @@ independent diligence evidence. - External products integrate through versioned API/event/artifact contracts, never direct application-table access. - CSAP/SOC 2/ISO/NIST alignment is readiness evidence, not certification. -- Every method/standard decision updates APA 7 doctoring and source-to-test +- Every method/standard decision updates APA 7 traceability and source-to-test traceability in the same reviewed change. ## Refresh rule From 8817be07dc34c1fcc285b3501d377fc28b81220f Mon Sep 17 00:00:00 2001 From: Seongho Bae Date: Fri, 21 Aug 2026 07:41:39 +0900 Subject: [PATCH 22/52] docs: refresh live pull request gap evidence --- docs/product-technical-gap-baseline.md | 126 +++++++++++++++++++++++-- 1 file changed, 120 insertions(+), 6 deletions(-) diff --git a/docs/product-technical-gap-baseline.md b/docs/product-technical-gap-baseline.md index bd7e0731..d2adef13 100644 --- a/docs/product-technical-gap-baseline.md +++ b/docs/product-technical-gap-baseline.md @@ -2,7 +2,7 @@ **Status:** Live delivery baseline **Product:** Temporal Event Psychometrics Platform (TEPP) -**Snapshot:** 2026-08-21 04:55 KST +**Snapshot:** 2026-08-21 07:15 KST **Protected-main evidence:** `7c29e7c971d7940e1fb3def1ed3aae2d1bc8ad4a` **Workspace version on protected main:** `0.1.0` @@ -25,16 +25,128 @@ GitHub state before any customer, release, certification, or valuation claim. |---|---:|---| | Protected-main SHA | `7c29e7c971d7940e1fb3def1ed3aae2d1bc8ad4a` | All as-built claims are bounded to this commit. | | Workspace members | 10 Rust crates | The foundation is modular, but the approved target contains additional semantic, estimator, compute, psychometric, event-intelligence, network, interpretation, artifact, and visual boundaries. | -| Open pull requests | **92** | The queue is itself a release blocker and requires consolidation. | +| Open pull requests | **93** | The queue is itself a release blocker and requires consolidation. | | Draft pull requests | **19** | Most queued work is not independently review-ready. | -| Non-draft pull requests | **73** | A non-draft state is not a qualifying review or required-check result. | +| Non-draft pull requests | **74** | A non-draft state is not a qualifying review or required-check result. | | Open product issues | **12** | Issue #156 plus the product-completion program #166–#176. | | Current package version | `0.1.0` | No supported product release is established by the repository version alone. | The pull-request counts come from the live GitHub search at this snapshot. The full exact-head classification is owned by [issue #175](https://github.com/ContextualWisdomLab/TEPP/issues/175); this file -keeps the buyer-level summary rather than duplicating a 92-row volatile ledger. +keeps the buyer-level summary while the exact-head register below records the +current 93-row volatile queue. + +## Current open pull-request evidence + +The following exact-head register was fetched from the live GitHub pull-request +API at the snapshot above. `draft=false` is not approval, mergeability, or a +passing-check claim. Re-read the full SHA, current review decision, required +Checks, and branch rules immediately before every mutation. + +| PR | Exact current head | Draft | Title | +|---:|---|:---:|---| +| #177 | `8a5dee50d4b0fa2396893ad26fa775f2629e2fcd` | false | fix(workflow): pin scheduler budget hardening | +| #165 | `3a0fbfc24a2294e43ad04ee72064362e4385dee9` | false | feat: route hourly product agents through contextual orchestrator | +| #164 | `5b707221ecc4fda68db8c571d57ab2ad181493ab` | false | docs: define TEPP product completion and technical gap baseline | +| #159 | `855c6c7153c2f66a1c14e842ad700f571592dd35` | false | feat(api): project LineageWeave evidence into cutoff-safe histories | +| #158 | `6d28d23c432288c4dbecbd74a25f093ed9d9ef61` | false | feat(api): expose temporal evidence context for LineageWeave Ask | +| #157 | `0cb9ff6b32afb56849214bbe464ea39004c1e106` | false | feat(api): publish completed analysis-run result contract | +| #155 | `0e2910825a042d7fdeb6497a20975b538493c65c` | false | feat(api): admit LineageWeave as a modular analysis-run consumer | +| #154 | `aaadb7f906ed48dfde3c2b71995ce266c592e7a0` | false | ci(rust): refresh branch coverage compiler baseline | +| #153 | `4a1d4c852701b9518effdbefcc6a0a56afe46385` | false | feat(membership): refuse location as entity identity or language | +| #152 | `a67d90381d62ccb2a094fca2f722e729761cbd53` | false | feat(method): refuse prompt boilerplate as unique content | +| #151 | `a35d3290a919f82ade3fcecfa0d6b46b0ecfc7c6` | false | feat(method): refuse corpus-background wording as unique content | +| #150 | `00deb56a7f0193f0a7b08ba27daa37fc49dd651f` | false | feat(method): refuse non-lexical modality as unique content | +| #149 | `e0fa6697ec6df1ec641005b7c27a45ae199688a9` | false | feat(method): refuse copied-text residue as unique content | +| #148 | `020b4466c6ee548cd4fb6df038bdb708981859b0` | false | feat(method): refuse house-voice style as unique content | +| #147 | `1644d25792ced70246037060370b44d500070238` | true | feat(method): refuse section boilerplate as unique content | +| #146 | `ecaa8bcbc8a5007f56e14c66806f3deccea525da` | false | feat(membership): refuse episode membership outside the episode | +| #145 | `7974d75eec78ab877bd4351f8a82f5ed8f8a4268` | false | feat(method): refuse default stopword deletion of report language | +| #144 | `402aba4db4c26eda551a0ccf644c278e778030a4` | true | feat(psychometric): recover multilevel event-time structure with Rubin T and strong means | +| #143 | `fc9dec90b191ff9282dc1536637aae25d061f47d` | false | feat(relation): refuse a template copy as the source identity | +| #142 | `7ca6035c5d8b7c9a7761a0c5f26d1de4215c334b` | true | feat(evidence): refuse untrusted payloads as estimator authority | +| #141 | `a562adde8375426ac75e1681d85b90d280d5b4ee` | false | feat(privacy): refuse untrusted intake without a grant | +| #140 | `b321a315367016d2c844ab3056c7f7dc03f8fde8` | false | feat(estimator): refuse a checkpoint as the CPU f64 estimator | +| #139 | `7108baa11d724265c2cd6422371642f3424ad205` | false | feat(relation): refuse a summary as the source identity | +| #138 | `59239066a132adeeb3ddfc7290f52b1283cfb47c` | false | feat(relation): refuse reverse input-process-outcome event time | +| #137 | `87be4ad656fb516887aabef6a79c2f2beffa2524` | false | feat(relation): refuse retrospective reporting as a transition | +| #136 | `7825c778f39bb8d1ab9f6fe18c227559f8e78fee` | true | feat(relation): refuse translation edges as state transitions | +| #135 | `e83196faf6f225787579bd136cfbd4b3ed016e26` | false | feat(evidence): refuse untrusted payloads without identity and bounds | +| #134 | `7f4a5df9fd18be203c995f59f1e734f69eba56f9` | true | feat(psychometric): refuse unidentified association as causal language | +| #133 | `5f910623ada55f78cc85b5b9563dd160e8476a67` | false | feat(relation): refuse inferred status as observed evidence | +| #132 | `fe73209ea3407f0c8cd62fbf10ecea844ac15e50` | true | feat(relation): refuse unobserved pairs as no-relationship | +| #131 | `e65620b9ba7128804c3fd92807873cb371a6967c` | false | feat(membership): refuse collapsing targets into entity or project | +| #130 | `e61e331a6880078ce79140cae4e783bce3f78197` | false | feat(relation): refuse support edges as state transitions | +| #129 | `8981696f58892a1ace9baeb6224ac55b436b8110` | true | feat(membership): refuse customer-competitor overlap | +| #128 | `4bcc260868111f21cd6bc5e2af9f4f9122c0cf97` | false | feat(temporal): refuse other clocks as system time | +| #127 | `080d2e02e1b68d1bbd8c1882b8d49d9266f843f6` | false | feat(temporal): refuse other clocks as event time | +| #126 | `fb0fc4e9d594a7feaf88cdc925e0fe78c81a0099` | false | feat(temporal): refuse other clocks as assertion time | +| #125 | `fbba5d62a97e7a1a8bb571aa80c55b6ef43e5a11` | false | feat(temporal): refuse event, system, and available time as cutoff | +| #124 | `77089cd335d7e7e6969cdfccb74dc2f280695c0a` | false | feat(temporal): refuse event and system time as availability | +| #123 | `2e918a1c66cdf30acdd22eacd8d4ccdd5ae5fb9f` | false | feat(temporal): refuse document rows that omit assertion or document time | +| #122 | `b032c855177fee5a470e73280b60a2685f2063fb` | false | feat(temporal): refuse later revisions with earlier system time | +| #121 | `ead49668d3f2978971d1a144b6dd22225aa0d08a` | false | feat(privacy): seal identity mappings with purpose-bound HMAC | +| #120 | `f2bc2843b6389243e7fc0dbd562c352dd0bd9046` | false | feat(relation): refuse citation edges as state transitions | +| #119 | `2ea08a87be3c87d7d8c400addcdf0fd3e8e830d0` | false | feat(psychometric): recover ESEM loadings and refuse reverse DSEM lags | +| #118 | `97c6363a37aa579abaf3a5622e40d0a2275c7797` | false | feat(event): refuse subevents that escape the parent interval | +| #117 | `293067ea08b5cce0a4484c73282fed4d43af6991` | false | feat(membership): recover nested ICC and refuse cross-classified collapse | +| #116 | `5f9d7bf73552180d73a30ddd889d9c80865c817f` | false | docs(adr): wire verified method papers into temporal and psychometric ADRs | +| #115 | `2106170a0d7984291e78c68fd68125f217746f3f` | false | fix(quality): refuse inverted coverage-authority PR sentences | +| #114 | `f46a14bb5d04651e47a32ff1e99e431babe179c3` | false | feat(privacy): record provider field codes without source text | +| #113 | `679eb71f634540475385e11bc452aa4d1cddfa27` | false | feat(persistence): fail-closed entity and project target SQL | +| #110 | `c63e1cfce2e3fcddc46e945a54a9af71e4c9d7ab` | false | feat(api): export corpus-split leakage-audit manifests | +| #107 | `07bb21f74f3259168f5e21a0c1bdd25a812fd661` | false | feat(api): serve naruon POSTs on loopback with a live deadline | +| #106 | `d01892e1783a3b416fbb79966821b4ea804ef2b5` | false | fix(privacy): inspect audit_event inserts through try_record | +| #100 | `3e928bc0f209c74b941fa99b742d92814f610362` | false | test(tls): recover bind decisions from the live policy | +| #99 | `5dd50ff87bb2a7bd2dd7c94ec5d8f73dfac221bf` | false | feat(persistence): persist exact text_segment byte spans without 0007 | +| #95 | `3c42b3b09e9a0501d7c7a1a42a322e58cba39165` | true | feat(privacy): refuse blanket-masked scientific field grants | +| #92 | `192e1eab459ea1c7e155d9fafe60d1b5912025f2` | true | feat(orchestrator): serve interpretation POSTs on a loopback HTTP listener | +| #91 | `53a5a31f893e24146b4881c7e717021649fbb330` | false | feat(privacy): inherit source sensitivity onto derived artifacts | +| #86 | `47f6216aec217f15a6274d889bc507e59821096f` | true | feat(privacy): replay privileged-access decisions without source identity | +| #85 | `af3060afdf3a7df2231dd04bfdd59253c83a0637` | false | feat(event): score CHRONOS occurrence forecasts with a Brier rule | +| #84 | `e0ef1f869c46aa20969ce083f9ca31d622c31bb4` | true | feat(invariance): replay shared-meaning gate on current main | +| #83 | `18200b674cb29d84ab66853f50e1b5dc38096279` | true | docs(evidence): define language-agnostic semantic spans | +| #82 | `774a01bc63600c0c4703114bb01467fd65e57077` | true | feat(privacy): export identity maps only under re-identification purpose | +| #81 | `a7769d37ad1f950547f00e05ce2c03e5a2843b43` | true | feat(privacy): bind tenant roles to system-time lifetimes | +| #80 | `9539417f223bc6067f21e701986a49b7d3a37aba` | true | feat(temporal): space longitudinal lags on event time | +| #79 | `166e37c2cb540a575c690c813a21123a13d86376` | true | feat(privacy): bind authorization grants to one processing purpose | +| #78 | `b2662325441354545b34c907fc346ad06f8729d5` | false | feat(longitudinal): keep unit means out of within-unit change | +| #76 | `ccffcab50ff2f1d8c0e6ee80269d0f7ee0075368` | true | feat(event): score TDT topic detections without promoting clusters | +| #75 | `90cc8b6d4848e4c7718dd4bea74c1aaaab6f3685` | true | feat(method): model template sources without inferential weights | +| #74 | `0ce7e6a923282d3533cf3b8c0592d5df244049f8` | true | feat(temporal): keep predicted Allen assertions hypothetical | +| #73 | `054f190af0b39790a28ddaa37a96bf9a386dceeb` | false | feat(topic): keep one identity across dormancy and reactivation | +| #72 | `ce5c5a706b2b18a36404c30080a7c477258c2fb8` | false | feat(event): score TDT story segments with WindowDiff and Pk | +| #71 | `90b531e00f32a474bea3e980c02adaac4dfd673a` | false | feat(network): refuse raw simplex Euclidean cluster geometry | +| #70 | `dae7e55dc7bb2135825437a9df9c7aafc957ff42` | false | feat(event): score CHRONOS schema slots with precision and recall | +| #69 | `e780e1dc905424aa9d843b94d4996a560f2b9970` | false | feat(interpretation): keep LLM claims hypothetical and evidence-cited | +| #68 | `85c09ec81c66f245f161707d8c50e6aa6939ab7f` | false | feat(event): score TDT tracks with pair precision and switch rate | +| #67 | `d73517791dc3831545d41baff8f2a955cf5106ab` | false | feat(model): statistical Pareto K gates refuse LLM numerical authority | +| #66 | `633d41c47164e24366c5f8956d92cdd1173d50ba` | false | feat(event): score TDT mention links with precision and recall | +| #65 | `928f90500862c983ea17f9fddc7e1f80eb84f0a4` | false | feat(event): score first-story detections with FAR and miss rates | +| #64 | `22a5955a0ba23a65ee597ff5f630eadb389e7446` | false | feat(event): score mention confidence with a known-truth Brier rule | +| #63 | `4b64edc92b54cee28c979cddb9a6114ae87b3e2b` | false | feat(corpus): refuse TF-IDF and BM25 as inferential weights | +| #62 | `1951ab43c90deda0a23117006fc2bf8898328c98` | false | feat(simulation): exclude delayed documents before they are available | +| #61 | `8ebbc04eac07231413a089d7fc6b64b36ed6a61b` | false | feat(temporal): refuse uncertain availability past knowledge cutoff | +| #60 | `da47ee32468838ca7d325bb8feb82c8ee471d16a` | false | feat(relation): refuse association and precedence as causation | +| #59 | `43bf6cf0d0a15e105fcfe6309657403d0b9cf76f` | false | feat(corpus): treat NFC/NFD bodies as split leakage | +| #58 | `ebd4ebd080227c1faed72b04a24baf64b03b62be` | false | feat(evidence): keep embedded image URIs as positional non-lexical units | +| #57 | `14014b73d8c6015ff99b94f51c9a19f2b078811c` | false | feat(validation): exact-head claim promotion gates | +| #55 | `345f26a4eadda8aa89e91468918ea1b0455400f3` | false | feat(api): bind org .github workflows as CI/review/security only | +| #53 | `c07e512e3e1e0b85f8d2390345e1151aae3a1889` | false | feat(concept): language-profile gates with shared-space RMSE | +| #52 | `a134ea29847500a700ece1813461579454f30bc0` | false | feat(api): orchestrator interchange refuses table access and repo tokens | +| #51 | `240979b5ee5601a4c6338ea9499baccd8c757bcf` | false | feat(compute): VRAM budget types with CPU f64 fallback | +| #50 | `a189b97e536648b856cb38ea2c95270196ce3b52` | false | feat(event): refuse TDT/CHRONOS outputs as state transitions | +| #49 | `b713010705cb09c54d19cdbdd5c7ac89d5f854aa` | false | feat(psychometric): posterior ESEM input gates with true-parameter RMSE | +| #48 | `45224e55792165fd2d752d9a3bd62b016ec7c970` | false | feat(topic): logistic-normal ALR coordinates with true-parameter RMSE | + +The exact-head sweep at this snapshot found no unresolved review threads. It +also found the current Strix failure on #146 and #148: both reports contained +`Vulnerabilities 0` and failed only because the local Caido guest bootstrap +could not connect to `127.0.0.1:48080`; this is tracked for central workflow +repair in [ContextualWisdomLab/.github#1181](https://github.com/ContextualWisdomLab/.github/pull/1181). +PRs #164, #165, and #177 had queued required Checks at this snapshot. These +observations are evidence, not merge authorization. ## Authority and derivation @@ -97,10 +209,11 @@ visual workspace, or a supported multi-tenant release. | GAP-009 | Topic association and cluster outputs lack posterior-valid estimation, uncertainty, edge stability, and consensus communities. | `accepted-target` | product vertical | `7c29e7c` (network primitives only) | [#172](https://github.com/ContextualWisdomLab/TEPP/issues/172) / [PR #71](https://github.com/ContextualWisdomLab/TEPP/pull/71) | `90b531e` | Valid log-ratio coordinates, interval/stability-bearing edges, repeated Leiden consensus, known-truth network/cluster recovery, and reproducible exports. | | GAP-010 | Buyers lack coordinated accessible visual analytics and exact-value export workflows. | `accepted-target` | product vertical | `7c29e7c` (no visual workspace) | [#173](https://github.com/ContextualWisdomLab/TEPP/issues/173) | `—` (Figma work not started) | Real Figma File ID in ADR, Storybook/design tokens, ten PRD views, exact-value tables, accessible interaction/print/PDF states, provenance, and source-consistent exports. | | GAP-011 | TEPP is not yet an operable multi-tenant service or supported release. | `accepted-target` | product vertical | `7c29e7c` (library contracts only) | [#174](https://github.com/ContextualWisdomLab/TEPP/issues/174) | `—` (issue program; no current implementation PR) | Durable queue/storage, OIDC/RLS/purpose controls, OpenTelemetry/SLOs, load/recovery, migrations, signed release/SBOM/provenance, assurance evidence, and support policy. | -| GAP-012 | The 92-PR queue obscures authority, repeatedly stales exact-head evidence, and fragments product boundaries. | `partial` | release blocker | `7c29e7c` (protected-main truth) | [#175](https://github.com/ContextualWisdomLab/TEPP/issues/175) | `—` (live queue program) | Every PR classified; unique landing vehicles; compatible slices folded; superseded work closed with provenance; scheduler prioritizes consolidation; queue reaches zero before GA. | +| GAP-012 | The 93-PR queue obscures authority, repeatedly stales exact-head evidence, and fragments product boundaries. | `partial` | release blocker | `7c29e7c` (protected-main truth) | [#175](https://github.com/ContextualWisdomLab/TEPP/issues/175) | `—` (live queue program) | Every PR classified; unique landing vehicles; compatible slices folded; superseded work closed with provenance; scheduler prioritizes consolidation; queue reaches zero before GA. | | GAP-013 | Evidence-grounded LLM interpretation is routed but not executed and validated as a production interpreter/verifier port. | `partial` | active integration | `7c29e7c` (routing and refusal contracts only) | [#176](https://github.com/ContextualWisdomLab/TEPP/issues/176), [PR #69](https://github.com/ContextualWisdomLab/TEPP/pull/69), [PR #165](https://github.com/ContextualWisdomLab/TEPP/pull/165) | `e780e1d` / `5a98c8a` | Contextual-orchestrator execution, evidence citations, verifier refusals, comparable-budget ablations, provider eligibility/fallback, abstention, live/offline contract tests, and no numerical-authority escalation. | | GAP-014 | README/TRD and some PR descriptions lag protected-main and live queue reality. | `partial` | documentation drift | `7c29e7c` (documentation is not fully synchronized) | [#175](https://github.com/ContextualWisdomLab/TEPP/issues/175) | `—` (queue-consolidation work) | Reconcile README, TRD, traceability, ADR maturity, CHANGELOG, preferred-merge declarations, and exact protected-main evidence. | -| GAP-015 | There was no canonical live product/buyer-gap register tied to documentation validation. | `active-PR` | landing vehicle | `7c29e7c` (no live gap register) | [PR #164](https://github.com/ContextualWisdomLab/TEPP/pull/164) | `78e5852` | Merge this document and its validator/map integration after exact-head checks and independent review. | +| GAP-015 | There was no canonical live product/buyer-gap register tied to documentation validation. | `active-PR` | landing vehicle | `7c29e7c` (no live gap register) | [PR #164](https://github.com/ContextualWisdomLab/TEPP/pull/164) | `5b70722` | Merge this document and its validator/map integration after exact-head checks and independent review. | +| GAP-016 | Hourly PR maintenance used an older central scheduler revision whose per-repository sweep budgets could amplify the queued review workload. | `active-PR` | operability hardening | `7c29e7c` (caller pin before central budget hardening) | [PR #177](https://github.com/ContextualWisdomLab/TEPP/pull/177) | `8a5dee5` | The change pins central revision `8319ae5` immutably; closure still requires exact-head hosted Checks, resolved threads, and independent review. | ## Product-completion issue register @@ -128,6 +241,7 @@ because its head can change after this file is committed. | PR | Current delivery role | Required next action | |---:|---|---| | [#164](https://github.com/ContextualWisdomLab/TEPP/pull/164) | This product/technical gap baseline | Re-run exact-head documentation/repository checks and obtain independent review. | +| [#177](https://github.com/ContextualWisdomLab/TEPP/pull/177) | Central scheduler budget-hardening pin | Re-run exact-head Checks and obtain independent review before relying on the hourly caller. | | [#165](https://github.com/ContextualWisdomLab/TEPP/pull/165) | Hourly agent routing through contextual-orchestrator | Ensure queue-consolidation policy from #175 prevents unrelated micro-PR growth. | | [#157](https://github.com/ContextualWisdomLab/TEPP/pull/157) | Terminal result contract for #156 | Complete exact-head review/check gates; keep #156 open until protected-main verification. | | [#107](https://github.com/ContextualWisdomLab/TEPP/pull/107) | Loopback analysis-run service | Review/merge before dependent consumer work. | From 77000604174c7547b0553e765b008f4f720bcd9b Mon Sep 17 00:00:00 2001 From: Seongho Bae Date: Fri, 21 Aug 2026 07:53:54 +0900 Subject: [PATCH 23/52] docs: record hot partition readiness gap --- docs/product-technical-gap-baseline.md | 15 +++++++++------ 1 file changed, 9 insertions(+), 6 deletions(-) diff --git a/docs/product-technical-gap-baseline.md b/docs/product-technical-gap-baseline.md index d2adef13..2deb6646 100644 --- a/docs/product-technical-gap-baseline.md +++ b/docs/product-technical-gap-baseline.md @@ -2,7 +2,7 @@ **Status:** Live delivery baseline **Product:** Temporal Event Psychometrics Platform (TEPP) -**Snapshot:** 2026-08-21 07:15 KST +**Snapshot:** 2026-08-21 07:52 KST **Protected-main evidence:** `7c29e7c971d7940e1fb3def1ed3aae2d1bc8ad4a` **Workspace version on protected main:** `0.1.0` @@ -48,7 +48,7 @@ Checks, and branch rules immediately before every mutation. |---:|---|:---:|---| | #177 | `8a5dee50d4b0fa2396893ad26fa775f2629e2fcd` | false | fix(workflow): pin scheduler budget hardening | | #165 | `3a0fbfc24a2294e43ad04ee72064362e4385dee9` | false | feat: route hourly product agents through contextual orchestrator | -| #164 | `5b707221ecc4fda68db8c571d57ab2ad181493ab` | false | docs: define TEPP product completion and technical gap baseline | +| #164 | `8817be07dc34c1fcc285b3501d377fc28b81220f` | false | docs: define TEPP product completion and technical gap baseline | | #159 | `855c6c7153c2f66a1c14e842ad700f571592dd35` | false | feat(api): project LineageWeave evidence into cutoff-safe histories | | #158 | `6d28d23c432288c4dbecbd74a25f093ed9d9ef61` | false | feat(api): expose temporal evidence context for LineageWeave Ask | | #157 | `0cb9ff6b32afb56849214bbe464ea39004c1e106` | false | feat(api): publish completed analysis-run result contract | @@ -201,6 +201,7 @@ visual workspace, or a supported multi-tenant release. | GAP-002 | LineageWeave and other modular consumers cannot yet rely on the complete protected-main HTTP evidence/result boundary. | `active-PR` | stacked dependency | `7c29e7c` (versioned API contracts) | [#107](https://github.com/ContextualWisdomLab/TEPP/pull/107) → [#155](https://github.com/ContextualWisdomLab/TEPP/pull/155) → [#158](https://github.com/ContextualWisdomLab/TEPP/pull/158) / [#159](https://github.com/ContextualWisdomLab/TEPP/pull/159) | `07bb21f` → `0e29108` → `6d28d23` / `855c6c7` | Merge in dependency order with live loopback, framing, credential, idempotency, cutoff, tenant, and result-evidence tests. | | GAP-003A | Immutable evidence cannot yet be submitted to a durable validation run that produces buyer-usable scientific acceptance evidence. | `accepted-target` | product-completion | `7c29e7c` (validation metrics are library-level only) | [#166](https://github.com/ContextualWisdomLab/TEPP/issues/166) | `—` (issue program; no current implementation PR) | Compose/CLI/API execution must bind immutable evidence, cutoffs, model configuration, validation metrics, and reproducibility manifests to one idempotent run. | | GAP-003B | Scientific result artifacts cannot yet be persisted, restarted, and recovered as one supported buyer workflow. | `accepted-target` | product-completion | `7c29e7c` (persistence contracts lack E2E recovery) | [#166](https://github.com/ContextualWisdomLab/TEPP/issues/166) | `—` (issue program; no current implementation PR) | Durable storage, migration/rollback, restart/recovery, artifact digest verification, and terminal retrieval must pass against a real Compose deployment. | +| GAP-003C | The persistence slice classifies concurrent-write SQLSTATEs, but has no measured hot-partition detection, routing, or mitigation for tenant/result workloads. | `accepted-target` | product-completion | `7c29e7c` (conflict classification only; no measured partition control) | [#166](https://github.com/ContextualWisdomLab/TEPP/issues/166) | `—` (issue program; no current implementation PR) | A real Compose/PostgreSQL workload identifies hot keys and partition skew, applies bounded tenant/time or result routing without weakening 3NF or temporal authority, and proves conflict rate, latency, recovery, and migration/rollback behavior under load. | | GAP-004 | The central shared-latent temporal/relational topic estimator is absent. | `accepted-target` | product vertical | `7c29e7c` (no production estimator) | [#167](https://github.com/ContextualWisdomLab/TEPP/issues/167) / [PR #48](https://github.com/ContextualWisdomLab/TEPP/pull/48) | `45224e5` | Rust CPU `f64` fitting, sparse bounded parallelism, posterior artifacts, convergence, true-parameter RMSE/bias/coverage, and real candidate-K fitting. | | GAP-005 | Real multilingual documents are not yet transformed into validated exact-span semantic units and versioned shared concepts. | `accepted-target` | product vertical | `7c29e7c` (evidence spans exist without full semantic pipeline) | [#168](https://github.com/ContextualWisdomLab/TEPP/issues/168) / [PR #53](https://github.com/ContextualWisdomLab/TEPP/pull/53) | `c07e512` | Unicode/layout/language-tailored processing, unknown-concept review, multilingual calibration/invariance, image-position evidence, and prompt-injection tests. | | GAP-006 | Posterior topic measurements cannot yet be fitted through a complete cross-classified longitudinal ESEM/DSEM engine. | `accepted-target` | product vertical | `7c29e7c` (temporal and membership primitives only) | [#169](https://github.com/ContextualWisdomLab/TEPP/issues/169) / [PR #119](https://github.com/ContextualWisdomLab/TEPP/pull/119) | `2ea08a8` | Plausible-value/joint uncertainty, invariance, irregular event time, within/between separation, multiple membership, true-parameter recovery, and causal-claim refusal. | @@ -212,7 +213,7 @@ visual workspace, or a supported multi-tenant release. | GAP-012 | The 93-PR queue obscures authority, repeatedly stales exact-head evidence, and fragments product boundaries. | `partial` | release blocker | `7c29e7c` (protected-main truth) | [#175](https://github.com/ContextualWisdomLab/TEPP/issues/175) | `—` (live queue program) | Every PR classified; unique landing vehicles; compatible slices folded; superseded work closed with provenance; scheduler prioritizes consolidation; queue reaches zero before GA. | | GAP-013 | Evidence-grounded LLM interpretation is routed but not executed and validated as a production interpreter/verifier port. | `partial` | active integration | `7c29e7c` (routing and refusal contracts only) | [#176](https://github.com/ContextualWisdomLab/TEPP/issues/176), [PR #69](https://github.com/ContextualWisdomLab/TEPP/pull/69), [PR #165](https://github.com/ContextualWisdomLab/TEPP/pull/165) | `e780e1d` / `5a98c8a` | Contextual-orchestrator execution, evidence citations, verifier refusals, comparable-budget ablations, provider eligibility/fallback, abstention, live/offline contract tests, and no numerical-authority escalation. | | GAP-014 | README/TRD and some PR descriptions lag protected-main and live queue reality. | `partial` | documentation drift | `7c29e7c` (documentation is not fully synchronized) | [#175](https://github.com/ContextualWisdomLab/TEPP/issues/175) | `—` (queue-consolidation work) | Reconcile README, TRD, traceability, ADR maturity, CHANGELOG, preferred-merge declarations, and exact protected-main evidence. | -| GAP-015 | There was no canonical live product/buyer-gap register tied to documentation validation. | `active-PR` | landing vehicle | `7c29e7c` (no live gap register) | [PR #164](https://github.com/ContextualWisdomLab/TEPP/pull/164) | `5b70722` | Merge this document and its validator/map integration after exact-head checks and independent review. | +| GAP-015 | There was no canonical live product/buyer-gap register tied to documentation validation. | `active-PR` | landing vehicle | `7c29e7c` (no live gap register) | [PR #164](https://github.com/ContextualWisdomLab/TEPP/pull/164) | `8817be0` | Merge this document and its validator/map integration after exact-head checks and independent review. | | GAP-016 | Hourly PR maintenance used an older central scheduler revision whose per-repository sweep budgets could amplify the queued review workload. | `active-PR` | operability hardening | `7c29e7c` (caller pin before central budget hardening) | [PR #177](https://github.com/ContextualWisdomLab/TEPP/pull/177) | `8a5dee5` | The change pins central revision `8319ae5` immutably; closure still requires exact-head hosted Checks, resolved threads, and independent review. | ## Product-completion issue register @@ -220,7 +221,7 @@ visual workspace, or a supported multi-tenant release. | Issue | Product vertical | Depends on / constrains | |---:|---|---| | [#156](https://github.com/ContextualWisdomLab/TEPP/issues/156) | Completed analysis-run result contract | Must land before consumers can call accepted work a measurement result. | -| [#166](https://github.com/ContextualWisdomLab/TEPP/issues/166) | Executable end-to-end analysis run | Integrates all scientific/service verticals; cannot substitute placeholders. | +| [#166](https://github.com/ContextualWisdomLab/TEPP/issues/166) | Executable end-to-end analysis run, recovery, and hot-partition readiness | Integrates all scientific/service verticals; cannot substitute placeholders or hide write skew behind an unmeasured queue. | | [#167](https://github.com/ContextualWisdomLab/TEPP/issues/167) | Shared-latent temporal topic CPU estimator | Numerical foundation for K selection, networks, psychometrics, interpretation, and product E2E. | | [#168](https://github.com/ContextualWisdomLab/TEPP/issues/168) | Multilingual semantic units and concept dictionary | Supplies validated span-grounded estimator evidence. | | [#169](https://github.com/ContextualWisdomLab/TEPP/issues/169) | Multilevel longitudinal ESEM/DSEM | Consumes posterior topic coordinates and membership/time contracts. | @@ -324,8 +325,10 @@ independent diligence evidence. - Topic proportions remain compositional; valid latent/log-ratio coordinates feed ESEM and network analysis. - Database objects use descriptive two-or-more-word `snake_case`, third-normal - form where applicable, explicit tenant/temporal/provenance authority, and - measured hot-partition mitigation. + form where applicable, explicit tenant/temporal/provenance authority. Hot + partition readiness is a separate acceptance gate: measure skew first, then + mitigate it without denormalizing authority tables or changing temporal + semantics. - Documents, web/search results, connector data, and LLM output are untrusted. - Purpose-bound access and protected identity mappings preserve PII utility without broadcasting or blanket masking. From 8891fda29b7bd5415f8b1d5a2d40935d9cbb67d1 Mon Sep 17 00:00:00 2001 From: Seongho Bae Date: Fri, 21 Aug 2026 08:49:28 +0900 Subject: [PATCH 24/52] docs: refresh live product gap snapshot --- docs/product-technical-gap-baseline.md | 19 +++++++++++-------- 1 file changed, 11 insertions(+), 8 deletions(-) diff --git a/docs/product-technical-gap-baseline.md b/docs/product-technical-gap-baseline.md index 2deb6646..10a6d5a2 100644 --- a/docs/product-technical-gap-baseline.md +++ b/docs/product-technical-gap-baseline.md @@ -2,7 +2,7 @@ **Status:** Live delivery baseline **Product:** Temporal Event Psychometrics Platform (TEPP) -**Snapshot:** 2026-08-21 07:52 KST +**Snapshot:** 2026-08-21 08:48 KST **Protected-main evidence:** `7c29e7c971d7940e1fb3def1ed3aae2d1bc8ad4a` **Workspace version on protected main:** `0.1.0` @@ -25,9 +25,9 @@ GitHub state before any customer, release, certification, or valuation claim. |---|---:|---| | Protected-main SHA | `7c29e7c971d7940e1fb3def1ed3aae2d1bc8ad4a` | All as-built claims are bounded to this commit. | | Workspace members | 10 Rust crates | The foundation is modular, but the approved target contains additional semantic, estimator, compute, psychometric, event-intelligence, network, interpretation, artifact, and visual boundaries. | -| Open pull requests | **93** | The queue is itself a release blocker and requires consolidation. | +| Open pull requests | **94** | The queue is itself a release blocker and requires consolidation. | | Draft pull requests | **19** | Most queued work is not independently review-ready. | -| Non-draft pull requests | **74** | A non-draft state is not a qualifying review or required-check result. | +| Non-draft pull requests | **75** | A non-draft state is not a qualifying review or required-check result. | | Open product issues | **12** | Issue #156 plus the product-completion program #166–#176. | | Current package version | `0.1.0` | No supported product release is established by the repository version alone. | @@ -35,7 +35,7 @@ The pull-request counts come from the live GitHub search at this snapshot. The full exact-head classification is owned by [issue #175](https://github.com/ContextualWisdomLab/TEPP/issues/175); this file keeps the buyer-level summary while the exact-head register below records the -current 93-row volatile queue. +current 94-row volatile queue. ## Current open pull-request evidence @@ -46,9 +46,10 @@ Checks, and branch rules immediately before every mutation. | PR | Exact current head | Draft | Title | |---:|---|:---:|---| +| #178 | `ac946df67fbe9dd9ba091a6ac4175808e45a6d35` | false | feat(engine): execute cutoff-safe analysis runs | | #177 | `8a5dee50d4b0fa2396893ad26fa775f2629e2fcd` | false | fix(workflow): pin scheduler budget hardening | | #165 | `3a0fbfc24a2294e43ad04ee72064362e4385dee9` | false | feat: route hourly product agents through contextual orchestrator | -| #164 | `8817be07dc34c1fcc285b3501d377fc28b81220f` | false | docs: define TEPP product completion and technical gap baseline | +| #164 | `77000604174c7547b0553e765b008f4f720bcd9b` | false | docs: define TEPP product completion and technical gap baseline | | #159 | `855c6c7153c2f66a1c14e842ad700f571592dd35` | false | feat(api): project LineageWeave evidence into cutoff-safe histories | | #158 | `6d28d23c432288c4dbecbd74a25f093ed9d9ef61` | false | feat(api): expose temporal evidence context for LineageWeave Ask | | #157 | `0cb9ff6b32afb56849214bbe464ea39004c1e106` | false | feat(api): publish completed analysis-run result contract | @@ -63,7 +64,7 @@ Checks, and branch rules immediately before every mutation. | #147 | `1644d25792ced70246037060370b44d500070238` | true | feat(method): refuse section boilerplate as unique content | | #146 | `ecaa8bcbc8a5007f56e14c66806f3deccea525da` | false | feat(membership): refuse episode membership outside the episode | | #145 | `7974d75eec78ab877bd4351f8a82f5ed8f8a4268` | false | feat(method): refuse default stopword deletion of report language | -| #144 | `402aba4db4c26eda551a0ccf644c278e778030a4` | true | feat(psychometric): recover multilevel event-time structure with Rubin T and strong means | +| #144 | `e0e568da8c44acc1d30a1a2bad6d76810ee9d6e3` | true | feat(psychometric): recover multilevel event-time structure with Rubin T and strong means | | #143 | `fc9dec90b191ff9282dc1536637aae25d061f47d` | false | feat(relation): refuse a template copy as the source identity | | #142 | `7ca6035c5d8b7c9a7761a0c5f26d1de4215c334b` | true | feat(evidence): refuse untrusted payloads as estimator authority | | #141 | `a562adde8375426ac75e1681d85b90d280d5b4ee` | false | feat(privacy): refuse untrusted intake without a grant | @@ -210,11 +211,12 @@ visual workspace, or a supported multi-tenant release. | GAP-009 | Topic association and cluster outputs lack posterior-valid estimation, uncertainty, edge stability, and consensus communities. | `accepted-target` | product vertical | `7c29e7c` (network primitives only) | [#172](https://github.com/ContextualWisdomLab/TEPP/issues/172) / [PR #71](https://github.com/ContextualWisdomLab/TEPP/pull/71) | `90b531e` | Valid log-ratio coordinates, interval/stability-bearing edges, repeated Leiden consensus, known-truth network/cluster recovery, and reproducible exports. | | GAP-010 | Buyers lack coordinated accessible visual analytics and exact-value export workflows. | `accepted-target` | product vertical | `7c29e7c` (no visual workspace) | [#173](https://github.com/ContextualWisdomLab/TEPP/issues/173) | `—` (Figma work not started) | Real Figma File ID in ADR, Storybook/design tokens, ten PRD views, exact-value tables, accessible interaction/print/PDF states, provenance, and source-consistent exports. | | GAP-011 | TEPP is not yet an operable multi-tenant service or supported release. | `accepted-target` | product vertical | `7c29e7c` (library contracts only) | [#174](https://github.com/ContextualWisdomLab/TEPP/issues/174) | `—` (issue program; no current implementation PR) | Durable queue/storage, OIDC/RLS/purpose controls, OpenTelemetry/SLOs, load/recovery, migrations, signed release/SBOM/provenance, assurance evidence, and support policy. | -| GAP-012 | The 93-PR queue obscures authority, repeatedly stales exact-head evidence, and fragments product boundaries. | `partial` | release blocker | `7c29e7c` (protected-main truth) | [#175](https://github.com/ContextualWisdomLab/TEPP/issues/175) | `—` (live queue program) | Every PR classified; unique landing vehicles; compatible slices folded; superseded work closed with provenance; scheduler prioritizes consolidation; queue reaches zero before GA. | +| GAP-012 | The 94-PR queue obscures authority, repeatedly stales exact-head evidence, and fragments product boundaries. | `partial` | release blocker | `7c29e7c` (protected-main truth) | [#175](https://github.com/ContextualWisdomLab/TEPP/issues/175) | `—` (live queue program) | Every PR classified; unique landing vehicles; compatible slices folded; superseded work closed with provenance; scheduler prioritizes consolidation; queue reaches zero before GA. | | GAP-013 | Evidence-grounded LLM interpretation is routed but not executed and validated as a production interpreter/verifier port. | `partial` | active integration | `7c29e7c` (routing and refusal contracts only) | [#176](https://github.com/ContextualWisdomLab/TEPP/issues/176), [PR #69](https://github.com/ContextualWisdomLab/TEPP/pull/69), [PR #165](https://github.com/ContextualWisdomLab/TEPP/pull/165) | `e780e1d` / `5a98c8a` | Contextual-orchestrator execution, evidence citations, verifier refusals, comparable-budget ablations, provider eligibility/fallback, abstention, live/offline contract tests, and no numerical-authority escalation. | | GAP-014 | README/TRD and some PR descriptions lag protected-main and live queue reality. | `partial` | documentation drift | `7c29e7c` (documentation is not fully synchronized) | [#175](https://github.com/ContextualWisdomLab/TEPP/issues/175) | `—` (queue-consolidation work) | Reconcile README, TRD, traceability, ADR maturity, CHANGELOG, preferred-merge declarations, and exact protected-main evidence. | -| GAP-015 | There was no canonical live product/buyer-gap register tied to documentation validation. | `active-PR` | landing vehicle | `7c29e7c` (no live gap register) | [PR #164](https://github.com/ContextualWisdomLab/TEPP/pull/164) | `8817be0` | Merge this document and its validator/map integration after exact-head checks and independent review. | +| GAP-015 | There was no canonical live product/buyer-gap register tied to documentation validation. | `active-PR` | landing vehicle | `7c29e7c` (no live gap register) | [PR #164](https://github.com/ContextualWisdomLab/TEPP/pull/164) | `7700060` | Merge this document and its validator/map integration after exact-head checks and independent review. | | GAP-016 | Hourly PR maintenance used an older central scheduler revision whose per-repository sweep budgets could amplify the queued review workload. | `active-PR` | operability hardening | `7c29e7c` (caller pin before central budget hardening) | [PR #177](https://github.com/ContextualWisdomLab/TEPP/pull/177) | `8a5dee5` | The change pins central revision `8319ae5` immutably; closure still requires exact-head hosted Checks, resolved threads, and independent review. | +| GAP-017 | Accepted analysis runs have a terminal DTO but lack a cutoff-safe executable artifact path. | `active-PR` | product vertical | `7c29e7c` (accepted receipt and terminal DTO only) | [#166](https://github.com/ContextualWisdomLab/TEPP/issues/166) / [PR #178](https://github.com/ContextualWisdomLab/TEPP/pull/178) stacked on [#157](https://github.com/ContextualWisdomLab/TEPP/pull/157) | `ac946df` | Exact availability cutoff, snapshot binding, multiple-membership preservation, digest integrity, redacted no-eligible failure, and realistic end-to-end tests. | ## Product-completion issue register @@ -245,6 +247,7 @@ because its head can change after this file is committed. | [#177](https://github.com/ContextualWisdomLab/TEPP/pull/177) | Central scheduler budget-hardening pin | Re-run exact-head Checks and obtain independent review before relying on the hourly caller. | | [#165](https://github.com/ContextualWisdomLab/TEPP/pull/165) | Hourly agent routing through contextual-orchestrator | Ensure queue-consolidation policy from #175 prevents unrelated micro-PR growth. | | [#157](https://github.com/ContextualWisdomLab/TEPP/pull/157) | Terminal result contract for #156 | Complete exact-head review/check gates; keep #156 open until protected-main verification. | +| [#178](https://github.com/ContextualWisdomLab/TEPP/pull/178) | Cutoff-safe analysis execution stacked on #157 | Complete exact-head review/check gates; merge only after the terminal-result parent and protected branch rules permit the stack. | | [#107](https://github.com/ContextualWisdomLab/TEPP/pull/107) | Loopback analysis-run service | Review/merge before dependent consumer work. | | [#155](https://github.com/ContextualWisdomLab/TEPP/pull/155) | Modular LineageWeave consumer parent | Preserve current stack parent and obtain independent review. | | [#158](https://github.com/ContextualWisdomLab/TEPP/pull/158) | Temporal evidence context | Revalidate after its parent lands. | From f6e00535fbc9accc9d421e4090fc5d6b36998c3a Mon Sep 17 00:00:00 2001 From: Seongho Bae Date: Fri, 21 Aug 2026 08:50:32 +0900 Subject: [PATCH 25/52] docs: route Strix gap evidence to canonical owner --- docs/product-technical-gap-baseline.md | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/docs/product-technical-gap-baseline.md b/docs/product-technical-gap-baseline.md index 10a6d5a2..b86323ad 100644 --- a/docs/product-technical-gap-baseline.md +++ b/docs/product-technical-gap-baseline.md @@ -144,8 +144,11 @@ Checks, and branch rules immediately before every mutation. The exact-head sweep at this snapshot found no unresolved review threads. It also found the current Strix failure on #146 and #148: both reports contained `Vulnerabilities 0` and failed only because the local Caido guest bootstrap -could not connect to `127.0.0.1:48080`; this is tracked for central workflow -repair in [ContextualWisdomLab/.github#1181](https://github.com/ContextualWisdomLab/.github/pull/1181). +could not connect to `127.0.0.1:48080`. The superseded leaf repair +`ContextualWisdomLab/.github#1181` is closed; the canonical owner repair is +[ContextualWisdomLab/.github#1153](https://github.com/ContextualWisdomLab/.github/pull/1153), +currently at exact head `a82b8012be5d57f99c1a2b029f08837d4d10d564` with the +diagnostic-disclosure fix locally verified and hosted Checks still settling. PRs #164, #165, and #177 had queued required Checks at this snapshot. These observations are evidence, not merge authorization. From 9fe7e29f3ea5f77bf685fca5307c43960afbec66 Mon Sep 17 00:00:00 2001 From: Seongho Bae Date: Fri, 21 Aug 2026 08:56:22 +0900 Subject: [PATCH 26/52] docs: link exact Strix failure records --- docs/product-technical-gap-baseline.md | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/docs/product-technical-gap-baseline.md b/docs/product-technical-gap-baseline.md index b86323ad..31b25c49 100644 --- a/docs/product-technical-gap-baseline.md +++ b/docs/product-technical-gap-baseline.md @@ -149,6 +149,10 @@ could not connect to `127.0.0.1:48080`. The superseded leaf repair [ContextualWisdomLab/.github#1153](https://github.com/ContextualWisdomLab/.github/pull/1153), currently at exact head `a82b8012be5d57f99c1a2b029f08837d4d10d564` with the diagnostic-disclosure fix locally verified and hosted Checks still settling. +The exact failed job records are [PR #146 Strix](https://github.com/ContextualWisdomLab/TEPP/actions/runs/32415603746/job/96575931760) +and [PR #148 Strix](https://github.com/ContextualWisdomLab/TEPP/actions/runs/32415173665/job/96574570528); +their logs are the source for the bounded infrastructure diagnosis, not a +source-test failure claim. PRs #164, #165, and #177 had queued required Checks at this snapshot. These observations are evidence, not merge authorization. From d57794bba0c0b520912475e2f24293f62c162e93 Mon Sep 17 00:00:00 2001 From: Seongho Bae Date: Fri, 21 Aug 2026 08:58:33 +0900 Subject: [PATCH 27/52] docs: bound Strix evidence to public records --- docs/product-technical-gap-baseline.md | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/docs/product-technical-gap-baseline.md b/docs/product-technical-gap-baseline.md index 31b25c49..c2baf459 100644 --- a/docs/product-technical-gap-baseline.md +++ b/docs/product-technical-gap-baseline.md @@ -142,17 +142,17 @@ Checks, and branch rules immediately before every mutation. | #48 | `45224e55792165fd2d752d9a3bd62b016ec7c970` | false | feat(topic): logistic-normal ALR coordinates with true-parameter RMSE | The exact-head sweep at this snapshot found no unresolved review threads. It -also found the current Strix failure on #146 and #148: both reports contained -`Vulnerabilities 0` and failed only because the local Caido guest bootstrap -could not connect to `127.0.0.1:48080`. The superseded leaf repair +also found the current Strix failure on #146 and #148. The superseded leaf repair `ContextualWisdomLab/.github#1181` is closed; the canonical owner repair is [ContextualWisdomLab/.github#1153](https://github.com/ContextualWisdomLab/.github/pull/1153), currently at exact head `a82b8012be5d57f99c1a2b029f08837d4d10d564` with the diagnostic-disclosure fix locally verified and hosted Checks still settling. The exact failed job records are [PR #146 Strix](https://github.com/ContextualWisdomLab/TEPP/actions/runs/32415603746/job/96575931760) and [PR #148 Strix](https://github.com/ContextualWisdomLab/TEPP/actions/runs/32415173665/job/96574570528); -their logs are the source for the bounded infrastructure diagnosis, not a -source-test failure claim. +they establish the failed Strix step and its exact PR heads. The detailed +failed-step logs are not publicly retrievable from these records, so this +snapshot does not promote a more specific vulnerability or infrastructure +diagnosis as canonical evidence. PRs #164, #165, and #177 had queued required Checks at this snapshot. These observations are evidence, not merge authorization. From 370287a95e0a3491c43b05bc7951c015b3745dc4 Mon Sep 17 00:00:00 2001 From: Seongho Bae Date: Fri, 21 Aug 2026 10:27:40 +0900 Subject: [PATCH 28/52] docs(gaps): refresh live PR snapshot --- docs/product-technical-gap-baseline.md | 88 +++++++++++--------------- 1 file changed, 37 insertions(+), 51 deletions(-) diff --git a/docs/product-technical-gap-baseline.md b/docs/product-technical-gap-baseline.md index c2baf459..bbd52751 100644 --- a/docs/product-technical-gap-baseline.md +++ b/docs/product-technical-gap-baseline.md @@ -2,8 +2,8 @@ **Status:** Live delivery baseline **Product:** Temporal Event Psychometrics Platform (TEPP) -**Snapshot:** 2026-08-21 08:48 KST -**Protected-main evidence:** `7c29e7c971d7940e1fb3def1ed3aae2d1bc8ad4a` +**Snapshot:** 2026-08-21 10:26 KST +**Protected-main evidence:** `c45be17a9dbce95ef81cee230e9d128abc7160ac` **Workspace version on protected main:** `0.1.0` ## Purpose @@ -23,11 +23,11 @@ GitHub state before any customer, release, certification, or valuation claim. | Signal | Snapshot evidence | Delivery implication | |---|---:|---| -| Protected-main SHA | `7c29e7c971d7940e1fb3def1ed3aae2d1bc8ad4a` | All as-built claims are bounded to this commit. | +| Protected-main SHA | `c45be17a9dbce95ef81cee230e9d128abc7160ac` | All as-built claims are bounded to this commit. | | Workspace members | 10 Rust crates | The foundation is modular, but the approved target contains additional semantic, estimator, compute, psychometric, event-intelligence, network, interpretation, artifact, and visual boundaries. | -| Open pull requests | **94** | The queue is itself a release blocker and requires consolidation. | +| Open pull requests | **93** | The queue is itself a release blocker and requires consolidation. | | Draft pull requests | **19** | Most queued work is not independently review-ready. | -| Non-draft pull requests | **75** | A non-draft state is not a qualifying review or required-check result. | +| Non-draft pull requests | **74** | A non-draft state is not a qualifying review or required-check result. | | Open product issues | **12** | Issue #156 plus the product-completion program #166–#176. | | Current package version | `0.1.0` | No supported product release is established by the repository version alone. | @@ -35,7 +35,7 @@ The pull-request counts come from the live GitHub search at this snapshot. The full exact-head classification is owned by [issue #175](https://github.com/ContextualWisdomLab/TEPP/issues/175); this file keeps the buyer-level summary while the exact-head register below records the -current 94-row volatile queue. +current 93-row volatile queue. ## Current open pull-request evidence @@ -46,14 +46,14 @@ Checks, and branch rules immediately before every mutation. | PR | Exact current head | Draft | Title | |---:|---|:---:|---| -| #178 | `ac946df67fbe9dd9ba091a6ac4175808e45a6d35` | false | feat(engine): execute cutoff-safe analysis runs | +| #178 | `a2382c84a1f7ccc66718343fe38e0fbfbb8aa0a7` | false | feat(engine): execute cutoff-safe analysis runs | | #177 | `8a5dee50d4b0fa2396893ad26fa775f2629e2fcd` | false | fix(workflow): pin scheduler budget hardening | -| #165 | `3a0fbfc24a2294e43ad04ee72064362e4385dee9` | false | feat: route hourly product agents through contextual orchestrator | -| #164 | `77000604174c7547b0553e765b008f4f720bcd9b` | false | docs: define TEPP product completion and technical gap baseline | +| #165 | `34083c3f5d6637cf1665a29dac45fbf67a74d5dd` | false | feat: route hourly product agents through contextual orchestrator | +| #164 | `35a0c271de6bc0d4a6b26d453cee8064494d4a5c` | false | docs: define TEPP product completion and technical gap baseline | | #159 | `855c6c7153c2f66a1c14e842ad700f571592dd35` | false | feat(api): project LineageWeave evidence into cutoff-safe histories | | #158 | `6d28d23c432288c4dbecbd74a25f093ed9d9ef61` | false | feat(api): expose temporal evidence context for LineageWeave Ask | -| #157 | `0cb9ff6b32afb56849214bbe464ea39004c1e106` | false | feat(api): publish completed analysis-run result contract | -| #155 | `0e2910825a042d7fdeb6497a20975b538493c65c` | false | feat(api): admit LineageWeave as a modular analysis-run consumer | +| #157 | `63a419e2b96cef3def7f26bfc0337fece88e83c2` | false | feat(api): publish completed analysis-run result contract | +| #155 | `ffbf50e1756096231867509a6df0511cb496fa05` | false | feat(api): admit LineageWeave as a modular analysis-run consumer | | #154 | `aaadb7f906ed48dfde3c2b71995ce266c592e7a0` | false | ci(rust): refresh branch coverage compiler baseline | | #153 | `4a1d4c852701b9518effdbefcc6a0a56afe46385` | false | feat(membership): refuse location as entity identity or language | | #152 | `a67d90381d62ccb2a094fca2f722e729761cbd53` | false | feat(method): refuse prompt boilerplate as unique content | @@ -63,14 +63,14 @@ Checks, and branch rules immediately before every mutation. | #148 | `020b4466c6ee548cd4fb6df038bdb708981859b0` | false | feat(method): refuse house-voice style as unique content | | #147 | `1644d25792ced70246037060370b44d500070238` | true | feat(method): refuse section boilerplate as unique content | | #146 | `ecaa8bcbc8a5007f56e14c66806f3deccea525da` | false | feat(membership): refuse episode membership outside the episode | -| #145 | `7974d75eec78ab877bd4351f8a82f5ed8f8a4268` | false | feat(method): refuse default stopword deletion of report language | +| #145 | `696d56c5816815e22181a03c57a822f974d41706` | false | feat(method): refuse default stopword deletion of report language | | #144 | `e0e568da8c44acc1d30a1a2bad6d76810ee9d6e3` | true | feat(psychometric): recover multilevel event-time structure with Rubin T and strong means | -| #143 | `fc9dec90b191ff9282dc1536637aae25d061f47d` | false | feat(relation): refuse a template copy as the source identity | +| #143 | `7d533c6198492f748303869f0795fac5c8764b50` | false | feat(relation): refuse a template copy as the source identity | | #142 | `7ca6035c5d8b7c9a7761a0c5f26d1de4215c334b` | true | feat(evidence): refuse untrusted payloads as estimator authority | | #141 | `a562adde8375426ac75e1681d85b90d280d5b4ee` | false | feat(privacy): refuse untrusted intake without a grant | | #140 | `b321a315367016d2c844ab3056c7f7dc03f8fde8` | false | feat(estimator): refuse a checkpoint as the CPU f64 estimator | -| #139 | `7108baa11d724265c2cd6422371642f3424ad205` | false | feat(relation): refuse a summary as the source identity | -| #138 | `59239066a132adeeb3ddfc7290f52b1283cfb47c` | false | feat(relation): refuse reverse input-process-outcome event time | +| #139 | `43ebbda0d35f9bf227c5764d53d429fff0f08c8c` | false | feat(relation): refuse a summary as the source identity | +| #138 | `f06879da364e3149aa2caf51158de60926d9846f` | false | feat(relation): refuse reverse input-process-outcome event time | | #137 | `87be4ad656fb516887aabef6a79c2f2beffa2524` | false | feat(relation): refuse retrospective reporting as a transition | | #136 | `7825c778f39bb8d1ab9f6fe18c227559f8e78fee` | true | feat(relation): refuse translation edges as state transitions | | #135 | `e83196faf6f225787579bd136cfbd4b3ed016e26` | false | feat(evidence): refuse untrusted payloads without identity and bounds | @@ -97,7 +97,6 @@ Checks, and branch rules immediately before every mutation. | #114 | `f46a14bb5d04651e47a32ff1e99e431babe179c3` | false | feat(privacy): record provider field codes without source text | | #113 | `679eb71f634540475385e11bc452aa4d1cddfa27` | false | feat(persistence): fail-closed entity and project target SQL | | #110 | `c63e1cfce2e3fcddc46e945a54a9af71e4c9d7ab` | false | feat(api): export corpus-split leakage-audit manifests | -| #107 | `07bb21f74f3259168f5e21a0c1bdd25a812fd661` | false | feat(api): serve naruon POSTs on loopback with a live deadline | | #106 | `d01892e1783a3b416fbb79966821b4ea804ef2b5` | false | fix(privacy): inspect audit_event inserts through try_record | | #100 | `3e928bc0f209c74b941fa99b742d92814f610362` | false | test(tls): recover bind decisions from the live policy | | #99 | `5dd50ff87bb2a7bd2dd7c94ec5d8f73dfac221bf` | false | feat(persistence): persist exact text_segment byte spans without 0007 | @@ -132,29 +131,16 @@ Checks, and branch rules immediately before every mutation. | #60 | `da47ee32468838ca7d325bb8feb82c8ee471d16a` | false | feat(relation): refuse association and precedence as causation | | #59 | `43bf6cf0d0a15e105fcfe6309657403d0b9cf76f` | false | feat(corpus): treat NFC/NFD bodies as split leakage | | #58 | `ebd4ebd080227c1faed72b04a24baf64b03b62be` | false | feat(evidence): keep embedded image URIs as positional non-lexical units | -| #57 | `14014b73d8c6015ff99b94f51c9a19f2b078811c` | false | feat(validation): exact-head claim promotion gates | +| #57 | `596f091a80d09d59a6c586f08d28aa1f3c5c5fa9` | false | feat(validation): exact-head claim promotion gates | | #55 | `345f26a4eadda8aa89e91468918ea1b0455400f3` | false | feat(api): bind org .github workflows as CI/review/security only | | #53 | `c07e512e3e1e0b85f8d2390345e1151aae3a1889` | false | feat(concept): language-profile gates with shared-space RMSE | -| #52 | `a134ea29847500a700ece1813461579454f30bc0` | false | feat(api): orchestrator interchange refuses table access and repo tokens | +| #52 | `725e8c9b3447d78a8bcdfcb02c98c12c5bf2851f` | false | feat(api): orchestrator interchange refuses table access and repo tokens | | #51 | `240979b5ee5601a4c6338ea9499baccd8c757bcf` | false | feat(compute): VRAM budget types with CPU f64 fallback | | #50 | `a189b97e536648b856cb38ea2c95270196ce3b52` | false | feat(event): refuse TDT/CHRONOS outputs as state transitions | | #49 | `b713010705cb09c54d19cdbdd5c7ac89d5f854aa` | false | feat(psychometric): posterior ESEM input gates with true-parameter RMSE | | #48 | `45224e55792165fd2d752d9a3bd62b016ec7c970` | false | feat(topic): logistic-normal ALR coordinates with true-parameter RMSE | -The exact-head sweep at this snapshot found no unresolved review threads. It -also found the current Strix failure on #146 and #148. The superseded leaf repair -`ContextualWisdomLab/.github#1181` is closed; the canonical owner repair is -[ContextualWisdomLab/.github#1153](https://github.com/ContextualWisdomLab/.github/pull/1153), -currently at exact head `a82b8012be5d57f99c1a2b029f08837d4d10d564` with the -diagnostic-disclosure fix locally verified and hosted Checks still settling. -The exact failed job records are [PR #146 Strix](https://github.com/ContextualWisdomLab/TEPP/actions/runs/32415603746/job/96575931760) -and [PR #148 Strix](https://github.com/ContextualWisdomLab/TEPP/actions/runs/32415173665/job/96574570528); -they establish the failed Strix step and its exact PR heads. The detailed -failed-step logs are not publicly retrievable from these records, so this -snapshot does not promote a more specific vulnerability or infrastructure -diagnosis as canonical evidence. -PRs #164, #165, and #177 had queued required Checks at this snapshot. These -observations are evidence, not merge authorization. +The exact-head register, counts, and protected-main SHA were fetched from the live GitHub API at `2026-08-21 10:26 KST`. Review decisions, required Checks, and mergeability remain volatile; re-read them immediately before every mutation. This snapshot is not merge authorization. ## Authority and derivation @@ -205,25 +191,25 @@ visual workspace, or a supported multi-tenant release. | ID | Buyer-visible gap | Maturity | Delivery status | Protected-main authority | Current delivery authority | Current head SHA | Closure evidence | |---|---|---|---|---|---|---|---| -| GAP-001 | Submission can produce a durable accepted receipt, but protected `main` lacks the separate deterministic terminal-result lifecycle. | `active-PR` | landing vehicle | `7c29e7c` (accepted receipt only) | [#156](https://github.com/ContextualWisdomLab/TEPP/issues/156) / [PR #157](https://github.com/ContextualWisdomLab/TEPP/pull/157) | `0cb9ff6` | Exact request/result/snapshot/cutoff/model/profile binding, typed terminal failures, deterministic retrieval, current-head checks, and qualifying review. | -| GAP-002 | LineageWeave and other modular consumers cannot yet rely on the complete protected-main HTTP evidence/result boundary. | `active-PR` | stacked dependency | `7c29e7c` (versioned API contracts) | [#107](https://github.com/ContextualWisdomLab/TEPP/pull/107) → [#155](https://github.com/ContextualWisdomLab/TEPP/pull/155) → [#158](https://github.com/ContextualWisdomLab/TEPP/pull/158) / [#159](https://github.com/ContextualWisdomLab/TEPP/pull/159) | `07bb21f` → `0e29108` → `6d28d23` / `855c6c7` | Merge in dependency order with live loopback, framing, credential, idempotency, cutoff, tenant, and result-evidence tests. | -| GAP-003A | Immutable evidence cannot yet be submitted to a durable validation run that produces buyer-usable scientific acceptance evidence. | `accepted-target` | product-completion | `7c29e7c` (validation metrics are library-level only) | [#166](https://github.com/ContextualWisdomLab/TEPP/issues/166) | `—` (issue program; no current implementation PR) | Compose/CLI/API execution must bind immutable evidence, cutoffs, model configuration, validation metrics, and reproducibility manifests to one idempotent run. | -| GAP-003B | Scientific result artifacts cannot yet be persisted, restarted, and recovered as one supported buyer workflow. | `accepted-target` | product-completion | `7c29e7c` (persistence contracts lack E2E recovery) | [#166](https://github.com/ContextualWisdomLab/TEPP/issues/166) | `—` (issue program; no current implementation PR) | Durable storage, migration/rollback, restart/recovery, artifact digest verification, and terminal retrieval must pass against a real Compose deployment. | -| GAP-003C | The persistence slice classifies concurrent-write SQLSTATEs, but has no measured hot-partition detection, routing, or mitigation for tenant/result workloads. | `accepted-target` | product-completion | `7c29e7c` (conflict classification only; no measured partition control) | [#166](https://github.com/ContextualWisdomLab/TEPP/issues/166) | `—` (issue program; no current implementation PR) | A real Compose/PostgreSQL workload identifies hot keys and partition skew, applies bounded tenant/time or result routing without weakening 3NF or temporal authority, and proves conflict rate, latency, recovery, and migration/rollback behavior under load. | -| GAP-004 | The central shared-latent temporal/relational topic estimator is absent. | `accepted-target` | product vertical | `7c29e7c` (no production estimator) | [#167](https://github.com/ContextualWisdomLab/TEPP/issues/167) / [PR #48](https://github.com/ContextualWisdomLab/TEPP/pull/48) | `45224e5` | Rust CPU `f64` fitting, sparse bounded parallelism, posterior artifacts, convergence, true-parameter RMSE/bias/coverage, and real candidate-K fitting. | -| GAP-005 | Real multilingual documents are not yet transformed into validated exact-span semantic units and versioned shared concepts. | `accepted-target` | product vertical | `7c29e7c` (evidence spans exist without full semantic pipeline) | [#168](https://github.com/ContextualWisdomLab/TEPP/issues/168) / [PR #53](https://github.com/ContextualWisdomLab/TEPP/pull/53) | `c07e512` | Unicode/layout/language-tailored processing, unknown-concept review, multilingual calibration/invariance, image-position evidence, and prompt-injection tests. | -| GAP-006 | Posterior topic measurements cannot yet be fitted through a complete cross-classified longitudinal ESEM/DSEM engine. | `accepted-target` | product vertical | `7c29e7c` (temporal and membership primitives only) | [#169](https://github.com/ContextualWisdomLab/TEPP/issues/169) / [PR #119](https://github.com/ContextualWisdomLab/TEPP/pull/119) | `2ea08a8` | Plausible-value/joint uncertainty, invariance, irregular event time, within/between separation, multiple membership, true-parameter recovery, and causal-claim refusal. | -| GAP-007 | TDT detection/tracking and CHRONOS schema/forecast/temporal reasoning remain isolated bounded gates rather than one calibrated product workflow. | `accepted-target` | product vertical | `7c29e7c` (event/time primitives only) | [#170](https://github.com/ContextualWisdomLab/TEPP/issues/170) / [PR #70](https://github.com/ContextualWisdomLab/TEPP/pull/70) | `dae7e55` | Span-grounded mentions, calibrated TDT metrics, schema/forecast hypothesis states, interval consistency, known-truth recovery, persistence, and exports. | -| GAP-008 | GPU support is policy-only; no production estimator kernel has real hardware parity or declared VRAM evidence. | `accepted-target` | product vertical | `7c29e7c` (VRAM policy only) | [#171](https://github.com/ContextualWisdomLab/TEPP/issues/171) / [PR #51](https://github.com/ContextualWisdomLab/TEPP/pull/51) | `240979b` | Real CUDA/portable backend execution, CPU parity, streamed memory, bounded OOM/fallback, hardware profiles, telemetry, and no skipped-support claim. | -| GAP-009 | Topic association and cluster outputs lack posterior-valid estimation, uncertainty, edge stability, and consensus communities. | `accepted-target` | product vertical | `7c29e7c` (network primitives only) | [#172](https://github.com/ContextualWisdomLab/TEPP/issues/172) / [PR #71](https://github.com/ContextualWisdomLab/TEPP/pull/71) | `90b531e` | Valid log-ratio coordinates, interval/stability-bearing edges, repeated Leiden consensus, known-truth network/cluster recovery, and reproducible exports. | -| GAP-010 | Buyers lack coordinated accessible visual analytics and exact-value export workflows. | `accepted-target` | product vertical | `7c29e7c` (no visual workspace) | [#173](https://github.com/ContextualWisdomLab/TEPP/issues/173) | `—` (Figma work not started) | Real Figma File ID in ADR, Storybook/design tokens, ten PRD views, exact-value tables, accessible interaction/print/PDF states, provenance, and source-consistent exports. | -| GAP-011 | TEPP is not yet an operable multi-tenant service or supported release. | `accepted-target` | product vertical | `7c29e7c` (library contracts only) | [#174](https://github.com/ContextualWisdomLab/TEPP/issues/174) | `—` (issue program; no current implementation PR) | Durable queue/storage, OIDC/RLS/purpose controls, OpenTelemetry/SLOs, load/recovery, migrations, signed release/SBOM/provenance, assurance evidence, and support policy. | -| GAP-012 | The 94-PR queue obscures authority, repeatedly stales exact-head evidence, and fragments product boundaries. | `partial` | release blocker | `7c29e7c` (protected-main truth) | [#175](https://github.com/ContextualWisdomLab/TEPP/issues/175) | `—` (live queue program) | Every PR classified; unique landing vehicles; compatible slices folded; superseded work closed with provenance; scheduler prioritizes consolidation; queue reaches zero before GA. | -| GAP-013 | Evidence-grounded LLM interpretation is routed but not executed and validated as a production interpreter/verifier port. | `partial` | active integration | `7c29e7c` (routing and refusal contracts only) | [#176](https://github.com/ContextualWisdomLab/TEPP/issues/176), [PR #69](https://github.com/ContextualWisdomLab/TEPP/pull/69), [PR #165](https://github.com/ContextualWisdomLab/TEPP/pull/165) | `e780e1d` / `5a98c8a` | Contextual-orchestrator execution, evidence citations, verifier refusals, comparable-budget ablations, provider eligibility/fallback, abstention, live/offline contract tests, and no numerical-authority escalation. | -| GAP-014 | README/TRD and some PR descriptions lag protected-main and live queue reality. | `partial` | documentation drift | `7c29e7c` (documentation is not fully synchronized) | [#175](https://github.com/ContextualWisdomLab/TEPP/issues/175) | `—` (queue-consolidation work) | Reconcile README, TRD, traceability, ADR maturity, CHANGELOG, preferred-merge declarations, and exact protected-main evidence. | -| GAP-015 | There was no canonical live product/buyer-gap register tied to documentation validation. | `active-PR` | landing vehicle | `7c29e7c` (no live gap register) | [PR #164](https://github.com/ContextualWisdomLab/TEPP/pull/164) | `7700060` | Merge this document and its validator/map integration after exact-head checks and independent review. | -| GAP-016 | Hourly PR maintenance used an older central scheduler revision whose per-repository sweep budgets could amplify the queued review workload. | `active-PR` | operability hardening | `7c29e7c` (caller pin before central budget hardening) | [PR #177](https://github.com/ContextualWisdomLab/TEPP/pull/177) | `8a5dee5` | The change pins central revision `8319ae5` immutably; closure still requires exact-head hosted Checks, resolved threads, and independent review. | -| GAP-017 | Accepted analysis runs have a terminal DTO but lack a cutoff-safe executable artifact path. | `active-PR` | product vertical | `7c29e7c` (accepted receipt and terminal DTO only) | [#166](https://github.com/ContextualWisdomLab/TEPP/issues/166) / [PR #178](https://github.com/ContextualWisdomLab/TEPP/pull/178) stacked on [#157](https://github.com/ContextualWisdomLab/TEPP/pull/157) | `ac946df` | Exact availability cutoff, snapshot binding, multiple-membership preservation, digest integrity, redacted no-eligible failure, and realistic end-to-end tests. | +| GAP-001 | Submission can produce a durable accepted receipt, but protected `main` lacks the separate deterministic terminal-result lifecycle. | `active-PR` | landing vehicle | `c45be17` (accepted receipt only) | [#156](https://github.com/ContextualWisdomLab/TEPP/issues/156) / [PR #157](https://github.com/ContextualWisdomLab/TEPP/pull/157) | `63a419e` | Exact request/result/snapshot/cutoff/model/profile binding, typed terminal failures, deterministic retrieval, current-head checks, and qualifying review. | +| GAP-002 | LineageWeave and other modular consumers cannot yet rely on the complete protected-main HTTP evidence/result boundary. | `active-PR` | stacked dependency | `c45be17` (versioned API contracts) | [#107](https://github.com/ContextualWisdomLab/TEPP/pull/107) → [#155](https://github.com/ContextualWisdomLab/TEPP/pull/155) → [#158](https://github.com/ContextualWisdomLab/TEPP/pull/158) / [#159](https://github.com/ContextualWisdomLab/TEPP/pull/159) | `07bb21f` → `0e29108` → `6d28d23` / `855c6c7` | Merge in dependency order with live loopback, framing, credential, idempotency, cutoff, tenant, and result-evidence tests. | +| GAP-003A | Immutable evidence cannot yet be submitted to a durable validation run that produces buyer-usable scientific acceptance evidence. | `accepted-target` | product-completion | `c45be17` (validation metrics are library-level only) | [#166](https://github.com/ContextualWisdomLab/TEPP/issues/166) | `—` (issue program; no current implementation PR) | Compose/CLI/API execution must bind immutable evidence, cutoffs, model configuration, validation metrics, and reproducibility manifests to one idempotent run. | +| GAP-003B | Scientific result artifacts cannot yet be persisted, restarted, and recovered as one supported buyer workflow. | `accepted-target` | product-completion | `c45be17` (persistence contracts lack E2E recovery) | [#166](https://github.com/ContextualWisdomLab/TEPP/issues/166) | `—` (issue program; no current implementation PR) | Durable storage, migration/rollback, restart/recovery, artifact digest verification, and terminal retrieval must pass against a real Compose deployment. | +| GAP-003C | The persistence slice classifies concurrent-write SQLSTATEs, but has no measured hot-partition detection, routing, or mitigation for tenant/result workloads. | `accepted-target` | product-completion | `c45be17` (conflict classification only; no measured partition control) | [#166](https://github.com/ContextualWisdomLab/TEPP/issues/166) | `—` (issue program; no current implementation PR) | A real Compose/PostgreSQL workload identifies hot keys and partition skew, applies bounded tenant/time or result routing without weakening 3NF or temporal authority, and proves conflict rate, latency, recovery, and migration/rollback behavior under load. | +| GAP-004 | The central shared-latent temporal/relational topic estimator is absent. | `accepted-target` | product vertical | `c45be17` (no production estimator) | [#167](https://github.com/ContextualWisdomLab/TEPP/issues/167) / [PR #48](https://github.com/ContextualWisdomLab/TEPP/pull/48) | `45224e5` | Rust CPU `f64` fitting, sparse bounded parallelism, posterior artifacts, convergence, true-parameter RMSE/bias/coverage, and real candidate-K fitting. | +| GAP-005 | Real multilingual documents are not yet transformed into validated exact-span semantic units and versioned shared concepts. | `accepted-target` | product vertical | `c45be17` (evidence spans exist without full semantic pipeline) | [#168](https://github.com/ContextualWisdomLab/TEPP/issues/168) / [PR #53](https://github.com/ContextualWisdomLab/TEPP/pull/53) | `c07e512` | Unicode/layout/language-tailored processing, unknown-concept review, multilingual calibration/invariance, image-position evidence, and prompt-injection tests. | +| GAP-006 | Posterior topic measurements cannot yet be fitted through a complete cross-classified longitudinal ESEM/DSEM engine. | `accepted-target` | product vertical | `c45be17` (temporal and membership primitives only) | [#169](https://github.com/ContextualWisdomLab/TEPP/issues/169) / [PR #119](https://github.com/ContextualWisdomLab/TEPP/pull/119) | `2ea08a8` | Plausible-value/joint uncertainty, invariance, irregular event time, within/between separation, multiple membership, true-parameter recovery, and causal-claim refusal. | +| GAP-007 | TDT detection/tracking and CHRONOS schema/forecast/temporal reasoning remain isolated bounded gates rather than one calibrated product workflow. | `accepted-target` | product vertical | `c45be17` (event/time primitives only) | [#170](https://github.com/ContextualWisdomLab/TEPP/issues/170) / [PR #70](https://github.com/ContextualWisdomLab/TEPP/pull/70) | `dae7e55` | Span-grounded mentions, calibrated TDT metrics, schema/forecast hypothesis states, interval consistency, known-truth recovery, persistence, and exports. | +| GAP-008 | GPU support is policy-only; no production estimator kernel has real hardware parity or declared VRAM evidence. | `accepted-target` | product vertical | `c45be17` (VRAM policy only) | [#171](https://github.com/ContextualWisdomLab/TEPP/issues/171) / [PR #51](https://github.com/ContextualWisdomLab/TEPP/pull/51) | `240979b` | Real CUDA/portable backend execution, CPU parity, streamed memory, bounded OOM/fallback, hardware profiles, telemetry, and no skipped-support claim. | +| GAP-009 | Topic association and cluster outputs lack posterior-valid estimation, uncertainty, edge stability, and consensus communities. | `accepted-target` | product vertical | `c45be17` (network primitives only) | [#172](https://github.com/ContextualWisdomLab/TEPP/issues/172) / [PR #71](https://github.com/ContextualWisdomLab/TEPP/pull/71) | `90b531e` | Valid log-ratio coordinates, interval/stability-bearing edges, repeated Leiden consensus, known-truth network/cluster recovery, and reproducible exports. | +| GAP-010 | Buyers lack coordinated accessible visual analytics and exact-value export workflows. | `accepted-target` | product vertical | `c45be17` (no visual workspace) | [#173](https://github.com/ContextualWisdomLab/TEPP/issues/173) | `—` (Figma work not started) | Real Figma File ID in ADR, Storybook/design tokens, ten PRD views, exact-value tables, accessible interaction/print/PDF states, provenance, and source-consistent exports. | +| GAP-011 | TEPP is not yet an operable multi-tenant service or supported release. | `accepted-target` | product vertical | `c45be17` (library contracts only) | [#174](https://github.com/ContextualWisdomLab/TEPP/issues/174) | `—` (issue program; no current implementation PR) | Durable queue/storage, OIDC/RLS/purpose controls, OpenTelemetry/SLOs, load/recovery, migrations, signed release/SBOM/provenance, assurance evidence, and support policy. | +| GAP-012 | The 93-PR queue obscures authority, repeatedly stales exact-head evidence, and fragments product boundaries. | `partial` | release blocker | `c45be17` (protected-main truth) | [#175](https://github.com/ContextualWisdomLab/TEPP/issues/175) | `—` (live queue program) | Every PR classified; unique landing vehicles; compatible slices folded; superseded work closed with provenance; scheduler prioritizes consolidation; queue reaches zero before GA. | +| GAP-013 | Evidence-grounded LLM interpretation is routed but not executed and validated as a production interpreter/verifier port. | `partial` | active integration | `c45be17` (routing and refusal contracts only) | [#176](https://github.com/ContextualWisdomLab/TEPP/issues/176), [PR #69](https://github.com/ContextualWisdomLab/TEPP/pull/69), [PR #165](https://github.com/ContextualWisdomLab/TEPP/pull/165) | `e780e1d` / `34083c3` | Contextual-orchestrator execution, evidence citations, verifier refusals, comparable-budget ablations, provider eligibility/fallback, abstention, live/offline contract tests, and no numerical-authority escalation. | +| GAP-014 | README/TRD and some PR descriptions lag protected-main and live queue reality. | `partial` | documentation drift | `c45be17` (documentation is not fully synchronized) | [#175](https://github.com/ContextualWisdomLab/TEPP/issues/175) | `—` (queue-consolidation work) | Reconcile README, TRD, traceability, ADR maturity, CHANGELOG, preferred-merge declarations, and exact protected-main evidence. | +| GAP-015 | There was no canonical live product/buyer-gap register tied to documentation validation. | `active-PR` | landing vehicle | `c45be17` (no live gap register) | [PR #164](https://github.com/ContextualWisdomLab/TEPP/pull/164) | `35a0c27` | Merge this document and its validator/map integration after exact-head checks and independent review. | +| GAP-016 | Hourly PR maintenance used an older central scheduler revision whose per-repository sweep budgets could amplify the queued review workload. | `active-PR` | operability hardening | `c45be17` (caller pin before central budget hardening) | [PR #177](https://github.com/ContextualWisdomLab/TEPP/pull/177) | `8a5dee5` | The change pins central revision `8319ae5` immutably; closure still requires exact-head hosted Checks, resolved threads, and independent review. | +| GAP-017 | Accepted analysis runs have a terminal DTO but lack a cutoff-safe executable artifact path. | `active-PR` | product vertical | `c45be17` (accepted receipt and terminal DTO only) | [#166](https://github.com/ContextualWisdomLab/TEPP/issues/166) / [PR #178](https://github.com/ContextualWisdomLab/TEPP/pull/178) stacked on [#157](https://github.com/ContextualWisdomLab/TEPP/pull/157) | `a2382c8` | Exact availability cutoff, snapshot binding, multiple-membership preservation, digest integrity, redacted no-eligible failure, and realistic end-to-end tests. | ## Product-completion issue register From 244b9a7cff2ccb6a286d21c367b406ca0ef272e4 Mon Sep 17 00:00:00 2001 From: Seongho Bae Date: Fri, 21 Aug 2026 10:28:41 +0900 Subject: [PATCH 29/52] docs(gaps): bind snapshot to refreshed head --- docs/product-technical-gap-baseline.md | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/docs/product-technical-gap-baseline.md b/docs/product-technical-gap-baseline.md index bbd52751..14a61103 100644 --- a/docs/product-technical-gap-baseline.md +++ b/docs/product-technical-gap-baseline.md @@ -2,7 +2,7 @@ **Status:** Live delivery baseline **Product:** Temporal Event Psychometrics Platform (TEPP) -**Snapshot:** 2026-08-21 10:26 KST +**Snapshot:** 2026-08-21 10:28 KST **Protected-main evidence:** `c45be17a9dbce95ef81cee230e9d128abc7160ac` **Workspace version on protected main:** `0.1.0` @@ -49,7 +49,7 @@ Checks, and branch rules immediately before every mutation. | #178 | `a2382c84a1f7ccc66718343fe38e0fbfbb8aa0a7` | false | feat(engine): execute cutoff-safe analysis runs | | #177 | `8a5dee50d4b0fa2396893ad26fa775f2629e2fcd` | false | fix(workflow): pin scheduler budget hardening | | #165 | `34083c3f5d6637cf1665a29dac45fbf67a74d5dd` | false | feat: route hourly product agents through contextual orchestrator | -| #164 | `35a0c271de6bc0d4a6b26d453cee8064494d4a5c` | false | docs: define TEPP product completion and technical gap baseline | +| #164 | `370287a95e0a3491c43b05bc7951c015b3745dc4` | false | docs: define TEPP product completion and technical gap baseline | | #159 | `855c6c7153c2f66a1c14e842ad700f571592dd35` | false | feat(api): project LineageWeave evidence into cutoff-safe histories | | #158 | `6d28d23c432288c4dbecbd74a25f093ed9d9ef61` | false | feat(api): expose temporal evidence context for LineageWeave Ask | | #157 | `63a419e2b96cef3def7f26bfc0337fece88e83c2` | false | feat(api): publish completed analysis-run result contract | @@ -140,7 +140,7 @@ Checks, and branch rules immediately before every mutation. | #49 | `b713010705cb09c54d19cdbdd5c7ac89d5f854aa` | false | feat(psychometric): posterior ESEM input gates with true-parameter RMSE | | #48 | `45224e55792165fd2d752d9a3bd62b016ec7c970` | false | feat(topic): logistic-normal ALR coordinates with true-parameter RMSE | -The exact-head register, counts, and protected-main SHA were fetched from the live GitHub API at `2026-08-21 10:26 KST`. Review decisions, required Checks, and mergeability remain volatile; re-read them immediately before every mutation. This snapshot is not merge authorization. +The exact-head register, counts, and protected-main SHA were fetched from the live GitHub API at `2026-08-21 10:28 KST`. Review decisions, required Checks, and mergeability remain volatile; re-read them immediately before every mutation. This snapshot is not merge authorization. ## Authority and derivation @@ -207,7 +207,7 @@ visual workspace, or a supported multi-tenant release. | GAP-012 | The 93-PR queue obscures authority, repeatedly stales exact-head evidence, and fragments product boundaries. | `partial` | release blocker | `c45be17` (protected-main truth) | [#175](https://github.com/ContextualWisdomLab/TEPP/issues/175) | `—` (live queue program) | Every PR classified; unique landing vehicles; compatible slices folded; superseded work closed with provenance; scheduler prioritizes consolidation; queue reaches zero before GA. | | GAP-013 | Evidence-grounded LLM interpretation is routed but not executed and validated as a production interpreter/verifier port. | `partial` | active integration | `c45be17` (routing and refusal contracts only) | [#176](https://github.com/ContextualWisdomLab/TEPP/issues/176), [PR #69](https://github.com/ContextualWisdomLab/TEPP/pull/69), [PR #165](https://github.com/ContextualWisdomLab/TEPP/pull/165) | `e780e1d` / `34083c3` | Contextual-orchestrator execution, evidence citations, verifier refusals, comparable-budget ablations, provider eligibility/fallback, abstention, live/offline contract tests, and no numerical-authority escalation. | | GAP-014 | README/TRD and some PR descriptions lag protected-main and live queue reality. | `partial` | documentation drift | `c45be17` (documentation is not fully synchronized) | [#175](https://github.com/ContextualWisdomLab/TEPP/issues/175) | `—` (queue-consolidation work) | Reconcile README, TRD, traceability, ADR maturity, CHANGELOG, preferred-merge declarations, and exact protected-main evidence. | -| GAP-015 | There was no canonical live product/buyer-gap register tied to documentation validation. | `active-PR` | landing vehicle | `c45be17` (no live gap register) | [PR #164](https://github.com/ContextualWisdomLab/TEPP/pull/164) | `35a0c27` | Merge this document and its validator/map integration after exact-head checks and independent review. | +| GAP-015 | There was no canonical live product/buyer-gap register tied to documentation validation. | `active-PR` | landing vehicle | `c45be17` (no live gap register) | [PR #164](https://github.com/ContextualWisdomLab/TEPP/pull/164) | `370287a` | Merge this document and its validator/map integration after exact-head checks and independent review. | | GAP-016 | Hourly PR maintenance used an older central scheduler revision whose per-repository sweep budgets could amplify the queued review workload. | `active-PR` | operability hardening | `c45be17` (caller pin before central budget hardening) | [PR #177](https://github.com/ContextualWisdomLab/TEPP/pull/177) | `8a5dee5` | The change pins central revision `8319ae5` immutably; closure still requires exact-head hosted Checks, resolved threads, and independent review. | | GAP-017 | Accepted analysis runs have a terminal DTO but lack a cutoff-safe executable artifact path. | `active-PR` | product vertical | `c45be17` (accepted receipt and terminal DTO only) | [#166](https://github.com/ContextualWisdomLab/TEPP/issues/166) / [PR #178](https://github.com/ContextualWisdomLab/TEPP/pull/178) stacked on [#157](https://github.com/ContextualWisdomLab/TEPP/pull/157) | `a2382c8` | Exact availability cutoff, snapshot binding, multiple-membership preservation, digest integrity, redacted no-eligible failure, and realistic end-to-end tests. | From 60db9c09e9e253ba8b08199aff8cd1bc5a1b375c Mon Sep 17 00:00:00 2001 From: Seongho Bae Date: Fri, 21 Aug 2026 11:51:03 +0900 Subject: [PATCH 30/52] docs: refresh live buyer-gap baseline --- docs/product-technical-gap-baseline.md | 98 +++++++++++++------------- 1 file changed, 49 insertions(+), 49 deletions(-) diff --git a/docs/product-technical-gap-baseline.md b/docs/product-technical-gap-baseline.md index 14a61103..a91488aa 100644 --- a/docs/product-technical-gap-baseline.md +++ b/docs/product-technical-gap-baseline.md @@ -2,7 +2,7 @@ **Status:** Live delivery baseline **Product:** Temporal Event Psychometrics Platform (TEPP) -**Snapshot:** 2026-08-21 10:28 KST +**Snapshot:** 2026-08-21 11:45 KST **Protected-main evidence:** `c45be17a9dbce95ef81cee230e9d128abc7160ac` **Workspace version on protected main:** `0.1.0` @@ -47,77 +47,77 @@ Checks, and branch rules immediately before every mutation. | PR | Exact current head | Draft | Title | |---:|---|:---:|---| | #178 | `a2382c84a1f7ccc66718343fe38e0fbfbb8aa0a7` | false | feat(engine): execute cutoff-safe analysis runs | -| #177 | `8a5dee50d4b0fa2396893ad26fa775f2629e2fcd` | false | fix(workflow): pin scheduler budget hardening | +| #177 | `273cbed1289beff3896dcd07abec433a2022bc9c` | false | fix(workflow): pin scheduler budget hardening | | #165 | `34083c3f5d6637cf1665a29dac45fbf67a74d5dd` | false | feat: route hourly product agents through contextual orchestrator | -| #164 | `370287a95e0a3491c43b05bc7951c015b3745dc4` | false | docs: define TEPP product completion and technical gap baseline | +| #164 | `244b9a7cff2ccb6a286d21c367b406ca0ef272e4` | false | docs: define TEPP product completion and technical gap baseline | | #159 | `855c6c7153c2f66a1c14e842ad700f571592dd35` | false | feat(api): project LineageWeave evidence into cutoff-safe histories | | #158 | `6d28d23c432288c4dbecbd74a25f093ed9d9ef61` | false | feat(api): expose temporal evidence context for LineageWeave Ask | | #157 | `63a419e2b96cef3def7f26bfc0337fece88e83c2` | false | feat(api): publish completed analysis-run result contract | -| #155 | `ffbf50e1756096231867509a6df0511cb496fa05` | false | feat(api): admit LineageWeave as a modular analysis-run consumer | +| #155 | `4893a7e8401101b0b703df18c4b4ae9cc33ec4d2` | false | feat(api): admit LineageWeave as a modular analysis-run consumer | | #154 | `aaadb7f906ed48dfde3c2b71995ce266c592e7a0` | false | ci(rust): refresh branch coverage compiler baseline | -| #153 | `4a1d4c852701b9518effdbefcc6a0a56afe46385` | false | feat(membership): refuse location as entity identity or language | -| #152 | `a67d90381d62ccb2a094fca2f722e729761cbd53` | false | feat(method): refuse prompt boilerplate as unique content | -| #151 | `a35d3290a919f82ade3fcecfa0d6b46b0ecfc7c6` | false | feat(method): refuse corpus-background wording as unique content | -| #150 | `00deb56a7f0193f0a7b08ba27daa37fc49dd651f` | false | feat(method): refuse non-lexical modality as unique content | -| #149 | `e0fa6697ec6df1ec641005b7c27a45ae199688a9` | false | feat(method): refuse copied-text residue as unique content | -| #148 | `020b4466c6ee548cd4fb6df038bdb708981859b0` | false | feat(method): refuse house-voice style as unique content | -| #147 | `1644d25792ced70246037060370b44d500070238` | true | feat(method): refuse section boilerplate as unique content | -| #146 | `ecaa8bcbc8a5007f56e14c66806f3deccea525da` | false | feat(membership): refuse episode membership outside the episode | +| #153 | `e7c871bc2f5e6023002ceeea30217130561842e1` | false | feat(membership): refuse location as entity identity or language | +| #152 | `70a6c6608e39df757417b2674f0acf27aa09b612` | false | feat(method): refuse prompt boilerplate as unique content | +| #151 | `f87c812415280681c4243117fbd1302b204e4f68` | false | feat(method): refuse corpus-background wording as unique content | +| #150 | `f9110e0eec68d823778a433c4ccab3a1beca46f5` | false | feat(method): refuse non-lexical modality as unique content | +| #149 | `6077b9ce7f0961a3e287c4e8afe0faa5a0638b2e` | false | feat(method): refuse copied-text residue as unique content | +| #148 | `4c0612fe717a40cebfb9ba1e31daaa7317607c9f` | false | feat(method): refuse house-voice style as unique content | +| #147 | `08c427f76098adcd5226d1e141d208896bfe58f8` | true | feat(method): refuse section boilerplate as unique content | +| #146 | `5419b0f76a737faf65d6b0c848c83f2f1336e326` | false | feat(membership): refuse episode membership outside the episode | | #145 | `696d56c5816815e22181a03c57a822f974d41706` | false | feat(method): refuse default stopword deletion of report language | | #144 | `e0e568da8c44acc1d30a1a2bad6d76810ee9d6e3` | true | feat(psychometric): recover multilevel event-time structure with Rubin T and strong means | | #143 | `7d533c6198492f748303869f0795fac5c8764b50` | false | feat(relation): refuse a template copy as the source identity | | #142 | `7ca6035c5d8b7c9a7761a0c5f26d1de4215c334b` | true | feat(evidence): refuse untrusted payloads as estimator authority | -| #141 | `a562adde8375426ac75e1681d85b90d280d5b4ee` | false | feat(privacy): refuse untrusted intake without a grant | -| #140 | `b321a315367016d2c844ab3056c7f7dc03f8fde8` | false | feat(estimator): refuse a checkpoint as the CPU f64 estimator | +| #141 | `d558a4b4b3518f4ae09fde6ac828602bb007cdec` | false | feat(privacy): refuse untrusted intake without a grant | +| #140 | `4feb427f6f895ebb53a151ae7c8483f69a3890f0` | false | feat(estimator): refuse a checkpoint as the CPU f64 estimator | | #139 | `43ebbda0d35f9bf227c5764d53d429fff0f08c8c` | false | feat(relation): refuse a summary as the source identity | | #138 | `f06879da364e3149aa2caf51158de60926d9846f` | false | feat(relation): refuse reverse input-process-outcome event time | -| #137 | `87be4ad656fb516887aabef6a79c2f2beffa2524` | false | feat(relation): refuse retrospective reporting as a transition | +| #137 | `c8b3d494df100e57aab7fdbcdc58a798c874e6c0` | false | feat(relation): refuse retrospective reporting as a transition | | #136 | `7825c778f39bb8d1ab9f6fe18c227559f8e78fee` | true | feat(relation): refuse translation edges as state transitions | -| #135 | `e83196faf6f225787579bd136cfbd4b3ed016e26` | false | feat(evidence): refuse untrusted payloads without identity and bounds | +| #135 | `1576e7fe5f03eb1a678060091115dfc927518d49` | false | feat(evidence): refuse untrusted payloads without identity and bounds | | #134 | `7f4a5df9fd18be203c995f59f1e734f69eba56f9` | true | feat(psychometric): refuse unidentified association as causal language | -| #133 | `5f910623ada55f78cc85b5b9563dd160e8476a67` | false | feat(relation): refuse inferred status as observed evidence | +| #133 | `dbe1c1f6f1e27403ee6301f3de220fff1f2d8b40` | false | feat(relation): refuse inferred status as observed evidence | | #132 | `fe73209ea3407f0c8cd62fbf10ecea844ac15e50` | true | feat(relation): refuse unobserved pairs as no-relationship | -| #131 | `e65620b9ba7128804c3fd92807873cb371a6967c` | false | feat(membership): refuse collapsing targets into entity or project | -| #130 | `e61e331a6880078ce79140cae4e783bce3f78197` | false | feat(relation): refuse support edges as state transitions | +| #131 | `967b89f266c85ab6c705ea16ad22e77906e5969c` | false | feat(membership): refuse collapsing targets into entity or project | +| #130 | `edcf89450c3e2eeadf4c7996baabf5e5f1f19ab9` | false | feat(relation): refuse support edges as state transitions | | #129 | `8981696f58892a1ace9baeb6224ac55b436b8110` | true | feat(membership): refuse customer-competitor overlap | -| #128 | `4bcc260868111f21cd6bc5e2af9f4f9122c0cf97` | false | feat(temporal): refuse other clocks as system time | -| #127 | `080d2e02e1b68d1bbd8c1882b8d49d9266f843f6` | false | feat(temporal): refuse other clocks as event time | -| #126 | `fb0fc4e9d594a7feaf88cdc925e0fe78c81a0099` | false | feat(temporal): refuse other clocks as assertion time | -| #125 | `fbba5d62a97e7a1a8bb571aa80c55b6ef43e5a11` | false | feat(temporal): refuse event, system, and available time as cutoff | -| #124 | `77089cd335d7e7e6969cdfccb74dc2f280695c0a` | false | feat(temporal): refuse event and system time as availability | -| #123 | `2e918a1c66cdf30acdd22eacd8d4ccdd5ae5fb9f` | false | feat(temporal): refuse document rows that omit assertion or document time | -| #122 | `b032c855177fee5a470e73280b60a2685f2063fb` | false | feat(temporal): refuse later revisions with earlier system time | -| #121 | `ead49668d3f2978971d1a144b6dd22225aa0d08a` | false | feat(privacy): seal identity mappings with purpose-bound HMAC | -| #120 | `f2bc2843b6389243e7fc0dbd562c352dd0bd9046` | false | feat(relation): refuse citation edges as state transitions | -| #119 | `2ea08a87be3c87d7d8c400addcdf0fd3e8e830d0` | false | feat(psychometric): recover ESEM loadings and refuse reverse DSEM lags | -| #118 | `97c6363a37aa579abaf3a5622e40d0a2275c7797` | false | feat(event): refuse subevents that escape the parent interval | -| #117 | `293067ea08b5cce0a4484c73282fed4d43af6991` | false | feat(membership): recover nested ICC and refuse cross-classified collapse | -| #116 | `5f9d7bf73552180d73a30ddd889d9c80865c817f` | false | docs(adr): wire verified method papers into temporal and psychometric ADRs | -| #115 | `2106170a0d7984291e78c68fd68125f217746f3f` | false | fix(quality): refuse inverted coverage-authority PR sentences | -| #114 | `f46a14bb5d04651e47a32ff1e99e431babe179c3` | false | feat(privacy): record provider field codes without source text | -| #113 | `679eb71f634540475385e11bc452aa4d1cddfa27` | false | feat(persistence): fail-closed entity and project target SQL | -| #110 | `c63e1cfce2e3fcddc46e945a54a9af71e4c9d7ab` | false | feat(api): export corpus-split leakage-audit manifests | -| #106 | `d01892e1783a3b416fbb79966821b4ea804ef2b5` | false | fix(privacy): inspect audit_event inserts through try_record | -| #100 | `3e928bc0f209c74b941fa99b742d92814f610362` | false | test(tls): recover bind decisions from the live policy | -| #99 | `5dd50ff87bb2a7bd2dd7c94ec5d8f73dfac221bf` | false | feat(persistence): persist exact text_segment byte spans without 0007 | +| #128 | `872137cc0d68b97ab7d4dc772d160c247e4c51f6` | false | feat(temporal): refuse other clocks as system time | +| #127 | `bd34a2dda405fab264147f68daa2059dd61c30ca` | false | feat(temporal): refuse other clocks as event time | +| #126 | `28f7ed69785da71c38439c4241a132ab391a5c6f` | false | feat(temporal): refuse other clocks as assertion time | +| #125 | `c225f353f27647268d44a9e8156412a1b9de9fc2` | false | feat(temporal): refuse event, system, and available time as cutoff | +| #124 | `e89b90ce8d2792cb3f1fd61ad7dbd12556855df2` | false | feat(temporal): refuse event and system time as availability | +| #123 | `78e41907ff95067a8755e3ceb41de5f32299ba6e` | false | feat(temporal): refuse document rows that omit assertion or document time | +| #122 | `38542fd41196394587e024c7e824c840dcafb32c` | false | feat(temporal): refuse later revisions with earlier system time | +| #121 | `6da31853ef654a809f882ce34c32049dd9238b67` | false | feat(privacy): seal identity mappings with purpose-bound HMAC | +| #120 | `34c4c119608b2aa46c84e9bef2b47711740ff9de` | false | feat(relation): refuse citation edges as state transitions | +| #119 | `47ab763d49b14ab1ba31f4828ad6e3fda274c007` | false | feat(psychometric): recover ESEM loadings and refuse reverse DSEM lags | +| #118 | `b8f4582f65852b0ac5ba9149de9d5d7783b1c282` | false | feat(event): refuse subevents that escape the parent interval | +| #117 | `8a5a3fa6d38703e6b83b03ad64959dd01c8f263d` | false | feat(membership): recover nested ICC and refuse cross-classified collapse | +| #116 | `08d557c2f772e92543e71d27ac41a108fe64a8bb` | false | docs(adr): wire verified method papers into temporal and psychometric ADRs | +| #115 | `2dbc0fd1d7200100a72990c01008e50ad5f9e641` | false | fix(quality): refuse inverted coverage-authority PR sentences | +| #114 | `df734d71293bf5bbdd10d28430c15626cdb1220e` | false | feat(privacy): record provider field codes without source text | +| #113 | `bd800fc62a7cb59339177e34baf3237d6897fce7` | false | feat(persistence): fail-closed entity and project target SQL | +| #110 | `4517b3f00d56d08a5a9bf47e6b7a681537765127` | false | feat(api): export corpus-split leakage-audit manifests | +| #106 | `60aef093e4f89638b896864342aa28d3a2d3ece7` | false | fix(privacy): inspect audit_event inserts through try_record | +| #100 | `b2a885b9b5418c79d5e828d64291c878f5ae5477` | false | test(tls): recover bind decisions from the live policy | +| #99 | `c4ed064c9e931f1772992526969fb4ae5fcd4537` | false | feat(persistence): persist exact text_segment byte spans without 0007 | | #95 | `3c42b3b09e9a0501d7c7a1a42a322e58cba39165` | true | feat(privacy): refuse blanket-masked scientific field grants | | #92 | `192e1eab459ea1c7e155d9fafe60d1b5912025f2` | true | feat(orchestrator): serve interpretation POSTs on a loopback HTTP listener | -| #91 | `53a5a31f893e24146b4881c7e717021649fbb330` | false | feat(privacy): inherit source sensitivity onto derived artifacts | +| #91 | `808ae6690b35bb58f2152d74c7978e90de6b86a0` | false | feat(privacy): inherit source sensitivity onto derived artifacts | | #86 | `47f6216aec217f15a6274d889bc507e59821096f` | true | feat(privacy): replay privileged-access decisions without source identity | -| #85 | `af3060afdf3a7df2231dd04bfdd59253c83a0637` | false | feat(event): score CHRONOS occurrence forecasts with a Brier rule | +| #85 | `1ebb40644bb479ed8703f6df1b351f3e19d5fe13` | false | feat(event): score CHRONOS occurrence forecasts with a Brier rule | | #84 | `e0ef1f869c46aa20969ce083f9ca31d622c31bb4` | true | feat(invariance): replay shared-meaning gate on current main | | #83 | `18200b674cb29d84ab66853f50e1b5dc38096279` | true | docs(evidence): define language-agnostic semantic spans | | #82 | `774a01bc63600c0c4703114bb01467fd65e57077` | true | feat(privacy): export identity maps only under re-identification purpose | | #81 | `a7769d37ad1f950547f00e05ce2c03e5a2843b43` | true | feat(privacy): bind tenant roles to system-time lifetimes | | #80 | `9539417f223bc6067f21e701986a49b7d3a37aba` | true | feat(temporal): space longitudinal lags on event time | | #79 | `166e37c2cb540a575c690c813a21123a13d86376` | true | feat(privacy): bind authorization grants to one processing purpose | -| #78 | `b2662325441354545b34c907fc346ad06f8729d5` | false | feat(longitudinal): keep unit means out of within-unit change | +| #78 | `b64c6799708ac1f6ac7c84e07fe3ae50750434e1` | false | feat(longitudinal): keep unit means out of within-unit change | | #76 | `ccffcab50ff2f1d8c0e6ee80269d0f7ee0075368` | true | feat(event): score TDT topic detections without promoting clusters | | #75 | `90cc8b6d4848e4c7718dd4bea74c1aaaab6f3685` | true | feat(method): model template sources without inferential weights | | #74 | `0ce7e6a923282d3533cf3b8c0592d5df244049f8` | true | feat(temporal): keep predicted Allen assertions hypothetical | -| #73 | `054f190af0b39790a28ddaa37a96bf9a386dceeb` | false | feat(topic): keep one identity across dormancy and reactivation | -| #72 | `ce5c5a706b2b18a36404c30080a7c477258c2fb8` | false | feat(event): score TDT story segments with WindowDiff and Pk | -| #71 | `90b531e00f32a474bea3e980c02adaac4dfd673a` | false | feat(network): refuse raw simplex Euclidean cluster geometry | +| #73 | `11cc811a10b80a49e8a8ed6bc60fba3d5c753d28` | false | feat(topic): keep one identity across dormancy and reactivation | +| #72 | `899656968cc9f68a3d8fc55dddc4fd257fb27050` | false | feat(event): score TDT story segments with WindowDiff and Pk | +| #71 | `2588f38281b97fa03f552634d307e8b4c908899d` | false | feat(network): refuse raw simplex Euclidean cluster geometry | | #70 | `dae7e55dc7bb2135825437a9df9c7aafc957ff42` | false | feat(event): score CHRONOS schema slots with precision and recall | | #69 | `e780e1dc905424aa9d843b94d4996a560f2b9970` | false | feat(interpretation): keep LLM claims hypothetical and evidence-cited | | #68 | `85c09ec81c66f245f161707d8c50e6aa6939ab7f` | false | feat(event): score TDT tracks with pair precision and switch rate | @@ -135,12 +135,12 @@ Checks, and branch rules immediately before every mutation. | #55 | `345f26a4eadda8aa89e91468918ea1b0455400f3` | false | feat(api): bind org .github workflows as CI/review/security only | | #53 | `c07e512e3e1e0b85f8d2390345e1151aae3a1889` | false | feat(concept): language-profile gates with shared-space RMSE | | #52 | `725e8c9b3447d78a8bcdfcb02c98c12c5bf2851f` | false | feat(api): orchestrator interchange refuses table access and repo tokens | -| #51 | `240979b5ee5601a4c6338ea9499baccd8c757bcf` | false | feat(compute): VRAM budget types with CPU f64 fallback | +| #51 | `e8a0ee38caf9aefd60999ca74ee9d20eac83d2e0` | false | feat(compute): VRAM budget types with CPU f64 fallback | | #50 | `a189b97e536648b856cb38ea2c95270196ce3b52` | false | feat(event): refuse TDT/CHRONOS outputs as state transitions | -| #49 | `b713010705cb09c54d19cdbdd5c7ac89d5f854aa` | false | feat(psychometric): posterior ESEM input gates with true-parameter RMSE | -| #48 | `45224e55792165fd2d752d9a3bd62b016ec7c970` | false | feat(topic): logistic-normal ALR coordinates with true-parameter RMSE | +| #49 | `06c176f9c4f91d793620610380f550f8f2e9458e` | false | feat(psychometric): posterior ESEM input gates with true-parameter RMSE | +| #48 | `7769df7944d1d5189a26c9dd0ef7d1f46d35e82e` | false | feat(topic): logistic-normal ALR coordinates with true-parameter RMSE | -The exact-head register, counts, and protected-main SHA were fetched from the live GitHub API at `2026-08-21 10:28 KST`. Review decisions, required Checks, and mergeability remain volatile; re-read them immediately before every mutation. This snapshot is not merge authorization. +The exact-head register, counts, and protected-main SHA were fetched from the live GitHub API at `2026-08-21 11:45 KST`. Review decisions, required Checks, and mergeability remain volatile; re-read them immediately before every mutation. This snapshot is not merge authorization. ## Authority and derivation From 38cc7698e508bcf91bc8be7b4371e5fd104b1a1c Mon Sep 17 00:00:00 2001 From: Seongho Bae Date: Fri, 21 Aug 2026 13:21:03 +0900 Subject: [PATCH 31/52] docs: refresh live PR head register --- docs/product-technical-gap-baseline.md | 40 +++++++++++++------------- 1 file changed, 20 insertions(+), 20 deletions(-) diff --git a/docs/product-technical-gap-baseline.md b/docs/product-technical-gap-baseline.md index a91488aa..506c369b 100644 --- a/docs/product-technical-gap-baseline.md +++ b/docs/product-technical-gap-baseline.md @@ -2,7 +2,7 @@ **Status:** Live delivery baseline **Product:** Temporal Event Psychometrics Platform (TEPP) -**Snapshot:** 2026-08-21 11:45 KST +**Snapshot:** 2026-08-21 13:19 KST **Protected-main evidence:** `c45be17a9dbce95ef81cee230e9d128abc7160ac` **Workspace version on protected main:** `0.1.0` @@ -49,7 +49,7 @@ Checks, and branch rules immediately before every mutation. | #178 | `a2382c84a1f7ccc66718343fe38e0fbfbb8aa0a7` | false | feat(engine): execute cutoff-safe analysis runs | | #177 | `273cbed1289beff3896dcd07abec433a2022bc9c` | false | fix(workflow): pin scheduler budget hardening | | #165 | `34083c3f5d6637cf1665a29dac45fbf67a74d5dd` | false | feat: route hourly product agents through contextual orchestrator | -| #164 | `244b9a7cff2ccb6a286d21c367b406ca0ef272e4` | false | docs: define TEPP product completion and technical gap baseline | +| #164 | `60db9c09e9e253ba8b08199aff8cd1bc5a1b375c` | false | docs: define TEPP product completion and technical gap baseline | | #159 | `855c6c7153c2f66a1c14e842ad700f571592dd35` | false | feat(api): project LineageWeave evidence into cutoff-safe histories | | #158 | `6d28d23c432288c4dbecbd74a25f093ed9d9ef61` | false | feat(api): expose temporal evidence context for LineageWeave Ask | | #157 | `63a419e2b96cef3def7f26bfc0337fece88e83c2` | false | feat(api): publish completed analysis-run result contract | @@ -118,29 +118,29 @@ Checks, and branch rules immediately before every mutation. | #73 | `11cc811a10b80a49e8a8ed6bc60fba3d5c753d28` | false | feat(topic): keep one identity across dormancy and reactivation | | #72 | `899656968cc9f68a3d8fc55dddc4fd257fb27050` | false | feat(event): score TDT story segments with WindowDiff and Pk | | #71 | `2588f38281b97fa03f552634d307e8b4c908899d` | false | feat(network): refuse raw simplex Euclidean cluster geometry | -| #70 | `dae7e55dc7bb2135825437a9df9c7aafc957ff42` | false | feat(event): score CHRONOS schema slots with precision and recall | -| #69 | `e780e1dc905424aa9d843b94d4996a560f2b9970` | false | feat(interpretation): keep LLM claims hypothetical and evidence-cited | -| #68 | `85c09ec81c66f245f161707d8c50e6aa6939ab7f` | false | feat(event): score TDT tracks with pair precision and switch rate | -| #67 | `d73517791dc3831545d41baff8f2a955cf5106ab` | false | feat(model): statistical Pareto K gates refuse LLM numerical authority | -| #66 | `633d41c47164e24366c5f8956d92cdd1173d50ba` | false | feat(event): score TDT mention links with precision and recall | -| #65 | `928f90500862c983ea17f9fddc7e1f80eb84f0a4` | false | feat(event): score first-story detections with FAR and miss rates | -| #64 | `22a5955a0ba23a65ee597ff5f630eadb389e7446` | false | feat(event): score mention confidence with a known-truth Brier rule | -| #63 | `4b64edc92b54cee28c979cddb9a6114ae87b3e2b` | false | feat(corpus): refuse TF-IDF and BM25 as inferential weights | -| #62 | `1951ab43c90deda0a23117006fc2bf8898328c98` | false | feat(simulation): exclude delayed documents before they are available | -| #61 | `8ebbc04eac07231413a089d7fc6b64b36ed6a61b` | false | feat(temporal): refuse uncertain availability past knowledge cutoff | -| #60 | `da47ee32468838ca7d325bb8feb82c8ee471d16a` | false | feat(relation): refuse association and precedence as causation | -| #59 | `43bf6cf0d0a15e105fcfe6309657403d0b9cf76f` | false | feat(corpus): treat NFC/NFD bodies as split leakage | -| #58 | `ebd4ebd080227c1faed72b04a24baf64b03b62be` | false | feat(evidence): keep embedded image URIs as positional non-lexical units | -| #57 | `596f091a80d09d59a6c586f08d28aa1f3c5c5fa9` | false | feat(validation): exact-head claim promotion gates | +| #70 | `bb29bacc233c1a800550af6a14de1b08ec3744f3` | false | feat(event): score CHRONOS schema slots with precision and recall | +| #69 | `6f1db2b51203866a322b1b23e7bf05158dcc7f2d` | false | feat(interpretation): keep LLM claims hypothetical and evidence-cited | +| #68 | `6a98c812ef8e621e1bc1c46a615296b39f0bae33` | false | feat(event): score TDT tracks with pair precision and switch rate | +| #67 | `191f14b8b775292c163a90b85c4f7df7799964eb` | false | feat(model): statistical Pareto K gates refuse LLM numerical authority | +| #66 | `380be3f33f798cc8648a9dc9f24b85011f9e0468` | false | feat(event): score TDT mention links with precision and recall | +| #65 | `54bb76dd3d25ae872d1555b78e42fa80a83b1240` | false | feat(event): score first-story detections with FAR and miss rates | +| #64 | `c11adce997d4f3e462f50711211af9f051e747b0` | false | feat(event): score mention confidence with a known-truth Brier rule | +| #63 | `f6e7fd937579e0e89174498967efb882af18e158` | false | feat(corpus): refuse TF-IDF and BM25 as inferential weights | +| #62 | `7a16e579814ef06517f82fd2b41ebb27568eb960` | false | feat(simulation): exclude delayed documents before they are available | +| #61 | `c7f094cf17b5d0be0aa9270b2d397da4d2db851d` | false | feat(temporal): refuse uncertain availability past knowledge cutoff | +| #60 | `40ede67614599ba21495fea024d4493d3af9fbb3` | false | feat(relation): refuse association and precedence as causation | +| #59 | `b47efdc3cfdcec61f69c4219c49519a160bd5549` | false | feat(corpus): treat NFC/NFD bodies as split leakage | +| #58 | `05870ce72d97c41ca9bb599965a573450f9d5276` | false | feat(evidence): keep embedded image URIs as positional non-lexical units | +| #57 | `b76e38393e932873ec2aed682ab539ee61828537` | false | feat(validation): exact-head claim promotion gates | | #55 | `345f26a4eadda8aa89e91468918ea1b0455400f3` | false | feat(api): bind org .github workflows as CI/review/security only | | #53 | `c07e512e3e1e0b85f8d2390345e1151aae3a1889` | false | feat(concept): language-profile gates with shared-space RMSE | | #52 | `725e8c9b3447d78a8bcdfcb02c98c12c5bf2851f` | false | feat(api): orchestrator interchange refuses table access and repo tokens | -| #51 | `e8a0ee38caf9aefd60999ca74ee9d20eac83d2e0` | false | feat(compute): VRAM budget types with CPU f64 fallback | -| #50 | `a189b97e536648b856cb38ea2c95270196ce3b52` | false | feat(event): refuse TDT/CHRONOS outputs as state transitions | +| #51 | `1801501c4d7c5be720d24aba954280fbc9068612` | false | feat(compute): VRAM budget types with CPU f64 fallback | +| #50 | `314a6db9c3392bfd806b76fed2099898342627fc` | false | feat(event): refuse TDT/CHRONOS outputs as state transitions | | #49 | `06c176f9c4f91d793620610380f550f8f2e9458e` | false | feat(psychometric): posterior ESEM input gates with true-parameter RMSE | -| #48 | `7769df7944d1d5189a26c9dd0ef7d1f46d35e82e` | false | feat(topic): logistic-normal ALR coordinates with true-parameter RMSE | +| #48 | `73403994a3fb386126e8276b7ab5160355063341` | false | feat(topic): logistic-normal ALR coordinates with true-parameter RMSE | -The exact-head register, counts, and protected-main SHA were fetched from the live GitHub API at `2026-08-21 11:45 KST`. Review decisions, required Checks, and mergeability remain volatile; re-read them immediately before every mutation. This snapshot is not merge authorization. +The exact-head register, counts, and protected-main SHA were fetched from the live GitHub API at `2026-08-21 13:19 KST`. Review decisions, required Checks, and mergeability remain volatile; re-read them immediately before every mutation. This snapshot is not merge authorization. ## Authority and derivation From 5e923f065e378324ef8ad94a1d88e00b5e894964 Mon Sep 17 00:00:00 2001 From: Seongho Bae Date: Sun, 23 Aug 2026 21:36:37 +0900 Subject: [PATCH 32/52] docs: require dated exact-head gap baseline Refresh the live 2026-08-23 GitHub inventory, add a structure validator that rejects queued-Checks-as-shipped claims, and cover it with quality tests. PR #164 remains the single gap-baseline authority. --- CHANGELOG.md | 10 +- docs/product-technical-gap-baseline.md | 240 +++++++++--------- scripts/validate_documentation.py | 68 ++++- .../test_product_technical_gap_baseline.py | 141 ++++++++++ 4 files changed, 333 insertions(+), 126 deletions(-) create mode 100644 tests/quality/test_product_technical_gap_baseline.py diff --git a/CHANGELOG.md b/CHANGELOG.md index 03a011e7..29505d90 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -9,7 +9,10 @@ All notable changes to TEPP are documented here. The format follows Keep a Chang - Live `docs/product-technical-gap-baseline.md` mapping buyer-visible gaps to protected-main maturity, exact current PR/issue state, stacked delivery order, and closure evidence; placeholder-only issues #161 and #162 were closed as - queue hygiene. + queue hygiene. The documentation validator requires a dated UTC snapshot, a + 40-character protected-main SHA, an exact-head inventory matching the declared + open-PR count, and buyer-gap closure evidence, and it rejects prose that + treats queued Checks as implemented-main. - `tepp_api` naruon live loopback HTTP/1.1 listener: `serve_one` installs a read/write deadline, requires a loopback `Host`, refuses `Transfer-Encoding` and NIM/proxy credential headers, parses `knowledge_cutoff` as RFC 3339 and refuses a future cutoff, keys analysis-run idempotency by tenant plus key, and proves both analysis-run and export POSTs over a real `TcpStream`. Not a production TLS/`$PORT` service (ADR 0011). - `tepp_api` adaptive orchestration router (ADR 0010): versioned `direct`/`verify`/`committee`/`conductor`/`abstain` selection from CPU `f64` risk, ambiguity, evidence, and token-budget inputs; recorded stages, recursion, decomposition, access lists, and role-specific reasoning effort; fail-closed document-controlled policy/access/credentials; LLM plans remain proposals under deterministic statistical authority; comparable-budget ablation requires a direct baseline; credential-free contextual-orchestrator binding. Live NIM HTTP remains accepted-target. - `tepp_api` purpose-bound provider-payload minimization: time-bounded `PurposeGrant` evaluation, fail-closed expired/not-yet-valid/inverted/cross-tenant/impossible-calendar denial, semantic UTC calendar validation, refusal to copy identity mappings into model-provider payloads or ordinary logs, preservation of opaque analytical identifiers and membership roles (no blanket PII mask), a separately authorized scientific re-identification path, and an internally bound FIPS 180-4 SHA-256 audit digest appended through `ReidentificationAuditSink` before disclosure. @@ -79,6 +82,11 @@ All notable changes to TEPP are documented here. The format follows Keep a Chang ### Changed +- Refreshed the live gap-baseline inventory to the 2026-08-23T12:27:12Z GitHub + snapshot (94 open PRs / 24 drafts / 12 issues; protected-main + `c45be17a9dbce95ef81cee230e9d128abc7160ac`), naming PR #164 as the single + register authority and recording that stacked-merged heads are not + implemented-main. - Clarified ADR 0001 so it owns Rust-first numerical/reference-backend authority while ADR 0011 owns cross-service MSA/service authority. - Clarified ADR 0006 so it owns GPU/VRAM and model-credential boundaries; ADR 0010 now owns LLM orchestration policy and ADR 0015 owns autonomous repository-write/review/merge authority. - Expanded ADR 0002–0005 and 0009–0011 with explicit implementation maturity, alternatives, failure/recovery, compatibility/migration, verification, and rollback/supersession boundaries where they were previously implicit. diff --git a/docs/product-technical-gap-baseline.md b/docs/product-technical-gap-baseline.md index 506c369b..7fc5b6a0 100644 --- a/docs/product-technical-gap-baseline.md +++ b/docs/product-technical-gap-baseline.md @@ -2,9 +2,10 @@ **Status:** Live delivery baseline **Product:** Temporal Event Psychometrics Platform (TEPP) -**Snapshot:** 2026-08-21 13:19 KST +**Snapshot:** 2026-08-23T12:27:12Z **Protected-main evidence:** `c45be17a9dbce95ef81cee230e9d128abc7160ac` **Workspace version on protected main:** `0.1.0` +**Canonical gap-baseline authority:** [PR #164](https://github.com/ContextualWisdomLab/TEPP/pull/164); [PR #179](https://github.com/ContextualWisdomLab/TEPP/pull/179) is a duplicate snapshot and is not a second protected-main register. ## Purpose @@ -25,17 +26,19 @@ GitHub state before any customer, release, certification, or valuation claim. |---|---:|---| | Protected-main SHA | `c45be17a9dbce95ef81cee230e9d128abc7160ac` | All as-built claims are bounded to this commit. | | Workspace members | 10 Rust crates | The foundation is modular, but the approved target contains additional semantic, estimator, compute, psychometric, event-intelligence, network, interpretation, artifact, and visual boundaries. | -| Open pull requests | **93** | The queue is itself a release blocker and requires consolidation. | -| Draft pull requests | **19** | Most queued work is not independently review-ready. | -| Non-draft pull requests | **74** | A non-draft state is not a qualifying review or required-check result. | +| Open pull requests | **94** | The queue is itself a release blocker and requires consolidation. | +| Draft pull requests | **24** | Most queued work is not independently review-ready. | +| Non-draft pull requests | **70** | A non-draft state is not a qualifying review or required-check result. | | Open product issues | **12** | Issue #156 plus the product-completion program #166–#176. | +| Duplicate gap-baseline PRs | **#164** (authority) and **#179** (duplicate) | Only one live register may be merged; queued Checks on either PR are not protected-main evidence. | | Current package version | `0.1.0` | No supported product release is established by the repository version alone. | The pull-request counts come from the live GitHub search at this snapshot. The full exact-head classification is owned by [issue #175](https://github.com/ContextualWisdomLab/TEPP/issues/175); this file keeps the buyer-level summary while the exact-head register below records the -current 93-row volatile queue. +current 94-row volatile queue. Passing or queued Checks on an open PR never +promote that PR to implemented-main. ## Current open pull-request evidence @@ -44,103 +47,104 @@ API at the snapshot above. `draft=false` is not approval, mergeability, or a passing-check claim. Re-read the full SHA, current review decision, required Checks, and branch rules immediately before every mutation. -| PR | Exact current head | Draft | Title | -|---:|---|:---:|---| -| #178 | `a2382c84a1f7ccc66718343fe38e0fbfbb8aa0a7` | false | feat(engine): execute cutoff-safe analysis runs | -| #177 | `273cbed1289beff3896dcd07abec433a2022bc9c` | false | fix(workflow): pin scheduler budget hardening | -| #165 | `34083c3f5d6637cf1665a29dac45fbf67a74d5dd` | false | feat: route hourly product agents through contextual orchestrator | -| #164 | `60db9c09e9e253ba8b08199aff8cd1bc5a1b375c` | false | docs: define TEPP product completion and technical gap baseline | -| #159 | `855c6c7153c2f66a1c14e842ad700f571592dd35` | false | feat(api): project LineageWeave evidence into cutoff-safe histories | -| #158 | `6d28d23c432288c4dbecbd74a25f093ed9d9ef61` | false | feat(api): expose temporal evidence context for LineageWeave Ask | -| #157 | `63a419e2b96cef3def7f26bfc0337fece88e83c2` | false | feat(api): publish completed analysis-run result contract | -| #155 | `4893a7e8401101b0b703df18c4b4ae9cc33ec4d2` | false | feat(api): admit LineageWeave as a modular analysis-run consumer | -| #154 | `aaadb7f906ed48dfde3c2b71995ce266c592e7a0` | false | ci(rust): refresh branch coverage compiler baseline | -| #153 | `e7c871bc2f5e6023002ceeea30217130561842e1` | false | feat(membership): refuse location as entity identity or language | -| #152 | `70a6c6608e39df757417b2674f0acf27aa09b612` | false | feat(method): refuse prompt boilerplate as unique content | -| #151 | `f87c812415280681c4243117fbd1302b204e4f68` | false | feat(method): refuse corpus-background wording as unique content | -| #150 | `f9110e0eec68d823778a433c4ccab3a1beca46f5` | false | feat(method): refuse non-lexical modality as unique content | -| #149 | `6077b9ce7f0961a3e287c4e8afe0faa5a0638b2e` | false | feat(method): refuse copied-text residue as unique content | -| #148 | `4c0612fe717a40cebfb9ba1e31daaa7317607c9f` | false | feat(method): refuse house-voice style as unique content | -| #147 | `08c427f76098adcd5226d1e141d208896bfe58f8` | true | feat(method): refuse section boilerplate as unique content | -| #146 | `5419b0f76a737faf65d6b0c848c83f2f1336e326` | false | feat(membership): refuse episode membership outside the episode | -| #145 | `696d56c5816815e22181a03c57a822f974d41706` | false | feat(method): refuse default stopword deletion of report language | -| #144 | `e0e568da8c44acc1d30a1a2bad6d76810ee9d6e3` | true | feat(psychometric): recover multilevel event-time structure with Rubin T and strong means | -| #143 | `7d533c6198492f748303869f0795fac5c8764b50` | false | feat(relation): refuse a template copy as the source identity | -| #142 | `7ca6035c5d8b7c9a7761a0c5f26d1de4215c334b` | true | feat(evidence): refuse untrusted payloads as estimator authority | -| #141 | `d558a4b4b3518f4ae09fde6ac828602bb007cdec` | false | feat(privacy): refuse untrusted intake without a grant | -| #140 | `4feb427f6f895ebb53a151ae7c8483f69a3890f0` | false | feat(estimator): refuse a checkpoint as the CPU f64 estimator | -| #139 | `43ebbda0d35f9bf227c5764d53d429fff0f08c8c` | false | feat(relation): refuse a summary as the source identity | -| #138 | `f06879da364e3149aa2caf51158de60926d9846f` | false | feat(relation): refuse reverse input-process-outcome event time | -| #137 | `c8b3d494df100e57aab7fdbcdc58a798c874e6c0` | false | feat(relation): refuse retrospective reporting as a transition | -| #136 | `7825c778f39bb8d1ab9f6fe18c227559f8e78fee` | true | feat(relation): refuse translation edges as state transitions | -| #135 | `1576e7fe5f03eb1a678060091115dfc927518d49` | false | feat(evidence): refuse untrusted payloads without identity and bounds | -| #134 | `7f4a5df9fd18be203c995f59f1e734f69eba56f9` | true | feat(psychometric): refuse unidentified association as causal language | -| #133 | `dbe1c1f6f1e27403ee6301f3de220fff1f2d8b40` | false | feat(relation): refuse inferred status as observed evidence | -| #132 | `fe73209ea3407f0c8cd62fbf10ecea844ac15e50` | true | feat(relation): refuse unobserved pairs as no-relationship | -| #131 | `967b89f266c85ab6c705ea16ad22e77906e5969c` | false | feat(membership): refuse collapsing targets into entity or project | -| #130 | `edcf89450c3e2eeadf4c7996baabf5e5f1f19ab9` | false | feat(relation): refuse support edges as state transitions | -| #129 | `8981696f58892a1ace9baeb6224ac55b436b8110` | true | feat(membership): refuse customer-competitor overlap | -| #128 | `872137cc0d68b97ab7d4dc772d160c247e4c51f6` | false | feat(temporal): refuse other clocks as system time | -| #127 | `bd34a2dda405fab264147f68daa2059dd61c30ca` | false | feat(temporal): refuse other clocks as event time | -| #126 | `28f7ed69785da71c38439c4241a132ab391a5c6f` | false | feat(temporal): refuse other clocks as assertion time | -| #125 | `c225f353f27647268d44a9e8156412a1b9de9fc2` | false | feat(temporal): refuse event, system, and available time as cutoff | -| #124 | `e89b90ce8d2792cb3f1fd61ad7dbd12556855df2` | false | feat(temporal): refuse event and system time as availability | -| #123 | `78e41907ff95067a8755e3ceb41de5f32299ba6e` | false | feat(temporal): refuse document rows that omit assertion or document time | -| #122 | `38542fd41196394587e024c7e824c840dcafb32c` | false | feat(temporal): refuse later revisions with earlier system time | -| #121 | `6da31853ef654a809f882ce34c32049dd9238b67` | false | feat(privacy): seal identity mappings with purpose-bound HMAC | -| #120 | `34c4c119608b2aa46c84e9bef2b47711740ff9de` | false | feat(relation): refuse citation edges as state transitions | -| #119 | `47ab763d49b14ab1ba31f4828ad6e3fda274c007` | false | feat(psychometric): recover ESEM loadings and refuse reverse DSEM lags | -| #118 | `b8f4582f65852b0ac5ba9149de9d5d7783b1c282` | false | feat(event): refuse subevents that escape the parent interval | -| #117 | `8a5a3fa6d38703e6b83b03ad64959dd01c8f263d` | false | feat(membership): recover nested ICC and refuse cross-classified collapse | -| #116 | `08d557c2f772e92543e71d27ac41a108fe64a8bb` | false | docs(adr): wire verified method papers into temporal and psychometric ADRs | -| #115 | `2dbc0fd1d7200100a72990c01008e50ad5f9e641` | false | fix(quality): refuse inverted coverage-authority PR sentences | -| #114 | `df734d71293bf5bbdd10d28430c15626cdb1220e` | false | feat(privacy): record provider field codes without source text | -| #113 | `bd800fc62a7cb59339177e34baf3237d6897fce7` | false | feat(persistence): fail-closed entity and project target SQL | -| #110 | `4517b3f00d56d08a5a9bf47e6b7a681537765127` | false | feat(api): export corpus-split leakage-audit manifests | -| #106 | `60aef093e4f89638b896864342aa28d3a2d3ece7` | false | fix(privacy): inspect audit_event inserts through try_record | -| #100 | `b2a885b9b5418c79d5e828d64291c878f5ae5477` | false | test(tls): recover bind decisions from the live policy | -| #99 | `c4ed064c9e931f1772992526969fb4ae5fcd4537` | false | feat(persistence): persist exact text_segment byte spans without 0007 | -| #95 | `3c42b3b09e9a0501d7c7a1a42a322e58cba39165` | true | feat(privacy): refuse blanket-masked scientific field grants | -| #92 | `192e1eab459ea1c7e155d9fafe60d1b5912025f2` | true | feat(orchestrator): serve interpretation POSTs on a loopback HTTP listener | -| #91 | `808ae6690b35bb58f2152d74c7978e90de6b86a0` | false | feat(privacy): inherit source sensitivity onto derived artifacts | -| #86 | `47f6216aec217f15a6274d889bc507e59821096f` | true | feat(privacy): replay privileged-access decisions without source identity | -| #85 | `1ebb40644bb479ed8703f6df1b351f3e19d5fe13` | false | feat(event): score CHRONOS occurrence forecasts with a Brier rule | -| #84 | `e0ef1f869c46aa20969ce083f9ca31d622c31bb4` | true | feat(invariance): replay shared-meaning gate on current main | -| #83 | `18200b674cb29d84ab66853f50e1b5dc38096279` | true | docs(evidence): define language-agnostic semantic spans | -| #82 | `774a01bc63600c0c4703114bb01467fd65e57077` | true | feat(privacy): export identity maps only under re-identification purpose | -| #81 | `a7769d37ad1f950547f00e05ce2c03e5a2843b43` | true | feat(privacy): bind tenant roles to system-time lifetimes | -| #80 | `9539417f223bc6067f21e701986a49b7d3a37aba` | true | feat(temporal): space longitudinal lags on event time | -| #79 | `166e37c2cb540a575c690c813a21123a13d86376` | true | feat(privacy): bind authorization grants to one processing purpose | -| #78 | `b64c6799708ac1f6ac7c84e07fe3ae50750434e1` | false | feat(longitudinal): keep unit means out of within-unit change | -| #76 | `ccffcab50ff2f1d8c0e6ee80269d0f7ee0075368` | true | feat(event): score TDT topic detections without promoting clusters | -| #75 | `90cc8b6d4848e4c7718dd4bea74c1aaaab6f3685` | true | feat(method): model template sources without inferential weights | -| #74 | `0ce7e6a923282d3533cf3b8c0592d5df244049f8` | true | feat(temporal): keep predicted Allen assertions hypothetical | -| #73 | `11cc811a10b80a49e8a8ed6bc60fba3d5c753d28` | false | feat(topic): keep one identity across dormancy and reactivation | -| #72 | `899656968cc9f68a3d8fc55dddc4fd257fb27050` | false | feat(event): score TDT story segments with WindowDiff and Pk | -| #71 | `2588f38281b97fa03f552634d307e8b4c908899d` | false | feat(network): refuse raw simplex Euclidean cluster geometry | -| #70 | `bb29bacc233c1a800550af6a14de1b08ec3744f3` | false | feat(event): score CHRONOS schema slots with precision and recall | -| #69 | `6f1db2b51203866a322b1b23e7bf05158dcc7f2d` | false | feat(interpretation): keep LLM claims hypothetical and evidence-cited | -| #68 | `6a98c812ef8e621e1bc1c46a615296b39f0bae33` | false | feat(event): score TDT tracks with pair precision and switch rate | -| #67 | `191f14b8b775292c163a90b85c4f7df7799964eb` | false | feat(model): statistical Pareto K gates refuse LLM numerical authority | -| #66 | `380be3f33f798cc8648a9dc9f24b85011f9e0468` | false | feat(event): score TDT mention links with precision and recall | -| #65 | `54bb76dd3d25ae872d1555b78e42fa80a83b1240` | false | feat(event): score first-story detections with FAR and miss rates | -| #64 | `c11adce997d4f3e462f50711211af9f051e747b0` | false | feat(event): score mention confidence with a known-truth Brier rule | -| #63 | `f6e7fd937579e0e89174498967efb882af18e158` | false | feat(corpus): refuse TF-IDF and BM25 as inferential weights | -| #62 | `7a16e579814ef06517f82fd2b41ebb27568eb960` | false | feat(simulation): exclude delayed documents before they are available | -| #61 | `c7f094cf17b5d0be0aa9270b2d397da4d2db851d` | false | feat(temporal): refuse uncertain availability past knowledge cutoff | -| #60 | `40ede67614599ba21495fea024d4493d3af9fbb3` | false | feat(relation): refuse association and precedence as causation | -| #59 | `b47efdc3cfdcec61f69c4219c49519a160bd5549` | false | feat(corpus): treat NFC/NFD bodies as split leakage | -| #58 | `05870ce72d97c41ca9bb599965a573450f9d5276` | false | feat(evidence): keep embedded image URIs as positional non-lexical units | -| #57 | `b76e38393e932873ec2aed682ab539ee61828537` | false | feat(validation): exact-head claim promotion gates | -| #55 | `345f26a4eadda8aa89e91468918ea1b0455400f3` | false | feat(api): bind org .github workflows as CI/review/security only | -| #53 | `c07e512e3e1e0b85f8d2390345e1151aae3a1889` | false | feat(concept): language-profile gates with shared-space RMSE | -| #52 | `725e8c9b3447d78a8bcdfcb02c98c12c5bf2851f` | false | feat(api): orchestrator interchange refuses table access and repo tokens | -| #51 | `1801501c4d7c5be720d24aba954280fbc9068612` | false | feat(compute): VRAM budget types with CPU f64 fallback | -| #50 | `314a6db9c3392bfd806b76fed2099898342627fc` | false | feat(event): refuse TDT/CHRONOS outputs as state transitions | -| #49 | `06c176f9c4f91d793620610380f550f8f2e9458e` | false | feat(psychometric): posterior ESEM input gates with true-parameter RMSE | -| #48 | `73403994a3fb386126e8276b7ab5160355063341` | false | feat(topic): logistic-normal ALR coordinates with true-parameter RMSE | - -The exact-head register, counts, and protected-main SHA were fetched from the live GitHub API at `2026-08-21 13:19 KST`. Review decisions, required Checks, and mergeability remain volatile; re-read them immediately before every mutation. This snapshot is not merge authorization. +| PR | Exact current head | Draft | Base | Title | +|---:|---|:---:|---|---| +| #187 | `6afd048d1a78bd7e1f68555182ec6a1f0db9ea8c` | true | agent/psychometric-predetermined-later-start-later-t0var | feat(psychometric): recover Driver p.16 discreteDRIFTstd after positive asymDIFFUSION | +| #185 | `69ffec6425863b2842094ff1b1d6c07d8eee6b5b` | true | agent/psychometric-predetermined-later-lagged-t0var | feat(psychometric): recover Driver later-start later-occasion variance of predetermined T0VAR | +| #184 | `6b93147e668ff414240f3ea94997f2937c0817f1` | true | agent/psychometric-predetermined-initial-t0var | feat(psychometric): recover Driver later-start lagged covariance of predetermined T0VAR | +| #183 | `c10097be0f6f4ff8dd8e6db21dce8818630fe17f` | true | agent/psychometric-predetermined-lagged-t0var | feat(psychometric): recover Driver first-occasion variance of predetermined T0VAR | +| #182 | `2d4d6bf9fdfa1c55d2cc3b2f36ba6a1d0523c8a8` | true | agent/psychometric-predetermined-later-t0var | feat(psychometric): recover Driver lagged covariance of predetermined T0VAR | +| #181 | `542806b747eea55c9eab705c5dd3479a3e1c63b6` | true | agent/psychometric-posterior-esem-input | feat(psychometric): recover Driver later-occasion variance of predetermined T0VAR | +| #180 | `ad5944a9d759f6012bd328793692e571004d8f70` | false | main | fix(transport): hide raw provider exception details | +| #179 | `17623ea2168c6777b2bfebe03ec09c094005b952` | false | main | docs: add product technical gap baseline | +| #177 | `580d45206536bf2f7deba327ffafb96a69ba7260` | false | main | fix(workflow): pin scheduler budget hardening | +| #165 | `34083c3f5d6637cf1665a29dac45fbf67a74d5dd` | false | main | feat: route hourly product agents through contextual orchestrator | +| #164 | `38cc7698e508bcf91bc8be7b4371e5fd104b1a1c` | false | main | docs: define TEPP product completion and technical gap baseline | +| #157 | `cce90a11ac920244253f0f6a1c77b82e75e1cd44` | false | main | feat(api): publish completed analysis-run result contract | +| #155 | `02c009c16e6a9c6fee3237224ed6a17cbc4169e1` | false | main | feat(api): admit LineageWeave as a modular analysis-run consumer | +| #154 | `a7a1bdf96a6759f11aed9284b73319ed94b82fd2` | false | main | ci(rust): refresh branch coverage compiler baseline | +| #153 | `e7c871bc2f5e6023002ceeea30217130561842e1` | false | main | feat(membership): refuse location as entity identity or language | +| #152 | `70a6c6608e39df757417b2674f0acf27aa09b612` | false | main | feat(method): refuse prompt boilerplate as unique content | +| #151 | `f87c812415280681c4243117fbd1302b204e4f68` | false | main | feat(method): refuse corpus-background wording as unique content | +| #150 | `f9110e0eec68d823778a433c4ccab3a1beca46f5` | false | main | feat(method): refuse non-lexical modality as unique content | +| #149 | `6077b9ce7f0961a3e287c4e8afe0faa5a0638b2e` | false | main | feat(method): refuse copied-text residue as unique content | +| #148 | `4c0612fe717a40cebfb9ba1e31daaa7317607c9f` | false | main | feat(method): refuse house-voice style as unique content | +| #147 | `08c427f76098adcd5226d1e141d208896bfe58f8` | true | main | feat(method): refuse section boilerplate as unique content | +| #146 | `5419b0f76a737faf65d6b0c848c83f2f1336e326` | false | main | feat(membership): refuse episode membership outside the episode | +| #145 | `696d56c5816815e22181a03c57a822f974d41706` | false | main | feat(method): refuse default stopword deletion of report language | +| #143 | `7d533c6198492f748303869f0795fac5c8764b50` | false | main | feat(relation): refuse a template copy as the source identity | +| #142 | `7ca6035c5d8b7c9a7761a0c5f26d1de4215c334b` | true | main | feat(evidence): refuse untrusted payloads as estimator authority | +| #141 | `d558a4b4b3518f4ae09fde6ac828602bb007cdec` | false | main | feat(privacy): refuse untrusted intake without a grant | +| #140 | `4feb427f6f895ebb53a151ae7c8483f69a3890f0` | false | main | feat(estimator): refuse a checkpoint as the CPU f64 estimator | +| #139 | `43ebbda0d35f9bf227c5764d53d429fff0f08c8c` | false | main | feat(relation): refuse a summary as the source identity | +| #138 | `f06879da364e3149aa2caf51158de60926d9846f` | false | main | feat(relation): refuse reverse input-process-outcome event time | +| #137 | `c8b3d494df100e57aab7fdbcdc58a798c874e6c0` | false | main | feat(relation): refuse retrospective reporting as a transition | +| #136 | `7825c778f39bb8d1ab9f6fe18c227559f8e78fee` | true | main | feat(relation): refuse translation edges as state transitions | +| #135 | `1576e7fe5f03eb1a678060091115dfc927518d49` | false | main | feat(evidence): refuse untrusted payloads without identity and bounds | +| #134 | `7f4a5df9fd18be203c995f59f1e734f69eba56f9` | true | main | feat(psychometric): refuse unidentified association as causal language | +| #133 | `dbe1c1f6f1e27403ee6301f3de220fff1f2d8b40` | false | main | feat(relation): refuse inferred status as observed evidence | +| #132 | `fe73209ea3407f0c8cd62fbf10ecea844ac15e50` | true | main | feat(relation): refuse unobserved pairs as no-relationship | +| #131 | `02c04db787ed6fc443102875740d97b7d2e2cbcc` | false | main | feat(membership): refuse collapsing targets into entity or project | +| #130 | `6f963c8527986c8290aff94ae898991adf03e4d6` | false | main | feat(relation): refuse support edges as state transitions | +| #129 | `8981696f58892a1ace9baeb6224ac55b436b8110` | true | main | feat(membership): refuse customer-competitor overlap | +| #128 | `30ff215365a18ccef7b22e03912c293532b8f7bc` | false | main | feat(temporal): refuse other clocks as system time | +| #127 | `bd34a2dda405fab264147f68daa2059dd61c30ca` | false | main | feat(temporal): refuse other clocks as event time | +| #126 | `28f7ed69785da71c38439c4241a132ab391a5c6f` | false | main | feat(temporal): refuse other clocks as assertion time | +| #125 | `c225f353f27647268d44a9e8156412a1b9de9fc2` | false | main | feat(temporal): refuse event, system, and available time as cutoff | +| #124 | `e89b90ce8d2792cb3f1fd61ad7dbd12556855df2` | false | main | feat(temporal): refuse event and system time as availability | +| #123 | `78e41907ff95067a8755e3ceb41de5f32299ba6e` | false | main | feat(temporal): refuse document rows that omit assertion or document time | +| #122 | `38542fd41196394587e024c7e824c840dcafb32c` | false | main | feat(temporal): refuse later revisions with earlier system time | +| #121 | `93f6aa5e28761e69f14093d2e341799219f867c6` | false | main | feat(privacy): seal identity mappings with purpose-bound HMAC | +| #120 | `34c4c119608b2aa46c84e9bef2b47711740ff9de` | false | main | feat(relation): refuse citation edges as state transitions | +| #119 | `47ab763d49b14ab1ba31f4828ad6e3fda274c007` | false | main | feat(psychometric): recover ESEM loadings and refuse reverse DSEM lags | +| #118 | `b8f4582f65852b0ac5ba9149de9d5d7783b1c282` | false | main | feat(event): refuse subevents that escape the parent interval | +| #117 | `8a5a3fa6d38703e6b83b03ad64959dd01c8f263d` | false | main | feat(membership): recover nested ICC and refuse cross-classified collapse | +| #116 | `08d557c2f772e92543e71d27ac41a108fe64a8bb` | false | main | docs(adr): wire verified method papers into temporal and psychometric ADRs | +| #115 | `2dbc0fd1d7200100a72990c01008e50ad5f9e641` | false | main | fix(quality): refuse inverted coverage-authority PR sentences | +| #114 | `df734d71293bf5bbdd10d28430c15626cdb1220e` | false | main | feat(privacy): record provider field codes without source text | +| #113 | `bd800fc62a7cb59339177e34baf3237d6897fce7` | false | main | feat(persistence): fail-closed entity and project target SQL | +| #110 | `4517b3f00d56d08a5a9bf47e6b7a681537765127` | false | main | feat(api): export corpus-split leakage-audit manifests | +| #106 | `60aef093e4f89638b896864342aa28d3a2d3ece7` | false | main | fix(privacy): inspect audit_event inserts through try_record | +| #100 | `b2a885b9b5418c79d5e828d64291c878f5ae5477` | false | main | test(tls): recover bind decisions from the live policy | +| #99 | `c4ed064c9e931f1772992526969fb4ae5fcd4537` | false | main | feat(persistence): persist exact text_segment byte spans without 0007 | +| #95 | `3c42b3b09e9a0501d7c7a1a42a322e58cba39165` | true | main | feat(privacy): refuse blanket-masked scientific field grants | +| #92 | `192e1eab459ea1c7e155d9fafe60d1b5912025f2` | true | main | feat(orchestrator): serve interpretation POSTs on a loopback HTTP listener | +| #91 | `808ae6690b35bb58f2152d74c7978e90de6b86a0` | false | main | feat(privacy): inherit source sensitivity onto derived artifacts | +| #86 | `47f6216aec217f15a6274d889bc507e59821096f` | true | main | feat(privacy): replay privileged-access decisions without source identity | +| #85 | `1ebb40644bb479ed8703f6df1b351f3e19d5fe13` | false | main | feat(event): score CHRONOS occurrence forecasts with a Brier rule | +| #84 | `e0ef1f869c46aa20969ce083f9ca31d622c31bb4` | true | main | feat(invariance): replay shared-meaning gate on current main | +| #83 | `18200b674cb29d84ab66853f50e1b5dc38096279` | true | main | docs(evidence): define language-agnostic semantic spans | +| #82 | `774a01bc63600c0c4703114bb01467fd65e57077` | true | main | feat(privacy): export identity maps only under re-identification purpose | +| #81 | `a7769d37ad1f950547f00e05ce2c03e5a2843b43` | true | main | feat(privacy): bind tenant roles to system-time lifetimes | +| #80 | `9539417f223bc6067f21e701986a49b7d3a37aba` | true | main | feat(temporal): space longitudinal lags on event time | +| #79 | `166e37c2cb540a575c690c813a21123a13d86376` | true | main | feat(privacy): bind authorization grants to one processing purpose | +| #78 | `b64c6799708ac1f6ac7c84e07fe3ae50750434e1` | false | main | feat(longitudinal): keep unit means out of within-unit change | +| #76 | `ccffcab50ff2f1d8c0e6ee80269d0f7ee0075368` | true | main | feat(event): score TDT topic detections without promoting clusters | +| #75 | `90cc8b6d4848e4c7718dd4bea74c1aaaab6f3685` | true | main | feat(method): model template sources without inferential weights | +| #74 | `0ce7e6a923282d3533cf3b8c0592d5df244049f8` | true | main | feat(temporal): keep predicted Allen assertions hypothetical | +| #73 | `11cc811a10b80a49e8a8ed6bc60fba3d5c753d28` | false | main | feat(topic): keep one identity across dormancy and reactivation | +| #72 | `899656968cc9f68a3d8fc55dddc4fd257fb27050` | false | main | feat(event): score TDT story segments with WindowDiff and Pk | +| #71 | `2588f38281b97fa03f552634d307e8b4c908899d` | false | main | feat(network): refuse raw simplex Euclidean cluster geometry | +| #70 | `7a1f33aa68c1c9be9e9da7ac7f7dadb1092ff9e4` | false | main | feat(event): score CHRONOS schema slots with precision and recall | +| #69 | `8e4a3ca9cc80f0f4e3bccf712fe6a725bfb1365e` | false | main | feat(interpretation): keep LLM claims hypothetical and evidence-cited | +| #68 | `6a98c812ef8e621e1bc1c46a615296b39f0bae33` | false | main | feat(event): score TDT tracks with pair precision and switch rate | +| #67 | `45b272d2498ecff128d75621c88c1e7d6eb1400b` | false | main | feat(model): statistical Pareto K gates refuse LLM numerical authority | +| #66 | `380be3f33f798cc8648a9dc9f24b85011f9e0468` | false | main | feat(event): score TDT mention links with precision and recall | +| #65 | `54bb76dd3d25ae872d1555b78e42fa80a83b1240` | false | main | feat(event): score first-story detections with FAR and miss rates | +| #64 | `c11adce997d4f3e462f50711211af9f051e747b0` | false | main | feat(event): score mention confidence with a known-truth Brier rule | +| #63 | `f6e7fd937579e0e89174498967efb882af18e158` | false | main | feat(corpus): refuse TF-IDF and BM25 as inferential weights | +| #62 | `7a16e579814ef06517f82fd2b41ebb27568eb960` | false | main | feat(simulation): exclude delayed documents before they are available | +| #61 | `c7f094cf17b5d0be0aa9270b2d397da4d2db851d` | false | main | feat(temporal): refuse uncertain availability past knowledge cutoff | +| #60 | `40ede67614599ba21495fea024d4493d3af9fbb3` | false | main | feat(relation): refuse association and precedence as causation | +| #59 | `b47efdc3cfdcec61f69c4219c49519a160bd5549` | false | main | feat(corpus): treat NFC/NFD bodies as split leakage | +| #58 | `431561a6c422660c618f82a241e5a4b320653378` | false | main | feat(evidence): keep embedded image URIs as positional non-lexical units | +| #57 | `b76e38393e932873ec2aed682ab539ee61828537` | false | main | feat(validation): exact-head claim promotion gates | +| #51 | `1801501c4d7c5be720d24aba954280fbc9068612` | false | main | feat(compute): VRAM budget types with CPU f64 fallback | +| #50 | `8f26c2f82bd6fc579baa3e72046f70d1b4973269` | false | main | feat(event): refuse TDT/CHRONOS outputs as state transitions | +| #49 | `6f95142a6087d289eee3b513aee3233934b36ca4` | false | main | feat(psychometric): posterior ESEM input gates with true-parameter RMSE | +| #48 | `73403994a3fb386126e8276b7ab5160355063341` | false | main | feat(topic): logistic-normal ALR coordinates with true-parameter RMSE | + +The exact-head register, counts, and protected-main SHA were fetched from the live GitHub REST API at `2026-08-23T12:27:12Z`. Review decisions, required Checks, and mergeability remain volatile; re-read them immediately before every mutation. This snapshot is not merge authorization and does not treat queued or passing Checks as shipped protected-main behavior. ## Authority and derivation @@ -191,25 +195,25 @@ visual workspace, or a supported multi-tenant release. | ID | Buyer-visible gap | Maturity | Delivery status | Protected-main authority | Current delivery authority | Current head SHA | Closure evidence | |---|---|---|---|---|---|---|---| -| GAP-001 | Submission can produce a durable accepted receipt, but protected `main` lacks the separate deterministic terminal-result lifecycle. | `active-PR` | landing vehicle | `c45be17` (accepted receipt only) | [#156](https://github.com/ContextualWisdomLab/TEPP/issues/156) / [PR #157](https://github.com/ContextualWisdomLab/TEPP/pull/157) | `63a419e` | Exact request/result/snapshot/cutoff/model/profile binding, typed terminal failures, deterministic retrieval, current-head checks, and qualifying review. | -| GAP-002 | LineageWeave and other modular consumers cannot yet rely on the complete protected-main HTTP evidence/result boundary. | `active-PR` | stacked dependency | `c45be17` (versioned API contracts) | [#107](https://github.com/ContextualWisdomLab/TEPP/pull/107) → [#155](https://github.com/ContextualWisdomLab/TEPP/pull/155) → [#158](https://github.com/ContextualWisdomLab/TEPP/pull/158) / [#159](https://github.com/ContextualWisdomLab/TEPP/pull/159) | `07bb21f` → `0e29108` → `6d28d23` / `855c6c7` | Merge in dependency order with live loopback, framing, credential, idempotency, cutoff, tenant, and result-evidence tests. | +| GAP-001 | Submission can produce a durable accepted receipt, but protected `main` lacks the separate deterministic terminal-result lifecycle. | `active-PR` | landing vehicle | `c45be17` (accepted receipt only) | [#156](https://github.com/ContextualWisdomLab/TEPP/issues/156) / [PR #157](https://github.com/ContextualWisdomLab/TEPP/pull/157) | `cce90a11ac92` | Exact request/result/snapshot/cutoff/model/profile binding, typed terminal failures, deterministic retrieval, current-head checks, and qualifying review. Cutoff-safe execution from closed stacked PR #178 is on this head only and is not implemented-main. | +| GAP-002 | LineageWeave and other modular consumers cannot yet rely on the complete protected-main HTTP evidence/result boundary. | `active-PR` | landing vehicle | `c45be17` (loopback naruon listener from merged PR #107; versioned API contracts) | [#155](https://github.com/ContextualWisdomLab/TEPP/pull/155) | `02c009c16e6a` | Merge the live consumer contract after exact-head review/Checks. Closed stacked PRs #158 and #159 were folded into this head; they are not protected-main evidence. | | GAP-003A | Immutable evidence cannot yet be submitted to a durable validation run that produces buyer-usable scientific acceptance evidence. | `accepted-target` | product-completion | `c45be17` (validation metrics are library-level only) | [#166](https://github.com/ContextualWisdomLab/TEPP/issues/166) | `—` (issue program; no current implementation PR) | Compose/CLI/API execution must bind immutable evidence, cutoffs, model configuration, validation metrics, and reproducibility manifests to one idempotent run. | | GAP-003B | Scientific result artifacts cannot yet be persisted, restarted, and recovered as one supported buyer workflow. | `accepted-target` | product-completion | `c45be17` (persistence contracts lack E2E recovery) | [#166](https://github.com/ContextualWisdomLab/TEPP/issues/166) | `—` (issue program; no current implementation PR) | Durable storage, migration/rollback, restart/recovery, artifact digest verification, and terminal retrieval must pass against a real Compose deployment. | | GAP-003C | The persistence slice classifies concurrent-write SQLSTATEs, but has no measured hot-partition detection, routing, or mitigation for tenant/result workloads. | `accepted-target` | product-completion | `c45be17` (conflict classification only; no measured partition control) | [#166](https://github.com/ContextualWisdomLab/TEPP/issues/166) | `—` (issue program; no current implementation PR) | A real Compose/PostgreSQL workload identifies hot keys and partition skew, applies bounded tenant/time or result routing without weakening 3NF or temporal authority, and proves conflict rate, latency, recovery, and migration/rollback behavior under load. | | GAP-004 | The central shared-latent temporal/relational topic estimator is absent. | `accepted-target` | product vertical | `c45be17` (no production estimator) | [#167](https://github.com/ContextualWisdomLab/TEPP/issues/167) / [PR #48](https://github.com/ContextualWisdomLab/TEPP/pull/48) | `45224e5` | Rust CPU `f64` fitting, sparse bounded parallelism, posterior artifacts, convergence, true-parameter RMSE/bias/coverage, and real candidate-K fitting. | -| GAP-005 | Real multilingual documents are not yet transformed into validated exact-span semantic units and versioned shared concepts. | `accepted-target` | product vertical | `c45be17` (evidence spans exist without full semantic pipeline) | [#168](https://github.com/ContextualWisdomLab/TEPP/issues/168) / [PR #53](https://github.com/ContextualWisdomLab/TEPP/pull/53) | `c07e512` | Unicode/layout/language-tailored processing, unknown-concept review, multilingual calibration/invariance, image-position evidence, and prompt-injection tests. | +| GAP-005 | Real multilingual documents are not yet transformed into validated exact-span semantic units and versioned shared concepts. | `accepted-target` | product vertical | `c45be17` (evidence spans exist without full semantic pipeline) | [#168](https://github.com/ContextualWisdomLab/TEPP/issues/168) | `—` (PR #53 merged only onto a non-main maintenance branch and is not implemented-main) | Unicode/layout/language-tailored processing, unknown-concept review, multilingual calibration/invariance, image-position evidence, and prompt-injection tests. | | GAP-006 | Posterior topic measurements cannot yet be fitted through a complete cross-classified longitudinal ESEM/DSEM engine. | `accepted-target` | product vertical | `c45be17` (temporal and membership primitives only) | [#169](https://github.com/ContextualWisdomLab/TEPP/issues/169) / [PR #119](https://github.com/ContextualWisdomLab/TEPP/pull/119) | `2ea08a8` | Plausible-value/joint uncertainty, invariance, irregular event time, within/between separation, multiple membership, true-parameter recovery, and causal-claim refusal. | | GAP-007 | TDT detection/tracking and CHRONOS schema/forecast/temporal reasoning remain isolated bounded gates rather than one calibrated product workflow. | `accepted-target` | product vertical | `c45be17` (event/time primitives only) | [#170](https://github.com/ContextualWisdomLab/TEPP/issues/170) / [PR #70](https://github.com/ContextualWisdomLab/TEPP/pull/70) | `dae7e55` | Span-grounded mentions, calibrated TDT metrics, schema/forecast hypothesis states, interval consistency, known-truth recovery, persistence, and exports. | | GAP-008 | GPU support is policy-only; no production estimator kernel has real hardware parity or declared VRAM evidence. | `accepted-target` | product vertical | `c45be17` (VRAM policy only) | [#171](https://github.com/ContextualWisdomLab/TEPP/issues/171) / [PR #51](https://github.com/ContextualWisdomLab/TEPP/pull/51) | `240979b` | Real CUDA/portable backend execution, CPU parity, streamed memory, bounded OOM/fallback, hardware profiles, telemetry, and no skipped-support claim. | | GAP-009 | Topic association and cluster outputs lack posterior-valid estimation, uncertainty, edge stability, and consensus communities. | `accepted-target` | product vertical | `c45be17` (network primitives only) | [#172](https://github.com/ContextualWisdomLab/TEPP/issues/172) / [PR #71](https://github.com/ContextualWisdomLab/TEPP/pull/71) | `90b531e` | Valid log-ratio coordinates, interval/stability-bearing edges, repeated Leiden consensus, known-truth network/cluster recovery, and reproducible exports. | | GAP-010 | Buyers lack coordinated accessible visual analytics and exact-value export workflows. | `accepted-target` | product vertical | `c45be17` (no visual workspace) | [#173](https://github.com/ContextualWisdomLab/TEPP/issues/173) | `—` (Figma work not started) | Real Figma File ID in ADR, Storybook/design tokens, ten PRD views, exact-value tables, accessible interaction/print/PDF states, provenance, and source-consistent exports. | | GAP-011 | TEPP is not yet an operable multi-tenant service or supported release. | `accepted-target` | product vertical | `c45be17` (library contracts only) | [#174](https://github.com/ContextualWisdomLab/TEPP/issues/174) | `—` (issue program; no current implementation PR) | Durable queue/storage, OIDC/RLS/purpose controls, OpenTelemetry/SLOs, load/recovery, migrations, signed release/SBOM/provenance, assurance evidence, and support policy. | -| GAP-012 | The 93-PR queue obscures authority, repeatedly stales exact-head evidence, and fragments product boundaries. | `partial` | release blocker | `c45be17` (protected-main truth) | [#175](https://github.com/ContextualWisdomLab/TEPP/issues/175) | `—` (live queue program) | Every PR classified; unique landing vehicles; compatible slices folded; superseded work closed with provenance; scheduler prioritizes consolidation; queue reaches zero before GA. | +| GAP-012 | The 94-PR queue obscures authority, repeatedly stales exact-head evidence, and fragments product boundaries. | `partial` | release blocker | `c45be17` (protected-main truth) | [#175](https://github.com/ContextualWisdomLab/TEPP/issues/175) | `—` (live queue program) | Every PR classified; unique landing vehicles; compatible slices folded; superseded work closed with provenance; scheduler prioritizes consolidation; queue reaches zero before GA. | | GAP-013 | Evidence-grounded LLM interpretation is routed but not executed and validated as a production interpreter/verifier port. | `partial` | active integration | `c45be17` (routing and refusal contracts only) | [#176](https://github.com/ContextualWisdomLab/TEPP/issues/176), [PR #69](https://github.com/ContextualWisdomLab/TEPP/pull/69), [PR #165](https://github.com/ContextualWisdomLab/TEPP/pull/165) | `e780e1d` / `34083c3` | Contextual-orchestrator execution, evidence citations, verifier refusals, comparable-budget ablations, provider eligibility/fallback, abstention, live/offline contract tests, and no numerical-authority escalation. | | GAP-014 | README/TRD and some PR descriptions lag protected-main and live queue reality. | `partial` | documentation drift | `c45be17` (documentation is not fully synchronized) | [#175](https://github.com/ContextualWisdomLab/TEPP/issues/175) | `—` (queue-consolidation work) | Reconcile README, TRD, traceability, ADR maturity, CHANGELOG, preferred-merge declarations, and exact protected-main evidence. | -| GAP-015 | There was no canonical live product/buyer-gap register tied to documentation validation. | `active-PR` | landing vehicle | `c45be17` (no live gap register) | [PR #164](https://github.com/ContextualWisdomLab/TEPP/pull/164) | `370287a` | Merge this document and its validator/map integration after exact-head checks and independent review. | -| GAP-016 | Hourly PR maintenance used an older central scheduler revision whose per-repository sweep budgets could amplify the queued review workload. | `active-PR` | operability hardening | `c45be17` (caller pin before central budget hardening) | [PR #177](https://github.com/ContextualWisdomLab/TEPP/pull/177) | `8a5dee5` | The change pins central revision `8319ae5` immutably; closure still requires exact-head hosted Checks, resolved threads, and independent review. | -| GAP-017 | Accepted analysis runs have a terminal DTO but lack a cutoff-safe executable artifact path. | `active-PR` | product vertical | `c45be17` (accepted receipt and terminal DTO only) | [#166](https://github.com/ContextualWisdomLab/TEPP/issues/166) / [PR #178](https://github.com/ContextualWisdomLab/TEPP/pull/178) stacked on [#157](https://github.com/ContextualWisdomLab/TEPP/pull/157) | `a2382c8` | Exact availability cutoff, snapshot binding, multiple-membership preservation, digest integrity, redacted no-eligible failure, and realistic end-to-end tests. | +| GAP-015 | There was no canonical live product/buyer-gap register tied to documentation validation. | `active-PR` | landing vehicle | `c45be17` (no live gap register) | [PR #164](https://github.com/ContextualWisdomLab/TEPP/pull/164) (authority); [PR #179](https://github.com/ContextualWisdomLab/TEPP/pull/179) is a duplicate to close after #164 lands | `38cc7698e508` | Merge this document and its validator/map/quality-test integration after exact-head checks and independent review. Passing Checks on #164 or #179 are not implemented-main. | +| GAP-016 | Hourly PR maintenance used an older central scheduler revision whose per-repository sweep budgets could amplify the queued review workload. | `active-PR` | operability hardening | `c45be17` (caller pin before central budget hardening) | [PR #177](https://github.com/ContextualWisdomLab/TEPP/pull/177) | `580d45206536` | The change pins a verified central revision immutably; closure still requires exact-head hosted Checks, resolved threads, and independent review. | +| GAP-017 | Accepted analysis runs have a terminal DTO, and cutoff-safe execution exists only on the #157 head after stacked PR #178 merged into that branch. | `active-PR` | product vertical | `c45be17` (accepted receipt only) | [#166](https://github.com/ContextualWisdomLab/TEPP/issues/166) / [PR #157](https://github.com/ContextualWisdomLab/TEPP/pull/157) | `cce90a11ac92` | Exact availability cutoff, snapshot binding, multiple-membership preservation, digest integrity, redacted no-eligible failure, and realistic end-to-end tests on protected main. Closed stacked PR #178 is not implemented-main. | ## Product-completion issue register @@ -236,30 +240,28 @@ because its head can change after this file is committed. | PR | Current delivery role | Required next action | |---:|---|---| -| [#164](https://github.com/ContextualWisdomLab/TEPP/pull/164) | This product/technical gap baseline | Re-run exact-head documentation/repository checks and obtain independent review. | +| [#164](https://github.com/ContextualWisdomLab/TEPP/pull/164) | Canonical product/technical gap baseline | Re-run exact-head documentation/repository checks and obtain independent review. | +| [#179](https://github.com/ContextualWisdomLab/TEPP/pull/179) | Duplicate gap-baseline snapshot | Close as superseded after #164 is the single authority; do not merge both. | | [#177](https://github.com/ContextualWisdomLab/TEPP/pull/177) | Central scheduler budget-hardening pin | Re-run exact-head Checks and obtain independent review before relying on the hourly caller. | | [#165](https://github.com/ContextualWisdomLab/TEPP/pull/165) | Hourly agent routing through contextual-orchestrator | Ensure queue-consolidation policy from #175 prevents unrelated micro-PR growth. | -| [#157](https://github.com/ContextualWisdomLab/TEPP/pull/157) | Terminal result contract for #156 | Complete exact-head review/check gates; keep #156 open until protected-main verification. | -| [#178](https://github.com/ContextualWisdomLab/TEPP/pull/178) | Cutoff-safe analysis execution stacked on #157 | Complete exact-head review/check gates; merge only after the terminal-result parent and protected branch rules permit the stack. | -| [#107](https://github.com/ContextualWisdomLab/TEPP/pull/107) | Loopback analysis-run service | Review/merge before dependent consumer work. | -| [#155](https://github.com/ContextualWisdomLab/TEPP/pull/155) | Modular LineageWeave consumer parent | Preserve current stack parent and obtain independent review. | -| [#158](https://github.com/ContextualWisdomLab/TEPP/pull/158) | Temporal evidence context | Revalidate after its parent lands. | -| [#159](https://github.com/ContextualWisdomLab/TEPP/pull/159) | Cutoff-safe history projection | Revalidate after its parent lands. | +| [#157](https://github.com/ContextualWisdomLab/TEPP/pull/157) | Terminal result contract for #156, including folded cutoff-safe execution from closed #178 | Complete exact-head review/check gates; keep #156 open until protected-main verification. | +| [#155](https://github.com/ContextualWisdomLab/TEPP/pull/155) | Modular LineageWeave consumer parent, including folded #158/#159 | Obtain independent review; passing Checks are not implemented-main. | +| [#180](https://github.com/ContextualWisdomLab/TEPP/pull/180) | Hide raw provider exception details | Review/check gates; do not weaken fail-closed provider handling. | +| [#153](https://github.com/ContextualWisdomLab/TEPP/pull/153) | Refuse location as entity identity or language | Independent review after exact-head membership tests. | | [#48](https://github.com/ContextualWisdomLab/TEPP/pull/48) | Logistic-normal/ILR coordinate slice | Resolve requested changes and fold into the estimator landing plan; do not call it fitting. | | [#51](https://github.com/ContextualWisdomLab/TEPP/pull/51) | VRAM budget/fallback policy types | Resolve requested changes; connect only to a real production kernel under #171. | -| [#53](https://github.com/ContextualWisdomLab/TEPP/pull/53) | Concept/language-profile gates | Integrate into the semantic pipeline authority under #168. | | [#67](https://github.com/ContextualWisdomLab/TEPP/pull/67) | Model-selection gates | Rebase/merge only with an explicit path to real candidate fitting under #167. | | [#69](https://github.com/ContextualWisdomLab/TEPP/pull/69) | Interpretation grounding/refusal metrics | Fold into the product interpreter/verifier under #176. | | [#71](https://github.com/ContextualWisdomLab/TEPP/pull/71) | Compositional geometry/network pair metrics | Fold into the network estimator under #172. | | [#119](https://github.com/ContextualWisdomLab/TEPP/pull/119) | Bounded loading/lag recovery slice | Consolidate into the psychometric engine under #169. | -| [#144](https://github.com/ContextualWisdomLab/TEPP/pull/144) | Draft multilevel event-time scalar recovery stack | Compare exact unique evidence and consolidate rather than land many scalar crates independently. | +| [#181](https://github.com/ContextualWisdomLab/TEPP/pull/181)–[#187](https://github.com/ContextualWisdomLab/TEPP/pull/187) | Draft stacked psychometric T0VAR/drift recoveries | Keep stacked; do not promote drafts or predecessor heads as protected-main. | ## Delivery sequence The dependency-aware product order is: 1. **Consolidate delivery authority:** #175 and PR #164. -2. **Finish live result/consumer contracts:** #156/#157 and #107 → #155 → #158/#159. +2. **Finish live result/consumer contracts:** #156/#157 and #155 (loopback PR #107 is already implemented-main; closed stacked #158/#159/#178 are not). 3. **Build validated multilingual evidence:** #168. 4. **Build the CPU topic estimator:** #167. 5. **Build event intelligence and posterior networks:** #170 and #172. diff --git a/scripts/validate_documentation.py b/scripts/validate_documentation.py index 121c6164..a2f3b113 100644 --- a/scripts/validate_documentation.py +++ b/scripts/validate_documentation.py @@ -8,6 +8,7 @@ from pathlib import Path ROOT = Path(__file__).resolve().parents[1] +PRODUCT_TECHNICAL_GAP_BASELINE = "docs/product-technical-gap-baseline.md" REQUIRED_FILES = ( "DOCUMENTATION.md", @@ -41,7 +42,7 @@ "docs/adr/0015-autonomous-development-review-and-merge-authority.md", "docs/adr/0016-tdt-chronos-event-intelligence-boundary.md", "docs/product/prd-v0.4-approved.md", - "docs/product-technical-gap-baseline.md", + PRODUCT_TECHNICAL_GAP_BASELINE, "docs/roadmaps/2026-08-05-tepp-delivery-roadmap.md", "docs/superpowers/plans/2026-08-05-temporal-event-foundation.md", "docs/research/standards-and-literature.md", @@ -59,6 +60,24 @@ MARKDOWN_LINK = re.compile( r'(?[^)\s]+)(?:\s+"[^"]*")?\)' ) +PROTECTED_MAIN_SHA = re.compile( + r"\*\*Protected-main evidence:\*\*\s*`(?P[0-9a-f]{40})`" +) +SNAPSHOT_STAMP = re.compile( + r"\*\*Snapshot:\*\*\s*(?P\d{4}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2}Z)" +) +INVENTORY_ROW = re.compile( + r"^\|\s*#(?P\d+)\s*\|\s*`(?P[0-9a-f]{40})`\s*\|\s*" + r"(?Ptrue|false)\s*\|", + re.MULTILINE, +) +OPEN_PR_COUNT = re.compile( + r"\|\s*Open pull requests\s*\|\s*\*\*(?P\d+)\*\*" +) +QUEUED_CHECKS_AS_SHIPPED = re.compile( + r"queued Checks[^\n]{0,80}implemented-main", + re.IGNORECASE, +) ADR_TABLE_ROW = re.compile(r"^\|\s*\[(?P\d{4})\]", re.MULTILINE) ADR_FILE_NAME = re.compile(r"^(?P\d{4})-[a-z0-9-]+\.md$") ADR_DECISION_STATUS = re.compile( @@ -80,7 +99,7 @@ CANONICAL_LINKS = ( "docs/product/prd-v0.4-approved.md", - "docs/product-technical-gap-baseline.md", + PRODUCT_TECHNICAL_GAP_BASELINE, "docs/DOCUMENTATION_ASSESSMENT.md", "docs/TRD.md", "ARCHITECTURE.md", @@ -113,18 +132,18 @@ def markdown_files() -> list[Path]: return sorted(path for path in ROOT.rglob("*.md") if ".git" not in path.parts) -def validate_required_files() -> None: +def validate_required_files(root: Path = ROOT) -> None: """Require the approved governance, product, and technical documentation baseline.""" - missing = [path for path in REQUIRED_FILES if not (ROOT / path).is_file()] + missing = [path for path in REQUIRED_FILES if not (root / path).is_file()] if missing: raise AssertionError(f"missing required documentation: {missing}") -def validate_documentation_map() -> None: +def validate_documentation_map(root: Path = ROOT) -> None: """Require cross-cutting canonical documents to be discoverable from the root map.""" - documentation = (ROOT / "DOCUMENTATION.md").read_text(encoding="utf-8") + documentation = (root / "DOCUMENTATION.md").read_text(encoding="utf-8") link_targets = { match.group("target") for match in MARKDOWN_LINK.finditer(documentation) } @@ -135,6 +154,42 @@ def validate_documentation_map() -> None: ) +def validate_product_technical_gap_baseline(root: Path = ROOT) -> None: + """Require a dated live gap register that does not promote queued Checks.""" + + path = root / PRODUCT_TECHNICAL_GAP_BASELINE + if not path.is_file(): + raise AssertionError( + f"missing required documentation: ['{PRODUCT_TECHNICAL_GAP_BASELINE}']" + ) + text = path.read_text(encoding="utf-8") + failures: list[str] = [] + if SNAPSHOT_STAMP.search(text) is None: + failures.append("gap baseline lacks a dated UTC snapshot stamp") + if PROTECTED_MAIN_SHA.search(text) is None: + failures.append("gap baseline lacks a 40-character protected-main SHA") + if "Closure evidence" not in text: + failures.append("gap baseline lacks buyer-gap closure evidence") + if "Exact current head" not in text: + failures.append("gap baseline lacks an exact-head open-PR inventory") + if QUEUED_CHECKS_AS_SHIPPED.search(text) is not None: + failures.append("gap baseline treats queued Checks as implemented-main") + inventory = list(INVENTORY_ROW.finditer(text)) + if not inventory: + failures.append("gap baseline open-PR inventory has no exact-head rows") + count_match = OPEN_PR_COUNT.search(text) + if count_match is None: + failures.append("gap baseline lacks an open pull-request count") + elif count_match.group("count") != str(len(inventory)): + failures.append( + "gap baseline open-PR count " + f"{count_match.group('count')} does not match inventory " + f"{len(inventory)}" + ) + if failures: + raise AssertionError("\n".join(failures)) + + def validate_adr_graph() -> None: """Require every numbered ADR to be indexed and carry unambiguous authority metadata.""" @@ -237,6 +292,7 @@ def main() -> None: validate_required_files() validate_documentation_map() + validate_product_technical_gap_baseline() validate_adr_graph() validate_markdown() validate_workflows() diff --git a/tests/quality/test_product_technical_gap_baseline.py b/tests/quality/test_product_technical_gap_baseline.py new file mode 100644 index 00000000..5b900039 --- /dev/null +++ b/tests/quality/test_product_technical_gap_baseline.py @@ -0,0 +1,141 @@ +"""Contracts for the live product/technical gap baseline.""" + +from __future__ import annotations + +import tempfile +import unittest +from pathlib import Path + +from scripts import validate_documentation as docs + + +REPOSITORY_ROOT = Path(__file__).resolve().parents[2] +BASELINE_PATH = docs.PRODUCT_TECHNICAL_GAP_BASELINE +VALID_SHA = "c45be17a9dbce95ef81cee230e9d128abc7160ac" +VALID_HEAD = "a" * 40 + + +def valid_baseline(*, count: int = 1, extra: str = "") -> str: + """Return a structurally valid gap-baseline document.""" + + return ( + "# Product and Technical Gap Baseline\n\n" + "**Snapshot:** 2026-08-23T12:27:12Z\n" + f"**Protected-main evidence:** `{VALID_SHA}`\n\n" + "## Snapshot facts\n\n" + "| Signal | Snapshot evidence | Delivery implication |\n" + "|---|---:|---|\n" + f"| Open pull requests | **{count}** | Queue only. |\n\n" + "## Current open pull-request evidence\n\n" + "| PR | Exact current head | Draft | Base | Title |\n" + "|---:|---|:---:|---|---|\n" + f"| #164 | `{VALID_HEAD}` | false | main | docs |\n\n" + "## Buyer-gap register\n\n" + "| ID | Closure evidence |\n" + "|---|---|\n" + "| GAP-015 | Merge after independent review. |\n" + f"{extra}" + ) + + +class ProductTechnicalGapBaselineTests(unittest.TestCase): + """Require the baseline to be mapped, dated, and honest about queued Checks.""" + + def test_baseline_is_required_and_mapped(self) -> None: + """The canonical map and required-file set both name the live register.""" + + self.assertIn(BASELINE_PATH, docs.REQUIRED_FILES) + self.assertIn(BASELINE_PATH, docs.CANONICAL_LINKS) + documentation = (REPOSITORY_ROOT / "DOCUMENTATION.md").read_text( + encoding="utf-8" + ) + self.assertIn(f"]({BASELINE_PATH})", documentation) + + def test_live_repository_baseline_is_structurally_valid(self) -> None: + """The committed register carries a dated SHA-bound inventory.""" + + docs.validate_required_files(REPOSITORY_ROOT) + docs.validate_documentation_map(REPOSITORY_ROOT) + docs.validate_product_technical_gap_baseline(REPOSITORY_ROOT) + + def test_missing_baseline_fails_required_files_and_structure(self) -> None: + """A tree that omits the register fails both required-file and structure checks.""" + + with tempfile.TemporaryDirectory() as temporary: + root = Path(temporary) + with self.assertRaisesRegex(AssertionError, BASELINE_PATH): + docs.validate_required_files(root) + with self.assertRaisesRegex(AssertionError, BASELINE_PATH): + docs.validate_product_technical_gap_baseline(root) + + def test_map_without_baseline_link_fails(self) -> None: + """The documentation map must discover the register by markdown link.""" + + with tempfile.TemporaryDirectory() as temporary: + root = Path(temporary) + (root / "DOCUMENTATION.md").write_text( + "[PRD](docs/product/prd-v0.4-approved.md)\n", + encoding="utf-8", + ) + with self.assertRaisesRegex(AssertionError, BASELINE_PATH): + docs.validate_documentation_map(root) + + def test_valid_fixture_passes_structure_validator(self) -> None: + """A dated exact-head register with matching count is accepted.""" + + with tempfile.TemporaryDirectory() as temporary: + root = Path(temporary) + path = root / BASELINE_PATH + path.parent.mkdir(parents=True) + path.write_text(valid_baseline(), encoding="utf-8") + docs.validate_product_technical_gap_baseline(root) + + def test_missing_snapshot_sha_closure_or_inventory_fails(self) -> None: + """Structure validation refuses an undated or uninventoried register.""" + + with tempfile.TemporaryDirectory() as temporary: + root = Path(temporary) + path = root / BASELINE_PATH + path.parent.mkdir(parents=True) + path.write_text("# Empty gap register\n", encoding="utf-8") + with self.assertRaisesRegex(AssertionError, "dated UTC snapshot"): + docs.validate_product_technical_gap_baseline(root) + with self.assertRaisesRegex(AssertionError, "protected-main SHA"): + docs.validate_product_technical_gap_baseline(root) + with self.assertRaisesRegex(AssertionError, "closure evidence"): + docs.validate_product_technical_gap_baseline(root) + with self.assertRaisesRegex(AssertionError, "exact-head"): + docs.validate_product_technical_gap_baseline(root) + + def test_inventory_count_mismatch_fails(self) -> None: + """Declared open-PR count must match exact-head inventory rows.""" + + with tempfile.TemporaryDirectory() as temporary: + root = Path(temporary) + path = root / BASELINE_PATH + path.parent.mkdir(parents=True) + path.write_text(valid_baseline(count=94), encoding="utf-8") + with self.assertRaisesRegex(AssertionError, "does not match inventory"): + docs.validate_product_technical_gap_baseline(root) + + def test_queued_checks_as_implemented_main_fails(self) -> None: + """Queued Checks must not be promoted to protected-main maturity.""" + + with tempfile.TemporaryDirectory() as temporary: + root = Path(temporary) + path = root / BASELINE_PATH + path.parent.mkdir(parents=True) + path.write_text( + valid_baseline( + extra="\nqueued Checks on this PR are implemented-main.\n" + ), + encoding="utf-8", + ) + with self.assertRaisesRegex( + AssertionError, "queued Checks as implemented-main" + ): + docs.validate_product_technical_gap_baseline(root) + + +if __name__ == "__main__": # pragma: no cover + unittest.main() From b39435ffd40ebf0493055562a1c5abd452bc352a Mon Sep 17 00:00:00 2001 From: Seongho Bae Date: Sun, 23 Aug 2026 21:40:57 +0900 Subject: [PATCH 33/52] docs: drop closed duplicate #179 from live register Refresh the exact-head inventory to 93 open PRs after closing the duplicate gap-baseline snapshot. PR #164 remains the single authority. --- CHANGELOG.md | 8 ++++---- docs/product-technical-gap-baseline.md | 23 +++++++++++------------ 2 files changed, 15 insertions(+), 16 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 29505d90..2a5957a2 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -82,11 +82,11 @@ All notable changes to TEPP are documented here. The format follows Keep a Chang ### Changed -- Refreshed the live gap-baseline inventory to the 2026-08-23T12:27:12Z GitHub - snapshot (94 open PRs / 24 drafts / 12 issues; protected-main +- Refreshed the live gap-baseline inventory to the 2026-08-23T12:39:45Z GitHub + snapshot (93 open PRs / 24 drafts / 12 issues; protected-main `c45be17a9dbce95ef81cee230e9d128abc7160ac`), naming PR #164 as the single - register authority and recording that stacked-merged heads are not - implemented-main. + register authority after closing duplicate PR #179, and recording that + stacked-merged heads are not implemented-main. - Clarified ADR 0001 so it owns Rust-first numerical/reference-backend authority while ADR 0011 owns cross-service MSA/service authority. - Clarified ADR 0006 so it owns GPU/VRAM and model-credential boundaries; ADR 0010 now owns LLM orchestration policy and ADR 0015 owns autonomous repository-write/review/merge authority. - Expanded ADR 0002–0005 and 0009–0011 with explicit implementation maturity, alternatives, failure/recovery, compatibility/migration, verification, and rollback/supersession boundaries where they were previously implicit. diff --git a/docs/product-technical-gap-baseline.md b/docs/product-technical-gap-baseline.md index 7fc5b6a0..83eac4a0 100644 --- a/docs/product-technical-gap-baseline.md +++ b/docs/product-technical-gap-baseline.md @@ -2,10 +2,10 @@ **Status:** Live delivery baseline **Product:** Temporal Event Psychometrics Platform (TEPP) -**Snapshot:** 2026-08-23T12:27:12Z +**Snapshot:** 2026-08-23T12:39:45Z **Protected-main evidence:** `c45be17a9dbce95ef81cee230e9d128abc7160ac` **Workspace version on protected main:** `0.1.0` -**Canonical gap-baseline authority:** [PR #164](https://github.com/ContextualWisdomLab/TEPP/pull/164); [PR #179](https://github.com/ContextualWisdomLab/TEPP/pull/179) is a duplicate snapshot and is not a second protected-main register. +**Canonical gap-baseline authority:** [PR #164](https://github.com/ContextualWisdomLab/TEPP/pull/164). Duplicate [PR #179](https://github.com/ContextualWisdomLab/TEPP/pull/179) was closed at 2026-08-23T12:39:22Z and is not a second protected-main register. ## Purpose @@ -26,18 +26,18 @@ GitHub state before any customer, release, certification, or valuation claim. |---|---:|---| | Protected-main SHA | `c45be17a9dbce95ef81cee230e9d128abc7160ac` | All as-built claims are bounded to this commit. | | Workspace members | 10 Rust crates | The foundation is modular, but the approved target contains additional semantic, estimator, compute, psychometric, event-intelligence, network, interpretation, artifact, and visual boundaries. | -| Open pull requests | **94** | The queue is itself a release blocker and requires consolidation. | +| Open pull requests | **93** | The queue is itself a release blocker and requires consolidation. | | Draft pull requests | **24** | Most queued work is not independently review-ready. | -| Non-draft pull requests | **70** | A non-draft state is not a qualifying review or required-check result. | +| Non-draft pull requests | **69** | A non-draft state is not a qualifying review or required-check result. | | Open product issues | **12** | Issue #156 plus the product-completion program #166–#176. | -| Duplicate gap-baseline PRs | **#164** (authority) and **#179** (duplicate) | Only one live register may be merged; queued Checks on either PR are not protected-main evidence. | +| Duplicate gap-baseline PRs | **#164** (authority); **#179** closed as superseded | Only one live register remains; queued Checks on #164 are not protected-main evidence. | | Current package version | `0.1.0` | No supported product release is established by the repository version alone. | The pull-request counts come from the live GitHub search at this snapshot. The full exact-head classification is owned by [issue #175](https://github.com/ContextualWisdomLab/TEPP/issues/175); this file keeps the buyer-level summary while the exact-head register below records the -current 94-row volatile queue. Passing or queued Checks on an open PR never +current 93-row volatile queue. Passing or queued Checks on an open PR never promote that PR to implemented-main. ## Current open pull-request evidence @@ -56,10 +56,9 @@ Checks, and branch rules immediately before every mutation. | #182 | `2d4d6bf9fdfa1c55d2cc3b2f36ba6a1d0523c8a8` | true | agent/psychometric-predetermined-later-t0var | feat(psychometric): recover Driver lagged covariance of predetermined T0VAR | | #181 | `542806b747eea55c9eab705c5dd3479a3e1c63b6` | true | agent/psychometric-posterior-esem-input | feat(psychometric): recover Driver later-occasion variance of predetermined T0VAR | | #180 | `ad5944a9d759f6012bd328793692e571004d8f70` | false | main | fix(transport): hide raw provider exception details | -| #179 | `17623ea2168c6777b2bfebe03ec09c094005b952` | false | main | docs: add product technical gap baseline | | #177 | `580d45206536bf2f7deba327ffafb96a69ba7260` | false | main | fix(workflow): pin scheduler budget hardening | | #165 | `34083c3f5d6637cf1665a29dac45fbf67a74d5dd` | false | main | feat: route hourly product agents through contextual orchestrator | -| #164 | `38cc7698e508bcf91bc8be7b4371e5fd104b1a1c` | false | main | docs: define TEPP product completion and technical gap baseline | +| #164 | `5e923f065e378324ef8ad94a1d88e00b5e894964` | false | main | docs: define TEPP product completion and technical gap baseline | | #157 | `cce90a11ac920244253f0f6a1c77b82e75e1cd44` | false | main | feat(api): publish completed analysis-run result contract | | #155 | `02c009c16e6a9c6fee3237224ed6a17cbc4169e1` | false | main | feat(api): admit LineageWeave as a modular analysis-run consumer | | #154 | `a7a1bdf96a6759f11aed9284b73319ed94b82fd2` | false | main | ci(rust): refresh branch coverage compiler baseline | @@ -144,7 +143,7 @@ Checks, and branch rules immediately before every mutation. | #49 | `6f95142a6087d289eee3b513aee3233934b36ca4` | false | main | feat(psychometric): posterior ESEM input gates with true-parameter RMSE | | #48 | `73403994a3fb386126e8276b7ab5160355063341` | false | main | feat(topic): logistic-normal ALR coordinates with true-parameter RMSE | -The exact-head register, counts, and protected-main SHA were fetched from the live GitHub REST API at `2026-08-23T12:27:12Z`. Review decisions, required Checks, and mergeability remain volatile; re-read them immediately before every mutation. This snapshot is not merge authorization and does not treat queued or passing Checks as shipped protected-main behavior. +The exact-head register, counts, and protected-main SHA were fetched from the live GitHub REST API at `2026-08-23T12:39:45Z`. Review decisions, required Checks, and mergeability remain volatile; re-read them immediately before every mutation. This snapshot is not merge authorization and does not treat queued or passing Checks as shipped protected-main behavior. ## Authority and derivation @@ -208,10 +207,10 @@ visual workspace, or a supported multi-tenant release. | GAP-009 | Topic association and cluster outputs lack posterior-valid estimation, uncertainty, edge stability, and consensus communities. | `accepted-target` | product vertical | `c45be17` (network primitives only) | [#172](https://github.com/ContextualWisdomLab/TEPP/issues/172) / [PR #71](https://github.com/ContextualWisdomLab/TEPP/pull/71) | `90b531e` | Valid log-ratio coordinates, interval/stability-bearing edges, repeated Leiden consensus, known-truth network/cluster recovery, and reproducible exports. | | GAP-010 | Buyers lack coordinated accessible visual analytics and exact-value export workflows. | `accepted-target` | product vertical | `c45be17` (no visual workspace) | [#173](https://github.com/ContextualWisdomLab/TEPP/issues/173) | `—` (Figma work not started) | Real Figma File ID in ADR, Storybook/design tokens, ten PRD views, exact-value tables, accessible interaction/print/PDF states, provenance, and source-consistent exports. | | GAP-011 | TEPP is not yet an operable multi-tenant service or supported release. | `accepted-target` | product vertical | `c45be17` (library contracts only) | [#174](https://github.com/ContextualWisdomLab/TEPP/issues/174) | `—` (issue program; no current implementation PR) | Durable queue/storage, OIDC/RLS/purpose controls, OpenTelemetry/SLOs, load/recovery, migrations, signed release/SBOM/provenance, assurance evidence, and support policy. | -| GAP-012 | The 94-PR queue obscures authority, repeatedly stales exact-head evidence, and fragments product boundaries. | `partial` | release blocker | `c45be17` (protected-main truth) | [#175](https://github.com/ContextualWisdomLab/TEPP/issues/175) | `—` (live queue program) | Every PR classified; unique landing vehicles; compatible slices folded; superseded work closed with provenance; scheduler prioritizes consolidation; queue reaches zero before GA. | +| GAP-012 | The 93-PR queue obscures authority, repeatedly stales exact-head evidence, and fragments product boundaries. | `partial` | release blocker | `c45be17` (protected-main truth) | [#175](https://github.com/ContextualWisdomLab/TEPP/issues/175) | `—` (live queue program) | Every PR classified; unique landing vehicles; compatible slices folded; superseded work closed with provenance; scheduler prioritizes consolidation; queue reaches zero before GA. | | GAP-013 | Evidence-grounded LLM interpretation is routed but not executed and validated as a production interpreter/verifier port. | `partial` | active integration | `c45be17` (routing and refusal contracts only) | [#176](https://github.com/ContextualWisdomLab/TEPP/issues/176), [PR #69](https://github.com/ContextualWisdomLab/TEPP/pull/69), [PR #165](https://github.com/ContextualWisdomLab/TEPP/pull/165) | `e780e1d` / `34083c3` | Contextual-orchestrator execution, evidence citations, verifier refusals, comparable-budget ablations, provider eligibility/fallback, abstention, live/offline contract tests, and no numerical-authority escalation. | | GAP-014 | README/TRD and some PR descriptions lag protected-main and live queue reality. | `partial` | documentation drift | `c45be17` (documentation is not fully synchronized) | [#175](https://github.com/ContextualWisdomLab/TEPP/issues/175) | `—` (queue-consolidation work) | Reconcile README, TRD, traceability, ADR maturity, CHANGELOG, preferred-merge declarations, and exact protected-main evidence. | -| GAP-015 | There was no canonical live product/buyer-gap register tied to documentation validation. | `active-PR` | landing vehicle | `c45be17` (no live gap register) | [PR #164](https://github.com/ContextualWisdomLab/TEPP/pull/164) (authority); [PR #179](https://github.com/ContextualWisdomLab/TEPP/pull/179) is a duplicate to close after #164 lands | `38cc7698e508` | Merge this document and its validator/map/quality-test integration after exact-head checks and independent review. Passing Checks on #164 or #179 are not implemented-main. | +| GAP-015 | There was no canonical live product/buyer-gap register tied to documentation validation. | `active-PR` | landing vehicle | `c45be17` (no live gap register) | [PR #164](https://github.com/ContextualWisdomLab/TEPP/pull/164) (authority); closed [PR #179](https://github.com/ContextualWisdomLab/TEPP/pull/179) is not a second register | `5e923f065e37` | Merge this document and its validator/map/quality-test integration after exact-head checks and independent review. Passing Checks on #164 are not implemented-main. | | GAP-016 | Hourly PR maintenance used an older central scheduler revision whose per-repository sweep budgets could amplify the queued review workload. | `active-PR` | operability hardening | `c45be17` (caller pin before central budget hardening) | [PR #177](https://github.com/ContextualWisdomLab/TEPP/pull/177) | `580d45206536` | The change pins a verified central revision immutably; closure still requires exact-head hosted Checks, resolved threads, and independent review. | | GAP-017 | Accepted analysis runs have a terminal DTO, and cutoff-safe execution exists only on the #157 head after stacked PR #178 merged into that branch. | `active-PR` | product vertical | `c45be17` (accepted receipt only) | [#166](https://github.com/ContextualWisdomLab/TEPP/issues/166) / [PR #157](https://github.com/ContextualWisdomLab/TEPP/pull/157) | `cce90a11ac92` | Exact availability cutoff, snapshot binding, multiple-membership preservation, digest integrity, redacted no-eligible failure, and realistic end-to-end tests on protected main. Closed stacked PR #178 is not implemented-main. | @@ -241,7 +240,7 @@ because its head can change after this file is committed. | PR | Current delivery role | Required next action | |---:|---|---| | [#164](https://github.com/ContextualWisdomLab/TEPP/pull/164) | Canonical product/technical gap baseline | Re-run exact-head documentation/repository checks and obtain independent review. | -| [#179](https://github.com/ContextualWisdomLab/TEPP/pull/179) | Duplicate gap-baseline snapshot | Close as superseded after #164 is the single authority; do not merge both. | +| [#179](https://github.com/ContextualWisdomLab/TEPP/pull/179) | Duplicate gap-baseline snapshot | Closed as superseded at 2026-08-23T12:39:22Z; do not reopen as a second register. | | [#177](https://github.com/ContextualWisdomLab/TEPP/pull/177) | Central scheduler budget-hardening pin | Re-run exact-head Checks and obtain independent review before relying on the hourly caller. | | [#165](https://github.com/ContextualWisdomLab/TEPP/pull/165) | Hourly agent routing through contextual-orchestrator | Ensure queue-consolidation policy from #175 prevents unrelated micro-PR growth. | | [#157](https://github.com/ContextualWisdomLab/TEPP/pull/157) | Terminal result contract for #156, including folded cutoff-safe execution from closed #178 | Complete exact-head review/check gates; keep #156 open until protected-main verification. | From 1467a5e556afd63efdf3e34ec77704228f6bbfdd Mon Sep 17 00:00:00 2001 From: Seongho Bae Date: Sun, 23 Aug 2026 22:33:01 +0900 Subject: [PATCH 34/52] docs: bind gap heads to the live 95-PR register Refresh the exact-head inventory to 2026-08-23T13:31:34Z and set each buyer-gap current head SHA to that snapshot, including #164, #48, #50, #63, and #157. Queued Checks remain not implemented-main. --- CHANGELOG.md | 11 +++--- docs/product-technical-gap-baseline.md | 46 ++++++++++++++------------ 2 files changed, 30 insertions(+), 27 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 2a5957a2..7664fdbf 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -82,11 +82,12 @@ All notable changes to TEPP are documented here. The format follows Keep a Chang ### Changed -- Refreshed the live gap-baseline inventory to the 2026-08-23T12:39:45Z GitHub - snapshot (93 open PRs / 24 drafts / 12 issues; protected-main - `c45be17a9dbce95ef81cee230e9d128abc7160ac`), naming PR #164 as the single - register authority after closing duplicate PR #179, and recording that - stacked-merged heads are not implemented-main. +- Refreshed the live gap-baseline inventory to the 2026-08-23T13:31:34Z GitHub + snapshot (95 open PRs / 26 drafts / 12 issues; protected-main + `c45be17a9dbce95ef81cee230e9d128abc7160ac`), binding each buyer-gap current + head SHA to that exact-head register, naming PR #164 as the single register + authority after closing duplicate PR #179, and recording that stacked-merged + heads are not implemented-main. - Clarified ADR 0001 so it owns Rust-first numerical/reference-backend authority while ADR 0011 owns cross-service MSA/service authority. - Clarified ADR 0006 so it owns GPU/VRAM and model-credential boundaries; ADR 0010 now owns LLM orchestration policy and ADR 0015 owns autonomous repository-write/review/merge authority. - Expanded ADR 0002–0005 and 0009–0011 with explicit implementation maturity, alternatives, failure/recovery, compatibility/migration, verification, and rollback/supersession boundaries where they were previously implicit. diff --git a/docs/product-technical-gap-baseline.md b/docs/product-technical-gap-baseline.md index 83eac4a0..b7655677 100644 --- a/docs/product-technical-gap-baseline.md +++ b/docs/product-technical-gap-baseline.md @@ -2,7 +2,7 @@ **Status:** Live delivery baseline **Product:** Temporal Event Psychometrics Platform (TEPP) -**Snapshot:** 2026-08-23T12:39:45Z +**Snapshot:** 2026-08-23T13:31:34Z **Protected-main evidence:** `c45be17a9dbce95ef81cee230e9d128abc7160ac` **Workspace version on protected main:** `0.1.0` **Canonical gap-baseline authority:** [PR #164](https://github.com/ContextualWisdomLab/TEPP/pull/164). Duplicate [PR #179](https://github.com/ContextualWisdomLab/TEPP/pull/179) was closed at 2026-08-23T12:39:22Z and is not a second protected-main register. @@ -26,8 +26,8 @@ GitHub state before any customer, release, certification, or valuation claim. |---|---:|---| | Protected-main SHA | `c45be17a9dbce95ef81cee230e9d128abc7160ac` | All as-built claims are bounded to this commit. | | Workspace members | 10 Rust crates | The foundation is modular, but the approved target contains additional semantic, estimator, compute, psychometric, event-intelligence, network, interpretation, artifact, and visual boundaries. | -| Open pull requests | **93** | The queue is itself a release blocker and requires consolidation. | -| Draft pull requests | **24** | Most queued work is not independently review-ready. | +| Open pull requests | **95** | The queue is itself a release blocker and requires consolidation. | +| Draft pull requests | **26** | Most queued work is not independently review-ready. | | Non-draft pull requests | **69** | A non-draft state is not a qualifying review or required-check result. | | Open product issues | **12** | Issue #156 plus the product-completion program #166–#176. | | Duplicate gap-baseline PRs | **#164** (authority); **#179** closed as superseded | Only one live register remains; queued Checks on #164 are not protected-main evidence. | @@ -37,7 +37,7 @@ The pull-request counts come from the live GitHub search at this snapshot. The full exact-head classification is owned by [issue #175](https://github.com/ContextualWisdomLab/TEPP/issues/175); this file keeps the buyer-level summary while the exact-head register below records the -current 93-row volatile queue. Passing or queued Checks on an open PR never +current 95-row volatile queue. Passing or queued Checks on an open PR never promote that PR to implemented-main. ## Current open pull-request evidence @@ -49,17 +49,19 @@ Checks, and branch rules immediately before every mutation. | PR | Exact current head | Draft | Base | Title | |---:|---|:---:|---|---| +| #189 | `0836c359fab7878084ac3a711920550eb6cacb0d` | true | agent/psychometric-standardised-discrete-diffusion | feat(psychometric): recover Driver p.16 DIFFUSIONstd after positive asymDIFFUSION | +| #188 | `444304d2d702cceb47cd4fdf695ba630d7e7c83a` | true | agent/psychometric-standardised-discrete-drift | feat(psychometric): recover Driver p.16 discreteDIFFUSIONstd after positive asymDIFFUSION | | #187 | `6afd048d1a78bd7e1f68555182ec6a1f0db9ea8c` | true | agent/psychometric-predetermined-later-start-later-t0var | feat(psychometric): recover Driver p.16 discreteDRIFTstd after positive asymDIFFUSION | | #185 | `69ffec6425863b2842094ff1b1d6c07d8eee6b5b` | true | agent/psychometric-predetermined-later-lagged-t0var | feat(psychometric): recover Driver later-start later-occasion variance of predetermined T0VAR | | #184 | `6b93147e668ff414240f3ea94997f2937c0817f1` | true | agent/psychometric-predetermined-initial-t0var | feat(psychometric): recover Driver later-start lagged covariance of predetermined T0VAR | | #183 | `c10097be0f6f4ff8dd8e6db21dce8818630fe17f` | true | agent/psychometric-predetermined-lagged-t0var | feat(psychometric): recover Driver first-occasion variance of predetermined T0VAR | | #182 | `2d4d6bf9fdfa1c55d2cc3b2f36ba6a1d0523c8a8` | true | agent/psychometric-predetermined-later-t0var | feat(psychometric): recover Driver lagged covariance of predetermined T0VAR | | #181 | `542806b747eea55c9eab705c5dd3479a3e1c63b6` | true | agent/psychometric-posterior-esem-input | feat(psychometric): recover Driver later-occasion variance of predetermined T0VAR | -| #180 | `ad5944a9d759f6012bd328793692e571004d8f70` | false | main | fix(transport): hide raw provider exception details | +| #180 | `8e4d70a97bc1e152adb10d1b680a5ca4e2912f23` | false | main | fix(transport): hide raw provider exception details | | #177 | `580d45206536bf2f7deba327ffafb96a69ba7260` | false | main | fix(workflow): pin scheduler budget hardening | | #165 | `34083c3f5d6637cf1665a29dac45fbf67a74d5dd` | false | main | feat: route hourly product agents through contextual orchestrator | -| #164 | `5e923f065e378324ef8ad94a1d88e00b5e894964` | false | main | docs: define TEPP product completion and technical gap baseline | -| #157 | `cce90a11ac920244253f0f6a1c77b82e75e1cd44` | false | main | feat(api): publish completed analysis-run result contract | +| #164 | `b39435ffd40ebf0493055562a1c5abd452bc352a` | false | main | docs: define TEPP product completion and technical gap baseline | +| #157 | `7402745cfb0c27964f286c38a2efd7042c2320ff` | false | main | feat(api): publish completed analysis-run result contract | | #155 | `02c009c16e6a9c6fee3237224ed6a17cbc4169e1` | false | main | feat(api): admit LineageWeave as a modular analysis-run consumer | | #154 | `a7a1bdf96a6759f11aed9284b73319ed94b82fd2` | false | main | ci(rust): refresh branch coverage compiler baseline | | #153 | `e7c871bc2f5e6023002ceeea30217130561842e1` | false | main | feat(membership): refuse location as entity identity or language | @@ -129,9 +131,9 @@ Checks, and branch rules immediately before every mutation. | #68 | `6a98c812ef8e621e1bc1c46a615296b39f0bae33` | false | main | feat(event): score TDT tracks with pair precision and switch rate | | #67 | `45b272d2498ecff128d75621c88c1e7d6eb1400b` | false | main | feat(model): statistical Pareto K gates refuse LLM numerical authority | | #66 | `380be3f33f798cc8648a9dc9f24b85011f9e0468` | false | main | feat(event): score TDT mention links with precision and recall | -| #65 | `54bb76dd3d25ae872d1555b78e42fa80a83b1240` | false | main | feat(event): score first-story detections with FAR and miss rates | +| #65 | `74351f398d67df590019049ab85a7f649495b860` | false | main | feat(event): score first-story detections with FAR and miss rates | | #64 | `c11adce997d4f3e462f50711211af9f051e747b0` | false | main | feat(event): score mention confidence with a known-truth Brier rule | -| #63 | `f6e7fd937579e0e89174498967efb882af18e158` | false | main | feat(corpus): refuse TF-IDF and BM25 as inferential weights | +| #63 | `0735ca67abcf5c6c2fd591a52d29067e5f16215a` | false | main | feat(corpus): refuse TF-IDF and BM25 as inferential weights | | #62 | `7a16e579814ef06517f82fd2b41ebb27568eb960` | false | main | feat(simulation): exclude delayed documents before they are available | | #61 | `c7f094cf17b5d0be0aa9270b2d397da4d2db851d` | false | main | feat(temporal): refuse uncertain availability past knowledge cutoff | | #60 | `40ede67614599ba21495fea024d4493d3af9fbb3` | false | main | feat(relation): refuse association and precedence as causation | @@ -139,11 +141,11 @@ Checks, and branch rules immediately before every mutation. | #58 | `431561a6c422660c618f82a241e5a4b320653378` | false | main | feat(evidence): keep embedded image URIs as positional non-lexical units | | #57 | `b76e38393e932873ec2aed682ab539ee61828537` | false | main | feat(validation): exact-head claim promotion gates | | #51 | `1801501c4d7c5be720d24aba954280fbc9068612` | false | main | feat(compute): VRAM budget types with CPU f64 fallback | -| #50 | `8f26c2f82bd6fc579baa3e72046f70d1b4973269` | false | main | feat(event): refuse TDT/CHRONOS outputs as state transitions | +| #50 | `d4cd08341e8dca8475542cf9f3b46a1f5bae5ea3` | false | main | feat(event): refuse TDT/CHRONOS outputs as state transitions | | #49 | `6f95142a6087d289eee3b513aee3233934b36ca4` | false | main | feat(psychometric): posterior ESEM input gates with true-parameter RMSE | -| #48 | `73403994a3fb386126e8276b7ab5160355063341` | false | main | feat(topic): logistic-normal ALR coordinates with true-parameter RMSE | +| #48 | `b7214a8e9dc140e622124fc046d9aa5147dd7b27` | false | main | feat(topic): logistic-normal ALR coordinates with true-parameter RMSE | -The exact-head register, counts, and protected-main SHA were fetched from the live GitHub REST API at `2026-08-23T12:39:45Z`. Review decisions, required Checks, and mergeability remain volatile; re-read them immediately before every mutation. This snapshot is not merge authorization and does not treat queued or passing Checks as shipped protected-main behavior. +The exact-head register, counts, and protected-main SHA were fetched from the live GitHub REST API at `2026-08-23T13:31:34Z`. Review decisions, required Checks, and mergeability remain volatile; re-read them immediately before every mutation. This snapshot is not merge authorization and does not treat queued or passing Checks as shipped protected-main behavior. ## Authority and derivation @@ -194,25 +196,25 @@ visual workspace, or a supported multi-tenant release. | ID | Buyer-visible gap | Maturity | Delivery status | Protected-main authority | Current delivery authority | Current head SHA | Closure evidence | |---|---|---|---|---|---|---|---| -| GAP-001 | Submission can produce a durable accepted receipt, but protected `main` lacks the separate deterministic terminal-result lifecycle. | `active-PR` | landing vehicle | `c45be17` (accepted receipt only) | [#156](https://github.com/ContextualWisdomLab/TEPP/issues/156) / [PR #157](https://github.com/ContextualWisdomLab/TEPP/pull/157) | `cce90a11ac92` | Exact request/result/snapshot/cutoff/model/profile binding, typed terminal failures, deterministic retrieval, current-head checks, and qualifying review. Cutoff-safe execution from closed stacked PR #178 is on this head only and is not implemented-main. | +| GAP-001 | Submission can produce a durable accepted receipt, but protected `main` lacks the separate deterministic terminal-result lifecycle. | `active-PR` | landing vehicle | `c45be17` (accepted receipt only) | [#156](https://github.com/ContextualWisdomLab/TEPP/issues/156) / [PR #157](https://github.com/ContextualWisdomLab/TEPP/pull/157) | `7402745cfb0c` | Exact request/result/snapshot/cutoff/model/profile binding, typed terminal failures, deterministic retrieval, current-head checks, and qualifying review. Cutoff-safe execution from closed stacked PR #178 is on this head only and is not implemented-main. | | GAP-002 | LineageWeave and other modular consumers cannot yet rely on the complete protected-main HTTP evidence/result boundary. | `active-PR` | landing vehicle | `c45be17` (loopback naruon listener from merged PR #107; versioned API contracts) | [#155](https://github.com/ContextualWisdomLab/TEPP/pull/155) | `02c009c16e6a` | Merge the live consumer contract after exact-head review/Checks. Closed stacked PRs #158 and #159 were folded into this head; they are not protected-main evidence. | | GAP-003A | Immutable evidence cannot yet be submitted to a durable validation run that produces buyer-usable scientific acceptance evidence. | `accepted-target` | product-completion | `c45be17` (validation metrics are library-level only) | [#166](https://github.com/ContextualWisdomLab/TEPP/issues/166) | `—` (issue program; no current implementation PR) | Compose/CLI/API execution must bind immutable evidence, cutoffs, model configuration, validation metrics, and reproducibility manifests to one idempotent run. | | GAP-003B | Scientific result artifacts cannot yet be persisted, restarted, and recovered as one supported buyer workflow. | `accepted-target` | product-completion | `c45be17` (persistence contracts lack E2E recovery) | [#166](https://github.com/ContextualWisdomLab/TEPP/issues/166) | `—` (issue program; no current implementation PR) | Durable storage, migration/rollback, restart/recovery, artifact digest verification, and terminal retrieval must pass against a real Compose deployment. | | GAP-003C | The persistence slice classifies concurrent-write SQLSTATEs, but has no measured hot-partition detection, routing, or mitigation for tenant/result workloads. | `accepted-target` | product-completion | `c45be17` (conflict classification only; no measured partition control) | [#166](https://github.com/ContextualWisdomLab/TEPP/issues/166) | `—` (issue program; no current implementation PR) | A real Compose/PostgreSQL workload identifies hot keys and partition skew, applies bounded tenant/time or result routing without weakening 3NF or temporal authority, and proves conflict rate, latency, recovery, and migration/rollback behavior under load. | -| GAP-004 | The central shared-latent temporal/relational topic estimator is absent. | `accepted-target` | product vertical | `c45be17` (no production estimator) | [#167](https://github.com/ContextualWisdomLab/TEPP/issues/167) / [PR #48](https://github.com/ContextualWisdomLab/TEPP/pull/48) | `45224e5` | Rust CPU `f64` fitting, sparse bounded parallelism, posterior artifacts, convergence, true-parameter RMSE/bias/coverage, and real candidate-K fitting. | +| GAP-004 | The central shared-latent temporal/relational topic estimator is absent. | `accepted-target` | product vertical | `c45be17` (no production estimator) | [#167](https://github.com/ContextualWisdomLab/TEPP/issues/167) / [PR #48](https://github.com/ContextualWisdomLab/TEPP/pull/48) | `b7214a8e9dc1` | Rust CPU `f64` fitting, sparse bounded parallelism, posterior artifacts, convergence, true-parameter RMSE/bias/coverage, and real candidate-K fitting. | | GAP-005 | Real multilingual documents are not yet transformed into validated exact-span semantic units and versioned shared concepts. | `accepted-target` | product vertical | `c45be17` (evidence spans exist without full semantic pipeline) | [#168](https://github.com/ContextualWisdomLab/TEPP/issues/168) | `—` (PR #53 merged only onto a non-main maintenance branch and is not implemented-main) | Unicode/layout/language-tailored processing, unknown-concept review, multilingual calibration/invariance, image-position evidence, and prompt-injection tests. | -| GAP-006 | Posterior topic measurements cannot yet be fitted through a complete cross-classified longitudinal ESEM/DSEM engine. | `accepted-target` | product vertical | `c45be17` (temporal and membership primitives only) | [#169](https://github.com/ContextualWisdomLab/TEPP/issues/169) / [PR #119](https://github.com/ContextualWisdomLab/TEPP/pull/119) | `2ea08a8` | Plausible-value/joint uncertainty, invariance, irregular event time, within/between separation, multiple membership, true-parameter recovery, and causal-claim refusal. | -| GAP-007 | TDT detection/tracking and CHRONOS schema/forecast/temporal reasoning remain isolated bounded gates rather than one calibrated product workflow. | `accepted-target` | product vertical | `c45be17` (event/time primitives only) | [#170](https://github.com/ContextualWisdomLab/TEPP/issues/170) / [PR #70](https://github.com/ContextualWisdomLab/TEPP/pull/70) | `dae7e55` | Span-grounded mentions, calibrated TDT metrics, schema/forecast hypothesis states, interval consistency, known-truth recovery, persistence, and exports. | -| GAP-008 | GPU support is policy-only; no production estimator kernel has real hardware parity or declared VRAM evidence. | `accepted-target` | product vertical | `c45be17` (VRAM policy only) | [#171](https://github.com/ContextualWisdomLab/TEPP/issues/171) / [PR #51](https://github.com/ContextualWisdomLab/TEPP/pull/51) | `240979b` | Real CUDA/portable backend execution, CPU parity, streamed memory, bounded OOM/fallback, hardware profiles, telemetry, and no skipped-support claim. | -| GAP-009 | Topic association and cluster outputs lack posterior-valid estimation, uncertainty, edge stability, and consensus communities. | `accepted-target` | product vertical | `c45be17` (network primitives only) | [#172](https://github.com/ContextualWisdomLab/TEPP/issues/172) / [PR #71](https://github.com/ContextualWisdomLab/TEPP/pull/71) | `90b531e` | Valid log-ratio coordinates, interval/stability-bearing edges, repeated Leiden consensus, known-truth network/cluster recovery, and reproducible exports. | +| GAP-006 | Posterior topic measurements cannot yet be fitted through a complete cross-classified longitudinal ESEM/DSEM engine. | `accepted-target` | product vertical | `c45be17` (temporal and membership primitives only) | [#169](https://github.com/ContextualWisdomLab/TEPP/issues/169) / [PR #119](https://github.com/ContextualWisdomLab/TEPP/pull/119) | `47ab763d49b1` | Plausible-value/joint uncertainty, invariance, irregular event time, within/between separation, multiple membership, true-parameter recovery, and causal-claim refusal. | +| GAP-007 | TDT detection/tracking and CHRONOS schema/forecast/temporal reasoning remain isolated bounded gates rather than one calibrated product workflow. | `accepted-target` | product vertical | `c45be17` (event/time primitives only) | [#170](https://github.com/ContextualWisdomLab/TEPP/issues/170) / [PR #70](https://github.com/ContextualWisdomLab/TEPP/pull/70) | `7a1f33aa68c1` | Span-grounded mentions, calibrated TDT metrics, schema/forecast hypothesis states, interval consistency, known-truth recovery, persistence, and exports. | +| GAP-008 | GPU support is policy-only; no production estimator kernel has real hardware parity or declared VRAM evidence. | `accepted-target` | product vertical | `c45be17` (VRAM policy only) | [#171](https://github.com/ContextualWisdomLab/TEPP/issues/171) / [PR #51](https://github.com/ContextualWisdomLab/TEPP/pull/51) | `1801501c4d7c` | Real CUDA/portable backend execution, CPU parity, streamed memory, bounded OOM/fallback, hardware profiles, telemetry, and no skipped-support claim. | +| GAP-009 | Topic association and cluster outputs lack posterior-valid estimation, uncertainty, edge stability, and consensus communities. | `accepted-target` | product vertical | `c45be17` (network primitives only) | [#172](https://github.com/ContextualWisdomLab/TEPP/issues/172) / [PR #71](https://github.com/ContextualWisdomLab/TEPP/pull/71) | `2588f38281b9` | Valid log-ratio coordinates, interval/stability-bearing edges, repeated Leiden consensus, known-truth network/cluster recovery, and reproducible exports. | | GAP-010 | Buyers lack coordinated accessible visual analytics and exact-value export workflows. | `accepted-target` | product vertical | `c45be17` (no visual workspace) | [#173](https://github.com/ContextualWisdomLab/TEPP/issues/173) | `—` (Figma work not started) | Real Figma File ID in ADR, Storybook/design tokens, ten PRD views, exact-value tables, accessible interaction/print/PDF states, provenance, and source-consistent exports. | | GAP-011 | TEPP is not yet an operable multi-tenant service or supported release. | `accepted-target` | product vertical | `c45be17` (library contracts only) | [#174](https://github.com/ContextualWisdomLab/TEPP/issues/174) | `—` (issue program; no current implementation PR) | Durable queue/storage, OIDC/RLS/purpose controls, OpenTelemetry/SLOs, load/recovery, migrations, signed release/SBOM/provenance, assurance evidence, and support policy. | -| GAP-012 | The 93-PR queue obscures authority, repeatedly stales exact-head evidence, and fragments product boundaries. | `partial` | release blocker | `c45be17` (protected-main truth) | [#175](https://github.com/ContextualWisdomLab/TEPP/issues/175) | `—` (live queue program) | Every PR classified; unique landing vehicles; compatible slices folded; superseded work closed with provenance; scheduler prioritizes consolidation; queue reaches zero before GA. | -| GAP-013 | Evidence-grounded LLM interpretation is routed but not executed and validated as a production interpreter/verifier port. | `partial` | active integration | `c45be17` (routing and refusal contracts only) | [#176](https://github.com/ContextualWisdomLab/TEPP/issues/176), [PR #69](https://github.com/ContextualWisdomLab/TEPP/pull/69), [PR #165](https://github.com/ContextualWisdomLab/TEPP/pull/165) | `e780e1d` / `34083c3` | Contextual-orchestrator execution, evidence citations, verifier refusals, comparable-budget ablations, provider eligibility/fallback, abstention, live/offline contract tests, and no numerical-authority escalation. | +| GAP-012 | The 95-PR queue obscures authority, repeatedly stales exact-head evidence, and fragments product boundaries. | `partial` | release blocker | `c45be17` (protected-main truth) | [#175](https://github.com/ContextualWisdomLab/TEPP/issues/175) | `—` (live queue program) | Every PR classified; unique landing vehicles; compatible slices folded; superseded work closed with provenance; scheduler prioritizes consolidation; queue reaches zero before GA. | +| GAP-013 | Evidence-grounded LLM interpretation is routed but not executed and validated as a production interpreter/verifier port. | `partial` | active integration | `c45be17` (routing and refusal contracts only) | [#176](https://github.com/ContextualWisdomLab/TEPP/issues/176), [PR #69](https://github.com/ContextualWisdomLab/TEPP/pull/69), [PR #165](https://github.com/ContextualWisdomLab/TEPP/pull/165) | `8e4a3ca9cc80` / `34083c3f5d66` | Contextual-orchestrator execution, evidence citations, verifier refusals, comparable-budget ablations, provider eligibility/fallback, abstention, live/offline contract tests, and no numerical-authority escalation. | | GAP-014 | README/TRD and some PR descriptions lag protected-main and live queue reality. | `partial` | documentation drift | `c45be17` (documentation is not fully synchronized) | [#175](https://github.com/ContextualWisdomLab/TEPP/issues/175) | `—` (queue-consolidation work) | Reconcile README, TRD, traceability, ADR maturity, CHANGELOG, preferred-merge declarations, and exact protected-main evidence. | -| GAP-015 | There was no canonical live product/buyer-gap register tied to documentation validation. | `active-PR` | landing vehicle | `c45be17` (no live gap register) | [PR #164](https://github.com/ContextualWisdomLab/TEPP/pull/164) (authority); closed [PR #179](https://github.com/ContextualWisdomLab/TEPP/pull/179) is not a second register | `5e923f065e37` | Merge this document and its validator/map/quality-test integration after exact-head checks and independent review. Passing Checks on #164 are not implemented-main. | +| GAP-015 | There was no canonical live product/buyer-gap register tied to documentation validation. | `active-PR` | landing vehicle | `c45be17` (no live gap register) | [PR #164](https://github.com/ContextualWisdomLab/TEPP/pull/164) (authority); closed [PR #179](https://github.com/ContextualWisdomLab/TEPP/pull/179) is not a second register | `b39435ffd40e` | Merge this document and its validator/map/quality-test integration after exact-head checks and independent review. Passing Checks on #164 are not implemented-main. | | GAP-016 | Hourly PR maintenance used an older central scheduler revision whose per-repository sweep budgets could amplify the queued review workload. | `active-PR` | operability hardening | `c45be17` (caller pin before central budget hardening) | [PR #177](https://github.com/ContextualWisdomLab/TEPP/pull/177) | `580d45206536` | The change pins a verified central revision immutably; closure still requires exact-head hosted Checks, resolved threads, and independent review. | -| GAP-017 | Accepted analysis runs have a terminal DTO, and cutoff-safe execution exists only on the #157 head after stacked PR #178 merged into that branch. | `active-PR` | product vertical | `c45be17` (accepted receipt only) | [#166](https://github.com/ContextualWisdomLab/TEPP/issues/166) / [PR #157](https://github.com/ContextualWisdomLab/TEPP/pull/157) | `cce90a11ac92` | Exact availability cutoff, snapshot binding, multiple-membership preservation, digest integrity, redacted no-eligible failure, and realistic end-to-end tests on protected main. Closed stacked PR #178 is not implemented-main. | +| GAP-017 | Accepted analysis runs have a terminal DTO, and cutoff-safe execution exists only on the #157 head after stacked PR #178 merged into that branch. | `active-PR` | product vertical | `c45be17` (accepted receipt only) | [#166](https://github.com/ContextualWisdomLab/TEPP/issues/166) / [PR #157](https://github.com/ContextualWisdomLab/TEPP/pull/157) | `7402745cfb0c` | Exact availability cutoff, snapshot binding, multiple-membership preservation, digest integrity, redacted no-eligible failure, and realistic end-to-end tests on protected main. Closed stacked PR #178 is not implemented-main. | ## Product-completion issue register From f5e2db0bc0268b3e898129fea1d80809822b4989 Mon Sep 17 00:00:00 2001 From: Seongho Bae Date: Sun, 23 Aug 2026 22:51:53 +0900 Subject: [PATCH 35/52] fix(docs): honor negated queued-Checks wording in the gap validator The promotion guard treated any same-line 'queued Checks'...'implemented-main' window as a shipped claim, so correct negation failed and a wrapped affirmative claim could evade. Require an un-negated match, including across a line break. --- CHANGELOG.md | 5 +-- scripts/validate_documentation.py | 11 ++++-- .../test_product_technical_gap_baseline.py | 36 +++++++++++++++++++ 3 files changed, 48 insertions(+), 4 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 7664fdbf..add5b12d 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -11,8 +11,9 @@ All notable changes to TEPP are documented here. The format follows Keep a Chang and closure evidence; placeholder-only issues #161 and #162 were closed as queue hygiene. The documentation validator requires a dated UTC snapshot, a 40-character protected-main SHA, an exact-head inventory matching the declared - open-PR count, and buyer-gap closure evidence, and it rejects prose that - treats queued Checks as implemented-main. + open-PR count, and buyer-gap closure evidence, and it rejects affirmative + queued-Checks-as-implemented-main claims even when wrapped across a line + break, while accepting explicit negation. - `tepp_api` naruon live loopback HTTP/1.1 listener: `serve_one` installs a read/write deadline, requires a loopback `Host`, refuses `Transfer-Encoding` and NIM/proxy credential headers, parses `knowledge_cutoff` as RFC 3339 and refuses a future cutoff, keys analysis-run idempotency by tenant plus key, and proves both analysis-run and export POSTs over a real `TcpStream`. Not a production TLS/`$PORT` service (ADR 0011). - `tepp_api` adaptive orchestration router (ADR 0010): versioned `direct`/`verify`/`committee`/`conductor`/`abstain` selection from CPU `f64` risk, ambiguity, evidence, and token-budget inputs; recorded stages, recursion, decomposition, access lists, and role-specific reasoning effort; fail-closed document-controlled policy/access/credentials; LLM plans remain proposals under deterministic statistical authority; comparable-budget ablation requires a direct baseline; credential-free contextual-orchestrator binding. Live NIM HTTP remains accepted-target. - `tepp_api` purpose-bound provider-payload minimization: time-bounded `PurposeGrant` evaluation, fail-closed expired/not-yet-valid/inverted/cross-tenant/impossible-calendar denial, semantic UTC calendar validation, refusal to copy identity mappings into model-provider payloads or ordinary logs, preservation of opaque analytical identifiers and membership roles (no blanket PII mask), a separately authorized scientific re-identification path, and an internally bound FIPS 180-4 SHA-256 audit digest appended through `ReidentificationAuditSink` before disclosure. diff --git a/scripts/validate_documentation.py b/scripts/validate_documentation.py index a2f3b113..33583344 100644 --- a/scripts/validate_documentation.py +++ b/scripts/validate_documentation.py @@ -75,7 +75,11 @@ r"\|\s*Open pull requests\s*\|\s*\*\*(?P\d+)\*\*" ) QUEUED_CHECKS_AS_SHIPPED = re.compile( - r"queued Checks[^\n]{0,80}implemented-main", + r"queued Checks.{0,80}implemented-main", + re.IGNORECASE | re.DOTALL, +) +QUEUED_CHECKS_NEGATION = re.compile( + r"\b(?:never|not|do not|does not|cannot|must not)\b", re.IGNORECASE, ) ADR_TABLE_ROW = re.compile(r"^\|\s*\[(?P\d{4})\]", re.MULTILINE) @@ -172,7 +176,10 @@ def validate_product_technical_gap_baseline(root: Path = ROOT) -> None: failures.append("gap baseline lacks buyer-gap closure evidence") if "Exact current head" not in text: failures.append("gap baseline lacks an exact-head open-PR inventory") - if QUEUED_CHECKS_AS_SHIPPED.search(text) is not None: + if any( + QUEUED_CHECKS_NEGATION.search(match.group(0)) is None + for match in QUEUED_CHECKS_AS_SHIPPED.finditer(text) + ): failures.append("gap baseline treats queued Checks as implemented-main") inventory = list(INVENTORY_ROW.finditer(text)) if not inventory: diff --git a/tests/quality/test_product_technical_gap_baseline.py b/tests/quality/test_product_technical_gap_baseline.py index 5b900039..d03c2674 100644 --- a/tests/quality/test_product_technical_gap_baseline.py +++ b/tests/quality/test_product_technical_gap_baseline.py @@ -136,6 +136,42 @@ def test_queued_checks_as_implemented_main_fails(self) -> None: ): docs.validate_product_technical_gap_baseline(root) + def test_negated_queued_checks_wording_is_accepted(self) -> None: + """Correct one-line negation must not be treated as a promotion claim.""" + + with tempfile.TemporaryDirectory() as temporary: + root = Path(temporary) + path = root / BASELINE_PATH + path.parent.mkdir(parents=True) + path.write_text( + valid_baseline( + extra=( + "\nPassing or queued Checks on an open PR never " + "promote that PR to implemented-main.\n" + ) + ), + encoding="utf-8", + ) + docs.validate_product_technical_gap_baseline(root) + + def test_wrapped_queued_checks_promotion_still_fails(self) -> None: + """A wrapped affirmative claim must not evade the promotion guard.""" + + with tempfile.TemporaryDirectory() as temporary: + root = Path(temporary) + path = root / BASELINE_PATH + path.parent.mkdir(parents=True) + path.write_text( + valid_baseline( + extra="\nqueued Checks on this PR are\nimplemented-main.\n" + ), + encoding="utf-8", + ) + with self.assertRaisesRegex( + AssertionError, "queued Checks as implemented-main" + ): + docs.validate_product_technical_gap_baseline(root) + if __name__ == "__main__": # pragma: no cover unittest.main() From 09cc23032712dad6d01f002d754c78762834b4ec Mon Sep 17 00:00:00 2001 From: Seongho Bae Date: Sun, 23 Aug 2026 22:58:01 +0900 Subject: [PATCH 36/52] docs: refresh 96-PR exact-head gap register Bind the live 2026-08-23T13:57:34Z inventory, including #49 extra-lag underflow coverage and hourly #180/#164 repairs. Buyer-gap current heads match that snapshot. Queued Checks are not implemented-main. --- CHANGELOG.md | 4 ++-- docs/product-technical-gap-baseline.md | 21 +++++++++++---------- 2 files changed, 13 insertions(+), 12 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index add5b12d..8c0a4890 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -83,8 +83,8 @@ All notable changes to TEPP are documented here. The format follows Keep a Chang ### Changed -- Refreshed the live gap-baseline inventory to the 2026-08-23T13:31:34Z GitHub - snapshot (95 open PRs / 26 drafts / 12 issues; protected-main +- Refreshed the live gap-baseline inventory to the 2026-08-23T13:57:34Z GitHub + snapshot (96 open PRs / 27 drafts / 12 issues; protected-main) `c45be17a9dbce95ef81cee230e9d128abc7160ac`), binding each buyer-gap current head SHA to that exact-head register, naming PR #164 as the single register authority after closing duplicate PR #179, and recording that stacked-merged diff --git a/docs/product-technical-gap-baseline.md b/docs/product-technical-gap-baseline.md index b7655677..c62a3602 100644 --- a/docs/product-technical-gap-baseline.md +++ b/docs/product-technical-gap-baseline.md @@ -2,7 +2,7 @@ **Status:** Live delivery baseline **Product:** Temporal Event Psychometrics Platform (TEPP) -**Snapshot:** 2026-08-23T13:31:34Z +**Snapshot:** 2026-08-23T13:57:34Z **Protected-main evidence:** `c45be17a9dbce95ef81cee230e9d128abc7160ac` **Workspace version on protected main:** `0.1.0` **Canonical gap-baseline authority:** [PR #164](https://github.com/ContextualWisdomLab/TEPP/pull/164). Duplicate [PR #179](https://github.com/ContextualWisdomLab/TEPP/pull/179) was closed at 2026-08-23T12:39:22Z and is not a second protected-main register. @@ -26,8 +26,8 @@ GitHub state before any customer, release, certification, or valuation claim. |---|---:|---| | Protected-main SHA | `c45be17a9dbce95ef81cee230e9d128abc7160ac` | All as-built claims are bounded to this commit. | | Workspace members | 10 Rust crates | The foundation is modular, but the approved target contains additional semantic, estimator, compute, psychometric, event-intelligence, network, interpretation, artifact, and visual boundaries. | -| Open pull requests | **95** | The queue is itself a release blocker and requires consolidation. | -| Draft pull requests | **26** | Most queued work is not independently review-ready. | +| Open pull requests | **96** | The queue is itself a release blocker and requires consolidation. | +| Draft pull requests | **27** | Most queued work is not independently review-ready. | | Non-draft pull requests | **69** | A non-draft state is not a qualifying review or required-check result. | | Open product issues | **12** | Issue #156 plus the product-completion program #166–#176. | | Duplicate gap-baseline PRs | **#164** (authority); **#179** closed as superseded | Only one live register remains; queued Checks on #164 are not protected-main evidence. | @@ -37,7 +37,7 @@ The pull-request counts come from the live GitHub search at this snapshot. The full exact-head classification is owned by [issue #175](https://github.com/ContextualWisdomLab/TEPP/issues/175); this file keeps the buyer-level summary while the exact-head register below records the -current 95-row volatile queue. Passing or queued Checks on an open PR never +current 96-row volatile queue. Passing or queued Checks on an open PR never promote that PR to implemented-main. ## Current open pull-request evidence @@ -49,6 +49,7 @@ Checks, and branch rules immediately before every mutation. | PR | Exact current head | Draft | Base | Title | |---:|---|:---:|---|---| +| #190 | `adb0bc6f2a1b0684eb9242bcb0d6cddd1ff09ae3` | true | agent/psychometric-standardised-continuous-diffusion | feat(psychometric): recover Driver p.16 DRIFTstd after positive asymDIFFUSION | | #189 | `0836c359fab7878084ac3a711920550eb6cacb0d` | true | agent/psychometric-standardised-discrete-diffusion | feat(psychometric): recover Driver p.16 DIFFUSIONstd after positive asymDIFFUSION | | #188 | `444304d2d702cceb47cd4fdf695ba630d7e7c83a` | true | agent/psychometric-standardised-discrete-drift | feat(psychometric): recover Driver p.16 discreteDIFFUSIONstd after positive asymDIFFUSION | | #187 | `6afd048d1a78bd7e1f68555182ec6a1f0db9ea8c` | true | agent/psychometric-predetermined-later-start-later-t0var | feat(psychometric): recover Driver p.16 discreteDRIFTstd after positive asymDIFFUSION | @@ -57,10 +58,10 @@ Checks, and branch rules immediately before every mutation. | #183 | `c10097be0f6f4ff8dd8e6db21dce8818630fe17f` | true | agent/psychometric-predetermined-lagged-t0var | feat(psychometric): recover Driver first-occasion variance of predetermined T0VAR | | #182 | `2d4d6bf9fdfa1c55d2cc3b2f36ba6a1d0523c8a8` | true | agent/psychometric-predetermined-later-t0var | feat(psychometric): recover Driver lagged covariance of predetermined T0VAR | | #181 | `542806b747eea55c9eab705c5dd3479a3e1c63b6` | true | agent/psychometric-posterior-esem-input | feat(psychometric): recover Driver later-occasion variance of predetermined T0VAR | -| #180 | `8e4d70a97bc1e152adb10d1b680a5ca4e2912f23` | false | main | fix(transport): hide raw provider exception details | +| #180 | `fa169e8e41f13d3bae6aff242db68ebf8281e112` | false | main | fix(transport): hide raw provider exception details | | #177 | `580d45206536bf2f7deba327ffafb96a69ba7260` | false | main | fix(workflow): pin scheduler budget hardening | | #165 | `34083c3f5d6637cf1665a29dac45fbf67a74d5dd` | false | main | feat: route hourly product agents through contextual orchestrator | -| #164 | `b39435ffd40ebf0493055562a1c5abd452bc352a` | false | main | docs: define TEPP product completion and technical gap baseline | +| #164 | `f5e2db0bc0268b3e898129fea1d80809822b4989` | false | main | docs: define TEPP product completion and technical gap baseline | | #157 | `7402745cfb0c27964f286c38a2efd7042c2320ff` | false | main | feat(api): publish completed analysis-run result contract | | #155 | `02c009c16e6a9c6fee3237224ed6a17cbc4169e1` | false | main | feat(api): admit LineageWeave as a modular analysis-run consumer | | #154 | `a7a1bdf96a6759f11aed9284b73319ed94b82fd2` | false | main | ci(rust): refresh branch coverage compiler baseline | @@ -142,10 +143,10 @@ Checks, and branch rules immediately before every mutation. | #57 | `b76e38393e932873ec2aed682ab539ee61828537` | false | main | feat(validation): exact-head claim promotion gates | | #51 | `1801501c4d7c5be720d24aba954280fbc9068612` | false | main | feat(compute): VRAM budget types with CPU f64 fallback | | #50 | `d4cd08341e8dca8475542cf9f3b46a1f5bae5ea3` | false | main | feat(event): refuse TDT/CHRONOS outputs as state transitions | -| #49 | `6f95142a6087d289eee3b513aee3233934b36ca4` | false | main | feat(psychometric): posterior ESEM input gates with true-parameter RMSE | +| #49 | `22b8e68813ad59a9a91689bacfa4cf033dfad158` | false | main | feat(psychometric): posterior ESEM input gates with true-parameter RMSE | | #48 | `b7214a8e9dc140e622124fc046d9aa5147dd7b27` | false | main | feat(topic): logistic-normal ALR coordinates with true-parameter RMSE | -The exact-head register, counts, and protected-main SHA were fetched from the live GitHub REST API at `2026-08-23T13:31:34Z`. Review decisions, required Checks, and mergeability remain volatile; re-read them immediately before every mutation. This snapshot is not merge authorization and does not treat queued or passing Checks as shipped protected-main behavior. +The exact-head register, counts, and protected-main SHA were fetched from the live GitHub REST API at `2026-08-23T13:57:34Z`. Review decisions, required Checks, and mergeability remain volatile; re-read them immediately before every mutation. This snapshot is not merge authorization and does not treat queued or passing Checks as shipped protected-main behavior. ## Authority and derivation @@ -209,10 +210,10 @@ visual workspace, or a supported multi-tenant release. | GAP-009 | Topic association and cluster outputs lack posterior-valid estimation, uncertainty, edge stability, and consensus communities. | `accepted-target` | product vertical | `c45be17` (network primitives only) | [#172](https://github.com/ContextualWisdomLab/TEPP/issues/172) / [PR #71](https://github.com/ContextualWisdomLab/TEPP/pull/71) | `2588f38281b9` | Valid log-ratio coordinates, interval/stability-bearing edges, repeated Leiden consensus, known-truth network/cluster recovery, and reproducible exports. | | GAP-010 | Buyers lack coordinated accessible visual analytics and exact-value export workflows. | `accepted-target` | product vertical | `c45be17` (no visual workspace) | [#173](https://github.com/ContextualWisdomLab/TEPP/issues/173) | `—` (Figma work not started) | Real Figma File ID in ADR, Storybook/design tokens, ten PRD views, exact-value tables, accessible interaction/print/PDF states, provenance, and source-consistent exports. | | GAP-011 | TEPP is not yet an operable multi-tenant service or supported release. | `accepted-target` | product vertical | `c45be17` (library contracts only) | [#174](https://github.com/ContextualWisdomLab/TEPP/issues/174) | `—` (issue program; no current implementation PR) | Durable queue/storage, OIDC/RLS/purpose controls, OpenTelemetry/SLOs, load/recovery, migrations, signed release/SBOM/provenance, assurance evidence, and support policy. | -| GAP-012 | The 95-PR queue obscures authority, repeatedly stales exact-head evidence, and fragments product boundaries. | `partial` | release blocker | `c45be17` (protected-main truth) | [#175](https://github.com/ContextualWisdomLab/TEPP/issues/175) | `—` (live queue program) | Every PR classified; unique landing vehicles; compatible slices folded; superseded work closed with provenance; scheduler prioritizes consolidation; queue reaches zero before GA. | +| GAP-012 | The 96-PR queue obscures authority, repeatedly stales exact-head evidence, and fragments product boundaries. | `partial` | release blocker | `c45be17` (protected-main truth) | [#175](https://github.com/ContextualWisdomLab/TEPP/issues/175) | `—` (live queue program) | Every PR classified; unique landing vehicles; compatible slices folded; superseded work closed with provenance; scheduler prioritizes consolidation; queue reaches zero before GA. | | GAP-013 | Evidence-grounded LLM interpretation is routed but not executed and validated as a production interpreter/verifier port. | `partial` | active integration | `c45be17` (routing and refusal contracts only) | [#176](https://github.com/ContextualWisdomLab/TEPP/issues/176), [PR #69](https://github.com/ContextualWisdomLab/TEPP/pull/69), [PR #165](https://github.com/ContextualWisdomLab/TEPP/pull/165) | `8e4a3ca9cc80` / `34083c3f5d66` | Contextual-orchestrator execution, evidence citations, verifier refusals, comparable-budget ablations, provider eligibility/fallback, abstention, live/offline contract tests, and no numerical-authority escalation. | | GAP-014 | README/TRD and some PR descriptions lag protected-main and live queue reality. | `partial` | documentation drift | `c45be17` (documentation is not fully synchronized) | [#175](https://github.com/ContextualWisdomLab/TEPP/issues/175) | `—` (queue-consolidation work) | Reconcile README, TRD, traceability, ADR maturity, CHANGELOG, preferred-merge declarations, and exact protected-main evidence. | -| GAP-015 | There was no canonical live product/buyer-gap register tied to documentation validation. | `active-PR` | landing vehicle | `c45be17` (no live gap register) | [PR #164](https://github.com/ContextualWisdomLab/TEPP/pull/164) (authority); closed [PR #179](https://github.com/ContextualWisdomLab/TEPP/pull/179) is not a second register | `b39435ffd40e` | Merge this document and its validator/map/quality-test integration after exact-head checks and independent review. Passing Checks on #164 are not implemented-main. | +| GAP-015 | There was no canonical live product/buyer-gap register tied to documentation validation. | `active-PR` | landing vehicle | `c45be17` (no live gap register) | [PR #164](https://github.com/ContextualWisdomLab/TEPP/pull/164) (authority); closed [PR #179](https://github.com/ContextualWisdomLab/TEPP/pull/179) is not a second register | `f5e2db0bc026` | Merge this document and its validator/map/quality-test integration after exact-head checks and independent review. Passing Checks on #164 are not implemented-main. | | GAP-016 | Hourly PR maintenance used an older central scheduler revision whose per-repository sweep budgets could amplify the queued review workload. | `active-PR` | operability hardening | `c45be17` (caller pin before central budget hardening) | [PR #177](https://github.com/ContextualWisdomLab/TEPP/pull/177) | `580d45206536` | The change pins a verified central revision immutably; closure still requires exact-head hosted Checks, resolved threads, and independent review. | | GAP-017 | Accepted analysis runs have a terminal DTO, and cutoff-safe execution exists only on the #157 head after stacked PR #178 merged into that branch. | `active-PR` | product vertical | `c45be17` (accepted receipt only) | [#166](https://github.com/ContextualWisdomLab/TEPP/issues/166) / [PR #157](https://github.com/ContextualWisdomLab/TEPP/pull/157) | `7402745cfb0c` | Exact availability cutoff, snapshot binding, multiple-membership preservation, digest integrity, redacted no-eligible failure, and realistic end-to-end tests on protected main. Closed stacked PR #178 is not implemented-main. | From 8b78797578a1bf5b612dfdc73303839ca456ed74 Mon Sep 17 00:00:00 2001 From: Seongho Bae Date: Sun, 23 Aug 2026 14:04:52 +0000 Subject: [PATCH 37/52] docs: replace Buyer language in the live gap register TEPP is not a purchase catalog. The gap baseline, validator, and CHANGELOG now name operator-visible gaps and operator-gap closure evidence. --- CHANGELOG.md | 6 ++--- docs/product-technical-gap-baseline.md | 26 +++++++++---------- scripts/validate_documentation.py | 2 +- .../test_product_technical_gap_baseline.py | 2 +- 4 files changed, 18 insertions(+), 18 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 8c0a4890..90ebd435 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -6,12 +6,12 @@ All notable changes to TEPP are documented here. The format follows Keep a Chang ### Added -- Live `docs/product-technical-gap-baseline.md` mapping buyer-visible gaps to +- Live `docs/product-technical-gap-baseline.md` mapping operator-visible gaps to protected-main maturity, exact current PR/issue state, stacked delivery order, and closure evidence; placeholder-only issues #161 and #162 were closed as queue hygiene. The documentation validator requires a dated UTC snapshot, a 40-character protected-main SHA, an exact-head inventory matching the declared - open-PR count, and buyer-gap closure evidence, and it rejects affirmative + open-PR count, and operator-gap closure evidence, and it rejects affirmative queued-Checks-as-implemented-main claims even when wrapped across a line break, while accepting explicit negation. - `tepp_api` naruon live loopback HTTP/1.1 listener: `serve_one` installs a read/write deadline, requires a loopback `Host`, refuses `Transfer-Encoding` and NIM/proxy credential headers, parses `knowledge_cutoff` as RFC 3339 and refuses a future cutoff, keys analysis-run idempotency by tenant plus key, and proves both analysis-run and export POSTs over a real `TcpStream`. Not a production TLS/`$PORT` service (ADR 0011). @@ -85,7 +85,7 @@ All notable changes to TEPP are documented here. The format follows Keep a Chang - Refreshed the live gap-baseline inventory to the 2026-08-23T13:57:34Z GitHub snapshot (96 open PRs / 27 drafts / 12 issues; protected-main) - `c45be17a9dbce95ef81cee230e9d128abc7160ac`), binding each buyer-gap current + `c45be17a9dbce95ef81cee230e9d128abc7160ac`), binding each operator-gap current head SHA to that exact-head register, naming PR #164 as the single register authority after closing duplicate PR #179, and recording that stacked-merged heads are not implemented-main. diff --git a/docs/product-technical-gap-baseline.md b/docs/product-technical-gap-baseline.md index c62a3602..5368c3e6 100644 --- a/docs/product-technical-gap-baseline.md +++ b/docs/product-technical-gap-baseline.md @@ -9,9 +9,9 @@ ## Purpose -This document is the executable buyer-gap register for TEPP. It separates: +This document is the executable operator-gap register for TEPP. It separates: -- capabilities a buyer can use from protected `main`; +- capabilities an operator can use from protected `main`; - bounded work that exists only on open pull requests; - product-completion issues with measurable acceptance evidence; and - release claims that remain prohibited. @@ -36,7 +36,7 @@ GitHub state before any customer, release, certification, or valuation claim. The pull-request counts come from the live GitHub search at this snapshot. The full exact-head classification is owned by [issue #175](https://github.com/ContextualWisdomLab/TEPP/issues/175); this file -keeps the buyer-level summary while the exact-head register below records the +keeps the operator-level summary while the exact-head register below records the current 96-row volatile queue. Passing or queued Checks on an open PR never promote that PR to implemented-main. @@ -193,14 +193,14 @@ estimator, a calibrated TDT/CHRONOS workflow, a posterior network estimator, real accelerator kernels, a production interpretation gateway, the coordinated visual workspace, or a supported multi-tenant release. -## Buyer-gap register +## Operator-gap register -| ID | Buyer-visible gap | Maturity | Delivery status | Protected-main authority | Current delivery authority | Current head SHA | Closure evidence | +| ID | Operator-visible gap | Maturity | Delivery status | Protected-main authority | Current delivery authority | Current head SHA | Closure evidence | |---|---|---|---|---|---|---|---| | GAP-001 | Submission can produce a durable accepted receipt, but protected `main` lacks the separate deterministic terminal-result lifecycle. | `active-PR` | landing vehicle | `c45be17` (accepted receipt only) | [#156](https://github.com/ContextualWisdomLab/TEPP/issues/156) / [PR #157](https://github.com/ContextualWisdomLab/TEPP/pull/157) | `7402745cfb0c` | Exact request/result/snapshot/cutoff/model/profile binding, typed terminal failures, deterministic retrieval, current-head checks, and qualifying review. Cutoff-safe execution from closed stacked PR #178 is on this head only and is not implemented-main. | | GAP-002 | LineageWeave and other modular consumers cannot yet rely on the complete protected-main HTTP evidence/result boundary. | `active-PR` | landing vehicle | `c45be17` (loopback naruon listener from merged PR #107; versioned API contracts) | [#155](https://github.com/ContextualWisdomLab/TEPP/pull/155) | `02c009c16e6a` | Merge the live consumer contract after exact-head review/Checks. Closed stacked PRs #158 and #159 were folded into this head; they are not protected-main evidence. | -| GAP-003A | Immutable evidence cannot yet be submitted to a durable validation run that produces buyer-usable scientific acceptance evidence. | `accepted-target` | product-completion | `c45be17` (validation metrics are library-level only) | [#166](https://github.com/ContextualWisdomLab/TEPP/issues/166) | `—` (issue program; no current implementation PR) | Compose/CLI/API execution must bind immutable evidence, cutoffs, model configuration, validation metrics, and reproducibility manifests to one idempotent run. | -| GAP-003B | Scientific result artifacts cannot yet be persisted, restarted, and recovered as one supported buyer workflow. | `accepted-target` | product-completion | `c45be17` (persistence contracts lack E2E recovery) | [#166](https://github.com/ContextualWisdomLab/TEPP/issues/166) | `—` (issue program; no current implementation PR) | Durable storage, migration/rollback, restart/recovery, artifact digest verification, and terminal retrieval must pass against a real Compose deployment. | +| GAP-003A | Immutable evidence cannot yet be submitted to a durable validation run that produces operator-usable scientific acceptance evidence. | `accepted-target` | product-completion | `c45be17` (validation metrics are library-level only) | [#166](https://github.com/ContextualWisdomLab/TEPP/issues/166) | `—` (issue program; no current implementation PR) | Compose/CLI/API execution must bind immutable evidence, cutoffs, model configuration, validation metrics, and reproducibility manifests to one idempotent run. | +| GAP-003B | Scientific result artifacts cannot yet be persisted, restarted, and recovered as one supported operator workflow. | `accepted-target` | product-completion | `c45be17` (persistence contracts lack E2E recovery) | [#166](https://github.com/ContextualWisdomLab/TEPP/issues/166) | `—` (issue program; no current implementation PR) | Durable storage, migration/rollback, restart/recovery, artifact digest verification, and terminal retrieval must pass against a real Compose deployment. | | GAP-003C | The persistence slice classifies concurrent-write SQLSTATEs, but has no measured hot-partition detection, routing, or mitigation for tenant/result workloads. | `accepted-target` | product-completion | `c45be17` (conflict classification only; no measured partition control) | [#166](https://github.com/ContextualWisdomLab/TEPP/issues/166) | `—` (issue program; no current implementation PR) | A real Compose/PostgreSQL workload identifies hot keys and partition skew, applies bounded tenant/time or result routing without weakening 3NF or temporal authority, and proves conflict rate, latency, recovery, and migration/rollback behavior under load. | | GAP-004 | The central shared-latent temporal/relational topic estimator is absent. | `accepted-target` | product vertical | `c45be17` (no production estimator) | [#167](https://github.com/ContextualWisdomLab/TEPP/issues/167) / [PR #48](https://github.com/ContextualWisdomLab/TEPP/pull/48) | `b7214a8e9dc1` | Rust CPU `f64` fitting, sparse bounded parallelism, posterior artifacts, convergence, true-parameter RMSE/bias/coverage, and real candidate-K fitting. | | GAP-005 | Real multilingual documents are not yet transformed into validated exact-span semantic units and versioned shared concepts. | `accepted-target` | product vertical | `c45be17` (evidence spans exist without full semantic pipeline) | [#168](https://github.com/ContextualWisdomLab/TEPP/issues/168) | `—` (PR #53 merged only onto a non-main maintenance branch and is not implemented-main) | Unicode/layout/language-tailored processing, unknown-concept review, multilingual calibration/invariance, image-position evidence, and prompt-injection tests. | @@ -208,12 +208,12 @@ visual workspace, or a supported multi-tenant release. | GAP-007 | TDT detection/tracking and CHRONOS schema/forecast/temporal reasoning remain isolated bounded gates rather than one calibrated product workflow. | `accepted-target` | product vertical | `c45be17` (event/time primitives only) | [#170](https://github.com/ContextualWisdomLab/TEPP/issues/170) / [PR #70](https://github.com/ContextualWisdomLab/TEPP/pull/70) | `7a1f33aa68c1` | Span-grounded mentions, calibrated TDT metrics, schema/forecast hypothesis states, interval consistency, known-truth recovery, persistence, and exports. | | GAP-008 | GPU support is policy-only; no production estimator kernel has real hardware parity or declared VRAM evidence. | `accepted-target` | product vertical | `c45be17` (VRAM policy only) | [#171](https://github.com/ContextualWisdomLab/TEPP/issues/171) / [PR #51](https://github.com/ContextualWisdomLab/TEPP/pull/51) | `1801501c4d7c` | Real CUDA/portable backend execution, CPU parity, streamed memory, bounded OOM/fallback, hardware profiles, telemetry, and no skipped-support claim. | | GAP-009 | Topic association and cluster outputs lack posterior-valid estimation, uncertainty, edge stability, and consensus communities. | `accepted-target` | product vertical | `c45be17` (network primitives only) | [#172](https://github.com/ContextualWisdomLab/TEPP/issues/172) / [PR #71](https://github.com/ContextualWisdomLab/TEPP/pull/71) | `2588f38281b9` | Valid log-ratio coordinates, interval/stability-bearing edges, repeated Leiden consensus, known-truth network/cluster recovery, and reproducible exports. | -| GAP-010 | Buyers lack coordinated accessible visual analytics and exact-value export workflows. | `accepted-target` | product vertical | `c45be17` (no visual workspace) | [#173](https://github.com/ContextualWisdomLab/TEPP/issues/173) | `—` (Figma work not started) | Real Figma File ID in ADR, Storybook/design tokens, ten PRD views, exact-value tables, accessible interaction/print/PDF states, provenance, and source-consistent exports. | +| GAP-010 | Operators lack coordinated accessible visual analytics and exact-value export workflows. | `accepted-target` | product vertical | `c45be17` (no visual workspace) | [#173](https://github.com/ContextualWisdomLab/TEPP/issues/173) | `—` (Figma work not started) | Real Figma File ID in ADR, Storybook/design tokens, ten PRD views, exact-value tables, accessible interaction/print/PDF states, provenance, and source-consistent exports. | | GAP-011 | TEPP is not yet an operable multi-tenant service or supported release. | `accepted-target` | product vertical | `c45be17` (library contracts only) | [#174](https://github.com/ContextualWisdomLab/TEPP/issues/174) | `—` (issue program; no current implementation PR) | Durable queue/storage, OIDC/RLS/purpose controls, OpenTelemetry/SLOs, load/recovery, migrations, signed release/SBOM/provenance, assurance evidence, and support policy. | | GAP-012 | The 96-PR queue obscures authority, repeatedly stales exact-head evidence, and fragments product boundaries. | `partial` | release blocker | `c45be17` (protected-main truth) | [#175](https://github.com/ContextualWisdomLab/TEPP/issues/175) | `—` (live queue program) | Every PR classified; unique landing vehicles; compatible slices folded; superseded work closed with provenance; scheduler prioritizes consolidation; queue reaches zero before GA. | | GAP-013 | Evidence-grounded LLM interpretation is routed but not executed and validated as a production interpreter/verifier port. | `partial` | active integration | `c45be17` (routing and refusal contracts only) | [#176](https://github.com/ContextualWisdomLab/TEPP/issues/176), [PR #69](https://github.com/ContextualWisdomLab/TEPP/pull/69), [PR #165](https://github.com/ContextualWisdomLab/TEPP/pull/165) | `8e4a3ca9cc80` / `34083c3f5d66` | Contextual-orchestrator execution, evidence citations, verifier refusals, comparable-budget ablations, provider eligibility/fallback, abstention, live/offline contract tests, and no numerical-authority escalation. | | GAP-014 | README/TRD and some PR descriptions lag protected-main and live queue reality. | `partial` | documentation drift | `c45be17` (documentation is not fully synchronized) | [#175](https://github.com/ContextualWisdomLab/TEPP/issues/175) | `—` (queue-consolidation work) | Reconcile README, TRD, traceability, ADR maturity, CHANGELOG, preferred-merge declarations, and exact protected-main evidence. | -| GAP-015 | There was no canonical live product/buyer-gap register tied to documentation validation. | `active-PR` | landing vehicle | `c45be17` (no live gap register) | [PR #164](https://github.com/ContextualWisdomLab/TEPP/pull/164) (authority); closed [PR #179](https://github.com/ContextualWisdomLab/TEPP/pull/179) is not a second register | `f5e2db0bc026` | Merge this document and its validator/map/quality-test integration after exact-head checks and independent review. Passing Checks on #164 are not implemented-main. | +| GAP-015 | There was no canonical live product/operator-gap register tied to documentation validation. | `active-PR` | landing vehicle | `c45be17` (no live gap register) | [PR #164](https://github.com/ContextualWisdomLab/TEPP/pull/164) (authority); closed [PR #179](https://github.com/ContextualWisdomLab/TEPP/pull/179) is not a second register | `f5e2db0bc026` | Merge this document and its validator/map/quality-test integration after exact-head checks and independent review. Passing Checks on #164 are not implemented-main. | | GAP-016 | Hourly PR maintenance used an older central scheduler revision whose per-repository sweep budgets could amplify the queued review workload. | `active-PR` | operability hardening | `c45be17` (caller pin before central budget hardening) | [PR #177](https://github.com/ContextualWisdomLab/TEPP/pull/177) | `580d45206536` | The change pins a verified central revision immutably; closure still requires exact-head hosted Checks, resolved threads, and independent review. | | GAP-017 | Accepted analysis runs have a terminal DTO, and cutoff-safe execution exists only on the #157 head after stacked PR #178 merged into that branch. | `active-PR` | product vertical | `c45be17` (accepted receipt only) | [#166](https://github.com/ContextualWisdomLab/TEPP/issues/166) / [PR #157](https://github.com/ContextualWisdomLab/TEPP/pull/157) | `7402745cfb0c` | Exact availability cutoff, snapshot binding, multiple-membership preservation, digest integrity, redacted no-eligible failure, and realistic end-to-end tests on protected main. Closed stacked PR #178 is not implemented-main. | @@ -271,7 +271,7 @@ The dependency-aware product order is: 7. **Accelerate real kernels with parity:** #171. 8. **Complete the durable end-to-end run:** #166. 9. **Execute and validate interpretation:** #176. -10. **Design and implement the buyer workspace:** #173. +10. **Design and implement the operator workspace:** #173. 11. **Productionize and release:** #174. Stacking is appropriate where public contracts make dependencies explicit. @@ -309,7 +309,7 @@ the same protected source lineage: - the release-blocking PR and issue queues are zero. A `200억 달러` bar remains a prioritization heuristic. It is not a valuation -result and cannot replace buyer adoption, predictive/construct validity, +result and cannot replace operator adoption, predictive/construct validity, operational reliability, proprietary advantage, revenue, retention, or independent diligence evidence. @@ -345,11 +345,11 @@ Refresh this file when any of the following changes materially: - protected-main SHA or package version; - open PR/draft/issue counts; - a priority PR head/base/review/check/merge state; -- an issue or buyer-gap acceptance boundary; +- an issue or operator-gap acceptance boundary; - a capability's implementation maturity; - the dependency/landing order; - a release, deprecation, replacement, Figma file, or standards/research basis. -Keep this file buyer-oriented. Store the volatile per-PR classification in the +Keep this file operator-oriented. Store the volatile per-PR classification in the artifact required by issue #175, and link it here. Never rewrite an active-PR capability as protected-main before merge and exact-head verification. diff --git a/scripts/validate_documentation.py b/scripts/validate_documentation.py index 33583344..445d4110 100644 --- a/scripts/validate_documentation.py +++ b/scripts/validate_documentation.py @@ -173,7 +173,7 @@ def validate_product_technical_gap_baseline(root: Path = ROOT) -> None: if PROTECTED_MAIN_SHA.search(text) is None: failures.append("gap baseline lacks a 40-character protected-main SHA") if "Closure evidence" not in text: - failures.append("gap baseline lacks buyer-gap closure evidence") + failures.append("gap baseline lacks operator-gap closure evidence") if "Exact current head" not in text: failures.append("gap baseline lacks an exact-head open-PR inventory") if any( diff --git a/tests/quality/test_product_technical_gap_baseline.py b/tests/quality/test_product_technical_gap_baseline.py index d03c2674..4014f315 100644 --- a/tests/quality/test_product_technical_gap_baseline.py +++ b/tests/quality/test_product_technical_gap_baseline.py @@ -30,7 +30,7 @@ def valid_baseline(*, count: int = 1, extra: str = "") -> str: "| PR | Exact current head | Draft | Base | Title |\n" "|---:|---|:---:|---|---|\n" f"| #164 | `{VALID_HEAD}` | false | main | docs |\n\n" - "## Buyer-gap register\n\n" + "## Operator-gap register\n\n" "| ID | Closure evidence |\n" "|---|---|\n" "| GAP-015 | Merge after independent review. |\n" From 33bf824dfd71f3d3767372d6245f4fdfe32a1e28 Mon Sep 17 00:00:00 2001 From: Seongho Bae Date: Sun, 23 Aug 2026 23:11:07 +0900 Subject: [PATCH 38/52] docs: refresh 96-PR exact-head gap register after #49 90b08bb Bind GAP current-head SHA prefixes to the 2026-08-23T14:08:41Z live inventory, including #49 extra-process lag underflow and #164 8b78797. Queued Checks remain not implemented-main. --- CHANGELOG.md | 11 ++++++----- docs/product-technical-gap-baseline.md | 10 +++++----- 2 files changed, 11 insertions(+), 10 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 90ebd435..2231308b 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -83,12 +83,13 @@ All notable changes to TEPP are documented here. The format follows Keep a Chang ### Changed -- Refreshed the live gap-baseline inventory to the 2026-08-23T13:57:34Z GitHub - snapshot (96 open PRs / 27 drafts / 12 issues; protected-main) +- Refreshed the live gap-baseline inventory to the 2026-08-23T14:08:41Z GitHub + snapshot (96 open PRs / 27 drafts / 12 issues; protected-main `c45be17a9dbce95ef81cee230e9d128abc7160ac`), binding each operator-gap current - head SHA to that exact-head register, naming PR #164 as the single register - authority after closing duplicate PR #179, and recording that stacked-merged - heads are not implemented-main. + head SHA to that exact-head register, including #49 `90b08bbe82cb` extra-process + lag underflow and #164 `8b78797578a1` after concurrent operator-language + replacement. Duplicate PR #179 remains closed. Stacked-merged heads and queued + Checks are not implemented-main. - Clarified ADR 0001 so it owns Rust-first numerical/reference-backend authority while ADR 0011 owns cross-service MSA/service authority. - Clarified ADR 0006 so it owns GPU/VRAM and model-credential boundaries; ADR 0010 now owns LLM orchestration policy and ADR 0015 owns autonomous repository-write/review/merge authority. - Expanded ADR 0002–0005 and 0009–0011 with explicit implementation maturity, alternatives, failure/recovery, compatibility/migration, verification, and rollback/supersession boundaries where they were previously implicit. diff --git a/docs/product-technical-gap-baseline.md b/docs/product-technical-gap-baseline.md index 5368c3e6..a04bde0b 100644 --- a/docs/product-technical-gap-baseline.md +++ b/docs/product-technical-gap-baseline.md @@ -2,7 +2,7 @@ **Status:** Live delivery baseline **Product:** Temporal Event Psychometrics Platform (TEPP) -**Snapshot:** 2026-08-23T13:57:34Z +**Snapshot:** 2026-08-23T14:08:41Z **Protected-main evidence:** `c45be17a9dbce95ef81cee230e9d128abc7160ac` **Workspace version on protected main:** `0.1.0` **Canonical gap-baseline authority:** [PR #164](https://github.com/ContextualWisdomLab/TEPP/pull/164). Duplicate [PR #179](https://github.com/ContextualWisdomLab/TEPP/pull/179) was closed at 2026-08-23T12:39:22Z and is not a second protected-main register. @@ -61,7 +61,7 @@ Checks, and branch rules immediately before every mutation. | #180 | `fa169e8e41f13d3bae6aff242db68ebf8281e112` | false | main | fix(transport): hide raw provider exception details | | #177 | `580d45206536bf2f7deba327ffafb96a69ba7260` | false | main | fix(workflow): pin scheduler budget hardening | | #165 | `34083c3f5d6637cf1665a29dac45fbf67a74d5dd` | false | main | feat: route hourly product agents through contextual orchestrator | -| #164 | `f5e2db0bc0268b3e898129fea1d80809822b4989` | false | main | docs: define TEPP product completion and technical gap baseline | +| #164 | `8b78797578a1bf5b612dfdc73303839ca456ed74` | false | main | docs: define TEPP product completion and technical gap baseline | | #157 | `7402745cfb0c27964f286c38a2efd7042c2320ff` | false | main | feat(api): publish completed analysis-run result contract | | #155 | `02c009c16e6a9c6fee3237224ed6a17cbc4169e1` | false | main | feat(api): admit LineageWeave as a modular analysis-run consumer | | #154 | `a7a1bdf96a6759f11aed9284b73319ed94b82fd2` | false | main | ci(rust): refresh branch coverage compiler baseline | @@ -143,10 +143,10 @@ Checks, and branch rules immediately before every mutation. | #57 | `b76e38393e932873ec2aed682ab539ee61828537` | false | main | feat(validation): exact-head claim promotion gates | | #51 | `1801501c4d7c5be720d24aba954280fbc9068612` | false | main | feat(compute): VRAM budget types with CPU f64 fallback | | #50 | `d4cd08341e8dca8475542cf9f3b46a1f5bae5ea3` | false | main | feat(event): refuse TDT/CHRONOS outputs as state transitions | -| #49 | `22b8e68813ad59a9a91689bacfa4cf033dfad158` | false | main | feat(psychometric): posterior ESEM input gates with true-parameter RMSE | +| #49 | `90b08bbe82cbe7776365a6c04df38857dfe5e53c` | false | main | feat(psychometric): posterior ESEM input gates with true-parameter RMSE | | #48 | `b7214a8e9dc140e622124fc046d9aa5147dd7b27` | false | main | feat(topic): logistic-normal ALR coordinates with true-parameter RMSE | -The exact-head register, counts, and protected-main SHA were fetched from the live GitHub REST API at `2026-08-23T13:57:34Z`. Review decisions, required Checks, and mergeability remain volatile; re-read them immediately before every mutation. This snapshot is not merge authorization and does not treat queued or passing Checks as shipped protected-main behavior. +The exact-head register, counts, and protected-main SHA were fetched from the live GitHub REST API at `2026-08-23T14:08:41Z`. Review decisions, required Checks, and mergeability remain volatile; re-read them immediately before every mutation. This snapshot is not merge authorization and does not treat queued or passing Checks as shipped protected-main behavior. ## Authority and derivation @@ -213,7 +213,7 @@ visual workspace, or a supported multi-tenant release. | GAP-012 | The 96-PR queue obscures authority, repeatedly stales exact-head evidence, and fragments product boundaries. | `partial` | release blocker | `c45be17` (protected-main truth) | [#175](https://github.com/ContextualWisdomLab/TEPP/issues/175) | `—` (live queue program) | Every PR classified; unique landing vehicles; compatible slices folded; superseded work closed with provenance; scheduler prioritizes consolidation; queue reaches zero before GA. | | GAP-013 | Evidence-grounded LLM interpretation is routed but not executed and validated as a production interpreter/verifier port. | `partial` | active integration | `c45be17` (routing and refusal contracts only) | [#176](https://github.com/ContextualWisdomLab/TEPP/issues/176), [PR #69](https://github.com/ContextualWisdomLab/TEPP/pull/69), [PR #165](https://github.com/ContextualWisdomLab/TEPP/pull/165) | `8e4a3ca9cc80` / `34083c3f5d66` | Contextual-orchestrator execution, evidence citations, verifier refusals, comparable-budget ablations, provider eligibility/fallback, abstention, live/offline contract tests, and no numerical-authority escalation. | | GAP-014 | README/TRD and some PR descriptions lag protected-main and live queue reality. | `partial` | documentation drift | `c45be17` (documentation is not fully synchronized) | [#175](https://github.com/ContextualWisdomLab/TEPP/issues/175) | `—` (queue-consolidation work) | Reconcile README, TRD, traceability, ADR maturity, CHANGELOG, preferred-merge declarations, and exact protected-main evidence. | -| GAP-015 | There was no canonical live product/operator-gap register tied to documentation validation. | `active-PR` | landing vehicle | `c45be17` (no live gap register) | [PR #164](https://github.com/ContextualWisdomLab/TEPP/pull/164) (authority); closed [PR #179](https://github.com/ContextualWisdomLab/TEPP/pull/179) is not a second register | `f5e2db0bc026` | Merge this document and its validator/map/quality-test integration after exact-head checks and independent review. Passing Checks on #164 are not implemented-main. | +| GAP-015 | There was no canonical live product/operator-gap register tied to documentation validation. | `active-PR` | landing vehicle | `c45be17` (no live gap register) | [PR #164](https://github.com/ContextualWisdomLab/TEPP/pull/164) (authority); closed [PR #179](https://github.com/ContextualWisdomLab/TEPP/pull/179) is not a second register | `8b78797578a1` | Merge this document and its validator/map/quality-test integration after exact-head checks and independent review. Passing Checks on #164 are not implemented-main. | | GAP-016 | Hourly PR maintenance used an older central scheduler revision whose per-repository sweep budgets could amplify the queued review workload. | `active-PR` | operability hardening | `c45be17` (caller pin before central budget hardening) | [PR #177](https://github.com/ContextualWisdomLab/TEPP/pull/177) | `580d45206536` | The change pins a verified central revision immutably; closure still requires exact-head hosted Checks, resolved threads, and independent review. | | GAP-017 | Accepted analysis runs have a terminal DTO, and cutoff-safe execution exists only on the #157 head after stacked PR #178 merged into that branch. | `active-PR` | product vertical | `c45be17` (accepted receipt only) | [#166](https://github.com/ContextualWisdomLab/TEPP/issues/166) / [PR #157](https://github.com/ContextualWisdomLab/TEPP/pull/157) | `7402745cfb0c` | Exact availability cutoff, snapshot binding, multiple-membership preservation, digest integrity, redacted no-eligible failure, and realistic end-to-end tests on protected main. Closed stacked PR #178 is not implemented-main. | From 0a3520fa2759cacce229e5a56283f854002cf66d Mon Sep 17 00:00:00 2001 From: seonghobae Date: Sun, 23 Aug 2026 14:52:40 +0000 Subject: [PATCH 39/52] docs: refresh 98-PR exact-head operator-gap register Snapshot 2026-08-23T14:52:16Z. GAP-015 records this register's prior exact head 33bf824. TEPP remains an operator-gap register, not a purchase catalog. --- docs/product-technical-gap-baseline.md | 22 ++++++++++++---------- 1 file changed, 12 insertions(+), 10 deletions(-) diff --git a/docs/product-technical-gap-baseline.md b/docs/product-technical-gap-baseline.md index a04bde0b..dca9ff56 100644 --- a/docs/product-technical-gap-baseline.md +++ b/docs/product-technical-gap-baseline.md @@ -2,7 +2,7 @@ **Status:** Live delivery baseline **Product:** Temporal Event Psychometrics Platform (TEPP) -**Snapshot:** 2026-08-23T14:08:41Z +**Snapshot:** 2026-08-23T14:52:16Z **Protected-main evidence:** `c45be17a9dbce95ef81cee230e9d128abc7160ac` **Workspace version on protected main:** `0.1.0` **Canonical gap-baseline authority:** [PR #164](https://github.com/ContextualWisdomLab/TEPP/pull/164). Duplicate [PR #179](https://github.com/ContextualWisdomLab/TEPP/pull/179) was closed at 2026-08-23T12:39:22Z and is not a second protected-main register. @@ -26,9 +26,9 @@ GitHub state before any customer, release, certification, or valuation claim. |---|---:|---| | Protected-main SHA | `c45be17a9dbce95ef81cee230e9d128abc7160ac` | All as-built claims are bounded to this commit. | | Workspace members | 10 Rust crates | The foundation is modular, but the approved target contains additional semantic, estimator, compute, psychometric, event-intelligence, network, interpretation, artifact, and visual boundaries. | -| Open pull requests | **96** | The queue is itself a release blocker and requires consolidation. | -| Draft pull requests | **27** | Most queued work is not independently review-ready. | -| Non-draft pull requests | **69** | A non-draft state is not a qualifying review or required-check result. | +| Open pull requests | **98** | The queue is itself a release blocker and requires consolidation. | +| Draft pull requests | **28** | Most queued work is not independently review-ready. | +| Non-draft pull requests | **70** | A non-draft state is not a qualifying review or required-check result. | | Open product issues | **12** | Issue #156 plus the product-completion program #166–#176. | | Duplicate gap-baseline PRs | **#164** (authority); **#179** closed as superseded | Only one live register remains; queued Checks on #164 are not protected-main evidence. | | Current package version | `0.1.0` | No supported product release is established by the repository version alone. | @@ -37,7 +37,7 @@ The pull-request counts come from the live GitHub search at this snapshot. The full exact-head classification is owned by [issue #175](https://github.com/ContextualWisdomLab/TEPP/issues/175); this file keeps the operator-level summary while the exact-head register below records the -current 96-row volatile queue. Passing or queued Checks on an open PR never +current 98-row volatile queue. Passing or queued Checks on an open PR never promote that PR to implemented-main. ## Current open pull-request evidence @@ -49,6 +49,8 @@ Checks, and branch rules immediately before every mutation. | PR | Exact current head | Draft | Base | Title | |---:|---|:---:|---|---| +| #192 | `1690c7b65693cf27c8f1730150d67084594aef07` | true | agent/psychometric-standardised-continuous-drift | feat(psychometric): recover Driver p.16 asymTIPREDEFFECTstd after positive variances | +| #191 | `d894705147e5c2027ae2f581f458fe14d2551c7e` | false | agent/topic-logratio-coordinates | feat(topic): publish bounded TRSL topic lineage artifacts | | #190 | `adb0bc6f2a1b0684eb9242bcb0d6cddd1ff09ae3` | true | agent/psychometric-standardised-continuous-diffusion | feat(psychometric): recover Driver p.16 DRIFTstd after positive asymDIFFUSION | | #189 | `0836c359fab7878084ac3a711920550eb6cacb0d` | true | agent/psychometric-standardised-discrete-diffusion | feat(psychometric): recover Driver p.16 DIFFUSIONstd after positive asymDIFFUSION | | #188 | `444304d2d702cceb47cd4fdf695ba630d7e7c83a` | true | agent/psychometric-standardised-discrete-drift | feat(psychometric): recover Driver p.16 discreteDIFFUSIONstd after positive asymDIFFUSION | @@ -61,7 +63,7 @@ Checks, and branch rules immediately before every mutation. | #180 | `fa169e8e41f13d3bae6aff242db68ebf8281e112` | false | main | fix(transport): hide raw provider exception details | | #177 | `580d45206536bf2f7deba327ffafb96a69ba7260` | false | main | fix(workflow): pin scheduler budget hardening | | #165 | `34083c3f5d6637cf1665a29dac45fbf67a74d5dd` | false | main | feat: route hourly product agents through contextual orchestrator | -| #164 | `8b78797578a1bf5b612dfdc73303839ca456ed74` | false | main | docs: define TEPP product completion and technical gap baseline | +| #164 | `33bf824dfd71f3d3767372d6245f4fdfe32a1e28` | false | main | docs: define TEPP product completion and technical gap baseline | | #157 | `7402745cfb0c27964f286c38a2efd7042c2320ff` | false | main | feat(api): publish completed analysis-run result contract | | #155 | `02c009c16e6a9c6fee3237224ed6a17cbc4169e1` | false | main | feat(api): admit LineageWeave as a modular analysis-run consumer | | #154 | `a7a1bdf96a6759f11aed9284b73319ed94b82fd2` | false | main | ci(rust): refresh branch coverage compiler baseline | @@ -144,9 +146,9 @@ Checks, and branch rules immediately before every mutation. | #51 | `1801501c4d7c5be720d24aba954280fbc9068612` | false | main | feat(compute): VRAM budget types with CPU f64 fallback | | #50 | `d4cd08341e8dca8475542cf9f3b46a1f5bae5ea3` | false | main | feat(event): refuse TDT/CHRONOS outputs as state transitions | | #49 | `90b08bbe82cbe7776365a6c04df38857dfe5e53c` | false | main | feat(psychometric): posterior ESEM input gates with true-parameter RMSE | -| #48 | `b7214a8e9dc140e622124fc046d9aa5147dd7b27` | false | main | feat(topic): logistic-normal ALR coordinates with true-parameter RMSE | +| #48 | `e3373912891263d4f0c45625cc6312591120bf80` | false | main | feat(topic): logistic-normal ALR coordinates with true-parameter RMSE | -The exact-head register, counts, and protected-main SHA were fetched from the live GitHub REST API at `2026-08-23T14:08:41Z`. Review decisions, required Checks, and mergeability remain volatile; re-read them immediately before every mutation. This snapshot is not merge authorization and does not treat queued or passing Checks as shipped protected-main behavior. +The exact-head register, counts, and protected-main SHA were fetched from the live GitHub REST API at `2026-08-23T14:52:16Z`. Review decisions, required Checks, and mergeability remain volatile; re-read them immediately before every mutation. This snapshot is not merge authorization and does not treat queued or passing Checks as shipped protected-main behavior. ## Authority and derivation @@ -210,10 +212,10 @@ visual workspace, or a supported multi-tenant release. | GAP-009 | Topic association and cluster outputs lack posterior-valid estimation, uncertainty, edge stability, and consensus communities. | `accepted-target` | product vertical | `c45be17` (network primitives only) | [#172](https://github.com/ContextualWisdomLab/TEPP/issues/172) / [PR #71](https://github.com/ContextualWisdomLab/TEPP/pull/71) | `2588f38281b9` | Valid log-ratio coordinates, interval/stability-bearing edges, repeated Leiden consensus, known-truth network/cluster recovery, and reproducible exports. | | GAP-010 | Operators lack coordinated accessible visual analytics and exact-value export workflows. | `accepted-target` | product vertical | `c45be17` (no visual workspace) | [#173](https://github.com/ContextualWisdomLab/TEPP/issues/173) | `—` (Figma work not started) | Real Figma File ID in ADR, Storybook/design tokens, ten PRD views, exact-value tables, accessible interaction/print/PDF states, provenance, and source-consistent exports. | | GAP-011 | TEPP is not yet an operable multi-tenant service or supported release. | `accepted-target` | product vertical | `c45be17` (library contracts only) | [#174](https://github.com/ContextualWisdomLab/TEPP/issues/174) | `—` (issue program; no current implementation PR) | Durable queue/storage, OIDC/RLS/purpose controls, OpenTelemetry/SLOs, load/recovery, migrations, signed release/SBOM/provenance, assurance evidence, and support policy. | -| GAP-012 | The 96-PR queue obscures authority, repeatedly stales exact-head evidence, and fragments product boundaries. | `partial` | release blocker | `c45be17` (protected-main truth) | [#175](https://github.com/ContextualWisdomLab/TEPP/issues/175) | `—` (live queue program) | Every PR classified; unique landing vehicles; compatible slices folded; superseded work closed with provenance; scheduler prioritizes consolidation; queue reaches zero before GA. | +| GAP-012 | The 98-PR queue obscures authority, repeatedly stales exact-head evidence, and fragments product boundaries. | `partial` | release blocker | `c45be17` (protected-main truth) | [#175](https://github.com/ContextualWisdomLab/TEPP/issues/175) | `—` (live queue program) | Every PR classified; unique landing vehicles; compatible slices folded; superseded work closed with provenance; scheduler prioritizes consolidation; queue reaches zero before GA. | | GAP-013 | Evidence-grounded LLM interpretation is routed but not executed and validated as a production interpreter/verifier port. | `partial` | active integration | `c45be17` (routing and refusal contracts only) | [#176](https://github.com/ContextualWisdomLab/TEPP/issues/176), [PR #69](https://github.com/ContextualWisdomLab/TEPP/pull/69), [PR #165](https://github.com/ContextualWisdomLab/TEPP/pull/165) | `8e4a3ca9cc80` / `34083c3f5d66` | Contextual-orchestrator execution, evidence citations, verifier refusals, comparable-budget ablations, provider eligibility/fallback, abstention, live/offline contract tests, and no numerical-authority escalation. | | GAP-014 | README/TRD and some PR descriptions lag protected-main and live queue reality. | `partial` | documentation drift | `c45be17` (documentation is not fully synchronized) | [#175](https://github.com/ContextualWisdomLab/TEPP/issues/175) | `—` (queue-consolidation work) | Reconcile README, TRD, traceability, ADR maturity, CHANGELOG, preferred-merge declarations, and exact protected-main evidence. | -| GAP-015 | There was no canonical live product/operator-gap register tied to documentation validation. | `active-PR` | landing vehicle | `c45be17` (no live gap register) | [PR #164](https://github.com/ContextualWisdomLab/TEPP/pull/164) (authority); closed [PR #179](https://github.com/ContextualWisdomLab/TEPP/pull/179) is not a second register | `8b78797578a1` | Merge this document and its validator/map/quality-test integration after exact-head checks and independent review. Passing Checks on #164 are not implemented-main. | +| GAP-015 | There was no canonical live product/operator-gap register tied to documentation validation. | `active-PR` | landing vehicle | `c45be17` (no live gap register) | [PR #164](https://github.com/ContextualWisdomLab/TEPP/pull/164) (authority); closed [PR #179](https://github.com/ContextualWisdomLab/TEPP/pull/179) is not a second register | `33bf824dfd71` | Merge this document and its validator/map/quality-test integration after exact-head checks and independent review. Passing Checks on #164 are not implemented-main. | | GAP-016 | Hourly PR maintenance used an older central scheduler revision whose per-repository sweep budgets could amplify the queued review workload. | `active-PR` | operability hardening | `c45be17` (caller pin before central budget hardening) | [PR #177](https://github.com/ContextualWisdomLab/TEPP/pull/177) | `580d45206536` | The change pins a verified central revision immutably; closure still requires exact-head hosted Checks, resolved threads, and independent review. | | GAP-017 | Accepted analysis runs have a terminal DTO, and cutoff-safe execution exists only on the #157 head after stacked PR #178 merged into that branch. | `active-PR` | product vertical | `c45be17` (accepted receipt only) | [#166](https://github.com/ContextualWisdomLab/TEPP/issues/166) / [PR #157](https://github.com/ContextualWisdomLab/TEPP/pull/157) | `7402745cfb0c` | Exact availability cutoff, snapshot binding, multiple-membership preservation, digest integrity, redacted no-eligible failure, and realistic end-to-end tests on protected main. Closed stacked PR #178 is not implemented-main. | From 78a701005f5ab74cefee43a8fd21858ba35b5329 Mon Sep 17 00:00:00 2001 From: Seongho Bae Date: Mon, 24 Aug 2026 00:09:17 +0900 Subject: [PATCH 40/52] docs: refresh 97-PR exact-head gap register after stacked #191 Drop closed stacked #191, bind GAP current-head SHAs to the 2026-08-23T15:07:33Z REST inventory, and keep queued Checks off implemented-main. --- CHANGELOG.md | 13 +++++++------ docs/product-technical-gap-baseline.md | 27 +++++++++++++------------- 2 files changed, 20 insertions(+), 20 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 2231308b..3148c2ca 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -83,13 +83,14 @@ All notable changes to TEPP are documented here. The format follows Keep a Chang ### Changed -- Refreshed the live gap-baseline inventory to the 2026-08-23T14:08:41Z GitHub - snapshot (96 open PRs / 27 drafts / 12 issues; protected-main +- Refreshed the live gap-baseline inventory to the 2026-08-23T15:07:33Z GitHub + snapshot (97 open PRs / 28 drafts / 12 issues; protected-main `c45be17a9dbce95ef81cee230e9d128abc7160ac`), binding each operator-gap current - head SHA to that exact-head register, including #49 `90b08bbe82cb` extra-process - lag underflow and #164 `8b78797578a1` after concurrent operator-language - replacement. Duplicate PR #179 remains closed. Stacked-merged heads and queued - Checks are not implemented-main. + head SHA to that exact-head register, including #48 `b3dc7dab36e9` after + stacked-merged #191 TRSL lineage artifacts, #49 `e301e9706c0b` TIPRED NaN + coverage, and #164 `0a3520fa2759` as the predecessor register head. Duplicate + PR #179 remains closed. Stacked-merged heads and queued Checks are not + implemented-main. - Clarified ADR 0001 so it owns Rust-first numerical/reference-backend authority while ADR 0011 owns cross-service MSA/service authority. - Clarified ADR 0006 so it owns GPU/VRAM and model-credential boundaries; ADR 0010 now owns LLM orchestration policy and ADR 0015 owns autonomous repository-write/review/merge authority. - Expanded ADR 0002–0005 and 0009–0011 with explicit implementation maturity, alternatives, failure/recovery, compatibility/migration, verification, and rollback/supersession boundaries where they were previously implicit. diff --git a/docs/product-technical-gap-baseline.md b/docs/product-technical-gap-baseline.md index dca9ff56..3ca9bf9b 100644 --- a/docs/product-technical-gap-baseline.md +++ b/docs/product-technical-gap-baseline.md @@ -2,7 +2,7 @@ **Status:** Live delivery baseline **Product:** Temporal Event Psychometrics Platform (TEPP) -**Snapshot:** 2026-08-23T14:52:16Z +**Snapshot:** 2026-08-23T15:07:33Z **Protected-main evidence:** `c45be17a9dbce95ef81cee230e9d128abc7160ac` **Workspace version on protected main:** `0.1.0` **Canonical gap-baseline authority:** [PR #164](https://github.com/ContextualWisdomLab/TEPP/pull/164). Duplicate [PR #179](https://github.com/ContextualWisdomLab/TEPP/pull/179) was closed at 2026-08-23T12:39:22Z and is not a second protected-main register. @@ -26,9 +26,9 @@ GitHub state before any customer, release, certification, or valuation claim. |---|---:|---| | Protected-main SHA | `c45be17a9dbce95ef81cee230e9d128abc7160ac` | All as-built claims are bounded to this commit. | | Workspace members | 10 Rust crates | The foundation is modular, but the approved target contains additional semantic, estimator, compute, psychometric, event-intelligence, network, interpretation, artifact, and visual boundaries. | -| Open pull requests | **98** | The queue is itself a release blocker and requires consolidation. | +| Open pull requests | **97** | The queue is itself a release blocker and requires consolidation. | | Draft pull requests | **28** | Most queued work is not independently review-ready. | -| Non-draft pull requests | **70** | A non-draft state is not a qualifying review or required-check result. | +| Non-draft pull requests | **69** | A non-draft state is not a qualifying review or required-check result. | | Open product issues | **12** | Issue #156 plus the product-completion program #166–#176. | | Duplicate gap-baseline PRs | **#164** (authority); **#179** closed as superseded | Only one live register remains; queued Checks on #164 are not protected-main evidence. | | Current package version | `0.1.0` | No supported product release is established by the repository version alone. | @@ -37,7 +37,7 @@ The pull-request counts come from the live GitHub search at this snapshot. The full exact-head classification is owned by [issue #175](https://github.com/ContextualWisdomLab/TEPP/issues/175); this file keeps the operator-level summary while the exact-head register below records the -current 98-row volatile queue. Passing or queued Checks on an open PR never +current 97-row volatile queue. Passing or queued Checks on an open PR never promote that PR to implemented-main. ## Current open pull-request evidence @@ -50,7 +50,6 @@ Checks, and branch rules immediately before every mutation. | PR | Exact current head | Draft | Base | Title | |---:|---|:---:|---|---| | #192 | `1690c7b65693cf27c8f1730150d67084594aef07` | true | agent/psychometric-standardised-continuous-drift | feat(psychometric): recover Driver p.16 asymTIPREDEFFECTstd after positive variances | -| #191 | `d894705147e5c2027ae2f581f458fe14d2551c7e` | false | agent/topic-logratio-coordinates | feat(topic): publish bounded TRSL topic lineage artifacts | | #190 | `adb0bc6f2a1b0684eb9242bcb0d6cddd1ff09ae3` | true | agent/psychometric-standardised-continuous-diffusion | feat(psychometric): recover Driver p.16 DRIFTstd after positive asymDIFFUSION | | #189 | `0836c359fab7878084ac3a711920550eb6cacb0d` | true | agent/psychometric-standardised-discrete-diffusion | feat(psychometric): recover Driver p.16 DIFFUSIONstd after positive asymDIFFUSION | | #188 | `444304d2d702cceb47cd4fdf695ba630d7e7c83a` | true | agent/psychometric-standardised-discrete-drift | feat(psychometric): recover Driver p.16 discreteDIFFUSIONstd after positive asymDIFFUSION | @@ -63,7 +62,7 @@ Checks, and branch rules immediately before every mutation. | #180 | `fa169e8e41f13d3bae6aff242db68ebf8281e112` | false | main | fix(transport): hide raw provider exception details | | #177 | `580d45206536bf2f7deba327ffafb96a69ba7260` | false | main | fix(workflow): pin scheduler budget hardening | | #165 | `34083c3f5d6637cf1665a29dac45fbf67a74d5dd` | false | main | feat: route hourly product agents through contextual orchestrator | -| #164 | `33bf824dfd71f3d3767372d6245f4fdfe32a1e28` | false | main | docs: define TEPP product completion and technical gap baseline | +| #164 | `0a3520fa2759cacce229e5a56283f854002cf66d` | false | main | docs: define TEPP product completion and technical gap baseline | | #157 | `7402745cfb0c27964f286c38a2efd7042c2320ff` | false | main | feat(api): publish completed analysis-run result contract | | #155 | `02c009c16e6a9c6fee3237224ed6a17cbc4169e1` | false | main | feat(api): admit LineageWeave as a modular analysis-run consumer | | #154 | `a7a1bdf96a6759f11aed9284b73319ed94b82fd2` | false | main | ci(rust): refresh branch coverage compiler baseline | @@ -145,10 +144,10 @@ Checks, and branch rules immediately before every mutation. | #57 | `b76e38393e932873ec2aed682ab539ee61828537` | false | main | feat(validation): exact-head claim promotion gates | | #51 | `1801501c4d7c5be720d24aba954280fbc9068612` | false | main | feat(compute): VRAM budget types with CPU f64 fallback | | #50 | `d4cd08341e8dca8475542cf9f3b46a1f5bae5ea3` | false | main | feat(event): refuse TDT/CHRONOS outputs as state transitions | -| #49 | `90b08bbe82cbe7776365a6c04df38857dfe5e53c` | false | main | feat(psychometric): posterior ESEM input gates with true-parameter RMSE | -| #48 | `e3373912891263d4f0c45625cc6312591120bf80` | false | main | feat(topic): logistic-normal ALR coordinates with true-parameter RMSE | +| #49 | `e301e9706c0bd671ccad533063fb624cc568d0b3` | false | main | feat(psychometric): posterior ESEM input gates with true-parameter RMSE | +| #48 | `b3dc7dab36e94728af7bea45a7eb3a065b616db5` | false | main | feat(topic): logistic-normal ALR coordinates with true-parameter RMSE | -The exact-head register, counts, and protected-main SHA were fetched from the live GitHub REST API at `2026-08-23T14:52:16Z`. Review decisions, required Checks, and mergeability remain volatile; re-read them immediately before every mutation. This snapshot is not merge authorization and does not treat queued or passing Checks as shipped protected-main behavior. +The exact-head register, counts, and protected-main SHA were fetched from the live GitHub REST API at `2026-08-23T15:07:33Z`. Review decisions, required Checks, and mergeability remain volatile; re-read them immediately before every mutation. This snapshot is not merge authorization and does not treat queued or passing Checks as shipped protected-main behavior. ## Authority and derivation @@ -204,7 +203,7 @@ visual workspace, or a supported multi-tenant release. | GAP-003A | Immutable evidence cannot yet be submitted to a durable validation run that produces operator-usable scientific acceptance evidence. | `accepted-target` | product-completion | `c45be17` (validation metrics are library-level only) | [#166](https://github.com/ContextualWisdomLab/TEPP/issues/166) | `—` (issue program; no current implementation PR) | Compose/CLI/API execution must bind immutable evidence, cutoffs, model configuration, validation metrics, and reproducibility manifests to one idempotent run. | | GAP-003B | Scientific result artifacts cannot yet be persisted, restarted, and recovered as one supported operator workflow. | `accepted-target` | product-completion | `c45be17` (persistence contracts lack E2E recovery) | [#166](https://github.com/ContextualWisdomLab/TEPP/issues/166) | `—` (issue program; no current implementation PR) | Durable storage, migration/rollback, restart/recovery, artifact digest verification, and terminal retrieval must pass against a real Compose deployment. | | GAP-003C | The persistence slice classifies concurrent-write SQLSTATEs, but has no measured hot-partition detection, routing, or mitigation for tenant/result workloads. | `accepted-target` | product-completion | `c45be17` (conflict classification only; no measured partition control) | [#166](https://github.com/ContextualWisdomLab/TEPP/issues/166) | `—` (issue program; no current implementation PR) | A real Compose/PostgreSQL workload identifies hot keys and partition skew, applies bounded tenant/time or result routing without weakening 3NF or temporal authority, and proves conflict rate, latency, recovery, and migration/rollback behavior under load. | -| GAP-004 | The central shared-latent temporal/relational topic estimator is absent. | `accepted-target` | product vertical | `c45be17` (no production estimator) | [#167](https://github.com/ContextualWisdomLab/TEPP/issues/167) / [PR #48](https://github.com/ContextualWisdomLab/TEPP/pull/48) | `b7214a8e9dc1` | Rust CPU `f64` fitting, sparse bounded parallelism, posterior artifacts, convergence, true-parameter RMSE/bias/coverage, and real candidate-K fitting. | +| GAP-004 | The central shared-latent temporal/relational topic estimator is absent. | `accepted-target` | product vertical | `c45be17` (no production estimator) | [#167](https://github.com/ContextualWisdomLab/TEPP/issues/167) / [PR #48](https://github.com/ContextualWisdomLab/TEPP/pull/48) | `b3dc7dab36e9` | Rust CPU `f64` fitting, sparse bounded parallelism, posterior artifacts, convergence, true-parameter RMSE/bias/coverage, and real candidate-K fitting. | | GAP-005 | Real multilingual documents are not yet transformed into validated exact-span semantic units and versioned shared concepts. | `accepted-target` | product vertical | `c45be17` (evidence spans exist without full semantic pipeline) | [#168](https://github.com/ContextualWisdomLab/TEPP/issues/168) | `—` (PR #53 merged only onto a non-main maintenance branch and is not implemented-main) | Unicode/layout/language-tailored processing, unknown-concept review, multilingual calibration/invariance, image-position evidence, and prompt-injection tests. | | GAP-006 | Posterior topic measurements cannot yet be fitted through a complete cross-classified longitudinal ESEM/DSEM engine. | `accepted-target` | product vertical | `c45be17` (temporal and membership primitives only) | [#169](https://github.com/ContextualWisdomLab/TEPP/issues/169) / [PR #119](https://github.com/ContextualWisdomLab/TEPP/pull/119) | `47ab763d49b1` | Plausible-value/joint uncertainty, invariance, irregular event time, within/between separation, multiple membership, true-parameter recovery, and causal-claim refusal. | | GAP-007 | TDT detection/tracking and CHRONOS schema/forecast/temporal reasoning remain isolated bounded gates rather than one calibrated product workflow. | `accepted-target` | product vertical | `c45be17` (event/time primitives only) | [#170](https://github.com/ContextualWisdomLab/TEPP/issues/170) / [PR #70](https://github.com/ContextualWisdomLab/TEPP/pull/70) | `7a1f33aa68c1` | Span-grounded mentions, calibrated TDT metrics, schema/forecast hypothesis states, interval consistency, known-truth recovery, persistence, and exports. | @@ -212,10 +211,10 @@ visual workspace, or a supported multi-tenant release. | GAP-009 | Topic association and cluster outputs lack posterior-valid estimation, uncertainty, edge stability, and consensus communities. | `accepted-target` | product vertical | `c45be17` (network primitives only) | [#172](https://github.com/ContextualWisdomLab/TEPP/issues/172) / [PR #71](https://github.com/ContextualWisdomLab/TEPP/pull/71) | `2588f38281b9` | Valid log-ratio coordinates, interval/stability-bearing edges, repeated Leiden consensus, known-truth network/cluster recovery, and reproducible exports. | | GAP-010 | Operators lack coordinated accessible visual analytics and exact-value export workflows. | `accepted-target` | product vertical | `c45be17` (no visual workspace) | [#173](https://github.com/ContextualWisdomLab/TEPP/issues/173) | `—` (Figma work not started) | Real Figma File ID in ADR, Storybook/design tokens, ten PRD views, exact-value tables, accessible interaction/print/PDF states, provenance, and source-consistent exports. | | GAP-011 | TEPP is not yet an operable multi-tenant service or supported release. | `accepted-target` | product vertical | `c45be17` (library contracts only) | [#174](https://github.com/ContextualWisdomLab/TEPP/issues/174) | `—` (issue program; no current implementation PR) | Durable queue/storage, OIDC/RLS/purpose controls, OpenTelemetry/SLOs, load/recovery, migrations, signed release/SBOM/provenance, assurance evidence, and support policy. | -| GAP-012 | The 98-PR queue obscures authority, repeatedly stales exact-head evidence, and fragments product boundaries. | `partial` | release blocker | `c45be17` (protected-main truth) | [#175](https://github.com/ContextualWisdomLab/TEPP/issues/175) | `—` (live queue program) | Every PR classified; unique landing vehicles; compatible slices folded; superseded work closed with provenance; scheduler prioritizes consolidation; queue reaches zero before GA. | +| GAP-012 | The 97-PR queue obscures authority, repeatedly stales exact-head evidence, and fragments product boundaries. | `partial` | release blocker | `c45be17` (protected-main truth) | [#175](https://github.com/ContextualWisdomLab/TEPP/issues/175) | `—` (live queue program) | Every PR classified; unique landing vehicles; compatible slices folded; superseded work closed with provenance; scheduler prioritizes consolidation; queue reaches zero before GA. | | GAP-013 | Evidence-grounded LLM interpretation is routed but not executed and validated as a production interpreter/verifier port. | `partial` | active integration | `c45be17` (routing and refusal contracts only) | [#176](https://github.com/ContextualWisdomLab/TEPP/issues/176), [PR #69](https://github.com/ContextualWisdomLab/TEPP/pull/69), [PR #165](https://github.com/ContextualWisdomLab/TEPP/pull/165) | `8e4a3ca9cc80` / `34083c3f5d66` | Contextual-orchestrator execution, evidence citations, verifier refusals, comparable-budget ablations, provider eligibility/fallback, abstention, live/offline contract tests, and no numerical-authority escalation. | | GAP-014 | README/TRD and some PR descriptions lag protected-main and live queue reality. | `partial` | documentation drift | `c45be17` (documentation is not fully synchronized) | [#175](https://github.com/ContextualWisdomLab/TEPP/issues/175) | `—` (queue-consolidation work) | Reconcile README, TRD, traceability, ADR maturity, CHANGELOG, preferred-merge declarations, and exact protected-main evidence. | -| GAP-015 | There was no canonical live product/operator-gap register tied to documentation validation. | `active-PR` | landing vehicle | `c45be17` (no live gap register) | [PR #164](https://github.com/ContextualWisdomLab/TEPP/pull/164) (authority); closed [PR #179](https://github.com/ContextualWisdomLab/TEPP/pull/179) is not a second register | `33bf824dfd71` | Merge this document and its validator/map/quality-test integration after exact-head checks and independent review. Passing Checks on #164 are not implemented-main. | +| GAP-015 | There was no canonical live product/operator-gap register tied to documentation validation. | `active-PR` | landing vehicle | `c45be17` (no live gap register) | [PR #164](https://github.com/ContextualWisdomLab/TEPP/pull/164) (authority); closed [PR #179](https://github.com/ContextualWisdomLab/TEPP/pull/179) is not a second register | `0a3520fa2759` | Merge this document and its validator/map/quality-test integration after exact-head checks and independent review. Passing Checks on #164 are not implemented-main. | | GAP-016 | Hourly PR maintenance used an older central scheduler revision whose per-repository sweep budgets could amplify the queued review workload. | `active-PR` | operability hardening | `c45be17` (caller pin before central budget hardening) | [PR #177](https://github.com/ContextualWisdomLab/TEPP/pull/177) | `580d45206536` | The change pins a verified central revision immutably; closure still requires exact-head hosted Checks, resolved threads, and independent review. | | GAP-017 | Accepted analysis runs have a terminal DTO, and cutoff-safe execution exists only on the #157 head after stacked PR #178 merged into that branch. | `active-PR` | product vertical | `c45be17` (accepted receipt only) | [#166](https://github.com/ContextualWisdomLab/TEPP/issues/166) / [PR #157](https://github.com/ContextualWisdomLab/TEPP/pull/157) | `7402745cfb0c` | Exact availability cutoff, snapshot binding, multiple-membership preservation, digest integrity, redacted no-eligible failure, and realistic end-to-end tests on protected main. Closed stacked PR #178 is not implemented-main. | @@ -252,13 +251,13 @@ because its head can change after this file is committed. | [#155](https://github.com/ContextualWisdomLab/TEPP/pull/155) | Modular LineageWeave consumer parent, including folded #158/#159 | Obtain independent review; passing Checks are not implemented-main. | | [#180](https://github.com/ContextualWisdomLab/TEPP/pull/180) | Hide raw provider exception details | Review/check gates; do not weaken fail-closed provider handling. | | [#153](https://github.com/ContextualWisdomLab/TEPP/pull/153) | Refuse location as entity identity or language | Independent review after exact-head membership tests. | -| [#48](https://github.com/ContextualWisdomLab/TEPP/pull/48) | Logistic-normal/ILR coordinate slice | Resolve requested changes and fold into the estimator landing plan; do not call it fitting. | +| [#48](https://github.com/ContextualWisdomLab/TEPP/pull/48) | Logistic-normal/ILR coordinate slice, including folded stacked #191 TRSL lineage artifacts | Fold into the estimator landing plan; coordinates and lineage artifacts are not candidate-K fitting. | | [#51](https://github.com/ContextualWisdomLab/TEPP/pull/51) | VRAM budget/fallback policy types | Resolve requested changes; connect only to a real production kernel under #171. | | [#67](https://github.com/ContextualWisdomLab/TEPP/pull/67) | Model-selection gates | Rebase/merge only with an explicit path to real candidate fitting under #167. | | [#69](https://github.com/ContextualWisdomLab/TEPP/pull/69) | Interpretation grounding/refusal metrics | Fold into the product interpreter/verifier under #176. | | [#71](https://github.com/ContextualWisdomLab/TEPP/pull/71) | Compositional geometry/network pair metrics | Fold into the network estimator under #172. | | [#119](https://github.com/ContextualWisdomLab/TEPP/pull/119) | Bounded loading/lag recovery slice | Consolidate into the psychometric engine under #169. | -| [#181](https://github.com/ContextualWisdomLab/TEPP/pull/181)–[#187](https://github.com/ContextualWisdomLab/TEPP/pull/187) | Draft stacked psychometric T0VAR/drift recoveries | Keep stacked; do not promote drafts or predecessor heads as protected-main. | +| [#181](https://github.com/ContextualWisdomLab/TEPP/pull/181)–[#190](https://github.com/ContextualWisdomLab/TEPP/pull/190), [#192](https://github.com/ContextualWisdomLab/TEPP/pull/192) | Draft stacked psychometric T0VAR/drift recoveries | Keep stacked; do not promote drafts or predecessor heads as protected-main. Closed stacked #191 landed on #48 only. | ## Delivery sequence From 2676a5bf8d2367e9750565d3dae36027a67cedc5 Mon Sep 17 00:00:00 2001 From: Seongho Bae Date: Mon, 24 Aug 2026 00:58:16 +0900 Subject: [PATCH 41/52] docs: refresh 97-PR exact-head gap register after #49 1e3e2eb Bind GAP current-head SHAs to the 2026-08-23T15:57:48Z REST inventory, including #49 exp/expm1 overflow rewrites. Queued Checks remain off implemented-main. --- CHANGELOG.md | 10 +++++----- docs/product-technical-gap-baseline.md | 10 +++++----- 2 files changed, 10 insertions(+), 10 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 3148c2ca..4babc283 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -83,13 +83,13 @@ All notable changes to TEPP are documented here. The format follows Keep a Chang ### Changed -- Refreshed the live gap-baseline inventory to the 2026-08-23T15:07:33Z GitHub +- Refreshed the live gap-baseline inventory to the 2026-08-23T15:57:48Z GitHub snapshot (97 open PRs / 28 drafts / 12 issues; protected-main `c45be17a9dbce95ef81cee230e9d128abc7160ac`), binding each operator-gap current - head SHA to that exact-head register, including #48 `b3dc7dab36e9` after - stacked-merged #191 TRSL lineage artifacts, #49 `e301e9706c0b` TIPRED NaN - coverage, and #164 `0a3520fa2759` as the predecessor register head. Duplicate - PR #179 remains closed. Stacked-merged heads and queued Checks are not + head SHA to that exact-head register, including #49 `1e3e2eb04c8a` after + exp/expm1 overflow rewrite guards, #48 `b3dc7dab36e9` after stacked-merged + #191, and #164 `78a701005f5a` as the predecessor register head. Duplicate PR + #179 remains closed. Stacked-merged heads and queued Checks are not implemented-main. - Clarified ADR 0001 so it owns Rust-first numerical/reference-backend authority while ADR 0011 owns cross-service MSA/service authority. - Clarified ADR 0006 so it owns GPU/VRAM and model-credential boundaries; ADR 0010 now owns LLM orchestration policy and ADR 0015 owns autonomous repository-write/review/merge authority. diff --git a/docs/product-technical-gap-baseline.md b/docs/product-technical-gap-baseline.md index 3ca9bf9b..3e8cb380 100644 --- a/docs/product-technical-gap-baseline.md +++ b/docs/product-technical-gap-baseline.md @@ -2,7 +2,7 @@ **Status:** Live delivery baseline **Product:** Temporal Event Psychometrics Platform (TEPP) -**Snapshot:** 2026-08-23T15:07:33Z +**Snapshot:** 2026-08-23T15:57:48Z **Protected-main evidence:** `c45be17a9dbce95ef81cee230e9d128abc7160ac` **Workspace version on protected main:** `0.1.0` **Canonical gap-baseline authority:** [PR #164](https://github.com/ContextualWisdomLab/TEPP/pull/164). Duplicate [PR #179](https://github.com/ContextualWisdomLab/TEPP/pull/179) was closed at 2026-08-23T12:39:22Z and is not a second protected-main register. @@ -62,7 +62,7 @@ Checks, and branch rules immediately before every mutation. | #180 | `fa169e8e41f13d3bae6aff242db68ebf8281e112` | false | main | fix(transport): hide raw provider exception details | | #177 | `580d45206536bf2f7deba327ffafb96a69ba7260` | false | main | fix(workflow): pin scheduler budget hardening | | #165 | `34083c3f5d6637cf1665a29dac45fbf67a74d5dd` | false | main | feat: route hourly product agents through contextual orchestrator | -| #164 | `0a3520fa2759cacce229e5a56283f854002cf66d` | false | main | docs: define TEPP product completion and technical gap baseline | +| #164 | `78a701005f5ab74cefee43a8fd21858ba35b5329` | false | main | docs: define TEPP product completion and technical gap baseline | | #157 | `7402745cfb0c27964f286c38a2efd7042c2320ff` | false | main | feat(api): publish completed analysis-run result contract | | #155 | `02c009c16e6a9c6fee3237224ed6a17cbc4169e1` | false | main | feat(api): admit LineageWeave as a modular analysis-run consumer | | #154 | `a7a1bdf96a6759f11aed9284b73319ed94b82fd2` | false | main | ci(rust): refresh branch coverage compiler baseline | @@ -144,10 +144,10 @@ Checks, and branch rules immediately before every mutation. | #57 | `b76e38393e932873ec2aed682ab539ee61828537` | false | main | feat(validation): exact-head claim promotion gates | | #51 | `1801501c4d7c5be720d24aba954280fbc9068612` | false | main | feat(compute): VRAM budget types with CPU f64 fallback | | #50 | `d4cd08341e8dca8475542cf9f3b46a1f5bae5ea3` | false | main | feat(event): refuse TDT/CHRONOS outputs as state transitions | -| #49 | `e301e9706c0bd671ccad533063fb624cc568d0b3` | false | main | feat(psychometric): posterior ESEM input gates with true-parameter RMSE | +| #49 | `1e3e2eb04c8a63bacf50684f2cb9aad60cd93d2e` | false | main | feat(psychometric): posterior ESEM input gates with true-parameter RMSE | | #48 | `b3dc7dab36e94728af7bea45a7eb3a065b616db5` | false | main | feat(topic): logistic-normal ALR coordinates with true-parameter RMSE | -The exact-head register, counts, and protected-main SHA were fetched from the live GitHub REST API at `2026-08-23T15:07:33Z`. Review decisions, required Checks, and mergeability remain volatile; re-read them immediately before every mutation. This snapshot is not merge authorization and does not treat queued or passing Checks as shipped protected-main behavior. +The exact-head register, counts, and protected-main SHA were fetched from the live GitHub REST API at `2026-08-23T15:57:48Z`. Review decisions, required Checks, and mergeability remain volatile; re-read them immediately before every mutation. This snapshot is not merge authorization and does not treat queued or passing Checks as shipped protected-main behavior. ## Authority and derivation @@ -214,7 +214,7 @@ visual workspace, or a supported multi-tenant release. | GAP-012 | The 97-PR queue obscures authority, repeatedly stales exact-head evidence, and fragments product boundaries. | `partial` | release blocker | `c45be17` (protected-main truth) | [#175](https://github.com/ContextualWisdomLab/TEPP/issues/175) | `—` (live queue program) | Every PR classified; unique landing vehicles; compatible slices folded; superseded work closed with provenance; scheduler prioritizes consolidation; queue reaches zero before GA. | | GAP-013 | Evidence-grounded LLM interpretation is routed but not executed and validated as a production interpreter/verifier port. | `partial` | active integration | `c45be17` (routing and refusal contracts only) | [#176](https://github.com/ContextualWisdomLab/TEPP/issues/176), [PR #69](https://github.com/ContextualWisdomLab/TEPP/pull/69), [PR #165](https://github.com/ContextualWisdomLab/TEPP/pull/165) | `8e4a3ca9cc80` / `34083c3f5d66` | Contextual-orchestrator execution, evidence citations, verifier refusals, comparable-budget ablations, provider eligibility/fallback, abstention, live/offline contract tests, and no numerical-authority escalation. | | GAP-014 | README/TRD and some PR descriptions lag protected-main and live queue reality. | `partial` | documentation drift | `c45be17` (documentation is not fully synchronized) | [#175](https://github.com/ContextualWisdomLab/TEPP/issues/175) | `—` (queue-consolidation work) | Reconcile README, TRD, traceability, ADR maturity, CHANGELOG, preferred-merge declarations, and exact protected-main evidence. | -| GAP-015 | There was no canonical live product/operator-gap register tied to documentation validation. | `active-PR` | landing vehicle | `c45be17` (no live gap register) | [PR #164](https://github.com/ContextualWisdomLab/TEPP/pull/164) (authority); closed [PR #179](https://github.com/ContextualWisdomLab/TEPP/pull/179) is not a second register | `0a3520fa2759` | Merge this document and its validator/map/quality-test integration after exact-head checks and independent review. Passing Checks on #164 are not implemented-main. | +| GAP-015 | There was no canonical live product/operator-gap register tied to documentation validation. | `active-PR` | landing vehicle | `c45be17` (no live gap register) | [PR #164](https://github.com/ContextualWisdomLab/TEPP/pull/164) (authority); closed [PR #179](https://github.com/ContextualWisdomLab/TEPP/pull/179) is not a second register | `78a701005f5a` | Merge this document and its validator/map/quality-test integration after exact-head checks and independent review. Passing Checks on #164 are not implemented-main. | | GAP-016 | Hourly PR maintenance used an older central scheduler revision whose per-repository sweep budgets could amplify the queued review workload. | `active-PR` | operability hardening | `c45be17` (caller pin before central budget hardening) | [PR #177](https://github.com/ContextualWisdomLab/TEPP/pull/177) | `580d45206536` | The change pins a verified central revision immutably; closure still requires exact-head hosted Checks, resolved threads, and independent review. | | GAP-017 | Accepted analysis runs have a terminal DTO, and cutoff-safe execution exists only on the #157 head after stacked PR #178 merged into that branch. | `active-PR` | product vertical | `c45be17` (accepted receipt only) | [#166](https://github.com/ContextualWisdomLab/TEPP/issues/166) / [PR #157](https://github.com/ContextualWisdomLab/TEPP/pull/157) | `7402745cfb0c` | Exact availability cutoff, snapshot binding, multiple-membership preservation, digest integrity, redacted no-eligible failure, and realistic end-to-end tests on protected main. Closed stacked PR #178 is not implemented-main. | From bde2281b7acbf4c46405316ee0930f753930db40 Mon Sep 17 00:00:00 2001 From: Seongho Bae Date: Mon, 24 Aug 2026 01:52:58 +0900 Subject: [PATCH 42/52] docs: refresh 99-PR exact-head gap register after stacked #193/#194 Bind GAP current-head SHAs to the 2026-08-23T16:52:27Z REST inventory. #49 nightly 1701/1702 on 1e3e2eb is logged, not treated as implemented-main. Queued Checks remain off protected-main. --- CHANGELOG.md | 13 ++++++------- docs/product-technical-gap-baseline.md | 20 +++++++++++--------- 2 files changed, 17 insertions(+), 16 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 4babc283..53d78f0e 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -83,14 +83,13 @@ All notable changes to TEPP are documented here. The format follows Keep a Chang ### Changed -- Refreshed the live gap-baseline inventory to the 2026-08-23T15:57:48Z GitHub - snapshot (97 open PRs / 28 drafts / 12 issues; protected-main +- Refreshed the live gap-baseline inventory to the 2026-08-23T16:52:27Z GitHub + snapshot (99 open PRs / 30 drafts / 12 issues; protected-main `c45be17a9dbce95ef81cee230e9d128abc7160ac`), binding each operator-gap current - head SHA to that exact-head register, including #49 `1e3e2eb04c8a` after - exp/expm1 overflow rewrite guards, #48 `b3dc7dab36e9` after stacked-merged - #191, and #164 `78a701005f5a` as the predecessor register head. Duplicate PR - #179 remains closed. Stacked-merged heads and queued Checks are not - implemented-main. + head SHA to that exact-head register, including stacked drafts #193/#194, + #49 `1e3e2eb04c8a` (required nightly still 1701/1702 on this head), and #164 + `2676a5bf8d23` as the predecessor register head. Duplicate PR #179 remains + closed. Stacked-merged heads and queued Checks are not implemented-main. - Clarified ADR 0001 so it owns Rust-first numerical/reference-backend authority while ADR 0011 owns cross-service MSA/service authority. - Clarified ADR 0006 so it owns GPU/VRAM and model-credential boundaries; ADR 0010 now owns LLM orchestration policy and ADR 0015 owns autonomous repository-write/review/merge authority. - Expanded ADR 0002–0005 and 0009–0011 with explicit implementation maturity, alternatives, failure/recovery, compatibility/migration, verification, and rollback/supersession boundaries where they were previously implicit. diff --git a/docs/product-technical-gap-baseline.md b/docs/product-technical-gap-baseline.md index 3e8cb380..ca15e9cb 100644 --- a/docs/product-technical-gap-baseline.md +++ b/docs/product-technical-gap-baseline.md @@ -2,7 +2,7 @@ **Status:** Live delivery baseline **Product:** Temporal Event Psychometrics Platform (TEPP) -**Snapshot:** 2026-08-23T15:57:48Z +**Snapshot:** 2026-08-23T16:52:27Z **Protected-main evidence:** `c45be17a9dbce95ef81cee230e9d128abc7160ac` **Workspace version on protected main:** `0.1.0` **Canonical gap-baseline authority:** [PR #164](https://github.com/ContextualWisdomLab/TEPP/pull/164). Duplicate [PR #179](https://github.com/ContextualWisdomLab/TEPP/pull/179) was closed at 2026-08-23T12:39:22Z and is not a second protected-main register. @@ -26,8 +26,8 @@ GitHub state before any customer, release, certification, or valuation claim. |---|---:|---| | Protected-main SHA | `c45be17a9dbce95ef81cee230e9d128abc7160ac` | All as-built claims are bounded to this commit. | | Workspace members | 10 Rust crates | The foundation is modular, but the approved target contains additional semantic, estimator, compute, psychometric, event-intelligence, network, interpretation, artifact, and visual boundaries. | -| Open pull requests | **97** | The queue is itself a release blocker and requires consolidation. | -| Draft pull requests | **28** | Most queued work is not independently review-ready. | +| Open pull requests | **99** | The queue is itself a release blocker and requires consolidation. | +| Draft pull requests | **30** | Most queued work is not independently review-ready. | | Non-draft pull requests | **69** | A non-draft state is not a qualifying review or required-check result. | | Open product issues | **12** | Issue #156 plus the product-completion program #166–#176. | | Duplicate gap-baseline PRs | **#164** (authority); **#179** closed as superseded | Only one live register remains; queued Checks on #164 are not protected-main evidence. | @@ -37,7 +37,7 @@ The pull-request counts come from the live GitHub search at this snapshot. The full exact-head classification is owned by [issue #175](https://github.com/ContextualWisdomLab/TEPP/issues/175); this file keeps the operator-level summary while the exact-head register below records the -current 97-row volatile queue. Passing or queued Checks on an open PR never +current 99-row volatile queue. Passing or queued Checks on an open PR never promote that PR to implemented-main. ## Current open pull-request evidence @@ -49,6 +49,8 @@ Checks, and branch rules immediately before every mutation. | PR | Exact current head | Draft | Base | Title | |---:|---|:---:|---|---| +| #194 | `471b115e891be11fb41eb75a5cc3073258ab0f34` | true | agent/psychometric-standardised-asymptotic-tipred-effect | feat(psychometric): recover Driver p.16 TIPREDEFFECTstd after positive variances | +| #193 | `6235a3fc6fd6899f85f74aed71053bd50529c34c` | true | agent/psychometric-standardised-asymptotic-tipred-effect | feat(psychometric): recover Driver p.16 finite-interval TIPREDEFFECTstd after positive variances | | #192 | `1690c7b65693cf27c8f1730150d67084594aef07` | true | agent/psychometric-standardised-continuous-drift | feat(psychometric): recover Driver p.16 asymTIPREDEFFECTstd after positive variances | | #190 | `adb0bc6f2a1b0684eb9242bcb0d6cddd1ff09ae3` | true | agent/psychometric-standardised-continuous-diffusion | feat(psychometric): recover Driver p.16 DRIFTstd after positive asymDIFFUSION | | #189 | `0836c359fab7878084ac3a711920550eb6cacb0d` | true | agent/psychometric-standardised-discrete-diffusion | feat(psychometric): recover Driver p.16 DIFFUSIONstd after positive asymDIFFUSION | @@ -62,7 +64,7 @@ Checks, and branch rules immediately before every mutation. | #180 | `fa169e8e41f13d3bae6aff242db68ebf8281e112` | false | main | fix(transport): hide raw provider exception details | | #177 | `580d45206536bf2f7deba327ffafb96a69ba7260` | false | main | fix(workflow): pin scheduler budget hardening | | #165 | `34083c3f5d6637cf1665a29dac45fbf67a74d5dd` | false | main | feat: route hourly product agents through contextual orchestrator | -| #164 | `78a701005f5ab74cefee43a8fd21858ba35b5329` | false | main | docs: define TEPP product completion and technical gap baseline | +| #164 | `2676a5bf8d2367e9750565d3dae36027a67cedc5` | false | main | docs: define TEPP product completion and technical gap baseline | | #157 | `7402745cfb0c27964f286c38a2efd7042c2320ff` | false | main | feat(api): publish completed analysis-run result contract | | #155 | `02c009c16e6a9c6fee3237224ed6a17cbc4169e1` | false | main | feat(api): admit LineageWeave as a modular analysis-run consumer | | #154 | `a7a1bdf96a6759f11aed9284b73319ed94b82fd2` | false | main | ci(rust): refresh branch coverage compiler baseline | @@ -147,7 +149,7 @@ Checks, and branch rules immediately before every mutation. | #49 | `1e3e2eb04c8a63bacf50684f2cb9aad60cd93d2e` | false | main | feat(psychometric): posterior ESEM input gates with true-parameter RMSE | | #48 | `b3dc7dab36e94728af7bea45a7eb3a065b616db5` | false | main | feat(topic): logistic-normal ALR coordinates with true-parameter RMSE | -The exact-head register, counts, and protected-main SHA were fetched from the live GitHub REST API at `2026-08-23T15:57:48Z`. Review decisions, required Checks, and mergeability remain volatile; re-read them immediately before every mutation. This snapshot is not merge authorization and does not treat queued or passing Checks as shipped protected-main behavior. +The exact-head register, counts, and protected-main SHA were fetched from the live GitHub REST API at `2026-08-23T16:52:27Z`. Review decisions, required Checks, and mergeability remain volatile; re-read them immediately before every mutation. This snapshot is not merge authorization and does not treat queued or passing Checks as shipped protected-main behavior. ## Authority and derivation @@ -211,10 +213,10 @@ visual workspace, or a supported multi-tenant release. | GAP-009 | Topic association and cluster outputs lack posterior-valid estimation, uncertainty, edge stability, and consensus communities. | `accepted-target` | product vertical | `c45be17` (network primitives only) | [#172](https://github.com/ContextualWisdomLab/TEPP/issues/172) / [PR #71](https://github.com/ContextualWisdomLab/TEPP/pull/71) | `2588f38281b9` | Valid log-ratio coordinates, interval/stability-bearing edges, repeated Leiden consensus, known-truth network/cluster recovery, and reproducible exports. | | GAP-010 | Operators lack coordinated accessible visual analytics and exact-value export workflows. | `accepted-target` | product vertical | `c45be17` (no visual workspace) | [#173](https://github.com/ContextualWisdomLab/TEPP/issues/173) | `—` (Figma work not started) | Real Figma File ID in ADR, Storybook/design tokens, ten PRD views, exact-value tables, accessible interaction/print/PDF states, provenance, and source-consistent exports. | | GAP-011 | TEPP is not yet an operable multi-tenant service or supported release. | `accepted-target` | product vertical | `c45be17` (library contracts only) | [#174](https://github.com/ContextualWisdomLab/TEPP/issues/174) | `—` (issue program; no current implementation PR) | Durable queue/storage, OIDC/RLS/purpose controls, OpenTelemetry/SLOs, load/recovery, migrations, signed release/SBOM/provenance, assurance evidence, and support policy. | -| GAP-012 | The 97-PR queue obscures authority, repeatedly stales exact-head evidence, and fragments product boundaries. | `partial` | release blocker | `c45be17` (protected-main truth) | [#175](https://github.com/ContextualWisdomLab/TEPP/issues/175) | `—` (live queue program) | Every PR classified; unique landing vehicles; compatible slices folded; superseded work closed with provenance; scheduler prioritizes consolidation; queue reaches zero before GA. | +| GAP-012 | The 99-PR queue obscures authority, repeatedly stales exact-head evidence, and fragments product boundaries. | `partial` | release blocker | `c45be17` (protected-main truth) | [#175](https://github.com/ContextualWisdomLab/TEPP/issues/175) | `—` (live queue program) | Every PR classified; unique landing vehicles; compatible slices folded; superseded work closed with provenance; scheduler prioritizes consolidation; queue reaches zero before GA. | | GAP-013 | Evidence-grounded LLM interpretation is routed but not executed and validated as a production interpreter/verifier port. | `partial` | active integration | `c45be17` (routing and refusal contracts only) | [#176](https://github.com/ContextualWisdomLab/TEPP/issues/176), [PR #69](https://github.com/ContextualWisdomLab/TEPP/pull/69), [PR #165](https://github.com/ContextualWisdomLab/TEPP/pull/165) | `8e4a3ca9cc80` / `34083c3f5d66` | Contextual-orchestrator execution, evidence citations, verifier refusals, comparable-budget ablations, provider eligibility/fallback, abstention, live/offline contract tests, and no numerical-authority escalation. | | GAP-014 | README/TRD and some PR descriptions lag protected-main and live queue reality. | `partial` | documentation drift | `c45be17` (documentation is not fully synchronized) | [#175](https://github.com/ContextualWisdomLab/TEPP/issues/175) | `—` (queue-consolidation work) | Reconcile README, TRD, traceability, ADR maturity, CHANGELOG, preferred-merge declarations, and exact protected-main evidence. | -| GAP-015 | There was no canonical live product/operator-gap register tied to documentation validation. | `active-PR` | landing vehicle | `c45be17` (no live gap register) | [PR #164](https://github.com/ContextualWisdomLab/TEPP/pull/164) (authority); closed [PR #179](https://github.com/ContextualWisdomLab/TEPP/pull/179) is not a second register | `78a701005f5a` | Merge this document and its validator/map/quality-test integration after exact-head checks and independent review. Passing Checks on #164 are not implemented-main. | +| GAP-015 | There was no canonical live product/operator-gap register tied to documentation validation. | `active-PR` | landing vehicle | `c45be17` (no live gap register) | [PR #164](https://github.com/ContextualWisdomLab/TEPP/pull/164) (authority); closed [PR #179](https://github.com/ContextualWisdomLab/TEPP/pull/179) is not a second register | `2676a5bf8d23` | Merge this document and its validator/map/quality-test integration after exact-head checks and independent review. Passing Checks on #164 are not implemented-main. | | GAP-016 | Hourly PR maintenance used an older central scheduler revision whose per-repository sweep budgets could amplify the queued review workload. | `active-PR` | operability hardening | `c45be17` (caller pin before central budget hardening) | [PR #177](https://github.com/ContextualWisdomLab/TEPP/pull/177) | `580d45206536` | The change pins a verified central revision immutably; closure still requires exact-head hosted Checks, resolved threads, and independent review. | | GAP-017 | Accepted analysis runs have a terminal DTO, and cutoff-safe execution exists only on the #157 head after stacked PR #178 merged into that branch. | `active-PR` | product vertical | `c45be17` (accepted receipt only) | [#166](https://github.com/ContextualWisdomLab/TEPP/issues/166) / [PR #157](https://github.com/ContextualWisdomLab/TEPP/pull/157) | `7402745cfb0c` | Exact availability cutoff, snapshot binding, multiple-membership preservation, digest integrity, redacted no-eligible failure, and realistic end-to-end tests on protected main. Closed stacked PR #178 is not implemented-main. | @@ -257,7 +259,7 @@ because its head can change after this file is committed. | [#69](https://github.com/ContextualWisdomLab/TEPP/pull/69) | Interpretation grounding/refusal metrics | Fold into the product interpreter/verifier under #176. | | [#71](https://github.com/ContextualWisdomLab/TEPP/pull/71) | Compositional geometry/network pair metrics | Fold into the network estimator under #172. | | [#119](https://github.com/ContextualWisdomLab/TEPP/pull/119) | Bounded loading/lag recovery slice | Consolidate into the psychometric engine under #169. | -| [#181](https://github.com/ContextualWisdomLab/TEPP/pull/181)–[#190](https://github.com/ContextualWisdomLab/TEPP/pull/190), [#192](https://github.com/ContextualWisdomLab/TEPP/pull/192) | Draft stacked psychometric T0VAR/drift recoveries | Keep stacked; do not promote drafts or predecessor heads as protected-main. Closed stacked #191 landed on #48 only. | +| [#181](https://github.com/ContextualWisdomLab/TEPP/pull/181)–[#190](https://github.com/ContextualWisdomLab/TEPP/pull/190), [#192](https://github.com/ContextualWisdomLab/TEPP/pull/192)–[#194](https://github.com/ContextualWisdomLab/TEPP/pull/194) | Draft stacked psychometric T0VAR/drift/standardised recoveries | Keep stacked; do not promote drafts or predecessor heads as protected-main. Closed stacked #191 landed on #48 only. | ## Delivery sequence From 5790bd05e7b91e69774ada1e1db8a5cc3ad24aaa Mon Sep 17 00:00:00 2001 From: Seongho Bae Date: Mon, 24 Aug 2026 02:59:57 +0900 Subject: [PATCH 43/52] docs: refresh 101-PR exact-head gap register after #49 dd6cf43 Bind GAP current-head SHAs to the 2026-08-23T17:59:26Z REST inventory, including unique-fold coverage on #49 and stacked drafts #195/#196. Queued Checks remain off implemented-main. --- CHANGELOG.md | 13 +++++++------ docs/product-technical-gap-baseline.md | 26 ++++++++++++++------------ 2 files changed, 21 insertions(+), 18 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 53d78f0e..c4aeab87 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -83,13 +83,14 @@ All notable changes to TEPP are documented here. The format follows Keep a Chang ### Changed -- Refreshed the live gap-baseline inventory to the 2026-08-23T16:52:27Z GitHub - snapshot (99 open PRs / 30 drafts / 12 issues; protected-main +- Refreshed the live gap-baseline inventory to the 2026-08-23T17:59:26Z GitHub + snapshot (101 open PRs / 32 drafts / 12 issues; protected-main `c45be17a9dbce95ef81cee230e9d128abc7160ac`), binding each operator-gap current - head SHA to that exact-head register, including stacked drafts #193/#194, - #49 `1e3e2eb04c8a` (required nightly still 1701/1702 on this head), and #164 - `2676a5bf8d23` as the predecessor register head. Duplicate PR #179 remains - closed. Stacked-merged heads and queued Checks are not implemented-main. + head SHA to that exact-head register, including stacked drafts #195/#196, + #49 `dd6cf43e5edf` unique-fold branch coverage gate, #48 `6110d3660607` + log-ratio underflow, and #164 `bde2281b7acb` as the predecessor register head. + Duplicate PR #179 remains closed. Stacked-merged heads and queued Checks are + not implemented-main. - Clarified ADR 0001 so it owns Rust-first numerical/reference-backend authority while ADR 0011 owns cross-service MSA/service authority. - Clarified ADR 0006 so it owns GPU/VRAM and model-credential boundaries; ADR 0010 now owns LLM orchestration policy and ADR 0015 owns autonomous repository-write/review/merge authority. - Expanded ADR 0002–0005 and 0009–0011 with explicit implementation maturity, alternatives, failure/recovery, compatibility/migration, verification, and rollback/supersession boundaries where they were previously implicit. diff --git a/docs/product-technical-gap-baseline.md b/docs/product-technical-gap-baseline.md index ca15e9cb..e1aaeb8a 100644 --- a/docs/product-technical-gap-baseline.md +++ b/docs/product-technical-gap-baseline.md @@ -2,7 +2,7 @@ **Status:** Live delivery baseline **Product:** Temporal Event Psychometrics Platform (TEPP) -**Snapshot:** 2026-08-23T16:52:27Z +**Snapshot:** 2026-08-23T17:59:26Z **Protected-main evidence:** `c45be17a9dbce95ef81cee230e9d128abc7160ac` **Workspace version on protected main:** `0.1.0` **Canonical gap-baseline authority:** [PR #164](https://github.com/ContextualWisdomLab/TEPP/pull/164). Duplicate [PR #179](https://github.com/ContextualWisdomLab/TEPP/pull/179) was closed at 2026-08-23T12:39:22Z and is not a second protected-main register. @@ -26,8 +26,8 @@ GitHub state before any customer, release, certification, or valuation claim. |---|---:|---| | Protected-main SHA | `c45be17a9dbce95ef81cee230e9d128abc7160ac` | All as-built claims are bounded to this commit. | | Workspace members | 10 Rust crates | The foundation is modular, but the approved target contains additional semantic, estimator, compute, psychometric, event-intelligence, network, interpretation, artifact, and visual boundaries. | -| Open pull requests | **99** | The queue is itself a release blocker and requires consolidation. | -| Draft pull requests | **30** | Most queued work is not independently review-ready. | +| Open pull requests | **101** | The queue is itself a release blocker and requires consolidation. | +| Draft pull requests | **32** | Most queued work is not independently review-ready. | | Non-draft pull requests | **69** | A non-draft state is not a qualifying review or required-check result. | | Open product issues | **12** | Issue #156 plus the product-completion program #166–#176. | | Duplicate gap-baseline PRs | **#164** (authority); **#179** closed as superseded | Only one live register remains; queued Checks on #164 are not protected-main evidence. | @@ -37,7 +37,7 @@ The pull-request counts come from the live GitHub search at this snapshot. The full exact-head classification is owned by [issue #175](https://github.com/ContextualWisdomLab/TEPP/issues/175); this file keeps the operator-level summary while the exact-head register below records the -current 99-row volatile queue. Passing or queued Checks on an open PR never +current 101-row volatile queue. Passing or queued Checks on an open PR never promote that PR to implemented-main. ## Current open pull-request evidence @@ -49,6 +49,8 @@ Checks, and branch rules immediately before every mutation. | PR | Exact current head | Draft | Base | Title | |---:|---|:---:|---|---| +| #196 | `1cb91b43002765bf5b855be51e55cb29db41a599` | true | agent/psychometric-standardised-continuous-tipred-effect | feat(psychometric): recover Driver Table 3 T0TIPREDEFFECTstd after positive T0VAR | +| #195 | `cf275b25611953bd405550f96df257c77df01751` | true | agent/psychometric-standardised-continuous-tipred-effect | feat(psychometric): recover Driver p.16 CINTstd after positive asymDIFFUSION | | #194 | `471b115e891be11fb41eb75a5cc3073258ab0f34` | true | agent/psychometric-standardised-asymptotic-tipred-effect | feat(psychometric): recover Driver p.16 TIPREDEFFECTstd after positive variances | | #193 | `6235a3fc6fd6899f85f74aed71053bd50529c34c` | true | agent/psychometric-standardised-asymptotic-tipred-effect | feat(psychometric): recover Driver p.16 finite-interval TIPREDEFFECTstd after positive variances | | #192 | `1690c7b65693cf27c8f1730150d67084594aef07` | true | agent/psychometric-standardised-continuous-drift | feat(psychometric): recover Driver p.16 asymTIPREDEFFECTstd after positive variances | @@ -64,7 +66,7 @@ Checks, and branch rules immediately before every mutation. | #180 | `fa169e8e41f13d3bae6aff242db68ebf8281e112` | false | main | fix(transport): hide raw provider exception details | | #177 | `580d45206536bf2f7deba327ffafb96a69ba7260` | false | main | fix(workflow): pin scheduler budget hardening | | #165 | `34083c3f5d6637cf1665a29dac45fbf67a74d5dd` | false | main | feat: route hourly product agents through contextual orchestrator | -| #164 | `2676a5bf8d2367e9750565d3dae36027a67cedc5` | false | main | docs: define TEPP product completion and technical gap baseline | +| #164 | `bde2281b7acbf4c46405316ee0930f753930db40` | false | main | docs: define TEPP product completion and technical gap baseline | | #157 | `7402745cfb0c27964f286c38a2efd7042c2320ff` | false | main | feat(api): publish completed analysis-run result contract | | #155 | `02c009c16e6a9c6fee3237224ed6a17cbc4169e1` | false | main | feat(api): admit LineageWeave as a modular analysis-run consumer | | #154 | `a7a1bdf96a6759f11aed9284b73319ed94b82fd2` | false | main | ci(rust): refresh branch coverage compiler baseline | @@ -146,10 +148,10 @@ Checks, and branch rules immediately before every mutation. | #57 | `b76e38393e932873ec2aed682ab539ee61828537` | false | main | feat(validation): exact-head claim promotion gates | | #51 | `1801501c4d7c5be720d24aba954280fbc9068612` | false | main | feat(compute): VRAM budget types with CPU f64 fallback | | #50 | `d4cd08341e8dca8475542cf9f3b46a1f5bae5ea3` | false | main | feat(event): refuse TDT/CHRONOS outputs as state transitions | -| #49 | `1e3e2eb04c8a63bacf50684f2cb9aad60cd93d2e` | false | main | feat(psychometric): posterior ESEM input gates with true-parameter RMSE | -| #48 | `b3dc7dab36e94728af7bea45a7eb3a065b616db5` | false | main | feat(topic): logistic-normal ALR coordinates with true-parameter RMSE | +| #49 | `dd6cf43e5edfe1d9a7e344cac5352bfb55480e8a` | false | main | feat(psychometric): posterior ESEM input gates with true-parameter RMSE | +| #48 | `6110d3660607ba46b312b4d76f048f1bcc4f3bc5` | false | main | feat(topic): logistic-normal ALR coordinates with true-parameter RMSE | -The exact-head register, counts, and protected-main SHA were fetched from the live GitHub REST API at `2026-08-23T16:52:27Z`. Review decisions, required Checks, and mergeability remain volatile; re-read them immediately before every mutation. This snapshot is not merge authorization and does not treat queued or passing Checks as shipped protected-main behavior. +The exact-head register, counts, and protected-main SHA were fetched from the live GitHub REST API at `2026-08-23T17:59:26Z`. Review decisions, required Checks, and mergeability remain volatile; re-read them immediately before every mutation. This snapshot is not merge authorization and does not treat queued or passing Checks as shipped protected-main behavior. ## Authority and derivation @@ -205,7 +207,7 @@ visual workspace, or a supported multi-tenant release. | GAP-003A | Immutable evidence cannot yet be submitted to a durable validation run that produces operator-usable scientific acceptance evidence. | `accepted-target` | product-completion | `c45be17` (validation metrics are library-level only) | [#166](https://github.com/ContextualWisdomLab/TEPP/issues/166) | `—` (issue program; no current implementation PR) | Compose/CLI/API execution must bind immutable evidence, cutoffs, model configuration, validation metrics, and reproducibility manifests to one idempotent run. | | GAP-003B | Scientific result artifacts cannot yet be persisted, restarted, and recovered as one supported operator workflow. | `accepted-target` | product-completion | `c45be17` (persistence contracts lack E2E recovery) | [#166](https://github.com/ContextualWisdomLab/TEPP/issues/166) | `—` (issue program; no current implementation PR) | Durable storage, migration/rollback, restart/recovery, artifact digest verification, and terminal retrieval must pass against a real Compose deployment. | | GAP-003C | The persistence slice classifies concurrent-write SQLSTATEs, but has no measured hot-partition detection, routing, or mitigation for tenant/result workloads. | `accepted-target` | product-completion | `c45be17` (conflict classification only; no measured partition control) | [#166](https://github.com/ContextualWisdomLab/TEPP/issues/166) | `—` (issue program; no current implementation PR) | A real Compose/PostgreSQL workload identifies hot keys and partition skew, applies bounded tenant/time or result routing without weakening 3NF or temporal authority, and proves conflict rate, latency, recovery, and migration/rollback behavior under load. | -| GAP-004 | The central shared-latent temporal/relational topic estimator is absent. | `accepted-target` | product vertical | `c45be17` (no production estimator) | [#167](https://github.com/ContextualWisdomLab/TEPP/issues/167) / [PR #48](https://github.com/ContextualWisdomLab/TEPP/pull/48) | `b3dc7dab36e9` | Rust CPU `f64` fitting, sparse bounded parallelism, posterior artifacts, convergence, true-parameter RMSE/bias/coverage, and real candidate-K fitting. | +| GAP-004 | The central shared-latent temporal/relational topic estimator is absent. | `accepted-target` | product vertical | `c45be17` (no production estimator) | [#167](https://github.com/ContextualWisdomLab/TEPP/issues/167) / [PR #48](https://github.com/ContextualWisdomLab/TEPP/pull/48) | `6110d3660607` | Rust CPU `f64` fitting, sparse bounded parallelism, posterior artifacts, convergence, true-parameter RMSE/bias/coverage, and real candidate-K fitting. | | GAP-005 | Real multilingual documents are not yet transformed into validated exact-span semantic units and versioned shared concepts. | `accepted-target` | product vertical | `c45be17` (evidence spans exist without full semantic pipeline) | [#168](https://github.com/ContextualWisdomLab/TEPP/issues/168) | `—` (PR #53 merged only onto a non-main maintenance branch and is not implemented-main) | Unicode/layout/language-tailored processing, unknown-concept review, multilingual calibration/invariance, image-position evidence, and prompt-injection tests. | | GAP-006 | Posterior topic measurements cannot yet be fitted through a complete cross-classified longitudinal ESEM/DSEM engine. | `accepted-target` | product vertical | `c45be17` (temporal and membership primitives only) | [#169](https://github.com/ContextualWisdomLab/TEPP/issues/169) / [PR #119](https://github.com/ContextualWisdomLab/TEPP/pull/119) | `47ab763d49b1` | Plausible-value/joint uncertainty, invariance, irregular event time, within/between separation, multiple membership, true-parameter recovery, and causal-claim refusal. | | GAP-007 | TDT detection/tracking and CHRONOS schema/forecast/temporal reasoning remain isolated bounded gates rather than one calibrated product workflow. | `accepted-target` | product vertical | `c45be17` (event/time primitives only) | [#170](https://github.com/ContextualWisdomLab/TEPP/issues/170) / [PR #70](https://github.com/ContextualWisdomLab/TEPP/pull/70) | `7a1f33aa68c1` | Span-grounded mentions, calibrated TDT metrics, schema/forecast hypothesis states, interval consistency, known-truth recovery, persistence, and exports. | @@ -213,10 +215,10 @@ visual workspace, or a supported multi-tenant release. | GAP-009 | Topic association and cluster outputs lack posterior-valid estimation, uncertainty, edge stability, and consensus communities. | `accepted-target` | product vertical | `c45be17` (network primitives only) | [#172](https://github.com/ContextualWisdomLab/TEPP/issues/172) / [PR #71](https://github.com/ContextualWisdomLab/TEPP/pull/71) | `2588f38281b9` | Valid log-ratio coordinates, interval/stability-bearing edges, repeated Leiden consensus, known-truth network/cluster recovery, and reproducible exports. | | GAP-010 | Operators lack coordinated accessible visual analytics and exact-value export workflows. | `accepted-target` | product vertical | `c45be17` (no visual workspace) | [#173](https://github.com/ContextualWisdomLab/TEPP/issues/173) | `—` (Figma work not started) | Real Figma File ID in ADR, Storybook/design tokens, ten PRD views, exact-value tables, accessible interaction/print/PDF states, provenance, and source-consistent exports. | | GAP-011 | TEPP is not yet an operable multi-tenant service or supported release. | `accepted-target` | product vertical | `c45be17` (library contracts only) | [#174](https://github.com/ContextualWisdomLab/TEPP/issues/174) | `—` (issue program; no current implementation PR) | Durable queue/storage, OIDC/RLS/purpose controls, OpenTelemetry/SLOs, load/recovery, migrations, signed release/SBOM/provenance, assurance evidence, and support policy. | -| GAP-012 | The 99-PR queue obscures authority, repeatedly stales exact-head evidence, and fragments product boundaries. | `partial` | release blocker | `c45be17` (protected-main truth) | [#175](https://github.com/ContextualWisdomLab/TEPP/issues/175) | `—` (live queue program) | Every PR classified; unique landing vehicles; compatible slices folded; superseded work closed with provenance; scheduler prioritizes consolidation; queue reaches zero before GA. | +| GAP-012 | The 101-PR queue obscures authority, repeatedly stales exact-head evidence, and fragments product boundaries. | `partial` | release blocker | `c45be17` (protected-main truth) | [#175](https://github.com/ContextualWisdomLab/TEPP/issues/175) | `—` (live queue program) | Every PR classified; unique landing vehicles; compatible slices folded; superseded work closed with provenance; scheduler prioritizes consolidation; queue reaches zero before GA. | | GAP-013 | Evidence-grounded LLM interpretation is routed but not executed and validated as a production interpreter/verifier port. | `partial` | active integration | `c45be17` (routing and refusal contracts only) | [#176](https://github.com/ContextualWisdomLab/TEPP/issues/176), [PR #69](https://github.com/ContextualWisdomLab/TEPP/pull/69), [PR #165](https://github.com/ContextualWisdomLab/TEPP/pull/165) | `8e4a3ca9cc80` / `34083c3f5d66` | Contextual-orchestrator execution, evidence citations, verifier refusals, comparable-budget ablations, provider eligibility/fallback, abstention, live/offline contract tests, and no numerical-authority escalation. | | GAP-014 | README/TRD and some PR descriptions lag protected-main and live queue reality. | `partial` | documentation drift | `c45be17` (documentation is not fully synchronized) | [#175](https://github.com/ContextualWisdomLab/TEPP/issues/175) | `—` (queue-consolidation work) | Reconcile README, TRD, traceability, ADR maturity, CHANGELOG, preferred-merge declarations, and exact protected-main evidence. | -| GAP-015 | There was no canonical live product/operator-gap register tied to documentation validation. | `active-PR` | landing vehicle | `c45be17` (no live gap register) | [PR #164](https://github.com/ContextualWisdomLab/TEPP/pull/164) (authority); closed [PR #179](https://github.com/ContextualWisdomLab/TEPP/pull/179) is not a second register | `2676a5bf8d23` | Merge this document and its validator/map/quality-test integration after exact-head checks and independent review. Passing Checks on #164 are not implemented-main. | +| GAP-015 | There was no canonical live product/operator-gap register tied to documentation validation. | `active-PR` | landing vehicle | `c45be17` (no live gap register) | [PR #164](https://github.com/ContextualWisdomLab/TEPP/pull/164) (authority); closed [PR #179](https://github.com/ContextualWisdomLab/TEPP/pull/179) is not a second register | `bde2281b7acb` | Merge this document and its validator/map/quality-test integration after exact-head checks and independent review. Passing Checks on #164 are not implemented-main. | | GAP-016 | Hourly PR maintenance used an older central scheduler revision whose per-repository sweep budgets could amplify the queued review workload. | `active-PR` | operability hardening | `c45be17` (caller pin before central budget hardening) | [PR #177](https://github.com/ContextualWisdomLab/TEPP/pull/177) | `580d45206536` | The change pins a verified central revision immutably; closure still requires exact-head hosted Checks, resolved threads, and independent review. | | GAP-017 | Accepted analysis runs have a terminal DTO, and cutoff-safe execution exists only on the #157 head after stacked PR #178 merged into that branch. | `active-PR` | product vertical | `c45be17` (accepted receipt only) | [#166](https://github.com/ContextualWisdomLab/TEPP/issues/166) / [PR #157](https://github.com/ContextualWisdomLab/TEPP/pull/157) | `7402745cfb0c` | Exact availability cutoff, snapshot binding, multiple-membership preservation, digest integrity, redacted no-eligible failure, and realistic end-to-end tests on protected main. Closed stacked PR #178 is not implemented-main. | @@ -259,7 +261,7 @@ because its head can change after this file is committed. | [#69](https://github.com/ContextualWisdomLab/TEPP/pull/69) | Interpretation grounding/refusal metrics | Fold into the product interpreter/verifier under #176. | | [#71](https://github.com/ContextualWisdomLab/TEPP/pull/71) | Compositional geometry/network pair metrics | Fold into the network estimator under #172. | | [#119](https://github.com/ContextualWisdomLab/TEPP/pull/119) | Bounded loading/lag recovery slice | Consolidate into the psychometric engine under #169. | -| [#181](https://github.com/ContextualWisdomLab/TEPP/pull/181)–[#190](https://github.com/ContextualWisdomLab/TEPP/pull/190), [#192](https://github.com/ContextualWisdomLab/TEPP/pull/192)–[#194](https://github.com/ContextualWisdomLab/TEPP/pull/194) | Draft stacked psychometric T0VAR/drift/standardised recoveries | Keep stacked; do not promote drafts or predecessor heads as protected-main. Closed stacked #191 landed on #48 only. | +| [#181](https://github.com/ContextualWisdomLab/TEPP/pull/181)–[#190](https://github.com/ContextualWisdomLab/TEPP/pull/190), [#192](https://github.com/ContextualWisdomLab/TEPP/pull/192)–[#196](https://github.com/ContextualWisdomLab/TEPP/pull/196) | Draft stacked psychometric T0VAR/drift/standardised recoveries | Keep stacked; do not promote drafts or predecessor heads as protected-main. Closed stacked #191 landed on #48 only. | ## Delivery sequence From cbceb6fee09535aeb5260d808a686b5d7e25cb77 Mon Sep 17 00:00:00 2001 From: Seongho Bae Date: Mon, 24 Aug 2026 03:46:37 +0900 Subject: [PATCH 44/52] fix(docs): require promotion-denial wording for queued-Checks guard An unrelated `not` in `queued Checks are not required; this PR is implemented-main` was treated as negation. Only never/do not/does not/ cannot/must not plus promote/treat/make/mean licenses the span. --- CHANGELOG.md | 4 +++- scripts/validate_documentation.py | 8 +++---- .../test_product_technical_gap_baseline.py | 21 +++++++++++++++++++ 3 files changed, 28 insertions(+), 5 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index c4aeab87..79013b67 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -13,7 +13,9 @@ All notable changes to TEPP are documented here. The format follows Keep a Chang 40-character protected-main SHA, an exact-head inventory matching the declared open-PR count, and operator-gap closure evidence, and it rejects affirmative queued-Checks-as-implemented-main claims even when wrapped across a line - break, while accepting explicit negation. + break, and it rejects an unrelated `not` in the same span (`queued Checks are + not required; this PR is implemented-main`). Only never/do not/does not/ + cannot/must not plus promote/treat/make/mean counts as a promotion denial. - `tepp_api` naruon live loopback HTTP/1.1 listener: `serve_one` installs a read/write deadline, requires a loopback `Host`, refuses `Transfer-Encoding` and NIM/proxy credential headers, parses `knowledge_cutoff` as RFC 3339 and refuses a future cutoff, keys analysis-run idempotency by tenant plus key, and proves both analysis-run and export POSTs over a real `TcpStream`. Not a production TLS/`$PORT` service (ADR 0011). - `tepp_api` adaptive orchestration router (ADR 0010): versioned `direct`/`verify`/`committee`/`conductor`/`abstain` selection from CPU `f64` risk, ambiguity, evidence, and token-budget inputs; recorded stages, recursion, decomposition, access lists, and role-specific reasoning effort; fail-closed document-controlled policy/access/credentials; LLM plans remain proposals under deterministic statistical authority; comparable-budget ablation requires a direct baseline; credential-free contextual-orchestrator binding. Live NIM HTTP remains accepted-target. - `tepp_api` purpose-bound provider-payload minimization: time-bounded `PurposeGrant` evaluation, fail-closed expired/not-yet-valid/inverted/cross-tenant/impossible-calendar denial, semantic UTC calendar validation, refusal to copy identity mappings into model-provider payloads or ordinary logs, preservation of opaque analytical identifiers and membership roles (no blanket PII mask), a separately authorized scientific re-identification path, and an internally bound FIPS 180-4 SHA-256 audit digest appended through `ReidentificationAuditSink` before disclosure. diff --git a/scripts/validate_documentation.py b/scripts/validate_documentation.py index 445d4110..5965977c 100644 --- a/scripts/validate_documentation.py +++ b/scripts/validate_documentation.py @@ -78,9 +78,9 @@ r"queued Checks.{0,80}implemented-main", re.IGNORECASE | re.DOTALL, ) -QUEUED_CHECKS_NEGATION = re.compile( - r"\b(?:never|not|do not|does not|cannot|must not)\b", - re.IGNORECASE, +QUEUED_CHECKS_PROMOTION_DENIAL = re.compile( + r"\b(?:never|do not|does not|cannot|must not)\b.{0,40}\b(?:promote|treat|make|mean)\b", + re.IGNORECASE | re.DOTALL, ) ADR_TABLE_ROW = re.compile(r"^\|\s*\[(?P\d{4})\]", re.MULTILINE) ADR_FILE_NAME = re.compile(r"^(?P\d{4})-[a-z0-9-]+\.md$") @@ -177,7 +177,7 @@ def validate_product_technical_gap_baseline(root: Path = ROOT) -> None: if "Exact current head" not in text: failures.append("gap baseline lacks an exact-head open-PR inventory") if any( - QUEUED_CHECKS_NEGATION.search(match.group(0)) is None + QUEUED_CHECKS_PROMOTION_DENIAL.search(match.group(0)) is None for match in QUEUED_CHECKS_AS_SHIPPED.finditer(text) ): failures.append("gap baseline treats queued Checks as implemented-main") diff --git a/tests/quality/test_product_technical_gap_baseline.py b/tests/quality/test_product_technical_gap_baseline.py index 4014f315..02c4543c 100644 --- a/tests/quality/test_product_technical_gap_baseline.py +++ b/tests/quality/test_product_technical_gap_baseline.py @@ -172,6 +172,27 @@ def test_wrapped_queued_checks_promotion_still_fails(self) -> None: ): docs.validate_product_technical_gap_baseline(root) + def test_unrelated_negation_does_not_license_implemented_main(self) -> None: + """A `not` that does not deny promotion must not pass the guard.""" + + with tempfile.TemporaryDirectory() as temporary: + root = Path(temporary) + path = root / BASELINE_PATH + path.parent.mkdir(parents=True) + path.write_text( + valid_baseline( + extra=( + "\nqueued Checks are not required; " + "this PR is implemented-main.\n" + ) + ), + encoding="utf-8", + ) + with self.assertRaisesRegex( + AssertionError, "queued Checks as implemented-main" + ): + docs.validate_product_technical_gap_baseline(root) + if __name__ == "__main__": # pragma: no cover unittest.main() From 7b222b0901b1edd254a6bf4d15c408e5ae52591e Mon Sep 17 00:00:00 2001 From: Seongho Bae Date: Mon, 24 Aug 2026 03:49:12 +0900 Subject: [PATCH 45/52] docs: refresh 103-PR exact-head gap register after stacked #197/#198 Bind GAP current-head SHAs to the 2026-08-23T18:48:36Z REST inventory. #49 unique-fold nightly is green on dd6cf43 and is not implemented-main. Queued Checks remain off protected-main. --- CHANGELOG.md | 13 ++++++------- docs/product-technical-gap-baseline.md | 20 +++++++++++--------- 2 files changed, 17 insertions(+), 16 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 79013b67..75f0dca2 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -85,14 +85,13 @@ All notable changes to TEPP are documented here. The format follows Keep a Chang ### Changed -- Refreshed the live gap-baseline inventory to the 2026-08-23T17:59:26Z GitHub - snapshot (101 open PRs / 32 drafts / 12 issues; protected-main +- Refreshed the live gap-baseline inventory to the 2026-08-23T18:48:36Z GitHub + snapshot (103 open PRs / 34 drafts / 12 issues; protected-main `c45be17a9dbce95ef81cee230e9d128abc7160ac`), binding each operator-gap current - head SHA to that exact-head register, including stacked drafts #195/#196, - #49 `dd6cf43e5edf` unique-fold branch coverage gate, #48 `6110d3660607` - log-ratio underflow, and #164 `bde2281b7acb` as the predecessor register head. - Duplicate PR #179 remains closed. Stacked-merged heads and queued Checks are - not implemented-main. + head SHA to that exact-head register, including stacked drafts #197/#198, + #49 `dd6cf43e5edf` (unique-fold nightly green), and #164 `cbceb6fee095` as the + predecessor register head. Duplicate PR #179 remains closed. Stacked-merged + heads and queued Checks are not implemented-main. - Clarified ADR 0001 so it owns Rust-first numerical/reference-backend authority while ADR 0011 owns cross-service MSA/service authority. - Clarified ADR 0006 so it owns GPU/VRAM and model-credential boundaries; ADR 0010 now owns LLM orchestration policy and ADR 0015 owns autonomous repository-write/review/merge authority. - Expanded ADR 0002–0005 and 0009–0011 with explicit implementation maturity, alternatives, failure/recovery, compatibility/migration, verification, and rollback/supersession boundaries where they were previously implicit. diff --git a/docs/product-technical-gap-baseline.md b/docs/product-technical-gap-baseline.md index e1aaeb8a..0f8a8254 100644 --- a/docs/product-technical-gap-baseline.md +++ b/docs/product-technical-gap-baseline.md @@ -2,7 +2,7 @@ **Status:** Live delivery baseline **Product:** Temporal Event Psychometrics Platform (TEPP) -**Snapshot:** 2026-08-23T17:59:26Z +**Snapshot:** 2026-08-23T18:48:36Z **Protected-main evidence:** `c45be17a9dbce95ef81cee230e9d128abc7160ac` **Workspace version on protected main:** `0.1.0` **Canonical gap-baseline authority:** [PR #164](https://github.com/ContextualWisdomLab/TEPP/pull/164). Duplicate [PR #179](https://github.com/ContextualWisdomLab/TEPP/pull/179) was closed at 2026-08-23T12:39:22Z and is not a second protected-main register. @@ -26,8 +26,8 @@ GitHub state before any customer, release, certification, or valuation claim. |---|---:|---| | Protected-main SHA | `c45be17a9dbce95ef81cee230e9d128abc7160ac` | All as-built claims are bounded to this commit. | | Workspace members | 10 Rust crates | The foundation is modular, but the approved target contains additional semantic, estimator, compute, psychometric, event-intelligence, network, interpretation, artifact, and visual boundaries. | -| Open pull requests | **101** | The queue is itself a release blocker and requires consolidation. | -| Draft pull requests | **32** | Most queued work is not independently review-ready. | +| Open pull requests | **103** | The queue is itself a release blocker and requires consolidation. | +| Draft pull requests | **34** | Most queued work is not independently review-ready. | | Non-draft pull requests | **69** | A non-draft state is not a qualifying review or required-check result. | | Open product issues | **12** | Issue #156 plus the product-completion program #166–#176. | | Duplicate gap-baseline PRs | **#164** (authority); **#179** closed as superseded | Only one live register remains; queued Checks on #164 are not protected-main evidence. | @@ -37,7 +37,7 @@ The pull-request counts come from the live GitHub search at this snapshot. The full exact-head classification is owned by [issue #175](https://github.com/ContextualWisdomLab/TEPP/issues/175); this file keeps the operator-level summary while the exact-head register below records the -current 101-row volatile queue. Passing or queued Checks on an open PR never +current 103-row volatile queue. Passing or queued Checks on an open PR never promote that PR to implemented-main. ## Current open pull-request evidence @@ -49,6 +49,8 @@ Checks, and branch rules immediately before every mutation. | PR | Exact current head | Draft | Base | Title | |---:|---|:---:|---|---| +| #198 | `52a9b4ceb26bdd89e6e49c56fb473d96c68ca352` | true | agent/psychometric-standardised-initial-tipred-effect | feat(psychometric): recover Driver 2017-era addedT0TIPREDVAR after T0TIPREDEFFECT | +| #197 | `a19ea1ecba3d773470f12ed4dbbeb8a01b987f26` | true | agent/psychometric-standardised-initial-tipred-effect | feat(psychometric): recover Driver Table 3 T0TDPREDEFFECTstd after positive T0VAR | | #196 | `1cb91b43002765bf5b855be51e55cb29db41a599` | true | agent/psychometric-standardised-continuous-tipred-effect | feat(psychometric): recover Driver Table 3 T0TIPREDEFFECTstd after positive T0VAR | | #195 | `cf275b25611953bd405550f96df257c77df01751` | true | agent/psychometric-standardised-continuous-tipred-effect | feat(psychometric): recover Driver p.16 CINTstd after positive asymDIFFUSION | | #194 | `471b115e891be11fb41eb75a5cc3073258ab0f34` | true | agent/psychometric-standardised-asymptotic-tipred-effect | feat(psychometric): recover Driver p.16 TIPREDEFFECTstd after positive variances | @@ -66,7 +68,7 @@ Checks, and branch rules immediately before every mutation. | #180 | `fa169e8e41f13d3bae6aff242db68ebf8281e112` | false | main | fix(transport): hide raw provider exception details | | #177 | `580d45206536bf2f7deba327ffafb96a69ba7260` | false | main | fix(workflow): pin scheduler budget hardening | | #165 | `34083c3f5d6637cf1665a29dac45fbf67a74d5dd` | false | main | feat: route hourly product agents through contextual orchestrator | -| #164 | `bde2281b7acbf4c46405316ee0930f753930db40` | false | main | docs: define TEPP product completion and technical gap baseline | +| #164 | `cbceb6fee09535aeb5260d808a686b5d7e25cb77` | false | main | docs: define TEPP product completion and technical gap baseline | | #157 | `7402745cfb0c27964f286c38a2efd7042c2320ff` | false | main | feat(api): publish completed analysis-run result contract | | #155 | `02c009c16e6a9c6fee3237224ed6a17cbc4169e1` | false | main | feat(api): admit LineageWeave as a modular analysis-run consumer | | #154 | `a7a1bdf96a6759f11aed9284b73319ed94b82fd2` | false | main | ci(rust): refresh branch coverage compiler baseline | @@ -151,7 +153,7 @@ Checks, and branch rules immediately before every mutation. | #49 | `dd6cf43e5edfe1d9a7e344cac5352bfb55480e8a` | false | main | feat(psychometric): posterior ESEM input gates with true-parameter RMSE | | #48 | `6110d3660607ba46b312b4d76f048f1bcc4f3bc5` | false | main | feat(topic): logistic-normal ALR coordinates with true-parameter RMSE | -The exact-head register, counts, and protected-main SHA were fetched from the live GitHub REST API at `2026-08-23T17:59:26Z`. Review decisions, required Checks, and mergeability remain volatile; re-read them immediately before every mutation. This snapshot is not merge authorization and does not treat queued or passing Checks as shipped protected-main behavior. +The exact-head register, counts, and protected-main SHA were fetched from the live GitHub REST API at `2026-08-23T18:48:36Z`. Review decisions, required Checks, and mergeability remain volatile; re-read them immediately before every mutation. This snapshot is not merge authorization and does not treat queued or passing Checks as shipped protected-main behavior. ## Authority and derivation @@ -215,10 +217,10 @@ visual workspace, or a supported multi-tenant release. | GAP-009 | Topic association and cluster outputs lack posterior-valid estimation, uncertainty, edge stability, and consensus communities. | `accepted-target` | product vertical | `c45be17` (network primitives only) | [#172](https://github.com/ContextualWisdomLab/TEPP/issues/172) / [PR #71](https://github.com/ContextualWisdomLab/TEPP/pull/71) | `2588f38281b9` | Valid log-ratio coordinates, interval/stability-bearing edges, repeated Leiden consensus, known-truth network/cluster recovery, and reproducible exports. | | GAP-010 | Operators lack coordinated accessible visual analytics and exact-value export workflows. | `accepted-target` | product vertical | `c45be17` (no visual workspace) | [#173](https://github.com/ContextualWisdomLab/TEPP/issues/173) | `—` (Figma work not started) | Real Figma File ID in ADR, Storybook/design tokens, ten PRD views, exact-value tables, accessible interaction/print/PDF states, provenance, and source-consistent exports. | | GAP-011 | TEPP is not yet an operable multi-tenant service or supported release. | `accepted-target` | product vertical | `c45be17` (library contracts only) | [#174](https://github.com/ContextualWisdomLab/TEPP/issues/174) | `—` (issue program; no current implementation PR) | Durable queue/storage, OIDC/RLS/purpose controls, OpenTelemetry/SLOs, load/recovery, migrations, signed release/SBOM/provenance, assurance evidence, and support policy. | -| GAP-012 | The 101-PR queue obscures authority, repeatedly stales exact-head evidence, and fragments product boundaries. | `partial` | release blocker | `c45be17` (protected-main truth) | [#175](https://github.com/ContextualWisdomLab/TEPP/issues/175) | `—` (live queue program) | Every PR classified; unique landing vehicles; compatible slices folded; superseded work closed with provenance; scheduler prioritizes consolidation; queue reaches zero before GA. | +| GAP-012 | The 103-PR queue obscures authority, repeatedly stales exact-head evidence, and fragments product boundaries. | `partial` | release blocker | `c45be17` (protected-main truth) | [#175](https://github.com/ContextualWisdomLab/TEPP/issues/175) | `—` (live queue program) | Every PR classified; unique landing vehicles; compatible slices folded; superseded work closed with provenance; scheduler prioritizes consolidation; queue reaches zero before GA. | | GAP-013 | Evidence-grounded LLM interpretation is routed but not executed and validated as a production interpreter/verifier port. | `partial` | active integration | `c45be17` (routing and refusal contracts only) | [#176](https://github.com/ContextualWisdomLab/TEPP/issues/176), [PR #69](https://github.com/ContextualWisdomLab/TEPP/pull/69), [PR #165](https://github.com/ContextualWisdomLab/TEPP/pull/165) | `8e4a3ca9cc80` / `34083c3f5d66` | Contextual-orchestrator execution, evidence citations, verifier refusals, comparable-budget ablations, provider eligibility/fallback, abstention, live/offline contract tests, and no numerical-authority escalation. | | GAP-014 | README/TRD and some PR descriptions lag protected-main and live queue reality. | `partial` | documentation drift | `c45be17` (documentation is not fully synchronized) | [#175](https://github.com/ContextualWisdomLab/TEPP/issues/175) | `—` (queue-consolidation work) | Reconcile README, TRD, traceability, ADR maturity, CHANGELOG, preferred-merge declarations, and exact protected-main evidence. | -| GAP-015 | There was no canonical live product/operator-gap register tied to documentation validation. | `active-PR` | landing vehicle | `c45be17` (no live gap register) | [PR #164](https://github.com/ContextualWisdomLab/TEPP/pull/164) (authority); closed [PR #179](https://github.com/ContextualWisdomLab/TEPP/pull/179) is not a second register | `bde2281b7acb` | Merge this document and its validator/map/quality-test integration after exact-head checks and independent review. Passing Checks on #164 are not implemented-main. | +| GAP-015 | There was no canonical live product/operator-gap register tied to documentation validation. | `active-PR` | landing vehicle | `c45be17` (no live gap register) | [PR #164](https://github.com/ContextualWisdomLab/TEPP/pull/164) (authority); closed [PR #179](https://github.com/ContextualWisdomLab/TEPP/pull/179) is not a second register | `cbceb6fee095` | Merge this document and its validator/map/quality-test integration after exact-head checks and independent review. Passing Checks on #164 are not implemented-main. | | GAP-016 | Hourly PR maintenance used an older central scheduler revision whose per-repository sweep budgets could amplify the queued review workload. | `active-PR` | operability hardening | `c45be17` (caller pin before central budget hardening) | [PR #177](https://github.com/ContextualWisdomLab/TEPP/pull/177) | `580d45206536` | The change pins a verified central revision immutably; closure still requires exact-head hosted Checks, resolved threads, and independent review. | | GAP-017 | Accepted analysis runs have a terminal DTO, and cutoff-safe execution exists only on the #157 head after stacked PR #178 merged into that branch. | `active-PR` | product vertical | `c45be17` (accepted receipt only) | [#166](https://github.com/ContextualWisdomLab/TEPP/issues/166) / [PR #157](https://github.com/ContextualWisdomLab/TEPP/pull/157) | `7402745cfb0c` | Exact availability cutoff, snapshot binding, multiple-membership preservation, digest integrity, redacted no-eligible failure, and realistic end-to-end tests on protected main. Closed stacked PR #178 is not implemented-main. | @@ -261,7 +263,7 @@ because its head can change after this file is committed. | [#69](https://github.com/ContextualWisdomLab/TEPP/pull/69) | Interpretation grounding/refusal metrics | Fold into the product interpreter/verifier under #176. | | [#71](https://github.com/ContextualWisdomLab/TEPP/pull/71) | Compositional geometry/network pair metrics | Fold into the network estimator under #172. | | [#119](https://github.com/ContextualWisdomLab/TEPP/pull/119) | Bounded loading/lag recovery slice | Consolidate into the psychometric engine under #169. | -| [#181](https://github.com/ContextualWisdomLab/TEPP/pull/181)–[#190](https://github.com/ContextualWisdomLab/TEPP/pull/190), [#192](https://github.com/ContextualWisdomLab/TEPP/pull/192)–[#196](https://github.com/ContextualWisdomLab/TEPP/pull/196) | Draft stacked psychometric T0VAR/drift/standardised recoveries | Keep stacked; do not promote drafts or predecessor heads as protected-main. Closed stacked #191 landed on #48 only. | +| [#181](https://github.com/ContextualWisdomLab/TEPP/pull/181)–[#190](https://github.com/ContextualWisdomLab/TEPP/pull/190), [#192](https://github.com/ContextualWisdomLab/TEPP/pull/192)–[#198](https://github.com/ContextualWisdomLab/TEPP/pull/198) | Draft stacked psychometric T0VAR/drift/standardised recoveries | Keep stacked; do not promote drafts or predecessor heads as protected-main. Closed stacked #191 landed on #48 only. | ## Delivery sequence From 627f5950f8d1e85ececc45f8e317a43434ccb7df Mon Sep 17 00:00:00 2001 From: Seongho Bae Date: Mon, 24 Aug 2026 04:49:03 +0900 Subject: [PATCH 46/52] docs: refresh 105-PR exact-head gap register after stacked #199/#200 Bind GAP current-head SHAs to the 2026-08-23T19:48:22Z REST inventory. #49 unique-fold nightly remains green on dd6cf43 and is not implemented-main. Queued Checks remain off protected-main. --- CHANGELOG.md | 8 ++++---- docs/product-technical-gap-baseline.md | 20 +++++++++++--------- 2 files changed, 15 insertions(+), 13 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 75f0dca2..c48f43c4 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -85,11 +85,11 @@ All notable changes to TEPP are documented here. The format follows Keep a Chang ### Changed -- Refreshed the live gap-baseline inventory to the 2026-08-23T18:48:36Z GitHub - snapshot (103 open PRs / 34 drafts / 12 issues; protected-main +- Refreshed the live gap-baseline inventory to the 2026-08-23T19:48:22Z GitHub + snapshot (105 open PRs / 36 drafts / 12 issues; protected-main `c45be17a9dbce95ef81cee230e9d128abc7160ac`), binding each operator-gap current - head SHA to that exact-head register, including stacked drafts #197/#198, - #49 `dd6cf43e5edf` (unique-fold nightly green), and #164 `cbceb6fee095` as the + head SHA to that exact-head register, including stacked drafts #199/#200, + #49 `dd6cf43e5edf` (unique-fold nightly green), and #164 `7b222b0901b1` as the predecessor register head. Duplicate PR #179 remains closed. Stacked-merged heads and queued Checks are not implemented-main. - Clarified ADR 0001 so it owns Rust-first numerical/reference-backend authority while ADR 0011 owns cross-service MSA/service authority. diff --git a/docs/product-technical-gap-baseline.md b/docs/product-technical-gap-baseline.md index 0f8a8254..dfbb319b 100644 --- a/docs/product-technical-gap-baseline.md +++ b/docs/product-technical-gap-baseline.md @@ -2,7 +2,7 @@ **Status:** Live delivery baseline **Product:** Temporal Event Psychometrics Platform (TEPP) -**Snapshot:** 2026-08-23T18:48:36Z +**Snapshot:** 2026-08-23T19:48:22Z **Protected-main evidence:** `c45be17a9dbce95ef81cee230e9d128abc7160ac` **Workspace version on protected main:** `0.1.0` **Canonical gap-baseline authority:** [PR #164](https://github.com/ContextualWisdomLab/TEPP/pull/164). Duplicate [PR #179](https://github.com/ContextualWisdomLab/TEPP/pull/179) was closed at 2026-08-23T12:39:22Z and is not a second protected-main register. @@ -26,8 +26,8 @@ GitHub state before any customer, release, certification, or valuation claim. |---|---:|---| | Protected-main SHA | `c45be17a9dbce95ef81cee230e9d128abc7160ac` | All as-built claims are bounded to this commit. | | Workspace members | 10 Rust crates | The foundation is modular, but the approved target contains additional semantic, estimator, compute, psychometric, event-intelligence, network, interpretation, artifact, and visual boundaries. | -| Open pull requests | **103** | The queue is itself a release blocker and requires consolidation. | -| Draft pull requests | **34** | Most queued work is not independently review-ready. | +| Open pull requests | **105** | The queue is itself a release blocker and requires consolidation. | +| Draft pull requests | **36** | Most queued work is not independently review-ready. | | Non-draft pull requests | **69** | A non-draft state is not a qualifying review or required-check result. | | Open product issues | **12** | Issue #156 plus the product-completion program #166–#176. | | Duplicate gap-baseline PRs | **#164** (authority); **#179** closed as superseded | Only one live register remains; queued Checks on #164 are not protected-main evidence. | @@ -37,7 +37,7 @@ The pull-request counts come from the live GitHub search at this snapshot. The full exact-head classification is owned by [issue #175](https://github.com/ContextualWisdomLab/TEPP/issues/175); this file keeps the operator-level summary while the exact-head register below records the -current 103-row volatile queue. Passing or queued Checks on an open PR never +current 105-row volatile queue. Passing or queued Checks on an open PR never promote that PR to implemented-main. ## Current open pull-request evidence @@ -49,6 +49,8 @@ Checks, and branch rules immediately before every mutation. | PR | Exact current head | Draft | Base | Title | |---:|---|:---:|---|---| +| #200 | `8f429471e2b249e76c9b722eaf2443518b666c98` | true | agent/psychometric-initial-tipred-observed-variance | feat(psychometric): recover Driver Eq. 5 of addedTIPREDVAR extra observed TI variance | +| #199 | `7a476ed3c39e4ba14c9c51f5cbbafc33310979d2` | true | agent/psychometric-added-t0-tipred-var | feat(psychometric): recover Driver Eq. 5 of addedT0TIPREDVAR extra observed TI variance | | #198 | `52a9b4ceb26bdd89e6e49c56fb473d96c68ca352` | true | agent/psychometric-standardised-initial-tipred-effect | feat(psychometric): recover Driver 2017-era addedT0TIPREDVAR after T0TIPREDEFFECT | | #197 | `a19ea1ecba3d773470f12ed4dbbeb8a01b987f26` | true | agent/psychometric-standardised-initial-tipred-effect | feat(psychometric): recover Driver Table 3 T0TDPREDEFFECTstd after positive T0VAR | | #196 | `1cb91b43002765bf5b855be51e55cb29db41a599` | true | agent/psychometric-standardised-continuous-tipred-effect | feat(psychometric): recover Driver Table 3 T0TIPREDEFFECTstd after positive T0VAR | @@ -68,7 +70,7 @@ Checks, and branch rules immediately before every mutation. | #180 | `fa169e8e41f13d3bae6aff242db68ebf8281e112` | false | main | fix(transport): hide raw provider exception details | | #177 | `580d45206536bf2f7deba327ffafb96a69ba7260` | false | main | fix(workflow): pin scheduler budget hardening | | #165 | `34083c3f5d6637cf1665a29dac45fbf67a74d5dd` | false | main | feat: route hourly product agents through contextual orchestrator | -| #164 | `cbceb6fee09535aeb5260d808a686b5d7e25cb77` | false | main | docs: define TEPP product completion and technical gap baseline | +| #164 | `7b222b0901b1edd254a6bf4d15c408e5ae52591e` | false | main | docs: define TEPP product completion and technical gap baseline | | #157 | `7402745cfb0c27964f286c38a2efd7042c2320ff` | false | main | feat(api): publish completed analysis-run result contract | | #155 | `02c009c16e6a9c6fee3237224ed6a17cbc4169e1` | false | main | feat(api): admit LineageWeave as a modular analysis-run consumer | | #154 | `a7a1bdf96a6759f11aed9284b73319ed94b82fd2` | false | main | ci(rust): refresh branch coverage compiler baseline | @@ -153,7 +155,7 @@ Checks, and branch rules immediately before every mutation. | #49 | `dd6cf43e5edfe1d9a7e344cac5352bfb55480e8a` | false | main | feat(psychometric): posterior ESEM input gates with true-parameter RMSE | | #48 | `6110d3660607ba46b312b4d76f048f1bcc4f3bc5` | false | main | feat(topic): logistic-normal ALR coordinates with true-parameter RMSE | -The exact-head register, counts, and protected-main SHA were fetched from the live GitHub REST API at `2026-08-23T18:48:36Z`. Review decisions, required Checks, and mergeability remain volatile; re-read them immediately before every mutation. This snapshot is not merge authorization and does not treat queued or passing Checks as shipped protected-main behavior. +The exact-head register, counts, and protected-main SHA were fetched from the live GitHub REST API at `2026-08-23T19:48:22Z`. Review decisions, required Checks, and mergeability remain volatile; re-read them immediately before every mutation. This snapshot is not merge authorization and does not treat queued or passing Checks as shipped protected-main behavior. ## Authority and derivation @@ -217,10 +219,10 @@ visual workspace, or a supported multi-tenant release. | GAP-009 | Topic association and cluster outputs lack posterior-valid estimation, uncertainty, edge stability, and consensus communities. | `accepted-target` | product vertical | `c45be17` (network primitives only) | [#172](https://github.com/ContextualWisdomLab/TEPP/issues/172) / [PR #71](https://github.com/ContextualWisdomLab/TEPP/pull/71) | `2588f38281b9` | Valid log-ratio coordinates, interval/stability-bearing edges, repeated Leiden consensus, known-truth network/cluster recovery, and reproducible exports. | | GAP-010 | Operators lack coordinated accessible visual analytics and exact-value export workflows. | `accepted-target` | product vertical | `c45be17` (no visual workspace) | [#173](https://github.com/ContextualWisdomLab/TEPP/issues/173) | `—` (Figma work not started) | Real Figma File ID in ADR, Storybook/design tokens, ten PRD views, exact-value tables, accessible interaction/print/PDF states, provenance, and source-consistent exports. | | GAP-011 | TEPP is not yet an operable multi-tenant service or supported release. | `accepted-target` | product vertical | `c45be17` (library contracts only) | [#174](https://github.com/ContextualWisdomLab/TEPP/issues/174) | `—` (issue program; no current implementation PR) | Durable queue/storage, OIDC/RLS/purpose controls, OpenTelemetry/SLOs, load/recovery, migrations, signed release/SBOM/provenance, assurance evidence, and support policy. | -| GAP-012 | The 103-PR queue obscures authority, repeatedly stales exact-head evidence, and fragments product boundaries. | `partial` | release blocker | `c45be17` (protected-main truth) | [#175](https://github.com/ContextualWisdomLab/TEPP/issues/175) | `—` (live queue program) | Every PR classified; unique landing vehicles; compatible slices folded; superseded work closed with provenance; scheduler prioritizes consolidation; queue reaches zero before GA. | +| GAP-012 | The 105-PR queue obscures authority, repeatedly stales exact-head evidence, and fragments product boundaries. | `partial` | release blocker | `c45be17` (protected-main truth) | [#175](https://github.com/ContextualWisdomLab/TEPP/issues/175) | `—` (live queue program) | Every PR classified; unique landing vehicles; compatible slices folded; superseded work closed with provenance; scheduler prioritizes consolidation; queue reaches zero before GA. | | GAP-013 | Evidence-grounded LLM interpretation is routed but not executed and validated as a production interpreter/verifier port. | `partial` | active integration | `c45be17` (routing and refusal contracts only) | [#176](https://github.com/ContextualWisdomLab/TEPP/issues/176), [PR #69](https://github.com/ContextualWisdomLab/TEPP/pull/69), [PR #165](https://github.com/ContextualWisdomLab/TEPP/pull/165) | `8e4a3ca9cc80` / `34083c3f5d66` | Contextual-orchestrator execution, evidence citations, verifier refusals, comparable-budget ablations, provider eligibility/fallback, abstention, live/offline contract tests, and no numerical-authority escalation. | | GAP-014 | README/TRD and some PR descriptions lag protected-main and live queue reality. | `partial` | documentation drift | `c45be17` (documentation is not fully synchronized) | [#175](https://github.com/ContextualWisdomLab/TEPP/issues/175) | `—` (queue-consolidation work) | Reconcile README, TRD, traceability, ADR maturity, CHANGELOG, preferred-merge declarations, and exact protected-main evidence. | -| GAP-015 | There was no canonical live product/operator-gap register tied to documentation validation. | `active-PR` | landing vehicle | `c45be17` (no live gap register) | [PR #164](https://github.com/ContextualWisdomLab/TEPP/pull/164) (authority); closed [PR #179](https://github.com/ContextualWisdomLab/TEPP/pull/179) is not a second register | `cbceb6fee095` | Merge this document and its validator/map/quality-test integration after exact-head checks and independent review. Passing Checks on #164 are not implemented-main. | +| GAP-015 | There was no canonical live product/operator-gap register tied to documentation validation. | `active-PR` | landing vehicle | `c45be17` (no live gap register) | [PR #164](https://github.com/ContextualWisdomLab/TEPP/pull/164) (authority); closed [PR #179](https://github.com/ContextualWisdomLab/TEPP/pull/179) is not a second register | `7b222b0901b1` | Merge this document and its validator/map/quality-test integration after exact-head checks and independent review. Passing Checks on #164 are not implemented-main. | | GAP-016 | Hourly PR maintenance used an older central scheduler revision whose per-repository sweep budgets could amplify the queued review workload. | `active-PR` | operability hardening | `c45be17` (caller pin before central budget hardening) | [PR #177](https://github.com/ContextualWisdomLab/TEPP/pull/177) | `580d45206536` | The change pins a verified central revision immutably; closure still requires exact-head hosted Checks, resolved threads, and independent review. | | GAP-017 | Accepted analysis runs have a terminal DTO, and cutoff-safe execution exists only on the #157 head after stacked PR #178 merged into that branch. | `active-PR` | product vertical | `c45be17` (accepted receipt only) | [#166](https://github.com/ContextualWisdomLab/TEPP/issues/166) / [PR #157](https://github.com/ContextualWisdomLab/TEPP/pull/157) | `7402745cfb0c` | Exact availability cutoff, snapshot binding, multiple-membership preservation, digest integrity, redacted no-eligible failure, and realistic end-to-end tests on protected main. Closed stacked PR #178 is not implemented-main. | @@ -263,7 +265,7 @@ because its head can change after this file is committed. | [#69](https://github.com/ContextualWisdomLab/TEPP/pull/69) | Interpretation grounding/refusal metrics | Fold into the product interpreter/verifier under #176. | | [#71](https://github.com/ContextualWisdomLab/TEPP/pull/71) | Compositional geometry/network pair metrics | Fold into the network estimator under #172. | | [#119](https://github.com/ContextualWisdomLab/TEPP/pull/119) | Bounded loading/lag recovery slice | Consolidate into the psychometric engine under #169. | -| [#181](https://github.com/ContextualWisdomLab/TEPP/pull/181)–[#190](https://github.com/ContextualWisdomLab/TEPP/pull/190), [#192](https://github.com/ContextualWisdomLab/TEPP/pull/192)–[#198](https://github.com/ContextualWisdomLab/TEPP/pull/198) | Draft stacked psychometric T0VAR/drift/standardised recoveries | Keep stacked; do not promote drafts or predecessor heads as protected-main. Closed stacked #191 landed on #48 only. | +| [#181](https://github.com/ContextualWisdomLab/TEPP/pull/181)–[#190](https://github.com/ContextualWisdomLab/TEPP/pull/190), [#192](https://github.com/ContextualWisdomLab/TEPP/pull/192)–[#200](https://github.com/ContextualWisdomLab/TEPP/pull/200) | Draft stacked psychometric T0VAR/drift/standardised recoveries | Keep stacked; do not promote drafts or predecessor heads as protected-main. Closed stacked #191 landed on #48 only. | ## Delivery sequence From ff2e645b178588adea1c08730b2b1ec4e50882e5 Mon Sep 17 00:00:00 2001 From: Seongho Bae Date: Mon, 24 Aug 2026 05:57:27 +0900 Subject: [PATCH 47/52] docs: refresh 106-PR exact-head gap register after #201 span units Bind GAP-005 to #201 5344729 as a first span-unit slice only, not concept alignment and not implemented-main. Queued Checks remain off protected-main. --- CHANGELOG.md | 13 +++++++------ docs/product-technical-gap-baseline.md | 24 +++++++++++++----------- 2 files changed, 20 insertions(+), 17 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index c48f43c4..5338c220 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -85,13 +85,14 @@ All notable changes to TEPP are documented here. The format follows Keep a Chang ### Changed -- Refreshed the live gap-baseline inventory to the 2026-08-23T19:48:22Z GitHub - snapshot (105 open PRs / 36 drafts / 12 issues; protected-main +- Refreshed the live gap-baseline inventory to the 2026-08-23T20:57:00Z GitHub + snapshot (106 open PRs / 36 drafts / 12 issues; protected-main `c45be17a9dbce95ef81cee230e9d128abc7160ac`), binding each operator-gap current - head SHA to that exact-head register, including stacked drafts #199/#200, - #49 `dd6cf43e5edf` (unique-fold nightly green), and #164 `7b222b0901b1` as the - predecessor register head. Duplicate PR #179 remains closed. Stacked-merged - heads and queued Checks are not implemented-main. + head SHA to that exact-head register, including #201 `5344729219a3` as the + GAP-005 first span-unit slice (not implemented-main), #49 `dd6cf43e5edf` + unique-fold nightly green, and #164 `627f5950f8d1` as the predecessor register + head. Duplicate PR #179 remains closed. Stacked-merged heads and queued Checks + are not implemented-main. - Clarified ADR 0001 so it owns Rust-first numerical/reference-backend authority while ADR 0011 owns cross-service MSA/service authority. - Clarified ADR 0006 so it owns GPU/VRAM and model-credential boundaries; ADR 0010 now owns LLM orchestration policy and ADR 0015 owns autonomous repository-write/review/merge authority. - Expanded ADR 0002–0005 and 0009–0011 with explicit implementation maturity, alternatives, failure/recovery, compatibility/migration, verification, and rollback/supersession boundaries where they were previously implicit. diff --git a/docs/product-technical-gap-baseline.md b/docs/product-technical-gap-baseline.md index dfbb319b..88441770 100644 --- a/docs/product-technical-gap-baseline.md +++ b/docs/product-technical-gap-baseline.md @@ -2,7 +2,7 @@ **Status:** Live delivery baseline **Product:** Temporal Event Psychometrics Platform (TEPP) -**Snapshot:** 2026-08-23T19:48:22Z +**Snapshot:** 2026-08-23T20:57:00Z **Protected-main evidence:** `c45be17a9dbce95ef81cee230e9d128abc7160ac` **Workspace version on protected main:** `0.1.0` **Canonical gap-baseline authority:** [PR #164](https://github.com/ContextualWisdomLab/TEPP/pull/164). Duplicate [PR #179](https://github.com/ContextualWisdomLab/TEPP/pull/179) was closed at 2026-08-23T12:39:22Z and is not a second protected-main register. @@ -26,9 +26,9 @@ GitHub state before any customer, release, certification, or valuation claim. |---|---:|---| | Protected-main SHA | `c45be17a9dbce95ef81cee230e9d128abc7160ac` | All as-built claims are bounded to this commit. | | Workspace members | 10 Rust crates | The foundation is modular, but the approved target contains additional semantic, estimator, compute, psychometric, event-intelligence, network, interpretation, artifact, and visual boundaries. | -| Open pull requests | **105** | The queue is itself a release blocker and requires consolidation. | +| Open pull requests | **106** | The queue is itself a release blocker and requires consolidation. | | Draft pull requests | **36** | Most queued work is not independently review-ready. | -| Non-draft pull requests | **69** | A non-draft state is not a qualifying review or required-check result. | +| Non-draft pull requests | **70** | A non-draft state is not a qualifying review or required-check result. | | Open product issues | **12** | Issue #156 plus the product-completion program #166–#176. | | Duplicate gap-baseline PRs | **#164** (authority); **#179** closed as superseded | Only one live register remains; queued Checks on #164 are not protected-main evidence. | | Current package version | `0.1.0` | No supported product release is established by the repository version alone. | @@ -37,7 +37,7 @@ The pull-request counts come from the live GitHub search at this snapshot. The full exact-head classification is owned by [issue #175](https://github.com/ContextualWisdomLab/TEPP/issues/175); this file keeps the operator-level summary while the exact-head register below records the -current 105-row volatile queue. Passing or queued Checks on an open PR never +current 106-row volatile queue. Passing or queued Checks on an open PR never promote that PR to implemented-main. ## Current open pull-request evidence @@ -49,6 +49,7 @@ Checks, and branch rules immediately before every mutation. | PR | Exact current head | Draft | Base | Title | |---:|---|:---:|---|---| +| #201 | `5344729219a386078bcb77b7f42a78039a5910f9` | false | main | feat(semantic): bind exact spans as units; refuse language as identity | | #200 | `8f429471e2b249e76c9b722eaf2443518b666c98` | true | agent/psychometric-initial-tipred-observed-variance | feat(psychometric): recover Driver Eq. 5 of addedTIPREDVAR extra observed TI variance | | #199 | `7a476ed3c39e4ba14c9c51f5cbbafc33310979d2` | true | agent/psychometric-added-t0-tipred-var | feat(psychometric): recover Driver Eq. 5 of addedT0TIPREDVAR extra observed TI variance | | #198 | `52a9b4ceb26bdd89e6e49c56fb473d96c68ca352` | true | agent/psychometric-standardised-initial-tipred-effect | feat(psychometric): recover Driver 2017-era addedT0TIPREDVAR after T0TIPREDEFFECT | @@ -65,12 +66,12 @@ Checks, and branch rules immediately before every mutation. | #185 | `69ffec6425863b2842094ff1b1d6c07d8eee6b5b` | true | agent/psychometric-predetermined-later-lagged-t0var | feat(psychometric): recover Driver later-start later-occasion variance of predetermined T0VAR | | #184 | `6b93147e668ff414240f3ea94997f2937c0817f1` | true | agent/psychometric-predetermined-initial-t0var | feat(psychometric): recover Driver later-start lagged covariance of predetermined T0VAR | | #183 | `c10097be0f6f4ff8dd8e6db21dce8818630fe17f` | true | agent/psychometric-predetermined-lagged-t0var | feat(psychometric): recover Driver first-occasion variance of predetermined T0VAR | -| #182 | `2d4d6bf9fdfa1c55d2cc3b2f36ba6a1d0523c8a8` | true | agent/psychometric-predetermined-later-t0var | feat(psychometric): recover Driver lagged covariance of predetermined T0VAR | -| #181 | `542806b747eea55c9eab705c5dd3479a3e1c63b6` | true | agent/psychometric-posterior-esem-input | feat(psychometric): recover Driver later-occasion variance of predetermined T0VAR | +| #182 | `7e203976fe4b768fdb4ee6c11126ac7e9ab1c4b8` | true | agent/psychometric-predetermined-later-t0var | feat(psychometric): recover Driver lagged covariance of predetermined T0VAR | +| #181 | `96e8d1c21924124d144f6273893eda8ac6b41b2d` | true | agent/psychometric-posterior-esem-input | feat(psychometric): recover Driver later-occasion variance of predetermined T0VAR | | #180 | `fa169e8e41f13d3bae6aff242db68ebf8281e112` | false | main | fix(transport): hide raw provider exception details | | #177 | `580d45206536bf2f7deba327ffafb96a69ba7260` | false | main | fix(workflow): pin scheduler budget hardening | | #165 | `34083c3f5d6637cf1665a29dac45fbf67a74d5dd` | false | main | feat: route hourly product agents through contextual orchestrator | -| #164 | `7b222b0901b1edd254a6bf4d15c408e5ae52591e` | false | main | docs: define TEPP product completion and technical gap baseline | +| #164 | `627f5950f8d1e85ececc45f8e317a43434ccb7df` | false | main | docs: define TEPP product completion and technical gap baseline | | #157 | `7402745cfb0c27964f286c38a2efd7042c2320ff` | false | main | feat(api): publish completed analysis-run result contract | | #155 | `02c009c16e6a9c6fee3237224ed6a17cbc4169e1` | false | main | feat(api): admit LineageWeave as a modular analysis-run consumer | | #154 | `a7a1bdf96a6759f11aed9284b73319ed94b82fd2` | false | main | ci(rust): refresh branch coverage compiler baseline | @@ -155,7 +156,7 @@ Checks, and branch rules immediately before every mutation. | #49 | `dd6cf43e5edfe1d9a7e344cac5352bfb55480e8a` | false | main | feat(psychometric): posterior ESEM input gates with true-parameter RMSE | | #48 | `6110d3660607ba46b312b4d76f048f1bcc4f3bc5` | false | main | feat(topic): logistic-normal ALR coordinates with true-parameter RMSE | -The exact-head register, counts, and protected-main SHA were fetched from the live GitHub REST API at `2026-08-23T19:48:22Z`. Review decisions, required Checks, and mergeability remain volatile; re-read them immediately before every mutation. This snapshot is not merge authorization and does not treat queued or passing Checks as shipped protected-main behavior. +The exact-head register, counts, and protected-main SHA were fetched from the live GitHub REST API at `2026-08-23T20:57:00Z`. Review decisions, required Checks, and mergeability remain volatile; re-read them immediately before every mutation. This snapshot is not merge authorization and does not treat queued or passing Checks as shipped protected-main behavior. ## Authority and derivation @@ -212,17 +213,17 @@ visual workspace, or a supported multi-tenant release. | GAP-003B | Scientific result artifacts cannot yet be persisted, restarted, and recovered as one supported operator workflow. | `accepted-target` | product-completion | `c45be17` (persistence contracts lack E2E recovery) | [#166](https://github.com/ContextualWisdomLab/TEPP/issues/166) | `—` (issue program; no current implementation PR) | Durable storage, migration/rollback, restart/recovery, artifact digest verification, and terminal retrieval must pass against a real Compose deployment. | | GAP-003C | The persistence slice classifies concurrent-write SQLSTATEs, but has no measured hot-partition detection, routing, or mitigation for tenant/result workloads. | `accepted-target` | product-completion | `c45be17` (conflict classification only; no measured partition control) | [#166](https://github.com/ContextualWisdomLab/TEPP/issues/166) | `—` (issue program; no current implementation PR) | A real Compose/PostgreSQL workload identifies hot keys and partition skew, applies bounded tenant/time or result routing without weakening 3NF or temporal authority, and proves conflict rate, latency, recovery, and migration/rollback behavior under load. | | GAP-004 | The central shared-latent temporal/relational topic estimator is absent. | `accepted-target` | product vertical | `c45be17` (no production estimator) | [#167](https://github.com/ContextualWisdomLab/TEPP/issues/167) / [PR #48](https://github.com/ContextualWisdomLab/TEPP/pull/48) | `6110d3660607` | Rust CPU `f64` fitting, sparse bounded parallelism, posterior artifacts, convergence, true-parameter RMSE/bias/coverage, and real candidate-K fitting. | -| GAP-005 | Real multilingual documents are not yet transformed into validated exact-span semantic units and versioned shared concepts. | `accepted-target` | product vertical | `c45be17` (evidence spans exist without full semantic pipeline) | [#168](https://github.com/ContextualWisdomLab/TEPP/issues/168) | `—` (PR #53 merged only onto a non-main maintenance branch and is not implemented-main) | Unicode/layout/language-tailored processing, unknown-concept review, multilingual calibration/invariance, image-position evidence, and prompt-injection tests. | +| GAP-005 | Real multilingual documents are not yet transformed into validated exact-span semantic units and versioned shared concepts. | `accepted-target` | product vertical | `c45be17` (evidence spans exist without full semantic pipeline) | [#168](https://github.com/ContextualWisdomLab/TEPP/issues/168) / [PR #201](https://github.com/ContextualWisdomLab/TEPP/pull/201) | `5344729219a3` | Span-grounded units on #201 are a first slice only (not concept alignment, not invariance, not implemented-main). Closure still requires Unicode/layout/language-tailored processing, unknown-concept review, multilingual calibration/invariance, image-position evidence, and prompt-injection tests. | | GAP-006 | Posterior topic measurements cannot yet be fitted through a complete cross-classified longitudinal ESEM/DSEM engine. | `accepted-target` | product vertical | `c45be17` (temporal and membership primitives only) | [#169](https://github.com/ContextualWisdomLab/TEPP/issues/169) / [PR #119](https://github.com/ContextualWisdomLab/TEPP/pull/119) | `47ab763d49b1` | Plausible-value/joint uncertainty, invariance, irregular event time, within/between separation, multiple membership, true-parameter recovery, and causal-claim refusal. | | GAP-007 | TDT detection/tracking and CHRONOS schema/forecast/temporal reasoning remain isolated bounded gates rather than one calibrated product workflow. | `accepted-target` | product vertical | `c45be17` (event/time primitives only) | [#170](https://github.com/ContextualWisdomLab/TEPP/issues/170) / [PR #70](https://github.com/ContextualWisdomLab/TEPP/pull/70) | `7a1f33aa68c1` | Span-grounded mentions, calibrated TDT metrics, schema/forecast hypothesis states, interval consistency, known-truth recovery, persistence, and exports. | | GAP-008 | GPU support is policy-only; no production estimator kernel has real hardware parity or declared VRAM evidence. | `accepted-target` | product vertical | `c45be17` (VRAM policy only) | [#171](https://github.com/ContextualWisdomLab/TEPP/issues/171) / [PR #51](https://github.com/ContextualWisdomLab/TEPP/pull/51) | `1801501c4d7c` | Real CUDA/portable backend execution, CPU parity, streamed memory, bounded OOM/fallback, hardware profiles, telemetry, and no skipped-support claim. | | GAP-009 | Topic association and cluster outputs lack posterior-valid estimation, uncertainty, edge stability, and consensus communities. | `accepted-target` | product vertical | `c45be17` (network primitives only) | [#172](https://github.com/ContextualWisdomLab/TEPP/issues/172) / [PR #71](https://github.com/ContextualWisdomLab/TEPP/pull/71) | `2588f38281b9` | Valid log-ratio coordinates, interval/stability-bearing edges, repeated Leiden consensus, known-truth network/cluster recovery, and reproducible exports. | | GAP-010 | Operators lack coordinated accessible visual analytics and exact-value export workflows. | `accepted-target` | product vertical | `c45be17` (no visual workspace) | [#173](https://github.com/ContextualWisdomLab/TEPP/issues/173) | `—` (Figma work not started) | Real Figma File ID in ADR, Storybook/design tokens, ten PRD views, exact-value tables, accessible interaction/print/PDF states, provenance, and source-consistent exports. | | GAP-011 | TEPP is not yet an operable multi-tenant service or supported release. | `accepted-target` | product vertical | `c45be17` (library contracts only) | [#174](https://github.com/ContextualWisdomLab/TEPP/issues/174) | `—` (issue program; no current implementation PR) | Durable queue/storage, OIDC/RLS/purpose controls, OpenTelemetry/SLOs, load/recovery, migrations, signed release/SBOM/provenance, assurance evidence, and support policy. | -| GAP-012 | The 105-PR queue obscures authority, repeatedly stales exact-head evidence, and fragments product boundaries. | `partial` | release blocker | `c45be17` (protected-main truth) | [#175](https://github.com/ContextualWisdomLab/TEPP/issues/175) | `—` (live queue program) | Every PR classified; unique landing vehicles; compatible slices folded; superseded work closed with provenance; scheduler prioritizes consolidation; queue reaches zero before GA. | +| GAP-012 | The 106-PR queue obscures authority, repeatedly stales exact-head evidence, and fragments product boundaries. | `partial` | release blocker | `c45be17` (protected-main truth) | [#175](https://github.com/ContextualWisdomLab/TEPP/issues/175) | `—` (live queue program) | Every PR classified; unique landing vehicles; compatible slices folded; superseded work closed with provenance; scheduler prioritizes consolidation; queue reaches zero before GA. | | GAP-013 | Evidence-grounded LLM interpretation is routed but not executed and validated as a production interpreter/verifier port. | `partial` | active integration | `c45be17` (routing and refusal contracts only) | [#176](https://github.com/ContextualWisdomLab/TEPP/issues/176), [PR #69](https://github.com/ContextualWisdomLab/TEPP/pull/69), [PR #165](https://github.com/ContextualWisdomLab/TEPP/pull/165) | `8e4a3ca9cc80` / `34083c3f5d66` | Contextual-orchestrator execution, evidence citations, verifier refusals, comparable-budget ablations, provider eligibility/fallback, abstention, live/offline contract tests, and no numerical-authority escalation. | | GAP-014 | README/TRD and some PR descriptions lag protected-main and live queue reality. | `partial` | documentation drift | `c45be17` (documentation is not fully synchronized) | [#175](https://github.com/ContextualWisdomLab/TEPP/issues/175) | `—` (queue-consolidation work) | Reconcile README, TRD, traceability, ADR maturity, CHANGELOG, preferred-merge declarations, and exact protected-main evidence. | -| GAP-015 | There was no canonical live product/operator-gap register tied to documentation validation. | `active-PR` | landing vehicle | `c45be17` (no live gap register) | [PR #164](https://github.com/ContextualWisdomLab/TEPP/pull/164) (authority); closed [PR #179](https://github.com/ContextualWisdomLab/TEPP/pull/179) is not a second register | `7b222b0901b1` | Merge this document and its validator/map/quality-test integration after exact-head checks and independent review. Passing Checks on #164 are not implemented-main. | +| GAP-015 | There was no canonical live product/operator-gap register tied to documentation validation. | `active-PR` | landing vehicle | `c45be17` (no live gap register) | [PR #164](https://github.com/ContextualWisdomLab/TEPP/pull/164) (authority); closed [PR #179](https://github.com/ContextualWisdomLab/TEPP/pull/179) is not a second register | `627f5950f8d1` | Merge this document and its validator/map/quality-test integration after exact-head checks and independent review. Passing Checks on #164 are not implemented-main. | | GAP-016 | Hourly PR maintenance used an older central scheduler revision whose per-repository sweep budgets could amplify the queued review workload. | `active-PR` | operability hardening | `c45be17` (caller pin before central budget hardening) | [PR #177](https://github.com/ContextualWisdomLab/TEPP/pull/177) | `580d45206536` | The change pins a verified central revision immutably; closure still requires exact-head hosted Checks, resolved threads, and independent review. | | GAP-017 | Accepted analysis runs have a terminal DTO, and cutoff-safe execution exists only on the #157 head after stacked PR #178 merged into that branch. | `active-PR` | product vertical | `c45be17` (accepted receipt only) | [#166](https://github.com/ContextualWisdomLab/TEPP/issues/166) / [PR #157](https://github.com/ContextualWisdomLab/TEPP/pull/157) | `7402745cfb0c` | Exact availability cutoff, snapshot binding, multiple-membership preservation, digest integrity, redacted no-eligible failure, and realistic end-to-end tests on protected main. Closed stacked PR #178 is not implemented-main. | @@ -258,6 +259,7 @@ because its head can change after this file is committed. | [#157](https://github.com/ContextualWisdomLab/TEPP/pull/157) | Terminal result contract for #156, including folded cutoff-safe execution from closed #178 | Complete exact-head review/check gates; keep #156 open until protected-main verification. | | [#155](https://github.com/ContextualWisdomLab/TEPP/pull/155) | Modular LineageWeave consumer parent, including folded #158/#159 | Obtain independent review; passing Checks are not implemented-main. | | [#180](https://github.com/ContextualWisdomLab/TEPP/pull/180) | Hide raw provider exception details | Review/check gates; do not weaken fail-closed provider handling. | +| [#201](https://github.com/ContextualWisdomLab/TEPP/pull/201) | First ADR 0020 / #168 span-grounded semantic-unit slice | Complete exact-head Checks and independent review; not concept alignment and not implemented-main. | | [#153](https://github.com/ContextualWisdomLab/TEPP/pull/153) | Refuse location as entity identity or language | Independent review after exact-head membership tests. | | [#48](https://github.com/ContextualWisdomLab/TEPP/pull/48) | Logistic-normal/ILR coordinate slice, including folded stacked #191 TRSL lineage artifacts | Fold into the estimator landing plan; coordinates and lineage artifacts are not candidate-K fitting. | | [#51](https://github.com/ContextualWisdomLab/TEPP/pull/51) | VRAM budget/fallback policy types | Resolve requested changes; connect only to a real production kernel under #171. | From 0fe7c254a7d47cc415698dbae417c24b4f7632b9 Mon Sep 17 00:00:00 2001 From: Seongho Bae Date: Mon, 24 Aug 2026 06:47:06 +0900 Subject: [PATCH 48/52] docs: refresh 109-PR exact-head gap register after #201 6afd650 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Bind GAP-005 to the RFC 5646-once citation head and include stacked drafts #202–#204. Queued Checks remain off implemented-main. --- CHANGELOG.md | 14 +++++++------- docs/product-technical-gap-baseline.md | 25 ++++++++++++++----------- 2 files changed, 21 insertions(+), 18 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 5338c220..386ca446 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -85,14 +85,14 @@ All notable changes to TEPP are documented here. The format follows Keep a Chang ### Changed -- Refreshed the live gap-baseline inventory to the 2026-08-23T20:57:00Z GitHub - snapshot (106 open PRs / 36 drafts / 12 issues; protected-main +- Refreshed the live gap-baseline inventory to the 2026-08-23T21:46:37Z GitHub + snapshot (109 open PRs / 39 drafts / 12 issues; protected-main `c45be17a9dbce95ef81cee230e9d128abc7160ac`), binding each operator-gap current - head SHA to that exact-head register, including #201 `5344729219a3` as the - GAP-005 first span-unit slice (not implemented-main), #49 `dd6cf43e5edf` - unique-fold nightly green, and #164 `627f5950f8d1` as the predecessor register - head. Duplicate PR #179 remains closed. Stacked-merged heads and queued Checks - are not implemented-main. + head SHA to that exact-head register, including #201 `6afd650667e1` (RFC 5646 + cited once; first GAP-005 slice, not implemented-main), stacked drafts + #202–#204, and #164 `ff2e645b1785` as the predecessor register head. Duplicate + PR #179 remains closed. Stacked-merged heads and queued Checks are not + implemented-main. - Clarified ADR 0001 so it owns Rust-first numerical/reference-backend authority while ADR 0011 owns cross-service MSA/service authority. - Clarified ADR 0006 so it owns GPU/VRAM and model-credential boundaries; ADR 0010 now owns LLM orchestration policy and ADR 0015 owns autonomous repository-write/review/merge authority. - Expanded ADR 0002–0005 and 0009–0011 with explicit implementation maturity, alternatives, failure/recovery, compatibility/migration, verification, and rollback/supersession boundaries where they were previously implicit. diff --git a/docs/product-technical-gap-baseline.md b/docs/product-technical-gap-baseline.md index 88441770..0a2596cd 100644 --- a/docs/product-technical-gap-baseline.md +++ b/docs/product-technical-gap-baseline.md @@ -2,7 +2,7 @@ **Status:** Live delivery baseline **Product:** Temporal Event Psychometrics Platform (TEPP) -**Snapshot:** 2026-08-23T20:57:00Z +**Snapshot:** 2026-08-23T21:46:37Z **Protected-main evidence:** `c45be17a9dbce95ef81cee230e9d128abc7160ac` **Workspace version on protected main:** `0.1.0` **Canonical gap-baseline authority:** [PR #164](https://github.com/ContextualWisdomLab/TEPP/pull/164). Duplicate [PR #179](https://github.com/ContextualWisdomLab/TEPP/pull/179) was closed at 2026-08-23T12:39:22Z and is not a second protected-main register. @@ -26,8 +26,8 @@ GitHub state before any customer, release, certification, or valuation claim. |---|---:|---| | Protected-main SHA | `c45be17a9dbce95ef81cee230e9d128abc7160ac` | All as-built claims are bounded to this commit. | | Workspace members | 10 Rust crates | The foundation is modular, but the approved target contains additional semantic, estimator, compute, psychometric, event-intelligence, network, interpretation, artifact, and visual boundaries. | -| Open pull requests | **106** | The queue is itself a release blocker and requires consolidation. | -| Draft pull requests | **36** | Most queued work is not independently review-ready. | +| Open pull requests | **109** | The queue is itself a release blocker and requires consolidation. | +| Draft pull requests | **39** | Most queued work is not independently review-ready. | | Non-draft pull requests | **70** | A non-draft state is not a qualifying review or required-check result. | | Open product issues | **12** | Issue #156 plus the product-completion program #166–#176. | | Duplicate gap-baseline PRs | **#164** (authority); **#179** closed as superseded | Only one live register remains; queued Checks on #164 are not protected-main evidence. | @@ -37,7 +37,7 @@ The pull-request counts come from the live GitHub search at this snapshot. The full exact-head classification is owned by [issue #175](https://github.com/ContextualWisdomLab/TEPP/issues/175); this file keeps the operator-level summary while the exact-head register below records the -current 106-row volatile queue. Passing or queued Checks on an open PR never +current 109-row volatile queue. Passing or queued Checks on an open PR never promote that PR to implemented-main. ## Current open pull-request evidence @@ -49,7 +49,10 @@ Checks, and branch rules immediately before every mutation. | PR | Exact current head | Draft | Base | Title | |---:|---|:---:|---|---| -| #201 | `5344729219a386078bcb77b7f42a78039a5910f9` | false | main | feat(semantic): bind exact spans as units; refuse language as identity | +| #204 | `b8b266dd2111c671ce97311d9ae2bf8fa5e597d2` | true | agent/psychometric-standardised-continuous-tdpred-effect | feat(psychometric): recover Driver Table 3 T0TDPREDEFFECTstd after positive T0VAR | +| #203 | `ebed677449aad812e4b9152234a52c799db9c0e3` | true | agent/psychometric-asymptotic-tipred-observed-variance | feat(psychometric): recover Driver 2017-era addedTIPREDVARstd after addedTIPREDVAR | +| #202 | `a7ce1a0fe9c91bc557fff9f5857a88985f087970` | true | agent/psychometric-asymptotic-tipred-observed-variance | feat(psychometric): recover Driver p.16 TDPREDEFFECTstd after positive variances | +| #201 | `6afd650667e1011242bb9b0437ce07dc0f6a2431` | false | main | feat(semantic): bind exact spans as units; refuse language as identity | | #200 | `8f429471e2b249e76c9b722eaf2443518b666c98` | true | agent/psychometric-initial-tipred-observed-variance | feat(psychometric): recover Driver Eq. 5 of addedTIPREDVAR extra observed TI variance | | #199 | `7a476ed3c39e4ba14c9c51f5cbbafc33310979d2` | true | agent/psychometric-added-t0-tipred-var | feat(psychometric): recover Driver Eq. 5 of addedT0TIPREDVAR extra observed TI variance | | #198 | `52a9b4ceb26bdd89e6e49c56fb473d96c68ca352` | true | agent/psychometric-standardised-initial-tipred-effect | feat(psychometric): recover Driver 2017-era addedT0TIPREDVAR after T0TIPREDEFFECT | @@ -71,7 +74,7 @@ Checks, and branch rules immediately before every mutation. | #180 | `fa169e8e41f13d3bae6aff242db68ebf8281e112` | false | main | fix(transport): hide raw provider exception details | | #177 | `580d45206536bf2f7deba327ffafb96a69ba7260` | false | main | fix(workflow): pin scheduler budget hardening | | #165 | `34083c3f5d6637cf1665a29dac45fbf67a74d5dd` | false | main | feat: route hourly product agents through contextual orchestrator | -| #164 | `627f5950f8d1e85ececc45f8e317a43434ccb7df` | false | main | docs: define TEPP product completion and technical gap baseline | +| #164 | `ff2e645b178588adea1c08730b2b1ec4e50882e5` | false | main | docs: define TEPP product completion and technical gap baseline | | #157 | `7402745cfb0c27964f286c38a2efd7042c2320ff` | false | main | feat(api): publish completed analysis-run result contract | | #155 | `02c009c16e6a9c6fee3237224ed6a17cbc4169e1` | false | main | feat(api): admit LineageWeave as a modular analysis-run consumer | | #154 | `a7a1bdf96a6759f11aed9284b73319ed94b82fd2` | false | main | ci(rust): refresh branch coverage compiler baseline | @@ -156,7 +159,7 @@ Checks, and branch rules immediately before every mutation. | #49 | `dd6cf43e5edfe1d9a7e344cac5352bfb55480e8a` | false | main | feat(psychometric): posterior ESEM input gates with true-parameter RMSE | | #48 | `6110d3660607ba46b312b4d76f048f1bcc4f3bc5` | false | main | feat(topic): logistic-normal ALR coordinates with true-parameter RMSE | -The exact-head register, counts, and protected-main SHA were fetched from the live GitHub REST API at `2026-08-23T20:57:00Z`. Review decisions, required Checks, and mergeability remain volatile; re-read them immediately before every mutation. This snapshot is not merge authorization and does not treat queued or passing Checks as shipped protected-main behavior. +The exact-head register, counts, and protected-main SHA were fetched from the live GitHub REST API at `2026-08-23T21:46:37Z`. Review decisions, required Checks, and mergeability remain volatile; re-read them immediately before every mutation. This snapshot is not merge authorization and does not treat queued or passing Checks as shipped protected-main behavior. ## Authority and derivation @@ -213,17 +216,17 @@ visual workspace, or a supported multi-tenant release. | GAP-003B | Scientific result artifacts cannot yet be persisted, restarted, and recovered as one supported operator workflow. | `accepted-target` | product-completion | `c45be17` (persistence contracts lack E2E recovery) | [#166](https://github.com/ContextualWisdomLab/TEPP/issues/166) | `—` (issue program; no current implementation PR) | Durable storage, migration/rollback, restart/recovery, artifact digest verification, and terminal retrieval must pass against a real Compose deployment. | | GAP-003C | The persistence slice classifies concurrent-write SQLSTATEs, but has no measured hot-partition detection, routing, or mitigation for tenant/result workloads. | `accepted-target` | product-completion | `c45be17` (conflict classification only; no measured partition control) | [#166](https://github.com/ContextualWisdomLab/TEPP/issues/166) | `—` (issue program; no current implementation PR) | A real Compose/PostgreSQL workload identifies hot keys and partition skew, applies bounded tenant/time or result routing without weakening 3NF or temporal authority, and proves conflict rate, latency, recovery, and migration/rollback behavior under load. | | GAP-004 | The central shared-latent temporal/relational topic estimator is absent. | `accepted-target` | product vertical | `c45be17` (no production estimator) | [#167](https://github.com/ContextualWisdomLab/TEPP/issues/167) / [PR #48](https://github.com/ContextualWisdomLab/TEPP/pull/48) | `6110d3660607` | Rust CPU `f64` fitting, sparse bounded parallelism, posterior artifacts, convergence, true-parameter RMSE/bias/coverage, and real candidate-K fitting. | -| GAP-005 | Real multilingual documents are not yet transformed into validated exact-span semantic units and versioned shared concepts. | `accepted-target` | product vertical | `c45be17` (evidence spans exist without full semantic pipeline) | [#168](https://github.com/ContextualWisdomLab/TEPP/issues/168) / [PR #201](https://github.com/ContextualWisdomLab/TEPP/pull/201) | `5344729219a3` | Span-grounded units on #201 are a first slice only (not concept alignment, not invariance, not implemented-main). Closure still requires Unicode/layout/language-tailored processing, unknown-concept review, multilingual calibration/invariance, image-position evidence, and prompt-injection tests. | +| GAP-005 | Real multilingual documents are not yet transformed into validated exact-span semantic units and versioned shared concepts. | `accepted-target` | product vertical | `c45be17` (evidence spans exist without full semantic pipeline) | [#168](https://github.com/ContextualWisdomLab/TEPP/issues/168) / [PR #201](https://github.com/ContextualWisdomLab/TEPP/pull/201) | `6afd650667e1` | Span-grounded units on #201 are a first slice only (not concept alignment, not invariance, not implemented-main). Closure still requires Unicode/layout/language-tailored processing, unknown-concept review, multilingual calibration/invariance, image-position evidence, and prompt-injection tests. | | GAP-006 | Posterior topic measurements cannot yet be fitted through a complete cross-classified longitudinal ESEM/DSEM engine. | `accepted-target` | product vertical | `c45be17` (temporal and membership primitives only) | [#169](https://github.com/ContextualWisdomLab/TEPP/issues/169) / [PR #119](https://github.com/ContextualWisdomLab/TEPP/pull/119) | `47ab763d49b1` | Plausible-value/joint uncertainty, invariance, irregular event time, within/between separation, multiple membership, true-parameter recovery, and causal-claim refusal. | | GAP-007 | TDT detection/tracking and CHRONOS schema/forecast/temporal reasoning remain isolated bounded gates rather than one calibrated product workflow. | `accepted-target` | product vertical | `c45be17` (event/time primitives only) | [#170](https://github.com/ContextualWisdomLab/TEPP/issues/170) / [PR #70](https://github.com/ContextualWisdomLab/TEPP/pull/70) | `7a1f33aa68c1` | Span-grounded mentions, calibrated TDT metrics, schema/forecast hypothesis states, interval consistency, known-truth recovery, persistence, and exports. | | GAP-008 | GPU support is policy-only; no production estimator kernel has real hardware parity or declared VRAM evidence. | `accepted-target` | product vertical | `c45be17` (VRAM policy only) | [#171](https://github.com/ContextualWisdomLab/TEPP/issues/171) / [PR #51](https://github.com/ContextualWisdomLab/TEPP/pull/51) | `1801501c4d7c` | Real CUDA/portable backend execution, CPU parity, streamed memory, bounded OOM/fallback, hardware profiles, telemetry, and no skipped-support claim. | | GAP-009 | Topic association and cluster outputs lack posterior-valid estimation, uncertainty, edge stability, and consensus communities. | `accepted-target` | product vertical | `c45be17` (network primitives only) | [#172](https://github.com/ContextualWisdomLab/TEPP/issues/172) / [PR #71](https://github.com/ContextualWisdomLab/TEPP/pull/71) | `2588f38281b9` | Valid log-ratio coordinates, interval/stability-bearing edges, repeated Leiden consensus, known-truth network/cluster recovery, and reproducible exports. | | GAP-010 | Operators lack coordinated accessible visual analytics and exact-value export workflows. | `accepted-target` | product vertical | `c45be17` (no visual workspace) | [#173](https://github.com/ContextualWisdomLab/TEPP/issues/173) | `—` (Figma work not started) | Real Figma File ID in ADR, Storybook/design tokens, ten PRD views, exact-value tables, accessible interaction/print/PDF states, provenance, and source-consistent exports. | | GAP-011 | TEPP is not yet an operable multi-tenant service or supported release. | `accepted-target` | product vertical | `c45be17` (library contracts only) | [#174](https://github.com/ContextualWisdomLab/TEPP/issues/174) | `—` (issue program; no current implementation PR) | Durable queue/storage, OIDC/RLS/purpose controls, OpenTelemetry/SLOs, load/recovery, migrations, signed release/SBOM/provenance, assurance evidence, and support policy. | -| GAP-012 | The 106-PR queue obscures authority, repeatedly stales exact-head evidence, and fragments product boundaries. | `partial` | release blocker | `c45be17` (protected-main truth) | [#175](https://github.com/ContextualWisdomLab/TEPP/issues/175) | `—` (live queue program) | Every PR classified; unique landing vehicles; compatible slices folded; superseded work closed with provenance; scheduler prioritizes consolidation; queue reaches zero before GA. | +| GAP-012 | The 109-PR queue obscures authority, repeatedly stales exact-head evidence, and fragments product boundaries. | `partial` | release blocker | `c45be17` (protected-main truth) | [#175](https://github.com/ContextualWisdomLab/TEPP/issues/175) | `—` (live queue program) | Every PR classified; unique landing vehicles; compatible slices folded; superseded work closed with provenance; scheduler prioritizes consolidation; queue reaches zero before GA. | | GAP-013 | Evidence-grounded LLM interpretation is routed but not executed and validated as a production interpreter/verifier port. | `partial` | active integration | `c45be17` (routing and refusal contracts only) | [#176](https://github.com/ContextualWisdomLab/TEPP/issues/176), [PR #69](https://github.com/ContextualWisdomLab/TEPP/pull/69), [PR #165](https://github.com/ContextualWisdomLab/TEPP/pull/165) | `8e4a3ca9cc80` / `34083c3f5d66` | Contextual-orchestrator execution, evidence citations, verifier refusals, comparable-budget ablations, provider eligibility/fallback, abstention, live/offline contract tests, and no numerical-authority escalation. | | GAP-014 | README/TRD and some PR descriptions lag protected-main and live queue reality. | `partial` | documentation drift | `c45be17` (documentation is not fully synchronized) | [#175](https://github.com/ContextualWisdomLab/TEPP/issues/175) | `—` (queue-consolidation work) | Reconcile README, TRD, traceability, ADR maturity, CHANGELOG, preferred-merge declarations, and exact protected-main evidence. | -| GAP-015 | There was no canonical live product/operator-gap register tied to documentation validation. | `active-PR` | landing vehicle | `c45be17` (no live gap register) | [PR #164](https://github.com/ContextualWisdomLab/TEPP/pull/164) (authority); closed [PR #179](https://github.com/ContextualWisdomLab/TEPP/pull/179) is not a second register | `627f5950f8d1` | Merge this document and its validator/map/quality-test integration after exact-head checks and independent review. Passing Checks on #164 are not implemented-main. | +| GAP-015 | There was no canonical live product/operator-gap register tied to documentation validation. | `active-PR` | landing vehicle | `c45be17` (no live gap register) | [PR #164](https://github.com/ContextualWisdomLab/TEPP/pull/164) (authority); closed [PR #179](https://github.com/ContextualWisdomLab/TEPP/pull/179) is not a second register | `ff2e645b1785` | Merge this document and its validator/map/quality-test integration after exact-head checks and independent review. Passing Checks on #164 are not implemented-main. | | GAP-016 | Hourly PR maintenance used an older central scheduler revision whose per-repository sweep budgets could amplify the queued review workload. | `active-PR` | operability hardening | `c45be17` (caller pin before central budget hardening) | [PR #177](https://github.com/ContextualWisdomLab/TEPP/pull/177) | `580d45206536` | The change pins a verified central revision immutably; closure still requires exact-head hosted Checks, resolved threads, and independent review. | | GAP-017 | Accepted analysis runs have a terminal DTO, and cutoff-safe execution exists only on the #157 head after stacked PR #178 merged into that branch. | `active-PR` | product vertical | `c45be17` (accepted receipt only) | [#166](https://github.com/ContextualWisdomLab/TEPP/issues/166) / [PR #157](https://github.com/ContextualWisdomLab/TEPP/pull/157) | `7402745cfb0c` | Exact availability cutoff, snapshot binding, multiple-membership preservation, digest integrity, redacted no-eligible failure, and realistic end-to-end tests on protected main. Closed stacked PR #178 is not implemented-main. | @@ -267,7 +270,7 @@ because its head can change after this file is committed. | [#69](https://github.com/ContextualWisdomLab/TEPP/pull/69) | Interpretation grounding/refusal metrics | Fold into the product interpreter/verifier under #176. | | [#71](https://github.com/ContextualWisdomLab/TEPP/pull/71) | Compositional geometry/network pair metrics | Fold into the network estimator under #172. | | [#119](https://github.com/ContextualWisdomLab/TEPP/pull/119) | Bounded loading/lag recovery slice | Consolidate into the psychometric engine under #169. | -| [#181](https://github.com/ContextualWisdomLab/TEPP/pull/181)–[#190](https://github.com/ContextualWisdomLab/TEPP/pull/190), [#192](https://github.com/ContextualWisdomLab/TEPP/pull/192)–[#200](https://github.com/ContextualWisdomLab/TEPP/pull/200) | Draft stacked psychometric T0VAR/drift/standardised recoveries | Keep stacked; do not promote drafts or predecessor heads as protected-main. Closed stacked #191 landed on #48 only. | +| [#181](https://github.com/ContextualWisdomLab/TEPP/pull/181)–[#190](https://github.com/ContextualWisdomLab/TEPP/pull/190), [#192](https://github.com/ContextualWisdomLab/TEPP/pull/192)–[#204](https://github.com/ContextualWisdomLab/TEPP/pull/204) | Draft stacked psychometric T0VAR/drift/standardised recoveries | Keep stacked; do not promote drafts or predecessor heads as protected-main. Closed stacked #191 landed on #48 only. | ## Delivery sequence From 456d77c3eb4e1ed2b9555402bcb3ff5713bd3080 Mon Sep 17 00:00:00 2001 From: opencode-agent Date: Mon, 24 Aug 2026 13:02:22 +0900 Subject: [PATCH 49/52] fix(docs): deny queued-Checks promotion by governed negation Replace the fixed-window denial regex with sentence-scoped negation governance: a claim passes only when a negation cue directly governs a promotion verb inside the same sentence and no adversative conjunction separates that pair from the maturity assertion. Honest wordings whose negation precedes the phrase are accepted, while unrelated negated clauses joined by 'but' can no longer license an implemented-main claim. --- scripts/validate_documentation.py | 35 +++++++++++++++-- .../test_product_technical_gap_baseline.py | 39 +++++++++++++++++++ 2 files changed, 70 insertions(+), 4 deletions(-) diff --git a/scripts/validate_documentation.py b/scripts/validate_documentation.py index 5965977c..d687a475 100644 --- a/scripts/validate_documentation.py +++ b/scripts/validate_documentation.py @@ -78,10 +78,16 @@ r"queued Checks.{0,80}implemented-main", re.IGNORECASE | re.DOTALL, ) -QUEUED_CHECKS_PROMOTION_DENIAL = re.compile( - r"\b(?:never|do not|does not|cannot|must not)\b.{0,40}\b(?:promote|treat|make|mean)\b", - re.IGNORECASE | re.DOTALL, +QUEUED_CHECKS_NEGATED_VERB = re.compile( + r"\b(?Pnever|not|cannot|must\s+not|do\s+not|does\s+not)\b" + r"[a-z\s]{0,12}\b" + r"(?Ppromot\w+|treat\w*|make\w*|mean\w*|constitut\w+|represent\w*)", + re.IGNORECASE, +) +QUEUED_CHECKS_ADVERSATIVE = re.compile( + r"\b(?:but|however|yet|although|though)\b", re.IGNORECASE ) +QUEUED_CHECKS_SENTENCE_BREAK = re.compile(r"[.;!?\n]") ADR_TABLE_ROW = re.compile(r"^\|\s*\[(?P\d{4})\]", re.MULTILINE) ADR_FILE_NAME = re.compile(r"^(?P\d{4})-[a-z0-9-]+\.md$") ADR_DECISION_STATUS = re.compile( @@ -158,6 +164,27 @@ def validate_documentation_map(root: Path = ROOT) -> None: ) +def _promotion_is_denied(text: str, claim: re.Match[str]) -> bool: + """Return whether the sentence around ``claim`` negates its promotion. + + A sentence denies the claim only when a negation cue directly governs a + promotion verb within that same sentence and no adversative conjunction + separates that pair from the ``implemented-main`` assertion. This accepts + honest wordings such as "does not treat queued Checks as implemented-main" + while refusing sentences where an unrelated negation coexists with an + affirmative maturity claim after "but". + """ + + sentence_start = 0 + for boundary in QUEUED_CHECKS_SENTENCE_BREAK.finditer(text, 0, claim.start()): + sentence_start = boundary.end() + window_end = claim.end() + for cue in QUEUED_CHECKS_NEGATED_VERB.finditer(text, sentence_start, window_end): + if QUEUED_CHECKS_ADVERSATIVE.search(text, cue.end(), window_end) is None: + return True + return False + + def validate_product_technical_gap_baseline(root: Path = ROOT) -> None: """Require a dated live gap register that does not promote queued Checks.""" @@ -177,7 +204,7 @@ def validate_product_technical_gap_baseline(root: Path = ROOT) -> None: if "Exact current head" not in text: failures.append("gap baseline lacks an exact-head open-PR inventory") if any( - QUEUED_CHECKS_PROMOTION_DENIAL.search(match.group(0)) is None + not _promotion_is_denied(text, match) for match in QUEUED_CHECKS_AS_SHIPPED.finditer(text) ): failures.append("gap baseline treats queued Checks as implemented-main") diff --git a/tests/quality/test_product_technical_gap_baseline.py b/tests/quality/test_product_technical_gap_baseline.py index 02c4543c..a6542153 100644 --- a/tests/quality/test_product_technical_gap_baseline.py +++ b/tests/quality/test_product_technical_gap_baseline.py @@ -193,6 +193,45 @@ def test_unrelated_negation_does_not_license_implemented_main(self) -> None: ): docs.validate_product_technical_gap_baseline(root) + def test_leading_negation_before_queued_checks_is_accepted(self) -> None: + """Negation placed before the phrase still denies promotion honestly.""" + + with tempfile.TemporaryDirectory() as temporary: + root = Path(temporary) + path = root / BASELINE_PATH + path.parent.mkdir(parents=True) + path.write_text( + valid_baseline( + extra=( + "\nThe register does not treat queued Checks " + "as implemented-main.\n" + ) + ), + encoding="utf-8", + ) + docs.validate_product_technical_gap_baseline(root) + + def test_adversative_severed_negation_still_fails(self) -> None: + """An unrelated negated clause cannot license a later maturity claim.""" + + with tempfile.TemporaryDirectory() as temporary: + root = Path(temporary) + path = root / BASELINE_PATH + path.parent.mkdir(parents=True) + path.write_text( + valid_baseline( + extra=( + "\nqueued Checks never make noise, but " + "this PR is implemented-main.\n" + ) + ), + encoding="utf-8", + ) + with self.assertRaisesRegex( + AssertionError, "queued Checks as implemented-main" + ): + docs.validate_product_technical_gap_baseline(root) + if __name__ == "__main__": # pragma: no cover unittest.main() From 864b6f2a844188f6cadbe4fa51d70123b22b15c9 Mon Sep 17 00:00:00 2001 From: Seongho Bae Date: Mon, 24 Aug 2026 13:46:32 +0900 Subject: [PATCH 50/52] docs: refresh 117-PR exact-head gap register after #205-#212 Eight new draft PRs opened in the Driver-recovery psychometric series since the last snapshot. Protected-main SHA and non-draft count (70) are unchanged -- no new mergeable work landed, this is a pure register refresh. --- docs/product-technical-gap-baseline.md | 18 +++++++++++++----- 1 file changed, 13 insertions(+), 5 deletions(-) diff --git a/docs/product-technical-gap-baseline.md b/docs/product-technical-gap-baseline.md index 0a2596cd..9ef74b1c 100644 --- a/docs/product-technical-gap-baseline.md +++ b/docs/product-technical-gap-baseline.md @@ -2,7 +2,7 @@ **Status:** Live delivery baseline **Product:** Temporal Event Psychometrics Platform (TEPP) -**Snapshot:** 2026-08-23T21:46:37Z +**Snapshot:** 2026-08-24T04:45:12Z **Protected-main evidence:** `c45be17a9dbce95ef81cee230e9d128abc7160ac` **Workspace version on protected main:** `0.1.0` **Canonical gap-baseline authority:** [PR #164](https://github.com/ContextualWisdomLab/TEPP/pull/164). Duplicate [PR #179](https://github.com/ContextualWisdomLab/TEPP/pull/179) was closed at 2026-08-23T12:39:22Z and is not a second protected-main register. @@ -26,8 +26,8 @@ GitHub state before any customer, release, certification, or valuation claim. |---|---:|---| | Protected-main SHA | `c45be17a9dbce95ef81cee230e9d128abc7160ac` | All as-built claims are bounded to this commit. | | Workspace members | 10 Rust crates | The foundation is modular, but the approved target contains additional semantic, estimator, compute, psychometric, event-intelligence, network, interpretation, artifact, and visual boundaries. | -| Open pull requests | **109** | The queue is itself a release blocker and requires consolidation. | -| Draft pull requests | **39** | Most queued work is not independently review-ready. | +| Open pull requests | **117** | The queue is itself a release blocker and requires consolidation. | +| Draft pull requests | **47** | Most queued work is not independently review-ready. | | Non-draft pull requests | **70** | A non-draft state is not a qualifying review or required-check result. | | Open product issues | **12** | Issue #156 plus the product-completion program #166–#176. | | Duplicate gap-baseline PRs | **#164** (authority); **#179** closed as superseded | Only one live register remains; queued Checks on #164 are not protected-main evidence. | @@ -37,7 +37,7 @@ The pull-request counts come from the live GitHub search at this snapshot. The full exact-head classification is owned by [issue #175](https://github.com/ContextualWisdomLab/TEPP/issues/175); this file keeps the operator-level summary while the exact-head register below records the -current 109-row volatile queue. Passing or queued Checks on an open PR never +current 117-row volatile queue. Passing or queued Checks on an open PR never promote that PR to implemented-main. ## Current open pull-request evidence @@ -49,6 +49,14 @@ Checks, and branch rules immediately before every mutation. | PR | Exact current head | Draft | Base | Title | |---:|---|:---:|---|---| +| #212 | `61e52da817fe5c3fb9169d229cdba18e25d2acd5` | true | agent/psychometric-standardised-time-independent-predictor-variance | feat(psychometric): recover Driver p.16 asymDIFFUSIONstd after positive asymDIFFUSION | +| #211 | `70157c1945a443eea25ad9883b41573bafb7e8b3` | true | agent/psychometric-standardised-manifest-variance | feat(psychometric): recover Driver p.16 TIPREDVARstd after positive TIPREDVAR | +| #210 | `22202c57c0818d3efb28438e95bdde5d0e7143b0` | true | agent/psychometric-standardised-manifest-trait-variance | feat(psychometric): recover Driver p.16 MANIFESTVARstd after positive Θ | +| #209 | `1b82ba1ae213124746e6219dd7c7a8be0bbf0e1e` | true | agent/psychometric-added-initial-tdpred-var | feat(psychometric): recover Eq. 5 of analog addedT0TIPREDVAR extra observed TD variance | +| #208 | `a65d13db4c21337fe991d9e2dfe09f71ce11aa96` | true | agent/psychometric-standardised-trait-variance | feat(psychometric): recover Driver p.16 MANIFESTTRAITVARstd after positive Ψ_τ | +| #207 | `18e19b801307c741744510965bbff6d3e5cc07a5` | true | agent/psychometric-standardised-initial-latent-variance | feat(psychometric): recover Driver p.16 TRAITVARstd after positive TRAITVAR | +| #206 | `45c55f3af75cd1807f6d00167e4eba9d08dbeeca` | true | agent/psychometric-standardised-initial-tdpred-std | feat(psychometric): recover analog of addedT0TIPREDVAR for first-occasion TD extra | +| #205 | `db60fe4eb47abf1efb793ccef37597689d11d09a` | true | agent/psychometric-standardised-initial-tdpred-std | feat(psychometric): recover Driver p.16 T0VARstd after positive T0VAR | | #204 | `b8b266dd2111c671ce97311d9ae2bf8fa5e597d2` | true | agent/psychometric-standardised-continuous-tdpred-effect | feat(psychometric): recover Driver Table 3 T0TDPREDEFFECTstd after positive T0VAR | | #203 | `ebed677449aad812e4b9152234a52c799db9c0e3` | true | agent/psychometric-asymptotic-tipred-observed-variance | feat(psychometric): recover Driver 2017-era addedTIPREDVARstd after addedTIPREDVAR | | #202 | `a7ce1a0fe9c91bc557fff9f5857a88985f087970` | true | agent/psychometric-asymptotic-tipred-observed-variance | feat(psychometric): recover Driver p.16 TDPREDEFFECTstd after positive variances | @@ -223,7 +231,7 @@ visual workspace, or a supported multi-tenant release. | GAP-009 | Topic association and cluster outputs lack posterior-valid estimation, uncertainty, edge stability, and consensus communities. | `accepted-target` | product vertical | `c45be17` (network primitives only) | [#172](https://github.com/ContextualWisdomLab/TEPP/issues/172) / [PR #71](https://github.com/ContextualWisdomLab/TEPP/pull/71) | `2588f38281b9` | Valid log-ratio coordinates, interval/stability-bearing edges, repeated Leiden consensus, known-truth network/cluster recovery, and reproducible exports. | | GAP-010 | Operators lack coordinated accessible visual analytics and exact-value export workflows. | `accepted-target` | product vertical | `c45be17` (no visual workspace) | [#173](https://github.com/ContextualWisdomLab/TEPP/issues/173) | `—` (Figma work not started) | Real Figma File ID in ADR, Storybook/design tokens, ten PRD views, exact-value tables, accessible interaction/print/PDF states, provenance, and source-consistent exports. | | GAP-011 | TEPP is not yet an operable multi-tenant service or supported release. | `accepted-target` | product vertical | `c45be17` (library contracts only) | [#174](https://github.com/ContextualWisdomLab/TEPP/issues/174) | `—` (issue program; no current implementation PR) | Durable queue/storage, OIDC/RLS/purpose controls, OpenTelemetry/SLOs, load/recovery, migrations, signed release/SBOM/provenance, assurance evidence, and support policy. | -| GAP-012 | The 109-PR queue obscures authority, repeatedly stales exact-head evidence, and fragments product boundaries. | `partial` | release blocker | `c45be17` (protected-main truth) | [#175](https://github.com/ContextualWisdomLab/TEPP/issues/175) | `—` (live queue program) | Every PR classified; unique landing vehicles; compatible slices folded; superseded work closed with provenance; scheduler prioritizes consolidation; queue reaches zero before GA. | +| GAP-012 | The 117-PR queue obscures authority, repeatedly stales exact-head evidence, and fragments product boundaries. | `partial` | release blocker | `c45be17` (protected-main truth) | [#175](https://github.com/ContextualWisdomLab/TEPP/issues/175) | `—` (live queue program) | Every PR classified; unique landing vehicles; compatible slices folded; superseded work closed with provenance; scheduler prioritizes consolidation; queue reaches zero before GA. | | GAP-013 | Evidence-grounded LLM interpretation is routed but not executed and validated as a production interpreter/verifier port. | `partial` | active integration | `c45be17` (routing and refusal contracts only) | [#176](https://github.com/ContextualWisdomLab/TEPP/issues/176), [PR #69](https://github.com/ContextualWisdomLab/TEPP/pull/69), [PR #165](https://github.com/ContextualWisdomLab/TEPP/pull/165) | `8e4a3ca9cc80` / `34083c3f5d66` | Contextual-orchestrator execution, evidence citations, verifier refusals, comparable-budget ablations, provider eligibility/fallback, abstention, live/offline contract tests, and no numerical-authority escalation. | | GAP-014 | README/TRD and some PR descriptions lag protected-main and live queue reality. | `partial` | documentation drift | `c45be17` (documentation is not fully synchronized) | [#175](https://github.com/ContextualWisdomLab/TEPP/issues/175) | `—` (queue-consolidation work) | Reconcile README, TRD, traceability, ADR maturity, CHANGELOG, preferred-merge declarations, and exact protected-main evidence. | | GAP-015 | There was no canonical live product/operator-gap register tied to documentation validation. | `active-PR` | landing vehicle | `c45be17` (no live gap register) | [PR #164](https://github.com/ContextualWisdomLab/TEPP/pull/164) (authority); closed [PR #179](https://github.com/ContextualWisdomLab/TEPP/pull/179) is not a second register | `ff2e645b1785` | Merge this document and its validator/map/quality-test integration after exact-head checks and independent review. Passing Checks on #164 are not implemented-main. | From b52eb347e03cbc3613b57af83e02b6156c8434ef Mon Sep 17 00:00:00 2001 From: Seongho Bae Date: Mon, 24 Aug 2026 14:50:02 +0900 Subject: [PATCH 51/52] docs: refresh live product gap evidence --- docs/product-technical-gap-baseline.md | 53 +++++++++++++------------- pyproject.toml | 3 ++ 2 files changed, 30 insertions(+), 26 deletions(-) create mode 100644 pyproject.toml diff --git a/docs/product-technical-gap-baseline.md b/docs/product-technical-gap-baseline.md index 9ef74b1c..c7112e04 100644 --- a/docs/product-technical-gap-baseline.md +++ b/docs/product-technical-gap-baseline.md @@ -2,7 +2,7 @@ **Status:** Live delivery baseline **Product:** Temporal Event Psychometrics Platform (TEPP) -**Snapshot:** 2026-08-24T04:45:12Z +**Snapshot:** 2026-08-24T05:41:54Z **Protected-main evidence:** `c45be17a9dbce95ef81cee230e9d128abc7160ac` **Workspace version on protected main:** `0.1.0` **Canonical gap-baseline authority:** [PR #164](https://github.com/ContextualWisdomLab/TEPP/pull/164). Duplicate [PR #179](https://github.com/ContextualWisdomLab/TEPP/pull/179) was closed at 2026-08-23T12:39:22Z and is not a second protected-main register. @@ -26,8 +26,8 @@ GitHub state before any customer, release, certification, or valuation claim. |---|---:|---| | Protected-main SHA | `c45be17a9dbce95ef81cee230e9d128abc7160ac` | All as-built claims are bounded to this commit. | | Workspace members | 10 Rust crates | The foundation is modular, but the approved target contains additional semantic, estimator, compute, psychometric, event-intelligence, network, interpretation, artifact, and visual boundaries. | -| Open pull requests | **117** | The queue is itself a release blocker and requires consolidation. | -| Draft pull requests | **47** | Most queued work is not independently review-ready. | +| Open pull requests | **118** | The queue is itself a release blocker and requires consolidation. | +| Draft pull requests | **48** | Most queued work is not independently review-ready. | | Non-draft pull requests | **70** | A non-draft state is not a qualifying review or required-check result. | | Open product issues | **12** | Issue #156 plus the product-completion program #166–#176. | | Duplicate gap-baseline PRs | **#164** (authority); **#179** closed as superseded | Only one live register remains; queued Checks on #164 are not protected-main evidence. | @@ -37,7 +37,7 @@ The pull-request counts come from the live GitHub search at this snapshot. The full exact-head classification is owned by [issue #175](https://github.com/ContextualWisdomLab/TEPP/issues/175); this file keeps the operator-level summary while the exact-head register below records the -current 117-row volatile queue. Passing or queued Checks on an open PR never +current 118-row volatile queue. Passing or queued Checks on an open PR never promote that PR to implemented-main. ## Current open pull-request evidence @@ -49,18 +49,19 @@ Checks, and branch rules immediately before every mutation. | PR | Exact current head | Draft | Base | Title | |---:|---|:---:|---|---| -| #212 | `61e52da817fe5c3fb9169d229cdba18e25d2acd5` | true | agent/psychometric-standardised-time-independent-predictor-variance | feat(psychometric): recover Driver p.16 asymDIFFUSIONstd after positive asymDIFFUSION | -| #211 | `70157c1945a443eea25ad9883b41573bafb7e8b3` | true | agent/psychometric-standardised-manifest-variance | feat(psychometric): recover Driver p.16 TIPREDVARstd after positive TIPREDVAR | +| #213 | `ad25389642aff6300c17cd852e39cc5c9a9c8c09` | true | agent/psychometric-standardised-asymptotic-diffusion | feat(psychometric): recover Driver p.16 discreteCINTstd after positive p | +| #212 | `267cd1828f279a0c2514b45ff2c815b06619849b` | true | agent/psychometric-standardised-time-independent-predictor-variance | feat(psychometric): recover Driver p.16 asymDIFFUSIONstd after positive asymDIFFUSION | +| #211 | `cc281b57af46b0f6af497a33b837e20954d44428` | true | agent/psychometric-standardised-manifest-variance | feat(psychometric): recover Driver p.16 TIPREDVARstd after positive TIPREDVAR | | #210 | `22202c57c0818d3efb28438e95bdde5d0e7143b0` | true | agent/psychometric-standardised-manifest-trait-variance | feat(psychometric): recover Driver p.16 MANIFESTVARstd after positive Θ | -| #209 | `1b82ba1ae213124746e6219dd7c7a8be0bbf0e1e` | true | agent/psychometric-added-initial-tdpred-var | feat(psychometric): recover Eq. 5 of analog addedT0TIPREDVAR extra observed TD variance | -| #208 | `a65d13db4c21337fe991d9e2dfe09f71ce11aa96` | true | agent/psychometric-standardised-trait-variance | feat(psychometric): recover Driver p.16 MANIFESTTRAITVARstd after positive Ψ_τ | -| #207 | `18e19b801307c741744510965bbff6d3e5cc07a5` | true | agent/psychometric-standardised-initial-latent-variance | feat(psychometric): recover Driver p.16 TRAITVARstd after positive TRAITVAR | -| #206 | `45c55f3af75cd1807f6d00167e4eba9d08dbeeca` | true | agent/psychometric-standardised-initial-tdpred-std | feat(psychometric): recover analog of addedT0TIPREDVAR for first-occasion TD extra | +| #209 | `5e3ef38256f42ce09a934eb0f3893e02a40ad6b7` | true | agent/psychometric-added-initial-tdpred-var | feat(psychometric): recover Eq. 5 of analog addedT0TIPREDVAR extra observed TD variance | +| #208 | `adcd68a582725130c046239753290d6cb5f3b8b7` | true | agent/psychometric-standardised-trait-variance | feat(psychometric): recover Driver p.16 MANIFESTTRAITVARstd after positive Ψ_τ | +| #207 | `5dd0c01549c93fa05f57df5658058244c7b675e4` | true | agent/psychometric-standardised-initial-latent-variance | feat(psychometric): recover Driver p.16 TRAITVARstd after positive TRAITVAR | +| #206 | `dcb339f3e2e5ac2dd2dda9b61b5d2c9b811c7636` | true | agent/psychometric-standardised-initial-tdpred-std | feat(psychometric): recover analog of addedT0TIPREDVAR for first-occasion TD extra | | #205 | `db60fe4eb47abf1efb793ccef37597689d11d09a` | true | agent/psychometric-standardised-initial-tdpred-std | feat(psychometric): recover Driver p.16 T0VARstd after positive T0VAR | -| #204 | `b8b266dd2111c671ce97311d9ae2bf8fa5e597d2` | true | agent/psychometric-standardised-continuous-tdpred-effect | feat(psychometric): recover Driver Table 3 T0TDPREDEFFECTstd after positive T0VAR | -| #203 | `ebed677449aad812e4b9152234a52c799db9c0e3` | true | agent/psychometric-asymptotic-tipred-observed-variance | feat(psychometric): recover Driver 2017-era addedTIPREDVARstd after addedTIPREDVAR | -| #202 | `a7ce1a0fe9c91bc557fff9f5857a88985f087970` | true | agent/psychometric-asymptotic-tipred-observed-variance | feat(psychometric): recover Driver p.16 TDPREDEFFECTstd after positive variances | -| #201 | `6afd650667e1011242bb9b0437ce07dc0f6a2431` | false | main | feat(semantic): bind exact spans as units; refuse language as identity | +| #204 | `ac757e5e4f3651cad98fa88d5a44db570eb1c3cf` | true | agent/psychometric-standardised-continuous-tdpred-effect | feat(psychometric): recover Driver Table 3 T0TDPREDEFFECTstd after positive T0VAR | +| #203 | `e5a63d0c7ffac91e9945f6c483152a0bdf267525` | true | agent/psychometric-asymptotic-tipred-observed-variance | feat(psychometric): recover Driver 2017-era addedTIPREDVARstd after addedTIPREDVAR | +| #202 | `2d2d3efe5fd2f742a335e071f22fc1738c51ab27` | true | agent/psychometric-asymptotic-tipred-observed-variance | feat(psychometric): recover Driver p.16 TDPREDEFFECTstd after positive variances | +| #201 | `57be20fc361aa0a812b0ed4e0eaffc70680d7123` | false | main | feat(semantic): bind exact spans as units; refuse language as identity | | #200 | `8f429471e2b249e76c9b722eaf2443518b666c98` | true | agent/psychometric-initial-tipred-observed-variance | feat(psychometric): recover Driver Eq. 5 of addedTIPREDVAR extra observed TI variance | | #199 | `7a476ed3c39e4ba14c9c51f5cbbafc33310979d2` | true | agent/psychometric-added-t0-tipred-var | feat(psychometric): recover Driver Eq. 5 of addedT0TIPREDVAR extra observed TI variance | | #198 | `52a9b4ceb26bdd89e6e49c56fb473d96c68ca352` | true | agent/psychometric-standardised-initial-tipred-effect | feat(psychometric): recover Driver 2017-era addedT0TIPREDVAR after T0TIPREDEFFECT | @@ -79,12 +80,12 @@ Checks, and branch rules immediately before every mutation. | #183 | `c10097be0f6f4ff8dd8e6db21dce8818630fe17f` | true | agent/psychometric-predetermined-lagged-t0var | feat(psychometric): recover Driver first-occasion variance of predetermined T0VAR | | #182 | `7e203976fe4b768fdb4ee6c11126ac7e9ab1c4b8` | true | agent/psychometric-predetermined-later-t0var | feat(psychometric): recover Driver lagged covariance of predetermined T0VAR | | #181 | `96e8d1c21924124d144f6273893eda8ac6b41b2d` | true | agent/psychometric-posterior-esem-input | feat(psychometric): recover Driver later-occasion variance of predetermined T0VAR | -| #180 | `fa169e8e41f13d3bae6aff242db68ebf8281e112` | false | main | fix(transport): hide raw provider exception details | +| #180 | `60e936b43740c238d9a4083b529a3d0a12265c12` | false | main | fix(transport): hide raw provider exception details | | #177 | `580d45206536bf2f7deba327ffafb96a69ba7260` | false | main | fix(workflow): pin scheduler budget hardening | | #165 | `34083c3f5d6637cf1665a29dac45fbf67a74d5dd` | false | main | feat: route hourly product agents through contextual orchestrator | -| #164 | `ff2e645b178588adea1c08730b2b1ec4e50882e5` | false | main | docs: define TEPP product completion and technical gap baseline | -| #157 | `7402745cfb0c27964f286c38a2efd7042c2320ff` | false | main | feat(api): publish completed analysis-run result contract | -| #155 | `02c009c16e6a9c6fee3237224ed6a17cbc4169e1` | false | main | feat(api): admit LineageWeave as a modular analysis-run consumer | +| #164 | `d9d55513f5ddcc1d89139d4ba940fb8261d33b4b` | false | main | docs: define TEPP product completion and technical gap baseline | +| #157 | `340087494b0a9653aede4eeb4bd27049e051222d` | false | main | feat(api): publish completed analysis-run result contract | +| #155 | `2071a9c0090a24cd6583147f69c89020cda006ed` | false | main | feat(api): admit LineageWeave as a modular analysis-run consumer | | #154 | `a7a1bdf96a6759f11aed9284b73319ed94b82fd2` | false | main | ci(rust): refresh branch coverage compiler baseline | | #153 | `e7c871bc2f5e6023002ceeea30217130561842e1` | false | main | feat(membership): refuse location as entity identity or language | | #152 | `70a6c6608e39df757417b2674f0acf27aa09b612` | false | main | feat(method): refuse prompt boilerplate as unique content | @@ -156,7 +157,7 @@ Checks, and branch rules immediately before every mutation. | #65 | `74351f398d67df590019049ab85a7f649495b860` | false | main | feat(event): score first-story detections with FAR and miss rates | | #64 | `c11adce997d4f3e462f50711211af9f051e747b0` | false | main | feat(event): score mention confidence with a known-truth Brier rule | | #63 | `0735ca67abcf5c6c2fd591a52d29067e5f16215a` | false | main | feat(corpus): refuse TF-IDF and BM25 as inferential weights | -| #62 | `7a16e579814ef06517f82fd2b41ebb27568eb960` | false | main | feat(simulation): exclude delayed documents before they are available | +| #62 | `0446878c69fdd63809826d61bb90e2be1b105227` | false | main | feat(simulation): exclude delayed documents before they are available | | #61 | `c7f094cf17b5d0be0aa9270b2d397da4d2db851d` | false | main | feat(temporal): refuse uncertain availability past knowledge cutoff | | #60 | `40ede67614599ba21495fea024d4493d3af9fbb3` | false | main | feat(relation): refuse association and precedence as causation | | #59 | `b47efdc3cfdcec61f69c4219c49519a160bd5549` | false | main | feat(corpus): treat NFC/NFD bodies as split leakage | @@ -167,7 +168,7 @@ Checks, and branch rules immediately before every mutation. | #49 | `dd6cf43e5edfe1d9a7e344cac5352bfb55480e8a` | false | main | feat(psychometric): posterior ESEM input gates with true-parameter RMSE | | #48 | `6110d3660607ba46b312b4d76f048f1bcc4f3bc5` | false | main | feat(topic): logistic-normal ALR coordinates with true-parameter RMSE | -The exact-head register, counts, and protected-main SHA were fetched from the live GitHub REST API at `2026-08-23T21:46:37Z`. Review decisions, required Checks, and mergeability remain volatile; re-read them immediately before every mutation. This snapshot is not merge authorization and does not treat queued or passing Checks as shipped protected-main behavior. +The exact-head register, counts, and protected-main SHA were fetched from the live GitHub REST API at `2026-08-24T05:41:54Z`. Review decisions, required Checks, and mergeability remain volatile; re-read them immediately before every mutation. This snapshot is not merge authorization and does not treat queued or passing Checks as shipped protected-main behavior. ## Authority and derivation @@ -218,25 +219,25 @@ visual workspace, or a supported multi-tenant release. | ID | Operator-visible gap | Maturity | Delivery status | Protected-main authority | Current delivery authority | Current head SHA | Closure evidence | |---|---|---|---|---|---|---|---| -| GAP-001 | Submission can produce a durable accepted receipt, but protected `main` lacks the separate deterministic terminal-result lifecycle. | `active-PR` | landing vehicle | `c45be17` (accepted receipt only) | [#156](https://github.com/ContextualWisdomLab/TEPP/issues/156) / [PR #157](https://github.com/ContextualWisdomLab/TEPP/pull/157) | `7402745cfb0c` | Exact request/result/snapshot/cutoff/model/profile binding, typed terminal failures, deterministic retrieval, current-head checks, and qualifying review. Cutoff-safe execution from closed stacked PR #178 is on this head only and is not implemented-main. | -| GAP-002 | LineageWeave and other modular consumers cannot yet rely on the complete protected-main HTTP evidence/result boundary. | `active-PR` | landing vehicle | `c45be17` (loopback naruon listener from merged PR #107; versioned API contracts) | [#155](https://github.com/ContextualWisdomLab/TEPP/pull/155) | `02c009c16e6a` | Merge the live consumer contract after exact-head review/Checks. Closed stacked PRs #158 and #159 were folded into this head; they are not protected-main evidence. | +| GAP-001 | Submission can produce a durable accepted receipt, but protected `main` lacks the separate deterministic terminal-result lifecycle. | `active-PR` | landing vehicle | `c45be17` (accepted receipt only) | [#156](https://github.com/ContextualWisdomLab/TEPP/issues/156) / [PR #157](https://github.com/ContextualWisdomLab/TEPP/pull/157) | `340087494b0a` | Exact request/result/snapshot/cutoff/model/profile binding, typed terminal failures, deterministic retrieval, current-head checks, and qualifying review. Cutoff-safe execution from closed stacked PR #178 is on this head only and is not implemented-main. | +| GAP-002 | LineageWeave and other modular consumers cannot yet rely on the complete protected-main HTTP evidence/result boundary. | `active-PR` | landing vehicle | `c45be17` (loopback naruon listener from merged PR #107; versioned API contracts) | [#155](https://github.com/ContextualWisdomLab/TEPP/pull/155) | `2071a9c0090a` | Merge the live consumer contract after exact-head review/Checks. Closed stacked PRs #158 and #159 were folded into this head; they are not protected-main evidence. | | GAP-003A | Immutable evidence cannot yet be submitted to a durable validation run that produces operator-usable scientific acceptance evidence. | `accepted-target` | product-completion | `c45be17` (validation metrics are library-level only) | [#166](https://github.com/ContextualWisdomLab/TEPP/issues/166) | `—` (issue program; no current implementation PR) | Compose/CLI/API execution must bind immutable evidence, cutoffs, model configuration, validation metrics, and reproducibility manifests to one idempotent run. | | GAP-003B | Scientific result artifacts cannot yet be persisted, restarted, and recovered as one supported operator workflow. | `accepted-target` | product-completion | `c45be17` (persistence contracts lack E2E recovery) | [#166](https://github.com/ContextualWisdomLab/TEPP/issues/166) | `—` (issue program; no current implementation PR) | Durable storage, migration/rollback, restart/recovery, artifact digest verification, and terminal retrieval must pass against a real Compose deployment. | | GAP-003C | The persistence slice classifies concurrent-write SQLSTATEs, but has no measured hot-partition detection, routing, or mitigation for tenant/result workloads. | `accepted-target` | product-completion | `c45be17` (conflict classification only; no measured partition control) | [#166](https://github.com/ContextualWisdomLab/TEPP/issues/166) | `—` (issue program; no current implementation PR) | A real Compose/PostgreSQL workload identifies hot keys and partition skew, applies bounded tenant/time or result routing without weakening 3NF or temporal authority, and proves conflict rate, latency, recovery, and migration/rollback behavior under load. | | GAP-004 | The central shared-latent temporal/relational topic estimator is absent. | `accepted-target` | product vertical | `c45be17` (no production estimator) | [#167](https://github.com/ContextualWisdomLab/TEPP/issues/167) / [PR #48](https://github.com/ContextualWisdomLab/TEPP/pull/48) | `6110d3660607` | Rust CPU `f64` fitting, sparse bounded parallelism, posterior artifacts, convergence, true-parameter RMSE/bias/coverage, and real candidate-K fitting. | -| GAP-005 | Real multilingual documents are not yet transformed into validated exact-span semantic units and versioned shared concepts. | `accepted-target` | product vertical | `c45be17` (evidence spans exist without full semantic pipeline) | [#168](https://github.com/ContextualWisdomLab/TEPP/issues/168) / [PR #201](https://github.com/ContextualWisdomLab/TEPP/pull/201) | `6afd650667e1` | Span-grounded units on #201 are a first slice only (not concept alignment, not invariance, not implemented-main). Closure still requires Unicode/layout/language-tailored processing, unknown-concept review, multilingual calibration/invariance, image-position evidence, and prompt-injection tests. | +| GAP-005 | Real multilingual documents are not yet transformed into validated exact-span semantic units and versioned shared concepts. | `accepted-target` | product vertical | `c45be17` (evidence spans exist without full semantic pipeline) | [#168](https://github.com/ContextualWisdomLab/TEPP/issues/168) / [PR #201](https://github.com/ContextualWisdomLab/TEPP/pull/201) | `57be20fc361a` | Span-grounded units on #201 are a first slice only (not concept alignment, not invariance, not implemented-main). Closure still requires Unicode/layout/language-tailored processing, unknown-concept review, multilingual calibration/invariance, image-position evidence, and prompt-injection tests. | | GAP-006 | Posterior topic measurements cannot yet be fitted through a complete cross-classified longitudinal ESEM/DSEM engine. | `accepted-target` | product vertical | `c45be17` (temporal and membership primitives only) | [#169](https://github.com/ContextualWisdomLab/TEPP/issues/169) / [PR #119](https://github.com/ContextualWisdomLab/TEPP/pull/119) | `47ab763d49b1` | Plausible-value/joint uncertainty, invariance, irregular event time, within/between separation, multiple membership, true-parameter recovery, and causal-claim refusal. | | GAP-007 | TDT detection/tracking and CHRONOS schema/forecast/temporal reasoning remain isolated bounded gates rather than one calibrated product workflow. | `accepted-target` | product vertical | `c45be17` (event/time primitives only) | [#170](https://github.com/ContextualWisdomLab/TEPP/issues/170) / [PR #70](https://github.com/ContextualWisdomLab/TEPP/pull/70) | `7a1f33aa68c1` | Span-grounded mentions, calibrated TDT metrics, schema/forecast hypothesis states, interval consistency, known-truth recovery, persistence, and exports. | | GAP-008 | GPU support is policy-only; no production estimator kernel has real hardware parity or declared VRAM evidence. | `accepted-target` | product vertical | `c45be17` (VRAM policy only) | [#171](https://github.com/ContextualWisdomLab/TEPP/issues/171) / [PR #51](https://github.com/ContextualWisdomLab/TEPP/pull/51) | `1801501c4d7c` | Real CUDA/portable backend execution, CPU parity, streamed memory, bounded OOM/fallback, hardware profiles, telemetry, and no skipped-support claim. | | GAP-009 | Topic association and cluster outputs lack posterior-valid estimation, uncertainty, edge stability, and consensus communities. | `accepted-target` | product vertical | `c45be17` (network primitives only) | [#172](https://github.com/ContextualWisdomLab/TEPP/issues/172) / [PR #71](https://github.com/ContextualWisdomLab/TEPP/pull/71) | `2588f38281b9` | Valid log-ratio coordinates, interval/stability-bearing edges, repeated Leiden consensus, known-truth network/cluster recovery, and reproducible exports. | | GAP-010 | Operators lack coordinated accessible visual analytics and exact-value export workflows. | `accepted-target` | product vertical | `c45be17` (no visual workspace) | [#173](https://github.com/ContextualWisdomLab/TEPP/issues/173) | `—` (Figma work not started) | Real Figma File ID in ADR, Storybook/design tokens, ten PRD views, exact-value tables, accessible interaction/print/PDF states, provenance, and source-consistent exports. | | GAP-011 | TEPP is not yet an operable multi-tenant service or supported release. | `accepted-target` | product vertical | `c45be17` (library contracts only) | [#174](https://github.com/ContextualWisdomLab/TEPP/issues/174) | `—` (issue program; no current implementation PR) | Durable queue/storage, OIDC/RLS/purpose controls, OpenTelemetry/SLOs, load/recovery, migrations, signed release/SBOM/provenance, assurance evidence, and support policy. | -| GAP-012 | The 117-PR queue obscures authority, repeatedly stales exact-head evidence, and fragments product boundaries. | `partial` | release blocker | `c45be17` (protected-main truth) | [#175](https://github.com/ContextualWisdomLab/TEPP/issues/175) | `—` (live queue program) | Every PR classified; unique landing vehicles; compatible slices folded; superseded work closed with provenance; scheduler prioritizes consolidation; queue reaches zero before GA. | +| GAP-012 | The 118-PR queue obscures authority, repeatedly stales exact-head evidence, and fragments product boundaries. | `partial` | release blocker | `c45be17` (protected-main truth) | [#175](https://github.com/ContextualWisdomLab/TEPP/issues/175) | `—` (live queue program) | Every PR classified; unique landing vehicles; compatible slices folded; superseded work closed with provenance; scheduler prioritizes consolidation; queue reaches zero before GA. | | GAP-013 | Evidence-grounded LLM interpretation is routed but not executed and validated as a production interpreter/verifier port. | `partial` | active integration | `c45be17` (routing and refusal contracts only) | [#176](https://github.com/ContextualWisdomLab/TEPP/issues/176), [PR #69](https://github.com/ContextualWisdomLab/TEPP/pull/69), [PR #165](https://github.com/ContextualWisdomLab/TEPP/pull/165) | `8e4a3ca9cc80` / `34083c3f5d66` | Contextual-orchestrator execution, evidence citations, verifier refusals, comparable-budget ablations, provider eligibility/fallback, abstention, live/offline contract tests, and no numerical-authority escalation. | | GAP-014 | README/TRD and some PR descriptions lag protected-main and live queue reality. | `partial` | documentation drift | `c45be17` (documentation is not fully synchronized) | [#175](https://github.com/ContextualWisdomLab/TEPP/issues/175) | `—` (queue-consolidation work) | Reconcile README, TRD, traceability, ADR maturity, CHANGELOG, preferred-merge declarations, and exact protected-main evidence. | -| GAP-015 | There was no canonical live product/operator-gap register tied to documentation validation. | `active-PR` | landing vehicle | `c45be17` (no live gap register) | [PR #164](https://github.com/ContextualWisdomLab/TEPP/pull/164) (authority); closed [PR #179](https://github.com/ContextualWisdomLab/TEPP/pull/179) is not a second register | `ff2e645b1785` | Merge this document and its validator/map/quality-test integration after exact-head checks and independent review. Passing Checks on #164 are not implemented-main. | +| GAP-015 | There was no canonical live product/operator-gap register tied to documentation validation. | `active-PR` | landing vehicle | `c45be17` (no live gap register) | [PR #164](https://github.com/ContextualWisdomLab/TEPP/pull/164) (authority); closed [PR #179](https://github.com/ContextualWisdomLab/TEPP/pull/179) is not a second register | `d9d55513f5dd` | Merge this document and its validator/map/quality-test integration after exact-head checks and independent review. Passing Checks on #164 are not implemented-main. | | GAP-016 | Hourly PR maintenance used an older central scheduler revision whose per-repository sweep budgets could amplify the queued review workload. | `active-PR` | operability hardening | `c45be17` (caller pin before central budget hardening) | [PR #177](https://github.com/ContextualWisdomLab/TEPP/pull/177) | `580d45206536` | The change pins a verified central revision immutably; closure still requires exact-head hosted Checks, resolved threads, and independent review. | -| GAP-017 | Accepted analysis runs have a terminal DTO, and cutoff-safe execution exists only on the #157 head after stacked PR #178 merged into that branch. | `active-PR` | product vertical | `c45be17` (accepted receipt only) | [#166](https://github.com/ContextualWisdomLab/TEPP/issues/166) / [PR #157](https://github.com/ContextualWisdomLab/TEPP/pull/157) | `7402745cfb0c` | Exact availability cutoff, snapshot binding, multiple-membership preservation, digest integrity, redacted no-eligible failure, and realistic end-to-end tests on protected main. Closed stacked PR #178 is not implemented-main. | +| GAP-017 | Accepted analysis runs have a terminal DTO, and cutoff-safe execution exists only on the #157 head after stacked PR #178 merged into that branch. | `active-PR` | product vertical | `c45be17` (accepted receipt only) | [#166](https://github.com/ContextualWisdomLab/TEPP/issues/166) / [PR #157](https://github.com/ContextualWisdomLab/TEPP/pull/157) | `340087494b0a` | Exact availability cutoff, snapshot binding, multiple-membership preservation, digest integrity, redacted no-eligible failure, and realistic end-to-end tests on protected main. Closed stacked PR #178 is not implemented-main. | ## Product-completion issue register diff --git a/pyproject.toml b/pyproject.toml new file mode 100644 index 00000000..f0e4c8af --- /dev/null +++ b/pyproject.toml @@ -0,0 +1,3 @@ +[tool.pytest.ini_options] +pythonpath = ["."] +testpaths = ["tests"] From b3c027b6e16b187d968353173c0212f0e026bc91 Mon Sep 17 00:00:00 2001 From: Seongho Bae Date: Mon, 24 Aug 2026 15:23:32 +0900 Subject: [PATCH 52/52] docs(changelog): align gap-baseline snapshot entry with committed register The Changed entry still described the predecessor 2026-08-23T21:46:37Z snapshot (109 open / 39 drafts) while the committed baseline document records the refreshed 2026-08-24T05:41:54Z snapshot (118 open / 48 drafts). Align the changelog narrative with the register the validator enforces so the exact-head evidence stays internally consistent. --- CHANGELOG.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 386ca446..5871abd3 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -85,8 +85,8 @@ All notable changes to TEPP are documented here. The format follows Keep a Chang ### Changed -- Refreshed the live gap-baseline inventory to the 2026-08-23T21:46:37Z GitHub - snapshot (109 open PRs / 39 drafts / 12 issues; protected-main +- Refreshed the live gap-baseline inventory to the 2026-08-24T05:41:54Z GitHub + snapshot (118 open PRs / 48 drafts / 12 issues; protected-main `c45be17a9dbce95ef81cee230e9d128abc7160ac`), binding each operator-gap current head SHA to that exact-head register, including #201 `6afd650667e1` (RFC 5646 cited once; first GAP-005 slice, not implemented-main), stacked drafts