Skip to content

chore(v0.10.1): Add project table validation and dependency updates#116

Merged
rogermt merged 8 commits intomainfrom
v0.10.1
Mar 3, 2026
Merged

chore(v0.10.1): Add project table validation and dependency updates#116
rogermt merged 8 commits intomainfrom
v0.10.1

Conversation

@rogermt
Copy link
Owner

@rogermt rogermt commented Mar 3, 2026

Summary

Add missing [project] table to root pyproject.toml for plugin validation and pre-commit hook compatibility.

Changes

  • Add project metadata to forgesyte-plugins pyproject.toml
  • Update manifest validation and plugin structure checks
  • All pre-commit hooks now passing

Testing

  • ✅ ruff lint passing
  • ✅ mypy type check passing
  • ✅ validate-yolo-manifest passing
  • ✅ enforce-plugin-structure passing

Checklist

  • All hooks pass
  • Ready for merge to main

rogermt and others added 8 commits February 26, 2026 21:30
- Add json_sanitize.py module
- Convert np.float32/64 → Python float
- Convert np.int32/64 → Python int
- Convert np.ndarray → Python list
- Recursive sanitization for nested structures
- Comprehensive unit tests (23 tests)

Phase 1 of v0.10.0 implementation.
- Wrap all video tool returns with sanitize_json()
- Add import for json_sanitize module
- Add output sanitization tests (9 tests)

Phase 2 of v0.10.0 implementation.
- Add streaming_video_analysis to capabilities
- Update version to 0.10.0
- Add streaming capability to all video tools
- Add manifest tests (10 tests)

Phase 3 of v0.10.0 implementation.
- Remove signature inspection tests (outdated)
- Add test for NEW API success path
- Add test for fallback to OLD API when NEW fails
- Add test for RuntimeError when both APIs fail

Tests now match the actual implementation in tracking.py.
Add success/result envelope to all tool returns for v0.10.1 compatibility.

Changes:
- Frame tools return: {"success": True, "result": data}
- Video tools return: {"success": True, "result": {"total_frames", "frames"}}
- Error paths return: {"success": False, "error": message}

Fixes streaming JSON parsing errors and batch video job failures.
Restores v0.9.7 behavior with proper JSON envelope.

Amp-Thread-ID: https://ampcode.com/threads/T-019ca950-82ea-774e-b222-0e4123b8ca09
Co-authored-by: Amp <amp@ampcode.com>
… import errors

Defer importing team.py and transformers until actually needed, preventing
torch.__spec__ errors during test collection on CPU environments.

Amp-Thread-ID: https://ampcode.com/threads/T-019cb5d7-0737-7619-91f7-381f01705cd6
Co-authored-by: Amp <amp@ampcode.com>
Video tool functions (_tool_video_ball_detection, _tool_video_pitch_detection,
_tool_video_radar) were wrapping results in {'success': True, 'result': ...}
while _run_video_tool already wrapped the same way, causing double nesting.

Also fix test expectations to unwrap single result envelope correctly.

Amp-Thread-ID: https://ampcode.com/threads/T-019cb5d7-0737-7619-91f7-381f01705cd6
Co-authored-by: Amp <amp@ampcode.com>
@rogermt rogermt merged commit c3a9b16 into main Mar 3, 2026
4 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant