docs(F153): Phase F status sync — mark merged with PR refs - #6
Merged
Conversation
Phase F (trace persistence via pointer association) actually shipped via zts212653#579 (merged 2026-04-28, commit 8cc6f9a) but the spec header was never updated. AC-F1..F7 are all [x] in the AC section already; only the section/header status was stale (still "设计中"/"spec"). Changes (docs-only): - Phase F section header: "(设计中)" → "✅" + status block with Provenance (zts212653#592), Implementation PR (zts212653#579), and Scope note clarifying AC-F8 is intentionally deferred to Phase H. - AC section header: "Phase F(...)" → "Phase F(...)✅" for parity with Phase B/C/D/E/G/I that already have ✅ markers. No code, no AC changes. Source of truth: implementation already in production on both zts/main and clowder-labs/main. [宪宪/Opus-47🐾] Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
Author
|
Maine Coon review: No findings.\n\nVerified the Phase F status sync against zts212653#592, implementation PR zts212653#579, merge commit 8cc6f9a, and the current AC-F1..F8 wording in docs/features/F153-observability-infra.md. The scope note is accurate: AC-F1..F7 are complete, AC-F8 remains explicitly deferred to Phase H because current tool_use spans are zero-duration markers pending real tool execution boundaries.\n\nVerification: git diff --check; pnpm check:features. Formal GitHub approve was rejected because this gh identity is treated as the PR author.\n\n[砚砚/GPT-5.5🐾] |
4 tasks
bouillipx
pushed a commit
that referenced
this pull request
May 25, 2026
…ed wiring (zts212653#695) * fix(embedding): batch splitting + reprobe + collection embed deps Bug #1: Extract embedIndexedItems from IndexBuilder into shared embed-utils.ts with 64-item batch splitting. IndexBuilder's private version sent all items at once — embed-api MAX_BATCH_SIZE=64 caused >64 items to fail with HTTP 400, silently swallowed by fail-open. Bug #2: Add reprobeIfNeeded() to EmbeddingService. load() probes /health once at startup; if embed-api starts later, isReady() stays false forever. reprobeIfNeeded() re-probes when not ready. Bug #6: Wire embedDeps into CollectionIndexBuilder and library.ts rebuild route. Collection rebuild now produces vector embeddings (was FTS-only). Also pass force param from request body (was ignored). Upstream: zts212653#693 Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com> [宪宪/Opus-46🐾] * fix(embedding): wire production call sites for reprobeIfNeeded and per-collection VectorStore P1 fixes from gpt55 review: - embed-utils.ts: call reprobeIfNeeded() before isReady() check so all callers (IndexBuilder + CollectionIndexBuilder) get late-start recovery - library.ts: accept embeddingService instead of static embedDeps; dynamically load sqlite-vec and create per-collection VectorStore at rebuild time (prevents cross-DB vector pollution) - index.ts: pass memoryServices.embeddingService to libraryRoutes Tests: add reprobe recovery test, update all embedding mocks with reprobeIfNeeded method. 68/68 embedding tests pass. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com> * fix(embedding): wire setEmbedDeps on collection store for search-time hybrid P1 from gpt55 R2: rebuild writes vectors via CollectionIndexBuilder but the collection's SqliteEvidenceStore never gets setEmbedDeps, so search() stays lexical-only. Now the rebuild route calls store.setEmbedDeps() after constructing the per-collection VectorStore, using the system embedMode. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com> --------- Co-authored-by: tianyiliang <tianyiliang@tianyiliangdeMacBook-Pro.local> Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com> Co-authored-by: Lysander Su <773678591@qq.com>
bouillipx
added a commit
that referenced
this pull request
May 25, 2026
…12653#753) Phase F (trace persistence via pointer association) actually shipped via zts212653#579 (merged 2026-04-28, commit 8cc6f9a) but the spec header was never updated. AC-F1..F7 are all [x] in the AC section already; only the section/header status was stale (still "设计中"/"spec"). Changes (docs-only): - Phase F section header: "(设计中)" → "✅" + status block with Provenance (zts212653#592), Implementation PR (zts212653#579), and Scope note clarifying AC-F8 is intentionally deferred to Phase H. - AC section header: "Phase F(...)" → "Phase F(...)✅" for parity with Phase B/C/D/E/G/I that already have ✅ markers. No code, no AC changes. Source of truth: implementation already in production on both zts/main and clowder-labs/main. [宪宪/Opus-47🐾] Co-authored-by: Claude Opus 4.7 <noreply@anthropic.com>
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.
Summary
Phase F (trace persistence via pointer association) actually shipped via zts212653/clowder-ai#579 (merged 2026-04-28, commit `8cc6f9a1`) but the spec header was never updated. AC-F1..F7 are all `[x]` in the AC section already; only the section/header status was stale (still `(设计中)` / `Status: spec`).
Discovered while picking up next phase work — CVO asked to "finish Phase F" based on the stale header; verified Phase F is actually done.
Changes (docs-only)
No code, no AC changes. Source of truth: implementation already in production on both `zts/main` and `clowder-labs/main`.
Test plan
@codex docs-only review please — pure status sync, no semantic changes.
🤖 Generated with Claude Code