@vyuhlabs/dxkit 2.21.1 → 2.22.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.
Files changed (57) hide show
  1. package/CHANGELOG.md +47 -0
  2. package/dist/analyzers/flow/config.d.ts +10 -0
  3. package/dist/analyzers/flow/config.d.ts.map +1 -1
  4. package/dist/analyzers/flow/config.js +29 -0
  5. package/dist/analyzers/flow/config.js.map +1 -1
  6. package/dist/analyzers/flow/contract.d.ts +12 -0
  7. package/dist/analyzers/flow/contract.d.ts.map +1 -1
  8. package/dist/analyzers/flow/contract.js +20 -0
  9. package/dist/analyzers/flow/contract.js.map +1 -1
  10. package/dist/analyzers/flow/diagnose.d.ts +62 -0
  11. package/dist/analyzers/flow/diagnose.d.ts.map +1 -0
  12. package/dist/analyzers/flow/diagnose.js +120 -0
  13. package/dist/analyzers/flow/diagnose.js.map +1 -0
  14. package/dist/analyzers/flow/publish.d.ts +47 -0
  15. package/dist/analyzers/flow/publish.d.ts.map +1 -0
  16. package/dist/analyzers/flow/publish.js +146 -0
  17. package/dist/analyzers/flow/publish.js.map +1 -0
  18. package/dist/analyzers/flow/setup.d.ts +71 -0
  19. package/dist/analyzers/flow/setup.d.ts.map +1 -0
  20. package/dist/analyzers/flow/setup.js +136 -0
  21. package/dist/analyzers/flow/setup.js.map +1 -0
  22. package/dist/baseline/check.d.ts.map +1 -1
  23. package/dist/baseline/check.js +10 -6
  24. package/dist/baseline/check.js.map +1 -1
  25. package/dist/baseline/flow-gate-check.d.ts +16 -7
  26. package/dist/baseline/flow-gate-check.d.ts.map +1 -1
  27. package/dist/baseline/flow-gate-check.js +17 -7
  28. package/dist/baseline/flow-gate-check.js.map +1 -1
  29. package/dist/cli.d.ts.map +1 -1
  30. package/dist/cli.js +52 -2
  31. package/dist/cli.js.map +1 -1
  32. package/dist/doctor.d.ts +7 -0
  33. package/dist/doctor.d.ts.map +1 -1
  34. package/dist/doctor.js +38 -1
  35. package/dist/doctor.js.map +1 -1
  36. package/dist/flow-cli.d.ts +10 -0
  37. package/dist/flow-cli.d.ts.map +1 -1
  38. package/dist/flow-cli.js +46 -0
  39. package/dist/flow-cli.js.map +1 -1
  40. package/dist/generator.d.ts.map +1 -1
  41. package/dist/generator.js +6 -0
  42. package/dist/generator.js.map +1 -1
  43. package/dist/prompts.d.ts +15 -0
  44. package/dist/prompts.d.ts.map +1 -1
  45. package/dist/prompts.js +66 -0
  46. package/dist/prompts.js.map +1 -1
  47. package/dist/workspace.d.ts +52 -0
  48. package/dist/workspace.d.ts.map +1 -0
  49. package/dist/workspace.js +130 -0
  50. package/dist/workspace.js.map +1 -0
  51. package/package.json +1 -1
  52. package/templates/.claude/skills/dxkit-config/SKILL.md +14 -0
  53. package/templates/.claude/skills/dxkit-fix/SKILL.md +2 -0
  54. package/templates/.claude/skills/dxkit-flow/SKILL.md +83 -0
  55. package/templates/.claude/skills/dxkit-hooks/SKILL.md +1 -1
  56. package/templates/.claude/skills/dxkit-init/SKILL.md +5 -0
  57. package/templates/.claude/skills/dxkit-onboard/SKILL.md +2 -0
