codex activity report — 2025-10-20 02:45 UTC

Context

  • Task: Investigate rdfexport plugin test failures reported by bun run test:log:linux.

  • Location: src/main/webapp/plugins/rdfexport.

Findings

  • scripts/test_legacy.sh invoked Python tooling (meta builder, pytest, baseline regeneration) without activating the project virtual environment. After the recent migration to uv, the required Python dependencies (e.g., rdflib) only exist inside .venv, so the harness failed with ModuleNotFoundError: No module named 'rdflib'.

  • legacy/tests/test_patched_parser.py::test_generated_metadata_fixtures_round_trip began failing because new fixtures (e.g., General_Authority_bleep_mock.drawio) already ship with root <UserObject> metadata. The metadata patcher now rejects re-injecting metadata, causing subprocess failures.

Changes

  1. Updated scripts/test_legacy.sh to:

    • behave as a strict bash script (set -euo pipefail),

    • resolve the project root, activate .venv/bin/activate when present, and

    • run the legacy regeneration + pytest suite from the expected working directory. This guarantees Python tooling sees the synced dependencies installed by bun run setup:uv.

  2. Added _fixture_contains_metadata helper in legacy/tests/test_patched_parser.py and filtered fixtures that already include metadata, so the round-trip regression covers only plain diagrams. This reflects the repository’s updated fixtures and avoids double-patching failures.

  3. Refreshed tests/demo_logs/test.log via bun run test:log:linux to capture the successful run.

  4. Recorded the fix in CHANGELOG.md and logged this report under docs/aicode/ per contributor guidelines.

Validation

  • bun run test:log:linux

  • CI=1 bun run check

All commands completed successfully.