Skip to content

core: implement domain model and newtypes (T0.2) - #1

Merged
alejandro-nexcade merged 1 commit into
mainfrom
alejandro/t0.2-domain-model
Jun 28, 2026
Merged

core: implement domain model and newtypes (T0.2)#1
alejandro-nexcade merged 1 commit into
mainfrom
alejandro/t0.2-domain-model

Conversation

@alejandro-nexcade

Copy link
Copy Markdown
Collaborator

Summary

  • Implements model.rs with all domain types from SPEC.md §6
  • Five newtype IDs (ReviewId, IssueRef, PrRef, CommentId, ProjectRef), gate/agent/anchor enums, and Review/ProjectPlan/Comment/AgentRun structs
  • Uses SystemTime over Instant for serializable timestamps; DiffData is a placeholder

Test plan

  • 7 tests: DAG parent/child edges, newtype distinctness, GateState copy, ephemeral comments, ProjectPlan construction, Artifact enum exhaustiveness
  • cargo fmt, cargo clippy -- -D warnings, cargo test --all green

🤖 Generated with Claude Code

Add model.rs with all domain types from SPEC.md §6: five newtype IDs
(ReviewId, IssueRef, PrRef, CommentId, ProjectRef), gate/agent/anchor
enums, and the Review/ProjectPlan/Comment/AgentRun structs. Uses
SystemTime over Instant for serializability. DiffData is a placeholder.
Seven tests cover DAG edges, type distinctness, and invariant 4.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
@alejandro-nexcade
alejandro-nexcade merged commit d72de65 into main Jun 28, 2026
1 check passed
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.

2 participants