Add offline merchant category suggestions
This commit is contained in:
@@ -0,0 +1,23 @@
|
||||
## ADDED Requirements
|
||||
|
||||
### Requirement: System suggests categories from merchant names
|
||||
The system SHALL support merchant-name-based category suggestion for expense entry while keeping all suggestion logic fully offline.
|
||||
|
||||
#### Scenario: Known merchant resolves from deterministic rules
|
||||
- **WHEN** the user enters a merchant or shop name that matches a known merchant rule
|
||||
- **THEN** the system assigns the mapped category without needing model inference
|
||||
|
||||
#### Scenario: Unknown merchant falls back to local model
|
||||
- **WHEN** the user enters a merchant or shop name that does not match a known merchant rule
|
||||
- **THEN** the system asks the local AI service for a category suggestion and returns the suggested category
|
||||
|
||||
### Requirement: Ambiguous suggestions remain user-controlled
|
||||
The system SHALL keep the final saved category under user control for ambiguous or model-generated suggestions.
|
||||
|
||||
#### Scenario: User confirms model suggestion before save
|
||||
- **WHEN** the category suggestion comes from model inference instead of a deterministic rule
|
||||
- **THEN** the user can review and confirm or change the category before the expense is saved
|
||||
|
||||
#### Scenario: No cloud fallback is used
|
||||
- **WHEN** the local suggestion service is unavailable
|
||||
- **THEN** the system continues to allow manual category selection and does not send merchant data to a hosted provider
|
||||
@@ -1,11 +1,11 @@
|
||||
## ADDED Requirements
|
||||
|
||||
### Requirement: User can generate monthly AI insights on demand
|
||||
The system SHALL allow the user to manually generate AI insights for any month with existing or sparse data by sending structured monthly context to the configured `OpenAI` provider.
|
||||
The system SHALL allow the user to manually generate monthly AI insights for any month with existing or sparse data by sending structured monthly context to a fully offline local inference runtime.
|
||||
|
||||
#### Scenario: Insights are generated for a month with data
|
||||
- **WHEN** the user requests insight generation for a month with recorded activity
|
||||
- **THEN** the system sends monthly aggregates plus transaction samples to the AI service and returns a rendered narrative summary with structured supporting totals
|
||||
- **THEN** the system sends monthly aggregates plus transaction samples to the local AI service and returns a rendered narrative summary with structured supporting totals
|
||||
|
||||
#### Scenario: Prior month insights can be generated
|
||||
- **WHEN** the user requests insight generation for a previous month that has recorded data
|
||||
@@ -21,3 +21,10 @@ The system SHALL keep AI insight generation read-only and return a safe fallback
|
||||
#### Scenario: AI does not mutate financial records
|
||||
- **WHEN** the system generates or stores monthly insights
|
||||
- **THEN** no expense or paycheck records are created, updated, or deleted as part of that request
|
||||
|
||||
### Requirement: Insight generation remains private and resilient offline
|
||||
The system SHALL keep monthly insight generation fully offline and provide a clear fallback response when the local model runtime or selected model is unavailable.
|
||||
|
||||
#### Scenario: Local runtime is unavailable
|
||||
- **WHEN** the user requests monthly insights while the local AI runtime is not running or the configured model is unavailable
|
||||
- **THEN** the system returns a clear setup or availability message instead of attempting a cloud fallback
|
||||
|
||||
Reference in New Issue
Block a user