@voltro/cli 0.52.0 → 0.53.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/CHANGELOG.md +229 -0
- package/THIRD-PARTY-NOTICES.md +8311 -3318
- package/dist/{apiBuild-CSFI8QGq.js → apiBuild-CaPfoWku.js} +11 -5
- package/dist/apiBuild-DHtLXYx9.js +2 -0
- package/dist/bin.js +1 -1
- package/dist/build-D-OnvNMf.js +843 -0
- package/dist/{checkCommand-COmqc2cB.js → checkCommand-C5elt0tW.js} +6 -6
- package/dist/{checkCommand-2SbqzukH.js → checkCommand-D2ZduVlh.js} +1 -1
- package/dist/codegen-BWpt3VgF.js +2 -0
- package/dist/{codegen-VF479Cnb.js → codegen-FEk8AZHb.js} +2 -2
- package/dist/{codegenCommand-DCdG2JN-.js → codegenCommand-BOiWQ5hz.js} +4 -4
- package/dist/{codemodRunner-r7J9lIa7.js → codemodRunner-BjtB2lq6.js} +109 -11
- package/dist/{commands-Cc_nV8WI.js → commands-DyxAmhP0.js} +30 -30
- package/dist/{dashboardCommand-C-gKvwqh.js → dashboardCommand-BdKTyT13.js} +5 -5
- package/dist/{dataCommand-BgpBHnlB.js → dataCommand-Bab9X7s8.js} +2 -2
- package/dist/{dbCommand-sHedr-NJ.js → dbCommand-06O2finM.js} +277 -236
- package/dist/dbCommand-B1EXBC6f.js +2 -0
- package/dist/{dev-CRHoCEiy.js → dev-C6LGF4iY.js} +3006 -2426
- package/dist/{dev--A3nsxA3.js → dev-GjJWAYo2.js} +1 -1
- package/dist/doctorCommand-B0hX0tdz.js +2 -0
- package/dist/{doctorCommand-DtfJ3FA6.js → doctorCommand-etMkflRc.js} +101 -69
- package/dist/{dormancyCommand-Drn7o0No.js → dormancyCommand-UwZ1AZzB.js} +1 -1
- package/dist/{embeddingsCommand-Z-jO1fWN.js → embeddingsCommand-C70zWHwo.js} +1 -1
- package/dist/{envCommand-D4gCrrTZ.js → envCommand-dSyKvRkM.js} +18 -18
- package/dist/{evolveCommand-CMROeKeA.js → evolveCommand-CG0_ebO5.js} +2 -2
- package/dist/fileConventions-DASGEmj-.js +35 -0
- package/dist/{fileTaxonomy-DvDUV9wq.js → fileTaxonomy-B7uxipWS.js} +55 -55
- package/dist/fontPipeline-LxIHa1vo.js +2 -0
- package/dist/fontPipeline-Tsh8kZfA.js +152 -0
- package/dist/frameworkTableAssembly-C_7Z-rMs.js +2 -0
- package/dist/{frameworkTableAssembly-w-XnLa3q.js → frameworkTableAssembly-DKx3ba3S.js} +5 -5
- package/dist/imagePipeline-B_GVJgm6.js +2 -0
- package/dist/imagePipeline-CBZmjT4i.js +127 -0
- package/dist/index.js +1 -1
- package/dist/{infoCommand-DXM868o_.js → infoCommand-_53iOc_j.js} +1 -1
- package/dist/{inspect-CtL_xTbu.js → inspect-Bd8-9wsi.js} +1 -1
- package/dist/inspect-CuoDInfZ.js +2 -0
- package/dist/{inspectGateHint-BjnFubmH.js → inspectGateHint-4LxkNtrz.js} +1 -1
- package/dist/manifestBuild-C4-J1-m_.js +2 -0
- package/dist/{manifestBuild-CuU1VrSm.js → manifestBuild-Cqgsx2bM.js} +1 -1
- package/dist/{metaCommands-C6RFmF1r.js → metaCommands-Cn2oboG4.js} +8 -2
- package/dist/{migrate-D0F-eTlK.js → migrate-Cko9rswM.js} +2 -2
- package/dist/{pageConvention-CzUiSbtU.js → pageConvention-C938S8oC.js} +1 -1
- package/dist/{privacyCommand-DGdopOI6.js → privacyCommand-DWTQMC6R.js} +2 -2
- package/dist/{probeCommand-C9gazU0H.js → probeCommand-DkGGLknv.js} +83 -24
- package/dist/{renderModeScan-CcH2X1_D.js → renderModeScan-CUbOeOAg.js} +3 -1
- package/dist/{renderProfile-Ck32Fzxr.js → renderProfile-CskIgAfn.js} +2 -2
- package/dist/{runtimeTrace-BPQyCmC5.js → runtimeTrace-c0APJz7E.js} +1 -1
- package/dist/{sdkgen-Se88ifTd.js → sdkgen-BiQCgIEr.js} +1 -1
- package/dist/{serveCommand-DkP3OT0W.js → serveCommand-CueKQgzl.js} +869 -805
- package/dist/serveCommand-DsnrVN3U.js +2 -0
- package/dist/serveEntry.js +1 -1
- package/dist/start-BJzZLbt8.js +3 -0
- package/dist/start-ekPan8BT.js +1510 -0
- package/dist/startEntry.js +1 -1
- package/dist/{staticCommand-BwNEDlSU.js → staticCommand-xlSL-IWk.js} +1 -1
- package/dist/{test-f3amja6a.js → test-BWPQcRoB.js} +1 -1
- package/dist/updateCommand-Bqql_rsQ.js +2 -0
- package/dist/{updateCommand-BMk2e4ky.js → updateCommand-C_8I8Rzo.js} +139 -115
- package/dist/webDev-C7jWJ5dX.js +2 -0
- package/dist/{webDev-BgWL9gKV.js → webDev-oczpugbx.js} +1455 -922
- package/dist/{webhooksCommand-CoIO3jbj.js → webhooksCommand-4SVPDjKg.js} +1 -1
- package/package.json +60 -19
- package/templates/AGENTS.md +5 -3
- package/templates/agent-docs/_index.md +5 -3
- package/templates/agent-docs/_manifest.json +20 -4
- package/templates/agent-docs/ai.md +2 -2
- package/templates/agent-docs/authentication.md +1 -1
- package/templates/agent-docs/cli.md +2 -2
- package/templates/agent-docs/configuration.md +17 -0
- package/templates/agent-docs/data.md +470 -26
- package/templates/agent-docs/database/advancedqueries.md +7 -7
- package/templates/agent-docs/database/columntypes.md +2 -2
- package/templates/agent-docs/database/querying.md +1 -1
- package/templates/agent-docs/database/schema.md +1 -1
- package/templates/agent-docs/database/seedsdialects.md +1 -1
- package/templates/agent-docs/database/transactions.md +3 -3
- package/templates/agent-docs/deployment.md +8 -0
- package/templates/agent-docs/internationalization.md +2 -2
- package/templates/agent-docs/introduction.md +7 -1
- package/templates/agent-docs/local-first-mobile.md +102 -4
- package/templates/agent-docs/observability.md +2 -0
- package/templates/agent-docs/plugins/auth.md +1 -1
- package/templates/agent-docs/plugins/comments.md +142 -0
- package/templates/agent-docs/plugins/notifications.md +47 -4
- package/templates/agent-docs/plugins/presence.md +16 -3
- package/templates/agent-docs/plugins/prometheus.md +1 -1
- package/templates/agent-docs/plugins/queue.md +129 -0
- package/templates/agent-docs/plugins.md +11 -7
- package/templates/agent-docs/reference.md +16 -4
- package/templates/agent-docs/routing.md +527 -3
- package/templates/agent-docs/schema-driven-ui.md +214 -3
- package/templates/agent-docs/security.md +3 -3
- package/templates/agent-docs/whats-new.md +160 -66
- package/templates/apps/api-ai/package.json +6 -6
- package/templates/apps/api-auth/package.json +8 -8
- package/templates/apps/api-backend/package.json +7 -7
- package/templates/apps/api-backend-deactivation/package.json +7 -7
- package/templates/apps/api-backend-mail/package.json +8 -8
- package/templates/apps/api-backend-mariadb/package.json +9 -9
- package/templates/apps/api-backend-sqlite/package.json +8 -8
- package/templates/apps/api-backend-storage/package.json +8 -8
- package/templates/apps/api-cms/package.json +9 -9
- package/templates/apps/api-collab/package.json +8 -8
- package/templates/apps/api-data-advanced/package.json +8 -8
- package/templates/apps/api-durable/package.json +8 -8
- package/templates/apps/api-feature-flags/package.json +9 -9
- package/templates/apps/api-governance/package.json +8 -8
- package/templates/apps/api-kv/package.json +8 -8
- package/templates/apps/api-moderation/package.json +8 -8
- package/templates/apps/api-observability/package.json +8 -8
- package/templates/apps/api-ratelimit/package.json +8 -8
- package/templates/apps/api-rbac/package.json +8 -8
- package/templates/apps/api-rest/package.json +7 -7
- package/templates/apps/api-row-history/package.json +8 -8
- package/templates/apps/api-saas/package.json +10 -10
- package/templates/apps/api-saas-starter/package.json +10 -10
- package/templates/apps/api-search/package.json +8 -8
- package/templates/apps/api-status/package.json +8 -8
- package/templates/apps/api-webhooks/package.json +9 -9
- package/templates/apps/changelog/app.config.ts +26 -2
- package/templates/apps/changelog/content/releases/{0.1.0.mdx → v0-1-0.mdx} +0 -1
- package/templates/apps/changelog/content/releases/{0.2.0.mdx → v0-2-0.mdx} +0 -1
- package/templates/apps/changelog/package.json +8 -8
- package/templates/apps/changelog/src/collections/releases.collection.ts +48 -0
- package/templates/apps/changelog/src/globals.d.ts +1 -1
- package/templates/apps/changelog/src/locales/de.ts +1 -1
- package/templates/apps/changelog/src/locales/en.ts +1 -1
- package/templates/apps/changelog/src/pages/[locale]/[slug]/page.tsx +7 -4
- package/templates/apps/changelog/src/pages/[locale]/mirrors.test.tsx +13 -41
- package/templates/apps/changelog/src/pages/[slug]/page.test.tsx +26 -51
- package/templates/apps/changelog/src/pages/[slug]/page.tsx +21 -19
- package/templates/apps/changelog/src/pages/page.test.tsx +14 -37
- package/templates/apps/changelog/src/pages/page.tsx +18 -12
- package/templates/apps/edge-functions/package.json +2 -2
- package/templates/apps/frontend-admin/package.json +8 -8
- package/templates/apps/frontend-app/package.json +9 -9
- package/templates/apps/frontend-auth/package.json +8 -8
- package/templates/apps/frontend-blank/package.json +7 -7
- package/templates/apps/frontend-cms/package.json +9 -9
- package/templates/apps/frontend-collab/package.json +10 -10
- package/templates/apps/frontend-contact/package.json +7 -7
- package/templates/apps/frontend-dashboard/package.json +7 -7
- package/templates/apps/frontend-docs/content/docs/de/guides/first-page.md +4 -0
- package/templates/apps/frontend-docs/content/docs/de/intro/getting-started.md +4 -0
- package/templates/apps/frontend-docs/content/docs/en/guides/first-page.md +4 -0
- package/templates/apps/frontend-docs/content/docs/en/intro/getting-started.md +4 -0
- package/templates/apps/frontend-docs/package.json +8 -6
- package/templates/apps/frontend-docs/src/collections/docs.collection.ts +21 -0
- package/templates/apps/frontend-docs/src/locales/de.ts +0 -5
- package/templates/apps/frontend-docs/src/locales/en.ts +0 -5
- package/templates/apps/frontend-docs/src/pages/[locale]/docs/[...slug]/page.tsx +17 -9
- package/templates/apps/frontend-docs/src/pages/[locale]/mirrors.test.tsx +10 -5
- package/templates/apps/frontend-docs/src/pages/[locale]/page.tsx +8 -0
- package/templates/apps/frontend-docs/src/pages/docs/[...slug]/page.test.tsx +53 -15
- package/templates/apps/frontend-docs/src/pages/docs/[...slug]/page.tsx +27 -33
- package/templates/apps/frontend-docs/src/pages/page.test.tsx +17 -3
- package/templates/apps/frontend-docs/src/pages/page.tsx +16 -12
- package/templates/apps/frontend-i18n/package.json +6 -6
- package/templates/apps/frontend-landing/package.json +6 -6
- package/templates/apps/frontend-portal/package.json +8 -8
- package/templates/apps/frontend-saas/package.json +8 -8
- package/templates/apps/frontend-spa/package.json +7 -7
- package/templates/apps/frontend-ssr/package.json +7 -7
- package/templates/apps/frontend-ssr-api/package.json +8 -8
- package/templates/apps/frontend-static-blog/content/posts/cms-to-ssg.md +12 -0
- package/templates/apps/frontend-static-blog/content/posts/hello-static.md +12 -0
- package/templates/apps/frontend-static-blog/content/posts/islands-not-hydration.md +14 -0
- package/templates/apps/frontend-static-blog/package.json +8 -6
- package/templates/apps/frontend-static-blog/src/collections/posts.collection.ts +27 -0
- package/templates/apps/frontend-static-blog/src/pages/[locale]/blog/[slug]/page.tsx +7 -4
- package/templates/apps/frontend-static-blog/src/pages/[locale]/mirrors.test.tsx +7 -1
- package/templates/apps/frontend-static-blog/src/pages/blog/[slug]/page.test.tsx +19 -9
- package/templates/apps/frontend-static-blog/src/pages/blog/[slug]/page.tsx +19 -21
- package/templates/apps/frontend-static-blog/src/pages/page.test.tsx +18 -5
- package/templates/apps/frontend-static-blog/src/pages/page.tsx +21 -14
- package/templates/apps/frontend-status/package.json +8 -8
- package/templates/apps/mobile-app/package.json +4 -4
- package/dist/apiBuild-BYBpL7Pz.js +0 -2
- package/dist/build-CPgcMQug.js +0 -793
- package/dist/codegen-CctkDO-1.js +0 -2
- package/dist/dbCommand-DNb6yeOG.js +0 -2
- package/dist/doctorCommand-CqoWA2p5.js +0 -2
- package/dist/fileConventions-DOqD3lPS.js +0 -34
- package/dist/frameworkTableAssembly-C6ETawPR.js +0 -2
- package/dist/inspect-CuGDYES0.js +0 -2
- package/dist/manifestBuild-CPjhvM62.js +0 -2
- package/dist/serveCommand-DLc-BznW.js +0 -2
- package/dist/start-DfL3fOiN.js +0 -3
- package/dist/start-jw89Xbqy.js +0 -1339
- package/dist/updateCommand-5gFVfK5q.js +0 -2
- package/dist/webDev-CZbTsDcH.js +0 -2
- package/templates/apps/changelog/scripts/generate-rss.mjs +0 -38
- package/templates/apps/changelog/src/lib/releases.ts +0 -21
- package/templates/apps/frontend-static-blog/src/content/posts.ts +0 -64
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
import { t as e } from "./cliArgs-D4p8n7EE.js";
|
|
2
|
-
import { a as t, l as n } from "./codegen-
|
|
2
|
+
import { a as t, l as n } from "./codegen-FEk8AZHb.js";
|
|
3
3
|
import { r } from "./appGraph-yRuKjOba.js";
|
|
4
4
|
import { n as i } from "./cliOutput-D1tSBoRM.js";
|
|
5
5
|
import { n as a, o, r as s, t as c } from "./inspectFetch-EMuhTG_9.js";
|
|
6
|
-
import { r as l } from "./fileTaxonomy-
|
|
7
|
-
import { S as u } from "./doctorCommand-
|
|
6
|
+
import { r as l } from "./fileTaxonomy-B7uxipWS.js";
|
|
7
|
+
import { S as u } from "./doctorCommand-etMkflRc.js";
|
|
8
8
|
import { resolve as d } from "node:path";
|
|
9
9
|
import { readdirSync as f, statSync as p } from "node:fs";
|
|
10
10
|
import { isReactivityChannelKey as m } from "@voltro/protocol";
|
|
@@ -170,9 +170,9 @@ var h = (e) => (e === void 0 ? [] : typeof e == "string" ? [e] : e).filter((e) =
|
|
|
170
170
|
let t = e.severity === "error" ? "✗ error" : "⚠ warn", n = e.file ? ` (${e.file})` : "";
|
|
171
171
|
return `${t} ${e.rule} ${e.node}${n}\n ${e.breaks.join("; ")}\n fix: ${e.fix}`;
|
|
172
172
|
}).join("\n"), O = async (e) => {
|
|
173
|
-
let { walk: t, loadDiscovered: n, loadApiConfig: r } = await import("./dev
|
|
173
|
+
let { walk: t, loadDiscovered: n, loadApiConfig: r } = await import("./dev-GjJWAYo2.js"), { buildRpcEntry: i } = await import("./manifestBuild-C4-J1-m_.js"), { buildCapabilityManifest: a } = await import("./inspect-CuoDInfZ.js"), { relative: o } = await import("node:path"), s = await n(await t(e)), c = await r(e).then((e) => e?.plugins ?? []).catch(() => []);
|
|
174
174
|
try {
|
|
175
|
-
let { mergePluginRoutesInto: e } = await import("./dev
|
|
175
|
+
let { mergePluginRoutesInto: e } = await import("./dev-GjJWAYo2.js");
|
|
176
176
|
e({
|
|
177
177
|
plugins: c,
|
|
178
178
|
queries: s.queries,
|
|
@@ -189,7 +189,7 @@ var h = (e) => (e === void 0 ? [] : typeof e == "string" ? [e] : e).filter((e) =
|
|
|
189
189
|
...s.mutations.map((e) => l(e.descriptor, "mutation", e.file)),
|
|
190
190
|
...s.actions.map((e) => l(e.descriptor, "action", e.file)),
|
|
191
191
|
...s.streams.map((e) => l(e.descriptor, "stream", e.file))
|
|
192
|
-
], { assembleFrameworkTables: d } = await import("./frameworkTableAssembly-
|
|
192
|
+
], { assembleFrameworkTables: d } = await import("./frameworkTableAssembly-C_7Z-rMs.js"), f = await d({ root: e }).catch((e) => (console.warn(`\n⚠ plugin tables could not be collected — this report is INCOMPLETE.\n ${e instanceof Error ? e.message.split("\n")[0] : String(e)}\n`), [])), p = new Set(s.tables.map((e) => e.tableName)), m = [...[...p].map((e) => ({ name: e })), ...f.map((e) => e.tableName).filter((e) => !p.has(e)).map((e) => ({
|
|
193
193
|
name: e,
|
|
194
194
|
framework: !0
|
|
195
195
|
}))], h = c;
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import { a as e, i as t, o as n } from "./checkCommand-
|
|
1
|
+
import { a as e, i as t, o as n } from "./checkCommand-C5elt0tW.js";
|
|
2
2
|
export { t as offlineManifest, e as runCheckCommand, n as toInput };
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { b as e,
|
|
1
|
+
import { b as e, s as t, x as n } from "./fileConventions-DASGEmj-.js";
|
|
2
2
|
import { dirname as r, join as i, relative as a, resolve as o } from "node:path";
|
|
3
3
|
import { promises as s, readFileSync as c } from "node:fs";
|
|
4
4
|
import { pathToFileURL as l } from "node:url";
|
|
@@ -162,7 +162,7 @@ var h = /* @__PURE__ */ new Set(/* @__PURE__ */ "crypto.fs.path.os.net.http.http
|
|
|
162
162
|
await a(o);
|
|
163
163
|
continue;
|
|
164
164
|
}
|
|
165
|
-
s.isFile() && (
|
|
165
|
+
s.isFile() && (n.test(s.name) || e.test(s.name)) && r.push(o);
|
|
166
166
|
}
|
|
167
167
|
};
|
|
168
168
|
return await a(t), r;
|
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import {
|
|
3
|
-
import { n as o } from "./frameworkTableAssembly-
|
|
4
|
-
import { i as s, r as c } from "./codegen-
|
|
1
|
+
import { En as e, Tn as t, V as n, l as r, u as i } from "./dev-C6LGF4iY.js";
|
|
2
|
+
import { Bt as a } from "./webDev-oczpugbx.js";
|
|
3
|
+
import { n as o } from "./frameworkTableAssembly-DKx3ba3S.js";
|
|
4
|
+
import { i as s, r as c } from "./codegen-FEk8AZHb.js";
|
|
5
5
|
import { basename as l, join as u, relative as d, resolve as f } from "node:path";
|
|
6
6
|
import { promises as p } from "node:fs";
|
|
7
7
|
import { pathToFileURL as m } from "node:url";
|
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import { t as d } from "./pageConvention-
|
|
1
|
+
import { D as e, E as t, F as n, d as r, f as i, g as a, i as o, k as s, p as c, r as l, u } from "./fileConventions-DASGEmj-.js";
|
|
2
|
+
import { t as d } from "./pageConvention-C938S8oC.js";
|
|
3
3
|
import { r as f } from "./tsconfigPaths-BWXBWgcl.js";
|
|
4
|
-
import { a as p, i as m, t as h } from "./fileTaxonomy-
|
|
4
|
+
import { a as p, i as m, t as h } from "./fileTaxonomy-B7uxipWS.js";
|
|
5
5
|
import { basename as g, dirname as _, join as v, relative as ee } from "node:path";
|
|
6
6
|
import { existsSync as y, readFileSync as te, statSync as ne } from "node:fs";
|
|
7
7
|
import { execFileSync as re } from "node:child_process";
|
|
@@ -1503,7 +1503,7 @@ var S = (e, t, n) => {
|
|
|
1503
1503
|
}, dt = /\.page\.tsx$/, F = (e) => {
|
|
1504
1504
|
let t = e.includes("\\src\\pages\\") ? "\\src\\pages\\" : "/src/pages/", n = e.indexOf(t);
|
|
1505
1505
|
return n === -1 ? null : e.slice(0, n);
|
|
1506
|
-
}, ft = (e) => e.endsWith(".tsx") && !
|
|
1506
|
+
}, ft = (e) => e.endsWith(".tsx") && !a.has(e) && !d(e) && !/\.island\.tsx$/.test(e) && !dt.test(e), pt = w({
|
|
1507
1507
|
version: "0.14.0",
|
|
1508
1508
|
id: "0.14.0/03_pages-suffix",
|
|
1509
1509
|
title: "Pages are declared with a .page.tsx suffix",
|
|
@@ -1553,18 +1553,18 @@ var S = (e, t, n) => {
|
|
|
1553
1553
|
}
|
|
1554
1554
|
}), mt = [
|
|
1555
1555
|
/\.page\.tsx$/,
|
|
1556
|
-
|
|
1557
|
-
|
|
1556
|
+
c,
|
|
1557
|
+
o,
|
|
1558
1558
|
l,
|
|
1559
|
-
|
|
1560
|
-
|
|
1559
|
+
r,
|
|
1560
|
+
s,
|
|
1561
1561
|
i,
|
|
1562
|
-
|
|
1562
|
+
u,
|
|
1563
1563
|
e,
|
|
1564
|
-
|
|
1564
|
+
t
|
|
1565
1565
|
], ht = (e) => {
|
|
1566
1566
|
let t = g(e);
|
|
1567
|
-
return !/\.tsx?$/.test(t) ||
|
|
1567
|
+
return !/\.tsx?$/.test(t) || a.has(t) || n(t) || t === "index.ts" || t === "index.tsx" || t === "app.config.ts" ? !1 : !mt.some((e) => e.test(t));
|
|
1568
1568
|
}, gt = (e) => {
|
|
1569
1569
|
let t = [], n = [], r = [], i = [];
|
|
1570
1570
|
for (let [a, o] of e.getExportedDeclarations()) {
|
|
@@ -6032,6 +6032,104 @@ var S = (e, t, n) => {
|
|
|
6032
6032
|
" (that is what plugin-ratelimit's httpShield does now — a Redis outage",
|
|
6033
6033
|
" must not become a self-inflicted API outage)."
|
|
6034
6034
|
].join("\n")
|
|
6035
|
+
}),
|
|
6036
|
+
w({
|
|
6037
|
+
version: "0.53.0",
|
|
6038
|
+
id: "0.53.0/01_conflict-columns-take-the-table",
|
|
6039
|
+
title: "`missingConflictColumns` takes the table and classifies absent vs NULL",
|
|
6040
|
+
kind: "manual",
|
|
6041
|
+
appliesTo: ({ project: e }) => e.getSourceFiles().some((e) => e.getFullText().includes("missingConflictColumns")),
|
|
6042
|
+
note: [
|
|
6043
|
+
"`missingConflictColumns(conflictColumns, row)` is now",
|
|
6044
|
+
"`missingConflictColumns(table, conflictColumns, row)`, and it returns",
|
|
6045
|
+
"`{ column, reason: \"absent\" | \"null\" }` entries instead of bare names.",
|
|
6046
|
+
"",
|
|
6047
|
+
"Pass the table definition (the same value `missingRequiredColumns` takes).",
|
|
6048
|
+
"With it, DB-generated columns (`generatedAs`) are skipped: the database",
|
|
6049
|
+
"computes those and rejects an explicit value, so their absence from a",
|
|
6050
|
+
"payload is correct — the old signature could not know that and flagged",
|
|
6051
|
+
"them. Pass `undefined` only when no definition is available; nothing is",
|
|
6052
|
+
"skipped then.",
|
|
6053
|
+
"",
|
|
6054
|
+
"The `reason` field separates two different bugs the old flat list merged:",
|
|
6055
|
+
"`absent` (the payload never set the key) and `null` (the key is present but",
|
|
6056
|
+
"NULL — and NULL never matches a unique conflict target, so the write would",
|
|
6057
|
+
"always INSERT; use a plain insert for NULL-keyed rows, or make the column",
|
|
6058
|
+
"NOT NULL)."
|
|
6059
|
+
].join("\n")
|
|
6060
|
+
}),
|
|
6061
|
+
w({
|
|
6062
|
+
version: "0.53.0",
|
|
6063
|
+
id: "0.53.0/02_empty-struct-input-flipped",
|
|
6064
|
+
title: "`input: Schema.Struct({})` procedures flipped from accept-everything to reject-everything in 0.37.0",
|
|
6065
|
+
kind: "manual",
|
|
6066
|
+
appliesTo: ({ project: e }) => e.getSourceFiles().some((e) => /input:\s*Schema\.Struct\(\{\s*\}\)/.test(e.getFullText())),
|
|
6067
|
+
note: [
|
|
6068
|
+
"This repository declares procedures with `input: Schema.Struct({})`. Since",
|
|
6069
|
+
"0.37.0 (an undeclared input field rejects the call), that shape flipped",
|
|
6070
|
+
"HARDER than any other: an empty struct used to accept every payload, and",
|
|
6071
|
+
"now rejects every non-empty one. A caller that always sent a field —",
|
|
6072
|
+
"a table hook sending `{ limit }`, say — fails on the live subscription and",
|
|
6073
|
+
"the SSR seed of the same page at once.",
|
|
6074
|
+
"",
|
|
6075
|
+
"Check those procedures first — the list takes a minute to produce and",
|
|
6076
|
+
"yields the most expensive hits:",
|
|
6077
|
+
"",
|
|
6078
|
+
" grep -rn 'input: Schema.Struct({})' <api root>",
|
|
6079
|
+
"",
|
|
6080
|
+
"For each: either the callers genuinely send nothing (fine — the empty",
|
|
6081
|
+
"struct is the strongest declaration a procedure can make), or a caller",
|
|
6082
|
+
"sends fields the schema must now declare."
|
|
6083
|
+
].join("\n")
|
|
6084
|
+
}),
|
|
6085
|
+
w({
|
|
6086
|
+
version: "0.53.0",
|
|
6087
|
+
id: "0.53.0/03_validation-messages-are-ids",
|
|
6088
|
+
title: "Form validation messages are ids + catalog now, not effect developer text",
|
|
6089
|
+
kind: "manual",
|
|
6090
|
+
appliesTo: ({ project: e }) => e.getSourceFiles().some((e) => {
|
|
6091
|
+
let t = e.getFullText();
|
|
6092
|
+
return /Expected .*, actual|is missing/.test(t) || /\.errors\[|useFormBinding\(/.test(t);
|
|
6093
|
+
}),
|
|
6094
|
+
note: [
|
|
6095
|
+
"Form validation messages changed shape:",
|
|
6096
|
+
"",
|
|
6097
|
+
"- `errors[field]` values are TRANSLATED texts from a message catalog",
|
|
6098
|
+
" (built-in en/de, locale from `<html lang>` or the `locale:` option),",
|
|
6099
|
+
" no longer effect developer sentences. If you laid regexes over",
|
|
6100
|
+
" \"Expected string, actual undefined\" to derive translation keys,",
|
|
6101
|
+
" delete them and wire your catalog instead:",
|
|
6102
|
+
"",
|
|
6103
|
+
" useFormBinding('users.create', { messages: (id, params) => t(id, params) })",
|
|
6104
|
+
"",
|
|
6105
|
+
"- `errors` keys are the FULL dotted path now (`address.city`,",
|
|
6106
|
+
" `entries.0.startsAt`) — a nested issue no longer collapses to its",
|
|
6107
|
+
" top-level segment. Code reading `errors.address` for a nested struct",
|
|
6108
|
+
" must read the leaf path it renders.",
|
|
6109
|
+
"",
|
|
6110
|
+
"- `validateFields` also returns `issues` — `{ path, id, params, fallback }`",
|
|
6111
|
+
" per failure — for widget kits that resolve messages themselves."
|
|
6112
|
+
].join("\n")
|
|
6113
|
+
}),
|
|
6114
|
+
w({
|
|
6115
|
+
version: "0.53.0",
|
|
6116
|
+
id: "0.53.0/04_widget-kind-gained-array",
|
|
6117
|
+
title: "WidgetKind gained 'array' and 'reference' — total widget registries need two new entries",
|
|
6118
|
+
kind: "manual",
|
|
6119
|
+
appliesTo: ({ project: e }) => e.getSourceFiles().some((e) => /Record<WidgetKind/.test(e.getFullText())),
|
|
6120
|
+
note: [
|
|
6121
|
+
"This repository types a widget registry as `Record<WidgetKind, …>`.",
|
|
6122
|
+
"`WidgetKind` gained `'array'` (arrays of structs are field arrays now)",
|
|
6123
|
+
"and `'reference'` (a formField({ reference }) table picker), so the total",
|
|
6124
|
+
"map needs two new entries. With no dedicated UI yet, map both to your",
|
|
6125
|
+
"custom/render-prop widget — that is what the built-in registry does:",
|
|
6126
|
+
"",
|
|
6127
|
+
" array: CustomWidget,",
|
|
6128
|
+
" reference: CustomWidget,",
|
|
6129
|
+
"",
|
|
6130
|
+
"Partial registries (`Partial<Record<WidgetKind, …>>` or per-kind lookups)",
|
|
6131
|
+
"need nothing."
|
|
6132
|
+
].join("\n")
|
|
6035
6133
|
})
|
|
6036
6134
|
], J = /* @__PURE__ */ new Set([
|
|
6037
6135
|
"node_modules",
|
|
@@ -80,7 +80,7 @@ var l = () => {
|
|
|
80
80
|
name: "init",
|
|
81
81
|
summary: "Initialise the current directory as a Voltro workspace root (pnpm-workspace.yaml, root scripts, .gitignore, git init). Idempotent; takes no arguments.",
|
|
82
82
|
status: "wired",
|
|
83
|
-
run: (e) => import("./metaCommands-
|
|
83
|
+
run: (e) => import("./metaCommands-Cn2oboG4.js").then((t) => t.runInit(e)),
|
|
84
84
|
help: {
|
|
85
85
|
usage: "",
|
|
86
86
|
examples: [["voltro init", "make the current directory a workspace root, then `voltro create-project <name>`"]],
|
|
@@ -91,7 +91,7 @@ var l = () => {
|
|
|
91
91
|
name: "dev",
|
|
92
92
|
summary: "Start the local development server (auto-discovers routes / mutations).",
|
|
93
93
|
status: "wired",
|
|
94
|
-
run: (e) => import("./dev
|
|
94
|
+
run: (e) => import("./dev-GjJWAYo2.js").then((t) => t.runDev(e)),
|
|
95
95
|
help: {
|
|
96
96
|
usage: "[app]",
|
|
97
97
|
examples: [["voltro dev", "boot the app in the current directory"], ["voltro dev apps/acme/api", "boot a specific app"]],
|
|
@@ -109,7 +109,7 @@ var l = () => {
|
|
|
109
109
|
name: "dashboard",
|
|
110
110
|
summary: "Serve the DevTools dashboard standalone (from @voltro/dashboard). Targets via VOLTRO_DASHBOARD_APPS; --port to override.",
|
|
111
111
|
status: "wired",
|
|
112
|
-
run: (e) => import("./dashboardCommand-
|
|
112
|
+
run: (e) => import("./dashboardCommand-BdKTyT13.js").then((t) => t.runDashboardCommand(e)),
|
|
113
113
|
help: {
|
|
114
114
|
usage: "[--port <n>]",
|
|
115
115
|
flags: [["--port <n>", "port to serve the dashboard on"]],
|
|
@@ -121,7 +121,7 @@ var l = () => {
|
|
|
121
121
|
name: "check",
|
|
122
122
|
summary: "Verify the app graph (blast-radius checks) against a running api; LLM-shaped --json diagnostics. Flags: --json, --process <p>, --diff removeTable:<name>.",
|
|
123
123
|
status: "wired",
|
|
124
|
-
run: (e) => import("./checkCommand-
|
|
124
|
+
run: (e) => import("./checkCommand-D2ZduVlh.js").then((t) => t.runCheckCommand(e)),
|
|
125
125
|
help: {
|
|
126
126
|
usage: "[--json] [--offline] [--process <name>] [--diff removeTable:<name>]",
|
|
127
127
|
flags: [
|
|
@@ -155,7 +155,7 @@ var l = () => {
|
|
|
155
155
|
name: "webhooks",
|
|
156
156
|
summary: "Outbound-webhook artefacts. `consumer` generates the ZERO-DEPENDENCY Standard-Webhooks verification package a subscriber installs, from this app's own declared events; `events` lists the events a subscriber can register for. Usage: voltro webhooks <consumer|events> [path] [--out <dir>] [--name <pkg>] [--json].",
|
|
157
157
|
status: "wired",
|
|
158
|
-
run: (e) => import("./webhooksCommand-
|
|
158
|
+
run: (e) => import("./webhooksCommand-4SVPDjKg.js").then((t) => t.runWebhooksCommand(e)),
|
|
159
159
|
help: {
|
|
160
160
|
usage: "<consumer|events> [path] [--out <dir>] [--name <pkg>] [--json]",
|
|
161
161
|
flags: [
|
|
@@ -171,7 +171,7 @@ var l = () => {
|
|
|
171
171
|
name: "evolve",
|
|
172
172
|
summary: "Schema-evolution copilot: propose an observed-graph-driven codemod + a branch-verified backfill for a schema change (rename/retype/split/drop a column, rename a table). Dry-run by default; --write applies. Usage: voltro evolve rename-column <table>.<col> --to <newName> [--write] [--json].",
|
|
173
173
|
status: "wired",
|
|
174
|
-
run: (e) => import("./evolveCommand-
|
|
174
|
+
run: (e) => import("./evolveCommand-CG0_ebO5.js").then((t) => t.runEvolveCommand(e)),
|
|
175
175
|
help: {
|
|
176
176
|
usage: "<rename-column|rename-table|retype-column|split-column|drop-column> <target> [--to <new>] [--write]",
|
|
177
177
|
flags: [
|
|
@@ -188,7 +188,7 @@ var l = () => {
|
|
|
188
188
|
name: "codegen",
|
|
189
189
|
summary: "Emit rpcGroup.generated.ts from discovered route / mutation descriptors.",
|
|
190
190
|
status: "wired",
|
|
191
|
-
run: (e) => import("./codegenCommand-
|
|
191
|
+
run: (e) => import("./codegenCommand-BOiWQ5hz.js").then((t) => t.runCodegenCommand(e)),
|
|
192
192
|
help: {
|
|
193
193
|
usage: "[app]",
|
|
194
194
|
examples: [["voltro codegen", "regenerate rpcGroup.generated.ts for the app in the cwd"]],
|
|
@@ -199,7 +199,7 @@ var l = () => {
|
|
|
199
199
|
name: "migrate",
|
|
200
200
|
summary: "Apply the declared schema to the database (alias of `db apply` — diffs declared vs live and emits the ALTERs). `--create-only` for the bootstrap-only CREATE TABLE IF NOT EXISTS path.",
|
|
201
201
|
status: "wired",
|
|
202
|
-
run: (e) => import("./migrate-
|
|
202
|
+
run: (e) => import("./migrate-Cko9rswM.js").then((t) => t.runMigrateCommand(e)),
|
|
203
203
|
help: {
|
|
204
204
|
usage: "[app] [--create-only]",
|
|
205
205
|
flags: [["--create-only", "only CREATE TABLE IF NOT EXISTS — never ALTER (bootstrap)"]],
|
|
@@ -211,7 +211,7 @@ var l = () => {
|
|
|
211
211
|
name: "test",
|
|
212
212
|
summary: "Run vitest against the app at the cwd (auto-discovers *.test.ts/tsx).",
|
|
213
213
|
status: "wired",
|
|
214
|
-
run: (e) => import("./test-
|
|
214
|
+
run: (e) => import("./test-BWPQcRoB.js").then((t) => t.runTestCommand(e)),
|
|
215
215
|
help: {
|
|
216
216
|
usage: "[dir] [filter…] [--watch] [-t <pattern>]",
|
|
217
217
|
flags: [
|
|
@@ -259,7 +259,7 @@ var l = () => {
|
|
|
259
259
|
name: "info",
|
|
260
260
|
summary: "Report versions (CLI, node, every installed @voltro/* — flags lockstep skew), package manager, and dialect. --json for CI. Exits 1 on version skew.",
|
|
261
261
|
status: "wired",
|
|
262
|
-
run: (e) => import("./infoCommand-
|
|
262
|
+
run: (e) => import("./infoCommand-_53iOc_j.js").then((t) => t.runInfoCommand(e)),
|
|
263
263
|
help: {
|
|
264
264
|
usage: "[--json]",
|
|
265
265
|
flags: [["--json", "machine-readable report"]],
|
|
@@ -280,7 +280,7 @@ var l = () => {
|
|
|
280
280
|
name: "env",
|
|
281
281
|
summary: "Inspect/sync the typed-env manifest. Subcommands: check (default), sync (.env.example), types (env.generated.d.ts for CI tsc), turbo.",
|
|
282
282
|
status: "wired",
|
|
283
|
-
run: (e) => import("./envCommand-
|
|
283
|
+
run: (e) => import("./envCommand-dSyKvRkM.js").then((t) => t.runEnvCommand(e)),
|
|
284
284
|
help: {
|
|
285
285
|
usage: "[check|sync|types|turbo] [--force]",
|
|
286
286
|
flags: [["--force", "overwrite the generated file instead of refusing on a conflict"]],
|
|
@@ -309,12 +309,12 @@ var l = () => {
|
|
|
309
309
|
run: async (e) => {
|
|
310
310
|
let t = e.find((e) => !e.startsWith("-")) ?? process.cwd();
|
|
311
311
|
if (e.includes("--preflight")) {
|
|
312
|
-
let { runServePreflight: e } = await import("./doctorCommand-
|
|
312
|
+
let { runServePreflight: e } = await import("./doctorCommand-B0hX0tdz.js");
|
|
313
313
|
return e(o(t), !0);
|
|
314
314
|
}
|
|
315
|
-
let { tryRunWebServe: n } = await import("./webDev-
|
|
315
|
+
let { tryRunWebServe: n } = await import("./webDev-C7jWJ5dX.js"), r = await n(o(t));
|
|
316
316
|
if (!r.ran) {
|
|
317
|
-
let { runServeDispatch: t } = await import("./serveCommand-
|
|
317
|
+
let { runServeDispatch: t } = await import("./serveCommand-DsnrVN3U.js");
|
|
318
318
|
return t(e);
|
|
319
319
|
}
|
|
320
320
|
return r.exitCode;
|
|
@@ -342,13 +342,13 @@ var l = () => {
|
|
|
342
342
|
handlesHelp: !0,
|
|
343
343
|
summary: "Preflight an app for production: the precompiled serve bundle, hand-rolled primitives (naming the shipped one), @voltro/* version skew, executors with no access check, `.serverOnly()` leaks, and junction-FK gaps.",
|
|
344
344
|
status: "wired",
|
|
345
|
-
run: (e) => import("./doctorCommand-
|
|
345
|
+
run: (e) => import("./doctorCommand-B0hX0tdz.js").then((t) => t.runDoctorCommand(e))
|
|
346
346
|
},
|
|
347
347
|
{
|
|
348
348
|
name: "build",
|
|
349
349
|
summary: "Production build for a web app (vite build + per-page SSG pre-render).",
|
|
350
350
|
status: "wired",
|
|
351
|
-
run: (e) => import("./build-
|
|
351
|
+
run: (e) => import("./build-D-OnvNMf.js").then((t) => t.runBuildCommand(e)),
|
|
352
352
|
help: {
|
|
353
353
|
usage: "[app] [--target <t>]",
|
|
354
354
|
flags: [["--target <t>", "build target"]],
|
|
@@ -364,7 +364,7 @@ var l = () => {
|
|
|
364
364
|
name: "prune-runtime",
|
|
365
365
|
summary: "Trim a deployed web tree’s node_modules to the reachable runtime set (standalone image slimming).",
|
|
366
366
|
status: "wired",
|
|
367
|
-
run: (e) => import("./runtimeTrace-
|
|
367
|
+
run: (e) => import("./runtimeTrace-c0APJz7E.js").then((t) => t.runPruneRuntimeCommand(e)),
|
|
368
368
|
hidden: !0
|
|
369
369
|
},
|
|
370
370
|
{
|
|
@@ -382,7 +382,7 @@ var l = () => {
|
|
|
382
382
|
name: "dormancy",
|
|
383
383
|
summary: "Single-node scale-to-zero: front the API with a wake-orchestrator that stops the app when idle and brings it back on a request or a due wakeup (cron/workflow). Needs a SQL store. Flags: --port, --app-port, --idle-grace-ms, --tick-ms.",
|
|
384
384
|
status: "wired",
|
|
385
|
-
run: (e) => import("./dormancyCommand-
|
|
385
|
+
run: (e) => import("./dormancyCommand-UwZ1AZzB.js").then((t) => t.runDormancyCommand(e)),
|
|
386
386
|
help: {
|
|
387
387
|
usage: "[app] [--port <n>] [--app-port <n>] [--idle-grace-ms <n>] [--tick-ms <n>]",
|
|
388
388
|
flags: [
|
|
@@ -399,7 +399,7 @@ var l = () => {
|
|
|
399
399
|
name: "start",
|
|
400
400
|
summary: "Production runtime: serves dist + SSR-on-demand for ssr/isr pages.",
|
|
401
401
|
status: "wired",
|
|
402
|
-
run: (e) => import("./start-
|
|
402
|
+
run: (e) => import("./start-BJzZLbt8.js").then((t) => t.runStartCommand(e)),
|
|
403
403
|
help: {
|
|
404
404
|
usage: "[app]",
|
|
405
405
|
examples: [["voltro start", "serve a built web app (dist + SSR-on-demand)"]],
|
|
@@ -410,7 +410,7 @@ var l = () => {
|
|
|
410
410
|
name: "deploy",
|
|
411
411
|
summary: "Show deploy options + `voltro deploy plan` auto-detects the target tier (static-cdn / container / functions) per app + function.",
|
|
412
412
|
status: "wired",
|
|
413
|
-
run: (e) => import("./metaCommands-
|
|
413
|
+
run: (e) => import("./metaCommands-Cn2oboG4.js").then((t) => t.runDeploy(e)),
|
|
414
414
|
help: {
|
|
415
415
|
usage: "[plan]",
|
|
416
416
|
examples: [["voltro deploy plan", "the auto-detected target tier per app + function"]]
|
|
@@ -428,13 +428,13 @@ var l = () => {
|
|
|
428
428
|
handlesHelp: !0,
|
|
429
429
|
summary: "Deploy a pre-built static site (./dist) to a cheap external host. Subcommands: hosts, deploy --host cloudflare-pages|s3|netlify [--spa] [--dry-run].",
|
|
430
430
|
status: "wired",
|
|
431
|
-
run: (e) => import("./staticCommand-
|
|
431
|
+
run: (e) => import("./staticCommand-xlSL-IWk.js").then((t) => t.runStaticCommand(e))
|
|
432
432
|
},
|
|
433
433
|
{
|
|
434
434
|
name: "privacy",
|
|
435
435
|
summary: "GDPR / DSAR tooling. scope [root] — derive the subject graph from the schema AND print what it cannot see. export <subjectId> --url <app> / erase <subjectId> --url <app> --confirm — run against the RUNNING app's admin-gated governance endpoint, so the erasure log and configured anonymize fields apply.",
|
|
436
436
|
status: "wired",
|
|
437
|
-
run: (e) => import("./privacyCommand-
|
|
437
|
+
run: (e) => import("./privacyCommand-DWTQMC6R.js").then((t) => t.runPrivacyCommand(e)),
|
|
438
438
|
help: {
|
|
439
439
|
usage: e(n),
|
|
440
440
|
examples: [
|
|
@@ -453,7 +453,7 @@ var l = () => {
|
|
|
453
453
|
name: "db",
|
|
454
454
|
summary: "Database subcommands. Declarative flow: plan, apply, branch, plans, drift [--accept], squash, restore-snapshot. File migrations: generate [name], migrate, rollback, status, files, rollback-file. Data + housekeeping: seed, gc-snapshots, adopt. Credentials at rest: scan-credentials (find plaintext), encrypt-column (migrate a populated column onto .encrypted()).",
|
|
455
455
|
status: "wired",
|
|
456
|
-
run: (e) => import("./dbCommand-
|
|
456
|
+
run: (e) => import("./dbCommand-B1EXBC6f.js").then((t) => t.runDbCommand(e)),
|
|
457
457
|
help: {
|
|
458
458
|
usage: e(t),
|
|
459
459
|
examples: [
|
|
@@ -469,7 +469,7 @@ var l = () => {
|
|
|
469
469
|
name: "data",
|
|
470
470
|
summary: "Export/import + backup/restore of app data. Logical (rows + optional assets): export <dir> [--tenant <id>|--tables a,b|--exclude a,b] [--assets] [--compression zstd|gzip|none] [--consistency live|snapshot]; import <dir> [--assets] [--no-verify]; transfers — the history in all four directions, including a run in flight; inspect <file|dir>; unpack <file> <dir>. Native (vendor dump, no resume): backup <dir> [--assets] / restore <dir> [--assets] (pg_dump/mariadb-dump/…) — a restore marks the database in-progress until it finishes. Recovery: clear-replace-marker, clear-staging. Resumable + typed-NDJSON on the logical path; content-addressed assets on both.",
|
|
471
471
|
status: "wired",
|
|
472
|
-
run: (e) => import("./dataCommand-
|
|
472
|
+
run: (e) => import("./dataCommand-Bab9X7s8.js").then((t) => t.runDataCommand(e)),
|
|
473
473
|
help: {
|
|
474
474
|
usage: e(r),
|
|
475
475
|
flags: [
|
|
@@ -526,27 +526,27 @@ var l = () => {
|
|
|
526
526
|
handlesHelp: !0,
|
|
527
527
|
summary: "Generate strong secrets. `generate [purpose]` (data-transfer, session, bundle-key, field-encryption, …) emits the right var+format; `generate` alone prints a generic secret; `list` shows all. Encrypted per-env storage is in Voltro Cloud.",
|
|
528
528
|
status: "wired",
|
|
529
|
-
run: (e) => import("./metaCommands-
|
|
529
|
+
run: (e) => import("./metaCommands-Cn2oboG4.js").then((t) => t.runSecret(e))
|
|
530
530
|
},
|
|
531
531
|
{
|
|
532
532
|
name: "update",
|
|
533
533
|
handlesHelp: !0,
|
|
534
534
|
summary: "Upgrade the app to the latest framework: bump every @voltro/* dependency (across ALL workspace members, install once at the workspace root), then run the codemods shipped with the target version. Flags: --to <version>, --from <version>, --codemods-only, --dry-run, --force, --exact, --help. After: run `voltro db apply`.",
|
|
535
535
|
status: "wired",
|
|
536
|
-
run: (e) => import("./updateCommand-
|
|
536
|
+
run: (e) => import("./updateCommand-Bqql_rsQ.js").then((t) => t.runUpdateCommand(e))
|
|
537
537
|
},
|
|
538
538
|
{
|
|
539
539
|
name: "_apply-codemods",
|
|
540
540
|
summary: "Internal: apply shipped codemods for a framework version jump (re-exec target of `voltro update`).",
|
|
541
541
|
status: "wired",
|
|
542
542
|
hidden: !0,
|
|
543
|
-
run: (e) => import("./updateCommand-
|
|
543
|
+
run: (e) => import("./updateCommand-Bqql_rsQ.js").then((t) => t.runApplyCodemods(e))
|
|
544
544
|
},
|
|
545
545
|
{
|
|
546
546
|
name: "embeddings",
|
|
547
547
|
summary: "Embeddings tooling. Subcommand: backfill <table> --text <field> --vector <field> [--model <m>] [--model-field <f>] [--batch <n>] [--dry-run] — (re)embed rows the vectorEmbedding() mixin missed.",
|
|
548
548
|
status: "wired",
|
|
549
|
-
run: (e) => import("./embeddingsCommand-
|
|
549
|
+
run: (e) => import("./embeddingsCommand-C70zWHwo.js").then((t) => t.runEmbeddingsCommand(e)),
|
|
550
550
|
help: {
|
|
551
551
|
usage: "backfill <table> --text <field> --vector <field> [--model <m>] [--batch <n>] [--dry-run]",
|
|
552
552
|
flags: [
|
|
@@ -564,7 +564,7 @@ var l = () => {
|
|
|
564
564
|
name: "telemetry",
|
|
565
565
|
summary: "Report telemetry status — Voltro collects none (no phone-home, nothing to opt out of).",
|
|
566
566
|
status: "wired",
|
|
567
|
-
run: (e) => import("./metaCommands-
|
|
567
|
+
run: (e) => import("./metaCommands-Cn2oboG4.js").then((t) => t.runTelemetry(e)),
|
|
568
568
|
help: {
|
|
569
569
|
usage: "",
|
|
570
570
|
examples: [["voltro telemetry", "confirm what is collected: nothing"]],
|
|
@@ -592,7 +592,7 @@ var l = () => {
|
|
|
592
592
|
summary: "Ask a RUNNING app whether its declared access is enforced. `access` calls every guarded procedure with NO credentials and reports any that answer (--process, --url, --strict, --format).",
|
|
593
593
|
status: "wired",
|
|
594
594
|
handlesHelp: !0,
|
|
595
|
-
run: (e) => import("./probeCommand-
|
|
595
|
+
run: (e) => import("./probeCommand-DkGGLknv.js").then((t) => t.runProbeCommand(e))
|
|
596
596
|
},
|
|
597
597
|
{
|
|
598
598
|
name: "schedule",
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import { f as e } from "./dev-
|
|
2
|
-
import {
|
|
3
|
-
import { t as r } from "./start-
|
|
1
|
+
import { f as e } from "./dev-C6LGF4iY.js";
|
|
2
|
+
import { W as t, q as n } from "./webDev-oczpugbx.js";
|
|
3
|
+
import { t as r } from "./start-ekPan8BT.js";
|
|
4
4
|
import { join as i } from "node:path";
|
|
5
5
|
import { existsSync as a } from "node:fs";
|
|
6
6
|
import { createLogger as o } from "@voltro/logger";
|
|
@@ -9,10 +9,10 @@ var s = o({ scope: "voltro:dashboard" }), c = (e, t) => {
|
|
|
9
9
|
let n = e.indexOf(t);
|
|
10
10
|
return n >= 0 ? e[n + 1] : void 0;
|
|
11
11
|
}, l = async (o) => {
|
|
12
|
-
process.env[
|
|
12
|
+
process.env[t] = "1";
|
|
13
13
|
let l = c(o, "--port") ?? process.env.VOLTRO_DASHBOARD_PORT ?? "5179";
|
|
14
14
|
process.env.VOLTRO_DASHBOARD_PORT = l;
|
|
15
|
-
let u =
|
|
15
|
+
let u = n(process.cwd());
|
|
16
16
|
if (!u) return s.error("dashboard app not found. Install it with `pnpm add @voltro/dashboard`, or set VOLTRO_DASHBOARD_PATH to a dashboard app directory."), 1;
|
|
17
17
|
let d = a(i(u, ".framework", "dist", "index.html"));
|
|
18
18
|
return s.info(`serving the Voltro dashboard on :${l}`, {
|
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
import { i as e, t } from "./subcommandNames-DpYs3DXr.js";
|
|
2
2
|
import { t as n } from "./cliError-BmdYnghb.js";
|
|
3
|
-
import { B as r, c as i, i as a, o } from "./dev-
|
|
3
|
+
import { B as r, c as i, i as a, o } from "./dev-C6LGF4iY.js";
|
|
4
4
|
import { n as s, t as c } from "./cliArgs-D4p8n7EE.js";
|
|
5
5
|
import { r as l } from "./dialectDriver-czCHYpeH.js";
|
|
6
6
|
import { i as u, n as d, r as f, t as p } from "./dataProfile-Du3ztYxv.js";
|
|
7
7
|
import { o as m, t as h } from "./inspectFetch-EMuhTG_9.js";
|
|
8
|
-
import { r as g } from "./dbCommand-
|
|
8
|
+
import { r as g } from "./dbCommand-06O2finM.js";
|
|
9
9
|
import { resolve as _ } from "node:path";
|
|
10
10
|
import { createLogger as v } from "@voltro/logger";
|
|
11
11
|
import { DATA_TRANSFERS_TABLE as y, REPLACE_IN_PROGRESS_TABLE as b, _voltroDataTransfersTable as x, _voltroReplaceInProgressTable as S, connectionIdentity as C, derivedRowId as w, ensureTableRegistered as T, normaliseTarget as ee, sameDatabase as te, streamTable as ne } from "@voltro/database";
|