fabro/lib/foundation/fabro-api/tests
Scott Werner 9d3aa7a4d4 Consolidate workflow-version lineage test coverage
The lineage field's `skip_serializing_if` behavior was asserted five times
across three crates. Keep the two assertions in fabro-types, which owns the
attribute, and drop the duplicates:

- Delete `run_created_omits_absent_workflow_version_id` from event/convert.rs,
  a copy of the test above it that re-checked another crate's serde attribute.
  convert.rs's own responsibility is covered by the existing field assertion.
- Delete `legacy_create_input_persists_without_workflow_version_id`, which ran
  the full create() pipeline to prove a hardcoded `None` literal is `None`.
  `CreateRunInput` has no such field, so no input could change the result.
- Fold `run_spec_omits_absent_workflow_version_id` into the adjacent legacy-spec
  test, which already holds an all-`None` record.
- Drop the off-topic spec re-serialization from run_state.rs's retried_from test.

Add `test_support::test_workflow_version_id()` alongside `test_run_provenance()`
and use it everywhere, replacing eight copies of the same magic seed across five
crates plus two assertion sites that recomputed the hash inline. This also
subsumes retry.rs's private helper of the same shape.

Revert the `run_spec_json` parameterization in the projection round-trip test:
`RunProjection` is a `with_replacement` alias for the canonical type, so the
`Some` and `None` call sites exercise identical code.

