ultra11y 4.2.0 → 4.3.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/.claude-plugin/marketplace.json +1 -1
- package/.claude-plugin/plugin.json +1 -1
- package/.codex-plugin/plugin.json +1 -1
- package/.opencode/plugins/ultra11y.js +1 -1
- package/package.json +1 -1
- package/scripts/ultra11y.mjs +1471 -527
- package/scripts/vendor/wcag-2.2-fr.json +1 -1
- package/scripts/vendor/wcag-2.2-sc-universe.json +1 -1
- package/skills/review-a11y/SKILL.md +1 -1
- package/skills/review-a11y/scripts/ultra11y.mjs +1471 -527
- package/skills/ultra11y/SKILL.md +1 -1
- package/skills/ultra11y/scripts/ultra11y.mjs +1471 -527
- package/src/data/wcag-universe.json +1 -1
- package/src/types.ts +1 -1
- package/src/vendor/codeindex-engine.d.mts +324 -3
- package/src/vendor/codeindex-engine.mjs +1146 -175
- package/src/vendor/engine.meta.json +5 -5
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
"wcagVersion": "2.2",
|
|
3
3
|
"source": "https://www.w3.org/TR/WCAG22/",
|
|
4
4
|
"criteriaSource": "https://github.com/w3c/wcag",
|
|
5
|
-
"provenance": "Full WCAG 2.x SC universe (all levels incl. AAA, and the removed 4.1.1 Parsing) fetched from raw.githubusercontent.com/w3c/wcag@main on 2026-08-
|
|
5
|
+
"provenance": "Full WCAG 2.x SC universe (all levels incl. AAA, and the removed 4.1.1 Parsing) fetched from raw.githubusercontent.com/w3c/wcag@main on 2026-08-14 via `node scripts/build-standards.mjs --refresh-universe`. Classification: core-AA = ships in src/data/wcag.json (the shipped WCAG 2.2 AA core); out-of-core = WCAG AAA; removed = obsolete (4.1.1).",
|
|
6
6
|
"criteria": [
|
|
7
7
|
{
|
|
8
8
|
"id": "1.1.1",
|
package/src/types.ts
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
// Single source of truth for shared types + the embedded version. sync-version.mjs
|
|
2
2
|
// rewrites VERSION at release time (kept in lockstep with package.json + SKILL.md).
|
|
3
|
-
export const VERSION = "4.
|
|
3
|
+
export const VERSION = "4.3.0";
|
|
4
4
|
export const SCHEMA_VERSION = 2;
|
|
5
5
|
|
|
6
6
|
// Lang = the UI FRAME's language — the `L` localization tables each module (report,
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
declare const ENGINE_VERSION = "2.
|
|
1
|
+
declare const ENGINE_VERSION = "2.28.0";
|
|
2
2
|
declare const SCHEMA_VERSION = 5;
|
|
3
3
|
declare const EXTRACTOR_VERSION = 13;
|
|
4
4
|
type FileKind = "code" | "doc" | "config" | "asset" | "other";
|
|
@@ -421,7 +421,7 @@ declare function tagsQueryStatus(key: string): TagsQueryStatus;
|
|
|
421
421
|
*/
|
|
422
422
|
declare function extractTags(ext: string, content: string): TagDefinition[];
|
|
423
423
|
|
|
424
|
-
declare const DEFAULT_GRAMMARS_URL = "https://github.com/maxgfr/codeindex/releases/download/v2.
|
|
424
|
+
declare const DEFAULT_GRAMMARS_URL = "https://github.com/maxgfr/codeindex/releases/download/v2.28.0/grammars-2.28.0.tar.gz";
|
|
425
425
|
interface GrammarsPullTarget {
|
|
426
426
|
url: string;
|
|
427
427
|
sha256Url?: string;
|
|
@@ -715,6 +715,21 @@ interface FindSymbolOptions {
|
|
|
715
715
|
substring?: boolean;
|
|
716
716
|
includeBody?: boolean;
|
|
717
717
|
maxResults?: number;
|
|
718
|
+
/**
|
|
719
|
+
* Return only what LOCATES a declaration — name, kind, file, line — dropping
|
|
720
|
+
* the signature, line span, visibility and language.
|
|
721
|
+
*
|
|
722
|
+
* The default answer carries the complete signature because "what shape is
|
|
723
|
+
* it" is the question that follows "where is it" almost every time, and one
|
|
724
|
+
* round trip beats two. But it is not free: measured on `Route` in
|
|
725
|
+
* create-t3-turbo, the full answer is 1,561 bytes against 640 for a
|
|
726
|
+
* locate-only one — and when the caller genuinely only wants a path, the
|
|
727
|
+
* signature is context spent on a question nobody asked.
|
|
728
|
+
*
|
|
729
|
+
* So it is the CALLER's choice rather than ours, and the default does not
|
|
730
|
+
* move: an agent that knows it is only resolving a path can say so.
|
|
731
|
+
*/
|
|
732
|
+
concise?: boolean;
|
|
718
733
|
}
|
|
719
734
|
declare function findSymbol(scan: RepoScan, namePath: string, opts?: FindSymbolOptions): SymbolMatch[];
|
|
720
735
|
interface SymbolReferences {
|
|
@@ -870,6 +885,7 @@ type RankMode = "graph" | "lexical";
|
|
|
870
885
|
interface SearchOptions {
|
|
871
886
|
limit?: number;
|
|
872
887
|
fuzzy?: boolean;
|
|
888
|
+
exact?: boolean;
|
|
873
889
|
rank?: RankMode;
|
|
874
890
|
}
|
|
875
891
|
/** A specific declaration a result matched, so a caller can jump straight to it. */
|
|
@@ -887,6 +903,56 @@ interface SearchResult {
|
|
|
887
903
|
line?: number;
|
|
888
904
|
symbolHits?: SymbolHit[];
|
|
889
905
|
fuzzyTerms?: string[];
|
|
906
|
+
bridgedOnly?: true;
|
|
907
|
+
}
|
|
908
|
+
/**
|
|
909
|
+
* Whether the query really found anything, as one word.
|
|
910
|
+
*
|
|
911
|
+
* `weak` is the case this whole diagnostic exists for. Searching `nullGipStep7`
|
|
912
|
+
* against a repo that has `nullGipStep2` returns twenty results at scores no
|
|
913
|
+
* different from a real hit, because `subtokens` splits the identifier into
|
|
914
|
+
* ["nullgipstep7", "null", "gip", "step7"] and the subtokens match plenty of
|
|
915
|
+
* files on their own. The one token that mattered — the whole identifier — has
|
|
916
|
+
* df 0, no bridge, and appeared in NO output field at all. A caller could not
|
|
917
|
+
* tell "found it" from "found nothing and improvised".
|
|
918
|
+
*/
|
|
919
|
+
type QueryVerdict = "match" | "weak" | "none";
|
|
920
|
+
interface TermDiagnostic {
|
|
921
|
+
term: string;
|
|
922
|
+
df: number;
|
|
923
|
+
/** How a df==0 term still earned score, when it did. Absent when df > 0. */
|
|
924
|
+
bridge?: {
|
|
925
|
+
via: "stem" | "trigram";
|
|
926
|
+
to: string[];
|
|
927
|
+
dice: number;
|
|
928
|
+
};
|
|
929
|
+
}
|
|
930
|
+
interface QueryExplanation {
|
|
931
|
+
query: string;
|
|
932
|
+
/** Post keywords() + subtokens(), in query order. */
|
|
933
|
+
terms: TermDiagnostic[];
|
|
934
|
+
/** Raw tokens keywords() discarded as stopwords or 1-char noise, in order. */
|
|
935
|
+
droppedStopwords: string[];
|
|
936
|
+
/** df==0 AND no stem/trigram bridge — present in the repo nowhere, sorted. */
|
|
937
|
+
unresolvedTerms: string[];
|
|
938
|
+
/**
|
|
939
|
+
* For a single-token query, the whole lowercased identifier with its df.
|
|
940
|
+
* df 0 here means the thing asked for is not in this tree, whatever the
|
|
941
|
+
* rows below say.
|
|
942
|
+
*/
|
|
943
|
+
wholeIdentifier?: {
|
|
944
|
+
term: string;
|
|
945
|
+
df: number;
|
|
946
|
+
};
|
|
947
|
+
verdict: QueryVerdict;
|
|
948
|
+
/** A sentence a human or an agent can act on. Absent when verdict is "match". */
|
|
949
|
+
note?: string;
|
|
950
|
+
bridgedOnlyResults: number;
|
|
951
|
+
resultCount: number;
|
|
952
|
+
}
|
|
953
|
+
interface ExplainedSearch {
|
|
954
|
+
results: SearchResult[];
|
|
955
|
+
explain: QueryExplanation;
|
|
890
956
|
}
|
|
891
957
|
/**
|
|
892
958
|
* Rank the scanned files against a natural-language (or identifier) query.
|
|
@@ -894,6 +960,14 @@ interface SearchResult {
|
|
|
894
960
|
* byte-for-byte.
|
|
895
961
|
*/
|
|
896
962
|
declare function searchIndex(scan: RepoScan, query: string, opts?: SearchOptions): SearchResult[];
|
|
963
|
+
/**
|
|
964
|
+
* `searchIndex` plus the diagnostics it throws away, in ONE pass.
|
|
965
|
+
*
|
|
966
|
+
* `explainQuery(scan, q, o).results` is `searchIndex(scan, q, o)`, asserted by
|
|
967
|
+
* a test rather than promised by a comment — they are literally the same code
|
|
968
|
+
* path, which is why the ranking cannot drift between them.
|
|
969
|
+
*/
|
|
970
|
+
declare function explainQuery(scan: RepoScan, query: string, opts?: SearchOptions): ExplainedSearch;
|
|
897
971
|
|
|
898
972
|
declare const EMBED_VERSION = 1;
|
|
899
973
|
interface StaticEmbedModel {
|
|
@@ -969,6 +1043,252 @@ declare function probeEndpoint(base: string, opts?: EmbedEndpointOptions): Promi
|
|
|
969
1043
|
declare function encodeQueryViaEndpoint(query: string, opts?: EmbedEndpointOptions): Promise<Int8Array>;
|
|
970
1044
|
declare function buildEndpointIndex(scan: RepoScan, opts?: EmbedEndpointOptions): Promise<EmbeddingIndex>;
|
|
971
1045
|
|
|
1046
|
+
interface OnboardOptions {
|
|
1047
|
+
/** Token budget for the repo-map section (default 900). */
|
|
1048
|
+
budgetTokens?: number;
|
|
1049
|
+
/** Persist the brief as a memory (default true). */
|
|
1050
|
+
remember?: boolean;
|
|
1051
|
+
/** Memory name (default "onboarding"). */
|
|
1052
|
+
memoryName?: string;
|
|
1053
|
+
}
|
|
1054
|
+
interface OnboardBrief {
|
|
1055
|
+
/** The rendered brief, markdown. */
|
|
1056
|
+
brief: string;
|
|
1057
|
+
/** Where it was persisted, when it was. */
|
|
1058
|
+
memory?: string;
|
|
1059
|
+
}
|
|
1060
|
+
/**
|
|
1061
|
+
* Compose a project brief from the analyses this engine already computes.
|
|
1062
|
+
*
|
|
1063
|
+
* Deterministic apart from the git section, which is skipped wholesale when
|
|
1064
|
+
* this is not a git checkout rather than emitted empty — a heading with nothing
|
|
1065
|
+
* under it reads as "no churn", which is a different claim from "not measured".
|
|
1066
|
+
*/
|
|
1067
|
+
declare function onboardBrief(scan: RepoScan, graph: Graph, opts?: OnboardOptions): OnboardBrief;
|
|
1068
|
+
|
|
1069
|
+
interface LspServerConfig {
|
|
1070
|
+
/** Stable id, used in `source` labels and in `lsp status`. */
|
|
1071
|
+
id: string;
|
|
1072
|
+
/** Engine `lang` strings (see src/lang/registry.ts), not LSP language ids. */
|
|
1073
|
+
languages: string[];
|
|
1074
|
+
/** What `didOpen` announces. Defaults to the first entry of `languages`. */
|
|
1075
|
+
languageId?: string;
|
|
1076
|
+
command: string;
|
|
1077
|
+
args?: string[];
|
|
1078
|
+
env?: Record<string, string>;
|
|
1079
|
+
initializationOptions?: unknown;
|
|
1080
|
+
/** Per-request budget, ms (default 5000). */
|
|
1081
|
+
timeoutMs?: number;
|
|
1082
|
+
/** How long `initialize` may take, ms (default 15000). */
|
|
1083
|
+
startupTimeoutMs?: number;
|
|
1084
|
+
}
|
|
1085
|
+
interface LspConfig {
|
|
1086
|
+
version: 1;
|
|
1087
|
+
servers: LspServerConfig[];
|
|
1088
|
+
}
|
|
1089
|
+
type LspConfigSource = "env" | "repo" | "cwd" | "none";
|
|
1090
|
+
interface ResolvedLspConfigPath {
|
|
1091
|
+
path: string | undefined;
|
|
1092
|
+
source: LspConfigSource;
|
|
1093
|
+
}
|
|
1094
|
+
/**
|
|
1095
|
+
* Resolution ladder, mirroring resolveEmbedModelDir: an explicit env var wins
|
|
1096
|
+
* outright, then the repo, then the working directory.
|
|
1097
|
+
*
|
|
1098
|
+
* `CODEINDEX_LSP_CONFIG` set to an empty string, `0` or `off` DISABLES the tier
|
|
1099
|
+
* even when a repo config exists — the escape hatch for a CI job that must not
|
|
1100
|
+
* spawn anything, without deleting a file the rest of the team relies on.
|
|
1101
|
+
*/
|
|
1102
|
+
declare function resolveLspConfigPath(repo: string): ResolvedLspConfigPath;
|
|
1103
|
+
/** Validate a parsed payload, throwing with the field that is wrong. */
|
|
1104
|
+
declare function parseLspConfig(payload: unknown): LspConfig;
|
|
1105
|
+
/**
|
|
1106
|
+
* The config for a repository, or undefined when the tier was not asked for.
|
|
1107
|
+
*
|
|
1108
|
+
* NEVER THROWS on an absent file — absent is the normal case and must cost
|
|
1109
|
+
* nothing. A file that exists but is malformed DOES throw, because at that
|
|
1110
|
+
* point someone asked for the tier and silently ignoring their config is worse
|
|
1111
|
+
* than failing: they would spend the afternoon wondering why nothing improved.
|
|
1112
|
+
*/
|
|
1113
|
+
declare function loadLspConfig(repo: string): LspConfig | undefined;
|
|
1114
|
+
/** The server that claims a language, or undefined. First match wins. */
|
|
1115
|
+
declare function serverForLang(config: LspConfig, lang: string): LspServerConfig | undefined;
|
|
1116
|
+
|
|
1117
|
+
interface LspMessage {
|
|
1118
|
+
jsonrpc: "2.0";
|
|
1119
|
+
id?: number | string;
|
|
1120
|
+
method?: string;
|
|
1121
|
+
params?: unknown;
|
|
1122
|
+
result?: unknown;
|
|
1123
|
+
error?: {
|
|
1124
|
+
code: number;
|
|
1125
|
+
message: string;
|
|
1126
|
+
};
|
|
1127
|
+
}
|
|
1128
|
+
/** A reference the LSP reported, normalised to the engine's 1-based lines. */
|
|
1129
|
+
interface LspRef {
|
|
1130
|
+
/** Repo-relative, posix separators — the same key every other artifact uses. */
|
|
1131
|
+
file: string;
|
|
1132
|
+
line: number;
|
|
1133
|
+
character?: number;
|
|
1134
|
+
}
|
|
1135
|
+
/**
|
|
1136
|
+
* The largest frame this client will assemble, in bytes.
|
|
1137
|
+
*
|
|
1138
|
+
* Not a performance knob: a malformed or hostile `Content-Length` is otherwise
|
|
1139
|
+
* an unbounded allocation driven by a process the user configured but did not
|
|
1140
|
+
* write. 32 MiB is far above any real `textDocument/references` response.
|
|
1141
|
+
*/
|
|
1142
|
+
declare const MAX_FRAME_BYTES: number;
|
|
1143
|
+
declare function encodeMessage(msg: LspMessage): string;
|
|
1144
|
+
/**
|
|
1145
|
+
* An incremental frame reader.
|
|
1146
|
+
*
|
|
1147
|
+
* Feed it whatever arrives; it returns the messages that are complete. Buffers
|
|
1148
|
+
* BYTES rather than a string, because decoding each chunk on arrival is what
|
|
1149
|
+
* corrupts a multi-byte character split across two chunks.
|
|
1150
|
+
*/
|
|
1151
|
+
declare function createFramer(): {
|
|
1152
|
+
push(chunk: Uint8Array | string): LspMessage[];
|
|
1153
|
+
};
|
|
1154
|
+
/** `file:///abs/path` for a repo-relative path, percent-encoding each segment. */
|
|
1155
|
+
declare function fileUri(root: string, rel: string): string;
|
|
1156
|
+
/** The inverse, or undefined when the URI points outside the repository. */
|
|
1157
|
+
declare function relFromUri(root: string, uri: string): string | undefined;
|
|
1158
|
+
/**
|
|
1159
|
+
* Normalise whatever `textDocument/references` or `textDocument/definition`
|
|
1160
|
+
* returned into engine coordinates.
|
|
1161
|
+
*
|
|
1162
|
+
* Handles all three shapes the spec permits — a single Location, an array of
|
|
1163
|
+
* Locations, and an array of LocationLinks — because which one you get is a
|
|
1164
|
+
* per-server, per-request choice, and a client that assumes one silently
|
|
1165
|
+
* returns nothing against the others.
|
|
1166
|
+
*
|
|
1167
|
+
* LSP lines are 0-based; every line number in this engine is 1-based. Output is
|
|
1168
|
+
* deduped and sorted so an LSP answer is as deterministic as a static one, even
|
|
1169
|
+
* though the server's ordering is not guaranteed.
|
|
1170
|
+
*/
|
|
1171
|
+
declare function locationsToRefs(root: string, raw: unknown): LspRef[];
|
|
1172
|
+
|
|
1173
|
+
interface LspTransport {
|
|
1174
|
+
write(chunk: string): void;
|
|
1175
|
+
onData(cb: (chunk: Uint8Array | string) => void): void;
|
|
1176
|
+
/** Fired when the far side goes away, however it went away. */
|
|
1177
|
+
onExit(cb: (code: number | null) => void): void;
|
|
1178
|
+
close(): void;
|
|
1179
|
+
}
|
|
1180
|
+
interface LspSessionOptions {
|
|
1181
|
+
/** Absolute repository root; every URI is built against it. */
|
|
1182
|
+
root: string;
|
|
1183
|
+
timeoutMs?: number;
|
|
1184
|
+
startupTimeoutMs?: number;
|
|
1185
|
+
initializationOptions?: unknown;
|
|
1186
|
+
}
|
|
1187
|
+
interface LspCapabilities {
|
|
1188
|
+
references: boolean;
|
|
1189
|
+
definition: boolean;
|
|
1190
|
+
implementation: boolean;
|
|
1191
|
+
typeHierarchy: boolean;
|
|
1192
|
+
}
|
|
1193
|
+
interface LspSession {
|
|
1194
|
+
readonly capabilities: LspCapabilities;
|
|
1195
|
+
didOpen(rel: string, text: string, languageId: string): void;
|
|
1196
|
+
references(rel: string, line: number, character: number): Promise<LspRef[]>;
|
|
1197
|
+
definition(rel: string, line: number, character: number): Promise<LspRef[]>;
|
|
1198
|
+
shutdown(): Promise<void>;
|
|
1199
|
+
}
|
|
1200
|
+
/** Thrown when a request outlives its budget. Named so callers can tell it apart. */
|
|
1201
|
+
declare class LspTimeout extends Error {
|
|
1202
|
+
constructor(method: string, ms: number);
|
|
1203
|
+
}
|
|
1204
|
+
declare function openLspSession(transport: LspTransport, options: LspSessionOptions): Promise<LspSession>;
|
|
1205
|
+
|
|
1206
|
+
interface LspAgreement {
|
|
1207
|
+
/** Files both tiers report — corroborated by two independent methods. */
|
|
1208
|
+
both: string[];
|
|
1209
|
+
/** Files only the language server found — the static tier under-recalled. */
|
|
1210
|
+
lspOnly: string[];
|
|
1211
|
+
/** Files only the static tier found — where the homonyms are. */
|
|
1212
|
+
staticOnly: string[];
|
|
1213
|
+
}
|
|
1214
|
+
interface LspBlock {
|
|
1215
|
+
server: string;
|
|
1216
|
+
ok: boolean;
|
|
1217
|
+
/** Why it could not answer. Present only when `ok` is false. */
|
|
1218
|
+
reason?: string;
|
|
1219
|
+
refs: LspRef[];
|
|
1220
|
+
agreement: LspAgreement;
|
|
1221
|
+
}
|
|
1222
|
+
interface LspReferences extends SymbolReferences {
|
|
1223
|
+
lsp?: LspBlock;
|
|
1224
|
+
}
|
|
1225
|
+
/** An `lsp` block for a tier that could not run, with the reason named. */
|
|
1226
|
+
declare function lspUnavailable(server: string, reason: string): LspBlock;
|
|
1227
|
+
/**
|
|
1228
|
+
* A symbol's column on its declaration line.
|
|
1229
|
+
*
|
|
1230
|
+
* CodeSymbol carries `line`/`endLine` and no column (src/types.ts), because a
|
|
1231
|
+
* column is worth nothing to any other consumer and persisting one would widen
|
|
1232
|
+
* every artifact. LSP needs `{line, character}`, so it is derived HERE, from
|
|
1233
|
+
* the source, and never stored.
|
|
1234
|
+
*
|
|
1235
|
+
* Returns 0 when the name is not on that line — a position a server will simply
|
|
1236
|
+
* find no references for, which is the right failure: an empty LSP answer that
|
|
1237
|
+
* leaves the static tiers untouched.
|
|
1238
|
+
*/
|
|
1239
|
+
declare function columnOfSymbol(root: string, rel: string, line: number, name: string): number;
|
|
1240
|
+
/** Cross the two answers into the agreement matrix, deterministically. */
|
|
1241
|
+
declare function agreementOf(refs: LspRef[], statik: SymbolReferences): LspAgreement;
|
|
1242
|
+
|
|
1243
|
+
interface LspServerStatus {
|
|
1244
|
+
id: string;
|
|
1245
|
+
languages: string[];
|
|
1246
|
+
command: string;
|
|
1247
|
+
/** `have(command)` — resolvable on PATH. No spawn. */
|
|
1248
|
+
onPath: boolean;
|
|
1249
|
+
/** Files in this scan whose language this server claims. */
|
|
1250
|
+
filesInRepo: number;
|
|
1251
|
+
/** --probe only: did `initialize` succeed, and what did it advertise. */
|
|
1252
|
+
reachable?: boolean;
|
|
1253
|
+
capabilities?: {
|
|
1254
|
+
references: boolean;
|
|
1255
|
+
definition: boolean;
|
|
1256
|
+
implementation: boolean;
|
|
1257
|
+
typeHierarchy: boolean;
|
|
1258
|
+
};
|
|
1259
|
+
error?: string;
|
|
1260
|
+
}
|
|
1261
|
+
interface LspStatus {
|
|
1262
|
+
lspVersion: 1;
|
|
1263
|
+
mode: "none" | "configured";
|
|
1264
|
+
configPath: string | null;
|
|
1265
|
+
source: LspConfigSource;
|
|
1266
|
+
servers: LspServerStatus[];
|
|
1267
|
+
/** Languages present in the repo that no configured server claims. */
|
|
1268
|
+
unmappedLanguages: string[];
|
|
1269
|
+
}
|
|
1270
|
+
/**
|
|
1271
|
+
* What the tier would do, without doing it.
|
|
1272
|
+
*
|
|
1273
|
+
* The default answer is cheap and spawns NOTHING: config, `have()`, and file
|
|
1274
|
+
* counts. `probe` is the part that starts each server to read its real
|
|
1275
|
+
* capabilities — the analogue of `probeEndpoint` in `embed status`, and like it,
|
|
1276
|
+
* the only part that touches the outside world.
|
|
1277
|
+
*/
|
|
1278
|
+
declare function lspStatus(scan: RepoScan, repo: string, probe?: boolean): Promise<LspStatus>;
|
|
1279
|
+
/**
|
|
1280
|
+
* `findReferences`, annotated by a language server when one can answer.
|
|
1281
|
+
*
|
|
1282
|
+
* The caller passes the static answer in, so this function CANNOT change it —
|
|
1283
|
+
* a structural guarantee rather than a promise. The server is chosen by the
|
|
1284
|
+
* language of the declarations that were found, which is why a repo with a
|
|
1285
|
+
* TypeScript server configured still gets its Go references answered
|
|
1286
|
+
* statically, silently and correctly.
|
|
1287
|
+
*/
|
|
1288
|
+
declare function referencesWithLsp(scan: RepoScan, repo: string, name: string, statik: SymbolReferences): Promise<LspReferences>;
|
|
1289
|
+
|
|
1290
|
+
declare function spawnLspTransport(server: LspServerConfig, cwd: string): LspTransport | undefined;
|
|
1291
|
+
|
|
972
1292
|
type RuleSeverity = "error" | "warn";
|
|
973
1293
|
interface ForbiddenEdgeRule {
|
|
974
1294
|
name: string;
|
|
@@ -1232,6 +1552,7 @@ interface McpServerOptions {
|
|
|
1232
1552
|
};
|
|
1233
1553
|
defaultRepo?: string;
|
|
1234
1554
|
maxResponseBytes?: number;
|
|
1555
|
+
profile?: string;
|
|
1235
1556
|
}
|
|
1236
1557
|
declare function runMcpServer(opts?: McpServerOptions): Promise<void>;
|
|
1237
1558
|
|
|
@@ -1245,4 +1566,4 @@ declare function byKey<T>(keyOf: (x: T) => string): (a: T, b: T) => number;
|
|
|
1245
1566
|
|
|
1246
1567
|
declare function runCli(rawArgv: string[]): Promise<void>;
|
|
1247
1568
|
|
|
1248
|
-
export { type ArchRule, type BuildIndexOptions, type BuiltinRule, CORE_GRAMMARS, type CallerEntry, type CallerIndex, type CallerIndexOptions, type CallerSite, type ChangeCoupling, type ChangedSymbol, type ClusteredMermaidOptions, type ClusteredMermaidResult, type CodeInfo, type CodeLiteral, type CodeSymbol, type CouplingOptions, DEFAULT_DELTA_DEPTH, DEFAULT_GRAMMARS_URL, DEFAULT_MAX_FILES, type DeadSymbol, type DeltaChange, type DeltaError, type DeltaModule, type DeltaOptions, type DeltaResult, type DiffFile, type DiffSpec, type Direction, EMBED_VERSION, ENGINE_VERSION, EXTENDED_GRAMMARS, EXTRACTOR_VERSION, EXT_GRAMMAR, type Edge, type EdgeKind, type EditResult, type EmbedEndpointOptions, type EmbedPullTarget, type EmbeddingIndex, type EmbeddingRecord, type EmbeddingUnit, type ExtractedRecord, type FileCategory, type FileKind, type FileNode, type FileRecord, type FindSymbolOptions, type ForbiddenEdgeRule, type GrammarsPullResult, type GrammarsPullTarget, type GrammarsTier, type GrammarsTierName, type Graph, type GrepOptions, type HierarchyRef, type Hotspot, type Hunk, INDEX_DIR, type IgnoreRule, type ImpactResult, type ImpactedFile, type IndexArtifacts, type LiteralDuplication, type LiteralFamily, type LiteralSite, type LiteralsOptions, type LiteralsReport, MARKDOWN_EXT, type MarkdownInfo, type McpServerOptions, type MermaidOptions, type ModuleInfo, type ModuleNode, type NeighborLink, type NeighborResult, type Neighborhood, type PersistedCacheEntry, type PersistedCacheMap, type PersistedMeta, RISK_WEIGHTS, type RawCallerIndex, type RawCallerSite, type RawRef, type RawRelation, type RenderScipOptions, type RepoMapOptions, type RepoScan, type Resolution, type ResolveContext, type ResolvedRelation, type RiskHotspot, type RuleSeverity, type RuleViolation, SCHEMA_VERSION, type ScanOptions, type ScanSummary, type SearchHit, type SearchOptions, type SearchResult, type SemanticSearchOptions, type SemanticSearchResult, type ShResult, type StaticEmbedModel, type SurpriseEdge, type SymbolComplexity, type SymbolEdge, type SymbolEdgeKind, type SymbolGraph, type SymbolIndex, type SymbolMatch, type SymbolNode, type SymbolReferences, type TagDefinition, type TagsQueryStatus, type TestMap, type Tier, type TypeHierarchyEntry, type WalkOptions, type WalkResult, type WalkedFile, type WarmGrammarsOptions, type WarmGrammarsResult, type WorkspaceInfo, type WorkspaceKind, type WorkspacePackage, allGrammarKeys, applyCentrality, basicTokenize, betweennessOf, buildArtifactsFromScan, buildCallerIndex, buildCodeRecord, buildEmbeddingIndex, buildEndpointIndex, buildGraph, buildIndexArtifacts, buildModules, buildRawCallerIndex, buildResolveContext, buildSymbolGraph, buildSymbolIndex, buildTypeHierarchy, byKey, byStr, categorize, changeCoupling, changedSince, checkRules, classify, clip, clipInline, communityOf, compileGlobs, complexityOfSource, computeDelta, computeImportPairs, computeSurprises, computeSymbolRefs, computeTestMap, deleteMemory, deltaFor, deserializeEmbeddings, detectCommunities, detectWorkspaces, diffFiles, diffHunks, embedEndpointUrl, embedViaEndpoint, embeddingUnits, enclosingSymbol, encode, encodeQueryViaEndpoint, ensureGrammars, escapeRegExp, extToLang, extractAst, extractCode, extractGrammarsTarball, extractInParallel, extractMarkdown, extractSymbols, extractTags, extractTarInto, fetchExpectedSha256, fetchGrammarsTarball, findDeadCode, findLiteralDuplications, findReferences, findSymbol, foldText, formatDeltaPanel, gitChurn, grammarKeyForExt, grammarKeysForExts, grammarReady, grepRepo, hasEmbedModel, have, headCommit, healthzUrl, hubThreshold, impactOf, implementationsOf, insertAfterSymbol, insertBeforeSymbol, intDot, isCode, isDoc, isGitWorktree, isIgnored, isSurprising, isTestFile, isTestPath, keptCodeFiles, keywords, languageOf, listMemories, loadEmbedModel, neighborhood, neighborsOf, pagerankOf, parseGitignore, parseRules, preloadArtifacts, preloadSession, probeEndpoint, pullGrammars, quantize, rankHotspots, rankedKeywords, readMemory, readPersistedIndex, readText, renderGraphJson, renderMermaid, renderMermaidClustered, renderRepoMap, renderScip, renderSymbolsJson, replaceSymbolBody, resolveBaseRef, resolveCallEdges, resolveDocLink, resolveEmbedEndpoint, resolveEmbedModelDir, resolveEmbedPullUrl, resolveGrammarsDir, resolveGrammarsPullTarget, resolveGrammarsTier, resolveImport, resolveRelationEdges, resolveRelations, resolveUniqueSymbol, reverseClosure, rewriteCommand, riskHotspots, roundHalfToEven, rrf, runCli, runExtractWorker, runMcpServer, scanRepo, scanRepoParallel, scanSummary, searchIndex, searchSemantic, serializeEmbeddings, sh, sha1, sharedGrammarsCacheDir, shortHash, slugify, subtokens, symbolComplexity, symbolId, symbolsInHunks, symbolsOverview, tagsQueryStatus, testsForModule, tierForPath, toCacheMap, tokenize, typeEntry, uniqueSymbolDefs, untestedModules, untrackedFiles, walk, warmGrammars, wordpiece, workerCount, writeMemory };
|
|
1569
|
+
export { type ArchRule, type BuildIndexOptions, type BuiltinRule, CORE_GRAMMARS, type CallerEntry, type CallerIndex, type CallerIndexOptions, type CallerSite, type ChangeCoupling, type ChangedSymbol, type ClusteredMermaidOptions, type ClusteredMermaidResult, type CodeInfo, type CodeLiteral, type CodeSymbol, type CouplingOptions, DEFAULT_DELTA_DEPTH, DEFAULT_GRAMMARS_URL, DEFAULT_MAX_FILES, type DeadSymbol, type DeltaChange, type DeltaError, type DeltaModule, type DeltaOptions, type DeltaResult, type DiffFile, type DiffSpec, type Direction, EMBED_VERSION, ENGINE_VERSION, EXTENDED_GRAMMARS, EXTRACTOR_VERSION, EXT_GRAMMAR, type Edge, type EdgeKind, type EditResult, type EmbedEndpointOptions, type EmbedPullTarget, type EmbeddingIndex, type EmbeddingRecord, type EmbeddingUnit, type ExplainedSearch, type ExtractedRecord, type FileCategory, type FileKind, type FileNode, type FileRecord, type FindSymbolOptions, type ForbiddenEdgeRule, type GrammarsPullResult, type GrammarsPullTarget, type GrammarsTier, type GrammarsTierName, type Graph, type GrepOptions, type HierarchyRef, type Hotspot, type Hunk, INDEX_DIR, type IgnoreRule, type ImpactResult, type ImpactedFile, type IndexArtifacts, type LiteralDuplication, type LiteralFamily, type LiteralSite, type LiteralsOptions, type LiteralsReport, type LspAgreement, type LspBlock, type LspCapabilities, type LspConfig, type LspConfigSource, type LspMessage, type LspRef, type LspReferences, type LspServerConfig, type LspServerStatus, type LspSession, type LspSessionOptions, type LspStatus, LspTimeout, type LspTransport, MARKDOWN_EXT, MAX_FRAME_BYTES, type MarkdownInfo, type McpServerOptions, type MermaidOptions, type ModuleInfo, type ModuleNode, type NeighborLink, type NeighborResult, type Neighborhood, type OnboardBrief, type OnboardOptions, type PersistedCacheEntry, type PersistedCacheMap, type PersistedMeta, type QueryExplanation, type QueryVerdict, RISK_WEIGHTS, type RawCallerIndex, type RawCallerSite, type RawRef, type RawRelation, type RenderScipOptions, type RepoMapOptions, type RepoScan, type Resolution, type ResolveContext, type ResolvedRelation, type RiskHotspot, type RuleSeverity, type RuleViolation, SCHEMA_VERSION, type ScanOptions, type ScanSummary, type SearchHit, type SearchOptions, type SearchResult, type SemanticSearchOptions, type SemanticSearchResult, type ShResult, type StaticEmbedModel, type SurpriseEdge, type SymbolComplexity, type SymbolEdge, type SymbolEdgeKind, type SymbolGraph, type SymbolIndex, type SymbolMatch, type SymbolNode, type SymbolReferences, type TagDefinition, type TagsQueryStatus, type TermDiagnostic, type TestMap, type Tier, type TypeHierarchyEntry, type WalkOptions, type WalkResult, type WalkedFile, type WarmGrammarsOptions, type WarmGrammarsResult, type WorkspaceInfo, type WorkspaceKind, type WorkspacePackage, agreementOf, allGrammarKeys, applyCentrality, basicTokenize, betweennessOf, buildArtifactsFromScan, buildCallerIndex, buildCodeRecord, buildEmbeddingIndex, buildEndpointIndex, buildGraph, buildIndexArtifacts, buildModules, buildRawCallerIndex, buildResolveContext, buildSymbolGraph, buildSymbolIndex, buildTypeHierarchy, byKey, byStr, categorize, changeCoupling, changedSince, checkRules, classify, clip, clipInline, columnOfSymbol, communityOf, compileGlobs, complexityOfSource, computeDelta, computeImportPairs, computeSurprises, computeSymbolRefs, computeTestMap, createFramer, deleteMemory, deltaFor, deserializeEmbeddings, detectCommunities, detectWorkspaces, diffFiles, diffHunks, embedEndpointUrl, embedViaEndpoint, embeddingUnits, enclosingSymbol, encode, encodeMessage, encodeQueryViaEndpoint, ensureGrammars, escapeRegExp, explainQuery, extToLang, extractAst, extractCode, extractGrammarsTarball, extractInParallel, extractMarkdown, extractSymbols, extractTags, extractTarInto, fetchExpectedSha256, fetchGrammarsTarball, fileUri, findDeadCode, findLiteralDuplications, findReferences, findSymbol, foldText, formatDeltaPanel, gitChurn, grammarKeyForExt, grammarKeysForExts, grammarReady, grepRepo, hasEmbedModel, have, headCommit, healthzUrl, hubThreshold, impactOf, implementationsOf, insertAfterSymbol, insertBeforeSymbol, intDot, isCode, isDoc, isGitWorktree, isIgnored, isSurprising, isTestFile, isTestPath, keptCodeFiles, keywords, languageOf, listMemories, loadEmbedModel, loadLspConfig, locationsToRefs, lspStatus, lspUnavailable, neighborhood, neighborsOf, onboardBrief, openLspSession, pagerankOf, parseGitignore, parseLspConfig, parseRules, preloadArtifacts, preloadSession, probeEndpoint, pullGrammars, quantize, rankHotspots, rankedKeywords, readMemory, readPersistedIndex, readText, referencesWithLsp, relFromUri, renderGraphJson, renderMermaid, renderMermaidClustered, renderRepoMap, renderScip, renderSymbolsJson, replaceSymbolBody, resolveBaseRef, resolveCallEdges, resolveDocLink, resolveEmbedEndpoint, resolveEmbedModelDir, resolveEmbedPullUrl, resolveGrammarsDir, resolveGrammarsPullTarget, resolveGrammarsTier, resolveImport, resolveLspConfigPath, resolveRelationEdges, resolveRelations, resolveUniqueSymbol, reverseClosure, rewriteCommand, riskHotspots, roundHalfToEven, rrf, runCli, runExtractWorker, runMcpServer, scanRepo, scanRepoParallel, scanSummary, searchIndex, searchSemantic, serializeEmbeddings, serverForLang, sh, sha1, sharedGrammarsCacheDir, shortHash, slugify, spawnLspTransport, subtokens, symbolComplexity, symbolId, symbolsInHunks, symbolsOverview, tagsQueryStatus, testsForModule, tierForPath, toCacheMap, tokenize, typeEntry, uniqueSymbolDefs, untestedModules, untrackedFiles, walk, warmGrammars, wordpiece, workerCount, writeMemory };
|