Version: 1.2.0Documentation Index
Fetch the complete documentation index at: https://docs.encoreos.io/llms.txt
Use this file to discover all available pages before exploring further.
Last Updated: 2026-02-15
Status: π‘ In Progress (IT-01 Complete, Phase B Events Implemented) This document defines all integration contracts for the IT (Information Technology) core module.
Overview
The IT module (IT-01 through IT-06) provides Information Technology management capabilities including asset management, support ticketing, vendor management, software licensing, security compliance, and procurement. This document specifies all events published, APIs exposed, and platform layers consumed.Status Legend
- β Implemented - Fully implemented and tested
- π Planned - Specified but not yet implemented
- π‘ In Progress - Partially implemented
Event Contracts
IT-01: Asset Purchased Event
Event:it_asset_purchasedPublisher: IT (IT-01 Asset Management)
Subscribers: FA (Finance - asset capitalization)
Status: β Implemented
Last Verified: 2026-02-15
Spec Reference: IT-01 IT Asset Management Payload Schema:
- FA: Create fixed asset record for capitalization if cost exceeds threshold
- FA: Record asset depreciation schedule
IT-01: Asset Assigned Event
Event:it_asset_assignedPublisher: IT (IT-01 Asset Management)
Subscribers: PF-10 (Notifications), HR
Status: β Implemented (channel:
it_events, trigger on it_asset_assignments)
Spec Reference: IT-01 IT Asset Management
Payload Schema:
- PF-10: Notify employee of new asset assignment
- HR: Update employee equipment inventory
IT-01: Asset Maintenance Required Event
Event:it_asset_maintenance_requiredPublisher: IT (IT-01 Asset Management)
Subscribers: FM (Facilities - for work orders), PF-10 (Notifications)
Status: π‘ In Progress (DB triggers pending) Spec Reference: IT-01 IT Asset Management Payload Schema:
- FM: Create work order for physical maintenance
- PF-10: Notify IT manager of maintenance request
IT-01: Asset Disposed Event
Event:it_asset_disposedPublisher: IT (IT-01 Asset Management)
Subscribers: FA (Finance), GR (Governance - for compliance tracking)
Status: β Implemented
Last Verified: 2026-02-15
Spec Reference: IT-01 IT Asset Management Payload Schema:
- FA: Remove from fixed asset register, record disposal transaction
- GR: Log compliance record for data destruction (if applicable)
IT-02: Ticket Created Event
Event:it_ticket_createdPublisher: IT (IT-02 Support Ticketing)
Subscribers: PF-10 (Notifications)
Status: β Implemented (channel:
it_events, trigger on it_tickets INSERT)Spec Reference: IT-02 IT Support & Ticketing Payload Schema:
- PF-10: Notify IT support team of new ticket
- PF-10: Send confirmation to requester
IT-02: Ticket Status Changed Event
Event:it_ticket_status_changedPublisher: IT (IT-02 Support Ticketing)
Subscribers: PF-10 (Notifications)
Status: β Implemented
Last Verified: 2026-02-15
Spec Reference: IT-02 IT Support & Ticketing Payload Schema:
- PF-10: Notify requester of status change
- PF-10: Notify assignee of assignment (if newly assigned)
IT-02: SLA Breached Event
Event:it_sla_breachedPublisher: IT (IT-02 Support Ticketing)
Subscribers: PF-10 (Notifications), IT-02 Dashboard
Status: π Planned
Spec Reference: IT-02 IT Support & Ticketing Payload Schema:
- PF-10: Alert IT manager and assigned technician
- IT-02: Update SLA metrics on dashboard
IT-03: Contract Expiring Event
Event:it_contract_expiringPublisher: IT (IT-03 Vendor Management)
Subscribers: PF-10 (Notifications)
Status: β Implemented (channel:
it_events, trigger when expiration within 90 days)Spec Reference: IT-03 IT Vendor Management Payload Schema:
- PF-10: Notify procurement and IT manager at 90/60/30/14/7 days
IT-04: License Created Event
Event:it_license_createdPublisher: IT (IT-04 Software License Management)
Subscribers: FA (Finance - for cost tracking)
Status: π Planned
Spec Reference: IT-04 Software License Management Payload Schema:
license_keyis a sensitive credential and MUST NOT be logged or exposed in error messages- Consider storing a reference ID instead of the actual key in event payloads
- Mask license_key in all observability and debugging outputs
- FA: Record software asset/expense
IT-04: License Expiring Event
Event:it_license_expiringPublisher: IT (IT-04 Software License Management)
Subscribers: PF-10 (Notifications)
Status: β Implemented (channel:
it_events, trigger when expiry within 90 days)Spec Reference: IT-04 Software License Management Payload Schema:
- PF-10: Notify IT manager and procurement at 90/60/30/14/7 days
IT-04: License Renewed Event
Event:it_license_renewedPublisher: IT (IT-04 Software License Management)
Subscribers: FA (Finance - for renewal costs)
Status: β Implemented
Last Verified: 2026-02-15
Spec Reference: IT-04 Software License Management Payload Schema:
- FA: Record renewal expense
IT-04: License Compliance Alert Event
Event:it_license_compliance_alertPublisher: IT (IT-04 Software License Management)
Subscribers: PF-10 (Notifications)
Status: π Planned
Spec Reference: IT-04 Software License Management Payload Schema:
- PF-10: Alert IT manager and compliance officer
- IT-04: Update compliance dashboard
IT-05: Security Incident Created Event
Event:it_security_incident_createdPublisher: IT (IT-05 Security & Compliance)
Subscribers: GR (Governance & Risk), PF-10 (Notifications)
Status: π Planned
Spec Reference: IT-05 IT Security & Compliance Payload Schema:
- GR: Log compliance incident for regulatory reporting
- PF-10: Alert security team and management based on severity
IT-05: Critical Vulnerability Detected Event
Event:it_critical_vulnerability_detectedPublisher: IT (IT-05 Security & Compliance)
Subscribers: GR (Governance), PF-10 (Notifications)
Status: π Planned
Spec Reference: IT-05 IT Security & Compliance Payload Schema:
- GR: Track for compliance reporting
- PF-10: Alert security team (critical = immediate)
IT-05: Patch Deployment Overdue Event
Event:it_patch_deployment_overduePublisher: IT (IT-05 Security & Compliance)
Subscribers: PF-10 (Notifications)
Status: π Planned
Spec Reference: IT-05 IT Security & Compliance Payload Schema:
- PF-10: Alert IT security team and manager
IT-06: Purchase Request Submitted Event
Event:it_purchase_request_submittedPublisher: IT (IT-06 Procurement)
Subscribers: FW-34 (Approval Workflows), PF-10 (Notifications)
Status: β Implemented (channel:
it_events, trigger when approval_status = submitted)Spec Reference: IT-06 IT Procurement Payload Schema:
- FW-34: Initiate approval workflow based on cost thresholds
- PF-10: Notify approvers
IT-06: Purchase Request Approved Event
Event:it_purchase_request_approvedPublisher: IT (IT-06 Procurement)
Subscribers: FA-04 (Purchase Orders), PF-10 (Notifications)
Status: β Implemented (channel:
it_events, trigger when approval_status = approved)Spec Reference: IT-06 IT Procurement Payload Schema:
- FA-04: Create purchase order
- PF-10: Notify requester of approval
IT-06: Purchase Request Received Event
Event:it_purchase_request_receivedPublisher: IT (IT-06 Procurement)
Subscribers: IT-01 (Asset creation), PF-10 (Notifications)
Status: π Planned
Spec Reference: IT-06 IT Procurement Payload Schema:
- IT-01: Create asset records for received hardware
- PF-10: Notify requester of receipt
API Contracts
IT-01: Asset Lookup API
Endpoint:GET /api/v1/it/assets/{asset_id}Method: GET
Provider: IT (IT-01 Asset Management)
Consumer: IT-02 (ticket linking), IT-05 (security tracking)
Status: π Planned
Spec Reference: IT-01 IT Asset Management Purpose: Lookup IT asset details for ticket linking and security tracking. Request:
asset_id(required): UUID of asset
404 Not Found: Asset not found403 Forbidden: User does not have access to asset500 Internal Server Error: Internal IT error
Rate Limiting: 100 requests/minute per organization
Version: v1.0.0 (planned)
IT-01: Asset Search API
Endpoint:GET /api/v1/it/assetsMethod: GET
Provider: IT (IT-01 Asset Management)
Consumer: IT-02, IT-04, IT-05, IT-06
Status: π Planned
Spec Reference: IT-01 IT Asset Management Purpose: Search and filter IT assets. Request:
asset_type(optional): Filter by asset typestatus(optional): Filter by statussite_id(optional): Filter by siteassigned_to(optional): Filter by assigned employee IDsearch(optional): Search by asset tag, name, or serial numberpage(optional): Page number (default: 1)page_size(optional): Results per page (default: 50, max: 100)
Rate Limiting: 100 requests/minute per organization
Version: v1.0.0 (planned)
IT-03: Vendor Lookup API
Endpoint:GET /api/v1/it/vendors/{vendor_id}Method: GET
Provider: IT (IT-03 Vendor Management)
Consumer: IT-01, IT-04, IT-06
Status: π Planned
Spec Reference: IT-03 IT Vendor Management Purpose: Lookup IT vendor details for asset, license, and procurement linking. Request:
vendor_id(required): UUID of vendor
404 Not Found: Vendor not found403 Forbidden: User does not have access to vendor500 Internal Server Error: Internal IT error
Rate Limiting: 100 requests/minute per organization
Version: v1.0.0 (planned)
IT-04: License Compliance Check API
Endpoint: Database functionit_check_license_compliance()Provider: IT (IT-04 Software License Management)
Consumer: IT-04 dashboard, scheduled compliance checks
Status: π Planned
Spec Reference: IT-04 Software License Management Purpose: Check license compliance for a software license or all licenses. Function Signature:
- Function is
SECURITY DEFINERto avoid RLS recursion - Always uses
SET search_path = publicfor security - Returns only licenses within organization context
Platform Integration Layer Usage
Platform Layers Used by IT Module
| Layer | Spec | Usage | Consuming Specs |
|---|---|---|---|
| Forms (PF-08) | PLATFORM_INTEGRATION_LAYERS.md | Ticket submission forms, Purchase request forms | IT-02, IT-06 |
| Workforce | PLATFORM_INTEGRATION_LAYERS.md | Employee assignments for assets, ticket assignments | IT-01, IT-02 |
| Data Lookup (PF-15) | PLATFORM_INTEGRATION_LAYERS.md | Asset, vendor, employee selectors | IT-01, IT-02, IT-03, IT-06 |
| Custom Fields (PF-16) | PLATFORM_INTEGRATION_LAYERS.md | Org-specific metadata on all IT entities | All IT specs |
| Notifications (PF-10) | PLATFORM_INTEGRATION_LAYERS.md | SLA alerts, expiration alerts, compliance alerts, security alerts | All IT specs |
| Documents (PF-11) | PLATFORM_INTEGRATION_LAYERS.md | Warranties, manuals, ticket attachments, contracts | IT-01, IT-02, IT-03 |
| Approval Workflows (FW-34) | CROSS_CORE_INTEGRATIONS.md | Purchase request approvals | IT-06 |
Internal IT Module Integrations
The IT module has several internal integrations between its own specs:| From | To | Type | Description |
|---|---|---|---|
| IT-02 | IT-01 | API | Tickets link to assets for context |
| IT-04 | IT-01 | API | Licenses assigned to assets |
| IT-04 | IT-03 | API | Licenses linked to vendors |
| IT-05 | IT-01 | API | Security patches target assets |
| IT-05 | IT-02 | Event | Security incidents may create tickets |
| IT-06 | IT-01 | Event | Received purchases create assets |
| IT-06 | IT-03 | API | Purchase requests select vendors |
| IT-06 | IT-04 | Event | Received purchases create licenses |
Cross-Core Dependencies
IT Module Depends On:
- PF-01 (Organizations & Sites): Multi-tenant context for all IT entities
- PF-02 (RBAC): Role-based access control for IT functions
- HR-01 (Employee Directory): Employee lookup for asset assignment
- FA-04 (Purchase Orders): PO creation from approved IT purchases
Cores That Depend on IT Module:
- FM (Facilities): May receive IT asset maintenance requests
- GR (Governance): Receives security incidents and compliance data
- FA (Finance): Receives asset capitalization and expense data
Event Summary Table
| Event | Publisher | Subscribers | Status |
|---|---|---|---|
it_asset_purchased | IT-01 | FA | β Implemented |
it_asset_assigned | IT-01 | PF-10, HR | β Implemented |
it_asset_maintenance_required | IT-01 | FM, PF-10 | π‘ In Progress |
it_asset_disposed | IT-01 | FA, GR | β Implemented |
it_ticket_created | IT-02 | PF-10 | β Implemented |
it_ticket_status_changed | IT-02 | PF-10 | β Implemented |
it_sla_breached | IT-02 | PF-10, IT-02 | π Planned |
it_contract_expiring | IT-03 | PF-10 | β Implemented |
it_license_created | IT-04 | FA | π Planned |
it_license_expiring | IT-04 | PF-10 | β Implemented |
it_license_renewed | IT-04 | FA | β Implemented |
it_license_compliance_alert | IT-04 | PF-10 | π Planned |
it_security_incident_created | IT-05 | GR, PF-10 | π Planned |
it_critical_vulnerability_detected | IT-05 | GR, PF-10 | π Planned |
it_patch_deployment_overdue | IT-05 | PF-10 | π Planned |
it_purchase_request_submitted | IT-06 | FW-34, PF-10 | β Implemented |
it_purchase_request_approved | IT-06 | FA-04, PF-10 | β Implemented |
it_purchase_request_received | IT-06 | IT-01, PF-10 | π Planned |
it_report_generated | IT-07 | PF-10, PF-11 | π Planned |
it_report_failed | IT-07 | PF-10 | π Planned |
it_provisioning_started | IT-08 | HR-03, PF-10 | β Implemented |
it_provisioning_completed | IT-08 | HR-03, PF-10 | β Implemented |
it_account_provisioned | IT-08 | PF-10, Audit | β Implemented |
it_account_deactivated | IT-08 | PF-10, Audit, GR | β Implemented |
it_change_submitted | IT-09 | PF-10 | π Planned |
it_change_approved | IT-09 | PF-10 | β Implemented |
it_change_rejected | IT-09 | PF-10 | π Planned |
it_change_scheduled | IT-09 | PF-10 | π Planned |
it_change_implemented | IT-09 | PF-10, IT-07 | π Planned |
it_change_rolled_back | IT-09 | PF-10, GR, IT-02 | π Planned |
it_cab_review_required | IT-09 | PF-10 | π Planned |
API Summary Table
| Endpoint | Method | Provider | Consumers | Status |
|---|---|---|---|---|
/api/v1/it/assets/{asset_id} | GET | IT-01 | IT-02, IT-05 | π Planned |
/api/v1/it/assets | GET | IT-01 | IT-02, IT-04, IT-05, IT-06 | π Planned |
/api/v1/it/vendors/{vendor_id} | GET | IT-03 | IT-01, IT-04, IT-06 | π Planned |
it_check_license_compliance() | DB Function | IT-04 | IT-04 Dashboard | π Planned |
/api/v1/it/dashboard/summary | GET | IT-07 | IT Dashboard | π Planned |
/api/v1/it/dashboard/widgets/:widget_id | GET | IT-07 | IT Dashboard | π Planned |
/api/v1/it/reports/run/:report_id | POST | IT-07 | Report Builder | π Planned |
/api/v1/it/reports/:run_id/download | GET | IT-07 | Report Viewer | π Planned |
/api/v1/it/onboarding/pending | GET | IT-08 | IT Onboarding Dashboard | π Planned |
/api/v1/it/onboarding/:id/complete-task | POST | IT-08 | Task Completion | π Planned |
/api/v1/it/offboarding/pending | GET | IT-08 | IT Offboarding Dashboard | π Planned |
/api/v1/it/accounts/:employee_id/provision | POST | IT-08 | Account Provisioning | π Planned |
/api/v1/it/accounts/:account_id/deactivate | POST | IT-08 | Account Deactivation | π Planned |
IT-08 Events (Onboarding/Offboarding)
IT-08: Provisioning Started Event
Event:it_provisioning_startedPublisher: IT (IT-08)
Subscribers: HR-03, PF-10
Status: β Implemented
Last Verified: 2026-02-15 Implementation:
IT-08: Provisioning Completed Event
Event:it_provisioning_completedPublisher: IT (IT-08)
Subscribers: HR-03, PF-10
Status: β Implemented
Last Verified: 2026-02-15 Implementation: Same trigger as above; fires when status changes to βcompletedβ.
IT-08: Account Provisioned Event
Event:it_account_provisionedPublisher: IT (IT-08)
Subscribers: PF-10, Audit
Status: β Implemented
Last Verified: 2026-02-15 Implementation:
IT-08: Account Deactivated Event
Event:it_account_deactivatedPublisher: IT (IT-08)
Subscribers: PF-10, Audit, GR
Status: β Implemented
Last Verified: 2026-02-15 Implementation: Same trigger as above; fires when status changes to βdeactivatedβ.
Related Documentation
- IT-01 IT Asset Management Spec
- IT-02 IT Support & Ticketing Spec
- IT-03 IT Vendor Management Spec
- IT-04 Software License Management Spec
- IT-05 IT Security & Compliance Spec
- IT-06 IT Procurement Spec
- IT-07 IT Dashboard & Reporting Spec
- IT-08 IT Onboarding/Offboarding Spec
- IT-09 IT Change Management Spec
- IT Implementation Log
- Event Contracts
- API Contracts
- Cross-Core Integrations
Last Updated: 2026-02-15
Next Review: After IT-02 Implementation