Feature Request
Description:
Add two new subcommands under a manifest command group:
-
manifest replay <path> — re-executes any previous operation exactly from its saved manifest file by reading the stored input parameters.
-
manifest summary <path> — reads the summary block from an existing manifest and prints it as structured console output. No new data is collected and no new file is generated.
Why is this feature important?
Once manifests are recorded (Milestone 2), replay closes the loop on
reproducibility — any past operation becomes a single replayable command
on any machine. Summary gives an immediate human-readable view of what
happened without opening the JSON file.
Additional context:
New module: databusclient/manifest/replay.py — ManifestReplayer class
Replay behavior per command:
download — re-runs from saved dbus:replayParams directly
deploy — reconstructs dataid by calling create_dataset() again from saved pre-construction inputs (version_id, title, abstract, description, license_url, distributions)
delete — always defaults to dry_run=True as a safety guard; never deletes for real on replay unless explicitly overridden. (exact replay behavior for deploy needs discussion)
Feature Request
Description:
Add two new subcommands under a
manifestcommand group:manifest replay <path>— re-executes any previous operation exactly from its saved manifest file by reading the stored input parameters.manifest summary <path>— reads the summary block from an existing manifest and prints it as structured console output. No new data is collected and no new file is generated.Why is this feature important?
Once manifests are recorded (Milestone 2), replay closes the loop on
reproducibility — any past operation becomes a single replayable command
on any machine. Summary gives an immediate human-readable view of what
happened without opening the JSON file.
Additional context:
New module:
databusclient/manifest/replay.py—ManifestReplayerclassReplay behavior per command:
download— re-runs from saveddbus:replayParamsdirectlydeploy— reconstructsdataidby callingcreate_dataset()again from saved pre-construction inputs (version_id,title,abstract,description,license_url,distributions)delete— always defaults todry_run=Trueas a safety guard; never deletes for real on replay unless explicitly overridden. (exact replay behavior fordeployneeds discussion)