Classify Communications into Intake Items, Review Items, and Proposed Change Sets #8

Closed
opened 2026-06-14 10:21:21 +00:00 by liang · 1 comment
Owner

Parent

Parent PRD: #2

What to build

Build the first deterministic classification pipeline using fake classifier seams for tests. Classification should record Classification Decisions for linked, intake, and irrelevant outcomes, create Communication Interpretations, route uncertain work through Intake Items and Review Items, and turn Agent-suggested writes into Proposed Change Sets rather than direct domain mutations.

Acceptance criteria

  • Classification Decisions persist decision, confidence, rationale, evidence references, signals used, model name, prompt version, correction status, and linked Proposed Change Set where present without saving full prompts, raw responses, or reasoning traces by default.
  • Intake Items support needs_project, needs_responsibility, needs_matter, deferred, archived, and resolved statuses.
  • Review Items support at least proposed_change_set, visual_review, ambiguous_project, and needs_matter, while reserving data shape for suggested_deadline, rule_suggestion, and handoff_decision.
  • Agent-suggested Matter creation, Matter links, deadlines, milestones, summaries, status changes, and Task creation are represented as Proposed Changes with domain operation types.
  • Automated tests use fake classifiers and fixtures to verify linked, intake, irrelevant, visual-review, and proposed-change outcomes without live model calls.

Blocked by

## Parent Parent PRD: #2 ## What to build Build the first deterministic classification pipeline using fake classifier seams for tests. Classification should record Classification Decisions for linked, intake, and irrelevant outcomes, create Communication Interpretations, route uncertain work through Intake Items and Review Items, and turn Agent-suggested writes into Proposed Change Sets rather than direct domain mutations. ## Acceptance criteria - [ ] Classification Decisions persist decision, confidence, rationale, evidence references, signals used, model name, prompt version, correction status, and linked Proposed Change Set where present without saving full prompts, raw responses, or reasoning traces by default. - [ ] Intake Items support needs_project, needs_responsibility, needs_matter, deferred, archived, and resolved statuses. - [ ] Review Items support at least proposed_change_set, visual_review, ambiguous_project, and needs_matter, while reserving data shape for suggested_deadline, rule_suggestion, and handoff_decision. - [ ] Agent-suggested Matter creation, Matter links, deadlines, milestones, summaries, status changes, and Task creation are represented as Proposed Changes with domain operation types. - [ ] Automated tests use fake classifiers and fixtures to verify linked, intake, irrelevant, visual-review, and proposed-change outcomes without live model calls. ## Blocked by - #7
Author
Owner

Implemented issue #8.

Summary:

  • Added services.classification_pipeline.classify_communications with fake-classifier seam.
  • Persists Classification Decisions, Intake Items, Review Items, Communication Interpretations, Proposed Change Sets, and Proposed Changes without live model calls or raw prompt/response logs.
  • Covers linked/proposed, intake, irrelevant, and visual-review outcomes.

Verification: .venv/bin/pytest tests/test_classification_pipeline.py -q -> passed.

Implemented issue #8. Summary: - Added `services.classification_pipeline.classify_communications` with fake-classifier seam. - Persists Classification Decisions, Intake Items, Review Items, Communication Interpretations, Proposed Change Sets, and Proposed Changes without live model calls or raw prompt/response logs. - Covers linked/proposed, intake, irrelevant, and visual-review outcomes. Verification: `.venv/bin/pytest tests/test_classification_pipeline.py -q` -> passed.
liang closed this issue 2026-06-14 10:54:22 +00:00
Sign in to join this conversation.
No labels
ready-for-agent
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
liang/sales-ai#8
No description provided.