OpenMontage/tests/tools
calesthio 2ef18e77a9 fix(video): normalize Gemini Omni file URIs; document provider in PROVIDERS.md
Review findings from PR #333:

P1: _download_via_uri assumed output_video.uri is always files/<id>.
The API can return a full resource URI or a ready-made
.../files/<id>:download?alt=media download URL, which produced an
invalid poll path with a second :download appended. New
_file_id_from_uri() extracts the bare id from every documented shape;
regression tests cover the full-URL form plus a parametrized matrix of
URI shapes.

P2: docs/PROVIDERS.md still described the Google key as TTS + Imagen
only. The shared-key section now covers gemini_omni_video (model id,
~$0.10/sec pricing table, paid-tier-only, edit-turn billing note), and
the env snippet, provider-to-tool mapping, and capability coverage
tables include the new provider.
2026-07-08 23:45:47 -07:00
..
__init__.py Initial release — OpenMontage: the first open-source agentic video production system 2026-03-29 08:25:17 -07:00
test_audio_mixer_ducking.py fix(audio_mixer): drop dangling speech_dup pad in full_mix ducking 2026-07-02 16:41:58 +05:30
test_audio_mixer_loudnorm_target.py fix(audio_mixer): parameterize loudnorm LUFS target 2026-07-07 07:32:44 +08:00
test_audio_mixer_segmented_music.py fix(audio_mixer): stop segmented_music from halving narration volume 2026-07-06 13:12:33 +05:30
test_base_tool_dependencies.py fix: preserve subprocess error type in tool runner 2026-07-03 22:00:38 +08:00
test_clip_cache.py docmontage: corpus builder hardening from P1 + P2 audit observations 2026-04-11 00:46:06 -07:00
test_cogvideo_i2v_variant.py fix(cogvideo_video): consult variant i2v flag instead of advertising it unconditionally 2026-07-07 07:38:52 +08:00
test_cost_tracker_governance.py fix: harden tool governance and subprocess safety 2026-07-03 20:07:00 +08:00
test_delivery_promise.py fix(delivery): recompute motion requirement after source-led override 2026-07-04 19:37:33 +05:30
test_documentary_governance.py fix: check ffmpeg availability via shutil.which instead of hardcoding True 2026-07-03 23:09:09 -04:00
test_export_bundle.py fix(publish): validate optional assets and default export inside project 2026-06-30 12:05:23 +05:30
test_gemini_omni_video.py fix(video): normalize Gemini Omni file URIs; document provider in PROVIDERS.md 2026-07-08 23:45:47 -07:00
test_grok_video_quality_score.py fix(grok_video): set quality_score=0.9 to stop under-ranking 2026-07-07 07:31:33 +08:00
test_hyperframes_compose.py Ship Backlot living storyboard release hardening 2026-07-02 12:19:06 -07:00
test_math_animate_safety.py fix(math_animate): block all reflection dunders, not an enumerated set 2026-07-03 13:04:33 +05:30
test_mps_device.py test(gpu): add tests for Apple Silicon MPS device resolution and fallback 2026-06-24 16:30:29 -05:00
test_music_gen_force_instrumental.py fix(ci): isolate requests module tests 2026-07-06 22:36:03 -07:00
test_music_library.py feat(audio): add music_library tool so user tracks surface at preflight 2026-06-29 13:24:48 +05:30
test_openai_image_multi_output.py fix(openai_image): return all n generated images, not just the first 2026-07-06 13:12:33 +05:30
test_pixabay_per_page_clamp.py fix(ci): isolate requests module tests 2026-07-06 22:36:03 -07:00
test_provider_model_defaults.py fix(video): runway/higgsfield model defaults diverge from schema 2026-06-26 15:30:22 +08:00
test_remotion_diagnostics.py fix(video_compose): forward remotion_timeout_ms through high-level render path 2026-07-02 11:59:53 +05:30
test_scene_detect_lavfi_escape.py fix: preserve subprocess error type in tool runner 2026-07-03 22:00:38 +08:00
test_scoring.py fix(scoring): strip trailing punctuation from tokens 2026-07-03 20:15:17 +05:30
test_sora_video.py Add first-class Sora video provider 2026-07-01 10:51:48 -07:00
test_stock_source_adapters.py docmontage: corpus builder hardening from P1 + P2 audit observations 2026-04-11 00:46:06 -07:00
test_video_compose_vertical.py fix(video_compose): honor target resolution in FFmpeg compose (vertical/9:16) 2026-06-27 11:56:49 +08:00
test_video_selector_routing.py fix(video_selector): dedup race + preferred-provider gap + motion-aware fallback 2026-07-07 07:36:59 +08:00