Skip to content

feat(parse): support AC-3 audio resources and add multimodal integration tests#3229

Open
Hao-Yu-la wants to merge 4 commits into
mainfrom
feat/ac3-support
Open

feat(parse): support AC-3 audio resources and add multimodal integration tests#3229
Hao-Yu-la wants to merge 4 commits into
mainfrom
feat/ac3-support

Conversation

@Hao-Yu-la

Copy link
Copy Markdown
Collaborator

Description

Add AC-3 audio resource support and introduce a black-box multimodal compatibility test matrix against a deployed OpenViking
service.

The integration tests submit remote file URLs directly through AsyncHTTPClient without mocking parsers, storage, or media
validation.

Human Involvement

  • A human participated in the implementation or review loop
  • This PR was generated entirely by AI agents without human participation in the loop

Related Issue

N/A

Type of Change

  • Bug fix (non-breaking change that fixes an issue)
  • New feature (non-breaking change that adds functionality)
  • Breaking change (fix or feature that would cause existing functionality to not work as expected)
  • Documentation update
  • Refactoring (no functional changes)
  • Performance improvement
  • Test update

Changes Made

  • Added URL detection coverage to ensure remote AC-3 resources retain the .ac3 extension and route to the audio parser.
  • Added a 31-case multimodal integration matrix covering image, audio, video, codec, and document inputs through a real
    deployed OpenViking service.
  • Added support for loading the service URL, API key, and identity fields from the current OV CLI configuration, with
    localhost fallback when no URL is configured.
  • Removed the separate AC-3 parser test in favor of the consolidated multimodal compatibility matrix.

Testing

  • I have added tests that prove my fix is effective or that my feature works
  • New and existing unit tests pass locally with my changes
  • I have tested this on the following platforms:
    • Linux
    • macOS
    • Windows

Commands executed:

uv run --active --no-sync pytest -q \
  tests/parse/test_url_filename_preservation.py \
  tests/parse/test_multimodal_file_matrix_integration.py \
  --no-cov

Result:

49 passed, 31 skipped

The complete live matrix was also validated against a deployed OpenViking service with valid credentials:

38 passed

Style validation:

 uv run --active --no-sync ruff check \
    tests/parse/test_multimodal_file_matrix_integration.py

Result:

All checks passed!

Checklist

  • My code follows the project's coding style
  • I have performed a self-review of my code
  • I have commented my code, particularly in hard-to-understand areas
  • I have made corresponding changes to the documentation
  • My changes generate no new warnings
  • Any dependent changes have been merged and published

Screenshots (if applicable)

N/A

Additional Notes

  • Live integration cases are opt-in through OPENVIKING_RUN_MULTIMODAL_INTEGRATION=1.

  • The tests use add_resource(wait=False) to validate file-format acceptance and resource creation without waiting for
    downstream semantic extraction or embedding queues.

  • A later live rerun was blocked by an invalid API key in the active local CLI configuration; this occurred before resource
    ingestion and is unrelated to format handling.

  • No external dependency changes are required.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

Status: Backlog

Development

Successfully merging this pull request may close these issues.

1 participant