@vibes.diy/api-svc 12.3.2 → 12.3.3

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,7 +1,7 @@
1
1
  import { exception2Result, Result } from "@adviser/cement";
2
- import { and, desc, eq, ne } from "drizzle-orm/sql/expressions";
2
+ import { and, desc, eq, inArray, ne } from "drizzle-orm/sql/expressions";
3
3
  import { RESEARCH_BLOCK_SEQ } from "@vibes.diy/api-types";
4
- import { isChatTurnOpen } from "./half-open-turn.js";
4
+ import { isChatTurnOpen, latestTurnPromptId } from "./half-open-turn.js";
5
5
  const OPEN_TURN_SCAN_LIMIT = 40;
6
6
  export async function ownerHasOpenTurn(ctx, q, nowMs) {
7
7
  return exception2Result(async () => {
@@ -14,19 +14,32 @@ export async function ownerHasOpenTurn(ctx, q, nowMs) {
14
14
  .then((r) => r[0]);
15
15
  if (chat === undefined)
16
16
  return Result.Ok(false);
17
- const rows = await ctx.sql.db
17
+ const metaRows = await ctx.sql.db
18
18
  .select({
19
19
  promptId: ctx.sql.tables.chatSections.promptId,
20
- blocks: ctx.sql.tables.chatSections.blocks,
20
+ blockSeq: ctx.sql.tables.chatSections.blockSeq,
21
21
  created: ctx.sql.tables.chatSections.created,
22
22
  })
23
23
  .from(ctx.sql.tables.chatSections)
24
24
  .where(and(eq(ctx.sql.tables.chatSections.chatId, chat.chatId), ne(ctx.sql.tables.chatSections.blockSeq, RESEARCH_BLOCK_SEQ)))
25
25
  .orderBy(desc(ctx.sql.tables.chatSections.created))
26
26
  .limit(OPEN_TURN_SCAN_LIMIT);
27
- const turnRows = rows.map((row) => ({
27
+ const latestPromptId = latestTurnPromptId(metaRows);
28
+ if (latestPromptId === undefined)
29
+ return Result.Ok(false);
30
+ const windowRows = metaRows.filter((row) => row.promptId === latestPromptId);
31
+ const blockSeqs = [...new Set(windowRows.map((row) => row.blockSeq))];
32
+ const blockRows = await ctx.sql.db
33
+ .select({
34
+ blockSeq: ctx.sql.tables.chatSections.blockSeq,
35
+ blocks: ctx.sql.tables.chatSections.blocks,
36
+ })
37
+ .from(ctx.sql.tables.chatSections)
38
+ .where(and(eq(ctx.sql.tables.chatSections.chatId, chat.chatId), eq(ctx.sql.tables.chatSections.promptId, latestPromptId), inArray(ctx.sql.tables.chatSections.blockSeq, blockSeqs)));
39
+ const blocksBySeq = new Map(blockRows.map((row) => [row.blockSeq, Array.isArray(row.blocks) ? row.blocks : []]));
40
+ const turnRows = windowRows.map((row) => ({
28
41
  promptId: row.promptId,
29
- blocks: Array.isArray(row.blocks) ? row.blocks : [],
42
+ blocks: blocksBySeq.get(row.blockSeq) ?? [],
30
43
  created: row.created,
31
44
  }));
32
45
  return Result.Ok(isChatTurnOpen(turnRows, nowMs));
@@ -1 +1 @@
1
- {"version":3,"file":"get-open-turn.js","sourceRoot":"","sources":["../../jsr/intern/get-open-turn.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"get-open-turn.js","sourceRoot":"","sources":["../../jsr/intern/get-open-turn.ts"],"names":[],"mappings":"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"}
@@ -1,7 +1,10 @@
1
1
  export declare const SSR_OPEN_TURN_MAX_AGE_MS = 600000;
2
- export interface OpenTurnRow {
3
- readonly promptId: string;
2
+ export interface OpenTurnRow extends OpenTurnMetaRow {
4
3
  readonly blocks: readonly unknown[];
4
+ }
5
+ export interface OpenTurnMetaRow {
6
+ readonly promptId: string;
5
7
  readonly created: string;
6
8
  }
9
+ export declare function latestTurnPromptId(rows: readonly OpenTurnMetaRow[]): string | undefined;
7
10
  export declare function isChatTurnOpen(rows: readonly OpenTurnRow[], nowMs: number): boolean;
@@ -1,8 +1,6 @@
1
1
  import { isPromptReq, isPromptBlockBegin, isPromptBlockEnd, isPromptError } from "@vibes.diy/api-types";
2
2
  export const SSR_OPEN_TURN_MAX_AGE_MS = 600_000;
3
- export function isChatTurnOpen(rows, nowMs) {
4
- if (rows.length === 0)
5
- return false;
3
+ export function latestTurnPromptId(rows) {
6
4
  let latestPromptId = undefined;
7
5
  let latestCreatedMs = Number.NEGATIVE_INFINITY;
8
6
  for (const row of rows) {
@@ -14,6 +12,12 @@ export function isChatTurnOpen(rows, nowMs) {
14
12
  latestPromptId = row.promptId;
15
13
  }
16
14
  }
15
+ return latestPromptId;
16
+ }
17
+ export function isChatTurnOpen(rows, nowMs) {
18
+ if (rows.length === 0)
19
+ return false;
20
+ const latestPromptId = latestTurnPromptId(rows);
17
21
  if (latestPromptId === undefined)
18
22
  return false;
19
23
  let hasReq = false;
@@ -1 +1 @@
1
- {"version":3,"file":"half-open-turn.js","sourceRoot":"","sources":["../../jsr/intern/half-open-turn.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,kBAAkB,EAAE,gBAAgB,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AAYxG,MAAM,CAAC,MAAM,wBAAwB,GAAG,OAAO,CAAC;AAoBhD,MAAM,UAAU,cAAc,CAAC,IAA4B,EAAE,KAAa;IACxE,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,KAAK,CAAC;IAEpC,IAAI,cAAc,GAAuB,SAAS,CAAC;IACnD,IAAI,eAAe,GAAG,MAAM,CAAC,iBAAiB,CAAC;IAC/C,KAAK,MAAM,GAAG,IAAI,IAAI,EAAE,CAAC;QACvB,MAAM,EAAE,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;QACnC,IAAI,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC;YAAE,SAAS;QAC/B,IAAI,EAAE,GAAG,eAAe,EAAE,CAAC;YACzB,eAAe,GAAG,EAAE,CAAC;YACrB,cAAc,GAAG,GAAG,CAAC,QAAQ,CAAC;QAChC,CAAC;IACH,CAAC;IACD,IAAI,cAAc,KAAK,SAAS;QAAE,OAAO,KAAK,CAAC;IAE/C,IAAI,MAAM,GAAG,KAAK,CAAC;IACnB,IAAI,WAAW,GAAG,KAAK,CAAC;IACxB,IAAI,YAAY,GAAG,MAAM,CAAC,iBAAiB,CAAC;IAC5C,KAAK,MAAM,GAAG,IAAI,IAAI,EAAE,CAAC;QACvB,IAAI,GAAG,CAAC,QAAQ,KAAK,cAAc;YAAE,SAAS;QAC9C,MAAM,EAAE,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;QACnC,IAAI,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,KAAK,KAAK,IAAI,EAAE,GAAG,YAAY;YAAE,YAAY,GAAG,EAAE,CAAC;QACvE,KAAK,MAAM,GAAG,IAAI,GAAG,CAAC,MAAM,EAAE,CAAC;YAC7B,IAAI,WAAW,CAAC,GAAG,CAAC,KAAK,IAAI,IAAI,kBAAkB,CAAC,GAAG,CAAC,KAAK,IAAI;gBAAE,MAAM,GAAG,IAAI,CAAC;YACjF,IAAI,gBAAgB,CAAC,GAAG,CAAC,KAAK,IAAI,IAAI,aAAa,CAAC,GAAG,CAAC,KAAK,IAAI;gBAAE,WAAW,GAAG,IAAI,CAAC;QACxF,CAAC;IACH,CAAC;IAED,IAAI,MAAM,KAAK,KAAK;QAAE,OAAO,KAAK,CAAC;IACnC,IAAI,WAAW,KAAK,IAAI;QAAE,OAAO,KAAK,CAAC;IACvC,IAAI,YAAY,KAAK,MAAM,CAAC,iBAAiB;QAAE,OAAO,KAAK,CAAC;IAC5D,OAAO,KAAK,GAAG,YAAY,IAAI,wBAAwB,CAAC;AAC1D,CAAC"}
1
+ {"version":3,"file":"half-open-turn.js","sourceRoot":"","sources":["../../jsr/intern/half-open-turn.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,kBAAkB,EAAE,gBAAgB,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AAYxG,MAAM,CAAC,MAAM,wBAAwB,GAAG,OAAO,CAAC;AAuBhD,MAAM,UAAU,kBAAkB,CAAC,IAAgC;IACjE,IAAI,cAAc,GAAuB,SAAS,CAAC;IACnD,IAAI,eAAe,GAAG,MAAM,CAAC,iBAAiB,CAAC;IAC/C,KAAK,MAAM,GAAG,IAAI,IAAI,EAAE,CAAC;QACvB,MAAM,EAAE,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;QACnC,IAAI,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC;YAAE,SAAS;QAC/B,IAAI,EAAE,GAAG,eAAe,EAAE,CAAC;YACzB,eAAe,GAAG,EAAE,CAAC;YACrB,cAAc,GAAG,GAAG,CAAC,QAAQ,CAAC;QAChC,CAAC;IACH,CAAC;IACD,OAAO,cAAc,CAAC;AACxB,CAAC;AAUD,MAAM,UAAU,cAAc,CAAC,IAA4B,EAAE,KAAa;IACxE,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,KAAK,CAAC;IAEpC,MAAM,cAAc,GAAG,kBAAkB,CAAC,IAAI,CAAC,CAAC;IAChD,IAAI,cAAc,KAAK,SAAS;QAAE,OAAO,KAAK,CAAC;IAE/C,IAAI,MAAM,GAAG,KAAK,CAAC;IACnB,IAAI,WAAW,GAAG,KAAK,CAAC;IACxB,IAAI,YAAY,GAAG,MAAM,CAAC,iBAAiB,CAAC;IAC5C,KAAK,MAAM,GAAG,IAAI,IAAI,EAAE,CAAC;QACvB,IAAI,GAAG,CAAC,QAAQ,KAAK,cAAc;YAAE,SAAS;QAC9C,MAAM,EAAE,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;QACnC,IAAI,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,KAAK,KAAK,IAAI,EAAE,GAAG,YAAY;YAAE,YAAY,GAAG,EAAE,CAAC;QACvE,KAAK,MAAM,GAAG,IAAI,GAAG,CAAC,MAAM,EAAE,CAAC;YAC7B,IAAI,WAAW,CAAC,GAAG,CAAC,KAAK,IAAI,IAAI,kBAAkB,CAAC,GAAG,CAAC,KAAK,IAAI;gBAAE,MAAM,GAAG,IAAI,CAAC;YACjF,IAAI,gBAAgB,CAAC,GAAG,CAAC,KAAK,IAAI,IAAI,aAAa,CAAC,GAAG,CAAC,KAAK,IAAI;gBAAE,WAAW,GAAG,IAAI,CAAC;QACxF,CAAC;IACH,CAAC;IAED,IAAI,MAAM,KAAK,KAAK;QAAE,OAAO,KAAK,CAAC;IACnC,IAAI,WAAW,KAAK,IAAI;QAAE,OAAO,KAAK,CAAC;IACvC,IAAI,YAAY,KAAK,MAAM,CAAC,iBAAiB;QAAE,OAAO,KAAK,CAAC;IAC5D,OAAO,KAAK,GAAG,YAAY,IAAI,wBAAwB,CAAC;AAC1D,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@vibes.diy/api-svc",
3
- "version": "12.3.2",
3
+ "version": "12.3.3",
4
4
  "license": "Apache-2.0",
5
5
  "type": "module",
6
6
  "main": "./index.js",
@@ -12,7 +12,8 @@
12
12
  "db:inspect-report": "tsx ./usage-report/inspect-db-report.ts",
13
13
  "db:admin": "tsx ./usage-report/admin-db.ts",
14
14
  "admin:backfill-avatars": "tsx ./usage-report/backfill-avatars.ts",
15
- "admin:backfill-first-message-embeddings": "tsx ./usage-report/backfill-first-message-embeddings.ts"
15
+ "admin:backfill-first-message-embeddings": "tsx ./usage-report/backfill-first-message-embeddings.ts",
16
+ "admin:backfill-published-chips": "tsx ./usage-report/backfill-published-chips.ts"
16
17
  },
17
18
  "dependencies": {
18
19
  "@adviser/cement": "~0.5.34",
@@ -22,18 +23,18 @@
22
23
  "@libsql/client": "~0.17.4",
23
24
  "@neondatabase/serverless": "~1.1.0",
24
25
  "@noble/hashes": "~2.2.0",
25
- "@vibes.diy/api-pkg": "12.3.2",
26
- "@vibes.diy/api-sql": "12.3.2",
27
- "@vibes.diy/api-types": "12.3.2",
28
- "@vibes.diy/call-ai-v2": "12.3.2",
29
- "@vibes.diy/identity": "12.3.2",
30
- "@vibes.diy/prompts": "12.3.2",
31
- "@vibes.diy/vibe-db-explorer": "12.3.2",
32
- "@vibes.diy/vibe-runtime": "12.3.2",
33
- "@vibes.diy/vibe-types": "12.3.2",
26
+ "@vibes.diy/api-pkg": "12.3.3",
27
+ "@vibes.diy/api-sql": "12.3.3",
28
+ "@vibes.diy/api-types": "12.3.3",
29
+ "@vibes.diy/call-ai-v2": "12.3.3",
30
+ "@vibes.diy/identity": "12.3.3",
31
+ "@vibes.diy/prompts": "12.3.3",
32
+ "@vibes.diy/vibe-db-explorer": "12.3.3",
33
+ "@vibes.diy/vibe-runtime": "12.3.3",
34
+ "@vibes.diy/vibe-types": "12.3.3",
34
35
  "acorn": "~8.17.0",
35
36
  "arktype": "~2.2.3",
36
- "call-ai": "12.3.2",
37
+ "call-ai": "12.3.3",
37
38
  "charwise": "~3.0.1",
38
39
  "cookie": "~2.0.1",
39
40
  "csv-parse": "~7.0.1",
@@ -17,6 +17,7 @@ import { readAnonymousSeedDocs } from "../intern/read-anonymous-seed-docs.js";
17
17
  import { loadRootHtmlDbRegion, loadRootHtmlLiveInputs } from "./root-html-live-inputs.js";
18
18
  import { UNVERSIONED_CLIENT_CACHE_CONTROL, VERSIONED_CLIENT_CACHE_CONTROL } from "../intern/swr-html-cache.js";
19
19
  import { RequestTimings } from "../request-timings.js";
20
+ const fileSystemItems = type([fileSystemItem, "[]"]);
20
21
  function isBareHostTopLevelNavigation(req) {
21
22
  return req.headers.get("Sec-Fetch-Dest") === "document";
22
23
  }
@@ -231,7 +232,7 @@ export const servEntryPoint = {
231
232
  });
232
233
  return Result.Ok(EventoResult.Stop);
233
234
  }
234
- const fileSystem = type([fileSystemItem, "[]"])(fs.fileSystem);
235
+ const fileSystem = fileSystemItems(fs.fileSystem);
235
236
  if (fileSystem instanceof type.errors) {
236
237
  return Result.Err(`Invalid filesystem data ${ctx.validated.fsId}`);
237
238
  }
@@ -1 +1 @@
1
- {"version":3,"file":"serv-entry-point.js","sourceRoot":"","sources":["../../jsr/public/serv-entry-point.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"serv-entry-point.js","sourceRoot":"","sources":["../../jsr/public/serv-entry-point.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,43 @@
1
+ import { Result } from "@adviser/cement";
2
+ import { VibesApiSQLCtx } from "../types.js";
3
+ export interface ChipBackfillCandidate {
4
+ readonly ownerHandle: string;
5
+ readonly appSlug: string;
6
+ readonly releaseSeq: number;
7
+ }
8
+ export declare function parsePositiveIntFlag(args: readonly string[], flag: string): Result<number | undefined>;
9
+ export type ChipBackfillOutcome = "stamped" | "stamped-empty" | "skipped" | "planned" | "failed";
10
+ export interface ChipBackfillRow {
11
+ readonly ownerHandle: string;
12
+ readonly appSlug: string;
13
+ readonly outcome: ChipBackfillOutcome;
14
+ readonly releaseSeq?: number;
15
+ readonly chips?: readonly string[];
16
+ readonly reason?: string;
17
+ }
18
+ export interface ChipBackfillSummary {
19
+ readonly candidates: number;
20
+ readonly stamped: number;
21
+ readonly stampedEmpty: number;
22
+ readonly skipped: number;
23
+ readonly planned: number;
24
+ readonly failed: number;
25
+ readonly rows: readonly ChipBackfillRow[];
26
+ }
27
+ export interface ChipBackfillOptions {
28
+ readonly apply: boolean;
29
+ readonly limit?: number;
30
+ readonly concurrency?: number;
31
+ readonly ownerHandle?: string;
32
+ readonly onRow?: (row: ChipBackfillRow, done: number, total: number) => void;
33
+ }
34
+ export declare const DEFAULT_CHIP_BACKFILL_CONCURRENCY = 2;
35
+ export declare function discoverUnstampedApps(vctx: VibesApiSQLCtx, opts?: {
36
+ readonly limit?: number;
37
+ readonly ownerHandle?: string;
38
+ }): Promise<ChipBackfillCandidate[]>;
39
+ export declare function processApp(vctx: VibesApiSQLCtx, app: {
40
+ readonly ownerHandle: string;
41
+ readonly appSlug: string;
42
+ }, apply: boolean): Promise<ChipBackfillRow>;
43
+ export declare function runChipBackfill(vctx: VibesApiSQLCtx, opts: ChipBackfillOptions): Promise<ChipBackfillSummary>;
@@ -0,0 +1,120 @@
1
+ import { and, desc, eq, isNull } from "drizzle-orm/sql/expressions";
2
+ import { Result } from "@adviser/cement";
3
+ import { readChipStamp, stampReleaseChips } from "../public/chip-stamp.js";
4
+ import { selectLatestAppPerSlug } from "../public/select-app.js";
5
+ export function parsePositiveIntFlag(args, flag) {
6
+ const i = args.indexOf(flag);
7
+ if (i < 0)
8
+ return Result.Ok(undefined);
9
+ const raw = args[i + 1];
10
+ if (raw === undefined || raw.startsWith("--")) {
11
+ return Result.Err(`${flag} requires a positive integer value (got ${raw === undefined ? "nothing" : `"${raw}"`})`);
12
+ }
13
+ const n = Number(raw);
14
+ if (Number.isFinite(n) === false || Number.isInteger(n) === false || n <= 0) {
15
+ return Result.Err(`${flag} requires a positive integer value (got "${raw}")`);
16
+ }
17
+ return Result.Ok(n);
18
+ }
19
+ export const DEFAULT_CHIP_BACKFILL_CONCURRENCY = 2;
20
+ export async function discoverUnstampedApps(vctx, opts) {
21
+ const t = vctx.sql.tables.apps;
22
+ const ownerScope = opts?.ownerHandle;
23
+ const rows = await vctx.sql.db
24
+ .select({ ownerHandle: t.ownerHandle, appSlug: t.appSlug, releaseSeq: t.releaseSeq })
25
+ .from(t)
26
+ .where(ownerScope === undefined
27
+ ? and(eq(t.mode, "production"), isNull(t.publishedChips))
28
+ : and(eq(t.mode, "production"), isNull(t.publishedChips), eq(t.ownerHandle, ownerScope)))
29
+ .orderBy(t.ownerHandle, t.appSlug, desc(t.releaseSeq));
30
+ const seen = new Set();
31
+ const out = [];
32
+ for (const r of rows) {
33
+ const key = `${r.ownerHandle}/${r.appSlug}`;
34
+ if (seen.has(key))
35
+ continue;
36
+ seen.add(key);
37
+ out.push({ ownerHandle: r.ownerHandle, appSlug: r.appSlug, releaseSeq: r.releaseSeq });
38
+ if (opts?.limit !== undefined && out.length >= opts.limit)
39
+ break;
40
+ }
41
+ return out;
42
+ }
43
+ async function readStampAt(vctx, p) {
44
+ const t = vctx.sql.tables.apps;
45
+ const rows = await vctx.sql.db
46
+ .select({ publishedChips: t.publishedChips })
47
+ .from(t)
48
+ .where(and(eq(t.appSlug, p.appSlug), eq(t.userId, p.userId), eq(t.releaseSeq, p.releaseSeq)))
49
+ .limit(1);
50
+ if (rows[0] === undefined)
51
+ return undefined;
52
+ return readChipStamp(rows[0].publishedChips);
53
+ }
54
+ export async function processApp(vctx, app, apply) {
55
+ const base = { ownerHandle: app.ownerHandle, appSlug: app.appSlug };
56
+ try {
57
+ const live = await selectLatestAppPerSlug(vctx, app);
58
+ if (live === undefined)
59
+ return { ...base, outcome: "skipped", reason: "no app row" };
60
+ if (live.mode !== "production")
61
+ return { ...base, outcome: "skipped", reason: "live release is not production" };
62
+ if (readChipStamp(live.publishedChips) !== undefined) {
63
+ return { ...base, outcome: "skipped", releaseSeq: live.releaseSeq, reason: "already stamped" };
64
+ }
65
+ if (apply === false)
66
+ return { ...base, outcome: "planned", releaseSeq: live.releaseSeq };
67
+ await stampReleaseChips(vctx, {
68
+ ownerHandle: app.ownerHandle,
69
+ appSlug: app.appSlug,
70
+ userId: live.userId,
71
+ releaseSeq: live.releaseSeq,
72
+ fsId: live.fsId,
73
+ });
74
+ const written = await readStampAt(vctx, { appSlug: app.appSlug, userId: live.userId, releaseSeq: live.releaseSeq });
75
+ if (written === undefined) {
76
+ return { ...base, outcome: "failed", releaseSeq: live.releaseSeq, reason: "row still unstamped after stampReleaseChips" };
77
+ }
78
+ return {
79
+ ...base,
80
+ outcome: written.length === 0 ? "stamped-empty" : "stamped",
81
+ releaseSeq: live.releaseSeq,
82
+ chips: written,
83
+ };
84
+ }
85
+ catch (e) {
86
+ return { ...base, outcome: "failed", reason: e instanceof Error ? e.message : String(e) };
87
+ }
88
+ }
89
+ export async function runChipBackfill(vctx, opts) {
90
+ const candidates = await discoverUnstampedApps(vctx, { limit: opts.limit, ownerHandle: opts.ownerHandle });
91
+ const rows = new Array(candidates.length);
92
+ const concurrency = Math.max(1, opts.concurrency ?? DEFAULT_CHIP_BACKFILL_CONCURRENCY);
93
+ let next = 0;
94
+ let done = 0;
95
+ async function worker() {
96
+ for (;;) {
97
+ const i = next;
98
+ next += 1;
99
+ const app = candidates[i];
100
+ if (app === undefined)
101
+ return;
102
+ const row = await processApp(vctx, app, opts.apply);
103
+ rows[i] = row;
104
+ done += 1;
105
+ opts.onRow?.(row, done, candidates.length);
106
+ }
107
+ }
108
+ await Promise.all(Array.from({ length: Math.min(concurrency, candidates.length) }, () => worker()));
109
+ const count = (o) => rows.filter((r) => r.outcome === o).length;
110
+ return {
111
+ candidates: candidates.length,
112
+ stamped: count("stamped"),
113
+ stampedEmpty: count("stamped-empty"),
114
+ skipped: count("skipped"),
115
+ planned: count("planned"),
116
+ failed: count("failed"),
117
+ rows,
118
+ };
119
+ }
120
+ //# sourceMappingURL=backfill-published-chips-util.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"backfill-published-chips-util.js","sourceRoot":"","sources":["../../jsr/usage-report/backfill-published-chips-util.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,97 @@
1
+ import { Pool } from "@neondatabase/serverless";
2
+ import { drizzle as drizzleNeon } from "drizzle-orm/neon-serverless";
3
+ import { Result, exception2Result } from "@adviser/cement";
4
+ import { ensureSuperThis } from "@vibes.diy/identity";
5
+ import { createVibesApiTables } from "@vibes.diy/api-sql";
6
+ import { DEFAULT_CHIP_BACKFILL_CONCURRENCY, parsePositiveIntFlag, runChipBackfill, } from "./backfill-published-chips-util.js";
7
+ import { formatError, loadDevVars } from "./usage-report-util.js";
8
+ const PROGRESS_EVERY = 25;
9
+ function printUsage() {
10
+ console.log(`
11
+ Usage:
12
+ pnpm --dir vibes.diy/api/svc run admin:backfill-published-chips # dry run (read-only)
13
+ pnpm --dir vibes.diy/api/svc run admin:backfill-published-chips -- --apply # write pass
14
+ ... -- --apply --limit 50 # cap for a controlled batch
15
+ ... -- --apply --concurrency 4 # default ${DEFAULT_CHIP_BACKFILL_CONCURRENCY}
16
+
17
+ --limit and --concurrency take a POSITIVE INTEGER. A bad value is an error, not
18
+ a fallback — an unusable --limit must never quietly mean "sweep everything".
19
+
20
+ Environment:
21
+ NEON_DATABASE_URL read/discovery connection (dry run)
22
+ NEON_DATABASE_ADMIN_URL write connection (required for --apply)
23
+ `.trim());
24
+ }
25
+ function describe(row) {
26
+ const label = `@${row.ownerHandle}/${row.appSlug}`;
27
+ const seq = row.releaseSeq === undefined ? "" : ` seq=${row.releaseSeq}`;
28
+ const chips = row.chips === undefined ? "" : ` ${JSON.stringify(row.chips)}`;
29
+ const reason = row.reason === undefined ? "" : ` (${row.reason})`;
30
+ return `${row.outcome.toUpperCase().padEnd(14)}${label}${seq}${chips}${reason}`;
31
+ }
32
+ async function run() {
33
+ loadDevVars();
34
+ const args = process.argv.slice(2);
35
+ if (args.includes("--help") || args.includes("-h")) {
36
+ printUsage();
37
+ return Result.Ok(undefined);
38
+ }
39
+ const apply = args.includes("--apply");
40
+ const rLimit = parsePositiveIntFlag(args, "--limit");
41
+ if (rLimit.isErr()) {
42
+ printUsage();
43
+ return Result.Err(rLimit.Err());
44
+ }
45
+ const rConcurrency = parsePositiveIntFlag(args, "--concurrency");
46
+ if (rConcurrency.isErr()) {
47
+ printUsage();
48
+ return Result.Err(rConcurrency.Err());
49
+ }
50
+ const limit = rLimit.Ok();
51
+ const concurrency = rConcurrency.Ok() ?? DEFAULT_CHIP_BACKFILL_CONCURRENCY;
52
+ const connectionString = apply ? process.env["NEON_DATABASE_ADMIN_URL"] : process.env["NEON_DATABASE_URL"];
53
+ if (connectionString === undefined) {
54
+ printUsage();
55
+ return Result.Err(`${apply ? "NEON_DATABASE_ADMIN_URL" : "NEON_DATABASE_URL"} is required (set in .dev.vars or env)`);
56
+ }
57
+ const pool = new Pool({ connectionString });
58
+ const db = drizzleNeon(pool);
59
+ const vctx = {
60
+ sthis: ensureSuperThis(),
61
+ sql: { db, tables: createVibesApiTables("pg"), flavour: "pg" },
62
+ };
63
+ const result = await exception2Result(async () => {
64
+ const summary = await runChipBackfill(vctx, {
65
+ apply,
66
+ ...(limit === undefined ? {} : { limit }),
67
+ concurrency,
68
+ onRow: (row, done, total) => {
69
+ if (row.outcome === "failed" || row.outcome === "skipped")
70
+ console.log(describe(row));
71
+ if (done % PROGRESS_EVERY === 0 || done === total)
72
+ console.log(` … ${done}/${total}`);
73
+ },
74
+ });
75
+ console.log(`\ncandidates=${summary.candidates} (apps with at least one unstamped production release)`);
76
+ if (apply === false) {
77
+ console.log(`planned=${summary.planned} skipped=${summary.skipped} (skipped = live release already stamped or not production — nothing to do)\nDry run — nothing written. Re-run with --apply (concurrency ${concurrency}).`);
78
+ return;
79
+ }
80
+ console.log(`stamped=${summary.stamped} stamped-empty=${summary.stampedEmpty} skipped=${summary.skipped} failed=${summary.failed}\n` +
81
+ `skipped = live release already stamped or not production (nothing to do); only failed leaves an app on the expensive path.`);
82
+ if (summary.failed > 0) {
83
+ throw new Error(`sweep finished with ${summary.failed} failed app(s) — re-run to retry (already-stamped rows are skipped)`);
84
+ }
85
+ });
86
+ await pool.end();
87
+ if (result.isErr())
88
+ return Result.Err(result.Err());
89
+ return Result.Ok(undefined);
90
+ }
91
+ run().then((r) => {
92
+ if (r.isErr()) {
93
+ console.error(formatError(r.Err()));
94
+ process.exit(1);
95
+ }
96
+ });
97
+ //# sourceMappingURL=backfill-published-chips.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"backfill-published-chips.js","sourceRoot":"","sources":["../../jsr/usage-report/backfill-published-chips.ts"],"names":[],"mappings":"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"}