fluncle 0.103.0 → 0.105.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (2) hide show
  1. package/bin/fluncle.mjs +16 -4
  2. package/package.json +1 -1
package/bin/fluncle.mjs CHANGED
@@ -557,7 +557,7 @@ function parseVersion(version) {
557
557
  var currentVersion;
558
558
  var init_version = __esm(() => {
559
559
  init_output();
560
- currentVersion = "0.103.0".trim() ? "0.103.0".trim() : "0.1.0";
560
+ currentVersion = "0.105.0".trim() ? "0.105.0".trim() : "0.1.0";
561
561
  });
562
562
 
563
563
  // src/update-notifier.ts
@@ -974,6 +974,7 @@ function mapTrack(track) {
974
974
  postedToTelegram: track.postedToTelegram,
975
975
  previewUrl: track.previewUrl,
976
976
  releaseDate: track.releaseDate,
977
+ sourceAudioKey: track.sourceAudioKey,
977
978
  spotifyUrl: track.spotifyUrl,
978
979
  title: track.title,
979
980
  trackId: track.trackId,
@@ -1685,6 +1686,7 @@ function mapTrack2(track) {
1685
1686
  postedToTelegram: track.postedToTelegram,
1686
1687
  previewUrl: track.previewUrl,
1687
1688
  releaseDate: track.releaseDate,
1689
+ sourceAudioKey: track.sourceAudioKey,
1688
1690
  spotifyUrl: track.spotifyUrl,
1689
1691
  title: track.title,
1690
1692
  trackId: track.trackId,
@@ -2205,7 +2207,7 @@ function parseVersion2(version) {
2205
2207
  var currentVersion2, latestReleaseUrl = "https://api.github.com/repos/mauricekleine/fluncle/releases/latest";
2206
2208
  var init_version2 = __esm(() => {
2207
2209
  init_output();
2208
- currentVersion2 = "0.103.0".trim() ? "0.103.0".trim() : "0.1.0";
2210
+ currentVersion2 = "0.105.0".trim() ? "0.105.0".trim() : "0.1.0";
2209
2211
  });
2210
2212
 
2211
2213
  // ../../packages/registry/src/index.ts
@@ -2795,7 +2797,7 @@ var init_src = __esm(() => {
2795
2797
  ],
2796
2798
  kind: "cron",
2797
2799
  name: "cron.embed",
2798
- operatorNotes: "every 5m. On-box MuQ (torch, ~16s/track), zero LLM tokens. Writes the vector via the agent-tier update_track. Source: docs/agents/hermes/scripts/embed-sweep.* + embed-track.py. See docs/audio-embedding-rfc.md.",
2800
+ operatorNotes: "every 5m. On-box MuQ (torch, ~16s/track), zero LLM tokens. Writes the vector via the agent-tier update_track. Source: docs/agents/hermes/scripts/embed-sweep.* + embed-track.py. See docs/rfcs/audio-embedding-rfc.md.",
2799
2801
  probeConfig: { cadenceMs: 5 * MINUTE_MS, cronName: "fluncle-embed", kind: "cron" },
2800
2802
  weights: { status: "hidden" }
2801
2803
  },
@@ -2806,7 +2808,7 @@ var init_src = __esm(() => {
2806
2808
  ],
2807
2809
  kind: "cron",
2808
2810
  name: "cron.capture",
2809
- operatorNotes: "every 5m, run by a rave-02 HOST systemd timer (docs/agents/hermes/capture-timer/) — NOT a gateway cron: a proxied yt-dlp fetch has an unbounded tail that would starve the 5-min enrich/context/note sweeps on the shared serial runner. A NON-BLOCKING side-channel (never gates enrich/embed). Runs yt-dlp through a residential proxy on a per-track sticky session, duration-guards the match, stores the full song in the PRIVATE fluncle-source-audio bucket (S3-direct), and writes back via the agent-tier update_track (with per-finding backoff). yt-dlp + ffprobe are a box deploy prereq. Newest-first so a fresh add jumps the backfill. Source: docs/agents/hermes/scripts/capture-sweep.*. See docs/full-audio-rfc.md § Unit 1.",
2811
+ operatorNotes: "every 5m, run by a rave-02 HOST systemd timer (docs/agents/hermes/capture-timer/) — NOT a gateway cron: a proxied yt-dlp fetch has an unbounded tail that would starve the 5-min enrich/context/note sweeps on the shared serial runner. A NON-BLOCKING side-channel (never gates enrich/embed). Runs yt-dlp through a residential proxy on a per-track sticky session, duration-guards the match, stores the full song in the PRIVATE fluncle-source-audio bucket (S3-direct), and writes back via the agent-tier update_track (with per-finding backoff). yt-dlp + ffprobe are a box deploy prereq. Newest-first so a fresh add jumps the backfill. Source: docs/agents/hermes/scripts/capture-sweep.*. See docs/rfcs/full-audio-rfc.md § Unit 1.",
2810
2812
  probeConfig: { cadenceMs: 5 * MINUTE_MS, cronName: "fluncle-capture", kind: "cron" },
2811
2813
  weights: { status: "hidden" }
2812
2814
  },
@@ -2884,6 +2886,16 @@ var init_src = __esm(() => {
2884
2886
  probeConfig: { cadenceMs: 10 * MINUTE_MS, cronName: "fluncle-social-capture", kind: "cron" },
2885
2887
  weights: { status: "hidden" }
2886
2888
  },
2889
+ {
2890
+ exposedContent: [
2891
+ "cut each pending operator-framed 9:16 clip out of its set video → ship to R2 (--no-agent, ffmpeg)"
2892
+ ],
2893
+ kind: "cron",
2894
+ name: "cron.studio-clip",
2895
+ operatorNotes: "every 15m. Pure-trigger, zero LLM tokens: a deterministic ffmpeg cut driven by the fluncle CLI (`admin clips list` → `admin clips cut`), agent-scoped (list_clips + the agent-tier presign_clip_upload / finalize_clip_cut). Cuts the operator-framed 9:16 clips from the /admin/studio editor (keyed by Log ID) out of the set video → ships `<clipId>/footage.mp4` to R2 for the /admin/clips library + the clip drip-feed. The box runs the standalone bun BINARY (the npm thin client can't spawn ffmpeg). Source: docs/agents/hermes/scripts/clip-sweep.sh. Probed on /status as cron.studio-clip.",
2896
+ probeConfig: { cadenceMs: 15 * MINUTE_MS, cronName: "fluncle-studio-clip", kind: "cron" },
2897
+ weights: { status: "hidden" }
2898
+ },
2887
2899
  {
2888
2900
  command: "fluncle admin clips drip-pause",
2889
2901
  exposedContent: [
package/package.json CHANGED
@@ -31,5 +31,5 @@
31
31
  "url": "git+https://github.com/mauricekleine/fluncle.git"
32
32
  },
33
33
  "type": "module",
34
- "version": "0.103.0"
34
+ "version": "0.105.0"
35
35
  }