diff --git a/03-file-less-coi.md b/03-file-less-coi.md new file mode 100644 index 0000000..6292dbf --- /dev/null +++ b/03-file-less-coi.md @@ -0,0 +1,6 @@ +### API that might create issues + + +- DEPRECATE `get-contract-date` +- **DISABLE**: `checklists/analyze` +- **DISABLE**: `` diff --git a/SYSTEM_DESIGN.md b/SYSTEM_DESIGN.md new file mode 100644 index 0000000..4468e50 --- /dev/null +++ b/SYSTEM_DESIGN.md @@ -0,0 +1,278 @@ +# Contract Analysis Platform - System Design + +## High-Level Architecture + +``` +┌─────────────────────────────────────────────────────────────────────────┐ +│ INGESTION LAYER │ +│ ┌──────────────┐ ┌──────────────┐ ┌──────────────┐ ┌─────────────┐ │ +│ │ Email Inbox │ │ Web Upload │ │ Bulk Import │ │ Integrations│ │ +│ │ (Graph API) │ │ │ │ (CSV/ZIP) │ │ (ERP/CRM) │ │ +│ └──────────────┘ └──────────────┘ └──────────────┘ └─────────────┘ │ +└─────────────────────────────────────────────────────────────────────────┘ + │ + ▼ +┌─────────────────────────────────────────────────────────────────────────┐ +│ PROCESSING LAYER │ +│ ┌──────────────────┐ ┌──────────────────┐ ┌──────────────────────┐ │ +│ │ Document Parser │ │ Contract Classifier││ Chunking Engine │ │ +│ │ (PDF/DOCX/Image) │ │ (Type Detection) ││ (Clause Extraction) │ │ +│ └──────────────────┘ └──────────────────┘ └──────────────────────┘ │ +└─────────────────────────────────────────────────────────────────────────┘ + │ + ▼ +┌─────────────────────────────────────────────────────────────────────────┐ +│ ANALYSIS LAYER │ +│ ┌──────────────────┐ ┌──────────────────┐ ┌──────────────────────┐ │ +│ │ Key Term Analysis│ │ Playbook Engine │ │ Checklist Engine │ │ +│ │ (AI Extraction) │ │ (Risk/Deviation) │ │ (Compliance Check) │ │ +│ └──────────────────┘ └──────────────────┘ └──────────────────────┘ │ +└─────────────────────────────────────────────────────────────────────────┘ + │ + ▼ +┌─────────────────────────────────────────────────────────────────────────┐ +│ OUTPUT LAYER │ +│ ┌──────────────────┐ ┌──────────────────┐ ┌──────────────────────┐ │ +│ │ Dashboard Views │ │ Reports/Exports │ │ Notifications │ │ +│ │ (Type-specific) │ │ (PDF/Excel) │ │ (Email/Webhook) │ │ +│ └──────────────────┘ └──────────────────┘ └──────────────────────┘ │ +└─────────────────────────────────────────────────────────────────────────┘ +``` + +--- + +## Core Entities + +### 1. Contract Type Hierarchy + +``` +ContractType +├── MSA (Master Service Agreement) +├── NDA (Non-Disclosure Agreement) +├── SOW (Statement of Work) +├── SLA (Service Level Agreement) +└── COI (Certificate of Insurance) + ├── Commercial (Retail, Office) + ├── Residential (Apartment, Condo) + ├── Contractor (General, Sub) + └── Vendor +``` + +### 2. Entity Relationship Diagram + +``` +Organization (1) + │ + ├── Team (N) ─────────────────┐ + │ │ │ + │ └── User (N) │ + │ │ + ├── Contract (N) ◄────────────┤ + │ │ │ + │ ├── ContractType │ + │ │ └── SubType │ + │ │ │ + │ ├── AnalysisResult (N)│ + │ │ ├── KeyTerms │ + │ │ ├── Risks │ + │ │ └── Scores │ + │ │ │ + │ └── Obligation (N) │ + │ ├── DueDate │ + │ └── Status │ + │ │ + ├── Playbook (N) ─────────────┤ + │ └── PlaybookClause (N)│ + │ │ + ├── Checklist (N) ────────────┤ + │ └── ChecklistItem (N) │ + │ │ + ├── KeyTermTemplate (N) │ + │ └── by ContractType │ + │ │ + └── Counterparty (N) + └── Contract (N) +``` + +--- + +## Entity Definitions + +### Organization +| Field | Purpose | +|-------|---------| +| id | Primary identifier | +| name | Organization name | +| settings | JSON config (integrations, email templates, reminder settings) | +| subscription_tier | Plan level (affects limits & features) | + +### Contract +| Field | Purpose | +|-------|---------| +| id | Primary identifier | +| organization_id | Tenant isolation | +| type | MSA/NDA/SOW/COI/SLA | +| subtype | Type-specific subtype (e.g., Commercial COI) | +| status | Draft/Active/Expired/Terminated | +| counterparty_id | Link to counterparty | +| effective_date | Start date | +| expiry_date | End date | +| source | Upload/Email/Integration | +| metadata | Type-specific extracted data (JSON) | + +### Counterparty +| Field | Purpose | +|-------|---------| +| id | Primary identifier | +| organization_id | Tenant isolation | +| name | Company/Individual name | +| type | Vendor/Tenant/Partner/Client | +| contact_info | Primary contact details | +| compliance_status | Overall compliance state | + +### KeyTermTemplate +| Field | Purpose | +|-------|---------| +| id | Primary identifier | +| contract_type | Which contract type this applies to | +| subtype | Optional subtype filter | +| key | Term name (e.g., "Liability Limit") | +| question | AI extraction prompt | +| category | Grouping (Coverage, Dates, Parties) | +| is_required | Mandatory for compliance | +| validation_rules | JSON rules for checking values | + +### Playbook +| Field | Purpose | +|-------|---------| +| id | Primary identifier | +| organization_id | Tenant isolation | +| name | Playbook name | +| contract_type | Applicable contract type | +| is_default | System default vs custom | + +### PlaybookClause +| Field | Purpose | +|-------|---------| +| id | Primary identifier | +| playbook_id | Parent playbook | +| key | Clause/term name | +| standard_language | Expected/acceptable language | +| risk_guidance | What to flag as risky | +| negotiation_tips | Suggested alternatives | + +### Checklist (COI-specific) +| Field | Purpose | +|-------|---------| +| id | Primary identifier | +| organization_id | Tenant isolation | +| name | Checklist name | +| subtype | COI subtype (Commercial/Residential/Contractor) | +| items | Required coverage items with thresholds | + +### Obligation +| Field | Purpose | +|-------|---------| +| id | Primary identifier | +| contract_id | Parent contract | +| type | Renewal/Payment/Deliverable/Review | +| due_date | When due | +| status | Pending/Completed/Overdue | +| assigned_to | User responsible | +| reminder_settings | When to notify | + +--- + +## Contract Type Specifics + +### COI Subtypes & Data Points + +| Subtype | Key Data Points | Dashboard Focus | +|---------|-----------------|-----------------| +| **Commercial** | GL Limits, Property, Workers Comp, Umbrella, Additional Insured, Lease Requirements | Tenant compliance grid, Expiry calendar | +| **Residential** | Renters Insurance, Personal Property, Liability, Loss of Use | Unit-level tracking, Renewal alerts | +| **Contractor** | GL, Workers Comp, Auto, Umbrella, Waiver of Subrogation, Per-Project endorsements | Project compliance, Active job tracking | +| **Vendor** | GL, Professional Liability, Cyber, Product Liability | Vendor scorecards, Risk tiering | + +### MSA/NDA/SOW Key Analysis Points + +| Type | Key Terms | Risk Areas | +|------|-----------|------------| +| **MSA** | Payment terms, IP ownership, Liability caps, Termination, Governing law | Unlimited liability, Auto-renewal, Broad indemnity | +| **NDA** | Definition of confidential, Duration, Exclusions, Return/Destroy | Perpetual terms, Broad definitions, Missing carve-outs | +| **SOW** | Scope, Deliverables, Timeline, Acceptance criteria, Change process | Scope creep, Vague acceptance, Missing milestones | + +--- + +## Dashboard Views + +### 1. Portfolio Overview (All Users) +- Contract count by type and status +- Upcoming expirations (30/60/90 days) +- Compliance score trend +- Recent activity feed + +### 2. COI Dashboard (Insurance-focused) +- Compliance grid: Counterparty × Coverage status +- Expiry heatmap calendar +- Non-compliant items requiring action +- Automated reminder status + +### 3. Contract Analysis View +- Side-by-side: Document ↔ Extracted data +- Risk flags with severity +- Deviation from playbook +- Suggested redlines + +### 4. Counterparty View +- All contracts with counterparty +- Compliance history +- Communication log +- Document timeline + +--- + +## Analysis Workflows + +### 1. COI Analysis Flow +``` +Upload/Email → Type Detection → Subtype Classification + → Checklist Selection (by subtype) + → Key Term Extraction → Compliance Check + → Generate Report → Notify Counterparty (if non-compliant) +``` + +### 2. MSA/SOW/NDA Analysis Flow +``` +Upload → Type Detection → Clause Chunking + → Playbook Selection → Risk Identification + → Deviation Scoring → Redline Suggestions +``` + +--- + +## Data Model Summary + +```sql +-- Core hierarchy +organizations (1) → teams (N) → users (N) + +-- Contract management +organizations (1) → counterparties (N) +organizations (1) → contracts (N) → contract_type + subtype +contracts (1) → analysis_results (N) +contracts (1) → obligations (N) +contracts (1) → activity_log (N) + +-- Analysis configuration +organizations (1) → playbooks (N) → playbook_clauses (N) +organizations (1) → checklists (N) → checklist_items (N) +contract_types (1) → key_term_templates (N) + +-- Results +contracts (1) → key_term_values (N) -- extracted values +contracts (1) → risk_flags (N) -- identified issues +contracts (1) → checklist_results (N) -- compliance status +``` + +--- diff --git a/wfo.md b/wfo.md new file mode 100644 index 0000000..033581f --- /dev/null +++ b/wfo.md @@ -0,0 +1,29 @@ +## Why WFO!? + +- Legalgraph is ready to pay house rents. +- Legalgraph is ready to pay for the food. + +## But We will be living in a PG!! :sob: + +- if apes are together strong thennnn +- rent a 2BHK and live good. +- rent will be splitted b/w 2, hence not much to pay for. + + +## So much LIFE!!! + +- good places to eat +- laughter clubs +- good cafes +- anytime blinkit anything because of GGN +- delhi just 1hr metro good stuff to do on weekends too +- concerts +- clubs + +## But in out timing of office might be noted + +- can do stuff at office too, order food and stuff!! +- mehh!! we will be leaving my 8 or 9 anyways!!! +- **there could be better interns at office for reviews.** +- ofc, backend team at office ez collab +- **Also other company ppl in GGN, we might bump into a guy who can refer us :sob:**