feat(domain): F004 – expand domain model layer
- need.ts: add SizeRange, MustHaveCriterion, WeightedPreference types; extend Need with desiredLocation, sizeRange, mustHaveCriteria, weightedPreferences, status - futureSignal.ts: add SignalEvidence type; extend FutureSignal with title, evidence, matchabilityScore, reviewStatus - aiOutput.ts: new AIOutput entity with type, inputHash, outputJson, provider/model/promptVersion/schemaVersion, reviewStatus - activityEvent.ts: new ActivityEvent entity with actorId, action, entityType, entityId, timestamp, metadata - unifiedResult.ts: discriminated union (VerifiedPortfolioResult | ExternalMarketResult | FutureAvailabilityResult) - index.ts: export all three new files - Properties.tsx: add LIGHT_INDUSTRIAL + UNKNOWN cases to exhaustive switches Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
1 parent
3b45b0c121
commit
0b874865ba
10 files changed
+399
-40
No files matched your search
@@ -1,4 +1,4 @@
|
||||
import type { SignalType, RiskLevel } from './enums'
|
||||
import type { SignalType, RiskLevel, ReviewStatus } from './enums'
|
||||
|
||||
export interface SignalSource {
|
||||
type: 'PRESS' | 'CONSTRUCTION_PERMIT' | 'JOB_POSTING' | 'COMPANY_REPORT' | 'MARKET_DATA' | 'MANUAL'
|
||||
@@ -7,6 +7,12 @@ export interface SignalSource {
|
||||
credibility: 'LOW' | 'MEDIUM' | 'HIGH'
|
||||
}
|
||||
|
||||
export interface SignalEvidence {
|
||||
summary: string
|
||||
sourceUrls?: string[]
|
||||
extractedAt?: string
|
||||
}
|
||||
|
||||
export interface FutureSignal {
|
||||
id: string
|
||||
signalType: SignalType
|
||||
@@ -30,4 +36,10 @@ export interface FutureSignal {
|
||||
organizationId?: string
|
||||
createdAt: string
|
||||
updatedAt: string
|
||||
|
||||
// F004 additions
|
||||
title?: string // short human-readable headline
|
||||
evidence?: SignalEvidence // structured evidence block
|
||||
matchabilityScore?: number // 0–100: how well this signal can be matched to needs
|
||||
reviewStatus?: ReviewStatus
|
||||
}
|
||||
Reference in new issue
Block a user