lurqrun 0.0.6 → 0.0.7

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/index.d.ts CHANGED
@@ -71,6 +71,35 @@ interface CompatConflict {
71
71
  /** The packages involved in the conflict. */
72
72
  packages: string[];
73
73
  detail: string;
74
+ /** The same fact as `detail`, structured, so a consumer can lay it out without
75
+ * parsing prose. Present on peer-range violations; absent for engine and
76
+ * sandbox conflicts, which aren't about a single declared range. */
77
+ requirement?: {
78
+ /** The peer being asked for. */
79
+ peer: string;
80
+ /** The range the requirer declares. */
81
+ range: string;
82
+ /** What the set actually resolves that peer to, when it is in the set. */
83
+ resolved: string | null;
84
+ };
85
+ }
86
+ /**
87
+ * One unordered pair among the checked members.
88
+ *
89
+ * A verdict belongs to a pair, not to a package: the same package can sit in a
90
+ * held pair and a conflicting one, so grading packages would either contradict
91
+ * itself or paint the whole set red. `held` means no declared constraint between
92
+ * the two was violated — it does not mean the pair was executed. Nothing here
93
+ * has been executed.
94
+ */
95
+ interface CompatPair {
96
+ a: string;
97
+ b: string;
98
+ status: 'held' | 'conflict';
99
+ /** Only on `conflict` — the conflict's own detail string. */
100
+ detail?: string;
101
+ /** Only on `conflict`, and only for peer-range violations. */
102
+ requirement?: CompatConflict['requirement'];
74
103
  }
75
104
  /** One stored compat edge surfaced to agents, with its evidence class (§4B). */
76
105
  interface CompatEvidence {
@@ -78,7 +107,11 @@ interface CompatEvidence {
78
107
  versions: [string, string];
79
108
  status: CompatStatus;
80
109
  provenance: CompatProvenance;
81
- /** Distinct resolved graphs an `observed` edge was witnessed in (0 otherwise). */
110
+ /** Distinct resolved graphs an `observed` edge was witnessed in (0 otherwise).
111
+ * Only a newly-fetched closure accrues one; the daily re-mine re-reads closures
112
+ * it has already counted and deliberately does not. NOTE: rows minted before
113
+ * that fix carry an inflated count (one per sync run, ~16× on average) and are
114
+ * only corrected by a backfill, which has not been run. */
82
115
  witnessCount: number;
83
116
  }
84
117
  /**
@@ -106,6 +139,11 @@ interface CompatOutput {
106
139
  /** Stored edges among these packages with their evidence strength (§4B) — lets
107
140
  * agents (and metrics) see *why* a pair is called compatible, not just that. */
108
141
  evidence: CompatEvidence[];
142
+ /** Every unordered pair among `checked`, each with its own verdict — exactly
143
+ * n(n−1)/2 entries. `conflicts` lists only what went wrong; this lists what
144
+ * was compared, which is what lets a caller show coverage rather than just
145
+ * failures. */
146
+ pairs: CompatPair[];
109
147
  }
110
148
  /** Kind of an exported symbol, from its `.d.ts` declaration. */
111
149
  type ExportKind = 'function' | 'class' | 'interface' | 'type' | 'enum' | 'variable' | 'namespace' | 'unknown';
@@ -143,6 +181,10 @@ interface UsageOutput {
143
181
  * the README, which is already fetched). */
144
182
  surface: ExportSymbol[] | null;
145
183
  available: boolean;
184
+ /** Declared `engines` for this exact version (e.g. `{ node: ">=20" }`), or null
185
+ * when the manifest declares none. Independent of `available` — the runtime
186
+ * floor matters even for untyped packages. */
187
+ engines: Record<string, string> | null;
146
188
  /** Present when a `knownVersion` was supplied and both surfaces resolved. */
