mirror of
https://github.com/calesthio/OpenMontage.git
synced 2026-08-05 15:20:40 +08:00
feat(explainer): wire export_bundle into the publish stage
Make the new PUBLISH-tier tool usable rather than dead code: add export_bundle to the animated-explainer publish stage's tools_available, and update the explainer publish-director skill Step 5 to call export_bundle for packaging (passing the prepared metadata) instead of hand-creating the export tree. The documented export layout and the no-upload caveat are kept in sync with the tool. Other pipelines' publish stages can adopt it the same way.
This commit is contained in:
@@ -254,7 +254,7 @@ stages:
|
||||
- proposal_packet
|
||||
produces:
|
||||
- publish_log
|
||||
tools_available: []
|
||||
tools_available: [export_bundle]
|
||||
checkpoint_required: true
|
||||
human_approval_default: true
|
||||
review_focus:
|
||||
|
||||
@@ -85,22 +85,34 @@ Each chapter maps to a script section's `start_seconds`.
|
||||
|
||||
### Step 5: Package Export
|
||||
|
||||
Create the export directory structure:
|
||||
Use the `export_bundle` tool (capability `publish`) to do the packaging
|
||||
deterministically — pass it the final `video_path` (from `render_report`), the
|
||||
`title`, and the metadata you prepared (`description`, `tags`, `hashtags`,
|
||||
`chapters`, optional `subtitles_path` and `thumbnail_path`/`thumbnail_concept`).
|
||||
It lays out the export directory, writes the metadata files, and returns a
|
||||
schema-valid `publish_log` (`status: "exported"`) in `data["publish_log"]` that
|
||||
you persist as the stage artifact.
|
||||
|
||||
It produces this structure:
|
||||
|
||||
```
|
||||
exports/
|
||||
<project_name>/
|
||||
video/
|
||||
output.mp4 # Final rendered video
|
||||
output.mp4 # Final rendered video (subtitles.srt alongside if provided)
|
||||
metadata/
|
||||
metadata.json # All SEO metadata
|
||||
chapters.txt # Chapter markers
|
||||
description.txt # Ready-to-paste description
|
||||
description.txt # Ready-to-paste description (+ chapters)
|
||||
tags.txt # One tag per line
|
||||
thumbnails/
|
||||
concept.json # Thumbnail concept (or generated image)
|
||||
concept.json # Thumbnail concept (or the copied thumbnail image)
|
||||
```
|
||||
|
||||
`export_bundle` is a local, offline packager — it does not upload. A networked
|
||||
publisher (e.g. a YouTube uploader) would be a separate `publish`-capability
|
||||
provider.
|
||||
|
||||
### Step 6: Build Publish Log
|
||||
|
||||
```json
|
||||
|
||||
Reference in New Issue
Block a user