mustflow 2.112.13 → 2.113.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/cli/commands/skill.js +13 -0
- package/dist/cli/lib/external-skill-import.js +194 -4
- package/package.json +1 -1
- package/schemas/skill-import-report.schema.json +75 -0
- package/templates/default/i18n.toml +6 -6
- package/templates/default/locales/en/.mustflow/skills/INDEX.md +16 -13
- package/templates/default/locales/en/.mustflow/skills/llm-token-cost-control-review/SKILL.md +62 -24
- package/templates/default/locales/en/.mustflow/skills/rag-pipeline-triage/SKILL.md +77 -23
- package/templates/default/locales/en/.mustflow/skills/search-index-integrity-review/SKILL.md +64 -14
- package/templates/default/locales/en/.mustflow/skills/security-privacy-review/SKILL.md +4 -1
- package/templates/default/locales/en/.mustflow/skills/vector-search-integrity-review/SKILL.md +59 -32
- package/templates/default/manifest.toml +1 -1
package/templates/default/locales/en/.mustflow/skills/vector-search-integrity-review/SKILL.md
CHANGED
|
@@ -2,11 +2,11 @@
|
|
|
2
2
|
mustflow_doc: skill.vector-search-integrity-review
|
|
3
3
|
locale: en
|
|
4
4
|
canonical: true
|
|
5
|
-
revision:
|
|
5
|
+
revision: 4
|
|
6
6
|
lifecycle: mustflow-owned
|
|
7
7
|
authority: procedure
|
|
8
8
|
name: vector-search-integrity-review
|
|
9
|
-
description: Apply this skill when vector search, semantic search, RAG retrieval mechanics, embeddings, vector databases, ANN indexes, exact versus approximate search, filters, metadata payloads, namespaces, tenants, named vectors, hybrid search, reranking, recall, latency, quantization, HNSW, IVF, pgvector, Qdrant, Milvus, Weaviate, OpenSearch kNN, or retrieval golden-set behavior is created, changed, reviewed, or failing. Use rag-pipeline-triage first when a RAG failure is not yet localized to retrieval versus parsing, context assembly, prompt, generation, citation, or answerability.
|
|
9
|
+
description: Apply this skill when vector search, semantic search, RAG retrieval mechanics, embeddings, vector databases, ANN indexes, exact versus approximate search, filters, metadata payloads, chunk text variants, namespaces, tenants, named vectors, hybrid search, reranking, recall, latency, quantization, HNSW, IVF, pgvector, Qdrant, Milvus, Weaviate, OpenSearch kNN, or retrieval golden-set behavior is created, changed, reviewed, or failing. Use rag-pipeline-triage first when a RAG failure is not yet localized to retrieval versus parsing, context assembly, prompt, generation, citation, or answerability.
|
|
10
10
|
metadata:
|
|
11
11
|
mustflow_schema: "1"
|
|
12
12
|
mustflow_kind: procedure
|
|
@@ -68,13 +68,16 @@ filters, reranking, and latency evidence all agree for the same query contract.
|
|
|
68
68
|
- Retrieval symptom classification: ingestion missing, write not visible, wrong results, empty
|
|
69
69
|
results, low recall, tenant leak, duplicate chunks, stale deletes, slow search, reranker drift, or
|
|
70
70
|
generated answer drift.
|
|
71
|
-
- Query contract ledger: query text or safe fixture id, embedding model and revision,
|
|
72
|
-
version,
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
71
|
+
- Query contract ledger: query text or safe fixture id, query family, embedding model and revision,
|
|
72
|
+
preprocessing version, chunker version, contextual header policy, synthetic question policy,
|
|
73
|
+
vector dimension, vector norm, metric, collection, namespace, tenant, named vector, metadata
|
|
74
|
+
payload fields and types, ACL prefilter, filters, `top_k`, candidate count, consistency level,
|
|
75
|
+
ANN parameters, hybrid weights, MMR or fusion settings, and reranker settings.
|
|
76
|
+
- Ingestion ledger: source id, stable doc id, chunk id, parent document genealogy, deterministic
|
|
77
|
+
vector id, original text hash, index text, prompt text, embedding text, contextual header, title,
|
|
78
|
+
heading path, document type, status, authority, aliases, exact keywords, synthetic questions,
|
|
79
|
+
embedding version, content hash, embedding hash, payload shape, write count, unique id count,
|
|
80
|
+
direct lookup count, indexed count, deleted or tombstoned count, and visibility lag.
|
|
78
81
|
- Quality ledger: golden queries, expected ids, acceptable alternatives, exact-search result,
|
|
79
82
|
ANN result, recall at k, MRR, empty rate, duplicate rate, filtered result count, and before/after
|
|
80
83
|
comparison.
|
|
@@ -95,10 +98,12 @@ filters, reranking, and latency evidence all agree for the same query contract.
|
|
|
95
98
|
<!-- mustflow-section: allowed-edits -->
|
|
96
99
|
## Allowed Edits
|
|
97
100
|
|
|
98
|
-
- Add or tighten embedding versioning, preprocessing versioning, vector validation,
|
|
99
|
-
IDs,
|
|
100
|
-
|
|
101
|
-
|
|
101
|
+
- Add or tighten embedding versioning, preprocessing and chunker versioning, vector validation,
|
|
102
|
+
deterministic IDs, contextual retrieval headers, synthetic question fields,
|
|
103
|
+
original/index/prompt/embedding text separation, namespace or tenant selection, metadata payload
|
|
104
|
+
field typing, metadata indexes, ACL prefilter construction, exact-search checks, ANN parameters,
|
|
105
|
+
hybrid score ledgers, RRF or MMR settings, reranker candidate counts, golden-set tests, metrics,
|
|
106
|
+
docs, fixtures, and retrieval contract tests.
|
|
102
107
|
- Add focused synthetic fixtures that encode expected retrieval behavior, filtered retrieval,
|
|
103
108
|
tenant separation, duplicate handling, and exact-versus-ANN comparison.
|
|
104
109
|
- Do not change embedding models, rebuild large indexes, tune ANN parameters, disable filters, widen
|
|
@@ -116,38 +121,56 @@ filters, reranking, and latency evidence all agree for the same query contract.
|
|
|
116
121
|
all-zero vectors, extreme norms, and model or preprocessing version mismatches.
|
|
117
122
|
4. Keep embedding model identity exact. Model name alone is not enough; include revision, tokenizer,
|
|
118
123
|
pooling, prefix policy, max length, HTML cleanup, chunking, and normalization.
|
|
119
|
-
5.
|
|
124
|
+
5. Separate original, index, prompt, and embedding text. Original text is the citation source,
|
|
125
|
+
index text may include titles, aliases, contextual retrieval summaries, and generated questions,
|
|
126
|
+
prompt text is the compact model payload, and embedding text is the vector input. Do not collapse
|
|
127
|
+
these fields unless the product intentionally accepts that tradeoff.
|
|
128
|
+
6. Check chunk graph and recursive retrieval shape. Source ids, parent document ids, parent chunk
|
|
129
|
+
ids, previous and next chunk ids, section paths, summary layers, and contextual retrieval
|
|
130
|
+
headers should be available when small chunks need larger context for answer generation. Stable
|
|
131
|
+
ids must survive renames, storage moves, and reindex jobs so citations, deletes, feedback logs,
|
|
132
|
+
and eval sets keep the same lineage.
|
|
133
|
+
7. Check chunk size and overlap as quality levers, not defaults. Tiny chunks that lose the subject,
|
|
134
|
+
huge chunks that average unrelated meanings, and large overlap that fills top-k with duplicates
|
|
135
|
+
each need separate recall and diversity evidence.
|
|
136
|
+
8. Validate contextual headers and synthetic questions. Headers should disambiguate product,
|
|
137
|
+
version, document status, authority, section, and entity; synthetic questions should reflect real
|
|
138
|
+
user phrasing without being cited as original source. Keep original, enriched retrieval text, and
|
|
139
|
+
LLM-visible metadata distinct so search bait does not become generated evidence.
|
|
140
|
+
9. Compare exact search with approximate search on the same query and filter. If exact search is
|
|
120
141
|
wrong, stop tuning ANN and inspect embeddings, preprocessing, metric, payload, and expectations.
|
|
121
|
-
|
|
142
|
+
10. Compare filter-free search, filter-only count, filtered exact search, and filtered ANN search.
|
|
122
143
|
Empty filtered results often mean filter construction, metadata typing, payload indexing, or
|
|
123
144
|
post-filter candidate loss rather than bad embeddings.
|
|
124
|
-
|
|
145
|
+
11. Confirm collection, namespace, tenant, alias, and named vector. Directly inspect the problem id
|
|
125
146
|
or safe synthetic id in the same search surface the app uses.
|
|
126
|
-
|
|
147
|
+
12. Check deterministic upsert ids. Source id, chunk index, tenant, and embedding version should not
|
|
127
148
|
accidentally duplicate chunks or overwrite all chunks with one id.
|
|
128
|
-
|
|
149
|
+
13. Separate write success from search visibility. Check direct lookup, exact search, ANN search,
|
|
129
150
|
indexed count, consistency, segment state, and visibility lag.
|
|
130
|
-
|
|
151
|
+
14. Check deletes and updates. Deletion marks, tombstones, compaction, vacuum, stale segments, and
|
|
131
152
|
old chunks can keep appearing after API success.
|
|
132
|
-
|
|
153
|
+
15. Review metric and normalization. Cosine, dot product, and L2 are different contracts unless
|
|
133
154
|
the vectors are intentionally normalized and the index operator matches.
|
|
134
|
-
|
|
155
|
+
16. Tune ANN only after the exact and filter contracts are correct. Evaluate recall and p95 latency
|
|
135
156
|
across parameter sweeps instead of changing one value blindly.
|
|
136
|
-
|
|
157
|
+
17. Treat build-time index parameters as recall ceilings. If search-time parameters cannot recover
|
|
137
158
|
recall, the index may need rebuild policy, not a larger query knob.
|
|
138
|
-
|
|
159
|
+
18. Review quantization and rescoring. Compare full-precision exact results with compressed-index
|
|
139
160
|
candidates and confirm enough candidates reach full-precision reranking.
|
|
140
|
-
|
|
141
|
-
and final score. Do not add incompatible raw scores directly
|
|
142
|
-
|
|
161
|
+
19. For hybrid search, store dense score, sparse or keyword score, normalized score, fusion method,
|
|
162
|
+
RRF or MMR settings when used, and final score. Do not add incompatible raw scores directly
|
|
163
|
+
without a deliberate combiner. Preserve exact product codes, API names, error codes, ticket IDs,
|
|
164
|
+
and dates in lexical fields instead of smoothing them into natural-language embedding text.
|
|
165
|
+
20. For reranking, record pre-rerank and post-rerank ids and ranks. If the right document never
|
|
143
166
|
enters the candidate set, the reranker cannot recover it.
|
|
144
|
-
|
|
167
|
+
21. Avoid deep ANN pagination as a product contract. Use cursor, filters, grouping, or ordinary
|
|
145
168
|
sorted indexes for deep browsing instead of pretending vector search has cheap random offsets.
|
|
146
|
-
|
|
169
|
+
22. Split cold and warm latency, server search time and client wait, vector DB time and reranker
|
|
147
170
|
time, and single-query latency from concurrent load.
|
|
148
|
-
|
|
171
|
+
23. Inspect shard, replica, segment, compaction, flush, indexing, memory, disk, and cache state when
|
|
149
172
|
p99 or intermittent quality varies across nodes.
|
|
150
|
-
|
|
173
|
+
24. Add a golden-set gate when the project has a test surface. Include easy, hard, filtered,
|
|
151
174
|
tenant-scoped, rare-name, synonym, short-query, long-query, and sparse-data cases.
|
|
152
175
|
|
|
153
176
|
<!-- mustflow-section: postconditions -->
|
|
@@ -155,6 +178,10 @@ filters, reranking, and latency evidence all agree for the same query contract.
|
|
|
155
178
|
|
|
156
179
|
- The retrieval symptom, query contract, ingestion contract, quality ledger, performance ledger, and
|
|
157
180
|
privacy boundary are explicit.
|
|
181
|
+
- Original/index/prompt/embedding text separation, stable source/doc/chunk ids, parent document
|
|
182
|
+
genealogy, payload field typing, ACL prefiltering, contextual headers, synthetic questions,
|
|
183
|
+
chunk graph, content hashes, embedding hashes, exact lexical safeguards, and hybrid or rerank
|
|
184
|
+
ledgers are explicit where relevant.
|
|
158
185
|
- Exact search, ANN, filters, metadata, namespaces, tenants, named vectors, IDs, deletes, metric,
|
|
159
186
|
normalization, quantization, hybrid search, reranking, shards, consistency, and latency are fixed
|
|
160
187
|
or reported where relevant.
|
|
@@ -199,8 +226,8 @@ of inventing live diagnostics.
|
|
|
199
226
|
- Vector search integrity reviewed
|
|
200
227
|
- Retrieval symptom, query contract, ingestion ledger, quality ledger, performance ledger, and
|
|
201
228
|
privacy boundary
|
|
202
|
-
- Exact versus ANN, filter, metadata, namespace, tenant, id, delete, metric,
|
|
203
|
-
quantization, hybrid, reranker, shard, consistency, and latency findings
|
|
229
|
+
- Exact versus ANN, filter, metadata, text-variant, namespace, tenant, id, delete, metric,
|
|
230
|
+
normalization, quantization, hybrid, MMR, reranker, shard, consistency, and latency findings
|
|
204
231
|
- Fix applied or recommended
|
|
205
232
|
- Evidence level: golden-set evidence, configured-test evidence, static review risk, manual-only,
|
|
206
233
|
missing, or not applicable
|