mirror of
https://github.com/x1xhlol/system-prompts-and-models-of-ai-tools.git
synced 2026-06-17 23:09:35 +00:00
1. GTM API Routes: 12 endpoints at /api/v1/gtm/* - company-intelligence, score-target, outreach-pack - compliance-check, classify-reply, next-action - daily-command-pack, targets, approvals - approve-action, log-outcome All registered in router.py 2. Governance Module: 4 files - approval_queue.py: add/approve/reject/get_pending - action_policy.py: policy per action type - audit_log.py: log every proposed action - risk_flags.py: HIGH/LOW risk classification 3. Proof Module: 3 files - evidence.py: VERIFIED/INFERRED/UNVERIFIED/LOW_CONFIDENCE - claim_validator.py: blocks fake claims - source_quality.py: rates source reliability 4. Customer Delivery: 2 files - customer_workspace.py: Pydantic model with onboarding checklist - customer_delivery_pipeline.py: create workspace + weekly report 5. All verified: 9/9 new imports pass, 30/30 evals, dry-run works https://claude.ai/code/session_01W1rJthWDkasijTdXCfxVHs
16 lines
576 B
Python
16 lines
576 B
Python
"""Audit log — records every proposed and executed action."""
|
|
import time
|
|
|
|
_log: list[dict] = []
|
|
|
|
def log_entry(company: str, action: str, channel: str = "", notes: str = "") -> dict:
|
|
entry = {"id": len(_log) + 1, "company": company, "action": action, "channel": channel, "notes": notes, "timestamp": time.time()}
|
|
_log.append(entry)
|
|
return {"logged": True, "entry_id": entry["id"]}
|
|
|
|
def get_log(limit: int = 50) -> list[dict]:
|
|
return _log[-limit:]
|
|
|
|
def get_log_for_company(company: str) -> list[dict]:
|
|
return [e for e in _log if e["company"] == company]
|