Repository navigation
[Artifact Forest 9/9] Prove the multi-family artifact forest and hand it to Flow #430
Description
October 28, 2026 — selectable demo and SDK publication checkpoint merged
PR #464 merged at c551f87329b5f040ac597530d893a3e2765437b3. PR #465 merged at 93c69b37432234201e92ab5af7580c8d3e24b106 with maintainer authorization. Renderflow has no remaining open PRs at this checkpoint.
The existing forest demo supports exact --job selection and a five-output built-in Fountain walkthrough. The Rust SDK now exposes RunManifest::published_targets() to join explicit published targets to borrowed native artifact/producer evidence, preserving distinct same-content destinations, losses and review state. Missing legacy evidence and contradictory joins return typed errors; run outcome remains separate. This is structural receipt correlation, not file/path verification, complete receipt validation or creative approval. The fixture reader also now uses observed source ID/digest evidence after publication hygiene instead of incorrectly relying on planned source identity.
SDK usage · First forest walkthrough · Handoff
The new checkpoint has ten Rust and two Python regression cases authored, plus coverage added to existing graph/composition cases. All remain unrun. Source review and exact Git blob/tree matches are the evidence; tests, compiler/build/Cargo resolution, lint/format, validators, CLI/fixture/native/provider execution and CI remain deferred. No Actions were dispatched or polled. No wire schemas, dependencies, releases or tags changed.
#430/#421 remain open for actual CLI/SDK and native-provider qualification, source preservation/repeatability, native-application fidelity and released Flow consumption. Original scope, acceptance boxes and earlier historical receipts follow unchanged.
October 28, 2026 — selectable forest demonstration draft
Draft PR #464, head 1e555d9bdac2295b467a097e0e1ba2b767b4db59, makes the existing creative fixture independently selectable with repeatable --job flags. The first walkthrough selects original-body: one synthetic original Fountain source and five built-in body exports, including the canonical screenplay JSON companion. Describe, plan and execute share exact selected declarations; negative opt-in and native configuration isolation happen before job work. Omitted jobs are not claimed as observations.
The walkthrough and handoff record this bounded usability checkpoint. Flow handoff documentation now reflects merged original-body/transcript-text exports and the native-only canonical artifact-store portability limitation.
Independent source review found no blocker. Seven regression methods are authored and unrun; eight published blobs and the full tree match the reviewed source. Tests, builds/compiler/Cargo resolution, lint/format, validators, fixture/CLI/native/provider execution and CI remain deferred. No Actions were dispatched or polled. No provider, engine, dependency or schema is added. This PR stays draft; #430/#421 remain open, with native application fidelity, actual CLI/SDK parity, provider/platform qualification and released Flow consumption still outstanding. Original scope and historical receipts follow unchanged.
Merged implementation checkpoint — October 27, 2026
PR #455 merged at 0842c16cb50530f37a35b18fb6b0211f3ffc2386 with maintainer authorization. Original-Fountain body exports, Trelby and transcript terminal Text are now merged source. Actual multi-family/native qualification, CLI/SDK parity and released Flow consumption remain outstanding. #430/#421 remain open.
Tests, builds/compiler checks, lint/format/schema/documentation tooling, native/provider/CLI execution and CI remain unrun under the maintained sprint deferral. No Actions were dispatched or polled. Earlier draft-state notes below are historical; original scope and acceptance criteria are preserved.
Current export-gap checkpoint — 2026-10-16
Draft PR #455, head eb47f6331cf3f81868b3566521976484349a64b9, authors the previously missing bounded original-Fountain body exports to canonical screenplay JSON, FDX, Fade In and OSF, with the maintainer-requested Trelby .trelby artifact, plus canonical transcript → terminal Text under existing subtitle/speech policies.
The new built-in policy keeps immutable original/canonical/output identity, independent semantic reparse, loss/review state, explicit unqualified status and mandatory publication checks. Shared codecs do not expand recovery's four-target contract or enable Scripttool reverse exports. A native-only bundle keeps its canonical companion in the local artifact store; select screenplay_json to publish a companion.
Regression sources, provider-free fixture targets, capability documentation, roadmap and handoff are refreshed. Source review and Git tree identity are the current evidence; the permitted pure capability generator completed with exit 0 (14 authored unqualified routes). Tests, compiler/build, format/lint, schema validation, fixtures/native/app opening and CI remain deliberately unexecuted under the sprint deferral. No Actions were dispatched or polled.
PR #455 remains draft. #430/#421 and all acceptance criteria below remain open/unchecked. Actual native fixtures, CLI/SDK parity, qualification and verified released Flow consumption are still pending. The earlier missing-direction statements below describe the historical checkpoint and are superseded only by authored source.
Previous implementation checkpoint — 2026-10-13
Merged PR #448 at 5afae5cc6023dac8bd64881bc9ed29a01be1df2e on 2026-10-13.
The #430 implementation checkpoint adds per-target publication evidence, preserves same-content target provenance and metadata-sensitive hygiene decisions, supplies a bounded public-CLI multi-family fixture and authored synthetic/negative corpus, shares doctor route declarations with generated capability documentation, and documents Flow's native-evidence handoff.
This is authored integration, not executed multi-family proof. Tests, compilation/build, lint/formatting, schema validation, fixture execution, native probes/conversions, platform qualification and CI remain intentionally deferred. Source review, pure capability documentation generation and Git content identity checks were performed. Rust/Python regression cases are authored and unrun. No Actions were dispatched or polled.
Remaining scope: general original-Fountain to FDX/Fade In/OSF/canonical exports remain unsupported; recovery-native exports are a separate lossy route. Plain transcript text export is standalone, not a graph edge. Actual native/media fixtures, CLI/SDK parity, source suppression/repeatability and released Flow consumption still need evidence. Optional unconfigured jobs are unattempted, not successful or observed provider absences.
The #430 handoff, Flow contract, fixture guide, capability matrix and roadmap record these boundaries. The closed #338 capability sweep is historical scope, not proof of every later #421/#430 arrow.
#430 and #421 stay open with their acceptance criteria unchecked. #406 is the next planned implementation lane; #412/#413, #429 and #419 retain fixture/toolchain/release qualification for the later test session. No new audit issues were created.
Parent: #421
Depends on: #422, #423, #424, #425, #426, #427, #428, #429
Coordinates with: egohygiene/flow#11
Outcome
Prove the complete concept with one redistribution-safe integration fixture and publish a stable downstream contract that Flow can orchestrate.
Fixture scenarios
Screenplay source
Fountain
├── FDX
├── FadeIn
├── OSF
├── Trelby
├── screenplay JSON
├── formatted PDF
└── analysis report
The original Fountain is referenced, not regenerated.
PDF recovery source
PDF
↓
extracted/recovered screenplay
├── Fountain
├── FDX
├── FadeIn
└── OSF
PDF is not regenerated unless explicitly requested.
Media source
video/audio
├── embedded timed text where present
└── local speech transcript
├── SRT
├── WebVTT
├── JSON
└── text
Deliverables
- Versioned artifact-forest request/plan/run/evidence contract.
- Exact target membership and output tree.
- Stable artifact IDs, hashes, source lineage, provider/toolchain fingerprint, loss/review state.
- One-command dry-run and execution fixture.
- Negative fixtures for cycles, duplicate targets, missing providers, malformed source, recovery ambiguity, and transcription unavailability.
- Generated capability matrix/documentation.
- Downstream Flow handoff identifying what Flow may orchestrate without importing Renderflow implementation details.
- Reconcile [EPIC][Artifact Forest] Build truthful screenplay, transcript, and exhaustive derivative workflows #421, 🧬 Expand format coverage, validate conversion paths, and maximize deterministic artifact extraction #338 capability truth, README/docs, and ROADMAP.md.
Acceptance criteria
- The integration forest executes without cycles or duplicate targets.
- Every artifact explains why it exists, how it was produced, and what information loss/review state applies.
- Source-format suppression works across screenplay and PDF recovery scenarios.
- Provider absence produces a partial truthful forest rather than false success.
- Flow can consume the released contract/artifact evidence without source dependency.
- Stable/MSRV, contracts, fixtures, docs, package and adversarial validations pass.
Non-goals
Flow implementation itself, consumer publication, or creative approval.
Audit-to-roadmap reconciliation — 2026-10-21
Audit: https://github.com/egohygiene/renderflow/blob/audit/flow-suite-20261021T025401Z/audits/flow-suite-20261021T025401Z.md · Complete roadmap: #367
Authored integration merged; original-Fountain exports/transcript terminal Text remain only draft #455; actual integration proof is outstanding.
Bounded preparation: Review draft #455 against main and keep it draft until separately authorized.
Full outcome remains gated (*): Children/provider qualification, CLI/SDK parity, source suppression/repeatability and released Flow consumption.
The maintainer's implementation-sprint qualification deferral remains in force. This audit ran no Renderflow tests, compiler/build/Cargo resolution, product lint/format/schema qualification, native/CLI/provider/visual execution, installers or new CI. Reading existing exact-source provider records is not a qualification rerun. Source implementation and authored tests are not passing-test, native-fidelity, release or downstream-consumer evidence.
This is an additive planning note. The full original issue, acceptance criteria, scope, parent references and historical checkpoints remain authoritative and unchanged. No acceptance box or issue is closed by this audit. Recommended ledger parent: #421.
Activity
Merge #448: creative forest evidence and Flow handoff [skip ci]
Merge selectable artifact forest checkpoint #464 [skip ci]
Merge artifact forest SDK publication checkpoint #465 [skip ci]