@vibes.diy/api-svc 14.3.95 → 14.3.97
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/analytics.d.ts +8 -0
- package/analytics.js +12 -0
- package/analytics.js.map +1 -1
- package/billing.d.ts +2 -0
- package/billing.js +7 -2
- package/billing.js.map +1 -1
- package/create-handler.js +6 -0
- package/create-handler.js.map +1 -1
- package/evento-handler-manifest.js +2 -0
- package/evento-handler-manifest.js.map +1 -1
- package/guest-claim-handoff-token.d.ts +21 -0
- package/guest-claim-handoff-token.js +55 -0
- package/guest-claim-handoff-token.js.map +1 -0
- package/intern/agent-belt.js +3 -0
- package/intern/agent-belt.js.map +1 -1
- package/intern/agent-session-instruction.d.ts +3 -2
- package/intern/agent-session-instruction.js +4 -2
- package/intern/agent-session-instruction.js.map +1 -1
- package/intern/builder-close-overlay.d.ts +2 -0
- package/intern/builder-close-overlay.js +16 -0
- package/intern/builder-close-overlay.js.map +1 -0
- package/intern/builder-refusal-fallback.d.ts +21 -0
- package/intern/builder-refusal-fallback.js +23 -0
- package/intern/builder-refusal-fallback.js.map +1 -0
- package/intern/components/vibe-page.js +9 -1
- package/intern/components/vibe-page.js.map +1 -1
- package/intern/first-build-classifier.js +2 -1
- package/intern/first-build-classifier.js.map +1 -1
- package/intern/get-model-defaults.js +9 -5
- package/intern/get-model-defaults.js.map +1 -1
- package/intern/get-vibe-route-hints.d.ts +2 -2
- package/intern/get-vibe-route-hints.js +3 -7
- package/intern/get-vibe-route-hints.js.map +1 -1
- package/intern/guest-mask.d.ts +6 -0
- package/intern/guest-mask.js +12 -0
- package/intern/guest-mask.js.map +1 -1
- package/intern/in-flight-turns.js.map +1 -1
- package/intern/instruction-variant.d.ts +1 -1
- package/intern/instruction-variant.js +3 -2
- package/intern/instruction-variant.js.map +1 -1
- package/intern/load-selected-backend.d.ts +1 -0
- package/intern/load-selected-backend.js +1 -1
- package/intern/load-selected-backend.js.map +1 -1
- package/intern/prompt-assembly.js +3 -0
- package/intern/prompt-assembly.js.map +1 -1
- package/intern/turn-error-kind.d.ts +2 -0
- package/intern/turn-error-kind.js +18 -0
- package/intern/turn-error-kind.js.map +1 -0
- package/intern/turn-size.d.ts +7 -0
- package/intern/turn-size.js +45 -0
- package/intern/turn-size.js.map +1 -0
- package/models.json +42 -20
- package/package.json +13 -13
- package/public/agent-turn-action.js +3 -0
- package/public/agent-turn-action.js.map +1 -1
- package/public/app-settings-snapshot.js +2 -13
- package/public/app-settings-snapshot.js.map +1 -1
- package/public/billing-msg.js +21 -1
- package/public/billing-msg.js.map +1 -1
- package/public/claim-guest-principal.js +13 -6
- package/public/claim-guest-principal.js.map +1 -1
- package/public/ensure-user-settings.js +6 -3
- package/public/ensure-user-settings.js.map +1 -1
- package/public/fork-app.js +1 -4
- package/public/fork-app.js.map +1 -1
- package/public/get-app-by-fsid.js +8 -1
- package/public/get-app-by-fsid.js.map +1 -1
- package/public/handle-prompt-context.d.ts +3 -1
- package/public/handle-prompt-context.js +10 -1
- package/public/handle-prompt-context.js.map +1 -1
- package/public/handler-llm-request.d.ts +3 -1
- package/public/handler-llm-request.js +2 -1
- package/public/handler-llm-request.js.map +1 -1
- package/public/list-app-models.js +7 -6
- package/public/list-app-models.js.map +1 -1
- package/public/llm-dispatch-fallback.d.ts +1 -1
- package/public/mint-guest-claim-handoff.d.ts +3 -0
- package/public/mint-guest-claim-handoff.js +37 -0
- package/public/mint-guest-claim-handoff.js.map +1 -0
- package/public/prompt-section-actions.js +4 -0
- package/public/prompt-section-actions.js.map +1 -1
- package/public/prompt-turn-settled.js +8 -0
- package/public/prompt-turn-settled.js.map +1 -1
- package/public/prompt-turn-types.d.ts +2 -0
- package/public/request-flow.js.map +1 -1
- package/public/stream-assembly.d.ts +5 -2
- package/public/stream-assembly.js +104 -5
- package/public/stream-assembly.js.map +1 -1
- package/types.d.ts +2 -0
- package/types.js.map +1 -1
- package/usage-report/codegen-delivery-alert-util.d.ts +37 -1
- package/usage-report/codegen-delivery-alert-util.js +157 -28
- package/usage-report/codegen-delivery-alert-util.js.map +1 -1
- package/usage-report/codegen-delivery-alert.js +17 -3
- package/usage-report/codegen-delivery-alert.js.map +1 -1
- package/usage-report/create-promo-code-util.js +2 -2
- package/usage-report/create-promo-code-util.js.map +1 -1
package/types.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.js","sourceRoot":"","sources":["../jsr/types.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../jsr/types.ts"],"names":[],"mappings":"AAuBA,OAAO,EAAE,IAAI,EAAE,MAAM,SAAS,CAAC;AAQ/B,OAAO,EAAE,QAAQ,EAAE,MAAM,gCAAgC,CAAC;AAuY1D,MAAM,CAAC,MAAM,aAAa,GAAG,QAAQ,CAAC,GAAG,EAAE,CACzC,IAAI,CAAC;IACH,IAAI,EAAE,+BAA+B;IACrC,MAAM,EAAE,QAAQ;IAChB,WAAW,EAAE,QAAQ;IACrB,MAAM,EAAE,QAAQ;CACjB,CAAC,CACH,CAAC;AAGF,MAAM,UAAU,eAAe,CAAC,GAAY;IAC1C,OAAO,CAAC,CAAC,aAAa,CAAC,GAAG,CAAC,YAAY,IAAI,CAAC,MAAM,CAAC,CAAC;AACtD,CAAC;AAED,MAAM,CAAC,MAAM,cAAc,GAAG,QAAQ,CAAC,GAAG,EAAE,CAC1C,IAAI,CAAC;IACH,IAAI,EAAE,8BAA8B;IACpC,MAAM,EAAE,QAAQ;IAChB,OAAO,EAAE,QAAQ;IACjB,MAAM,EAAE,QAAQ;IAOhB,cAAc,EAAE,SAAS;CAC1B,CAAC,CACH,CAAC;AAGF,MAAM,UAAU,gBAAgB,CAAC,GAAY;IAC3C,OAAO,CAAC,CAAC,cAAc,CAAC,GAAG,CAAC,YAAY,IAAI,CAAC,MAAM,CAAC,CAAC;AACvD,CAAC;AAED,MAAM,CAAC,MAAM,gBAAgB,GAAG,QAAQ,CAAC,GAAG,EAAE,CAC5C,IAAI,CAAC;IACH,IAAI,EAAE,mCAAmC;IACzC,WAAW,EAAE,aAAa;IAC1B,OAAO,EAAE,cAAc;CACxB,CAAC,CACH,CAAC;AAGF,MAAM,UAAU,kBAAkB,CAAC,GAAY;IAC7C,OAAO,CAAC,CAAC,gBAAgB,CAAC,GAAG,CAAC,YAAY,IAAI,CAAC,MAAM,CAAC,CAAC;AACzD,CAAC"}
|
|
@@ -2,6 +2,9 @@ export declare function sanitizeForDiscord(value: string): string;
|
|
|
2
2
|
export declare const DEFAULT_WINDOW_SECONDS = 120;
|
|
3
3
|
export declare const DEFAULT_UNDELIVERED_SHARE = 0.33;
|
|
4
4
|
export declare const DEFAULT_MIN_TURNS = 100;
|
|
5
|
+
export declare const PRESENCE_MATCH_MS = 60000;
|
|
6
|
+
export declare const DUPLICATE_SIGHTING_MS = 10000;
|
|
7
|
+
export declare function collapseMultiTabSightings(presence: readonly PresenceRow[], dupMs?: number): PresenceRow[];
|
|
5
8
|
export declare const TOP_N = 8;
|
|
6
9
|
export declare const CODEGEN_DELIVERY_ALERT_ENV_VARS: readonly string[];
|
|
7
10
|
export interface ThresholdEnv {
|
|
@@ -32,10 +35,19 @@ export interface DeliveryRow {
|
|
|
32
35
|
readonly distinctId: string;
|
|
33
36
|
readonly via: string;
|
|
34
37
|
}
|
|
38
|
+
export interface PresenceRow {
|
|
39
|
+
readonly ts: number;
|
|
40
|
+
readonly distinctId: string;
|
|
41
|
+
readonly ownerHandle: string;
|
|
42
|
+
readonly appSlug: string;
|
|
43
|
+
readonly visible: boolean;
|
|
44
|
+
readonly reach: string;
|
|
45
|
+
}
|
|
35
46
|
export interface AppGapRow {
|
|
36
47
|
readonly ownerHandle: string;
|
|
37
48
|
readonly appSlug: string;
|
|
38
49
|
readonly undelivered: number;
|
|
50
|
+
readonly watchedUnconfirmed: number;
|
|
39
51
|
readonly turns: number;
|
|
40
52
|
}
|
|
41
53
|
export interface CodegenDeliverySummary {
|
|
@@ -48,15 +60,31 @@ export interface CodegenDeliverySummary {
|
|
|
48
60
|
readonly pendingTurns: number;
|
|
49
61
|
readonly undelivered: number;
|
|
50
62
|
readonly undeliveredShare: number;
|
|
63
|
+
readonly confirmed: number;
|
|
64
|
+
readonly presenceEvents: number;
|
|
65
|
+
readonly presenceReporting: boolean;
|
|
66
|
+
readonly watchedTurns: number;
|
|
67
|
+
readonly watchedUnconfirmed: number;
|
|
68
|
+
readonly watchedUnconfirmedHidden: number;
|
|
69
|
+
readonly watchedUnconfirmedShare: number;
|
|
70
|
+
readonly leftTurns: number;
|
|
71
|
+
readonly preSignalTurns: number;
|
|
51
72
|
readonly entryUndelivered: number;
|
|
52
73
|
readonly entryTurns: number;
|
|
74
|
+
readonly entryLeft: number;
|
|
75
|
+
readonly entryPreSignal: number;
|
|
53
76
|
readonly companionOnlyUndelivered: number;
|
|
54
77
|
readonly companionOnlyTurns: number;
|
|
78
|
+
readonly companionOnlyLeft: number;
|
|
79
|
+
readonly companionOnlyPreSignal: number;
|
|
55
80
|
readonly firstBuildUndelivered: number;
|
|
56
81
|
readonly firstBuildTurns: number;
|
|
82
|
+
readonly firstBuildLeft: number;
|
|
83
|
+
readonly firstBuildPreSignal: number;
|
|
57
84
|
readonly worstApps: readonly AppGapRow[];
|
|
58
85
|
readonly tripped: readonly string[];
|
|
59
86
|
readonly minTurns: number;
|
|
87
|
+
readonly windowSeconds: number;
|
|
60
88
|
}
|
|
61
89
|
export declare function isUnlabeledTurn(row: SettledTurnRow): boolean;
|
|
62
90
|
export declare function isBuildTurn(row: SettledTurnRow): boolean;
|
|
@@ -65,11 +93,19 @@ export declare const INSTANT_BUILD_FINISH_MAX_MS: number;
|
|
|
65
93
|
export declare function foldInstantFirstBuilds(rows: readonly SettledTurnRow[]): SettledTurnRow[];
|
|
66
94
|
export declare function isPreviewChanging(row: SettledTurnRow): boolean;
|
|
67
95
|
export declare function matchDeliveries(turns: readonly SettledTurnRow[], deliveries: readonly DeliveryRow[], windowMs: number): SettledTurnRow[];
|
|
96
|
+
export declare function matchPresence(turns: readonly SettledTurnRow[], presence: readonly PresenceRow[], matchMs?: number): Map<SettledTurnRow, PresenceRow>;
|
|
68
97
|
export declare function partitionByWindowClose(turns: readonly SettledTurnRow[], windowMs: number, nowMs: number): {
|
|
69
98
|
readonly settled: SettledTurnRow[];
|
|
70
99
|
readonly pending: SettledTurnRow[];
|
|
71
100
|
};
|
|
72
|
-
export
|
|
101
|
+
export interface SummarizeInput {
|
|
102
|
+
readonly settled: readonly SettledTurnRow[];
|
|
103
|
+
readonly deliveries: readonly DeliveryRow[];
|
|
104
|
+
readonly presence: readonly PresenceRow[];
|
|
105
|
+
readonly thresholds: Thresholds;
|
|
106
|
+
readonly nowMs: number;
|
|
107
|
+
}
|
|
108
|
+
export declare function summarizeCodegenDelivery(input: SummarizeInput): CodegenDeliverySummary;
|
|
73
109
|
export interface DiscordEmbedBody {
|
|
74
110
|
readonly content?: string;
|
|
75
111
|
readonly allowed_mentions?: {
|
|
@@ -5,6 +5,29 @@ export function sanitizeForDiscord(value) {
|
|
|
5
5
|
export const DEFAULT_WINDOW_SECONDS = 120;
|
|
6
6
|
export const DEFAULT_UNDELIVERED_SHARE = 0.33;
|
|
7
7
|
export const DEFAULT_MIN_TURNS = 100;
|
|
8
|
+
export const PRESENCE_MATCH_MS = 60_000;
|
|
9
|
+
export const DUPLICATE_SIGHTING_MS = 10_000;
|
|
10
|
+
export function collapseMultiTabSightings(presence, dupMs = DUPLICATE_SIGHTING_MS) {
|
|
11
|
+
const groups = new Map();
|
|
12
|
+
for (const p of presence) {
|
|
13
|
+
const k = JSON.stringify([p.distinctId, p.ownerHandle, p.appSlug]);
|
|
14
|
+
groups.set(k, [...(groups.get(k) ?? []), p]);
|
|
15
|
+
}
|
|
16
|
+
const out = [];
|
|
17
|
+
for (const rows of groups.values()) {
|
|
18
|
+
let last;
|
|
19
|
+
for (const row of [...rows].sort((a, b) => a.ts - b.ts)) {
|
|
20
|
+
if (last !== undefined && row.ts - last.ts <= dupMs) {
|
|
21
|
+
last = { ...last, visible: last.visible || row.visible };
|
|
22
|
+
out[out.length - 1] = last;
|
|
23
|
+
continue;
|
|
24
|
+
}
|
|
25
|
+
last = row;
|
|
26
|
+
out.push(row);
|
|
27
|
+
}
|
|
28
|
+
}
|
|
29
|
+
return out;
|
|
30
|
+
}
|
|
8
31
|
export const TOP_N = 8;
|
|
9
32
|
const COLOR_TRIPPED = 15548997;
|
|
10
33
|
const COLOR_QUIET = 3447003;
|
|
@@ -85,6 +108,31 @@ export function matchDeliveries(turns, deliveries, windowMs) {
|
|
|
85
108
|
}
|
|
86
109
|
return turns.filter((t) => unmatched.has(t));
|
|
87
110
|
}
|
|
111
|
+
function isPreviewSighting(p) {
|
|
112
|
+
return p.reach === "entry" || p.reach === "companion-only" || p.reach === "unknown" || p.reach === "";
|
|
113
|
+
}
|
|
114
|
+
export function matchPresence(turns, presence, matchMs = PRESENCE_MATCH_MS) {
|
|
115
|
+
const key = (distinctId, ownerHandle, appSlug) => JSON.stringify([distinctId, ownerHandle, appSlug]);
|
|
116
|
+
const pool = new Map();
|
|
117
|
+
for (const p of presence.filter(isPreviewSighting)) {
|
|
118
|
+
const k = key(p.distinctId, p.ownerHandle, p.appSlug);
|
|
119
|
+
const list = pool.get(k) ?? [];
|
|
120
|
+
list.push({ row: p, claimed: false });
|
|
121
|
+
pool.set(k, list);
|
|
122
|
+
}
|
|
123
|
+
const matched = new Map();
|
|
124
|
+
for (const turn of [...turns].sort((a, b) => a.ts - b.ts)) {
|
|
125
|
+
const candidates = (pool.get(key(turn.distinctId, turn.ownerHandle, turn.appSlug)) ?? [])
|
|
126
|
+
.filter((c) => c.claimed === false && Math.abs(c.row.ts - turn.ts) <= matchMs)
|
|
127
|
+
.sort((a, b) => Math.abs(a.row.ts - turn.ts) - Math.abs(b.row.ts - turn.ts));
|
|
128
|
+
const nearest = candidates[0];
|
|
129
|
+
if (nearest === undefined)
|
|
130
|
+
continue;
|
|
131
|
+
nearest.claimed = true;
|
|
132
|
+
matched.set(turn, nearest.row);
|
|
133
|
+
}
|
|
134
|
+
return matched;
|
|
135
|
+
}
|
|
88
136
|
export function partitionByWindowClose(turns, windowMs, nowMs) {
|
|
89
137
|
const settled = [];
|
|
90
138
|
const pending = [];
|
|
@@ -92,7 +140,8 @@ export function partitionByWindowClose(turns, windowMs, nowMs) {
|
|
|
92
140
|
(t.ts + windowMs <= nowMs ? settled : pending).push(t);
|
|
93
141
|
return { settled, pending };
|
|
94
142
|
}
|
|
95
|
-
export function summarizeCodegenDelivery(
|
|
143
|
+
export function summarizeCodegenDelivery(input) {
|
|
144
|
+
const { settled, deliveries, presence, thresholds, nowMs } = input;
|
|
96
145
|
const windowMs = thresholds.windowSeconds * 1000;
|
|
97
146
|
const builds = foldInstantFirstBuilds(settled).filter(isBuildTurn);
|
|
98
147
|
const unlabeledTurns = settled.filter(isUnlabeledTurn).length;
|
|
@@ -101,24 +150,46 @@ export function summarizeCodegenDelivery(settled, deliveries, thresholds, nowMs
|
|
|
101
150
|
const previewChanging = parts.settled;
|
|
102
151
|
const undelivered = matchDeliveries(previewChanging, deliveries, windowMs);
|
|
103
152
|
const undeliveredSet = new Set(undelivered);
|
|
153
|
+
const presenceReporting = presence.length > 0;
|
|
154
|
+
const sightingsPool = collapseMultiTabSightings(presence.filter(isPreviewSighting));
|
|
155
|
+
const presenceSince = sightingsPool.reduce((min, p) => (min === undefined || p.ts < min ? p.ts : min), undefined);
|
|
156
|
+
const inSplit = (t) => presenceSince !== undefined && t.ts >= presenceSince - PRESENCE_MATCH_MS;
|
|
157
|
+
const splitTurns = previewChanging.filter(inSplit);
|
|
158
|
+
const sightings = presenceReporting ? matchPresence(splitTurns, sightingsPool) : new Map();
|
|
159
|
+
const isWatchedUnconfirmed = (t) => undeliveredSet.has(t) && sightings.has(t);
|
|
160
|
+
const isLeft = (t) => presenceReporting && inSplit(t) && undeliveredSet.has(t) && sightings.has(t) === false;
|
|
161
|
+
const isPreSignal = (t) => presenceReporting && !inSplit(t) && undeliveredSet.has(t);
|
|
162
|
+
const watchedUnconfirmed = previewChanging.filter(isWatchedUnconfirmed);
|
|
163
|
+
const leftTurns = previewChanging.filter(isLeft);
|
|
164
|
+
const confirmed = previewChanging.length - undelivered.length;
|
|
165
|
+
const watchedTurns = splitTurns.filter((t) => !undeliveredSet.has(t)).length + watchedUnconfirmed.length;
|
|
104
166
|
const entryTurns = previewChanging.filter((t) => t.entryTouched);
|
|
105
167
|
const companionOnly = previewChanging.filter((t) => !t.entryTouched);
|
|
106
168
|
const firstBuilds = previewChanging.filter((t) => t.firstBuild);
|
|
107
169
|
const perApp = new Map();
|
|
108
170
|
for (const turn of previewChanging) {
|
|
109
171
|
const key = `${turn.ownerHandle}/${turn.appSlug}`;
|
|
110
|
-
const prior = perApp.get(key) ?? {
|
|
172
|
+
const prior = perApp.get(key) ?? {
|
|
173
|
+
ownerHandle: turn.ownerHandle,
|
|
174
|
+
appSlug: turn.appSlug,
|
|
175
|
+
undelivered: 0,
|
|
176
|
+
watchedUnconfirmed: 0,
|
|
177
|
+
turns: 0,
|
|
178
|
+
};
|
|
111
179
|
perApp.set(key, {
|
|
112
180
|
...prior,
|
|
113
181
|
turns: prior.turns + 1,
|
|
114
182
|
undelivered: prior.undelivered + (undeliveredSet.has(turn) ? 1 : 0),
|
|
183
|
+
watchedUnconfirmed: prior.watchedUnconfirmed + (isWatchedUnconfirmed(turn) ? 1 : 0),
|
|
115
184
|
});
|
|
116
185
|
}
|
|
117
|
-
const
|
|
186
|
+
const appGap = (a) => (presenceReporting ? a.watchedUnconfirmed : a.undelivered);
|
|
187
|
+
const worstApps = [...perApp.values()].filter((a) => appGap(a) > 0).sort((a, b) => appGap(b) - appGap(a));
|
|
118
188
|
const share = previewChanging.length === 0 ? 0 : undelivered.length / previewChanging.length;
|
|
189
|
+
const watchedShare = watchedTurns === 0 ? 0 : watchedUnconfirmed.length / watchedTurns;
|
|
119
190
|
const tripped = [];
|
|
120
|
-
if (
|
|
121
|
-
tripped.push(`${Math.round(
|
|
191
|
+
if (presenceReporting && watchedTurns >= thresholds.minTurns && watchedShare >= thresholds.undeliveredShare) {
|
|
192
|
+
tripped.push(`${Math.round(watchedShare * 100)}% of the builds someone was watching (${watchedUnconfirmed.length} of ${watchedTurns}) did not confirm reaching their screen within ${thresholds.windowSeconds}s.`);
|
|
122
193
|
}
|
|
123
194
|
return {
|
|
124
195
|
settledTurns: builds.length,
|
|
@@ -130,15 +201,31 @@ export function summarizeCodegenDelivery(settled, deliveries, thresholds, nowMs
|
|
|
130
201
|
pendingTurns: parts.pending.length,
|
|
131
202
|
undelivered: undelivered.length,
|
|
132
203
|
undeliveredShare: share,
|
|
204
|
+
confirmed,
|
|
205
|
+
presenceEvents: presence.length,
|
|
206
|
+
presenceReporting,
|
|
207
|
+
watchedTurns,
|
|
208
|
+
watchedUnconfirmed: watchedUnconfirmed.length,
|
|
209
|
+
watchedUnconfirmedHidden: watchedUnconfirmed.filter((t) => sightings.get(t)?.visible === false).length,
|
|
210
|
+
watchedUnconfirmedShare: watchedShare,
|
|
211
|
+
leftTurns: leftTurns.length,
|
|
212
|
+
preSignalTurns: previewChanging.filter(isPreSignal).length,
|
|
133
213
|
entryUndelivered: entryTurns.filter((t) => undeliveredSet.has(t)).length,
|
|
134
214
|
entryTurns: entryTurns.length,
|
|
215
|
+
entryLeft: entryTurns.filter(isLeft).length,
|
|
216
|
+
entryPreSignal: entryTurns.filter(isPreSignal).length,
|
|
135
217
|
companionOnlyUndelivered: companionOnly.filter((t) => undeliveredSet.has(t)).length,
|
|
136
218
|
companionOnlyTurns: companionOnly.length,
|
|
219
|
+
companionOnlyLeft: companionOnly.filter(isLeft).length,
|
|
220
|
+
companionOnlyPreSignal: companionOnly.filter(isPreSignal).length,
|
|
137
221
|
firstBuildUndelivered: firstBuilds.filter((t) => undeliveredSet.has(t)).length,
|
|
138
222
|
firstBuildTurns: firstBuilds.length,
|
|
223
|
+
firstBuildLeft: firstBuilds.filter(isLeft).length,
|
|
224
|
+
firstBuildPreSignal: firstBuilds.filter(isPreSignal).length,
|
|
139
225
|
worstApps,
|
|
140
226
|
tripped,
|
|
141
227
|
minTurns: thresholds.minTurns,
|
|
228
|
+
windowSeconds: thresholds.windowSeconds,
|
|
142
229
|
};
|
|
143
230
|
}
|
|
144
231
|
export function vibeUrl(ownerHandle, appSlug) {
|
|
@@ -147,7 +234,7 @@ export function vibeUrl(ownerHandle, appSlug) {
|
|
|
147
234
|
function pct(n, d) {
|
|
148
235
|
return d === 0 ? "—" : `${Math.round((n / d) * 100)}%`;
|
|
149
236
|
}
|
|
150
|
-
const US_NOTE = `
|
|
237
|
+
const US_NOTE = `_Every event here inherits the #4257 fail-closed US gate, so this covers the US slice only — a non-US-only regression is invisible here._`;
|
|
151
238
|
export function buildCodegenDeliveryEmbed(input) {
|
|
152
239
|
const s = input.summary;
|
|
153
240
|
const { sinceHours } = input;
|
|
@@ -159,7 +246,7 @@ export function buildCodegenDeliveryEmbed(input) {
|
|
|
159
246
|
{
|
|
160
247
|
title: `Codegen delivery (last ${sinceHours}h)`,
|
|
161
248
|
description: [
|
|
162
|
-
`One or
|
|
249
|
+
`One or more event reads were truncated at the row cap, so the streams cover different slices of the window and any gap computed from them would be an artefact of where they were cut.`,
|
|
163
250
|
``,
|
|
164
251
|
`No share is reported for this run, deliberately. Narrow the window (\`--since-hours\`) or raise the cap, then re-run.`,
|
|
165
252
|
``,
|
|
@@ -208,17 +295,18 @@ export function buildCodegenDeliveryEmbed(input) {
|
|
|
208
295
|
],
|
|
209
296
|
};
|
|
210
297
|
}
|
|
211
|
-
|
|
298
|
+
const zeroArmBase = s.presenceReporting ? s.watchedTurns : s.previewChangingTurns;
|
|
299
|
+
if (s.deliveries === 0 && zeroArmBase >= s.minTurns) {
|
|
212
300
|
return {
|
|
213
|
-
content: `🕳️ Codegen delivery:
|
|
301
|
+
content: `🕳️ Codegen delivery: builds finished, no open tab confirmed one on screen`,
|
|
214
302
|
allowed_mentions: { parse: [] },
|
|
215
303
|
embeds: [
|
|
216
304
|
{
|
|
217
305
|
title: `Codegen delivery (last ${sinceHours}h)`,
|
|
218
306
|
description: [
|
|
219
|
-
`${s.previewChangingTurns}
|
|
307
|
+
`${s.previewChangingTurns} build${s.previewChangingTurns === 1 ? "" : "s"} changed something the preview shows${s.presenceReporting ? ` (${s.watchedTurns} with a tab open when ${s.watchedTurns === 1 ? "it" : "they"} settled)` : ""}, and ZERO \`codegen_preview_updated\` events arrived.`,
|
|
220
308
|
``,
|
|
221
|
-
`Either no preview updated
|
|
309
|
+
`Either no open tab's preview updated, or the client half stopped emitting. Check a live build by hand before believing the first reading.`,
|
|
222
310
|
``,
|
|
223
311
|
US_NOTE,
|
|
224
312
|
].join("\n"),
|
|
@@ -227,39 +315,80 @@ export function buildCodegenDeliveryEmbed(input) {
|
|
|
227
315
|
],
|
|
228
316
|
};
|
|
229
317
|
}
|
|
230
|
-
const
|
|
231
|
-
|
|
232
|
-
|
|
318
|
+
const plural = (n, one, many) => (n === 1 ? one : many);
|
|
319
|
+
const measured = [
|
|
320
|
+
`**${s.previewChangingTurns}** build${plural(s.previewChangingTurns, "", "s")} finished and changed something the preview shows (of ${s.settledTurns} settled build turn${plural(s.settledTurns, "", "s")}).`,
|
|
321
|
+
`Confirmed on screen by an open tab within ${s.windowSeconds}s: **${s.confirmed}** (${pct(s.confirmed, s.previewChangingTurns)}).`,
|
|
322
|
+
...(s.presenceReporting
|
|
323
|
+
? [
|
|
324
|
+
`Tab open, not confirmed: **${s.watchedUnconfirmed}** of ${s.watchedTurns} build${plural(s.watchedTurns, "", "s")} someone was watching (${pct(s.watchedUnconfirmed, s.watchedTurns)})${s.watchedUnconfirmedHidden === 0 ? "" : ` — ${s.watchedUnconfirmedHidden} of them in a background tab`}.`,
|
|
325
|
+
`Left before it finished: **${s.leftTurns}** — no tab was open on the app when ${plural(s.leftTurns, "it", "they")} settled, so there was no screen to reach yet. Reported, never alarmed.`,
|
|
326
|
+
...(s.preSignalTurns === 0
|
|
327
|
+
? []
|
|
328
|
+
: [
|
|
329
|
+
`Not confirmed, settled before the presence signal started reporting: **${s.preSignalTurns}** — counted in the totals only, neither watched nor left.`,
|
|
330
|
+
]),
|
|
331
|
+
]
|
|
332
|
+
: [
|
|
333
|
+
`Not confirmed: **${s.undelivered}**. This includes everyone who closed the tab or moved on before their build finished: the confirmation can only come from a tab that is still open, so this is not a count of broken deliveries.`,
|
|
334
|
+
]),
|
|
233
335
|
...(s.pendingTurns === 0
|
|
234
336
|
? []
|
|
235
337
|
: [
|
|
236
|
-
`${s.pendingTurns} more settled too recently to judge — their
|
|
338
|
+
`${s.pendingTurns} more settled too recently to judge — their ${s.windowSeconds}s window is still open, so they wait for the next run.`,
|
|
237
339
|
]),
|
|
238
340
|
...(s.unlabeledTurns === 0
|
|
239
341
|
? []
|
|
240
342
|
: [
|
|
241
|
-
`${s.unlabeledTurns} row${s.unlabeledTurns
|
|
343
|
+
`${s.unlabeledTurns} row${plural(s.unlabeledTurns, "", "s")} carried no \`turn_lane\` and ${plural(s.unlabeledTurns, "is", "are")} excluded: written before #5313 shipped, while the agent lane was already live, so whether ${plural(s.unlabeledTurns, "it was", "they were")} a build or an agent conversation cannot be recovered.`,
|
|
242
344
|
]),
|
|
243
345
|
...(s.instantBuildTurns === 0
|
|
244
346
|
? []
|
|
245
347
|
: [
|
|
246
|
-
`${s.instantBuildTurns} instant-build turn${s.instantBuildTurns
|
|
348
|
+
`${s.instantBuildTurns} instant-build turn${plural(s.instantBuildTurns, "", "s")} excluded: an instant build paints outside this acknowledgement seam, so its finishing edit is counted as the message's first build instead.`,
|
|
247
349
|
]),
|
|
350
|
+
`Alarm sample floor: ${s.minTurns} watched builds.`,
|
|
248
351
|
].join("\n");
|
|
352
|
+
const segment = (label, turns, undelivered, left, preSignal) => s.presenceReporting
|
|
353
|
+
? ` ${label} — ${turns - undelivered} confirmed, ${undelivered - left - preSignal} tab open not confirmed, ${left} left before it finished${preSignal === 0 ? "" : `, ${preSignal} before the presence signal`} (of ${turns})`
|
|
354
|
+
: ` ${label} — ${turns - undelivered} of ${turns} confirmed on screen (${pct(turns - undelivered, turns)})`;
|
|
249
355
|
const split = [
|
|
250
|
-
|
|
251
|
-
|
|
252
|
-
|
|
356
|
+
segment("entry-file builds", s.entryTurns, s.entryUndelivered, s.entryLeft, s.entryPreSignal),
|
|
357
|
+
segment("companion-only builds", s.companionOnlyTurns, s.companionOnlyUndelivered, s.companionOnlyLeft, s.companionOnlyPreSignal),
|
|
358
|
+
segment("first builds", s.firstBuildTurns, s.firstBuildUndelivered, s.firstBuildLeft, s.firstBuildPreSignal),
|
|
253
359
|
].join("\n");
|
|
254
360
|
const apps = s.worstApps
|
|
255
361
|
.slice(0, TOP_N)
|
|
256
|
-
.map((a) => ` ${vibeUrl(a.ownerHandle, a.appSlug)} — ${a.undelivered} of ${a.turns}`)
|
|
362
|
+
.map((a) => ` ${vibeUrl(a.ownerHandle, a.appSlug)} — ${s.presenceReporting ? a.watchedUnconfirmed : a.undelivered} of ${a.turns}`)
|
|
257
363
|
.join("\n");
|
|
258
|
-
const
|
|
364
|
+
const appsHeading = s.presenceReporting
|
|
365
|
+
? `**Apps where a watched build was not confirmed**`
|
|
366
|
+
: `**Apps with the most unconfirmed builds** (includes people who left)`;
|
|
367
|
+
const tripped = s.tripped.length > 0;
|
|
368
|
+
const lead = (() => {
|
|
369
|
+
switch (true) {
|
|
370
|
+
case tripped:
|
|
371
|
+
return s.tripped.map((t) => `⚠️ ${t}`).join("\n");
|
|
372
|
+
case s.presenceReporting === false:
|
|
373
|
+
return `A report, not an alarm: the presence signal (\`codegen_turn_settle_observed\`) is not reporting yet, so a build nobody was watching cannot be told apart from one that did not paint.`;
|
|
374
|
+
case s.watchedTurns < s.minTurns:
|
|
375
|
+
return `${s.watchedTurns} watched build${plural(s.watchedTurns, "", "s")} is below the ${s.minTurns}-build sample floor, so this is a report, not an alarm.`;
|
|
376
|
+
default:
|
|
377
|
+
return `Builds people were watching reached their screen inside the alarm threshold.`;
|
|
378
|
+
}
|
|
379
|
+
})();
|
|
380
|
+
const content = (() => {
|
|
381
|
+
switch (true) {
|
|
382
|
+
case tripped:
|
|
383
|
+
return `⚠️ Codegen delivery: builds people were watching did not confirm reaching their screen`;
|
|
384
|
+
case s.presenceReporting:
|
|
385
|
+
return `${s.watchedTurns >= s.minTurns ? "✅" : "📋"} Codegen delivery (last ${sinceHours}h): ${s.watchedTurns - s.watchedUnconfirmed} of ${s.watchedTurns} watched build${plural(s.watchedTurns, "", "s")} confirmed on screen`;
|
|
386
|
+
default:
|
|
387
|
+
return `📋 Codegen delivery (last ${sinceHours}h): ${s.confirmed} of ${s.previewChangingTurns} finished build${plural(s.previewChangingTurns, "", "s")} confirmed on screen by an open tab`;
|
|
388
|
+
}
|
|
389
|
+
})();
|
|
259
390
|
return {
|
|
260
|
-
content
|
|
261
|
-
? `⚠️ Codegen delivery: turns are settling without reaching the screen`
|
|
262
|
-
: `✅ Codegen delivery looks normal (last ${sinceHours}h)`,
|
|
391
|
+
content,
|
|
263
392
|
allowed_mentions: { parse: [] },
|
|
264
393
|
embeds: [
|
|
265
394
|
{
|
|
@@ -267,15 +396,15 @@ export function buildCodegenDeliveryEmbed(input) {
|
|
|
267
396
|
description: [
|
|
268
397
|
lead,
|
|
269
398
|
``,
|
|
270
|
-
|
|
399
|
+
measured,
|
|
271
400
|
``,
|
|
272
401
|
`**By reach** (the #5249 discriminant)`,
|
|
273
402
|
split,
|
|
274
|
-
...(apps === "" ? [] : [``,
|
|
403
|
+
...(apps === "" ? [] : [``, appsHeading, apps]),
|
|
275
404
|
``,
|
|
276
405
|
US_NOTE,
|
|
277
406
|
].join("\n"),
|
|
278
|
-
color:
|
|
407
|
+
color: tripped ? COLOR_TRIPPED : COLOR_QUIET,
|
|
279
408
|
},
|
|
280
409
|
],
|
|
281
410
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"codegen-delivery-alert-util.js","sourceRoot":"","sources":["../../jsr/usage-report/codegen-delivery-alert-util.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"codegen-delivery-alert-util.js","sourceRoot":"","sources":["../../jsr/usage-report/codegen-delivery-alert-util.ts"],"names":[],"mappings":"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"}
|
|
@@ -70,6 +70,12 @@ export async function run() {
|
|
|
70
70
|
order by timestamp desc limit ${ROW_CAP}`);
|
|
71
71
|
if (deliveredRes.isErr())
|
|
72
72
|
return Result.Err(deliveredRes);
|
|
73
|
+
const presenceRes = await hogql(host, projectId, apiKey, `select timestamp, distinct_id, properties.visible, properties.reach, properties.owner_handle, properties.app_slug
|
|
74
|
+
from events
|
|
75
|
+
where event = 'codegen_turn_settle_observed' and timestamp >= now() - interval ${sinceHours} hour
|
|
76
|
+
order by timestamp desc limit ${ROW_CAP}`);
|
|
77
|
+
if (presenceRes.isErr())
|
|
78
|
+
return Result.Err(presenceRes);
|
|
73
79
|
const settled = (settledRes.Ok().results ?? []).map((r) => ({
|
|
74
80
|
ts: asMillis(r[0]),
|
|
75
81
|
distinctId: asString(r[1]),
|
|
@@ -87,10 +93,18 @@ export async function run() {
|
|
|
87
93
|
distinctId: asString(r[1]),
|
|
88
94
|
via: asString(r[2]),
|
|
89
95
|
}));
|
|
90
|
-
const
|
|
91
|
-
|
|
96
|
+
const presence = (presenceRes.Ok().results ?? []).map((r) => ({
|
|
97
|
+
ts: asMillis(r[0]),
|
|
98
|
+
distinctId: asString(r[1]),
|
|
99
|
+
visible: asBool(r[2]),
|
|
100
|
+
reach: asString(r[3]),
|
|
101
|
+
ownerHandle: asString(r[4]),
|
|
102
|
+
appSlug: asString(r[5]),
|
|
103
|
+
}));
|
|
104
|
+
const capped = settled.length === ROW_CAP || deliveries.length === ROW_CAP || presence.length === ROW_CAP;
|
|
105
|
+
const summary = summarizeCodegenDelivery({ settled, deliveries, presence, thresholds, nowMs: Date.now() });
|
|
92
106
|
const body = buildCodegenDeliveryEmbed({ summary, sinceHours, capped });
|
|
93
|
-
console.log(`[codegen-delivery-alert] window=${sinceHours}h settled=${summary.settledTurns} previewChanging=${summary.previewChangingTurns} pending=${summary.pendingTurns} deliveries=${summary.deliveries} undelivered=${summary.undelivered} signals=${summary.tripped.length} capped=${capped} posted=${!dryRun}`);
|
|
107
|
+
console.log(`[codegen-delivery-alert] window=${sinceHours}h settled=${summary.settledTurns} previewChanging=${summary.previewChangingTurns} pending=${summary.pendingTurns} deliveries=${summary.deliveries} undelivered=${summary.undelivered} presence=${summary.presenceEvents} watched=${summary.watchedTurns} watchedUnconfirmed=${summary.watchedUnconfirmed} left=${summary.leftTurns} minTurns=${summary.minTurns} signals=${summary.tripped.length} capped=${capped} posted=${!dryRun}`);
|
|
94
108
|
if (capped) {
|
|
95
109
|
console.log(`[codegen-delivery-alert] read hit its ${ROW_CAP}-row cap — no share reported this run; narrow the window or raise the cap.`);
|
|
96
110
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"codegen-delivery-alert.js","sourceRoot":"","sources":["../../jsr/usage-report/codegen-delivery-alert.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"codegen-delivery-alert.js","sourceRoot":"","sources":["../../jsr/usage-report/codegen-delivery-alert.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { Result } from "@adviser/cement";
|
|
2
2
|
export function validatePromoCode(code) {
|
|
3
|
-
if (/^[A-Z0-9]{
|
|
4
|
-
return Result.Err(`--code must be
|
|
3
|
+
if (/^[A-Z0-9]{7,32}$/.test(code) === false) {
|
|
4
|
+
return Result.Err(`--code must be 7–32 UPPERCASE alphanumerics, no dashes (Autumn rejects any other character at catalog.update) — a prefix plus 4+ random chars, e.g. HACKPDX7Q4M. Got ${JSON.stringify(code)}`);
|
|
5
5
|
}
|
|
6
6
|
return Result.Ok(code);
|
|
7
7
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"create-promo-code-util.js","sourceRoot":"","sources":["../../jsr/usage-report/create-promo-code-util.ts"],"names":[],"mappings":"AAUA,OAAO,EAAE,MAAM,EAAE,MAAM,iBAAiB,CAAC;AAMzC,MAAM,UAAU,iBAAiB,CAAC,IAAY;
|
|
1
|
+
{"version":3,"file":"create-promo-code-util.js","sourceRoot":"","sources":["../../jsr/usage-report/create-promo-code-util.ts"],"names":[],"mappings":"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"}
|