@de-otio/trellis 0.11.0 → 0.12.1
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/dist/env.d.ts +168 -0
- package/dist/env.d.ts.map +1 -1
- package/dist/env.js +155 -0
- package/dist/env.js.map +1 -1
- package/dist/lambda/media-completion-worker.d.ts +175 -0
- package/dist/lambda/media-completion-worker.d.ts.map +1 -0
- package/dist/lambda/media-completion-worker.js +373 -0
- package/dist/lambda/media-completion-worker.js.map +1 -0
- package/dist/lambda/media-processing-worker.d.ts +172 -1
- package/dist/lambda/media-processing-worker.d.ts.map +1 -1
- package/dist/lambda/media-processing-worker.js +343 -49
- package/dist/lambda/media-processing-worker.js.map +1 -1
- package/dist/lib/exif-stripper.d.ts +37 -22
- package/dist/lib/exif-stripper.d.ts.map +1 -1
- package/dist/lib/exif-stripper.js +101 -41
- package/dist/lib/exif-stripper.js.map +1 -1
- package/dist/lib/media/cas-keys.d.ts +63 -0
- package/dist/lib/media/cas-keys.d.ts.map +1 -0
- package/dist/lib/media/cas-keys.js +102 -0
- package/dist/lib/media/cas-keys.js.map +1 -0
- package/dist/lib/media/classify-worker-error.d.ts +48 -0
- package/dist/lib/media/classify-worker-error.d.ts.map +1 -0
- package/dist/lib/media/classify-worker-error.js +319 -0
- package/dist/lib/media/classify-worker-error.js.map +1 -0
- package/dist/lib/media/dedupe-key.d.ts +29 -0
- package/dist/lib/media/dedupe-key.d.ts.map +1 -0
- package/dist/lib/media/dedupe-key.js +49 -0
- package/dist/lib/media/dedupe-key.js.map +1 -0
- package/dist/lib/media/duration-cap.d.ts +30 -0
- package/dist/lib/media/duration-cap.d.ts.map +1 -0
- package/dist/lib/media/duration-cap.js +37 -0
- package/dist/lib/media/duration-cap.js.map +1 -0
- package/dist/lib/media/ffmpeg-args.d.ts +83 -0
- package/dist/lib/media/ffmpeg-args.d.ts.map +1 -0
- package/dist/lib/media/ffmpeg-args.js +119 -0
- package/dist/lib/media/ffmpeg-args.js.map +1 -0
- package/dist/lib/media/media-ports.d.ts +126 -0
- package/dist/lib/media/media-ports.d.ts.map +1 -0
- package/dist/lib/media/media-ports.js +129 -0
- package/dist/lib/media/media-ports.js.map +1 -0
- package/dist/lib/media/media-upsert.d.ts +55 -0
- package/dist/lib/media/media-upsert.d.ts.map +1 -0
- package/dist/lib/media/media-upsert.js +38 -0
- package/dist/lib/media/media-upsert.js.map +1 -0
- package/dist/lib/media/moderation-provider.d.ts +111 -0
- package/dist/lib/media/moderation-provider.d.ts.map +1 -0
- package/dist/lib/media/moderation-provider.js +130 -0
- package/dist/lib/media/moderation-provider.js.map +1 -0
- package/dist/lib/media/moderation-resolved-payload.d.ts +48 -0
- package/dist/lib/media/moderation-resolved-payload.d.ts.map +1 -0
- package/dist/lib/media/moderation-resolved-payload.js +37 -0
- package/dist/lib/media/moderation-resolved-payload.js.map +1 -0
- package/dist/lib/media/moderation-status.d.ts +98 -0
- package/dist/lib/media/moderation-status.d.ts.map +1 -0
- package/dist/lib/media/moderation-status.js +122 -0
- package/dist/lib/media/moderation-status.js.map +1 -0
- package/dist/lib/media/processing-types.d.ts +45 -0
- package/dist/lib/media/processing-types.d.ts.map +1 -0
- package/dist/lib/media/processing-types.js +9 -0
- package/dist/lib/media/processing-types.js.map +1 -0
- package/dist/lib/media/promote-decision.d.ts +64 -0
- package/dist/lib/media/promote-decision.d.ts.map +1 -0
- package/dist/lib/media/promote-decision.js +76 -0
- package/dist/lib/media/promote-decision.js.map +1 -0
- package/dist/lib/media/quota-check.d.ts +22 -0
- package/dist/lib/media/quota-check.d.ts.map +1 -0
- package/dist/lib/media/quota-check.js +42 -0
- package/dist/lib/media/quota-check.js.map +1 -0
- package/dist/lib/media/quota-types.d.ts +15 -0
- package/dist/lib/media/quota-types.d.ts.map +1 -0
- package/dist/lib/media/quota-types.js +9 -0
- package/dist/lib/media/quota-types.js.map +1 -0
- package/dist/lib/media/route-upload.d.ts +58 -0
- package/dist/lib/media/route-upload.d.ts.map +1 -0
- package/dist/lib/media/route-upload.js +80 -0
- package/dist/lib/media/route-upload.js.map +1 -0
- package/dist/lib/media/serve-gate.d.ts +51 -0
- package/dist/lib/media/serve-gate.d.ts.map +1 -0
- package/dist/lib/media/serve-gate.js +68 -0
- package/dist/lib/media/serve-gate.js.map +1 -0
- package/dist/lib/media/tenant-resolution.d.ts +42 -0
- package/dist/lib/media/tenant-resolution.d.ts.map +1 -0
- package/dist/lib/media/tenant-resolution.js +45 -0
- package/dist/lib/media/tenant-resolution.js.map +1 -0
- package/dist/lib/media/text-moderation.d.ts +28 -0
- package/dist/lib/media/text-moderation.d.ts.map +1 -0
- package/dist/lib/media/text-moderation.js +62 -0
- package/dist/lib/media/text-moderation.js.map +1 -0
- package/dist/lib/media/track-verdict.d.ts +45 -0
- package/dist/lib/media/track-verdict.d.ts.map +1 -0
- package/dist/lib/media/track-verdict.js +52 -0
- package/dist/lib/media/track-verdict.js.map +1 -0
- package/dist/lib/media/transcript-moderation.d.ts +47 -0
- package/dist/lib/media/transcript-moderation.d.ts.map +1 -0
- package/dist/lib/media/transcript-moderation.js +70 -0
- package/dist/lib/media/transcript-moderation.js.map +1 -0
- package/dist/lib/media-handler.d.ts.map +1 -1
- package/dist/lib/media-handler.js +15 -9
- package/dist/lib/media-handler.js.map +1 -1
- package/dist/lib/post-handler.d.ts.map +1 -1
- package/dist/lib/post-handler.js +4 -1
- package/dist/lib/post-handler.js.map +1 -1
- package/dist/lib/route-helpers.d.ts.map +1 -1
- package/dist/lib/route-helpers.js +9 -1
- package/dist/lib/route-helpers.js.map +1 -1
- package/dist/lib/routes/media.d.ts +21 -0
- package/dist/lib/routes/media.d.ts.map +1 -1
- package/dist/lib/routes/media.js +584 -483
- package/dist/lib/routes/media.js.map +1 -1
- package/dist/lib/services/image-normalizer.d.ts +64 -6
- package/dist/lib/services/image-normalizer.d.ts.map +1 -1
- package/dist/lib/services/image-normalizer.js +88 -6
- package/dist/lib/services/image-normalizer.js.map +1 -1
- package/dist/lib/services/media-upload-service.d.ts +2 -2
- package/dist/lib/services/media-upload-service.d.ts.map +1 -1
- package/dist/lib/services/media-upload-service.js +22 -21
- package/dist/lib/services/media-upload-service.js.map +1 -1
- package/dist/lib/tenant-scope.d.ts.map +1 -1
- package/dist/lib/tenant-scope.js +16 -1
- package/dist/lib/tenant-scope.js.map +1 -1
- package/package.json +2 -1
- package/prisma/migrations/20260625000000_media_tenant_scope_and_moderation_status/migration.sql +49 -0
- package/prisma/migrations/20260625000001_p0b_moderation_jobs/migration.sql +73 -0
- package/prisma/schema.prisma +95 -17
- package/src/lambda/media-completion-worker.ts +567 -0
- package/src/lambda/media-processing-worker.ts +508 -59
|
@@ -0,0 +1,62 @@
|
|
|
1
|
+
// CONTRACT: stable — coordinate changes. Shared P0b text-moderation seam.
|
|
2
|
+
//
|
|
3
|
+
// A-TEXTMOD decision: NO clean injectable text-moderation seam exists today.
|
|
4
|
+
//
|
|
5
|
+
// The repo already has apps/api/src/lib/moderation-handler.ts
|
|
6
|
+
// (`ModerationHandler.moderateText(text, env): Promise<ModerationResult>`), but
|
|
7
|
+
// it is NOT usable as the media-pipeline seam, for three reasons:
|
|
8
|
+
//
|
|
9
|
+
// 1. It is a concrete class that performs network I/O directly (fetches the
|
|
10
|
+
// hosted moderation API), not an injectable interface — it cannot live in
|
|
11
|
+
// the functional core, and it cannot be swapped for a Mock in property
|
|
12
|
+
// tests without monkey-patching the network.
|
|
13
|
+
// 2. Its result shape (`ModerationResult { approved, score, details, ... }`)
|
|
14
|
+
// is a different, real-category-named vocabulary — it is NOT the opaque
|
|
15
|
+
// `ModerationVerdict` the media seam standardizes on.
|
|
16
|
+
// 3. CRITICALLY, it FAILS OPEN: on a moderation error it returns
|
|
17
|
+
// `{ approved: true }` (and likewise `{ approved: true, budgetExceeded }`
|
|
18
|
+
// when the budget is spent). That is the exact opposite of the media
|
|
19
|
+
// pipeline's fail-closed invariant — a faulted text moderation must
|
|
20
|
+
// degrade to `review`, never to a decision that can serve bytes.
|
|
21
|
+
//
|
|
22
|
+
// Therefore B0 defines a thin, fail-closed `TextModerationProvider` seam that
|
|
23
|
+
// returns the canonical `ModerationVerdict` (./moderation-provider.ts). The
|
|
24
|
+
// imperative shell wires the concrete adapter; that adapter MUST map the legacy
|
|
25
|
+
// `ModerationResult` into a verdict WITHOUT inheriting the fail-open behavior:
|
|
26
|
+
//
|
|
27
|
+
// approved === true -> decision "approved"
|
|
28
|
+
// approved === false -> decision "quarantine" (a positive flag)
|
|
29
|
+
// error / budgetExceeded / timeout -> decision "review" (FAIL CLOSED)
|
|
30
|
+
//
|
|
31
|
+
// (The shell, not this file, owns that adapter — keeping core SDK-free.)
|
|
32
|
+
//
|
|
33
|
+
// Pure functional core: no I/O, no clock, no random, no cloud SDK. The Mock is
|
|
34
|
+
// in-memory and deterministic. Ships in the PUBLIC npm tarball: NO thresholds,
|
|
35
|
+
// secrets, or real-category vocabulary here — labels carry opaque tokens.
|
|
36
|
+
const MOCK_PROVIDER_NAME = "mock-text";
|
|
37
|
+
const MOCK_DEFAULT_VERDICT = {
|
|
38
|
+
decision: "review",
|
|
39
|
+
labels: [],
|
|
40
|
+
provider: MOCK_PROVIDER_NAME,
|
|
41
|
+
};
|
|
42
|
+
/**
|
|
43
|
+
* Test seam: returns a canned verdict (default fail-closed `review`). Labels, if
|
|
44
|
+
* programmed, must use ONLY opaque category tokens — never real-category strings.
|
|
45
|
+
*/
|
|
46
|
+
export class MockTextModerationProvider {
|
|
47
|
+
verdict;
|
|
48
|
+
/** Records of each input, for assertions. */
|
|
49
|
+
calls = [];
|
|
50
|
+
constructor(canned = MOCK_DEFAULT_VERDICT) {
|
|
51
|
+
this.verdict = canned;
|
|
52
|
+
}
|
|
53
|
+
/** Program the verdict returned by subsequent `moderateText` calls. */
|
|
54
|
+
setVerdict(verdict) {
|
|
55
|
+
this.verdict = verdict;
|
|
56
|
+
}
|
|
57
|
+
async moderateText(text) {
|
|
58
|
+
this.calls.push(text);
|
|
59
|
+
return this.verdict;
|
|
60
|
+
}
|
|
61
|
+
}
|
|
62
|
+
//# sourceMappingURL=text-moderation.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"text-moderation.js","sourceRoot":"","sources":["../../../src/lib/media/text-moderation.ts"],"names":[],"mappings":"AAAA,0EAA0E;AAC1E,EAAE;AACF,6EAA6E;AAC7E,EAAE;AACF,8DAA8D;AAC9D,gFAAgF;AAChF,kEAAkE;AAClE,EAAE;AACF,8EAA8E;AAC9E,+EAA+E;AAC/E,4EAA4E;AAC5E,kDAAkD;AAClD,+EAA+E;AAC/E,6EAA6E;AAC7E,2DAA2D;AAC3D,mEAAmE;AACnE,+EAA+E;AAC/E,0EAA0E;AAC1E,yEAAyE;AACzE,sEAAsE;AACtE,EAAE;AACF,8EAA8E;AAC9E,4EAA4E;AAC5E,gFAAgF;AAChF,+EAA+E;AAC/E,EAAE;AACF,8DAA8D;AAC9D,kFAAkF;AAClF,4EAA4E;AAC5E,EAAE;AACF,yEAAyE;AACzE,EAAE;AACF,+EAA+E;AAC/E,+EAA+E;AAC/E,0EAA0E;AAkB1E,MAAM,kBAAkB,GAAG,WAAW,CAAC;AAEvC,MAAM,oBAAoB,GAAsB;IAC9C,QAAQ,EAAE,QAAQ;IAClB,MAAM,EAAE,EAAE;IACV,QAAQ,EAAE,kBAAkB;CAC7B,CAAC;AAEF;;;GAGG;AACH,MAAM,OAAO,0BAA0B;IAC7B,OAAO,CAAoB;IAEnC,6CAA6C;IACpC,KAAK,GAAa,EAAE,CAAC;IAE9B,YAAY,SAA4B,oBAAoB;QAC1D,IAAI,CAAC,OAAO,GAAG,MAAM,CAAC;IACxB,CAAC;IAED,uEAAuE;IACvE,UAAU,CAAC,OAA0B;QACnC,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;IACzB,CAAC;IAED,KAAK,CAAC,YAAY,CAAC,IAAY;QAC7B,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACtB,OAAO,IAAI,CAAC,OAAO,CAAC;IACtB,CAAC;CACF"}
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
import type { ModerationDecision } from "./moderation-status.js";
|
|
2
|
+
/** The two moderation tracks a media object can carry. */
|
|
3
|
+
export type Track = "VISUAL" | "AUDIO";
|
|
4
|
+
/**
|
|
5
|
+
* The outcome of moderating a single track.
|
|
6
|
+
*
|
|
7
|
+
* - `decided` — the track was moderated and produced a 3-value decision.
|
|
8
|
+
* - `errored` — the track was expected but moderation faulted (no usable
|
|
9
|
+
* verdict). Fail-closed: treated as "must not approve".
|
|
10
|
+
* - `absent` — the track does not apply to this object (e.g. no audio track
|
|
11
|
+
* on a silent video, or no visual track on an audio-only object).
|
|
12
|
+
* Absence alone is NOT approval: combining with a present-and-
|
|
13
|
+
* approved track still degrades to "review", because we cannot
|
|
14
|
+
* certify a track we never inspected. The shell decides, per
|
|
15
|
+
* media kind, whether a single-track object should even call
|
|
16
|
+
* this combinator — see the obligations below.
|
|
17
|
+
*/
|
|
18
|
+
export type TrackOutcome = {
|
|
19
|
+
readonly state: "decided";
|
|
20
|
+
readonly decision: ModerationDecision;
|
|
21
|
+
} | {
|
|
22
|
+
readonly state: "errored";
|
|
23
|
+
} | {
|
|
24
|
+
readonly state: "absent";
|
|
25
|
+
};
|
|
26
|
+
/**
|
|
27
|
+
* Combine two per-track outcomes into the object-level {@link ModerationDecision}.
|
|
28
|
+
*
|
|
29
|
+
* Precedence (checked in this order; total):
|
|
30
|
+
* 1. If EITHER track is decided-"quarantine" => "quarantine". A confirmed
|
|
31
|
+
* flag on any track wins over everything: it is strictly more restrictive
|
|
32
|
+
* than "review", and a quarantine that decayed to "review" because the
|
|
33
|
+
* other track was absent/errored would be a safety regression.
|
|
34
|
+
* 2. Else, "approved" IFF BOTH tracks are state "decided" AND BOTH decisions
|
|
35
|
+
* are "approved".
|
|
36
|
+
* 3. Else (any "review", any "errored", any "absent", or any mix) => "review".
|
|
37
|
+
*
|
|
38
|
+
* Consequences (property-tested):
|
|
39
|
+
* - One missing/failed track NEVER yields "approved".
|
|
40
|
+
* - "approved" requires positive evidence on BOTH tracks.
|
|
41
|
+
* - "quarantine" is sticky across an absent/errored sibling track.
|
|
42
|
+
* - The function never returns "approved" from doubt.
|
|
43
|
+
*/
|
|
44
|
+
export declare function combineTrackVerdicts(visual: TrackOutcome, audio: TrackOutcome): ModerationDecision;
|
|
45
|
+
//# sourceMappingURL=track-verdict.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"track-verdict.d.ts","sourceRoot":"","sources":["../../../src/lib/media/track-verdict.ts"],"names":[],"mappings":"AAgBA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,wBAAwB,CAAC;AAEjE,0DAA0D;AAC1D,MAAM,MAAM,KAAK,GAAG,QAAQ,GAAG,OAAO,CAAC;AAEvC;;;;;;;;;;;;;GAaG;AACH,MAAM,MAAM,YAAY,GACpB;IAAE,QAAQ,CAAC,KAAK,EAAE,SAAS,CAAC;IAAC,QAAQ,CAAC,QAAQ,EAAE,kBAAkB,CAAA;CAAE,GACpE;IAAE,QAAQ,CAAC,KAAK,EAAE,SAAS,CAAA;CAAE,GAC7B;IAAE,QAAQ,CAAC,KAAK,EAAE,QAAQ,CAAA;CAAE,CAAC;AAEjC;;;;;;;;;;;;;;;;;GAiBG;AACH,wBAAgB,oBAAoB,CAClC,MAAM,EAAE,YAAY,EACpB,KAAK,EAAE,YAAY,GAClB,kBAAkB,CAapB"}
|
|
@@ -0,0 +1,52 @@
|
|
|
1
|
+
// CONTRACT: stable — coordinate changes. Shared P0b functional-core unit.
|
|
2
|
+
//
|
|
3
|
+
// Combine the per-track moderation outcomes of a single media object into ONE
|
|
4
|
+
// object-level decision. A video has up to two independently-moderated tracks
|
|
5
|
+
// (a VISUAL track via the image/video moderation provider and an AUDIO track
|
|
6
|
+
// via the text-moderation seam over a transcript); an audio-only object has
|
|
7
|
+
// only the AUDIO track; an image has only the VISUAL track.
|
|
8
|
+
//
|
|
9
|
+
// FAIL-CLOSED is the whole point: a missing track, an errored track, or any
|
|
10
|
+
// "review" outcome must never let the object reach "approved". Only the case
|
|
11
|
+
// where BOTH tracks are present, decided, and approved yields "approved".
|
|
12
|
+
//
|
|
13
|
+
// Pure functional core: no I/O, no clock, no random. Total over its inputs.
|
|
14
|
+
// Lives in the PUBLIC npm tarball: NO thresholds, secrets, or real-category
|
|
15
|
+
// vocabulary here.
|
|
16
|
+
/**
|
|
17
|
+
* Combine two per-track outcomes into the object-level {@link ModerationDecision}.
|
|
18
|
+
*
|
|
19
|
+
* Precedence (checked in this order; total):
|
|
20
|
+
* 1. If EITHER track is decided-"quarantine" => "quarantine". A confirmed
|
|
21
|
+
* flag on any track wins over everything: it is strictly more restrictive
|
|
22
|
+
* than "review", and a quarantine that decayed to "review" because the
|
|
23
|
+
* other track was absent/errored would be a safety regression.
|
|
24
|
+
* 2. Else, "approved" IFF BOTH tracks are state "decided" AND BOTH decisions
|
|
25
|
+
* are "approved".
|
|
26
|
+
* 3. Else (any "review", any "errored", any "absent", or any mix) => "review".
|
|
27
|
+
*
|
|
28
|
+
* Consequences (property-tested):
|
|
29
|
+
* - One missing/failed track NEVER yields "approved".
|
|
30
|
+
* - "approved" requires positive evidence on BOTH tracks.
|
|
31
|
+
* - "quarantine" is sticky across an absent/errored sibling track.
|
|
32
|
+
* - The function never returns "approved" from doubt.
|
|
33
|
+
*/
|
|
34
|
+
export function combineTrackVerdicts(visual, audio) {
|
|
35
|
+
// 1. Quarantine on either decided track dominates.
|
|
36
|
+
if (isDecidedQuarantine(visual) || isDecidedQuarantine(audio)) {
|
|
37
|
+
return "quarantine";
|
|
38
|
+
}
|
|
39
|
+
// 2. Approve only with positive evidence on BOTH tracks.
|
|
40
|
+
if (isDecidedApproved(visual) && isDecidedApproved(audio)) {
|
|
41
|
+
return "approved";
|
|
42
|
+
}
|
|
43
|
+
// 3. Everything else fails closed to human review.
|
|
44
|
+
return "review";
|
|
45
|
+
}
|
|
46
|
+
function isDecidedQuarantine(o) {
|
|
47
|
+
return o.state === "decided" && o.decision === "quarantine";
|
|
48
|
+
}
|
|
49
|
+
function isDecidedApproved(o) {
|
|
50
|
+
return o.state === "decided" && o.decision === "approved";
|
|
51
|
+
}
|
|
52
|
+
//# sourceMappingURL=track-verdict.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"track-verdict.js","sourceRoot":"","sources":["../../../src/lib/media/track-verdict.ts"],"names":[],"mappings":"AAAA,0EAA0E;AAC1E,EAAE;AACF,8EAA8E;AAC9E,8EAA8E;AAC9E,6EAA6E;AAC7E,4EAA4E;AAC5E,4DAA4D;AAC5D,EAAE;AACF,4EAA4E;AAC5E,6EAA6E;AAC7E,0EAA0E;AAC1E,EAAE;AACF,4EAA4E;AAC5E,4EAA4E;AAC5E,mBAAmB;AA0BnB;;;;;;;;;;;;;;;;;GAiBG;AACH,MAAM,UAAU,oBAAoB,CAClC,MAAoB,EACpB,KAAmB;IAEnB,mDAAmD;IACnD,IAAI,mBAAmB,CAAC,MAAM,CAAC,IAAI,mBAAmB,CAAC,KAAK,CAAC,EAAE,CAAC;QAC9D,OAAO,YAAY,CAAC;IACtB,CAAC;IAED,yDAAyD;IACzD,IAAI,iBAAiB,CAAC,MAAM,CAAC,IAAI,iBAAiB,CAAC,KAAK,CAAC,EAAE,CAAC;QAC1D,OAAO,UAAU,CAAC;IACpB,CAAC;IAED,mDAAmD;IACnD,OAAO,QAAQ,CAAC;AAClB,CAAC;AAED,SAAS,mBAAmB,CAAC,CAAe;IAC1C,OAAO,CAAC,CAAC,KAAK,KAAK,SAAS,IAAI,CAAC,CAAC,QAAQ,KAAK,YAAY,CAAC;AAC9D,CAAC;AAED,SAAS,iBAAiB,CAAC,CAAe;IACxC,OAAO,CAAC,CAAC,KAAK,KAAK,SAAS,IAAI,CAAC,CAAC,QAAQ,KAAK,UAAU,CAAC;AAC5D,CAAC"}
|
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* transcript-moderation.ts — pure functional core
|
|
3
|
+
*
|
|
4
|
+
* Maps a raw transcript string through the injected TextModerationProvider and
|
|
5
|
+
* folds the resulting ModerationVerdict into the canonical 3-value
|
|
6
|
+
* ModerationDecision understood by the media pipeline.
|
|
7
|
+
*
|
|
8
|
+
* Fail-closed contract (hard requirement):
|
|
9
|
+
* - Any thrown error from the seam => "review"
|
|
10
|
+
* - Any verdict whose decision is not one of
|
|
11
|
+
* the three known values => "review"
|
|
12
|
+
* - An empty/whitespace-only transcript is
|
|
13
|
+
* passed to the seam unchanged; the seam's
|
|
14
|
+
* own decision is honoured. If the seam
|
|
15
|
+
* throws on empty input that also resolves
|
|
16
|
+
* to "review" (error path above).
|
|
17
|
+
* RATIONALE: silent audio is not inherently
|
|
18
|
+
* safe — an empty transcript could be a
|
|
19
|
+
* decoding failure, a muted track, or
|
|
20
|
+
* legitimate silence. Approving it
|
|
21
|
+
* unconditionally would bypass the seam
|
|
22
|
+
* for a whole class of inputs. The seam
|
|
23
|
+
* is the authority; we defer to it.
|
|
24
|
+
*
|
|
25
|
+
* Pure functional core: no I/O, no clock, no random, no cloud SDK. Only
|
|
26
|
+
* node:crypto is permitted (deterministic, CPU-only) — not used here.
|
|
27
|
+
* Ships in the PUBLIC npm tarball: NO thresholds, secrets, or real-category
|
|
28
|
+
* vocabulary.
|
|
29
|
+
*/
|
|
30
|
+
import type { ModerationDecision } from "./moderation-status.js";
|
|
31
|
+
import type { TextModerationProvider } from "./text-moderation.js";
|
|
32
|
+
/**
|
|
33
|
+
* Run `transcript` through the injected `textMod` seam and return the
|
|
34
|
+
* canonical {@link ModerationDecision}.
|
|
35
|
+
*
|
|
36
|
+
* Fail-closed on every failure path:
|
|
37
|
+
* - Seam throws => `"review"`
|
|
38
|
+
* - Seam resolves to an unknown decision => `"review"`
|
|
39
|
+
* - Seam resolves to `"approved"` => `"approved"` (only safe path)
|
|
40
|
+
* - Seam resolves to `"quarantine"` => `"quarantine"`
|
|
41
|
+
* - Seam resolves to `"review"` => `"review"`
|
|
42
|
+
*
|
|
43
|
+
* @param transcript The raw transcript string (may be empty for silent audio).
|
|
44
|
+
* @param textMod The injected text-moderation seam.
|
|
45
|
+
*/
|
|
46
|
+
export declare function transcriptToModerationDecision(transcript: string, textMod: TextModerationProvider): Promise<ModerationDecision>;
|
|
47
|
+
//# sourceMappingURL=transcript-moderation.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"transcript-moderation.d.ts","sourceRoot":"","sources":["../../../src/lib/media/transcript-moderation.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4BG;AAEH,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,wBAAwB,CAAC;AACjE,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,sBAAsB,CAAC;AAKnE;;;;;;;;;;;;;GAaG;AACH,wBAAsB,8BAA8B,CAClD,UAAU,EAAE,MAAM,EAClB,OAAO,EAAE,sBAAsB,GAC9B,OAAO,CAAC,kBAAkB,CAAC,CA0B7B"}
|
|
@@ -0,0 +1,70 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* transcript-moderation.ts — pure functional core
|
|
3
|
+
*
|
|
4
|
+
* Maps a raw transcript string through the injected TextModerationProvider and
|
|
5
|
+
* folds the resulting ModerationVerdict into the canonical 3-value
|
|
6
|
+
* ModerationDecision understood by the media pipeline.
|
|
7
|
+
*
|
|
8
|
+
* Fail-closed contract (hard requirement):
|
|
9
|
+
* - Any thrown error from the seam => "review"
|
|
10
|
+
* - Any verdict whose decision is not one of
|
|
11
|
+
* the three known values => "review"
|
|
12
|
+
* - An empty/whitespace-only transcript is
|
|
13
|
+
* passed to the seam unchanged; the seam's
|
|
14
|
+
* own decision is honoured. If the seam
|
|
15
|
+
* throws on empty input that also resolves
|
|
16
|
+
* to "review" (error path above).
|
|
17
|
+
* RATIONALE: silent audio is not inherently
|
|
18
|
+
* safe — an empty transcript could be a
|
|
19
|
+
* decoding failure, a muted track, or
|
|
20
|
+
* legitimate silence. Approving it
|
|
21
|
+
* unconditionally would bypass the seam
|
|
22
|
+
* for a whole class of inputs. The seam
|
|
23
|
+
* is the authority; we defer to it.
|
|
24
|
+
*
|
|
25
|
+
* Pure functional core: no I/O, no clock, no random, no cloud SDK. Only
|
|
26
|
+
* node:crypto is permitted (deterministic, CPU-only) — not used here.
|
|
27
|
+
* Ships in the PUBLIC npm tarball: NO thresholds, secrets, or real-category
|
|
28
|
+
* vocabulary.
|
|
29
|
+
*/
|
|
30
|
+
/** The three known classifier decisions (kept local — not re-exported). */
|
|
31
|
+
const KNOWN_DECISIONS = new Set(["approved", "review", "quarantine"]);
|
|
32
|
+
/**
|
|
33
|
+
* Run `transcript` through the injected `textMod` seam and return the
|
|
34
|
+
* canonical {@link ModerationDecision}.
|
|
35
|
+
*
|
|
36
|
+
* Fail-closed on every failure path:
|
|
37
|
+
* - Seam throws => `"review"`
|
|
38
|
+
* - Seam resolves to an unknown decision => `"review"`
|
|
39
|
+
* - Seam resolves to `"approved"` => `"approved"` (only safe path)
|
|
40
|
+
* - Seam resolves to `"quarantine"` => `"quarantine"`
|
|
41
|
+
* - Seam resolves to `"review"` => `"review"`
|
|
42
|
+
*
|
|
43
|
+
* @param transcript The raw transcript string (may be empty for silent audio).
|
|
44
|
+
* @param textMod The injected text-moderation seam.
|
|
45
|
+
*/
|
|
46
|
+
export async function transcriptToModerationDecision(transcript, textMod) {
|
|
47
|
+
let verdict;
|
|
48
|
+
try {
|
|
49
|
+
verdict = await textMod.moderateText(transcript);
|
|
50
|
+
}
|
|
51
|
+
catch {
|
|
52
|
+
// Seam threw — fail closed.
|
|
53
|
+
return "review";
|
|
54
|
+
}
|
|
55
|
+
// Guard against garbage/null/undefined verdict objects (defensive — the
|
|
56
|
+
// contract says the seam returns ModerationVerdict, but an adapter could
|
|
57
|
+
// be buggy).
|
|
58
|
+
if (verdict == null || typeof verdict !== "object") {
|
|
59
|
+
return "review";
|
|
60
|
+
}
|
|
61
|
+
const { decision } = verdict;
|
|
62
|
+
// Only the three known decisions are honoured. Anything else — including
|
|
63
|
+
// undefined, a future union member, or a typo from a misbehaving adapter —
|
|
64
|
+
// resolves to "review" (fail closed).
|
|
65
|
+
if (!KNOWN_DECISIONS.has(decision)) {
|
|
66
|
+
return "review";
|
|
67
|
+
}
|
|
68
|
+
return decision;
|
|
69
|
+
}
|
|
70
|
+
//# sourceMappingURL=transcript-moderation.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"transcript-moderation.js","sourceRoot":"","sources":["../../../src/lib/media/transcript-moderation.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4BG;AAKH,2EAA2E;AAC3E,MAAM,eAAe,GAAG,IAAI,GAAG,CAAS,CAAC,UAAU,EAAE,QAAQ,EAAE,YAAY,CAAC,CAAC,CAAC;AAE9E;;;;;;;;;;;;;GAaG;AACH,MAAM,CAAC,KAAK,UAAU,8BAA8B,CAClD,UAAkB,EAClB,OAA+B;IAE/B,IAAI,OAAO,CAAC;IACZ,IAAI,CAAC;QACH,OAAO,GAAG,MAAM,OAAO,CAAC,YAAY,CAAC,UAAU,CAAC,CAAC;IACnD,CAAC;IAAC,MAAM,CAAC;QACP,4BAA4B;QAC5B,OAAO,QAAQ,CAAC;IAClB,CAAC;IAED,wEAAwE;IACxE,yEAAyE;IACzE,aAAa;IACb,IAAI,OAAO,IAAI,IAAI,IAAI,OAAO,OAAO,KAAK,QAAQ,EAAE,CAAC;QACnD,OAAO,QAAQ,CAAC;IAClB,CAAC;IAED,MAAM,EAAE,QAAQ,EAAE,GAAG,OAAO,CAAC;IAE7B,0EAA0E;IAC1E,2EAA2E;IAC3E,sCAAsC;IACtC,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE,CAAC;QACnC,OAAO,QAAQ,CAAC;IAClB,CAAC;IAED,OAAO,QAA8B,CAAC;AACxC,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"media-handler.d.ts","sourceRoot":"","sources":["../../src/lib/media-handler.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"media-handler.d.ts","sourceRoot":"","sources":["../../src/lib/media-handler.ts"],"names":[],"mappings":"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"}
|
|
@@ -1074,10 +1074,12 @@ export class MediaHandler {
|
|
|
1074
1074
|
const thumbnailUrl = `${apiDomain}/api/media/${media.contentHash}?variant=thumbnail`;
|
|
1075
1075
|
const optimizedUrl = `${apiDomain}/api/media/${media.contentHash}?variant=optimized`;
|
|
1076
1076
|
const originalUrl = `${apiDomain}/api/media/${media.contentHash}?variant=original`;
|
|
1077
|
-
//
|
|
1078
|
-
//
|
|
1079
|
-
//
|
|
1080
|
-
//
|
|
1077
|
+
// Privacy flags gate the metadata fields in the response (D13 data-minimization).
|
|
1078
|
+
// metadataVisible defaults false — metadata is private unless the owner has
|
|
1079
|
+
// explicitly enabled sharing. locationVisible gates any location-bearing fields.
|
|
1080
|
+
// The flags themselves are always included so the frontend can render the toggle.
|
|
1081
|
+
const metadataVisible = media.metadataVisible ?? false;
|
|
1082
|
+
const locationVisible = media.locationVisible ?? false;
|
|
1081
1083
|
const result = {
|
|
1082
1084
|
id: media.id,
|
|
1083
1085
|
contentHash: media.contentHash,
|
|
@@ -1090,12 +1092,16 @@ export class MediaHandler {
|
|
|
1090
1092
|
width: media.width ?? undefined,
|
|
1091
1093
|
height: media.height ?? undefined,
|
|
1092
1094
|
duration: media.duration ?? undefined,
|
|
1093
|
-
exifData:
|
|
1094
|
-
|
|
1095
|
+
// exifData/iptcData/dateTaken: withheld when metadataVisible is false
|
|
1096
|
+
...(metadataVisible && {
|
|
1097
|
+
exifData: media.exifData ?? undefined,
|
|
1098
|
+
iptcData: media.iptcData ?? undefined,
|
|
1099
|
+
dateTaken: media.dateTaken?.toISOString(),
|
|
1100
|
+
}),
|
|
1101
|
+
// videoMetadata does not contain privacy-sensitive EXIF; gated separately
|
|
1095
1102
|
videoMetadata: media.videoMetadata ?? undefined,
|
|
1096
|
-
|
|
1097
|
-
|
|
1098
|
-
locationVisible: media.locationVisible ?? false,
|
|
1103
|
+
metadataVisible,
|
|
1104
|
+
locationVisible,
|
|
1099
1105
|
createdAt: media.createdAt.toISOString(),
|
|
1100
1106
|
updatedAt: media.updatedAt.toISOString(),
|
|
1101
1107
|
hidden: media.hidden || false,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"media-handler.js","sourceRoot":"","sources":["../../src/lib/media-handler.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"media-handler.js","sourceRoot":"","sources":["../../src/lib/media-handler.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"post-handler.d.ts","sourceRoot":"","sources":["../../src/lib/post-handler.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAA6B,MAAM,+BAA+B,CAAC;AAW5F,OAAO,EAAwC,KAAK,SAAS,EAAE,MAAM,aAAa,CAAC;AAEnF,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,sBAAsB,CAAC;AAClE,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,qBAAqB,CAAC;AAEnD,MAAM,WAAW,GAAG;IAClB,YAAY,EAAE,MAAM,CAAC;IACrB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,mBAAmB,CAAC,EAAE,WAAW,CAAC;IAClC,aAAa,CAAC,EAAE,WAAW,CAAC;IAC5B,UAAU,CAAC,EAAE,WAAW,CAAC;IACzB,QAAQ,CAAC,EAAE,WAAW,CAAC;IACvB,iBAAiB,CAAC,EAAE,WAAW,CAAC;IAChC,gBAAgB,CAAC,EAAE,GAAG,CAAC;IACvB,cAAc,CAAC,EAAE,MAAM,CAAC;IAGxB,mBAAmB,CAAC,EAAE,OAAO,CAAC;CAC/B;AAED,MAAM,WAAW,iBAAiB;IAChC,IAAI,EAAE,MAAM,CAAC;IACb,UAAU,CAAC,EAAE,QAAQ,GAAG,cAAc,GAAG,SAAS,CAAC;IACnD,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,UAAU,CAAC,EAAE,MAAM,EAAE,CAAC;IACtB,YAAY,CAAC,EAAE,MAAM,EAAE,CAAC;IACxB,OAAO,CAAC,EAAE;QACR,GAAG,EAAE,MAAM,CAAC;QACZ,GAAG,EAAE,MAAM,CAAC;QACZ,KAAK,CAAC,EAAE,MAAM,CAAC;KAChB,CAAC;IACF,eAAe,CAAC,EAAE,MAAM,EAAE,CAAC;IAC3B,KAAK,CAAC,EAAE,KAAK,CAAC;QACZ,IAAI,EAAE,IAAI,GAAG,IAAI,CAAC;QAClB,GAAG,CAAC,EAAE,MAAM,CAAC;QACb,QAAQ,EAAE,MAAM,CAAC;KAClB,CAAC,CAAC;CACJ;AAED,qBAAa,WAAW;IACtB,OAAO,CAAC,iBAAiB,CAAoB;IAC7C,OAAO,CAAC,MAAM,CAAS;gBAEX,GAAG,CAAC,EAAE,SAAS;IAK3B;;;;OAIG;IACG,UAAU,CACd,OAAO,EAAE,OAAO,EAChB,OAAO,EAAE,OAAO,EAChB,GAAG,EAAE,GAAG,EACR,cAAc,EAAE,qBAAqB,EACrC,cAAc,EAAE,MAAM,GACrB,OAAO,CAAC,QAAQ,CAAC;
|
|
1
|
+
{"version":3,"file":"post-handler.d.ts","sourceRoot":"","sources":["../../src/lib/post-handler.ts"],"names":[],"mappings":"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"}
|
package/dist/lib/post-handler.js
CHANGED
|
@@ -247,7 +247,10 @@ export class PostHandler {
|
|
|
247
247
|
// This ensures we use the correct database ID when creating PostMedia records
|
|
248
248
|
const mediaIdMap = new Map();
|
|
249
249
|
for (const file of mediaFiles) {
|
|
250
|
-
|
|
250
|
+
// contentHash is null for a video still pending transcode — such a
|
|
251
|
+
// row is referenced by id only (it has no hash yet).
|
|
252
|
+
if (file.contentHash)
|
|
253
|
+
mediaIdMap.set(file.contentHash, file.id);
|
|
251
254
|
mediaIdMap.set(file.id, file.id);
|
|
252
255
|
}
|
|
253
256
|
// Remap media IDs to database IDs
|