@fenglimg/fabric-cli 2.0.0-rc.25 → 2.0.0-rc.26
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/chunk-PWLW3B57.js +18 -0
- package/dist/{chunk-STLR2GHP.js → chunk-SRX7WZUG.js} +1 -1
- package/dist/{config-XGUUAYX6.js → config-5CH4EJQ2.js} +2 -2
- package/dist/{doctor-DXKPYPRC.js → doctor-ZIQXN2T2.js} +67 -62
- package/dist/index.js +7 -7
- package/dist/{install-S2J76N2B.js → install-3MWBW6N7.js} +3 -3
- package/dist/{serve-NPCI342P.js → serve-U3TPWDOB.js} +1 -1
- package/dist/{uninstall-MQM6NUFM.js → uninstall-SUSIZHGL.js} +1 -1
- package/package.json +3 -3
- package/dist/chunk-6ICJICVU.js +0 -10
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
#!/usr/bin/env node
|
|
2
|
+
|
|
3
|
+
// src/i18n.ts
|
|
4
|
+
import {
|
|
5
|
+
createTranslator,
|
|
6
|
+
detectNodeLocale,
|
|
7
|
+
resolveFabricLocale
|
|
8
|
+
} from "@fenglimg/fabric-shared";
|
|
9
|
+
var locale = detectNodeLocale();
|
|
10
|
+
var t = createTranslator(locale);
|
|
11
|
+
function getDoctorTranslator(projectRoot) {
|
|
12
|
+
return createTranslator(resolveFabricLocale(projectRoot));
|
|
13
|
+
}
|
|
14
|
+
|
|
15
|
+
export {
|
|
16
|
+
t,
|
|
17
|
+
getDoctorTranslator
|
|
18
|
+
};
|
|
@@ -3,9 +3,9 @@ import {
|
|
|
3
3
|
configCmd,
|
|
4
4
|
config_default,
|
|
5
5
|
installMcpClients
|
|
6
|
-
} from "./chunk-
|
|
6
|
+
} from "./chunk-SRX7WZUG.js";
|
|
7
7
|
import "./chunk-MF3OTILQ.js";
|
|
8
|
-
import "./chunk-
|
|
8
|
+
import "./chunk-PWLW3B57.js";
|
|
9
9
|
export {
|
|
10
10
|
configCmd,
|
|
11
11
|
config_default as default,
|
|
@@ -6,8 +6,9 @@ import {
|
|
|
6
6
|
symbol
|
|
7
7
|
} from "./chunk-G2CIOLD4.js";
|
|
8
8
|
import {
|
|
9
|
+
getDoctorTranslator,
|
|
9
10
|
t
|
|
10
|
-
} from "./chunk-
|
|
11
|
+
} from "./chunk-PWLW3B57.js";
|
|
11
12
|
import {
|
|
12
13
|
resolveDevMode
|
|
13
14
|
} from "./chunk-COI5VDFU.js";
|
|
@@ -129,6 +130,7 @@ var doctorCommand = defineCommand({
|
|
|
129
130
|
async run({ args }) {
|
|
130
131
|
const workspaceRoot = process.cwd();
|
|
131
132
|
const resolution = resolveDevMode(args.target, workspaceRoot);
|
|
133
|
+
const dt = getDoctorTranslator(resolution.target);
|
|
132
134
|
try {
|
|
133
135
|
checkLockOrThrow(resolution.target);
|
|
134
136
|
} catch (err) {
|
|
@@ -145,7 +147,7 @@ var doctorCommand = defineCommand({
|
|
|
145
147
|
const archiveHistory = args["archive-history"] === true;
|
|
146
148
|
if (archiveHistory) {
|
|
147
149
|
if (fix || fixKnowledge || citeCoverage || enrichDesc) {
|
|
148
|
-
writeStderr(
|
|
150
|
+
writeStderr(dt("cli.doctor.errors.archive-history-mutex"));
|
|
149
151
|
process.exitCode = 1;
|
|
150
152
|
return;
|
|
151
153
|
}
|
|
@@ -154,7 +156,7 @@ var doctorCommand = defineCommand({
|
|
|
154
156
|
try {
|
|
155
157
|
sinceMs = parseSinceDuration(sinceInput);
|
|
156
158
|
} catch {
|
|
157
|
-
writeStderr(
|
|
159
|
+
writeStderr(dt("cli.doctor.errors.invalid-since", { input: sinceInput }));
|
|
158
160
|
process.exitCode = 1;
|
|
159
161
|
return;
|
|
160
162
|
}
|
|
@@ -164,13 +166,13 @@ var doctorCommand = defineCommand({
|
|
|
164
166
|
if (args.json === true) {
|
|
165
167
|
writeStdout(JSON.stringify(report2, null, 2));
|
|
166
168
|
} else {
|
|
167
|
-
renderArchiveHistoryReport(report2, sinceInput);
|
|
169
|
+
renderArchiveHistoryReport(report2, sinceInput, dt);
|
|
168
170
|
}
|
|
169
171
|
return;
|
|
170
172
|
}
|
|
171
173
|
if (enrichDesc) {
|
|
172
174
|
if (fix || fixKnowledge || citeCoverage) {
|
|
173
|
-
writeStderr(
|
|
175
|
+
writeStderr(dt("cli.doctor.errors.enrich-descriptions-mutex"));
|
|
174
176
|
process.exitCode = 1;
|
|
175
177
|
return;
|
|
176
178
|
}
|
|
@@ -183,13 +185,13 @@ var doctorCommand = defineCommand({
|
|
|
183
185
|
if (args.json === true) {
|
|
184
186
|
writeStdout(JSON.stringify(report2, null, 2));
|
|
185
187
|
} else {
|
|
186
|
-
renderEnrichDescriptionsReport(report2);
|
|
188
|
+
renderEnrichDescriptionsReport(report2, dt);
|
|
187
189
|
}
|
|
188
190
|
return;
|
|
189
191
|
}
|
|
190
192
|
if (citeCoverage) {
|
|
191
193
|
if (fix || fixKnowledge) {
|
|
192
|
-
writeStderr(
|
|
194
|
+
writeStderr(dt("cli.doctor.errors.cite-coverage-mutex"));
|
|
193
195
|
process.exitCode = 1;
|
|
194
196
|
return;
|
|
195
197
|
}
|
|
@@ -197,19 +199,19 @@ var doctorCommand = defineCommand({
|
|
|
197
199
|
try {
|
|
198
200
|
sinceMs = parseSinceDuration(args.since ?? "7d");
|
|
199
201
|
} catch {
|
|
200
|
-
writeStderr(
|
|
202
|
+
writeStderr(dt("cli.doctor.errors.invalid-since", { input: args.since ?? "7d" }));
|
|
201
203
|
process.exitCode = 1;
|
|
202
204
|
return;
|
|
203
205
|
}
|
|
204
206
|
const clientFilter = args.client ?? "all";
|
|
205
207
|
if (!isValidClientFilter(clientFilter)) {
|
|
206
|
-
writeStderr(
|
|
208
|
+
writeStderr(dt("cli.doctor.errors.invalid-client", { input: clientFilter }));
|
|
207
209
|
process.exitCode = 1;
|
|
208
210
|
return;
|
|
209
211
|
}
|
|
210
212
|
const layerFilter = args.layer ?? "all";
|
|
211
213
|
if (!isValidLayerFilter(layerFilter)) {
|
|
212
|
-
writeStderr(
|
|
214
|
+
writeStderr(dt("cli.doctor.errors.invalid-layer", { input: layerFilter }));
|
|
213
215
|
process.exitCode = 1;
|
|
214
216
|
return;
|
|
215
217
|
}
|
|
@@ -218,11 +220,11 @@ var doctorCommand = defineCommand({
|
|
|
218
220
|
client: clientFilter,
|
|
219
221
|
layer: layerFilter
|
|
220
222
|
});
|
|
221
|
-
renderCiteCoverageReport(report2, args.json === true);
|
|
223
|
+
renderCiteCoverageReport(report2, args.json === true, dt);
|
|
222
224
|
return;
|
|
223
225
|
}
|
|
224
226
|
if (fixKnowledge && fix) {
|
|
225
|
-
writeStderr(
|
|
227
|
+
writeStderr(dt("cli.doctor.errors.fix-knowledge-fix-mutually-exclusive"));
|
|
226
228
|
process.exitCode = 1;
|
|
227
229
|
return;
|
|
228
230
|
}
|
|
@@ -263,11 +265,11 @@ var doctorCommand = defineCommand({
|
|
|
263
265
|
if (fixKnowledgeReport.aborted && fixKnowledgeReport.abort_reason !== void 0) {
|
|
264
266
|
writeStderr(fixKnowledgeReport.abort_reason);
|
|
265
267
|
}
|
|
266
|
-
renderFixKnowledgeMutations(fixKnowledgeReport);
|
|
268
|
+
renderFixKnowledgeMutations(fixKnowledgeReport, dt);
|
|
267
269
|
} else if (fixReport !== null) {
|
|
268
270
|
writeStdout(fixReport.message);
|
|
269
271
|
}
|
|
270
|
-
renderHumanReport(report);
|
|
272
|
+
renderHumanReport(report, dt);
|
|
271
273
|
}
|
|
272
274
|
await emitDoctorRunEventBestEffort(resolution.target, {
|
|
273
275
|
mode: fixKnowledge ? "fix-knowledge" : "lint",
|
|
@@ -290,21 +292,21 @@ var doctorCommand = defineCommand({
|
|
|
290
292
|
}
|
|
291
293
|
});
|
|
292
294
|
var doctor_default = doctorCommand;
|
|
293
|
-
function renderHumanReport(report) {
|
|
295
|
+
function renderHumanReport(report, dt) {
|
|
294
296
|
writeStdout(`${renderStatus(report.status)} ${paint.ai("fabric doctor")} ${paint.human(report.summary.target)}`);
|
|
295
297
|
for (const check of report.checks) {
|
|
296
298
|
writeStdout(`${renderStatus(check.status)} ${check.name}: ${check.message}`);
|
|
297
299
|
}
|
|
298
|
-
writeIssueSection(
|
|
299
|
-
writeIssueSection(
|
|
300
|
-
writeIssueSection(
|
|
300
|
+
writeIssueSection(dt("doctor.section.fixable"), report.fixable_errors);
|
|
301
|
+
writeIssueSection(dt("doctor.section.manual"), report.manual_errors);
|
|
302
|
+
writeIssueSection(dt("doctor.section.warnings"), report.warnings);
|
|
301
303
|
}
|
|
302
|
-
function renderFixKnowledgeMutations(fixKnowledgeReport) {
|
|
304
|
+
function renderFixKnowledgeMutations(fixKnowledgeReport, dt) {
|
|
303
305
|
if (fixKnowledgeReport.mutations.length === 0) {
|
|
304
306
|
return;
|
|
305
307
|
}
|
|
306
308
|
writeStdout("");
|
|
307
|
-
writeStdout(
|
|
309
|
+
writeStdout(dt("doctor.section.fix-knowledge-mutations"));
|
|
308
310
|
for (const mutation of fixKnowledgeReport.mutations) {
|
|
309
311
|
const marker = mutation.applied ? symbol.ok : symbol.error;
|
|
310
312
|
const errSuffix = mutation.applied || mutation.error === void 0 ? "" : ` (${mutation.error})`;
|
|
@@ -319,6 +321,9 @@ function writeIssueSection(title, issues) {
|
|
|
319
321
|
writeStdout(title);
|
|
320
322
|
for (const issue of issues) {
|
|
321
323
|
writeStdout(`- ${issue.code}: ${issue.message}`);
|
|
324
|
+
if (issue.actionHint !== void 0 && issue.actionHint.length > 0) {
|
|
325
|
+
writeStdout(` \u2192 ${issue.actionHint}`);
|
|
326
|
+
}
|
|
322
327
|
}
|
|
323
328
|
}
|
|
324
329
|
function renderStatus(status) {
|
|
@@ -436,35 +441,35 @@ var CITE_COVERAGE_LAYER_FILTERS = /* @__PURE__ */ new Set([
|
|
|
436
441
|
function isValidLayerFilter(input) {
|
|
437
442
|
return CITE_COVERAGE_LAYER_FILTERS.has(input);
|
|
438
443
|
}
|
|
439
|
-
function renderCiteCoverageReport(report, jsonMode) {
|
|
444
|
+
function renderCiteCoverageReport(report, jsonMode, dt) {
|
|
440
445
|
if (jsonMode) {
|
|
441
446
|
writeStdout(JSON.stringify(report, null, 2));
|
|
442
447
|
return;
|
|
443
448
|
}
|
|
444
449
|
if (report.status === "skipped") {
|
|
445
|
-
writeStdout(
|
|
450
|
+
writeStdout(dt("doctor.cite.status.skipped"));
|
|
446
451
|
return;
|
|
447
452
|
}
|
|
448
453
|
const lines = [];
|
|
449
|
-
lines.push(
|
|
454
|
+
lines.push(dt("doctor.section.cite-coverage"));
|
|
450
455
|
lines.push(
|
|
451
|
-
|
|
456
|
+
dt("doctor.cite.header", {
|
|
452
457
|
since: new Date(report.since_ts).toISOString(),
|
|
453
458
|
marker: new Date(report.marker_ts).toISOString()
|
|
454
459
|
})
|
|
455
460
|
);
|
|
456
461
|
if (report.marker_emitted_now) {
|
|
457
|
-
lines.push(
|
|
462
|
+
lines.push(dt("doctor.cite.warning.justActivated"));
|
|
458
463
|
}
|
|
459
464
|
lines.push("");
|
|
460
|
-
lines.push(` ${
|
|
461
|
-
lines.push(` ${
|
|
462
|
-
lines.push(` ${
|
|
463
|
-
lines.push(` ${
|
|
464
|
-
lines.push(` ${
|
|
465
|
+
lines.push(` ${dt("doctor.cite.metric.editsTouched")}: ${report.metrics.edits_touched}`);
|
|
466
|
+
lines.push(` ${dt("doctor.cite.metric.qualifyingCites")}: ${report.metrics.qualifying_cites}`);
|
|
467
|
+
lines.push(` ${dt("doctor.cite.metric.recalledUnverified")}: ${report.metrics.recalled_unverified}`);
|
|
468
|
+
lines.push(` ${dt("doctor.cite.metric.expectedButMissed")}: ${report.metrics.expected_but_missed}`);
|
|
469
|
+
lines.push(` ${dt("doctor.cite.metric.totalTurns")}: ${report.metrics.total_turns}`);
|
|
465
470
|
if (report.per_client !== void 0 && Object.keys(report.per_client).length > 1) {
|
|
466
471
|
lines.push("");
|
|
467
|
-
lines.push(`### ${
|
|
472
|
+
lines.push(`### ${dt("doctor.cite.section.perClient")}`);
|
|
468
473
|
for (const [client, metrics] of Object.entries(report.per_client)) {
|
|
469
474
|
const summary = Object.entries(metrics).map(([k, v]) => `${k}=${v}`).join(" / ");
|
|
470
475
|
lines.push(` ${client}: ${summary}`);
|
|
@@ -472,24 +477,24 @@ function renderCiteCoverageReport(report, jsonMode) {
|
|
|
472
477
|
}
|
|
473
478
|
if (report.dismissed_reason_histogram !== void 0 && Object.keys(report.dismissed_reason_histogram).length > 0) {
|
|
474
479
|
lines.push("");
|
|
475
|
-
lines.push(`### ${
|
|
480
|
+
lines.push(`### ${dt("doctor.cite.section.dismissedReasons")}`);
|
|
476
481
|
for (const [reason, count] of Object.entries(report.dismissed_reason_histogram)) {
|
|
477
|
-
const label =
|
|
482
|
+
const label = dt(`doctor.cite.dismissed.${reason}`);
|
|
478
483
|
lines.push(` ${label}: ${count}`);
|
|
479
484
|
}
|
|
480
485
|
}
|
|
481
486
|
if (report.none_reason_histogram !== void 0 && Object.keys(report.none_reason_histogram).length > 0) {
|
|
482
487
|
lines.push("");
|
|
483
|
-
lines.push(`### ${
|
|
488
|
+
lines.push(`### ${dt("doctor.cite.section.noneReasons")}`);
|
|
484
489
|
for (const [reason, count] of Object.entries(report.none_reason_histogram)) {
|
|
485
|
-
const label =
|
|
490
|
+
const label = dt(`doctor.cite.none.${reason}`);
|
|
486
491
|
lines.push(` ${label}: ${count}`);
|
|
487
492
|
}
|
|
488
493
|
}
|
|
489
|
-
appendContractSection(lines, report);
|
|
494
|
+
appendContractSection(lines, report, dt);
|
|
490
495
|
writeStdout(lines.join("\n"));
|
|
491
496
|
}
|
|
492
|
-
function appendContractSection(lines, report) {
|
|
497
|
+
function appendContractSection(lines, report, dt) {
|
|
493
498
|
const status = report.contract_metrics_status;
|
|
494
499
|
if (status === void 0) {
|
|
495
500
|
return;
|
|
@@ -501,13 +506,13 @@ function appendContractSection(lines, report) {
|
|
|
501
506
|
return;
|
|
502
507
|
}
|
|
503
508
|
lines.push("");
|
|
504
|
-
lines.push(`### ${
|
|
509
|
+
lines.push(`### ${dt("cite-coverage.contract.header")}`);
|
|
505
510
|
if (status === "skipped:bootstrap_drift") {
|
|
506
|
-
lines.push(` ${
|
|
511
|
+
lines.push(` ${dt("cite-coverage.contract.status.skipped_bootstrap_drift")}`);
|
|
507
512
|
return;
|
|
508
513
|
}
|
|
509
514
|
const statusKey = status === "ok" ? "cite-coverage.contract.status.ok" : "cite-coverage.contract.status.awaiting_marker";
|
|
510
|
-
lines.push(` status: ${
|
|
515
|
+
lines.push(` status: ${dt(statusKey)}`);
|
|
511
516
|
if (typeof report.contract_marker_ts === "number" && report.contract_marker_ts > 0) {
|
|
512
517
|
lines.push(` since: ${new Date(report.contract_marker_ts).toISOString()}`);
|
|
513
518
|
}
|
|
@@ -515,14 +520,14 @@ function appendContractSection(lines, report) {
|
|
|
515
520
|
lines.push(` layer filter: ${report.layer_filter}`);
|
|
516
521
|
}
|
|
517
522
|
if (metrics !== void 0) {
|
|
518
|
-
lines.push(` ${
|
|
519
|
-
lines.push(` ${
|
|
520
|
-
lines.push(` ${
|
|
521
|
-
lines.push(` ${
|
|
523
|
+
lines.push(` ${dt("cite-coverage.contract.decisions_cited")}: ${metrics.decisions_cited}`);
|
|
524
|
+
lines.push(` ${dt("cite-coverage.contract.pitfalls_cited")}: ${metrics.pitfalls_cited}`);
|
|
525
|
+
lines.push(` ${dt("cite-coverage.contract.with")}: ${metrics.contract_with}`);
|
|
526
|
+
lines.push(` ${dt("cite-coverage.contract.missing")}: ${metrics.contract_missing}`);
|
|
522
527
|
if (metrics.hard_violated > 0) {
|
|
523
|
-
const layerSuffix = report.layer_filter === "personal" ?
|
|
528
|
+
const layerSuffix = report.layer_filter === "personal" ? dt("cite-coverage.layer.personal_fyi") : dt("cite-coverage.layer.team_review");
|
|
524
529
|
lines.push(
|
|
525
|
-
` ${
|
|
530
|
+
` ${dt("cite-coverage.contract.hard_violated")} ${layerSuffix}: ${metrics.hard_violated}`
|
|
526
531
|
);
|
|
527
532
|
}
|
|
528
533
|
}
|
|
@@ -535,39 +540,39 @@ function appendContractSection(lines, report) {
|
|
|
535
540
|
);
|
|
536
541
|
if (teamKeys.length > 0 || personalKeys.length > 0) {
|
|
537
542
|
lines.push("");
|
|
538
|
-
lines.push(`#### ${
|
|
543
|
+
lines.push(`#### ${dt("cite-coverage.layer.team")} \xD7 ${dt("cite-coverage.layer.personal")}`);
|
|
539
544
|
for (const key of teamKeys) {
|
|
540
|
-
const label =
|
|
541
|
-
lines.push(` ${
|
|
545
|
+
const label = dt(`cite-coverage.contract.type.${key}`);
|
|
546
|
+
lines.push(` ${dt("cite-coverage.layer.team")} \u2014 ${label}: ${perLayerType.team[key]}`);
|
|
542
547
|
}
|
|
543
548
|
for (const key of personalKeys) {
|
|
544
|
-
const label =
|
|
549
|
+
const label = dt(`cite-coverage.contract.type.${key}`);
|
|
545
550
|
lines.push(
|
|
546
|
-
` ${
|
|
551
|
+
` ${dt("cite-coverage.layer.personal")} \u2014 ${label}: ${perLayerType.personal[key]}`
|
|
547
552
|
);
|
|
548
553
|
}
|
|
549
554
|
}
|
|
550
555
|
}
|
|
551
556
|
if (metrics !== void 0 && Object.keys(metrics.skip_count).length > 0) {
|
|
552
557
|
lines.push("");
|
|
553
|
-
lines.push(`#### ${
|
|
558
|
+
lines.push(`#### ${dt("cite-coverage.contract.skip_count")}`);
|
|
554
559
|
for (const [reason, count] of Object.entries(metrics.skip_count)) {
|
|
555
|
-
const label =
|
|
560
|
+
const label = dt(`cite-coverage.skip.${reason}`);
|
|
556
561
|
lines.push(` ${label}: ${count}`);
|
|
557
562
|
}
|
|
558
563
|
}
|
|
559
564
|
if (metrics !== void 0 && metrics.cite_id_unresolved > 0) {
|
|
560
565
|
lines.push("");
|
|
561
566
|
lines.push(
|
|
562
|
-
`${symbol.warn} ${
|
|
567
|
+
`${symbol.warn} ${dt("cite-coverage.contract.cite_id_unresolved")}: ${metrics.cite_id_unresolved}`
|
|
563
568
|
);
|
|
564
569
|
}
|
|
565
570
|
}
|
|
566
|
-
function renderEnrichDescriptionsReport(report) {
|
|
571
|
+
function renderEnrichDescriptionsReport(report, dt) {
|
|
567
572
|
const header = `${symbol.ok} ${paint.ai("fab doctor --enrich-descriptions")} mode=${report.mode}${report.dryRun ? " (dry-run)" : ""} scanned=${report.scanned} modified=${report.modified} skipped=${report.skipped}`;
|
|
568
573
|
writeStdout(header);
|
|
569
574
|
if (report.candidates.length === 0) {
|
|
570
|
-
writeStdout(
|
|
575
|
+
writeStdout(dt("doctor.enrich.allComplete"));
|
|
571
576
|
return;
|
|
572
577
|
}
|
|
573
578
|
writeStdout("");
|
|
@@ -611,14 +616,14 @@ function parseSinceDuration(input) {
|
|
|
611
616
|
}
|
|
612
617
|
throw new Error(`invalid --since value: ${input}`);
|
|
613
618
|
}
|
|
614
|
-
function renderArchiveHistoryReport(report, sinceLabel) {
|
|
619
|
+
function renderArchiveHistoryReport(report, sinceLabel, dt) {
|
|
615
620
|
if (report.entries.length === 0) {
|
|
616
|
-
writeStdout(
|
|
621
|
+
writeStdout(dt("doctor.archive-history.empty", { sinceLabel }));
|
|
617
622
|
return;
|
|
618
623
|
}
|
|
619
624
|
const lines = [];
|
|
620
625
|
lines.push(
|
|
621
|
-
|
|
626
|
+
dt("doctor.archive-history.header", {
|
|
622
627
|
sinceLabel,
|
|
623
628
|
count: String(report.total),
|
|
624
629
|
plural: report.total === 1 ? "" : "s"
|
|
@@ -626,11 +631,11 @@ function renderArchiveHistoryReport(report, sinceLabel) {
|
|
|
626
631
|
);
|
|
627
632
|
lines.push("");
|
|
628
633
|
lines.push(
|
|
629
|
-
`| ${
|
|
634
|
+
`| ${dt("doctor.archive-history.table.session")} | ${dt(
|
|
630
635
|
"doctor.archive-history.table.lastAttempt"
|
|
631
|
-
)} | ${
|
|
636
|
+
)} | ${dt("doctor.archive-history.table.outcome")} | ${dt(
|
|
632
637
|
"doctor.archive-history.table.candidates"
|
|
633
|
-
)} | ${
|
|
638
|
+
)} | ${dt("doctor.archive-history.table.coveredGap")} |`
|
|
634
639
|
);
|
|
635
640
|
lines.push("| ------- | ---------------- | -------- | ---------- | ----------- |");
|
|
636
641
|
for (const entry of report.entries) {
|
package/dist/index.js
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
2
|
import {
|
|
3
3
|
t
|
|
4
|
-
} from "./chunk-
|
|
4
|
+
} from "./chunk-PWLW3B57.js";
|
|
5
5
|
|
|
6
6
|
// src/index.ts
|
|
7
7
|
import { realpathSync } from "fs";
|
|
@@ -11,11 +11,11 @@ import { defineCommand, runMain } from "citty";
|
|
|
11
11
|
|
|
12
12
|
// src/commands/index.ts
|
|
13
13
|
var allCommands = {
|
|
14
|
-
install: () => import("./install-
|
|
15
|
-
doctor: () => import("./doctor-
|
|
16
|
-
serve: () => import("./serve-
|
|
17
|
-
uninstall: () => import("./uninstall-
|
|
18
|
-
config: () => import("./config-
|
|
14
|
+
install: () => import("./install-3MWBW6N7.js").then((module) => module.default),
|
|
15
|
+
doctor: () => import("./doctor-ZIQXN2T2.js").then((module) => module.default),
|
|
16
|
+
serve: () => import("./serve-U3TPWDOB.js").then((module) => module.default),
|
|
17
|
+
uninstall: () => import("./uninstall-SUSIZHGL.js").then((module) => module.default),
|
|
18
|
+
config: () => import("./config-5CH4EJQ2.js").then((module) => module.default),
|
|
19
19
|
"plan-context-hint": () => import("./plan-context-hint-KPGOW3QC.js").then((module) => module.default),
|
|
20
20
|
// v2.0.0-rc.23 TASK-014 (F8c): S5 onboard-slot coverage. Used by the
|
|
21
21
|
// fabric-archive Skill's first-run phase to detect unclaimed slots.
|
|
@@ -26,7 +26,7 @@ var allCommands = {
|
|
|
26
26
|
var main = defineCommand({
|
|
27
27
|
meta: {
|
|
28
28
|
name: "fabric",
|
|
29
|
-
version: "2.0.0-rc.
|
|
29
|
+
version: "2.0.0-rc.26",
|
|
30
30
|
description: t("cli.main.description")
|
|
31
31
|
},
|
|
32
32
|
subCommands: allCommands
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
2
|
import {
|
|
3
3
|
installMcpClients
|
|
4
|
-
} from "./chunk-
|
|
4
|
+
} from "./chunk-SRX7WZUG.js";
|
|
5
5
|
import {
|
|
6
6
|
installArchiveHintHook,
|
|
7
7
|
installFabricArchiveSkill,
|
|
@@ -31,7 +31,7 @@ import {
|
|
|
31
31
|
} from "./chunk-G2CIOLD4.js";
|
|
32
32
|
import {
|
|
33
33
|
t
|
|
34
|
-
} from "./chunk-
|
|
34
|
+
} from "./chunk-PWLW3B57.js";
|
|
35
35
|
import {
|
|
36
36
|
createDebugLogger,
|
|
37
37
|
resolveDevMode
|
|
@@ -1348,7 +1348,7 @@ function readProjectName(target) {
|
|
|
1348
1348
|
return basename(target);
|
|
1349
1349
|
}
|
|
1350
1350
|
function getCliVersion() {
|
|
1351
|
-
return true ? "2.0.0-rc.
|
|
1351
|
+
return true ? "2.0.0-rc.26" : "unknown";
|
|
1352
1352
|
}
|
|
1353
1353
|
function sortRecord(record) {
|
|
1354
1354
|
return Object.fromEntries(Object.entries(record).sort(([left], [right]) => left.localeCompare(right)));
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@fenglimg/fabric-cli",
|
|
3
|
-
"version": "2.0.0-rc.
|
|
3
|
+
"version": "2.0.0-rc.26",
|
|
4
4
|
"type": "module",
|
|
5
5
|
"bin": {
|
|
6
6
|
"fab": "dist/index.js",
|
|
@@ -20,8 +20,8 @@
|
|
|
20
20
|
"tree-sitter-javascript": "^0.25.0",
|
|
21
21
|
"tree-sitter-typescript": "^0.23.2",
|
|
22
22
|
"web-tree-sitter": "^0.26.8",
|
|
23
|
-
"@fenglimg/fabric-server": "2.0.0-rc.
|
|
24
|
-
"@fenglimg/fabric-shared": "2.0.0-rc.
|
|
23
|
+
"@fenglimg/fabric-server": "2.0.0-rc.26",
|
|
24
|
+
"@fenglimg/fabric-shared": "2.0.0-rc.26"
|
|
25
25
|
},
|
|
26
26
|
"devDependencies": {
|
|
27
27
|
"@types/node": "^22.15.0",
|