mirror of
https://github.com/abhigyanpatwari/GitNexus.git
synced 2026-09-15 23:32:49 +00:00
Applied from a ce-code-review pass over this branch (run 20260911-053832-b49f88d6). - `embeddings sync` now gates EVERY checkpoint kind on embedding identity. `unverified-count` was exempted, but `decideEmbeddingResume` abandons that kind before it compares identity, so the exemption was the only thing keeping a foreign model from filling holes beside the old model's vectors — two vector spaces in one CodeEmbedding table, reported healthy. The test that asserted this run succeeds now asserts the refusal. - `embeddings sync` refuses when the index's recorded vector width differs from this run's. The column is FLOAT[N] fixed at build time and the pipeline deletes each batch's stale rows immediately before inserting, so a width change deleted rows it could not re-insert. `analyze` already forces a rebuild on the same mismatch; only a rebuild can retype the column. - `GITNEXUS_EMBEDDING_RETRY_TIMEOUTS` parses with the repo's truthy convention (`1`/`true`/`yes`). The integer parser threw on `true`, so the conventional spelling hard-failed every embedding call rather than enabling the flag or leaving it off. README names the accepted spellings. - One `persistMeta` write path replaces three inlined metadata read-modify-writes; #2790 traced two production drifts to hand-copied writers of these exact fields. - Tests: the pipeline mock now invokes `onCheckpointWindowStart`/`onCheckpoint`, so the resume contract actually executes under test. Added coverage for the incomplete-index refusal, the partial-checkpoint branch, and the body-read timeout retry site that the existing opt-in test never reached. Verified: tsc --noEmit clean; 99 tests pass across the three affected suites; prettier clean. Co-authored-by: Gergo Magyar <gergomagyar0@gmail.com> Co-authored-by: Claude Opus 5 (1M context) <noreply@anthropic.com> |
||
|---|---|---|
| .. | ||
| i18n | ||
| ai-context.ts | ||
| analyze-config.ts | ||
| analyze-options.ts | ||
| analyze-watch.ts | ||
| analyze.ts | ||
| augment.ts | ||
| auto-sync.ts | ||
| clean.ts | ||
| cli-message.ts | ||
| command-banner.ts | ||
| detect-changes-format.ts | ||
| doctor.ts | ||
| editor-targets.ts | ||
| embedding-dims.ts | ||
| embeddings-sync.ts | ||
| embeddings.ts | ||
| eval-server.ts | ||
| format-elapsed.ts | ||
| format-symbol.ts | ||
| generated-skill.ts | ||
| group-status-format.ts | ||
| group.ts | ||
| help-i18n.ts | ||
| index-repo.ts | ||
| index.ts | ||
| lazy-action.ts | ||
| list.ts | ||
| mcp.ts | ||
| optional-grammars.ts | ||
| publish.ts | ||
| remove.ts | ||
| resolve-invocation.ts | ||
| serve.ts | ||
| setup.ts | ||
| skill-gen.ts | ||
| standard-skills.ts | ||
| status.ts | ||
| tool.ts | ||
| uninstall.ts | ||
| update-notice.ts | ||
| update.ts | ||
| watch-queue.ts | ||
| watch.ts | ||
| wiki.ts | ||