You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
| Identifiers source |`identifier` field from search results |
228
228
| Identifier format |`{owner/repo}::{path}::{symbol}` (symbols), `{owner/repo}::{path}` (files) |
229
+
|`--data-source NAME_OR_ID`| Optional. Data source Name or Id (from a result's `Source:` line) to disambiguate an identifier indexed in more than one data source |
229
230
230
231
For function-like artifacts the response includes a small **relationships
231
232
preview** (up to 3 outgoing/incoming calls per direction). To see the full
232
233
call graph, inheritance, or references, run `relationships.py` with the
233
234
artifact's identifier.
234
235
236
+
**Disambiguating an identifier that lives in more than one data source.** Artifact
237
+
identifiers are unique only per data source, so the same identifier can belong to
238
+
more than one data source. If you fetch such an identifier without `--data-source`,
239
+
the backend returns a **409** listing the candidate data sources instead of picking
240
+
one for you. Every listed candidate **will** resolve, so the workflow is: call without
241
+
`--data-source` → read the 409 candidates → try one → if that data source isn't the one
242
+
you want, try the next. To resolve it: take the
243
+
`Source:` name or id shown next to the search result you want and pass it back —
244
+
`python scripts/fetch.py <identifier> --data-source "backend"` (or the id).
245
+
The same `--data-source` flag works on `relationships.py`. If a `--data-source`-scoped
246
+
call finds nothing (the script prints a "nothing was found in data source …" hint),
247
+
the identifier belongs to a different data source or the selector is wrong: retry with
248
+
a different `Source:` value, or drop `--data-source` to get the 409 candidate list.
249
+
235
250
### `relationships.py` — Drill into an Artifact's Relationship Graph
236
251
237
252
Returns the full call graph (incoming/outgoing calls), inheritance hierarchy
@@ -241,7 +256,7 @@ identifier and want to understand how the artifact relates to the rest of the
|`--max-count N`| Max related artifacts per relationship type (1–1000, default 50) |
269
+
|`--data-source NAME_OR_ID`| Optional. Data source Name or Id to disambiguate an identifier indexed in more than one data source (same 409 contract as `fetch.py`) |
254
270
|`--json`| Emit the raw JSON response instead of the formatted view |
0 commit comments