Research Assistant
|
2b552be9e6
|
feat: runtime contract hardening + skill/command truth alignment (Package A+B)
Atomic snapshots, canonical index mutation serialization, sync post-clean truth,
plugin path config-awareness, embed stop signal honesty, full snapshot bootstrap,
pf_ prefix unification, workflow command/lifecycle/path corrections,
mechanical/cognitive route separation with unknown-command guard.
|
2026-05-16 22:38:43 +08:00 |
|
Research Assistant
|
ab7ac0d6ab
|
feat(52-golden-datasets-cli-contracts): add CLI contract tests with snapshot integration
- tests/cli/ with conftest.py (cli_invoker, vault_builder, mock_ocr_backend fixtures)
- test_contract_helpers.py with normalize_snapshot, assert_valid_json, assert_json_shape
- 3 test files covering all 8 CLI commands (paths, status, sync, ocr, doctor,
repair, context, setup) with exit code, output shape, and error contracts
- fixtures/ocr/mock_ocr_backend.py with 4 mock modes (success, pending, error, timeout)
- pyproject.toml: added pytest-snapshot, responses, pytest-timeout, pytest-mock,
coverage; added testpaths and layer markers
- All 27 tests pass (CLI-01, CLI-02, CLI-03 satisfied)
|
2026-05-08 23:32:03 +08:00 |
|
Research Assistant
|
2068109d2b
|
feat(52-golden-datasets-cli-contracts): create golden dataset fixtures
- 10 Zotero JSON variants in fixtures/zotero/ (orthopedic, sports_medicine,
multi_attachment, no_pdf, absolute_paths, storage_prefix, bare_relative,
empty, malformed, missing_keys, cjk_content)
- 4 minimal PDFs generated via pymupdf (blank, two_page, with_figures, CJK)
- 6 mock PaddleOCR response fixtures (submit, poll_pending, poll_done,
result, error, timeout) + extracted_fulltext.md + figure_map.json
- 4 expected output snapshots (paths_json, status_json,
formal_note_frontmatter, index_json)
- MANIFEST.json tracks all 30+ fixtures with used_by, desc, generated
- VaultBuilder factory in fixtures/vault_builder.py with 3 levels
- All 5 FIX requirements (FIX-01 through FIX-05) satisfied
|
2026-05-08 23:23:01 +08:00 |
|