@nodesify/astria 1.1.1 → 1.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/README.md +47 -5
- package/dist/commands/change-review.d.ts +73 -0
- package/dist/commands/change-review.d.ts.map +1 -0
- package/dist/commands/change-review.js +15 -0
- package/dist/commands/change-review.js.map +1 -0
- package/dist/commands/doctor.d.ts +6 -0
- package/dist/commands/doctor.d.ts.map +1 -0
- package/dist/commands/doctor.js +139 -0
- package/dist/commands/doctor.js.map +1 -0
- package/dist/commands/global.d.ts.map +1 -1
- package/dist/commands/global.js +3 -1
- package/dist/commands/global.js.map +1 -1
- package/dist/commands/hook-guard.d.ts +20 -0
- package/dist/commands/hook-guard.d.ts.map +1 -1
- package/dist/commands/hook-guard.js +301 -6
- package/dist/commands/hook-guard.js.map +1 -1
- package/dist/commands/hook.js +1 -1
- package/dist/commands/hook.js.map +1 -1
- package/dist/commands/indexing-profile.d.ts +14 -0
- package/dist/commands/indexing-profile.d.ts.map +1 -0
- package/dist/commands/indexing-profile.js +74 -0
- package/dist/commands/indexing-profile.js.map +1 -0
- package/dist/commands/install.d.ts.map +1 -1
- package/dist/commands/install.js +52 -53
- package/dist/commands/install.js.map +1 -1
- package/dist/commands/merge-driver.d.ts.map +1 -1
- package/dist/commands/merge-driver.js +23 -11
- package/dist/commands/merge-driver.js.map +1 -1
- package/dist/commands/merge-gate.d.ts.map +1 -1
- package/dist/commands/merge-gate.js +10 -7
- package/dist/commands/merge-gate.js.map +1 -1
- package/dist/commands/prs.d.ts.map +1 -1
- package/dist/commands/prs.js +139 -278
- package/dist/commands/prs.js.map +1 -1
- package/dist/commands/query.d.ts +1 -0
- package/dist/commands/query.d.ts.map +1 -1
- package/dist/commands/query.js +17 -4
- package/dist/commands/query.js.map +1 -1
- package/dist/commands/risk.d.ts +2 -3
- package/dist/commands/risk.d.ts.map +1 -1
- package/dist/commands/risk.js +5 -12
- package/dist/commands/risk.js.map +1 -1
- package/dist/commands/run.d.ts.map +1 -1
- package/dist/commands/run.js +2 -9
- package/dist/commands/run.js.map +1 -1
- package/dist/commands/stats.d.ts.map +1 -1
- package/dist/commands/stats.js +6 -0
- package/dist/commands/stats.js.map +1 -1
- package/dist/commands/status.d.ts.map +1 -1
- package/dist/commands/status.js +45 -100
- package/dist/commands/status.js.map +1 -1
- package/dist/commands/update.d.ts +3 -1
- package/dist/commands/update.d.ts.map +1 -1
- package/dist/commands/update.js +3 -10
- package/dist/commands/update.js.map +1 -1
- package/dist/commands/watch.d.ts +1 -0
- package/dist/commands/watch.d.ts.map +1 -1
- package/dist/commands/watch.js +64 -21
- package/dist/commands/watch.js.map +1 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +22 -4
- package/dist/index.js.map +1 -1
- package/dist/install/atomic.d.ts +3 -0
- package/dist/install/atomic.d.ts.map +1 -1
- package/dist/install/atomic.js +59 -20
- package/dist/install/atomic.js.map +1 -1
- package/dist/install/hooks.d.ts +2 -2
- package/dist/install/hooks.d.ts.map +1 -1
- package/dist/install/hooks.js +48 -3
- package/dist/install/hooks.js.map +1 -1
- package/dist/install/index.d.ts +5 -3
- package/dist/install/index.d.ts.map +1 -1
- package/dist/install/index.js +173 -222
- package/dist/install/index.js.map +1 -1
- package/dist/install/platforms.d.ts +2 -3
- package/dist/install/platforms.d.ts.map +1 -1
- package/dist/install/platforms.js +1 -4
- package/dist/install/platforms.js.map +1 -1
- package/dist/install/settings-inject.d.ts +11 -4
- package/dist/install/settings-inject.d.ts.map +1 -1
- package/dist/install/settings-inject.js +60 -37
- package/dist/install/settings-inject.js.map +1 -1
- package/dist/install/state.d.ts +12 -0
- package/dist/install/state.d.ts.map +1 -0
- package/dist/install/state.js +85 -0
- package/dist/install/state.js.map +1 -0
- package/dist/native.d.ts +3 -0
- package/dist/native.d.ts.map +1 -1
- package/dist/native.js +22 -18
- package/dist/native.js.map +1 -1
- package/package.json +11 -8
- package/skills/skill.md +19 -3
package/dist/commands/install.js
CHANGED
|
@@ -3,71 +3,70 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
3
3
|
exports.registerInstallCommand = registerInstallCommand;
|
|
4
4
|
const index_1 = require("../install/index");
|
|
5
5
|
const platforms_1 = require("../install/platforms");
|
|
6
|
+
const state_1 = require("../install/state");
|
|
7
|
+
const hooks_1 = require("../install/hooks");
|
|
8
|
+
const merge_driver_1 = require("./merge-driver");
|
|
9
|
+
function report(work) {
|
|
10
|
+
try {
|
|
11
|
+
for (const message of work())
|
|
12
|
+
console.log(message);
|
|
13
|
+
return true;
|
|
14
|
+
}
|
|
15
|
+
catch (error) {
|
|
16
|
+
console.error(`Failed: ${error.message || error}`);
|
|
17
|
+
process.exitCode = 1;
|
|
18
|
+
return false;
|
|
19
|
+
}
|
|
20
|
+
}
|
|
6
21
|
function registerInstallCommand(program) {
|
|
7
|
-
program
|
|
8
|
-
.
|
|
9
|
-
.description(`Install astria skill + MCP for an AI platform (${platforms_1.PLATFORM_NAMES.join(', ')}) or all of them`)
|
|
22
|
+
program.command('install')
|
|
23
|
+
.description('Install Astria integrations in this project, or explicitly for the user')
|
|
10
24
|
.option('--platform <name>', `Platform: ${platforms_1.PLATFORM_NAMES.join(', ')}`, 'claude')
|
|
11
|
-
.option('--
|
|
12
|
-
.
|
|
25
|
+
.option('--scope <scope>', 'project or user', 'project')
|
|
26
|
+
.option('--all', 'Install for every supported project platform')
|
|
27
|
+
.action((opts) => {
|
|
13
28
|
try {
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
}
|
|
20
|
-
return;
|
|
21
|
-
}
|
|
22
|
-
const results = (0, index_1.installPlatform)(opts.platform, process.cwd());
|
|
23
|
-
for (const msg of results) {
|
|
24
|
-
console.log(msg);
|
|
29
|
+
const scope = (0, state_1.parseScope)(opts.scope);
|
|
30
|
+
if (opts.all && scope === 'user')
|
|
31
|
+
throw new Error('Choose one platform for --scope user; --all is project-only.');
|
|
32
|
+
for (const platform of opts.all ? platforms_1.PLATFORM_NAMES : [opts.platform]) {
|
|
33
|
+
report(() => (0, index_1.installPlatform)(platform, process.cwd(), scope));
|
|
25
34
|
}
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
if (opts.platform !== 'claude')
|
|
29
|
-
return;
|
|
30
|
-
const others = platforms_1.PLATFORM_NAMES.filter((p) => p !== 'claude');
|
|
31
|
-
console.log(`\nOther supported platforms: ${others.join(', ')}`);
|
|
32
|
-
console.log('Install for all of them with: astria install --all');
|
|
35
|
+
if (!process.exitCode)
|
|
36
|
+
console.log('Integration setup complete. Restart your assistant/MCP server, then run astria doctor.');
|
|
33
37
|
}
|
|
34
|
-
catch (
|
|
35
|
-
console.error(
|
|
38
|
+
catch (error) {
|
|
39
|
+
console.error(error.message);
|
|
36
40
|
process.exitCode = 1;
|
|
37
41
|
}
|
|
38
42
|
});
|
|
39
|
-
program
|
|
40
|
-
.
|
|
41
|
-
.description('Uninstall astria skill for an AI platform (--purge removes everything: hooks, merge driver, graph data, global store)')
|
|
43
|
+
program.command('uninstall')
|
|
44
|
+
.description('Remove scoped integrations; data is kept unless separately selected for deletion')
|
|
42
45
|
.option('--platform <name>', `Platform: ${platforms_1.PLATFORM_NAMES.join(', ')}`, 'claude')
|
|
43
|
-
.option('--
|
|
44
|
-
.option('--
|
|
45
|
-
.
|
|
46
|
+
.option('--scope <scope>', 'project or user', 'project')
|
|
47
|
+
.option('--all', 'Remove every recorded integration in the selected scope')
|
|
48
|
+
.option('--purge-project', 'Also remove this project graph, git hooks and merge-driver wiring')
|
|
49
|
+
.option('--purge-global', 'Also delete the user-wide cross-repository store')
|
|
50
|
+
.action((opts) => {
|
|
46
51
|
try {
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
for (const msg of (0, index_1.uninstallPlatform)(platform, process.cwd())) {
|
|
59
|
-
console.log(msg);
|
|
60
|
-
}
|
|
61
|
-
}
|
|
62
|
-
return;
|
|
63
|
-
}
|
|
64
|
-
const results = (0, index_1.uninstallPlatform)(opts.platform, process.cwd());
|
|
65
|
-
for (const msg of results) {
|
|
66
|
-
console.log(msg);
|
|
52
|
+
const scope = (0, state_1.parseScope)(opts.scope);
|
|
53
|
+
const platforms = opts.all ? (0, state_1.readInstallState)(process.cwd(), scope).platforms : [opts.platform];
|
|
54
|
+
let complete = true;
|
|
55
|
+
for (const platform of platforms)
|
|
56
|
+
complete = report(() => (0, index_1.uninstallPlatform)(platform, process.cwd(), scope)) && complete;
|
|
57
|
+
if (opts.purgeProject) {
|
|
58
|
+
complete = report(() => (0, hooks_1.uninstallGitHooks)(process.cwd())) && complete;
|
|
59
|
+
complete = report(() => (0, merge_driver_1.mergeDriverUninstall)(process.cwd())) && complete;
|
|
60
|
+
// Retain data when integration removal failed, so recovery remains possible.
|
|
61
|
+
if (complete)
|
|
62
|
+
complete = report(() => (0, index_1.purgeData)(process.cwd(), false));
|
|
67
63
|
}
|
|
64
|
+
if (opts.purgeGlobal && complete)
|
|
65
|
+
complete = report(() => (0, index_1.purgeData)(process.cwd(), true));
|
|
66
|
+
console.log(complete ? 'Selected cleanup completed. The npm package remains installed; see the lifecycle guide for package removal.' : 'Cleanup incomplete. Resolve the failures above and retry; remaining graph data was retained.');
|
|
68
67
|
}
|
|
69
|
-
catch (
|
|
70
|
-
console.error(
|
|
68
|
+
catch (error) {
|
|
69
|
+
console.error(error.message);
|
|
71
70
|
process.exitCode = 1;
|
|
72
71
|
}
|
|
73
72
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"install.js","sourceRoot":"","sources":["../../src/commands/install.ts"],"names":[],"mappings":";;;AACA,
|
|
1
|
+
{"version":3,"file":"install.js","sourceRoot":"","sources":["../../src/commands/install.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"merge-driver.d.ts","sourceRoot":"","sources":["../../src/commands/merge-driver.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"merge-driver.d.ts","sourceRoot":"","sources":["../../src/commands/merge-driver.ts"],"names":[],"mappings":"AAuBA,KAAK,IAAI,GAAG,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;AAuChC,wBAAgB,aAAa,CAC3B,WAAW,EAAE,IAAI,EAAE,EACnB,WAAW,EAAE,IAAI,EAAE,EACnB,aAAa,EAAE,IAAI,EAAE,EACrB,KAAK,EAAE,CAAC,KAAK,EAAE,IAAI,KAAK,MAAM,GAC7B,IAAI,EAAE,CAuBR;AAgCD,wBAAgB,cAAc,CAAC,QAAQ,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,GAAG,MAAM,CAgB7F;AAqED,wBAAgB,kBAAkB,CAAC,UAAU,EAAE,MAAM,GAAG,MAAM,EAAE,CAAqE;AACrI,wBAAgB,oBAAoB,CAAC,UAAU,EAAE,MAAM,GAAG,MAAM,EAAE,CAAuE"}
|
|
@@ -1,4 +1,10 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.threeWayUnion = threeWayUnion;
|
|
4
|
+
exports.mergeDriverRun = mergeDriverRun;
|
|
5
|
+
exports.mergeDriverInstall = mergeDriverInstall;
|
|
6
|
+
exports.mergeDriverUninstall = mergeDriverUninstall;
|
|
7
|
+
const atomic_1 = require("../install/atomic");
|
|
2
8
|
// Git merge driver for the knowledge graph artifact. Parallel branches both
|
|
3
9
|
// rebuild the graph and both commit `.astria/graph.json` — plain git sees
|
|
4
10
|
// JSON line noise and conflicts. This driver performs a 3-way union merge
|
|
@@ -16,11 +22,6 @@
|
|
|
16
22
|
//
|
|
17
23
|
// Exit 0 = merged cleanly (the merged graph is written over %A); exit 1 =
|
|
18
24
|
// unmergeable input (git falls back to a conflict).
|
|
19
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
20
|
-
exports.threeWayUnion = threeWayUnion;
|
|
21
|
-
exports.mergeDriverRun = mergeDriverRun;
|
|
22
|
-
exports.mergeDriverInstall = mergeDriverInstall;
|
|
23
|
-
exports.mergeDriverUninstall = mergeDriverUninstall;
|
|
24
25
|
const fs_1 = require("fs");
|
|
25
26
|
const child_process_1 = require("child_process");
|
|
26
27
|
const path_1 = require("path");
|
|
@@ -135,7 +136,7 @@ function gitConfigGet(key) {
|
|
|
135
136
|
}
|
|
136
137
|
}
|
|
137
138
|
/// Idempotent install: .gitattributes entry + git config driver definition.
|
|
138
|
-
function
|
|
139
|
+
function mergeDriverInstallRaw(projectDir) {
|
|
139
140
|
const messages = [];
|
|
140
141
|
const attributesPath = (0, path_1.join)(projectDir, '.gitattributes');
|
|
141
142
|
const graphEntry = `${GRAPH_JSON_PATH} merge=astria`;
|
|
@@ -152,15 +153,23 @@ function mergeDriverInstall(projectDir) {
|
|
|
152
153
|
}
|
|
153
154
|
}
|
|
154
155
|
if (changed)
|
|
155
|
-
(0,
|
|
156
|
+
(0, atomic_1.writeTextAtomic)(attributesPath, attributes);
|
|
156
157
|
(0, child_process_1.execFileSync)('git', ['config', 'merge.astria.name', 'astria knowledge graph union-merge'], { cwd: projectDir });
|
|
157
158
|
(0, child_process_1.execFileSync)('git', ['config', 'merge.astria.driver', 'astria merge-driver run %O %A %B %P'], { cwd: projectDir });
|
|
158
159
|
messages.push('git config: merge.astria.driver = astria merge-driver run %O %A %B %P');
|
|
159
160
|
messages.push('committed .astria/graph.json files on parallel branches now union-merge automatically');
|
|
160
161
|
return messages;
|
|
161
162
|
}
|
|
162
|
-
function
|
|
163
|
+
function mergeDriverUninstallRaw(projectDir) {
|
|
163
164
|
const messages = [];
|
|
165
|
+
try {
|
|
166
|
+
(0, child_process_1.execFileSync)('git', ['rev-parse', '--is-inside-work-tree'], { cwd: projectDir, stdio: 'pipe', env: { ...process.env, LC_ALL: 'C' } });
|
|
167
|
+
}
|
|
168
|
+
catch (error) {
|
|
169
|
+
if (String(error.stderr).includes('not a git repository'))
|
|
170
|
+
return ['Merge driver: not a git repository'];
|
|
171
|
+
throw error;
|
|
172
|
+
}
|
|
164
173
|
const attributesPath = (0, path_1.join)(projectDir, '.gitattributes');
|
|
165
174
|
if ((0, fs_1.existsSync)(attributesPath)) {
|
|
166
175
|
const kept = (0, fs_1.readFileSync)(attributesPath, 'utf-8')
|
|
@@ -169,7 +178,7 @@ function mergeDriverUninstall(projectDir) {
|
|
|
169
178
|
const t = line.trim();
|
|
170
179
|
return t !== `${GRAPH_JSON_PATH} merge=astria` && t !== `${REPORT_PATH} merge=union` && t !== '';
|
|
171
180
|
});
|
|
172
|
-
(0,
|
|
181
|
+
(0, atomic_1.writeTextAtomic)(attributesPath, kept.length ? kept.join('\n') + '\n' : '');
|
|
173
182
|
messages.push('.gitattributes: astria merge entries removed');
|
|
174
183
|
}
|
|
175
184
|
for (const key of ['merge.astria.name', 'merge.astria.driver']) {
|
|
@@ -177,10 +186,13 @@ function mergeDriverUninstall(projectDir) {
|
|
|
177
186
|
(0, child_process_1.execFileSync)('git', ['config', '--unset', key], { cwd: projectDir, stdio: 'pipe' });
|
|
178
187
|
messages.push(`git config: ${key} removed`);
|
|
179
188
|
}
|
|
180
|
-
catch {
|
|
181
|
-
|
|
189
|
+
catch (error) {
|
|
190
|
+
if (error.status !== 5)
|
|
191
|
+
throw error; // git's documented absent-key result
|
|
182
192
|
}
|
|
183
193
|
}
|
|
184
194
|
return messages;
|
|
185
195
|
}
|
|
196
|
+
function mergeDriverInstall(projectDir) { return (0, atomic_1.withInstallLock)(() => mergeDriverInstallRaw(projectDir)); }
|
|
197
|
+
function mergeDriverUninstall(projectDir) { return (0, atomic_1.withInstallLock)(() => mergeDriverUninstallRaw(projectDir)); }
|
|
186
198
|
//# sourceMappingURL=merge-driver.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"merge-driver.js","sourceRoot":"","sources":["../../src/commands/merge-driver.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"merge-driver.js","sourceRoot":"","sources":["../../src/commands/merge-driver.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"merge-gate.d.ts","sourceRoot":"","sources":["../../src/commands/merge-gate.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"merge-gate.d.ts","sourceRoot":"","sources":["../../src/commands/merge-gate.ts"],"names":[],"mappings":"AAsBA,MAAM,WAAW,gBAAgB;IAC/B,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,uFAAuF;IACvF,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,oEAAoE;IACpE,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,IAAI,CAAC,EAAE,OAAO,CAAC;CAChB;AAoCD,wBAAsB,gBAAgB,CAAC,IAAI,EAAE,gBAAgB,iBA0K5D"}
|
|
@@ -14,6 +14,7 @@ const child_process_1 = require("child_process");
|
|
|
14
14
|
const fs_1 = require("fs");
|
|
15
15
|
const path_1 = require("path");
|
|
16
16
|
const native_1 = require("../native");
|
|
17
|
+
const change_review_1 = require("./change-review");
|
|
17
18
|
const BOLD = '\x1b[1m';
|
|
18
19
|
const GREEN = '\x1b[32m';
|
|
19
20
|
const RED = '\x1b[31m';
|
|
@@ -57,6 +58,7 @@ async function mergeGateCommand(opts) {
|
|
|
57
58
|
throw new Error(`invalid ${name}: not a number`);
|
|
58
59
|
}
|
|
59
60
|
const checks = [];
|
|
61
|
+
let review = null;
|
|
60
62
|
const dbPath = (0, path_1.join)(opts.graph, '.astria', 'db.sqlite');
|
|
61
63
|
// 1. The graph exists and carries build provenance.
|
|
62
64
|
let build = null;
|
|
@@ -175,15 +177,14 @@ async function mergeGateCommand(opts) {
|
|
|
175
177
|
}
|
|
176
178
|
else {
|
|
177
179
|
try {
|
|
178
|
-
|
|
179
|
-
const
|
|
180
|
-
const riskPassed = risk.score <= maxRisk;
|
|
180
|
+
review = (0, change_review_1.changeReview)(opts);
|
|
181
|
+
const riskPassed = review.coverageComplete && review.score !== null && review.score <= maxRisk;
|
|
181
182
|
checks.push({
|
|
182
183
|
name: 'diff-risk',
|
|
183
184
|
passed: riskPassed,
|
|
184
|
-
detail:
|
|
185
|
-
? `
|
|
186
|
-
: `
|
|
185
|
+
detail: review.coverageComplete
|
|
186
|
+
? `change risk ${review.score}/100 (ceiling ${maxRisk}); ${review.impacted} surviving consumers, ${review.directConsumers} direct, ${review.testConsumers} tests; base ${review.baseCommit}, head ${review.headCommit ?? review.afterIdentity}`
|
|
187
|
+
: `coverage incomplete — risk is unknown: ${review.coverageIssues.slice(0, 5).join('; ')}`,
|
|
187
188
|
});
|
|
188
189
|
}
|
|
189
190
|
catch (e) {
|
|
@@ -197,7 +198,7 @@ async function mergeGateCommand(opts) {
|
|
|
197
198
|
}
|
|
198
199
|
const passed = checks.every((c) => c.passed);
|
|
199
200
|
if (opts.json) {
|
|
200
|
-
console.log(JSON.stringify({ passed, checks }, null, 2));
|
|
201
|
+
console.log(JSON.stringify({ passed, checks, review }, null, 2));
|
|
201
202
|
}
|
|
202
203
|
else {
|
|
203
204
|
console.log(`${BOLD}Merge gate — ${passed ? 'PASSED ✓' : 'FAILED ✗'}${RESET}\n`);
|
|
@@ -205,6 +206,8 @@ async function mergeGateCommand(opts) {
|
|
|
205
206
|
const mark = check.passed ? `${GREEN}✓${RESET}` : `${RED}✗${RESET}`;
|
|
206
207
|
console.log(` ${mark} ${check.name}: ${check.detail}`);
|
|
207
208
|
}
|
|
209
|
+
if (review)
|
|
210
|
+
console.log(`\n${review.text}`);
|
|
208
211
|
if (!passed) {
|
|
209
212
|
console.log(`\n${DIM}Fix the failing checks or adjust the thresholds — this gate is what the hosted tier enforces on every merge.${RESET}`);
|
|
210
213
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"merge-gate.js","sourceRoot":"","sources":["../../src/commands/merge-gate.ts"],"names":[],"mappings":";AAAA,qEAAqE;AACrE,4EAA4E;AAC5E,wEAAwE;AACxE,EAAE;AACF,uEAAuE;AACvE,EAAE;AACF,wEAAwE;AACxE,sEAAsE;AACtE,uBAAuB;;;AAEvB,iDAA6C;AAC7C,2BAAgC;AAChC,+BAA4B;AAC5B,
|
|
1
|
+
{"version":3,"file":"merge-gate.js","sourceRoot":"","sources":["../../src/commands/merge-gate.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"prs.d.ts","sourceRoot":"","sources":["../../src/commands/prs.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"prs.d.ts","sourceRoot":"","sources":["../../src/commands/prs.ts"],"names":[],"mappings":"AAyHA,wBAAsB,UAAU,CAAC,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,SAAS,EAAE,OAAO,CAAC;IAAC,MAAM,CAAC,EAAE,OAAO,CAAC;IAAC,KAAK,CAAC,EAAE,OAAO,CAAC;IAAC,IAAI,CAAC,EAAE,OAAO,CAAA;CAAE,iBAiC7I"}
|