@buoy-design/cli 0.3.29 → 0.3.31

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.
@@ -1 +1 @@
1
- {"version":3,"file":"check.d.ts","sourceRoot":"","sources":["../../src/commands/check.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAKpC,OAAO,KAAK,EAAE,WAAW,EAAoC,MAAM,mBAAmB,CAAC;AAmBvF,MAAM,MAAM,YAAY,GAAG,MAAM,GAAG,MAAM,GAAG,aAAa,CAAC;AAoB3D;;GAEG;AACH,wBAAgB,gBAAgB,CAC9B,MAAM,EAAE,WAAW,EAAE,EACrB,QAAQ,EAAE,MAAM,EAChB,OAAO,EAAE;IAAE,QAAQ,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAE,GAC1E,MAAM,CA0DR;AAED;;GAEG;AACH,wBAAgB,cAAc,IAAI,MAAM,EAAE,CAgBzC;AAED;;GAEG;AACH,wBAAgB,oBAAoB,CAAC,KAAK,EAAE,MAAM,EAAE,GAAG,MAAM,EAAE,CA4B9D;AAED;;GAEG;AACH,wBAAgB,gBAAgB,CAC9B,KAAK,EAAE,WAAW,EAClB,WAAW,EAAE,MAAM,EAAE,GACpB,OAAO,CAgBT;AAgBD,wBAAgB,kBAAkB,IAAI,OAAO,CAyT5C"}
1
+ {"version":3,"file":"check.d.ts","sourceRoot":"","sources":["../../src/commands/check.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAKpC,OAAO,KAAK,EAAE,WAAW,EAAoC,MAAM,mBAAmB,CAAC;AAuBvF,MAAM,MAAM,YAAY,GAAG,MAAM,GAAG,MAAM,GAAG,aAAa,CAAC;AAoB3D;;GAEG;AACH,wBAAgB,gBAAgB,CAC9B,MAAM,EAAE,WAAW,EAAE,EACrB,QAAQ,EAAE,MAAM,EAChB,OAAO,EAAE;IAAE,QAAQ,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAE,GAC1E,MAAM,CA0DR;AAED;;GAEG;AACH,wBAAgB,cAAc,IAAI,MAAM,EAAE,CAgBzC;AAED;;GAEG;AACH,wBAAgB,oBAAoB,CAAC,KAAK,EAAE,MAAM,EAAE,GAAG,MAAM,EAAE,CA4B9D;AAED;;GAEG;AACH,wBAAgB,gBAAgB,CAC9B,KAAK,EAAE,WAAW,EAClB,WAAW,EAAE,MAAM,EAAE,GACpB,OAAO,CAgBT;AAgBD,wBAAgB,kBAAkB,IAAI,OAAO,CAma5C"}
@@ -5,6 +5,7 @@ import { loadConfig, getConfigPath } from "../config/loader.js";
5
5
  import { buildAutoConfig } from "../config/auto-detect.js";
6
6
  import { execSync } from "node:child_process";
7
7
  import { DriftAnalysisService, hasDriftsAboveThreshold, calculateDriftSummary, } from "../services/drift-analysis.js";
8
+ import { classifyCheckInput, runSingleSourceOrRemoteCheck, } from "../services/remote-check.js";
8
9
  import { formatUpgradeHint } from "../utils/upgrade-hints.js";
9
10
  import { generatePRCommentPreview } from "../output/pr-comment-preview.js";
10
11
  import { isLoggedIn, submitScanReport, getGitMetadata, } from "../cloud/index.js";
@@ -152,7 +153,16 @@ function calculateMaturityScore(tokenCount, driftCount) {
152
153
  export function createCheckCommand() {
153
154
  const cmd = new Command("check")
154
155
  .description("Fast drift check for pre-commit hooks")
156
+ .argument("[target]", "Optional local file path or public URL to check directly")
155
157
  .option("--fail-on <severity>", "Exit 1 if drift at this severity or higher: critical, warning, info, none", "critical")
158
+ .option("--url <url>", "Public source file URL to check (supports bare host/path)")
159
+ .option("--tokens <urlOrPath>", "Remote/local token file for single-source checks")
160
+ .option("--fixture <urlOrPath>", "Remote/local fixture manifest JSON (source + tokens + optional config)")
161
+ .option("--strict-remote", "Fail if remote/local single-source check is missing tokens/config context")
162
+ .option("--allow-private-network", "Allow localhost/private IP URLs for remote checks (disabled by default)")
163
+ .option("--remote-timeout-ms <ms>", "Remote fetch timeout in ms", (v) => parseInt(v, 10))
164
+ .option("--remote-max-bytes <bytes>", "Max remote response size in bytes", (v) => parseInt(v, 10))
165
+ .option("--remote-cache", "Enable temporary in-run cache for remote fetches")
156
166
  .option("--staged", "Only check staged files (for pre-commit hooks)")
157
167
  .option("--quiet", "Suppress all output except errors")
158
168
  .option("-v, --verbose", "Show detailed output")
@@ -162,7 +172,8 @@ export function createCheckCommand() {
162
172
  .option("--report", "Report results to Buoy Cloud (requires login)")
163
173
  .option("--repo <repo>", "Repository name (owner/repo) for cloud reporting")
164
174
  .option("--pr <number>", "PR number for cloud reporting", parseInt)
165
- .action(async (options) => {
175
+ .action(async (target, options, command) => {
176
+ const resolvedTarget = typeof target === "string" ? target : command?.args?.[0];
166
177
  // --json is shorthand for --format json
167
178
  if (options.json) {
168
179
  options.format = "json";
@@ -173,6 +184,96 @@ export function createCheckCommand() {
173
184
  ? console.error.bind(console)
174
185
  : () => { };
175
186
  try {
187
+ const actualInputMode = classifyCheckInput(resolvedTarget, {
188
+ url: options.url,
189
+ fixture: options.fixture,
190
+ });
191
+ if (actualInputMode !== "project") {
192
+ if (options.staged) {
193
+ throw new Error("--staged is not supported with --url/--fixture or direct file/URL targets");
194
+ }
195
+ if (options.report) {
196
+ throw new Error("--report is not supported with --url/--fixture or direct file/URL targets");
197
+ }
198
+ const failOn = options.failOn;
199
+ const remoteResult = await runSingleSourceOrRemoteCheck({
200
+ failOn,
201
+ verbose: options.verbose,
202
+ strictRemote: !!options.strictRemote,
203
+ allowPrivateNetwork: !!options.allowPrivateNetwork,
204
+ timeoutMs: options.remoteTimeoutMs,
205
+ maxBytes: options.remoteMaxBytes,
206
+ cache: !!options.remoteCache,
207
+ tokens: options.tokens,
208
+ fixture: options.fixture,
209
+ url: options.url,
210
+ target: resolvedTarget,
211
+ });
212
+ const drifts = remoteResult.drifts;
213
+ const summary = remoteResult.summary;
214
+ const exitCode = hasDriftsAboveThreshold(drifts, failOn) ? 1 : 0;
215
+ const format = options.format;
216
+ if (format === "ai-feedback") {
217
+ console.log(formatAiFeedback(drifts, exitCode, summary));
218
+ process.exit(exitCode);
219
+ return;
220
+ }
221
+ if (format === "json") {
222
+ console.log(JSON.stringify({
223
+ passed: exitCode === 0,
224
+ drifts: drifts.map((d) => ({
225
+ id: d.id,
226
+ type: d.type,
227
+ severity: d.severity,
228
+ message: d.message,
229
+ source: d.source,
230
+ details: d.details,
231
+ })),
232
+ summary,
233
+ sourceContext: remoteResult.sourceContext,
234
+ }, null, 2));
235
+ process.exit(exitCode);
236
+ return;
237
+ }
238
+ if (!options.quiet) {
239
+ if (remoteResult.sourceContext.confidence === "reduced") {
240
+ console.log("~ Reduced-confidence remote/single-file check");
241
+ console.log(` ${remoteResult.sourceContext.reason}`);
242
+ console.log("");
243
+ }
244
+ console.log(`Source: ${remoteResult.sourceContext.source}`);
245
+ console.log(`Context: ${remoteResult.sourceContext.mode}`);
246
+ console.log("");
247
+ if (exitCode === 0) {
248
+ if (summary.total === 0) {
249
+ console.log("+ No drift detected");
250
+ }
251
+ else {
252
+ console.log(`+ Check passed (${summary.total} drift${summary.total !== 1 ? "s" : ""} below threshold)`);
253
+ }
254
+ }
255
+ else {
256
+ console.log("x Drift detected");
257
+ console.log("");
258
+ console.log(` Critical: ${summary.critical}`);
259
+ console.log(` Warning: ${summary.warning}`);
260
+ console.log(` Info: ${summary.info}`);
261
+ if (options.verbose && drifts.length > 0) {
262
+ console.log("");
263
+ console.log("Issues:");
264
+ for (const drift of drifts.slice(0, 10)) {
265
+ const sev = drift.severity === "critical" ? "!" : drift.severity === "warning" ? "~" : "i";
266
+ const loc = drift.source.location ? ` (${drift.source.location})` : "";
267
+ console.log(` [${sev}] ${drift.source.entityName}: ${drift.message}${loc}`);
268
+ }
269
+ if (drifts.length > 10)
270
+ console.log(` ... and ${drifts.length - 10} more`);
271
+ }
272
+ }
273
+ }
274
+ process.exit(exitCode);
275
+ return;
276
+ }
176
277
  log("Loading configuration...");
177
278
  const existingConfigPath = getConfigPath();
178
279
  let config;
@@ -1 +1 @@
1
- {"version":3,"file":"check.js","sourceRoot":"","sources":["../../src/commands/check.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"check.js","sourceRoot":"","sources":["../../src/commands/check.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"show.d.ts","sourceRoot":"","sources":["../../src/commands/show.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAU,MAAM,WAAW,CAAC;AAgC5C,OAAO,EAA8B,KAAK,aAAa,EAA2C,MAAM,mBAAmB,CAAC;AAC5H,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AA6DtD,wBAAgB,iBAAiB,IAAI,OAAO,CA47C3C;AAmLD;;GAEG;AACH,wBAAsB,mBAAmB,CACvC,MAAM,EAAE,UAAU,EAClB,IAAI,EAAE;IAAE,IAAI,EAAE,MAAM,CAAA;CAAE,EACtB,QAAQ,EAAE,OAAO,EACjB,WAAW,GAAE,MAAsB,GAClC,OAAO,CAAC,aAAa,CAAC,CAyFxB"}
1
+ {"version":3,"file":"show.d.ts","sourceRoot":"","sources":["../../src/commands/show.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAU,MAAM,WAAW,CAAC;AAiC5C,OAAO,EAA8B,KAAK,aAAa,EAA2C,MAAM,mBAAmB,CAAC;AAC5H,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AA6DtD,wBAAgB,iBAAiB,IAAI,OAAO,CAulD3C;AAmLD;;GAEG;AACH,wBAAsB,mBAAmB,CACvC,MAAM,EAAE,UAAU,EAClB,IAAI,EAAE;IAAE,IAAI,EAAE,MAAM,CAAA;CAAE,EACtB,QAAQ,EAAE,OAAO,EACjB,WAAW,GAAE,MAAsB,GAClC,OAAO,CAAC,aAAa,CAAC,CAyFxB"}
@@ -10,6 +10,7 @@ import { spinner, error, info, success, header, keyValue, newline, setJsonMode,
10
10
  import { formatDriftTable, formatDriftList, formatDriftTree, formatMarkdown, formatHtml, formatAgent, } from "../output/formatters.js";
11
11
  import { ScanOrchestrator } from "../scan/orchestrator.js";
12
12
  import { DriftAnalysisService } from "../services/drift-analysis.js";
13
+ import { classifyCheckInput, runSingleSourceOrRemoteCheck } from "../services/remote-check.js";
13
14
  import { saveHistory, getLastScore } from "../services/scan-history.js";
14
15
  import { withOptionalCache } from "@buoy-design/scanners";
15
16
  import { formatUpgradeHint } from "../utils/upgrade-hints.js";
@@ -242,15 +243,25 @@ export function createShowCommand() {
242
243
  cmd
243
244
  .command("drift")
244
245
  .description("Show drift signals (design system violations)")
246
+ .argument("[target]", "Optional local file path or public URL to analyze directly")
245
247
  .option("--json", "Output as JSON")
246
248
  .option("--raw", "Output raw signals without grouping")
247
249
  .option("-f, --format <type>", "Output format: json, markdown, html, table, tree, agent")
248
250
  .addOption(new Option("-S, --severity <level>", "Filter by minimum severity").choices(["info", "warning", "critical"]))
249
251
  .option("-t, --type <type>", "Filter by drift type")
250
252
  .option("-v, --verbose", "Verbose output with full details")
253
+ .option("--url <url>", "Public source file URL to analyze (supports bare host/path)")
254
+ .option("--tokens <urlOrPath>", "Remote/local token file for single-source drift analysis")
255
+ .option("--fixture <urlOrPath>", "Remote/local fixture manifest JSON (source + tokens + optional config)")
256
+ .option("--strict-remote", "Fail if remote/single-source analysis is missing tokens/config context")
257
+ .option("--allow-private-network", "Allow localhost/private IP URLs for remote analysis")
258
+ .option("--remote-timeout-ms <ms>", "Remote fetch timeout in ms", (v) => parseInt(v, 10))
259
+ .option("--remote-max-bytes <bytes>", "Max remote response size in bytes", (v) => parseInt(v, 10))
260
+ .option("--remote-cache", "Enable temporary in-run cache for remote fetches")
251
261
  .option("--include-ignored", "Include ignored drifts (show all)")
252
262
  .option("--clear-cache", "Clear cache before scanning")
253
- .action(async (options, command) => {
263
+ .action(async (target, options, command) => {
264
+ const resolvedTarget = typeof target === "string" ? target : command?.args?.[0];
254
265
  const parentOpts = command.parent?.opts() || {};
255
266
  const json = options.json || parentOpts.json !== false;
256
267
  const useJson = json && !options.format && !options.verbose;
@@ -259,6 +270,139 @@ export function createShowCommand() {
259
270
  }
260
271
  const spin = spinner("Analyzing drift...");
261
272
  try {
273
+ const inputMode = classifyCheckInput(resolvedTarget, {
274
+ url: options.url,
275
+ fixture: options.fixture,
276
+ });
277
+ if (inputMode !== "project") {
278
+ const remote = await runSingleSourceOrRemoteCheck({
279
+ failOn: "none",
280
+ verbose: options.verbose,
281
+ strictRemote: !!options.strictRemote,
282
+ allowPrivateNetwork: !!options.allowPrivateNetwork,
283
+ timeoutMs: options.remoteTimeoutMs,
284
+ maxBytes: options.remoteMaxBytes,
285
+ cache: !!options.remoteCache,
286
+ tokens: options.tokens,
287
+ fixture: options.fixture,
288
+ url: options.url,
289
+ target: resolvedTarget,
290
+ });
291
+ let drifts = remote.drifts;
292
+ if (options.severity) {
293
+ const rank = { info: 0, warning: 1, critical: 2 };
294
+ const min = rank[options.severity] ?? 0;
295
+ drifts = drifts.filter(d => rank[d.severity] >= min);
296
+ }
297
+ if (options.type) {
298
+ drifts = drifts.filter(d => d.type === options.type);
299
+ }
300
+ spin.stop();
301
+ const format = options.format;
302
+ if (format === "agent") {
303
+ console.log(formatAgent(drifts));
304
+ return;
305
+ }
306
+ if (format === "markdown") {
307
+ console.log(formatMarkdown(drifts));
308
+ return;
309
+ }
310
+ if (format === "html") {
311
+ const htmlContent = formatHtml(drifts, { designerFriendly: true });
312
+ const filename = "drift-report.html";
313
+ writeFileSync(filename, htmlContent);
314
+ success(`HTML report saved to ${filename}`);
315
+ return;
316
+ }
317
+ if (options.raw) {
318
+ console.log(JSON.stringify({
319
+ drifts,
320
+ summary: {
321
+ total: drifts.length,
322
+ critical: drifts.filter((d) => d.severity === "critical").length,
323
+ warning: drifts.filter((d) => d.severity === "warning").length,
324
+ info: drifts.filter((d) => d.severity === "info").length,
325
+ },
326
+ sourceContext: remote.sourceContext,
327
+ }, null, 2));
328
+ return;
329
+ }
330
+ if (format === "json" || useJson) {
331
+ const aggregator = new DriftAggregator({
332
+ strategies: ["value", "suggestion", "path", "entity"],
333
+ minGroupSize: 2,
334
+ pathPatterns: [],
335
+ });
336
+ const aggregated = aggregator.aggregate(drifts);
337
+ console.log(JSON.stringify({
338
+ groups: aggregated.groups.map(g => ({
339
+ id: g.id,
340
+ strategy: g.groupingKey.strategy,
341
+ key: g.groupingKey.value,
342
+ summary: g.summary,
343
+ count: g.totalCount,
344
+ severity: g.bySeverity,
345
+ representative: {
346
+ type: g.representative.type,
347
+ message: g.representative.message,
348
+ location: g.representative.source.location,
349
+ tokenSuggestions: g.representative.details?.tokenSuggestions || undefined,
350
+ },
351
+ })),
352
+ ungrouped: aggregated.ungrouped.map(d => ({
353
+ id: d.id,
354
+ type: d.type,
355
+ severity: d.severity,
356
+ message: d.message,
357
+ location: d.source.location,
358
+ tokenSuggestions: d.details?.tokenSuggestions || undefined,
359
+ })),
360
+ summary: {
361
+ totalSignals: aggregated.totalSignals,
362
+ totalGroups: aggregated.totalGroups,
363
+ ungroupedCount: aggregated.ungrouped.length,
364
+ reductionRatio: Math.round(aggregated.reductionRatio * 10) / 10,
365
+ bySeverity: {
366
+ critical: drifts.filter((d) => d.severity === "critical").length,
367
+ warning: drifts.filter((d) => d.severity === "warning").length,
368
+ info: drifts.filter((d) => d.severity === "info").length,
369
+ },
370
+ },
371
+ ignoredCount: 0,
372
+ sourceContext: remote.sourceContext,
373
+ }, null, 2));
374
+ return;
375
+ }
376
+ const uniqueFiles = new Set(drifts.map(d => d.source.location?.split(':')[0] || d.source.entityName));
377
+ if (remote.sourceContext.confidence === "reduced") {
378
+ info("Reduced-confidence remote/single-file drift analysis");
379
+ if (remote.sourceContext.reason)
380
+ info(remote.sourceContext.reason);
381
+ info(`Source: ${remote.sourceContext.source}`);
382
+ newline();
383
+ }
384
+ if (options.verbose) {
385
+ header("Drift Analysis");
386
+ newline();
387
+ const summary = getSummary(drifts);
388
+ keyValue("Components scanned", "n/a (remote/single-file)");
389
+ keyValue("Critical", String(summary.critical));
390
+ keyValue("Warning", String(summary.warning));
391
+ keyValue("Info", String(summary.info));
392
+ newline();
393
+ console.log(formatDriftList(drifts));
394
+ }
395
+ else if (format === "table") {
396
+ header("Drift Analysis");
397
+ newline();
398
+ console.log(formatDriftTable(drifts));
399
+ }
400
+ else {
401
+ newline();
402
+ console.log(formatDriftTree(drifts, uniqueFiles.size));
403
+ }
404
+ return;
405
+ }
262
406
  const { config, projectRoot } = await getOrBuildConfigWithRoot();
263
407
  const { result } = await withOptionalCache(projectRoot, parentOpts.cache !== false, async (cache) => {
264
408
  const service = new DriftAnalysisService(config, projectRoot);