feat: validate project history through TEPP temporal contract (v2.20.0) - #281
Closed
seonghobae wants to merge 70 commits into
Closed
Conversation
seonghobae
force-pushed
the
feat/event-lineage-node-keeps-gnb-focus-v2170
branch
from
August 20, 2026 02:21
4d6494d to
e85b0d2
Compare
seonghobae
force-pushed
the
feat/event-lineage-node-keeps-gnb-focus-v2170
branch
from
August 20, 2026 02:29
e85b0d2 to
7bd992d
Compare
Cascade-merges the current #264 tip into this branch, which was still on much older ADR/prop naming (this branch forked before the 0070-0075 -> 0092-0097 ADR renumbering and before the focusAskAfterRelated -> landOnAsk/focusAskOnLand rename landed upstream). Conflicts were the routine kind: doc prose taking origin's already-correct ADR numbers, and re-applying the established landOnAsk/focusAskOnLand naming over this branch's stale focusAskAfterRelated. isoWeek.ts/isoWeek.test.ts add/add conflict resolved by taking origin's version (validates the Gregorian calendar date before parsing). Also fixes a real bug found while resolving: this branch's own new docs/adr/0072-0075-*.md files were byte-identical duplicates of the already-renumbered 0094-0097 ADRs (content differed only in cross-reference numbers) -- deleted the four stale duplicates. Two pre-existing failures were investigated and left alone (confirmed via git stash against this branch's own pristine tip, not introduced by this merge): a "test(red)" frontend HTTP contract test for TeppProjectHistory and a "test(red)" PostgreSQL authorization test referencing a not-yet-migrated source_company_name column. Both are this branch's own in-progress TDD red state, not something to implement here. 142 frontend tests pass (excluding the known-red TeppProjectHistory suite), 564 python tests pass excluding the two known-red project- history tests, tsc -b passes for everything except the pending TeppProjectHistory component.
seonghobae
force-pushed
the
feat/event-lineage-node-keeps-gnb-focus-v2170
branch
from
August 20, 2026 02:37
7bd992d to
e829ac9
Compare
seonghobae
force-pushed
the
feat/event-lineage-node-keeps-gnb-focus-v2170
branch
from
August 20, 2026 02:45
e829ac9 to
4a5e18c
Compare
seonghobae
force-pushed
the
feat/event-lineage-node-keeps-gnb-focus-v2170
branch
from
August 20, 2026 02:50
4a5e18c to
eb06d6d
Compare
Also finishes the mid-TDD project-history buyer surface: wires ProjectHistoryDisclosure (green for its red test), removes the orphaned TeppProjectHistory component that referenced api.ts exports that never existed, mounts project_history_api's router into the FastAPI app (it was fully built but never included), fixes ambiguous ProjectHistoryTimeline test queries, renumbers the duplicate 0046 migration to 0053, and fills gaps in two hand-maintained migration allowlists (backend/tests/test_api.py, docker/postgres-init/migrate.sh, tests/test_project_history_postgres.py). Co-Authored-By: Claude Sonnet 5 <[email protected]>
Cosmetic conflict only: both branches independently added the same _IMAGE_REGION_EMBEDDING_MIGRATION constant to backend/tests/test_api.py after the earlier restack; kept the single-line form used elsewhere in the file. Co-Authored-By: Claude Sonnet 5 <[email protected]>
…surface-v2180' into HEAD
…thub.com/ContextualWisdomLab/LineageWeave into HEAD # Conflicts: # AGENTS.md # ARCHITECTURE.md # CHANGELOG.md # CLAUDE.md # frontend/package.json # frontend/src/App.test.tsx # frontend/src/App.tsx # pyproject.toml # uv.lock
seonghobae
changed the base branch from
feat/event-lineage-node-keeps-gnb-focus-v2170
to
feat/gnb-event-lineage-focus-keyman-v2190
August 20, 2026 06:24
seonghobae
added a commit
that referenced
this pull request
Aug 20, 2026
uv.lock regenerated via `uv lock` rather than hand-merged (a generated file, not meaningful to diff line-by-line). Fixes the same stale "embedded image at character offset" alt-text assertion in App.test.tsx already corrected in PostBody.tsx upstream -- same fix already applied on #258/#281, hadn't reached this branch yet. Co-Authored-By: Claude Sonnet 5 <[email protected]>
seonghobae
changed the base branch from
feat/gnb-event-lineage-focus-keyman-v2190
to
feat/global-ask-public-claim-verification-v2200
August 20, 2026 06:58
Contributor
Author
|
Superseded by the separated project-history stack. This branch is no longer the bounded |
This was referenced Aug 20, 2026
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Refs #279
Purpose after project-history convergence
This PR is the optional LineageWeave ↔ TEPP temporal validation/enrichment adapter for the normalized project-history authority in #283. It is not a second project-event classifier, persistence model, authorization gate, or Buyer timeline authority.
The canonical project identity, event facts, event relations, responsibility intervals, evidence references, visibility result, truncation state, and handover gaps come from #283. This adapter may send only that already-authorized, bounded contract to TEPP and may return coded temporal validation/association metadata without replacing the source facts.
Required contract
Authority boundary
temporal_association_onlyor another controlled non-causal code.Stack
#258 → #260 → #261 → #262 → #263 → #264 → #283 → this PRThe branch must be rebuilt or restacked on the exact final #283 head. Any existing independent timeline, project aggregation, event classifier, or responsibility-gap implementation in this branch must be removed in favor of the shared #283 contract.
RED→GREEN and Draft exit
Do not self-approve, force-merge, or treat queued/pending/absent checks as success.