mirror of
https://github.com/storytold/effectcraft.git
synced 2026-10-29 04:26:55 -06:00
M13.15: qa project lifecycle; Collect Files makes its folder; agents cookbook
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
co-authored by
Claude Opus 5.5
parent
77ab92fb7d
commit
12235b5dc5
@@ -313,6 +313,9 @@ fn find_missing(s: &mut Session, p: &Value) -> Result<Value> {
|
||||
|
||||
fn collect_files(s: &mut Session, p: &Value) -> Result<Value> {
|
||||
let folder = str_p(p, "folder").ok_or_else(|| bad("file.collectFiles", "missing `folder`"))?.trim_end_matches('/').to_string();
|
||||
// Collect Files makes its folder (and the footage folder inside it).
|
||||
#[cfg(not(target_arch = "wasm32"))]
|
||||
std::fs::create_dir_all(format!("{folder}/(Footage)")).map_err(|e| EngineError::Other(format!("cannot create {folder}: {e}")))?;
|
||||
let mut proj = (*s.project).clone();
|
||||
let mut copied = 0;
|
||||
let mut errors = vec![];
|
||||
|
||||
@@ -146,7 +146,7 @@ pub fn specs() -> Vec<CommandSpec> {
|
||||
"Poll Watch Folder",
|
||||
[],
|
||||
None,
|
||||
"{folder? (default: the watched one)} → renders new projects now: [{project, state: done|failed, items: [{comp, status, output}]}]",
|
||||
"{folder? (default: the watched one)} → renders new projects now: {watching, rendered: [{project, state: done|failed, items: [{comp, status, output}]}]}",
|
||||
|s: &Session| if s.state.watch_folder.is_some() { Ok(()) } else { Err("no folder is being watched".into()) },
|
||||
poll_cmd
|
||||
),
|
||||
|
||||
Reference in New Issue
Block a user