Skip to content

feat(wiki): add OpenAI-compatible visual fact extraction - #11

Closed
MarinaMackay wants to merge 2 commits into
mmwiki-pr2-core-knowledge-v2from
codex/mmwiki-pr3-vlm-extractor-v2
Closed

MarinaMackay wants to merge 2 commits into
mmwiki-pr2-core-knowledge-v2from
codex/mmwiki-pr3-vlm-extractor-v2

Conversation

@MarinaMackay

Copy link
Copy Markdown
Owner

Summary

Fork-side stacked PR for the PR3 slice of sysevol-ai#655. This adds an optional OpenAI-compatible VLM extractor for the visual fact contract introduced in PR2.

This is intentionally stacked on codex/mmwiki-pr2-core-knowledge-v2 in my fork so the diff only shows the VLM extractor slice until upstream PR2 lands.

Changes

  • Add OpenAICompatibleVisualFactExtractor for OpenAI-compatible chat/VLM endpoints.
  • Attach repository media as bounded data URLs when a local repo path is provided.
  • Normalize model output through the existing visual fact contract.
  • Validate API base URLs, API keys, model/provider labels, timeouts, MIME types, repository-relative artifact paths, response bytes, and image bytes.
  • Add focused tests for provider requests, normalization, unsafe configuration, unsafe artifact paths, MIME rejection, response bounds, image bounds, and invalid JSON.

Type of Change

  • Bug fix
  • New feature
  • Breaking change
  • Documentation update
  • Refactoring
  • Performance improvement
  • Tests

Testing

  • Tests pass locally
  • Added new tests for the changes

Commands run locally:

python -m pytest test/wiki
python -m pytest test/wiki/test_media_vlm.py test/wiki/test_media_facts.py
python -m py_compile codenib/wiki/media_vlm.py codenib/wiki/media_facts.py codenib/wiki/__init__.py
git diff --check codex/mmwiki-pr2-core-knowledge-v2...HEAD

Local result:

387 passed

Checklist

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

Notes

Do not open this slice upstream until sysevol-ai#665 lands or maintainers ask for parallel upstream drafts. Opening it upstream now would include cumulative PR2 changes.

@fishmingyu

Copy link
Copy Markdown

PR2 has merged upstream as sysevol-ai#665. I restacked this PR3 slice directly onto the resulting upstream main, preserved the original feature commits and authorship, added a maintainer provenance/media-integrity hardening commit, and opened the focused upstream PR as sysevol-ai#668. This fork-side comparison draft can now be closed when convenient.

@MarinaMackay
MarinaMackay deleted the codex/mmwiki-pr3-vlm-extractor-v2 branch September 1, 2026 07:07
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants