From 8e56a374a497f6f7408a7d3eaf5529233466362f Mon Sep 17 00:00:00 2001 From: Seongho Bae Date: Fri, 21 Aug 2026 08:40:44 +0900 Subject: [PATCH 1/6] docs: record current exact-head gap checkpoint --- docs/product-technical-gap-baseline.md | 44 ++++++++++++++++++++++++++ 1 file changed, 44 insertions(+) diff --git a/docs/product-technical-gap-baseline.md b/docs/product-technical-gap-baseline.md index 497e2a034..ae4517f84 100644 --- a/docs/product-technical-gap-baseline.md +++ b/docs/product-technical-gap-baseline.md @@ -578,3 +578,47 @@ runtime; they do not prove protected-main equivalence, complete-corpus correctness, authorization coverage, or release readiness. Re-run the same aggregate projection against the authorized deployment before treating it as buyer-facing evidence. + +## Current continuation checkpoint: 2026-08-21 08:39 KST + +This section supersedes the older PR snapshot above for the PRs explicitly +re-audited in the current continuation loop. GitHub state is authoritative; +local tests below are branch-local evidence and are not merge evidence. + +| PR | Exact head | Base | Current gate | Current evidence | +|---|---|---|---|---| +| #270 authenticated MCP Global Ask | `1881a3cc402d99d8494bd9b936be9099b43ca3e7` | `feat/event-lineage-node-keeps-gnb-focus-v2170` | BLOCKED; review decision empty | Local MCP/auth/Global Ask regression set: 45 passed; import-order correction pushed | +| #325 product/technical baseline | `d80d691cd8ed780a8fb0072199304f595b1ea75e` | `fix/validate-partial-image-regions` | BLOCKED; REVIEW_REQUIRED | This document, ADR 0102, and chunking changes are proposed, not on protected main | +| #328 member locale bootstrap | `d0e159872147c7d7bd8bbf042c5552041eb44a4a` | `fix/oidc-deep-link-locale` | BLOCKED; REVIEW_REQUIRED | Local Frontend locale/deep-link set: 82 passed; TypeScript and lint passed | +| #329 buyer-safe image evidence | `b5b08071ab869854da696566343e97feb04add20` | `fix/validate-partial-image-regions` | BLOCKED; REVIEW_REQUIRED | Local image/normalization/persistence set: 54 backend tests and 13 PostBody tests passed | +| #330 lineage DAG interaction coverage | `e14dd956ad2493c42a16076a2adc095e0df5733b` | `codex/normalize-source-indent-semantics` | BLOCKED; REVIEW_REQUIRED | Frontend regression-only PR; hosted gate and independent review remain required | +| #331 OIDC post deep-link regression | `72e842bad482b73974d8ab4f09d2385582c300d6` | `fix/member-locale-bootstrap-race` | BLOCKED; REVIEW_REQUIRED | Deep-link stack remains proposed and must be checked at its exact head | +| #333 Keyverse-authenticated MCP API keys | `236b83b5af9632f83457dcc822b792dc239bcc7a` | `feat/analysis-run-name-evidence-lineage` | BLOCKED; review decision empty | Remote agent added malformed-revoke coverage; hosted Checks restarted | +| #334 MCP API-key authentication | `89f19eb1378ac785b80ea344d6f4e6e2bbe4a312` | `agent/authenticated-mcp-global-ask` | BLOCKED; REVIEW_REQUIRED | Depends on #333 migration 0051; local full backend suite: 825 passed, 16 skipped | + +### Current closure order + +1. Revalidate each exact head after any remote-agent push; never use the older + hash as merge evidence. +2. Merge #258 and its dependent buyer-surface stack only through the repository's + required independent review and terminal Checks. Do not treat local evidence, + a skipped review, or a queued workflow as approval. +3. Deploy #333's normalized `mcp_api_key` resource before enabling the API-key + authentication path in #334. OIDC remains the fallback identity path when + the key table is not installed. +4. After the relevant stack reaches protected main, run the real browser journey: + login screen first, locale preference restoration, GNB navigation, source + post popup, semantic image evidence, and MCP authorization. Record only + aggregate non-identifying evidence here. + +### Newly explicit product gaps + +- The MCP key lifecycle and MCP bearer verifier are separate PRs and are not yet + jointly deployable on protected main. +- The locale and OIDC deep-link fixes are separate dependent PRs; local tests do + not prove that a logged-in browser session preserves `?post=` on the deployed + stack. +- Buyer-safe image captions are covered locally, but region-level visual evidence + and buyer rendering still require post-merge browser evidence. +- The older aggregate runtime table remains historical. It must not be cited as + proof that the current PR heads or protected main contain these changes. From d65f3bbb9809454254676e329601301048d28a42 Mon Sep 17 00:00:00 2001 From: Seongho Bae Date: Fri, 21 Aug 2026 08:43:54 +0900 Subject: [PATCH 2/6] docs: retain current buyer stack roots --- docs/product-technical-gap-baseline.md | 14 ++++++++++++++ 1 file changed, 14 insertions(+) diff --git a/docs/product-technical-gap-baseline.md b/docs/product-technical-gap-baseline.md index ae4517f84..f7c469b7a 100644 --- a/docs/product-technical-gap-baseline.md +++ b/docs/product-technical-gap-baseline.md @@ -622,3 +622,17 @@ local tests below are branch-local evidence and are not merge evidence. and buyer rendering still require post-merge browser evidence. - The older aggregate runtime table remains historical. It must not be cited as proof that the current PR heads or protected main contain these changes. + +### Queue roots carried forward from the prior checkpoint + +The current root entries from the preceding queue audit were revalidated before +this update and remain proposed, not shipped: + +| PR | Exact head | Current gate | +|---|---|---| +| #258 buyer evidence board and ontology surface | `41036e2cd8095c5e7b9c333fd72c542cb676ef5e` | BLOCKED; REVIEW_REQUIRED | +| #309 persisted buyer image-region overlays | `d8a938cd6e7e72b8bc0a7b11149afcfcc7820270` | BLOCKED; REVIEW_REQUIRED | + +This continuation checkpoint supersedes the earlier #332 documentation-only +snapshot by retaining its root-head evidence and adding the later MCP, locale, +image-caption, and DAG gate state above. From 858f7e4913824b9899710bc5b1e51bc49b43ce52 Mon Sep 17 00:00:00 2001 From: Seongho Bae Date: Fri, 21 Aug 2026 09:09:35 +0900 Subject: [PATCH 3/6] docs: record current exact-head review gates --- docs/product-technical-gap-baseline.md | 29 ++++++++++++++++++++++++++ 1 file changed, 29 insertions(+) diff --git a/docs/product-technical-gap-baseline.md b/docs/product-technical-gap-baseline.md index f7c469b7a..2d9895192 100644 --- a/docs/product-technical-gap-baseline.md +++ b/docs/product-technical-gap-baseline.md @@ -636,3 +636,32 @@ this update and remain proposed, not shipped: This continuation checkpoint supersedes the earlier #332 documentation-only snapshot by retaining its root-head evidence and adding the later MCP, locale, image-caption, and DAG gate state above. + +## Current exact-head continuation: 2026-08-21 09:09 KST + +The review/fix loop re-fetched the independent roots and the status-clock +dependent stack after concurrent branch updates. The following are the only +current hashes used as merge evidence in this loop: + +| PR | Exact head | Base | Local evidence | Hosted gate | +|---|---|---|---|---| +| #258 buyer evidence board and ontology surface | `41036e2cd8095c5e7b9c333fd72c542cb676ef5e` | `main@2feba74b75863810869cde680b19032a93fba413` | Python `718 passed, 16 skipped`; cleanup branch coverage `100%`; focused suite `18 passed` | required workflows queued; no formal approval; Devin review failure remains unresolved as a review gate | +| #323 TEPP request and search evidence boundaries | `3b57e1cad490b47496d0c25553d28a0c1e3e2ca3` | `main@2feba74b75863810869cde680b19032a93fba413` | Python `570 passed, 16 skipped, 4 warnings`; boolean contract-version regression added | Tests, Semgrep, and Security Scan queued; Devin is a comment-only review, not formal approval | +| #327 Searxng corroboration token precision | `e6ef7cc53bcfef1e3dd61705b9ab243251860730` | `main@2feba74b75863810869cde680b19032a93fba413` | Python `573 passed, 16 skipped`; focused relation suite `25 passed`; isolated line/branch coverage `100%` | required workflows queued; comment-only reviews; no formal approval | +| #326 Python-ahead status write clock | `f9c53e7c18a696260d60bfcdd7c0af5e07c1dda6` | `#327@e6ef7cc53bcfef1e3dd61705b9ab243251860730` | stacked Python `578 passed, 16 skipped, 4 warnings`; clock boundary tests `5 passed`; additive `0030` fixture path exercised | required workflows queued after the new exact head; no formal approval | + +Claude's #323 review found no confirmed correctness, security, data-loss, or +authorization defect. The proposed SHA-format concern was checked against +TEPP's current published request schema and dismissed because `snapshot_id` +is specified as non-blank text, not as a SHA. The confirmed boolean type-test +gap was closed in #323. Claude's #326 review found no high-severity defect; +the valid CodeRabbit upgrade-path finding was closed by running migration +`0030` in the PostgreSQL fixture and testing 59 seconds, exactly one minute, +and two minutes. + +These results are branch-local observations and hosted queue/review state; +they are not protected-main or release evidence. The next merge candidate is +#258 only after its exact current head has independent formal approval, +resolved review threads, and terminal required Checks. #327 is an independent +root that must be merged before #326; #323 can proceed independently. A queued +workflow is active work, not a blocker or a pass. From df990d0008915e8c4629de7bee744223e9687e94 Mon Sep 17 00:00:00 2001 From: Seongho Bae Date: Fri, 21 Aug 2026 09:22:07 +0900 Subject: [PATCH 4/6] docs: refresh current queue roots --- docs/product-technical-gap-baseline.md | 17 +++++++++++++++++ 1 file changed, 17 insertions(+) diff --git a/docs/product-technical-gap-baseline.md b/docs/product-technical-gap-baseline.md index 2d9895192..6adb1e70c 100644 --- a/docs/product-technical-gap-baseline.md +++ b/docs/product-technical-gap-baseline.md @@ -665,3 +665,20 @@ they are not protected-main or release evidence. The next merge candidate is resolved review threads, and terminal required Checks. #327 is an independent root that must be merged before #326; #323 can proceed independently. A queued workflow is active work, not a blocker or a pass. + +## Current queue refresh: 2026-08-21 09:21 KST + +The live queue now contains 45 open pull requests. The following branches were +opened or advanced after the preceding checkpoint and therefore must be +included in the next exact-head audit; this document does not treat any of +them as merge-ready: + +| PR | Exact head | Base | Gate at refresh | +|---|---|---|---| +| #335 current exact-head gap checkpoint | `858f7e4913824b9899710bc5b1e51bc49b43ce52` | `docs/current-gap-audit@d80d691cd8ed780a8fb0072199304f595b1ea75e` | BLOCKED; REVIEW_REQUIRED; required Checks queued | +| #337 Naruon calendar event projection contract | `974cf8b4a5618a43b17584ab762af6630ee4acd0` | `feat/calendar-open-focus-event-lineage-v2140@221cc94db3780e82114ef553729c7a00da554532` | BLOCKED; REVIEW_REQUIRED; required Checks queued | +| #339 TEPP canonical Project history recovery | `26b83f06899a2ad416be746d9a6fb13042bb7659` | `feat/project-history-timeline-v2184-r3@cfc125cb65f26ed7e834976dbff12b6b9790b59c` | BLOCKED; REVIEW_REQUIRED; required Checks queued | + +The queue count and gate fields are a point-in-time GitHub observation. Before +reviewing or merging any row, fetch its branch again, compare the exact head +with the review and all required Checks, and confirm the full dependency stack. From ef3e25f9d8077faeb69a7c33a3193396692795e2 Mon Sep 17 00:00:00 2001 From: Seongho Bae Date: Fri, 21 Aug 2026 09:24:08 +0900 Subject: [PATCH 5/6] docs: record buyer-stack restack --- docs/product-technical-gap-baseline.md | 13 +++++++++++++ 1 file changed, 13 insertions(+) diff --git a/docs/product-technical-gap-baseline.md b/docs/product-technical-gap-baseline.md index 2d9895192..0c97ccd13 100644 --- a/docs/product-technical-gap-baseline.md +++ b/docs/product-technical-gap-baseline.md @@ -665,3 +665,16 @@ they are not protected-main or release evidence. The next merge candidate is resolved review threads, and terminal required Checks. #327 is an independent root that must be merged before #326; #323 can proceed independently. A queued workflow is active work, not a blocker or a pass. + +## Restack continuation: 2026-08-21 09:23 KST + +PR #258 advanced normally after the ADR 0083 pin correction. Its current head +is now `4bb234476ca26aacdd645f3c495a161a2c441790`. The semantic-unit child +PR #302 was merged normally with that current base and now has exact head +`8e1bd783fa2cb3e565983fc3d7b9092d394ff814`; its local validation is Python +`740 passed, 16 skipped, 4 warnings`, frontend `137 passed`, lint/build/ +Storybook passed, and chunking coverage remains 100%. + +The #302 restack carries #258's reviewed immutable orchestrator pin and ADR +regression check. Hosted Checks and independent formal approval remain +required for both exact heads; no merge or protected-main claim is made. From e9e98e0f6652c27d7c86ff08f6d347f831462738 Mon Sep 17 00:00:00 2001 From: Seongho Bae Date: Fri, 21 Aug 2026 09:40:34 +0900 Subject: [PATCH 6/6] docs: record MCP key boundary closure --- docs/product-technical-gap-baseline.md | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) diff --git a/docs/product-technical-gap-baseline.md b/docs/product-technical-gap-baseline.md index e8fd2755f..15b41d361 100644 --- a/docs/product-technical-gap-baseline.md +++ b/docs/product-technical-gap-baseline.md @@ -691,3 +691,19 @@ them as merge-ready: The queue count and gate fields are a point-in-time GitHub observation. Before reviewing or merging any row, fetch its branch again, compare the exact head with the review and all required Checks, and confirm the full dependency stack. + +## Security-boundary continuation: 2026-08-21 09:40 KST + +PR #333's MCP key lifecycle was re-reviewed with Claude and its confirmed +medium metadata leak was fixed. Exact current head is +`065d14f5022f052d8b096f4388a62cb227d12d9e`, based on #258's current +`4bb234476ca26aacdd645f3c495a161a2c441790`. The key table and application +now persist/display only the constant `lw_mcp_` family prefix, while the +random secret remains one-time creation output; the buyer's date-only expiry +is converted to the local calendar day's end. + +Post-fix validation is Python `725 passed, 16 skipped, 4 warnings`, frontend +`132 passed`, MCP panel `3 passed`, lint/build/Storybook passed, and diff check +passed. These are branch-local results. #333 remains gated until exact-head +hosted Checks and independent formal approval are terminal-successful; #334 +must not enable API-key authentication before migration `0051` is deployed.