147
189
  delta?: SurfaceDelta & {
148
190
  fromVersion: string;
@@ -248,7 +290,7 @@ declare const SERVER_NAME = "lurq";
248
290
  * Keep in sync with package.json "name". */
249
291
  declare const PACKAGE_NAME = "lurqrun";
250
292
  /** Keep in sync with package.json "version". */
251
- declare const VERSION = "0.0.6";
293
+ declare const VERSION = "0.0.7";
252
294
  /** Default hosted endpoint the install wizard writes into agent configs. The
253
295
  * marketing site is `lurq.run`; the MCP service lives on the `api.` subdomain.
254
296
  * Overridable per-invocation with `lurq install --url …` or `LURQ_ENDPOINT`. */
@@ -293,6 +335,12 @@ declare const EnvSchema: z.ZodObject<{
293
335
  SUMMARY_MODEL: z.ZodDefault<z.ZodString>;
294
336
  SUMMARY_BASE_URL: z.ZodDefault<z.ZodString>;
295
337
  LURQ_SYNC_CONCURRENCY: z.ZodDefault<z.ZodNumber>;
338
+ /** Stalest non-seed packages the daily sync refreshes on top of the seed list.
339
+ * This is the rotation rate for everything discovery ingested: index size /
340
+ * this = days to come all the way around. Raise it if the sync finishes well
341
+ * inside the cron window; lower it if npm starts rate-limiting. 0 disables
342
+ * the rotation (seeds only, the pre-rotation behaviour). */
343
+ LURQ_SYNC_REFRESH_CAP: z.ZodDefault<z.ZodNumber>;
296
344
  LOG_LEVEL: z.ZodDefault<z.ZodEnum<["error", "warn", "info", "debug"]>>;
297
345
  PORT: z.ZodDefault<z.ZodNumber>;
298
346
  /** Per-API-key rate limit: max requests per window. */
@@ -307,6 +355,10 @@ declare const EnvSchema: z.ZodObject<{
307
355
  * authenticated web app presents it to mint a key for a signed-in user. Unset
308
356
  * → the endpoint is disabled (404). Keep it server-side, never in the client. */
309
357
  LURQ_ISSUER_SECRET: z.ZodOptional<z.ZodString>;
358
+ /** Numeric App ID from the GitHub App settings page. */
359
+ LURQ_GITHUB_APP_ID: z.ZodOptional<z.ZodString>;
360
+ /** PEM private key. Accepts literal newlines or `\n` escapes (Railway/Vercel). */
361
+ LURQ_GITHUB_APP_PRIVATE_KEY: z.ZodOptional<z.ZodString>;
310
362
  LURQ_ENDPOINT: z.ZodOptional<z.ZodString>;
311
363
  LURQ_API_KEY: z.ZodOptional<z.ZodString>;
312
364
  E2B_API_KEY: z.ZodOptional<z.ZodString>;
@@ -320,6 +372,7 @@ declare const EnvSchema: z.ZodObject<{
320
372
  SUMMARY_MODEL: string;
321
373
  SUMMARY_BASE_URL: string;
322
374
  LURQ_SYNC_CONCURRENCY: number;
375
+ LURQ_SYNC_REFRESH_CAP: number;
323
376
  LOG_LEVEL: "info" | "error" | "warn" | "debug";
324
377
  PORT: number;
325
378
  LURQ_RATE_LIMIT_MAX: number;
@@ -331,6 +384,8 @@ declare const EnvSchema: z.ZodObject<{
331
384
  SUMMARY_API_KEY?: string | undefined;
332
385
  LURQ_METRICS_TOKEN?: string | undefined;
333
386
  LURQ_ISSUER_SECRET?: string | undefined;
387
+ LURQ_GITHUB_APP_ID?: string | undefined;
388
+ LURQ_GITHUB_APP_PRIVATE_KEY?: string | undefined;
334
389
  LURQ_ENDPOINT?: string | undefined;
335
390
  LURQ_API_KEY?: string | undefined;
336
391
  E2B_API_KEY?: string | undefined;
@@ -348,6 +403,7 @@ declare const EnvSchema: z.ZodObject<{
348
403
  SUMMARY_MODEL?: string | undefined;
349
404
  SUMMARY_BASE_URL?: string | undefined;
350
405
  LURQ_SYNC_CONCURRENCY?: number | undefined;
406
+ LURQ_SYNC_REFRESH_CAP?: number | undefined;
351
407
  LOG_LEVEL?: "info" | "error" | "warn" | "debug" | undefined;
352
408
  PORT?: number | undefined;
353
409
  LURQ_RATE_LIMIT_MAX?: number | undefined;
@@ -355,6 +411,8 @@ declare const EnvSchema: z.ZodObject<{
355
411
  LURQ_RATE_LIMIT_WINDOW_MS?: number | undefined;
356
412
  LURQ_METRICS_TOKEN?: string | undefined;
357
413
  LURQ_ISSUER_SECRET?: string | undefined;
414
+ LURQ_GITHUB_APP_ID?: string | undefined;
415
+ LURQ_GITHUB_APP_PRIVATE_KEY?: string | undefined;
358
416
  LURQ_ENDPOINT?: string | undefined;
359
417
  LURQ_API_KEY?: string | undefined;
360
418
  E2B_API_KEY?: string | undefined;
@@ -390,4 +448,4 @@ declare const logger: {
390
448
 
391
449
  declare function buildProgram(): Command;
392
450
 
393
- export { API_KEY_PREFIX, type Advisory, type AdvisorySeverity, type BuildSignal, type BuildVerified, CACHE_TTL, CATEGORIES, type Candidate, type Category, type CategorySource, type CompatConflict, type CompatEvidence, type CompatOutput, type CompatProvenance, type CompatStatus, type Confidence, type Config, ConfigError, DEFAULT_ENDPOINT, type DependencyRanges, type DiscoverySource, type DiscoveryStatus, EMBEDDING_DIM, type EvaluateOutput, type ExportKind, type ExportSymbol, FRONTEND_CATEGORIES, PACKAGE_NAME, PROVENANCE_RANK, type PeerMeta, type RiskLevel, type Runtime, SERVER_NAME, STALENESS_DAYS, type ScoreBreakdown, type SurfaceDelta, type UsageGuide, type UsageOutput, VERSION, type VerifyOutput, buildProgram, getConfig, isCategory, isFrontendCategory, loadEnv, logger, requireConfig };
451
+ export { API_KEY_PREFIX, type Advisory, type AdvisorySeverity, type BuildSignal, type BuildVerified, CACHE_TTL, CATEGORIES, type Candidate, type Category, type CategorySource, type CompatConflict, type CompatEvidence, type CompatOutput, type CompatPair, type CompatProvenance, type CompatStatus, type Confidence, type Config, ConfigError, DEFAULT_ENDPOINT, type DependencyRanges, type DiscoverySource, type DiscoveryStatus, EMBEDDING_DIM, type EvaluateOutput, type ExportKind, type ExportSymbol, FRONTEND_CATEGORIES, PACKAGE_NAME, PROVENANCE_RANK, type PeerMeta, type RiskLevel, type Runtime, SERVER_NAME, STALENESS_DAYS, type ScoreBreakdown, type SurfaceDelta, type UsageGuide, type UsageOutput, VERSION, type VerifyOutput, buildProgram, getConfig, isCategory, isFrontendCategory, loadEnv, logger, requireConfig };