feat: add documentation-aware, opt-in embedding refresh#653
Merged
Conversation
code-review-graph reviewOverall risk: 0.80 (HIGH) — 69 changed function(s)/class(es), 0 affected flow(s), 38 test gap(s) Risk-scored changes
Test gaps
Token savings: this graph-backed report used ~168,683 fewer tokens (~94%) than reading every changed file in full (estimated, chars/4 approximation). Powered by code-review-graph — local-first analysis; no code leaves the CI runner. |
tirth8205
force-pushed
the
codex/reconcile-embeddings
branch
from
July 17, 2026 17:28
cff9c84 to
c2063f2
Compare
Extract bounded language-aware documentation summaries, include them in semantic text, purge orphan vectors, and expose provider/model-scoped refresh as an explicit default-off operation. Co-authored-by: Stefan Hudici <shudici@gmail.com>
tirth8205
force-pushed
the
codex/reconcile-embeddings
branch
from
July 17, 2026 17:38
c2063f2 to
9bccae6
Compare
This was referenced Jul 17, 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.
Summary
This is the current-main replacement for the compatible parts of #602 and #599. It preserves Stefan Hudici's authorship with a
Co-authored-bytrailer.Adopted from #602
extraJSON field (no schema migration)The port additionally fixes Python escape/concatenation semantics with
ast.literal_eval, strips documentation markup, handles exported/template-wrapped declarations and Go directives, enforces a 400-character bound both at parse and provider-input time, and verifies full-build plus incremental persistence/removal.Adopted and safety-adjusted from #599
The source branch's default refresh wiring was intentionally not carried over. Build, update, postprocess, and watch remain default-off. Refresh occurs only when that specific invocation supplies both an exact provider and model. A never-embedded graph returns before provider resolution; an existing index must match the resolved provider/model/endpoint exactly; mixed, legacy, or mismatched identities are refused; missing credentials, offline model availability, and transport errors become build warnings. Manual
embedalso purges orphans, even when the local provider is unavailable.Verification
Exact base:
4f9f035b49515fa79e4c084aafb10828d607ba7bgit diff --check: cleanThe native macOS daemon/watcher test file remains excluded locally because the unchanged baseline crashes in the platform FSEvents layer; GitHub CI will run the repository's normal cross-platform matrix.