fluncle 0.239.0 → 0.241.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/bin/fluncle.mjs +24 -6
- package/package.json +1 -1
package/bin/fluncle.mjs
CHANGED
|
@@ -622,7 +622,7 @@ function parseVersion(version) {
|
|
|
622
622
|
var currentVersion;
|
|
623
623
|
var init_version = __esm(() => {
|
|
624
624
|
init_output();
|
|
625
|
-
currentVersion = "0.
|
|
625
|
+
currentVersion = "0.241.0".trim() ? "0.241.0".trim() : "0.1.0";
|
|
626
626
|
});
|
|
627
627
|
|
|
628
628
|
// src/update-notifier.ts
|
|
@@ -2335,7 +2335,7 @@ function parseVersion2(version) {
|
|
|
2335
2335
|
var currentVersion2, latestReleaseUrl = "https://api.github.com/repos/mauricekleine/fluncle/releases/latest";
|
|
2336
2336
|
var init_version2 = __esm(() => {
|
|
2337
2337
|
init_output();
|
|
2338
|
-
currentVersion2 = "0.
|
|
2338
|
+
currentVersion2 = "0.241.0".trim() ? "0.241.0".trim() : "0.1.0";
|
|
2339
2339
|
});
|
|
2340
2340
|
|
|
2341
2341
|
// ../../packages/registry/src/index.ts
|
|
@@ -3967,7 +3967,7 @@ var init_src = __esm(() => {
|
|
|
3967
3967
|
],
|
|
3968
3968
|
kind: "cron",
|
|
3969
3969
|
name: "cron.funnel-snapshot",
|
|
3970
|
-
operatorNotes: "23:45 UTC daily (end of the UTC day the snapshot is keyed on). A bare trigger (the reach/anchor shape): fires the AGENT-tier record_catalogue_snapshot op once — the Worker computes every stage total + queue depth + frontier count through the SAME predicates the sweeps run (lib/server/funnel.ts) and UPSERTS one idempotent row per UTC day (a same-day re-run overwrites, never doubles a bar). Zero LLM tokens; the box's agent token drives it and calls the oRPC HTTP endpoint directly (no new CLI command the pinned box CLI would lack), so no new secret. Source: docs/agents/hermes/scripts/funnel-snapshot-sweep.*. See docs/admin-shell.md.",
|
|
3970
|
+
operatorNotes: "23:45 UTC daily (end of the UTC day the snapshot is keyed on), with a retry slot at 23:57 UTC still inside that day. A bare trigger (the reach/anchor shape): fires the AGENT-tier record_catalogue_snapshot op once — the Worker computes every stage total + queue depth + frontier count through the SAME predicates the sweeps run (lib/server/funnel.ts) and UPSERTS one idempotent row per UTC day (a same-day re-run overwrites, never doubles a bar). A missed day cannot be recomputed later, so the tick is defended three ways: an in-tick retry ladder for a transient Worker fault, the second timer slot for a database-admission yield, and the Worker's catch-up grace window for a box that slept through the slot (it fills a missing previous day and names it as backfilledDays). Zero LLM tokens; the box's agent token drives it and calls the oRPC HTTP endpoint directly (no new CLI command the pinned box CLI would lack), so no new secret. Source: docs/agents/hermes/scripts/funnel-snapshot-sweep.*. See docs/admin-shell.md.",
|
|
3971
3971
|
probeConfig: {
|
|
3972
3972
|
cadenceMs: 24 * 60 * MINUTE_MS,
|
|
3973
3973
|
cronName: "fluncle-funnel-snapshot",
|
|
@@ -11751,7 +11751,9 @@ var init_admin_catalogue = __esm(() => {
|
|
|
11751
11751
|
}),
|
|
11752
11752
|
labelsUndecided: number2(),
|
|
11753
11753
|
seedLabels: array(string2()),
|
|
11754
|
-
storablePending: number2()
|
|
11754
|
+
storablePending: number2(),
|
|
11755
|
+
undecidedLabelsQueued: number2(),
|
|
11756
|
+
unstorablePending: number2()
|
|
11755
11757
|
}).meta({ id: "CrawlStatus" });
|
|
11756
11758
|
crawlCatalogue = oc.route({
|
|
11757
11759
|
inputStructure: "detailed",
|
|
@@ -13118,7 +13120,7 @@ var init_admin_frontier = __esm(() => {
|
|
|
13118
13120
|
});
|
|
13119
13121
|
|
|
13120
13122
|
// ../../packages/contracts/src/orpc/admin-funnel.ts
|
|
13121
|
-
var FunnelStagesSchema, FunnelQueuesSchema, FunnelLiveQueuesSchema, PublicSurfaceCountsSchema, FunnelMetersSchema, CatalogueSnapshotRowSchema, recordCatalogueSnapshot, getFunnel, adminFunnelContract;
|
|
13123
|
+
var FunnelStagesSchema, FunnelQueuesSchema, FunnelLiveQueuesSchema, PublicSurfaceCountsSchema, CaptureBacklogSchema, FunnelMetersSchema, CatalogueSnapshotRowSchema, recordCatalogueSnapshot, getFunnel, adminFunnelContract;
|
|
13122
13124
|
var init_admin_funnel = __esm(() => {
|
|
13123
13125
|
init_dist3();
|
|
13124
13126
|
init_zod();
|
|
@@ -13149,6 +13151,16 @@ var init_admin_funnel = __esm(() => {
|
|
|
13149
13151
|
labels: number2().int(),
|
|
13150
13152
|
tracks: number2().int()
|
|
13151
13153
|
}).meta({ id: "PublicSurfaceCounts" });
|
|
13154
|
+
CaptureBacklogSchema = object({
|
|
13155
|
+
authorized: number2().int(),
|
|
13156
|
+
authorizedAnchored: number2().int(),
|
|
13157
|
+
budgetOpen: boolean2(),
|
|
13158
|
+
tiers: array(object({
|
|
13159
|
+
anchored: number2().int(),
|
|
13160
|
+
tier: number2().int(),
|
|
13161
|
+
unanchored: number2().int()
|
|
13162
|
+
}))
|
|
13163
|
+
}).meta({ id: "CaptureBacklog" });
|
|
13152
13164
|
FunnelMetersSchema = object({
|
|
13153
13165
|
anchorBackoff: number2().int(),
|
|
13154
13166
|
captureBudget: object({
|
|
@@ -13187,7 +13199,11 @@ var init_admin_funnel = __esm(() => {
|
|
|
13187
13199
|
path: "/admin/funnel/snapshot",
|
|
13188
13200
|
summary: "Record today's catalogue-funnel snapshot (idempotent per UTC day)",
|
|
13189
13201
|
tags: ["Admin"]
|
|
13190
|
-
}).input(object({})).output(object({
|
|
13202
|
+
}).input(object({})).output(object({
|
|
13203
|
+
backfilledDays: array(string2()),
|
|
13204
|
+
ok: literal(true),
|
|
13205
|
+
snapshot: CatalogueSnapshotRowSchema
|
|
13206
|
+
}));
|
|
13191
13207
|
getFunnel = oc.route({
|
|
13192
13208
|
method: "GET",
|
|
13193
13209
|
operationId: "getFunnel",
|
|
@@ -13196,6 +13212,7 @@ var init_admin_funnel = __esm(() => {
|
|
|
13196
13212
|
tags: ["Admin"]
|
|
13197
13213
|
}).input(object({ windowDays: string2().optional() })).output(object({
|
|
13198
13214
|
live: object({
|
|
13215
|
+
captureBacklog: CaptureBacklogSchema,
|
|
13199
13216
|
meters: FunnelMetersSchema,
|
|
13200
13217
|
publicSurfaces: PublicSurfaceCountsSchema,
|
|
13201
13218
|
queues: FunnelLiveQueuesSchema,
|
|
@@ -22963,6 +22980,7 @@ async function runCrawlStatus(options, crawlStatusCommand) {
|
|
|
22963
22980
|
console.log(`Catalogue: ${result.catalogueTracks} uncertified track(s); ${result.anchorsPending} awaiting a Spotify anchor.`);
|
|
22964
22981
|
console.log(`Frontier: ${frontier.pending} pending, ${frontier.done} done, ${frontier.failed} failed, ${frontier.skipped} skipped (${frontierByKind.label} label, ${frontierByKind.artist} artist, ${frontierByKind.release} release).`);
|
|
22965
22982
|
console.log(`Ready to write: ${result.storablePending} storable release node(s) claimable now.`);
|
|
22983
|
+
console.log(`Held by the storage gate: ${result.unstorablePending} claimable release node(s) \u2014 ${result.undecidedLabelsQueued} undecided label(s) hold queued work.`);
|
|
22966
22984
|
console.log(`Seeds (${result.seedLabels.length}): ${result.seedLabels.join(", ") || "none enabled"}.`);
|
|
22967
22985
|
console.log(`Awaiting your ruling: ${result.labelsUndecided} label(s).`);
|
|
22968
22986
|
}
|
package/package.json
CHANGED