Skip to content

feat: feature model schema + constraint solver (PLE Phase 3)#138

Merged
avrabe merged 1 commit intomainfrom
worktree-agent-a0d5780a
Apr 13, 2026
Merged

feat: feature model schema + constraint solver (PLE Phase 3)#138
avrabe merged 1 commit intomainfrom
worktree-agent-a0d5780a

Conversation

@avrabe
Copy link
Copy Markdown
Contributor

@avrabe avrabe commented Apr 13, 2026

Summary

FODA-style feature model with propositional constraint solver and binding model.

  • Feature tree with group types: mandatory, optional, alternative (XOR), or
  • Boolean constraint propagation with fixpoint loop
  • Ancestor propagation (child implies parent chain)
  • Group validation (alternative = exactly 1, or = at least 1)
  • Cross-tree constraints via s-expressions (implies, excludes)
  • Binding model mapping features to artifact IDs + source globs
  • YAML parsing with cycle detection and tree validation
  • 12 unit tests covering propagation, violation detection, edge cases

Implements: REQ-042, REQ-043, REQ-044
Refs: FEAT-110, FEAT-111, FEAT-112

🤖 Generated with Claude Code

…se 3)

Implements: REQ-042, REQ-043, REQ-044
Refs: FEAT-110, FEAT-111, FEAT-112

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
@codecov
Copy link
Copy Markdown

codecov Bot commented Apr 13, 2026

Codecov Report

❌ Patch coverage is 87.75934% with 59 lines in your changes missing coverage. Please review.

Files with missing lines Patch % Lines
rivet-core/src/feature_model.rs 87.75% 59 Missing ⚠️

📢 Thoughts on this report? Let us know!

@avrabe avrabe merged commit ee19e3c into main Apr 13, 2026
17 of 20 checks passed
@avrabe avrabe deleted the worktree-agent-a0d5780a branch April 13, 2026 04:15
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.

1 participant