2 Commits

Author SHA1 Message Date
teernisse
a10792be48 Benchmarks: replace mocks with real build_index, search, and normalize
Previous benchmarks simulated core operations with inline loops that
didn't exercise the actual code paths. Now each benchmark calls the
real implementation:

- build_index_real: full build_index() on petstore fixture
- search_real_pet: SearchEngine::search("pet") against real index
- search_real_multi_term: multi-term query "list all pets"
- search_real_case_insensitive: case-insensitive search path
- normalize_json_input: normalize_to_json on JSON input
- pipeline_normalize_new vs pipeline_normalize_old: proves the
  double-parse elimination (new returns tuple vs old parse-twice)
- detect_format_json_no_hints: byte-prefix format sniffing
- detect_format_with_content_type: format detection with hint

All benchmarks now use black_box correctly (consume return values,
not just inputs) to prevent dead-code elimination.
2026-02-12 16:57:27 -05:00
teernisse
4ac8659ebd Wave 7: Phase 2 features - sync --all, external refs, cross-alias discovery, CI/CD, reliability tests (bd-1ky, bd-1bp, bd-1rk, bd-1lj, bd-gvr, bd-1x5)
- Sync --all with async concurrency, per-host throttling, failure budgets, resumable execution
- External ref bundling at fetch time with origin tracking
- Cross-alias discovery (--all-aliases) for list and search commands
- CI/CD pipeline (.gitlab-ci.yml), cargo-deny config, Dockerfile, install script
- Reliability test suite: crash consistency (8 tests), lock contention (3 tests), property-based (4 tests)
- Criterion performance benchmarks (5 benchmarks)
- Bug fix: doctor --fix now repairs missing index.json when raw.json exists
- Bug fix: shared $ref references no longer incorrectly flagged as circular (refs.rs)

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-12 15:56:42 -05:00