Expand description
AST diff (decided.services.diff): compare two parsed products and classify
the changes. Pure AST work — no git, no revisions, no raw-text diffing.
- Requirements match by ID: same ID + same text -> unchanged (omitted); same ID, different text -> modified; ID only in the new -> added; ID only in the old -> removed.
- Metrics and risks are ordered set-difference, de-duped, preserving source order.
Structs§
- Diff
Diff— the classified differences between two products.- Requirement
Change RequirementChange— a requirement whose text changed (same ID). Field order mirrors the Python dataclass (id, old_text, new_text).
Functions§
- diff
diff(old, new)— the classifiedDiffbetween two products.