agent01 / src /models /index.ts
Auto Deployer
Add enterprise agents: log/code/reg endpoints
a273844
export interface BaseResponse {
schema_version: string;
agent_version: string;
prompt_version: string;
model_version: string;
}
export interface EvidenceChain {
source_type: string;
doc_name: string;
section: string;
excerpt: string;
basis_ref: string;
}
export interface PermissionItem {
name: string;
purpose: string;
trigger_page: string;
required: boolean;
}
export interface SdkItem {
name: string;
vendor: string;
purpose: string;
data_items: string[];
privacy_url: string;
}
export interface CaseContext {
case_id: string;
customer_id: string;
customer_name: string;
app_name: string;
business_line: string;
language: string;
materials: {
current_policy_text: string;
prd_text: string;
permission_items: PermissionItem[];
sdk_items: SdkItem[];
};
external_context: {
peer_updates: string[];
regulatory_updates: string[];
};
metadata: {
submitted_at: string;
source: string;
schema_version?: string;
agent_version?: string;
prompt_version?: string;
model_version?: string;
retry_count?: number;
};
}
export interface PeerRegSummary extends BaseResponse {
insufficient_context?: boolean;
peer_summary: string;
reg_summary: string;
reference_clauses: {
source: string;
source_metadata: {
institution?: string;
date?: string;
link?: string;
};
category: string;
topic: string;
clause: string;
requirement_level: 'mandatory' | 'recommended' | 'reference';
applicability_reason: string;
}[];
risk_alerts: string[];
}
export interface GapAnalysis extends BaseResponse {
insufficient_context?: boolean;
gaps: {
type: string;
severity: 'high' | 'medium' | 'low';
description: string;
evidence: EvidenceChain[];
}[];
rewrite_suggestions: {
section: string;
old_text: string;
new_text: string;
reason: string;
basis_refs: string[];
}[];
uncertain_items: {
category: string;
description: string;
}[];
redline_seed: {
full_revised_draft: string;
change_summary: string[];
redline_changes: {
section: string;
old_text: string;
new_text: string;
}[];
};
coverage_checklist: {
item: string;
covered: boolean;
reason?: string;
}[];
}
export interface ComplianceCheck extends BaseResponse {
insufficient_context?: boolean;
risk_levels: {
high: number;
medium: number;
low: number;
};
compliance_gaps: {
severity: 'high' | 'medium' | 'low';
item: string;
basis: string;
basis_id: string;
}[];
pending_legal_items: string[];
conclusion: string;
}
export interface LegalReviewPack extends BaseResponse {
legal_review_pack: {
background: string;
key_changes: string[];
risk_summary: string[];
pending_items: string[];
references: {
source: string;
url?: string;
details: string;
}[];
};
executive_summary: {
overall_risk: 'high' | 'medium' | 'low';
key_issues: string[];
recommendation: string;
};
delivery_summary: {
target_audience: string;
summary: string;
};
review_recommendation: 'suggest_approve' | 'suggest_reject' | 'suggest_more_material';
focus_items: {
priority: 'P0' | 'P1' | 'P2';
item: string;
reason: string;
}[];
}
export interface MissingMaterialItem {
material_type: string;
requirement_level: 'required' | 'optional' | 'conditional';
reason: string;
}
export interface NeedMoreMaterialResponse extends BaseResponse {
error_code: 'need_more_material';
message: string;
missing_materials: MissingMaterialItem[];
}
export interface LogAnalysisResult extends BaseResponse {
insufficient_context?: boolean;
summary: string;
error_patterns: {
pattern: string;
count: number;
first_seen?: string;
last_seen?: string;
level: 'high' | 'medium' | 'low';
sample_logs: string[];
}[];
timeline: {
time: string;
event: string;
}[];
possible_causes: {
cause: string;
confidence: 'high' | 'medium' | 'low';
evidence: string[];
}[];
suggested_actions: string[];
risks: {
risk: string;
level: 'high' | 'medium' | 'low';
suggestion: string;
}[];
need_human_review: boolean;
confidence?: 'high' | 'medium' | 'low';
evidence?: string[];
report_markdown: string;
}
export interface CodeSecurityResult extends BaseResponse {
insufficient_context?: boolean;
risk_summary: string;
vulnerabilities: {
type: string;
severity: 'critical' | 'high' | 'medium' | 'low' | 'info';
status: 'confirmed' | 'suspicious' | 'false_positive_candidate';
tool?: string;
file: string;
line: number;
rule_id: string;
description: string;
evidence: string;
impact: string;
fix_suggestion: string;
safe_example?: string;
}[];
fix_plan: string[];
compliance_notes: string[];
need_security_review: boolean;
confidence?: 'high' | 'medium' | 'low';
evidence?: string[];
report_markdown: string;
}
export interface RegulatoryPenaltySummary extends BaseResponse {
insufficient_context?: boolean;
topic: string;
summary: string;
risk_categories: {
category: string;
frequency: 'high' | 'medium' | 'low';
severity: 'high' | 'medium' | 'low';
description: string;
typical_cases: {
case_name: string;
regulator: string;
date: string;
source_url: string;
excerpt: string;
}[];
suggestions: string[];
}[];
top_risks: string[];
action_suggestions: string[];
references: {
source: string;
url: string;
details: string;
}[];
briefing_markdown: string;
}