Have the two run.created literals that mirror a `RunSpec` read the spec's
lineage field instead of hardcoding `None`, so the mirrors stay accurate once a
producer populates it.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
2026-08-21 12:39:02 -04:00
..
agent_session_activated_props_round_trip.rs refactor: organize crates into three layers 2026-07-23 17:59:34 -04:00
automation_round_trip.rs refactor: organize crates into three layers 2026-07-23 17:59:34 -04:00
billed_token_counts_round_trip.rs refactor: organize crates into three layers 2026-07-23 17:59:34 -04:00
blob_hash_round_trip.rs Align SHA-256 hash casing contracts 2026-08-17 17:31:15 -04:00
command_termination_round_trip.rs refactor: organize crates into three layers 2026-07-23 17:59:34 -04:00
completion_message_round_trip.rs refactor: organize crates into three layers 2026-07-23 17:59:34 -04:00
completion_usage_round_trip.rs Expose detailed completion token usage 2026-07-24 07:36:56 -04:00
cost_source_round_trip.rs refactor: organize crates into three layers 2026-07-23 17:59:34 -04:00
create_completion_request_round_trip.rs Trim redundant reasoning effort request tests 2026-07-24 08:13:54 -04:00
diff_stats_round_trip.rs refactor: organize crates into three layers 2026-07-23 17:59:34 -04:00
diff_summary_round_trip.rs refactor: organize crates into three layers 2026-07-23 17:59:34 -04:00
environment_round_trip.rs refactor: organize crates into three layers 2026-07-23 17:59:34 -04:00
event_envelope_round_trip.rs refactor: organize crates into three layers 2026-07-23 17:59:34 -04:00
git_context_round_trip.rs Remove the recorded pre-run push outcome, keep the push 2026-08-03 19:27:33 -04:00
interview_option_round_trip.rs refactor: organize crates into three layers 2026-07-23 17:59:34 -04:00
interview_question_record_round_trip.rs Add structured review targets to human gates 2026-07-28 13:24:12 -04:00
manifest_args_round_trip.rs Remove obsolete manifest Docker image argument 2026-08-01 09:03:10 -04:00
mcp_server_round_trip.rs refactor: organize crates into three layers 2026-07-23 17:59:34 -04:00
mcp_transport_round_trip.rs refactor: organize crates into three layers 2026-07-23 17:59:34 -04:00
model_costs_round_trip.rs refactor: organize crates into three layers 2026-07-23 17:59:34 -04:00
model_features_round_trip.rs Merge origin/main (three-layer crate layout) into fix/openrouter-anthropic-prompt-caching 2026-07-23 19:30:20 -04:00
model_limits_round_trip.rs refactor: organize crates into three layers 2026-07-23 17:59:34 -04:00
model_round_trip.rs Reuse canonical ModelControls in fabro-api and tighten serde contract 2026-07-24 09:15:18 -04:00
model_test_mode_round_trip.rs refactor: organize crates into three layers 2026-07-23 17:59:34 -04:00
pair_round_trip.rs refactor: organize crates into three layers 2026-07-23 17:59:34 -04:00
parallel_branch_id_round_trip.rs Fix live parallel branch refresh and simplify branch rendering 2026-07-28 17:26:05 -04:00
pending_interview_record_round_trip.rs Add structured review targets to human gates 2026-07-28 13:24:12 -04:00
principal_round_trip.rs refactor: organize crates into three layers 2026-07-23 17:59:34 -04:00
provider_id_round_trip.rs Expose model reasoning effort controls 2026-07-24 07:44:40 -04:00
provider_round_trip.rs refactor: organize crates into three layers 2026-07-23 17:59:34 -04:00
pull_request_round_trip.rs Make pull request creation durable and asynchronous 2026-08-01 19:28:52 -04:00
question_type_round_trip.rs refactor: organize crates into three layers 2026-07-23 17:59:34 -04:00
reasoning_output_round_trip.rs fix(reasoning): tighten capture normalization 2026-07-24 17:31:14 -04:00
run_billing_stage_round_trip.rs refactor: organize crates into three layers 2026-07-23 17:59:34 -04:00
run_event_round_trip.rs Update run creation event fixtures and docs 2026-08-03 15:09:32 -04:00
run_failure_round_trip.rs refactor: organize crates into three layers 2026-07-23 17:59:34 -04:00
run_integrations_round_trip.rs refactor: organize crates into three layers 2026-07-23 17:59:34 -04:00
run_model_settings_round_trip.rs refactor: simplify model-keyed fallback internals 2026-07-30 12:51:36 -04:00
run_projection_round_trip.rs Consolidate workflow-version lineage test coverage 2026-08-21 12:39:02 -04:00
run_sandbox_round_trip.rs refactor: organize crates into three layers 2026-07-23 17:59:34 -04:00
run_summary_round_trip.rs refactor: organize crates into three layers 2026-07-23 17:59:34 -04:00
sandbox_details_round_trip.rs refactor: organize crates into three layers 2026-07-23 17:59:34 -04:00
sandbox_inventory_round_trip.rs refactor: organize crates into three layers 2026-07-23 17:59:34 -04:00
sandbox_services_round_trip.rs refactor: organize crates into three layers 2026-07-23 17:59:34 -04:00
secret_metadata_round_trip.rs refactor: organize crates into three layers 2026-07-23 17:59:34 -04:00
secret_type_round_trip.rs refactor: organize crates into three layers 2026-07-23 17:59:34 -04:00
server_settings_round_trip.rs refactor: organize crates into three layers 2026-07-23 17:59:34 -04:00
session_contract_round_trip.rs refactor: organize crates into three layers 2026-07-23 17:59:34 -04:00
stage_completion_round_trip.rs refactor: organize crates into three layers 2026-07-23 17:59:34 -04:00
stage_handler_round_trip.rs refactor: organize crates into three layers 2026-07-23 17:59:34 -04:00
stage_id_round_trip.rs fix: harden stage execution identity on resume 2026-07-24 09:37:05 -04:00
stage_model_usage_round_trip.rs refactor: organize crates into three layers 2026-07-23 17:59:34 -04:00
stage_outcome_round_trip.rs refactor: organize crates into three layers 2026-07-23 17:59:34 -04:00
stage_projection_round_trip.rs Merge remote-tracking branch 'origin/main' into feat/for-each-item-injection 2026-07-28 20:03:25 -04:00
stage_state_round_trip.rs refactor: organize crates into three layers 2026-07-23 17:59:34 -04:00
status_round_trip.rs fix(workflow): make publish failures terminal 2026-07-27 11:25:18 -04:00
submit_answer_request_round_trip.rs refactor: organize crates into three layers 2026-07-23 17:59:34 -04:00
system_integrations_round_trip.rs refactor: organize crates into three layers 2026-07-23 17:59:34 -04:00
variable_round_trip.rs refactor: organize crates into three layers 2026-07-23 17:59:34 -04:00
workflow_settings_round_trip.rs Remove nonfunctional run agent permissions setting 2026-07-29 10:23:00 -04:00
workflow_version_round_trip.rs Align SHA-256 hash casing contracts 2026-08-17 17:31:15 -04:00