openvibers/openvibe.media Commits

Drop unused generateSlug re-export from pastes routes; mark F1/F2…

OP OpenVibers committed 4 Oct 2026 · 25ab0c0cdb · 2 files, +3 −4

Asked: T4 READY NOW (groundwork /home/workstation/openvibe/agents/ds/prep/T4.md lines 212-215) — OpenVibe.Media: three docs fixes and one dead line, no behaviour change. ONE pull request from current origin/main (git fetch first; the local checkout is stale, so read files with `git show origin/main:<path>…
Harness job media-t4-ready-now-groundwork-home-works-150247 (plan T4).

Changes

ddiff --git a/docs/media-fabric.md b/docs/media-fabric.md
iindex 6cc506c..489ad73 100644
---- a/docs/media-fabric.md
++++ b/docs/media-fabric.md
@@@ -256,12 +256,12 @@ metric. Budgets per class and provider with a forecast; `media.provider.cost_thr
## 10. Build order
--- **F1 foundation (now):** provider registry + capability probes; `media.cost_tiers` + per-class budgets in a revisioned
++- **F1 foundation (shipped):** provider registry + capability probes; `media.cost_tiers` + per-class budgets in a revisioned
`media.storage_policy` (retiring `media.storage_tier`/`media.object_tier`); the read router (EWMA latency, error
circuit breaker, continuous health probe, fastest healthy copy) in `server/placement/`; presigned-URL LRU; two-phase
moves with a cleanup job; per-class hysteresis bands; `media_storage_alerts_total`, provider latency histograms; the
corrected price table; the nginx shield (slice + cache lock) on the Media host.
--- **F2 one placement engine:** every class through one sweep, value-per-dollar under budgets, dry-run + simulator,
++- **F2 one placement engine (shipped; close-out: Media PR #24):** every class through one sweep, value-per-dollar under budgets, dry-run + simulator,
decision log with class and reason, the events above, Valkey rollups of demand (F2.4, shipped) and the sweep's
eligibility on them with per-class hysteresis and a PostgreSQL fallback (F2.5, shipped), the provider-class gate
and per-class monthly R2 storage ceilings on its moves (F2.6, shipped), the move cleanup job and its alert after
ddiff --git a/server/pastes/routes.js b/server/pastes/routes.js
iindex 10e7d35..3221d66 100644
---- a/server/pastes/routes.js
++++ b/server/pastes/routes.js
@@@ -33,7 +33,7 @@ router.use((req, res, next) => {
});
// Screenshot directory, shared with the avatar ingest (server/pastes/storage.js).
--const { SCREENSHOTS_DIR, generateSlug } = require('./storage');
++const { SCREENSHOTS_DIR } = require('./storage');
// ── Helpers ─────────────────────────────────────────────────
@@@ -255,6 +255,5 @@ router.get('/:slug/comments', tenantAuth({ allowUser: true }), async (req, res)
});
module.exports = router;
--module.exports.generateSlug = generateSlug;
module.exports.SCREENSHOTS_DIR = SCREENSHOTS_DIR;
module.exports.removePasteScreenshot = removePasteScreenshot;