@@ -0,0 +1,71 @@
1
+ /**
2
+ * Flow setup — the detection + apply behind folding `flow init` into `init`.
3
+ *
4
+ * `init` runs `detectFlowTopology` to decide whether a repo even HAS a UI→API
5
+ * surface worth gating (if not, the init wizard stays silent — zero burden).
6
+ * When it does, init surfaces the two learnings this module computes — the
7
+ * dominant host-helper to strip, and any multiple backend services — as confirm
8
+ * prompts, then `applyFlowSetup` writes the resulting config (`.dxkit/policy.json:flow`
9
+ * plus `.dxkit/workspace.json` when participants are named).
10
+ *
11
+ * Detection reuses the same `gatherFlowModel` the gate runs (Rule 2 — one
12
+ * extractor); it never re-parses source itself. Fail-open throughout — an error
13
+ * degrades to "no flow detected", which the caller treats as "don't ask".
14
+ */
15
+ import { type FlowGateMode } from './config';
16
+ import { type WorkspaceParticipant } from '../../workspace';
17
+ import type { ClientCall, RouteEndpoint } from './extract';
18
+ /** Which halves of the UI→API contract this repo contains. */
19
+ export type FlowTopology = 'monorepo' | 'consumer-only' | 'provider-only' | 'none';
20
+ export interface FlowDetection {
21
+ /** monorepo (both sides) · consumer-only (calls, no routes) · provider-only
22
+ * (routes, no calls) · none (nothing to gate — stay silent). */
23
+ readonly topology: FlowTopology;
24
+ readonly callCount: number;
25
+ readonly routeCount: number;
26
+ /** Calls that already bind to a served route — the healthy baseline. */
27
+ readonly resolvedCount: number;
28
+ /** Dominant host-helper prefix(es) across client calls — the strip-prefix the
29
+ * setup offers so a call like `${Config.api()}/x` matches a served `/x`. */
30
+ readonly suggestedStripPrefixes: readonly string[];
31
+ /** Distinct top-level directories that serve routes — a best-effort
32
+ * multi-service hint (robust multi-repo splitting is M4.3's `flow publish`). */
33
+ readonly detectedServices: readonly string[];
34
+ }
35
+ /**
36
+ * Detect the repo's flow topology by running the shared extractor. Returns
37
+ * `topology: 'none'` (and the caller stays silent) when no flow-capable pack is
38
+ * active, when extraction finds nothing, or on any error.
39
+ */
40
+ export declare function detectFlowTopology(cwd: string): Promise<FlowDetection>;
41
+ /**
42
+ * The prefix of a raw client URL that is NOT part of the route path — an
43
+ * absolute `scheme://host`, or a leading `${...}` base-URL helper template. A
44
+ * relative URL (`/articles`) has no host prefix. This is exactly what a
45
+ * strip-prefix removes so a templated call matches a served route.
46
+ */
47
+ export declare function hostPrefixOf(rawUrl: string): string | null;
48
+ /** Host-helper prefixes ranked by frequency across calls, most common first.
49
+ * Empty when calls are all relative (nothing to strip). */
50
+ export declare function dominantHostPrefixes(calls: readonly ClientCall[]): string[];
51
+ /** Distinct top-level directories that contain served routes — a coarse
52
+ * multi-service signal. Returns [] when routes live under one top-level dir
53
+ * (a single service). Deeper (nested / multi-repo) service splitting is
54
+ * M4.3's concern; here we only surface the obvious top-level split. */
55
+ export declare function servicesFromRoutes(routes: readonly RouteEndpoint[]): string[];
56
+ /** The confirmed setup a caller applies after the init prompts. */
57
+ export interface FlowSetupDecision {
58
+ readonly mode: FlowGateMode;
59
+ readonly stripUrlPrefixes: readonly string[];
60
+ /** Named participants → written to workspace.json (the multi-service /
61
+ * cross-repo case). Omitted for a single-service monorepo. */
62
+ readonly participants?: readonly WorkspaceParticipant[];
63
+ }
64
+ /**
65
+ * Apply a confirmed flow setup: write `flow.mode` (+ strip prefixes) into
66
+ * `.dxkit/policy.json` via the canonical writer, and — when participants are
67
+ * named — `.dxkit/workspace.json`. Returns the repo-relative paths written (for
68
+ * the init summary). Never throws on an already-current policy (idempotent).
69
+ */
70
+ export declare function applyFlowSetup(cwd: string, decision: FlowSetupDecision): string[];
71
+ //# sourceMappingURL=setup.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"setup.d.ts","sourceRoot":"","sources":["../../../src/analyzers/flow/setup.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AAKH,OAAO,EAAmB,KAAK,YAAY,EAAE,MAAM,UAAU,CAAC;AAC9D,OAAO,EAAkB,KAAK,oBAAoB,EAAE,MAAM,iBAAiB,CAAC;AAC5E,OAAO,KAAK,EAAE,UAAU,EAAE,aAAa,EAAE,MAAM,WAAW,CAAC;AAE3D,8DAA8D;AAC9D,MAAM,MAAM,YAAY,GAAG,UAAU,GAAG,eAAe,GAAG,eAAe,GAAG,MAAM,CAAC;AAEnF,MAAM,WAAW,aAAa;IAC5B;qEACiE;IACjE,QAAQ,CAAC,QAAQ,EAAE,YAAY,CAAC;IAChC,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;IAC5B,wEAAwE;IACxE,QAAQ,CAAC,aAAa,EAAE,MAAM,CAAC;IAC/B;iFAC6E;IAC7E,QAAQ,CAAC,sBAAsB,EAAE,SAAS,MAAM,EAAE,CAAC;IACnD;qFACiF;IACjF,QAAQ,CAAC,gBAAgB,EAAE,SAAS,MAAM,EAAE,CAAC;CAC9C;AAWD;;;;GAIG;AACH,wBAAsB,kBAAkB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,aAAa,CAAC,CAmC5E;AAED;;;;;GAKG;AACH,wBAAgB,YAAY,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAU1D;AAED;4DAC4D;AAC5D,wBAAgB,oBAAoB,CAAC,KAAK,EAAE,SAAS,UAAU,EAAE,GAAG,MAAM,EAAE,CAO3E;AAED;;;wEAGwE;AACxE,wBAAgB,kBAAkB,CAAC,MAAM,EAAE,SAAS,aAAa,EAAE,GAAG,MAAM,EAAE,CAO7E;AAED,mEAAmE;AACnE,MAAM,WAAW,iBAAiB;IAChC,QAAQ,CAAC,IAAI,EAAE,YAAY,CAAC;IAC5B,QAAQ,CAAC,gBAAgB,EAAE,SAAS,MAAM,EAAE,CAAC;IAC7C;mEAC+D;IAC/D,QAAQ,CAAC,YAAY,CAAC,EAAE,SAAS,oBAAoB,EAAE,CAAC;CACzD;AAED;;;;;GAKG;AACH,wBAAgB,cAAc,CAAC,GAAG,EAAE,MAAM,EAAE,QAAQ,EAAE,iBAAiB,GAAG,MAAM,EAAE,CAcjF"}
@@ -0,0 +1,136 @@
1
+ "use strict";
2
+ /**
3
+ * Flow setup — the detection + apply behind folding `flow init` into `init`.
4
+ *
5
+ * `init` runs `detectFlowTopology` to decide whether a repo even HAS a UI→API
6
+ * surface worth gating (if not, the init wizard stays silent — zero burden).
7
+ * When it does, init surfaces the two learnings this module computes — the
8
+ * dominant host-helper to strip, and any multiple backend services — as confirm
9
+ * prompts, then `applyFlowSetup` writes the resulting config (`.dxkit/policy.json:flow`
10
+ * plus `.dxkit/workspace.json` when participants are named).
11
+ *
12
+ * Detection reuses the same `gatherFlowModel` the gate runs (Rule 2 — one
13
+ * extractor); it never re-parses source itself. Fail-open throughout — an error
14
+ * degrades to "no flow detected", which the caller treats as "don't ask".
15
+ */
16
+ Object.defineProperty(exports, "__esModule", { value: true });
17
+ exports.detectFlowTopology = detectFlowTopology;
18
+ exports.hostPrefixOf = hostPrefixOf;
19
+ exports.dominantHostPrefixes = dominantHostPrefixes;
20
+ exports.servicesFromRoutes = servicesFromRoutes;
21
+ exports.applyFlowSetup = applyFlowSetup;
22
+ const languages_1 = require("../../languages");
23
+ const gather_1 = require("./gather");
24
+ const model_1 = require("./model");
25
+ const config_1 = require("./config");
26
+ const workspace_1 = require("../../workspace");
27
+ const NONE = {
28
+ topology: 'none',
29
+ callCount: 0,
30
+ routeCount: 0,
31
+ resolvedCount: 0,
32
+ suggestedStripPrefixes: [],
33
+ detectedServices: [],
34
+ };
35
+ /**
36
+ * Detect the repo's flow topology by running the shared extractor. Returns
37
+ * `topology: 'none'` (and the caller stays silent) when no flow-capable pack is
38
+ * active, when extraction finds nothing, or on any error.
39
+ */
40
+ async function detectFlowTopology(cwd) {
41
+ // Cheap gate first: if no active pack extracts flow, don't even run the
42
+ // extractor (keeps `init --yes` on a non-flow repo fast).
43
+ if ((0, languages_1.allFlowSourceExtensions)((0, languages_1.detectActiveLanguages)(cwd)).length === 0)
44
+ return NONE;
45
+ let model;
46
+ try {
47
+ model = await (0, gather_1.gatherFlowModel)({ roots: [cwd] });
48
+ }
49
+ catch {
50
+ return NONE;
51
+ }
52
+ const callCount = model.calls.length;
53
+ const routeCount = model.routes.length;
54
+ if (callCount === 0 && routeCount === 0)
55
+ return NONE;
56
+ const resolvedCount = model.bindings.filter((b) => b.route !== null && !(0, model_1.isPlaceholderOnlyPath)(b.route.path)).length;
57
+ const topology = callCount > 0 && routeCount > 0
58
+ ? 'monorepo'
59
+ : callCount > 0
60
+ ? 'consumer-only'
61
+ : 'provider-only';
62
+ return {
63
+ topology,
64
+ callCount,
65
+ routeCount,
66
+ resolvedCount,
67
+ suggestedStripPrefixes: dominantHostPrefixes(model.calls),
68
+ detectedServices: servicesFromRoutes(model.routes),
69
+ };
70
+ }
71
+ /**
72
+ * The prefix of a raw client URL that is NOT part of the route path — an
73
+ * absolute `scheme://host`, or a leading `${...}` base-URL helper template. A
74
+ * relative URL (`/articles`) has no host prefix. This is exactly what a
75
+ * strip-prefix removes so a templated call matches a served route.
76
+ */
77
+ function hostPrefixOf(rawUrl) {
78
+ // A template-literal URL is captured WITH its backticks (`${Config.api()}/x`);
79
+ // strip a leading one so the `${...}` head is at the string start. A plain
80
+ // string literal is captured without quotes, so this is a no-op for it.
81
+ const s = rawUrl.replace(/^`/, '');
82
+ const abs = /^(https?:\/\/[^/`]+)/.exec(s);
83
+ if (abs)
84
+ return abs[1];
85
+ const tmpl = /^(\$\{[^}]+\})/.exec(s);
86
+ if (tmpl)
87
+ return tmpl[1];
88
+ return null;
89
+ }
90
+ /** Host-helper prefixes ranked by frequency across calls, most common first.
91
+ * Empty when calls are all relative (nothing to strip). */
92
+ function dominantHostPrefixes(calls) {
93
+ const counts = new Map();
94
+ for (const c of calls) {
95
+ const p = hostPrefixOf(c.rawUrl);
96
+ if (p)
97
+ counts.set(p, (counts.get(p) ?? 0) + 1);
98
+ }
99
+ return [...counts.entries()].sort((a, b) => b[1] - a[1]).map(([p]) => p);
100
+ }
101
+ /** Distinct top-level directories that contain served routes — a coarse
102
+ * multi-service signal. Returns [] when routes live under one top-level dir
103
+ * (a single service). Deeper (nested / multi-repo) service splitting is
104
+ * M4.3's concern; here we only surface the obvious top-level split. */
105
+ function servicesFromRoutes(routes) {
106
+ const dirs = new Set();
107
+ for (const r of routes) {
108
+ const top = r.file.split(/[/\\]/)[0];
109
+ if (top && top !== r.file)
110
+ dirs.add(top); // skip files at repo root (no dir)
111
+ }
112
+ return dirs.size >= 2 ? [...dirs].sort() : [];
113
+ }
114
+ /**
115
+ * Apply a confirmed flow setup: write `flow.mode` (+ strip prefixes) into
116
+ * `.dxkit/policy.json` via the canonical writer, and — when participants are
117
+ * named — `.dxkit/workspace.json`. Returns the repo-relative paths written (for
118
+ * the init summary). Never throws on an already-current policy (idempotent).
119
+ */
120
+ function applyFlowSetup(cwd, decision) {
121
+ const written = [];
122
+ const changed = (0, config_1.writeFlowPolicy)(cwd, {
123
+ mode: decision.mode,
124
+ ...(decision.stripUrlPrefixes.length
125
+ ? { stripUrlPrefixes: [...decision.stripUrlPrefixes] }
126
+ : {}),
127
+ });
128
+ if (changed)
129
+ written.push('.dxkit/policy.json');
130
+ if (decision.participants && decision.participants.length > 0) {
131
+ (0, workspace_1.writeWorkspace)(cwd, { participants: [...decision.participants], external: [] });
132
+ written.push('.dxkit/workspace.json');
133
+ }
134
+ return written;
135
+ }
136
+ //# sourceMappingURL=setup.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"setup.js","sourceRoot":"","sources":["../../../src/analyzers/flow/setup.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"check.d.ts","sourceRoot":"","sources":["../../src/baseline/check.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"check.d.ts","sourceRoot":"","sources":["../../src/baseline/check.ts"],"names":[],"mappings":"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"}
@@ -410,13 +410,17 @@ async function runGuardrailCheck(options) {
410
410
  // degenerate when the SHA isn't reachable (shallow clone, etc.)
411
411
  // and the renderer treats that as "delta unavailable."
412
412
  const allowlistDelta = (0, diff_1.computeAllowlistDelta)(cwd, baseline.repo.commitSha);
413
- // The flow integration gate — an additive, fail-open pass over the same
414
- // ref-based comparison. It runs its own base↔HEAD flow gather (independent of
415
- // the finding matcher above) and never throws; its verdict folds into the
416
- // top-level one. Runs only in ref-based mode.
413
+ // The flow integration gate — an additive, fail-open pass that runs its own
414
+ // base↔HEAD flow gather (independent of the finding matcher above) and never
415
+ // throws; its verdict folds into the top-level one. It needs only a base
416
+ // COMMIT to diff against: the resolved git ref in ref-based mode, or the
417
+ // committed baseline's anchor SHA in committed mode (flow-binding has no
418
+ // committed prior side — the base flow model is gathered fresh from that
419
+ // commit either way, so the gate works in both modes).
420
+ const flowBaseRef = mode.mode === 'ref-based' ? mode.ref : baseline.repo.commitSha;
417
421
  const flowGate = await (0, flow_gate_check_1.evaluateFlowGateForGuardrail)({
418
422
  cwd,
419
- mode,
423
+ ...(flowBaseRef ? { baseRef: flowBaseRef } : {}),
420
424
  // Same loaded allowlist + clock the matcher-pair suppression uses, so an
421
425
  // active `flow-binding` entry waives a flow block exactly like any other
422
426
  // finding kind (the per-finding escape hatch).
@@ -440,7 +444,7 @@ async function runGuardrailCheck(options) {
440
444
  warns: baseWarns || flowGate.warns,
441
445
  allowlistDelta,
442
446
  refExcludedKinds,
443
- ...(flowGate.ran || flowGate.skipped !== 'not-ref-based' ? { flowGate } : {}),
447
+ ...(flowGate.ran || flowGate.skipped !== 'no-base-ref' ? { flowGate } : {}),
444
448
  };
445
449
  }
446
450
  // `resolvePolicy` moved to `./policy.ts` so `createBaseline` and
@@ -1 +1 @@
1
- {"version":3,"file":"check.js","sourceRoot":"","sources":["../../src/baseline/check.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"check.js","sourceRoot":"","sources":["../../src/baseline/check.ts"],"names":[],"mappings":"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"}
@@ -5,10 +5,15 @@
5
5
  * This is guardrail-integration glue, not analysis: it composes the pure flow
6
6
  * gate (`analyzers/flow/gate.ts`) with the ref-based gather primitive
7
7
  * (`withRefWorktree`, Rule 11) to answer "does this diff net-new break a UI→API
8
- * integration?" without touching the existing net-new finding matcher. The gate
9
- * runs only in ref-based mode, where a base↔HEAD comparison is well defined
10
- * (committed mode has no base flow model flow-binding is a deferred baseline
11
- * kind, minted here ref-based rather than at baseline-create).
8
+ * integration?" without touching the existing net-new finding matcher.
9
+ *
10
+ * The gate is mode-agnostic: it needs only a base COMMIT to diff HEAD against,
11
+ * not a base baseline file. The caller supplies that commit — the resolved git
12
+ * ref in ref-based mode, or the committed baseline's anchor `repo.commitSha` in
13
+ * committed mode. Either way the base flow model is gathered fresh from a
14
+ * worktree at that commit, so flow-binding needs no committed prior side (it's a
15
+ * deferred baseline kind, minted here at gate time rather than at
16
+ * baseline-create). When no base commit is resolvable at all, the gate skips.
12
17
  *
13
18
  * Every failure path degrades to "did not gate" rather than an error: a
14
19
  * missing base ref, an unparseable tree, a repo with no server-side truth to
@@ -21,12 +26,11 @@
21
26
  * yields any served route the gate self-skips: with no served inventory every
22
27
  * consumed binding would look broken, so gating would be all false positives.
23
28
  */
24
- import type { ResolvedMode } from './modes';
25
29
  import { type BrokenIntegration } from '../analyzers/flow/gate';
26
30
  import { type FlowGateMode } from '../analyzers/flow/config';
27
31
  import type { AllowlistFile } from '../allowlist/file';
28
32
  /** Why the gate produced no verdict, when it didn't run. */
29
- export type FlowGateSkip = 'off' | 'not-ref-based' | 'no-flow-surface-change' | 'no-served-truth' | 'error';
33
+ export type FlowGateSkip = 'off' | 'no-base-ref' | 'no-flow-surface-change' | 'no-served-truth' | 'error';
30
34
  /** A broken integration that an active allowlist entry waived from the verdict.
31
35
  * Mirrors the matcher pairs' `suppressedByAllowlist`: the finding is still
32
36
  * surfaced (for audit), but it does not block or warn. */
@@ -61,6 +65,11 @@ export interface FlowGateOutcome {
61
65
  * returned `blocks` / `warns` into the overall verdict and attaches the outcome
62
66
  * to the result for rendering.
63
67
  *
68
+ * @param baseRef the base commit to diff HEAD against — the resolved git ref in
69
+ * ref-based mode, or the committed baseline's anchor `repo.commitSha` in
70
+ * committed mode. Both yield a fresh base flow gather from a worktree at that
71
+ * commit, so the gate works identically in either mode. When absent (no ref,
72
+ * no baseline anchor), the gate skips.
64
73
  * @param modeOverride the loop Stop-gate's posture-derived mode (the seam that
65
74
  * lets `security-only` warn while `full-debt` blocks) — wins over the
66
75
  * `.dxkit/policy.json:flow.mode` default.
@@ -71,7 +80,7 @@ export interface FlowGateOutcome {
71
80
  */
72
81
  export declare function evaluateFlowGateForGuardrail(opts: {
73
82
  readonly cwd: string;
74
- readonly mode: ResolvedMode;
83
+ readonly baseRef?: string;
75
84
  readonly modeOverride?: FlowGateMode;
76
85
  readonly verbose?: boolean;
77
86
  readonly allowlist?: AllowlistFile | null;
@@ -1 +1 @@
1
- {"version":3,"file":"flow-gate-check.d.ts","sourceRoot":"","sources":["../../src/baseline/flow-gate-check.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;GAsBG;AAMH,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AAS5C,OAAO,EAAoB,KAAK,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AAClF,OAAO,EAAkB,KAAK,YAAY,EAAE,MAAM,0BAA0B,CAAC;AAE7E,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AAEvD,4DAA4D;AAC5D,MAAM,MAAM,YAAY,GACpB,KAAK,GACL,eAAe,GACf,wBAAwB,GACxB,iBAAiB,GACjB,OAAO,CAAC;AAEZ;;2DAE2D;AAC3D,MAAM,WAAW,mBAAmB;IAClC,QAAQ,CAAC,OAAO,EAAE,iBAAiB,CAAC;IACpC,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAC7B,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC;CAC7B;AAED,mFAAmF;AACnF,MAAM,WAAW,eAAe;IAC9B,oEAAoE;IACpE,QAAQ,CAAC,GAAG,EAAE,OAAO,CAAC;IACtB,0EAA0E;IAC1E,QAAQ,CAAC,OAAO,CAAC,EAAE,YAAY,CAAC;IAChC,4EAA4E;IAC5E,QAAQ,CAAC,IAAI,EAAE,YAAY,CAAC;IAC5B;;mEAE+D;IAC/D,QAAQ,CAAC,QAAQ,EAAE,SAAS,iBAAiB,EAAE,CAAC;IAChD;mDAC+C;IAC/C,QAAQ,CAAC,UAAU,EAAE,SAAS,mBAAmB,EAAE,CAAC;IACpD,oFAAoF;IACpF,QAAQ,CAAC,MAAM,EAAE,OAAO,CAAC;IACzB,mDAAmD;IACnD,QAAQ,CAAC,KAAK,EAAE,OAAO,CAAC;CACzB;AAkDD;;;;;;;;;;;;GAYG;AACH,wBAAsB,4BAA4B,CAAC,IAAI,EAAE;IACvD,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,IAAI,EAAE,YAAY,CAAC;IAC5B,QAAQ,CAAC,YAAY,CAAC,EAAE,YAAY,CAAC;IACrC,QAAQ,CAAC,OAAO,CAAC,EAAE,OAAO,CAAC;IAC3B,QAAQ,CAAC,SAAS,CAAC,EAAE,aAAa,GAAG,IAAI,CAAC;IAC1C,QAAQ,CAAC,GAAG,CAAC,EAAE,IAAI,CAAC;CACrB,GAAG,OAAO,CAAC,eAAe,CAAC,CA+F3B"}
1
+ {"version":3,"file":"flow-gate-check.d.ts","sourceRoot":"","sources":["../../src/baseline/flow-gate-check.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2BG;AAcH,OAAO,EAAoB,KAAK,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AAClF,OAAO,EAAkB,KAAK,YAAY,EAAE,MAAM,0BAA0B,CAAC;AAE7E,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AAEvD,4DAA4D;AAC5D,MAAM,MAAM,YAAY,GACpB,KAAK,GACL,aAAa,GACb,wBAAwB,GACxB,iBAAiB,GACjB,OAAO,CAAC;AAEZ;;2DAE2D;AAC3D,MAAM,WAAW,mBAAmB;IAClC,QAAQ,CAAC,OAAO,EAAE,iBAAiB,CAAC;IACpC,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAC7B,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC;CAC7B;AAED,mFAAmF;AACnF,MAAM,WAAW,eAAe;IAC9B,oEAAoE;IACpE,QAAQ,CAAC,GAAG,EAAE,OAAO,CAAC;IACtB,0EAA0E;IAC1E,QAAQ,CAAC,OAAO,CAAC,EAAE,YAAY,CAAC;IAChC,4EAA4E;IAC5E,QAAQ,CAAC,IAAI,EAAE,YAAY,CAAC;IAC5B;;mEAE+D;IAC/D,QAAQ,CAAC,QAAQ,EAAE,SAAS,iBAAiB,EAAE,CAAC;IAChD;mDAC+C;IAC/C,QAAQ,CAAC,UAAU,EAAE,SAAS,mBAAmB,EAAE,CAAC;IACpD,oFAAoF;IACpF,QAAQ,CAAC,MAAM,EAAE,OAAO,CAAC;IACzB,mDAAmD;IACnD,QAAQ,CAAC,KAAK,EAAE,OAAO,CAAC;CACzB;AAkDD;;;;;;;;;;;;;;;;;GAiBG;AACH,wBAAsB,4BAA4B,CAAC,IAAI,EAAE;IACvD,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,OAAO,CAAC,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,YAAY,CAAC,EAAE,YAAY,CAAC;IACrC,QAAQ,CAAC,OAAO,CAAC,EAAE,OAAO,CAAC;IAC3B,QAAQ,CAAC,SAAS,CAAC,EAAE,aAAa,GAAG,IAAI,CAAC;IAC1C,QAAQ,CAAC,GAAG,CAAC,EAAE,IAAI,CAAC;CACrB,GAAG,OAAO,CAAC,eAAe,CAAC,CA+F3B"}
@@ -6,10 +6,15 @@
6
6
  * This is guardrail-integration glue, not analysis: it composes the pure flow
7
7
  * gate (`analyzers/flow/gate.ts`) with the ref-based gather primitive
8
8
  * (`withRefWorktree`, Rule 11) to answer "does this diff net-new break a UI→API
9
- * integration?" without touching the existing net-new finding matcher. The gate
10
- * runs only in ref-based mode, where a base↔HEAD comparison is well defined
11
- * (committed mode has no base flow model flow-binding is a deferred baseline
12
- * kind, minted here ref-based rather than at baseline-create).
9
+ * integration?" without touching the existing net-new finding matcher.
10
+ *
11
+ * The gate is mode-agnostic: it needs only a base COMMIT to diff HEAD against,
12
+ * not a base baseline file. The caller supplies that commit — the resolved git
13
+ * ref in ref-based mode, or the committed baseline's anchor `repo.commitSha` in
14
+ * committed mode. Either way the base flow model is gathered fresh from a
15
+ * worktree at that commit, so flow-binding needs no committed prior side (it's a
16
+ * deferred baseline kind, minted here at gate time rather than at
17
+ * baseline-create). When no base commit is resolvable at all, the gate skips.
13
18
  *
14
19
  * Every failure path degrades to "did not gate" rather than an error: a
15
20
  * missing base ref, an unparseable tree, a repo with no server-side truth to
@@ -114,6 +119,11 @@ function partitionByAllowlist(findings, allowlist, now) {
114
119
  * returned `blocks` / `warns` into the overall verdict and attaches the outcome
115
120
  * to the result for rendering.
116
121
  *
122
+ * @param baseRef the base commit to diff HEAD against — the resolved git ref in
123
+ * ref-based mode, or the committed baseline's anchor `repo.commitSha` in
124
+ * committed mode. Both yield a fresh base flow gather from a worktree at that
125
+ * commit, so the gate works identically in either mode. When absent (no ref,
126
+ * no baseline anchor), the gate skips.
117
127
  * @param modeOverride the loop Stop-gate's posture-derived mode (the seam that
118
128
  * lets `security-only` warn while `full-debt` blocks) — wins over the
119
129
  * `.dxkit/policy.json:flow.mode` default.
@@ -128,9 +138,9 @@ async function evaluateFlowGateForGuardrail(opts) {
128
138
  const gateMode = opts.modeOverride ?? config.mode;
129
139
  if (gateMode === 'off')
130
140
  return skip(gateMode, 'off');
131
- if (opts.mode.mode !== 'ref-based' || !opts.mode.ref)
132
- return skip(gateMode, 'not-ref-based');
133
- const ref = opts.mode.ref;
141
+ if (!opts.baseRef)
142
+ return skip(gateMode, 'no-base-ref');
143
+ const ref = opts.baseRef;
134
144
  try {
135
145
  // Trigger-skip: a net-new broken integration requires a change to a client
136
146
  // call, a route, or a spec. When the diff touched none, there is nothing to
@@ -1 +1 @@
1
- {"version":3,"file":"flow-gate-check.js","sourceRoot":"","sources":["../../src/baseline/flow-gate-check.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"flow-gate-check.js","sourceRoot":"","sources":["../../src/baseline/flow-gate-check.ts"],"names":[],"mappings":"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"}
package/dist/cli.d.ts.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"cli.d.ts","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":"AAuSA,wBAAsB,GAAG,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAq8DvD"}
1
+ {"version":3,"file":"cli.d.ts","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":"AA4SA,wBAAsB,GAAG,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAo/DvD"}
package/dist/cli.js CHANGED
@@ -39,6 +39,7 @@ const vendored_advisor_1 = require("./analyzers/tools/vendored-advisor");
39
39
  const detect_1 = require("./detect");
40
40
  const generator_1 = require("./generator");
41
41
  const prompts_1 = require("./prompts");
42
+ const setup_1 = require("./analyzers/flow/setup");
42
43
  const update_1 = require("./update");
43
44
  const doctor_1 = require("./doctor");
44
45
  const constants_1 = require("./constants");
@@ -247,6 +248,10 @@ function printUsage() {
247
248
  CLAUDE.md, preserving your content). Implies dxkit skills.
248
249
  --loop-preset <p> Loop blocking posture: security-only (default) or
249
250
  full-debt. Only meaningful with --claude-loop.
251
+ --flow Set up the UI→API integration gate (warn posture),
252
+ no prompt. Auto-offered interactively when init
253
+ detects a UI→API surface.
254
+ --no-flow Skip flow setup even when a UI→API surface is detected.
250
255
  --detect Auto-detect stack, minimal prompts
251
256
  --yes Accept all defaults, no prompts
252
257
  --force Overwrite existing files (incl. existing hooks/
@@ -349,6 +354,10 @@ async function run(argv) {
349
354
  // loop pack: register the Stop-gate hook + CLAUDE.md loop norm
350
355
  'claude-loop': { type: 'boolean', default: false },
351
356
  'loop-preset': { type: 'string' },
357
+ // flow setup (folded into init; no standalone `flow init`).
358
+ // --flow forces it on (warn posture); --no-flow suppresses it.
359
+ flow: { type: 'boolean', default: false },
360
+ 'no-flow': { type: 'boolean', default: false },
352
361
  // setup-branch-protection flags
353
362
  branch: { type: 'string' },
354
363
  'require-reviews': { type: 'string' },
@@ -465,9 +474,11 @@ async function run(argv) {
465
474
  // via flags but bundled under --full).
466
475
  // --claude-loop implies the dxkit skills so the dxkit-loop skill (and
467
476
  // its siblings) land — the loop is most useful when the user can ask
468
- // Claude to explain a block / switch presets conversationally.
477
+ // Claude to explain a block / switch presets conversationally. --flow
478
+ // does the same for the dxkit-flow skill: setting up the integration gate
479
+ // is most useful when Claude can then diagnose + repair a break with it.
469
480
  const wantClaudeLoop = !!values['claude-loop'];
470
- const wantDxkitAgents = !!values.full || !!values['with-dxkit-agents'] || wantClaudeLoop;
481
+ const wantDxkitAgents = !!values.full || !!values['with-dxkit-agents'] || wantClaudeLoop || !!values.flow;
471
482
  const result = await (0, generator_1.generate)(cwd, config, finalMode, !!values.force, !!values['no-scan'], wantDxkitAgents);
472
483
  // Phase Ship installers (additive). `--full` implies every flag
473
484
  // so a one-command setup gets the full 2.5.0 ship surface.
@@ -560,6 +571,37 @@ async function run(argv) {
560
571
  result: (0, ship_installers_1.installCiDeepSastRefresh)(cwd, { force: !!values.force }),
561
572
  });
562
573
  }
574
+ // Flow setup — folded into `init` (there is no standalone `flow init`).
575
+ // Detect a UI→API surface; if there is none, stay silent (zero burden on
576
+ // a library / CLI / data repo). Otherwise prompt for the gate posture
577
+ // (interactive, with a description of each) or take the gentle `warn`
578
+ // default (--flow / --yes / non-TTY). --no-flow suppresses it entirely.
579
+ if (!values['no-flow']) {
580
+ const detection = await (0, setup_1.detectFlowTopology)(cwd);
581
+ if (detection.topology !== 'none') {
582
+ // Non-TTY without an explicit answer can't prompt — fall to the
583
+ // default rather than hang (mirrors how --yes is handled).
584
+ const flowYes = promptOpts.yes || !process.stdin.isTTY;
585
+ const decision = await (0, prompts_1.promptFlowSetup)(detection, {
586
+ yes: flowYes,
587
+ forceOn: !!values.flow,
588
+ });
589
+ const written = (0, setup_1.applyFlowSetup)(cwd, decision);
590
+ shipResults.push({
591
+ label: 'Flow integration gate',
592
+ result: {
593
+ installed: written,
594
+ skipped: [],
595
+ sidecars: [],
596
+ notes: [
597
+ `Flow gate posture: ${decision.mode} ` +
598
+ `(${detection.callCount} call(s) → ${detection.routeCount} route(s)). ` +
599
+ `Change it in .dxkit/policy.json:flow.mode.`,
600
+ ],
601
+ },
602
+ });
603
+ }
604
+ }
563
605
  // dxkit must resolve project-locally so every installed self-invocation
564
606
  // surface (Stop hook, context-hook, pre-push + CI guardrail) can run a
565
607
  // pinned dxkit instead of 404-ing. The set of surfaces that imply this
@@ -865,12 +907,20 @@ async function run(argv) {
865
907
  await runFlowRefresh({ cwd, frontend, backend, specs, json: !!values.json });
866
908
  break;
867
909
  }
910
+ // `flow publish` → the multi-repo handshake: union every workspace
911
+ // participant's served routes into this repo's served.json.
912
+ if (subCommand === 'publish') {
913
+ const { runFlowPublish } = await Promise.resolve().then(() => __importStar(require('./flow-cli')));
914
+ await runFlowPublish({ cwd, frontend, backend, specs, json: !!values.json });
915
+ break;
916
+ }
868
917
  logger.fail(`Unknown flow subcommand: ${subCommand}`);
869
918
  logger.info('Usage:');
870
919
  logger.info(' vyuh-dxkit flow [map] [--frontend <dir>] [--backend <dir>] [--specs <a,b>]');
871
920
  logger.info(' vyuh-dxkit flow trace "<METHOD> <path>"');
872
921
  logger.info(' vyuh-dxkit flow extract [--out <dir>]');
873
922
  logger.info(' vyuh-dxkit flow refresh');
923
+ logger.info(' vyuh-dxkit flow publish (multi-repo: union participants’ served routes)');
874
924
  process.exit(1);
875
925
  break;
876
926
  }