lurqrun 0.1.7 → 0.1.8
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/README.md +312 -148
- package/dist/{auditHandler-JCOJSUYW.js → auditHandler-VWCXSDVO.js} +12 -11
- package/dist/autopilotInit-Q62MX5M6.js +178 -0
- package/dist/bin/lurq.js +235 -83
- package/dist/{browserAuth-B6G27USY.js → browserAuth-J7APSD4P.js} +4 -3
- package/dist/{cache-DKI34SVS.js → cache-AEAKCV4I.js} +2 -2
- package/dist/check-2JTQDQA6.js +2613 -0
- package/dist/{check-2FDGUOV7.js → check-PQSQ2MMA.js} +1 -1
- package/dist/checkUpgrade-5YW77OBL.js +24 -0
- package/dist/{chunk-BCANRN5B.js → chunk-2GAYNIHG.js} +8 -1
- package/dist/{chunk-EA3DP5HG.js → chunk-2O6Z37IT.js} +155 -25
- package/dist/{chunk-J5FZYN4A.js → chunk-2WD4QAH4.js} +1 -1
- package/dist/{chunk-CUP36ND3.js → chunk-3676XOBU.js} +145 -36
- package/dist/chunk-3D2MPGOQ.js +181 -0
- package/dist/{chunk-LYMPYETA.js → chunk-4JHDSVIN.js} +270 -6
- package/dist/chunk-53SG6XWA.js +141 -0
- package/dist/chunk-5ABNDB3I.js +37 -0
- package/dist/chunk-5ALIJFDA.js +114 -0
- package/dist/{chunk-BULZAX2U.js → chunk-64ZF7KO4.js} +55 -38
- package/dist/{chunk-2VMOWSRY.js → chunk-6DM6UQFD.js} +19 -1
- package/dist/{chunk-HWBBVLOT.js → chunk-6L67QMCP.js} +1 -1
- package/dist/{chunk-GPTKSNR6.js → chunk-72Y2FDVS.js} +2 -1
- package/dist/{chunk-B43LCXBM.js → chunk-A3TYI2TF.js} +81 -16
- package/dist/{chunk-IQ4SDKKY.js → chunk-B2UUYRBX.js} +31 -228
- package/dist/{chunk-DB2VF5UD.js → chunk-BJT2LHAR.js} +16 -11
- package/dist/chunk-BM3LF5T6.js +132 -0
- package/dist/{chunk-3N3Q3DSW.js → chunk-BN3NM47Q.js} +8 -8
- package/dist/chunk-D3K6IZVR.js +12845 -0
- package/dist/{chunk-AHBP533R.js → chunk-D3VTZS7V.js} +7 -5
- package/dist/{chunk-UDVNA7EA.js → chunk-DM37MTOO.js} +161 -8
- package/dist/chunk-DONTW3NE.js +171 -0
- package/dist/{chunk-M6NYEXCW.js → chunk-DSROTZ3Z.js} +1 -1
- package/dist/{chunk-4F7ZESPO.js → chunk-EQCXENKZ.js} +3 -5
- package/dist/{chunk-CW5HJ3LX.js → chunk-EYAKM6YN.js} +1 -1
- package/dist/{chunk-VL2E5T2A.js → chunk-FDFPMBCA.js} +6 -3
- package/dist/{chunk-BV32UNLL.js → chunk-FVYFV5HA.js} +2 -2
- package/dist/{chunk-DWAGCNEL.js → chunk-GM5Y555O.js} +36 -103
- package/dist/{chunk-PSX3GIAN.js → chunk-HWFX4BC4.js} +2 -1
- package/dist/chunk-IFNONGRQ.js +603 -0
- package/dist/chunk-J3U2CPSK.js +136 -0
- package/dist/{chunk-Y5GI7RL3.js → chunk-J6XQ7OPZ.js} +9 -1
- package/dist/{chunk-LBFGSSF2.js → chunk-KMV4Y6R3.js} +2 -1
- package/dist/{chunk-L6N4JFW2.js → chunk-KP5ZDDPE.js} +81 -4
- package/dist/{chunk-SJOVFF7B.js → chunk-KYKSZ3XZ.js} +3 -2
- package/dist/chunk-NEZNAPPN.js +41 -0
- package/dist/{chunk-NH5I4KHH.js → chunk-NPVN2THM.js} +1 -5
- package/dist/{chunk-6L3U7DZ5.js → chunk-NYZU5NCW.js} +1 -1
- package/dist/chunk-O4KHCV6I.js +320 -0
- package/dist/{chunk-LO35HLQZ.js → chunk-ONDVTXUO.js} +25 -4
- package/dist/{chunk-4ZYCIMY4.js → chunk-OTJFHESY.js} +25 -4
- package/dist/chunk-P6MIKSPY.js +243 -0
- package/dist/{checkUpgrade-F2WESBPM.js → chunk-QCRBX3LV.js} +72 -10
- package/dist/{chunk-LRD4GBYE.js → chunk-QUIMQ7YL.js} +1 -1
- package/dist/chunk-RG3YLU6E.js +49 -0
- package/dist/{chunk-ST2X2GYN.js → chunk-SHZFOSXC.js} +109 -20
- package/dist/{chunk-CIDWNUAP.js → chunk-SOXFMMXC.js} +8 -2
- package/dist/chunk-TDTYV6QI.js +119 -0
- package/dist/{chunk-FW6BD2NO.js → chunk-TUXQ32WE.js} +457 -121
- package/dist/{chunk-WQ23REYT.js → chunk-VGCDRK3S.js} +1 -1
- package/dist/{chunk-U5AT3TD4.js → chunk-X4W64MHU.js} +1735 -1858
- package/dist/chunk-XBQA4I36.js +92 -0
- package/dist/chunk-XGOV6KV4.js +413 -0
- package/dist/{chunk-OQS4GUSI.js → chunk-XIFQIFSZ.js} +210 -661
- package/dist/{chunk-XBIDMHSK.js → chunk-XLXPVN3Y.js} +2 -34
- package/dist/chunk-ZJMLQ37G.js +90 -0
- package/dist/{client-IRKAMDYZ.js → client-MU4EUDZV.js} +3 -3
- package/dist/{commands-FIL5ET6P.js → commands-UOOTMBKA.js} +145 -33
- package/dist/{compat-R3UTFQ5Q.js → compat-Q5DVPITN.js} +6 -6
- package/dist/constants-DJFOFZ44.js +24 -0
- package/dist/{dashboardIssue-WYYMBFIB.js → dashboardIssue-KBKLQMGC.js} +105 -23
- package/dist/{diff-GZA2774U.js → diff-I4SNUHU3.js} +1 -1
- package/dist/domains-VRT4BRVZ.js +14 -0
- package/dist/env-UN6KGZ7S.js +15 -0
- package/dist/envCheck-KUPTORFQ.js +71 -0
- package/dist/{extract-NKGKLIVT.js → extract-6WG265BL.js} +14 -3
- package/dist/{fetch-QYTUJVG2.js → fetch-PJ3SC32M.js} +4 -4
- package/dist/{firstTouch-QQTJH4QX.js → firstTouch-COJCMOB3.js} +1 -1
- package/dist/fix-3EDWNKW3.js +220 -0
- package/dist/{handlers-GEJAVZDK.js → handlers-4Q37WIFT.js} +19 -17
- package/dist/hook-NA66XJLC.js +412 -0
- package/dist/{http-ETPYMBGD.js → http-25GJ6SKK.js} +2078 -510
- package/dist/{ingestQueue-VKN4KBIF.js → ingestQueue-FSVJC3AA.js} +14 -12
- package/dist/{install-EK3W2COX.js → install-G2HHXYJ2.js} +6 -6
- package/dist/{installSkill-VQJWJVCL.js → installSkill-5TIMYIJZ.js} +21 -3
- package/dist/manifest-ENMIC54B.js +13 -0
- package/dist/{mcp-3JHD5SUZ.js → mcp-PENLL2PK.js} +60 -32
- package/dist/mcpConfig-3LYPRY5Q.js +80 -0
- package/dist/{mcpHandlers-QFN4MCFL.js → mcpHandlers-PO7GENA7.js} +7 -7
- package/dist/{mcpScan-QZHWENIP.js → mcpScan-ULP626TQ.js} +306 -442
- package/dist/{mcpScanWorkflow-JPYCBGC4.js → mcpScanWorkflow-27O44FOE.js} +29 -12
- package/dist/{mcpStack-BYJCZNIV.js → mcpStack-ZNYIFXZ5.js} +1 -1
- package/dist/model-ASMZWLM7.js +214 -0
- package/dist/{packages-THVFMWFP.js → packages-RWF2LXST.js} +3 -5
- package/dist/{plan-V4OEI3J4.js → plan-SDILIDZT.js} +23 -21
- package/dist/{planView-JRXGCG2N.js → planView-ZAKRTGVS.js} +4 -1
- package/dist/{policy-3P6BGRDN.js → policy-JAGNMQJI.js} +5 -5
- package/dist/probe-3IK646WN.js +610 -0
- package/dist/publicUpgrades-WTBGLDIK.js +42 -0
- package/dist/{references-6N7VEPHT.js → references-I6Y4BSRR.js} +3 -1
- package/dist/{release-4U4ABNSJ.js → release-7IU2R4YG.js} +5 -5
- package/dist/{remote-YGCXYI4V.js → remote-FN6225AH.js} +13 -3
- package/dist/rename-OS6JYBZQ.js +204 -0
- package/dist/{reportRuns-CKQQYLY4.js → reportRuns-O4X7ZFTX.js} +15 -2
- package/dist/safeFetch-COERXGFN.js +19 -0
- package/dist/{sandbox-MEZLAODF.js → sandbox-SAPSRKEI.js} +4 -4
- package/dist/sarif-WLVJFJ7U.js +125 -0
- package/dist/server-OLTY3NYT.js +59 -0
- package/dist/{surface-V62GE554.js → surface-7MHE3RL7.js} +18 -16
- package/dist/{surface-YL6O67W3.js → surface-JS2XU3U3.js} +5 -3
- package/dist/{surfaceHandlers-X2IZKA3E.js → surfaceHandlers-4B6TMZ34.js} +5 -5
- package/dist/{typecheck-X7U5ELMR.js → typecheck-NGOKNAJY.js} +23 -9
- package/dist/{uninstall-P7RGBX6G.js → uninstall-I2IJP5JZ.js} +30 -4
- package/dist/{upgrade-NQ5IWFZB.js → upgrade-FS26DJGG.js} +86 -32
- package/dist/{upgradePlan-A4LRKLEG.js → upgradePlan-ZS5IOVMZ.js} +46 -11
- package/dist/upkeepHandler-VFGYXJKB.js +13 -0
- package/dist/{userConfig-Z3GQE776.js → userConfig-ICASHI47.js} +1 -1
- package/dist/{watch-DGFMWUDL.js → watch-OCNEUXG6.js} +24 -34
- package/package.json +3 -2
- package/templates/skill-instructions.md +22 -3
- package/dist/chunk-6AAEVQ7I.js +0 -6336
- package/dist/chunk-I2JUKN6Z.js +0 -24
- package/dist/server-KFUD5X57.js +0 -55
|
@@ -0,0 +1,132 @@
|
|
|
1
|
+
import { createRequire as __lurqCreateRequire } from 'node:module'; const require = __lurqCreateRequire(import.meta.url);
|
|
2
|
+
import {
|
|
3
|
+
init_esm_shims
|
|
4
|
+
} from "./chunk-I3M2KJXB.js";
|
|
5
|
+
|
|
6
|
+
// src/fix/types.ts
|
|
7
|
+
init_esm_shims();
|
|
8
|
+
var deterministic = (f) => Boolean(f.fix?.edits?.length);
|
|
9
|
+
function applyEdits(contents, edits) {
|
|
10
|
+
const sorted = [...edits].sort((a, b) => a.start - b.start);
|
|
11
|
+
for (let i = 1; i < sorted.length; i++) {
|
|
12
|
+
if (sorted[i].start < sorted[i - 1].end) {
|
|
13
|
+
throw new Error(
|
|
14
|
+
`overlapping edits at ${sorted[i - 1].start}-${sorted[i - 1].end} and ${sorted[i].start}-${sorted[i].end}`
|
|
15
|
+
);
|
|
16
|
+
}
|
|
17
|
+
}
|
|
18
|
+
let out = contents;
|
|
19
|
+
for (const e of [...sorted].reverse()) {
|
|
20
|
+
if (e.start < 0 || e.end > out.length || e.end < e.start) {
|
|
21
|
+
throw new Error(`edit out of range: ${e.start}-${e.end} in ${e.file} (${out.length} chars)`);
|
|
22
|
+
}
|
|
23
|
+
const found = out.slice(e.start, e.end);
|
|
24
|
+
if (e.was !== void 0 && found !== e.was) {
|
|
25
|
+
throw new Error(
|
|
26
|
+
`${e.file} changed since it was read: expected ${JSON.stringify(e.was)} at ${e.start}-${e.end}, found ${JSON.stringify(found)}`
|
|
27
|
+
);
|
|
28
|
+
}
|
|
29
|
+
out = out.slice(0, e.start) + e.text + out.slice(e.end);
|
|
30
|
+
}
|
|
31
|
+
return out;
|
|
32
|
+
}
|
|
33
|
+
function editsByFile(findings) {
|
|
34
|
+
const byFile = /* @__PURE__ */ new Map();
|
|
35
|
+
for (const f of findings) {
|
|
36
|
+
for (const e of f.fix?.edits ?? []) {
|
|
37
|
+
const list = byFile.get(e.file);
|
|
38
|
+
if (list) list.push(e);
|
|
39
|
+
else byFile.set(e.file, [e]);
|
|
40
|
+
}
|
|
41
|
+
}
|
|
42
|
+
return byFile;
|
|
43
|
+
}
|
|
44
|
+
|
|
45
|
+
// src/fix/diff.ts
|
|
46
|
+
init_esm_shims();
|
|
47
|
+
var CONTEXT = 3;
|
|
48
|
+
var NO_EOL = "\\n";
|
|
49
|
+
function lineStarts(text) {
|
|
50
|
+
const starts = [0];
|
|
51
|
+
for (let i = 0; i < text.length; i++) if (text[i] === "\n") starts.push(i + 1);
|
|
52
|
+
return starts;
|
|
53
|
+
}
|
|
54
|
+
function lineOf(starts, offset) {
|
|
55
|
+
let lo = 0;
|
|
56
|
+
let hi = starts.length - 1;
|
|
57
|
+
while (lo < hi) {
|
|
58
|
+
const mid = lo + hi + 1 >> 1;
|
|
59
|
+
if (starts[mid] <= offset) lo = mid;
|
|
60
|
+
else hi = mid - 1;
|
|
61
|
+
}
|
|
62
|
+
return lo;
|
|
63
|
+
}
|
|
64
|
+
function positionAt(text, offset) {
|
|
65
|
+
const starts = lineStarts(text);
|
|
66
|
+
const line = lineOf(starts, Math.max(0, Math.min(offset, text.length)));
|
|
67
|
+
return { line: line + 1, column: offset - starts[line] + 1 };
|
|
68
|
+
}
|
|
69
|
+
function hunksFor(edits, starts) {
|
|
70
|
+
const hunks = [];
|
|
71
|
+
for (const e of [...edits].sort((a, b) => a.start - b.start)) {
|
|
72
|
+
const firstLine = lineOf(starts, e.start);
|
|
73
|
+
const lastLine = lineOf(starts, Math.max(e.start, e.end - 1));
|
|
74
|
+
const open = hunks[hunks.length - 1];
|
|
75
|
+
if (open && firstLine - open.lastLine <= CONTEXT * 2 + 1) {
|
|
76
|
+
open.edits.push(e);
|
|
77
|
+
open.lastLine = Math.max(open.lastLine, lastLine);
|
|
78
|
+
} else {
|
|
79
|
+
hunks.push({ edits: [e], firstLine, lastLine });
|
|
80
|
+
}
|
|
81
|
+
}
|
|
82
|
+
return hunks;
|
|
83
|
+
}
|
|
84
|
+
function unifiedDiff(file, before, edits) {
|
|
85
|
+
if (edits.length === 0) return "";
|
|
86
|
+
const starts = lineStarts(before);
|
|
87
|
+
const lines = before.split("\n");
|
|
88
|
+
const lastRealLine = before.endsWith("\n") ? lines.length - 2 : lines.length - 1;
|
|
89
|
+
let out = `--- a/${file}
|
|
90
|
+
+++ b/${file}
|
|
91
|
+
`;
|
|
92
|
+
let delta = 0;
|
|
93
|
+
for (const hunk of hunksFor(edits, starts)) {
|
|
94
|
+
const from = Math.max(0, hunk.firstLine - CONTEXT);
|
|
95
|
+
const to = Math.min(lastRealLine, hunk.lastLine + CONTEXT);
|
|
96
|
+
const sliceStart = starts[from];
|
|
97
|
+
const sliceEnd = to + 1 < starts.length ? starts[to + 1] - 1 : before.length;
|
|
98
|
+
const oldText = before.slice(sliceStart, sliceEnd);
|
|
99
|
+
const newText = applyEdits(
|
|
100
|
+
oldText,
|
|
101
|
+
hunk.edits.map((e) => ({ ...e, start: e.start - sliceStart, end: e.end - sliceStart }))
|
|
102
|
+
);
|
|
103
|
+
const oldLines = oldText.split("\n");
|
|
104
|
+
const newLines = newText.split("\n");
|
|
105
|
+
const head = hunk.firstLine - from;
|
|
106
|
+
const tail = to - hunk.lastLine;
|
|
107
|
+
const atEOF = to === lastRealLine && !before.endsWith("\n");
|
|
108
|
+
out += `@@ -${from + 1},${oldLines.length} +${from + 1 + delta},${newLines.length} @@
|
|
109
|
+
`;
|
|
110
|
+
for (let i = 0; i < head; i++) out += ` ${oldLines[i]}
|
|
111
|
+
`;
|
|
112
|
+
for (let i = head; i < oldLines.length - tail; i++) out += `-${oldLines[i]}
|
|
113
|
+
`;
|
|
114
|
+
if (atEOF && tail === 0) out += NO_EOL;
|
|
115
|
+
for (let i = head; i < newLines.length - tail; i++) out += `+${newLines[i]}
|
|
116
|
+
`;
|
|
117
|
+
if (atEOF && tail === 0) out += NO_EOL;
|
|
118
|
+
for (let i = tail; i > 0; i--) out += ` ${oldLines[oldLines.length - i]}
|
|
119
|
+
`;
|
|
120
|
+
if (atEOF && tail > 0) out += NO_EOL;
|
|
121
|
+
delta += newLines.length - oldLines.length;
|
|
122
|
+
}
|
|
123
|
+
return out;
|
|
124
|
+
}
|
|
125
|
+
|
|
126
|
+
export {
|
|
127
|
+
deterministic,
|
|
128
|
+
applyEdits,
|
|
129
|
+
editsByFile,
|
|
130
|
+
positionAt,
|
|
131
|
+
unifiedDiff
|
|
132
|
+
};
|
|
@@ -2,24 +2,24 @@ import { createRequire as __lurqCreateRequire } from 'node:module'; const requir
|
|
|
2
2
|
import {
|
|
3
3
|
loadStored,
|
|
4
4
|
rowsToSurface
|
|
5
|
-
} from "./chunk-
|
|
6
|
-
import {
|
|
7
|
-
configRequestLine,
|
|
8
|
-
fetchServerManifest,
|
|
9
|
-
missingConfig
|
|
10
|
-
} from "./chunk-LEGPB7DO.js";
|
|
5
|
+
} from "./chunk-BJT2LHAR.js";
|
|
11
6
|
import {
|
|
12
7
|
MCP_TIER,
|
|
13
8
|
contractOf,
|
|
14
9
|
diffMcpSurfaces,
|
|
15
10
|
summarizeDrift
|
|
16
11
|
} from "./chunk-6EQ3ARXA.js";
|
|
12
|
+
import {
|
|
13
|
+
configRequestLine,
|
|
14
|
+
fetchServerManifest,
|
|
15
|
+
missingConfig
|
|
16
|
+
} from "./chunk-LEGPB7DO.js";
|
|
17
17
|
import {
|
|
18
18
|
enqueueSurface
|
|
19
|
-
} from "./chunk-
|
|
19
|
+
} from "./chunk-ONDVTXUO.js";
|
|
20
20
|
import {
|
|
21
21
|
cached
|
|
22
|
-
} from "./chunk-
|
|
22
|
+
} from "./chunk-6L67QMCP.js";
|
|
23
23
|
import {
|
|
24
24
|
init_esm_shims
|
|
25
25
|
} from "./chunk-I3M2KJXB.js";
|