Skip to content

Production versus simulation seam extraction for targeted services #107

@justinrayshort

Description

@justinrayshort

Summary

Move prototype in-memory and simulation behavior behind explicit repository or harness adapters so production service entrypoints no longer silently depend on heuristic or synthetic runtime behavior.

Primary Architectural Plane

services / workflows / shared

Owning Subsystem

services/governance-service, services/approval-service, services/evidence-service, services/identity-service, services/market-data-service, workflows/quant_strategy_promotion

Architectural References

  • ARCHITECTURE.md
  • docs/architecture/layer-boundaries.md

Integration Boundaries

Allowed touchpoints: targeted services, shared repositories, simulation or local-harness modules, workflow dependency injection.
Explicit non-goals: unrelated domain-service rewrites.

Scope In

  • Extract repository traits for targeted services still holding prototype in-memory state
  • Keep in-memory adapters under test or explicit local-harness or simulation modules
  • Move market-data simulation adapters and synthetic data generation out of default production paths
  • Make quant strategy promotion receive simulation collaborators explicitly
  • Add tests proving production and simulation modes are structurally separated

Scope Out

  • UI runtime work
  • Workspace manifest governance

Acceptance Criteria

  • Touched production service types no longer own prototype persistence directly
  • In-memory or synthetic adapters are explicit harness or simulation choices
  • Added tests prove production mode does not silently route through simulation logic
  • Workspace validation remains green

Validation Requirements

  • cargo fmt --all --check
  • cargo clippy --workspace --all-targets --all-features -- -D warnings
  • cargo test --workspace --all-targets

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions