II.
Page JSON
Structured · livepage:library-media
media (Library) json
Inspect the normalized record payload exactly as the atlas UI reads it.
{
"id": "page:library-media",
"_kind": "Page",
"_file": "wiki/library/media.md",
"_cluster": "wiki",
"attributes": {
"nodeKind": "Page",
"title": "media (Library)",
"displayName": "media (Library)",
"slug": "library/media",
"articlePath": "wiki/library/media.md",
"article": "\n# media\n\nGenerative media point tasks — one per modality and operation — plus one end-to-end\nproduction pipeline that carries a brief through to published assets and post-publish\nmetrics.\n\n## Point tasks\n\n- `image-generation.js` (`@process specializations/media/image-generation`)\n — Image-generation persona. Parse creative brief -> select optimal model (Imagen 3/4,\n Flux, DALL-E, Stable Diffusion) -> generate variants in parallel -> validate technical +\n creative quality -> organise outputs with metadata.\n- `image-editing.js` (`@process specializations/media/image-editing`)\n — Image-editing persona. Analyse source + operation request -> select tool (Imagen Edit,\n DALL-E Edit, Stability Edit, Photoshop AI, Upscaler) -> apply operation (inpaint |\n outpaint | object-removal | background-replace | style-transfer | upscale) -> validate\n edge quality / color consistency / artifact absence.\n- `video-generation.js` (`@process specializations/media/video-generation`)\n — Video-generation persona. Parse request (text-to-video | image-to-video |\n video-to-video) -> select optimal model (Veo 2/3, Luma, RunwayML, Stable Video, Minimax)\n -> generate via MCP GenMedia with camera/lighting/composition parameters -> validate\n technical + content quality -> retry with fallback model on low-quality outputs.\n- `video-editing.js` (`@process specializations/media/video-editing`)\n — Video-editing persona. Analyse source + request -> select tool (Veo Edit, FFmpeg AI,\n DaVinci Resolve, RunwayML Edit, Video Enhance) -> run per-op pipeline (temporal-inpaint |\n stabilise | color-grade | upscale | transitions | scene-cut | audio-sync) -> validate\n frame consistency + audio sync.\n- `speech-generation.js` (`@process specializations/media/speech-generation`)\n — Speech-generation persona. Analyse text + voice requirements (language, style, emotion,\n SSML) -> select model (Chirp 3, Azure Speech, ElevenLabs, OpenAI TTS, AWS Polly) ->\n synthesise via MCP GenMedia -> validate naturalness / pronunciation / audio specs.\n- `music-generation.js` (`@process specializations/media/music-generation`)\n — Music-generation persona. Parse composition brief (genre/mood/duration/instruments) ->\n select optimal model (Lyria, MusicLM, AIVA, Mubert, Amper) -> generate via MCP GenMedia\n -> apply mastering + stem separation if requested -> validate musical coherence +\n technical audio.\n\n## Pipeline\n\n`media-production-pipeline.js` (`@process specializations/media/media-production-pipeline`)\n— End-to-end media production: brief -> research -> script -> produce -> review gates\n(editorial, legal, brand) -> publish -> measure.\n\nIts task ids, in execution order:\n\n| Task id | Kind | Role |\n|---|---|---|\n| `media.research` | agent | Research the brief |\n| `media.script` | agent | Script/outline from the research |\n| `media.produce` | agent | Produce the asset |\n| `media.review-gate` | breakpoint | One pass per gate (`editorial`, `legal`, `brand`), up to 3 attempts each |\n| `media.publish` | agent | Publish to each entry in `publishTargets` (in parallel) |\n| `media.measure` | agent | Collect 24h post-publish metrics |\n\n## Known gap (OPEN)\n\nThe pipeline's review gates are plain `ctx.breakpoint` calls, **not** `routedBreakpoint`\npolicy gates: there is no `policy-gated` tag, no actionId, and no `gatedActions` audit\nrecord of the decision. Worse, each gate is skipped outright when the matching\n`reviewers[gate]` input is absent, and `media.publish` carries no approval gate of its own\n— so a run with no `reviewers` publishes with zero human review. This is stated here as an\n**open gap, not a fixed behaviour**; adding routed policy gates is a separate change and is\nnot done in this pass.\n\n## Assets\n\n- Skill: [`skills/generative-media-prompting/SKILL.md`](./skills/generative-media-prompting/SKILL.md)\n — the brief-to-prompt convention shared by the six point tasks.\n- There are no agents in this specialization.\n\n---\n\nDescriptions in this README are transcribed from the files' own `@description` headers,\nnot invented.\n",
"documents": [
"specialization:media"
]
},
"outgoingEdges": [
{
"from": "page:library-media",
"to": "specialization:media",
"kind": "documents"
}
],
"incomingEdges": [
{
"from": "page:index",
"to": "page:library-media",
"kind": "contains_page"
}
]
}