Skip to content

[76.4] JSON Plan File for Relational Constraints#97

Merged
kommundsen merged 1 commit intomainfrom
feat/76-88-conjecture-tool-cli-project
Apr 9, 2026
Merged

[76.4] JSON Plan File for Relational Constraints#97
kommundsen merged 1 commit intomainfrom
feat/76-88-conjecture-tool-cli-project

Conversation

@kommundsen
Copy link
Copy Markdown
Owner

Description

Implements the Plan module for JSON-based generation workflows. Enables users to define multi-step data generation plans via a generation-plan.json file with relational bindings between steps.

Cycle 76.4 — JSON Plan File for Relational Constraints

Key features:

  • GenerationPlan: Deserialize plan files via System.Text.Json
  • PlanRunner: Execute steps in order with binding resolution
  • RefResolver: Evaluate $ref expressions with array expansion [*]
  • Binding validation: Rejects unrecognized keys and ambiguous scalar refs with clear errors
  • 45 tests covering: deserialization, step ordering, ref resolution, type coercion, error cases

Type of change

  • New feature / strategy

Checklist

  • dotnet test src/ passes
  • New behavior is covered by tests (TDD: Red → Green → Refactor)
  • Follows .editorconfig code style

Closes #89
Part of #76

- GenerationPlan: deserialize plan files via System.Text.Json
- PlanRunner: execute steps in order with binding resolution
- RefResolver: evaluate $ref expressions with array expansion [*]
- Binding validation: unrecognized keys and ambiguous scalar refs throw
- 45 tests cover: deserialization, step ordering, ref resolution, type coercion, error cases
@kommundsen kommundsen merged commit f16c435 into main Apr 9, 2026
1 check passed
@kommundsen kommundsen deleted the feat/76-88-conjecture-tool-cli-project branch April 9, 2026 18:24
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

[76.4] JSON Plan File for Relational Constraints

1 participant