Skip to content

TheGenXCoder/iar

Repository files navigation

IAR — Governance‑First AI Portfolio

An Elixir/OTP platform showcasing a portfolio powered by an AI chat assistant with continuous compliance, full traceability, and self‑improving agents.

Quick Start

  • Dev stack: make dev (frees port 4000, starts db/OPA, detects host Ollama, runs migrations, boots Phoenix).
  • Health: GET /api/health
  • Chat: POST /api/chat with JSON { "message": "..." } and header x-org-id.
  • Trace summary: GET /api/traces/:trace_id/summary.

Architecture (MVP)

  • Runtime: Phoenix API, OTP supervisors, Oban jobs, Postgres + pgvector, OPA, Ollama.
  • Orchestrator → Agents with plan/act/explain + decision records in audit.
  • Memory: vector (RAG) + relational graph. Multi‑tenant via Postgres RLS.

Dev Tooling

  • Scripts: bin/dev, bin/test, bin/stop, bin/port-kill.
  • Make targets: dev, testc, phx, format, lint, dialyzer.
  • CI: format, Credo, tests, Dialyzer, Sobelow.

Workflows

  • Issue‑first: open an Issue (Feature/Bug/Chore templates). Intake creates a branch and a draft PR (labeled needs-HIL).
  • PR template enforces Summary, Scope, Risk/Governance, Testing, and Checklist.

Links

  • Contributor Guide: AGENTS.md
  • Product Requirements: docs/PRD.md

Roadmap

  • M2: RAG embedding pipeline; SpreadsheetAgent (CSV→XLSX); PDFAgent; HttpFetch.
  • M3: OPA preflight in flows; HIL UI; trace viewer page.
  • M4: ToolSmith agent generation; auto PR + HIL gate.
  • M5: Observability (OTel, metrics); blue/green deploy docs.