Skip to content

Add provider-neutral generation port and fake adapter #847

Description

@chronoai-fkst

Parent issue: #844
Parent PR: #846
Blocked reason: fix loop reached 12 rounds and was reconciled to blocked.

Smaller scope / alternative approach:
Governing practice: Ports-and-Adapters, contract-first fail-closed validation, and a single contract-owned canonicalization authority. This isolates the domain boundary after repeated drift in operation naming, result shape, validation ownership, and JSON array-preserving copies.

Smaller scope:

  • Add TestCaseGenerationPort.generate(request) and the generation use case.
  • Validate requests and successful candidate sets through the existing testing-design generation contract.
  • Preserve the closed typed failure union and return detached snapshots from the fake adapter using contract canonicalization.

Non-goals: Codex CLI execution, Node process code, production runtime wiring, signed publication, or #795 handoff.

Acceptance criteria:

  • Fake-adapter tests cover valid success, cancellation, every typed failure, malformed outcomes, foreign request_digest, prompt identity, and mutation isolation.
  • No second canonical JSON or digest implementation is introduced.
  • Valid arrays retain their JSON representation after detachment.
  • Relevant checks and tests pass.

Non-goals:

  • Do not repeat the same high-round fix path without reducing scope or changing approach.

Acceptance:

  • The work is independently reviewable.
  • The implementation can pass the normal intake, consensus, implementation, and review pipeline.

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

Type

No type

Projects

No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions