Status + roadmap
Built end-to-end. Live and verified. 284 vitest assertions across 14 test files, ~9,000 lines of production TypeScript, ~3,000 of tests, ~2,500 of wiki + UI.
Shipped
The git log is the changelog — here's the highlight reel, organized by epoch.
Foundation (June 2026, weeks 1–2)
seed: accelerando, git-backed—.agirecord codec,GitStoreCRUD,SqliteBackendprojection, vitest suitescaffold the workers adapter alongside node—StorageBackend/ProjectionBackendinterfaces,R2Backend+D1Backend,src/worker.tsentry,wrangler.tomlreconcile R2 commit-log into real github history—GitHubSyncerand the*/15cron; one real GitHub commit per tick batches all the writes since the last successful runderive entity specs from the .agi schema itself—src/agi-parser.tsatomic create_invoice_with_lines—GitStore.transactionoptimistic concurrency on R2 — losers explode loudly— ETag + If-Matchper-tenant API keys: the key implies the tenant—tenant_keysD1 table, route-level enforcement
Surfaces — first ERP shape
babyai tool surface— first four invoice toolsextend the catalog: customer, line items, tickets— eleven toolsthe questions a small-business owner actually asks— three aggregations, fifteen tools totalui: navy + gold dashboard, served from /— single-file HTML SPA at rootui: create forms + drawers— modal forms with dynamic line itemsthe git log made visible: activity feed—/activitytenant-scoped
Books — double-entry on git
- Vendor + Bill entities (the AP side of AR)
- JournalEntry + JournalLine + ChartOfAccount + BankTransaction
- AR aging + AP aging + revenue_by_month + trial_balance + profit_and_loss
- Period close (with reopen) — locks journal writes against closed periods
- Auto-post on invoice/bill status transitions (configurable per tenant)
- Sales tax — output VAT on invoices (Cr Revenue net + Cr SalesTaxPayable), input VAT on bills (Dr Expense net + Dr TaxReceivable)
- Multi-currency display via
Intl.NumberFormat; tenant base_currency - Recurring invoices + recurring bills (cron-driven monthly emission)
- Bulk mark-paid on bills, print-friendly invoice + bill views, email invoice via Resend
- CSV export on invoices / bills / customers / vendors
- Quote → Invoice conversion — atomic, bidirectional back-link, refuses double-billing
SPC dashboard — doc-14 made operational
audit_logtable — every tool call writes one row (content-free; structural output hash)composition_idpropagation viaX-Workflow-Idheader- Per-tool Stats: count, success_rate, p50/p95/avg latency, 3σ UCL, anomaly count
- Inline latency sparkline with σ control bands (1σ green / 2σ amber / 3σ red), mean line, dashed UCL
- Western Electric rules 1-4 (>3σ, 2-of-3 beyond 2σ, 4-of-5 beyond 1σ, 8 on a side)
- Per-workflow stats joined to Workflow names; drill-down modal with audit slice
- Signal-4 —
human_verdictcolumn + verdict capture buttons + accept_rate aggregation - Sampling-rate recommendation that respects the semantic floor (no drop below 20% sampling without ≥5 reviews + ≥95% acceptance)
- Drift heuristic: success<95% / p95>5×p50 / WE-rule fires
Top nav — modules + palette
- Top module bar (Alt+S/P/B/O/T/Q/L/A) replacing the flat sidebar
- ⌘K command palette: jump-to-anywhere fuzzy search across modules, pages, recent records
- Palette actions: Create / Export / Send / Run / Start workflow from template
- Section grouping +
>prefix scopes to actions - Module status badges: unpaid invoices, open bills, drift-flagged tools
- Nav-state persistence (active view + per-module last-view survive reloads)
Workflows — the SPC unit
Workflowentity + start/complete/abandon tools- Active-workflow chip in the header with pulsing-dot indicator
- Per-tenant localStorage persistence +
X-Workflow-Idpropagation on every API call WorkflowTemplate— predefined workflow shapes withexpected_tools[]- Settings card to author templates; palette command to start from template
- Workflow progress drawer: expected vs fired tools side-by-side, recent activity, Complete/Abandon
- Workflow history report in Reports view: per-template duration drift (⚠ when last run >50% above median)
Training — Compliance LMS
- 6 entities: ComplianceDomain, Question, LearnerProfile, ComplianceScore, DailyAssessment, AssessmentResponse
src/lms.ts— EMA scoring (0.85 prior · 0.15 result × 100), status ladder, points + streak math, weak-subtopic-aware question picker- 12 tools driving the daily loop: domains, questions, learners, scores, assessment start/submit/complete, history, dept rollup
- "Today's questions" UI — pick a learner, get the daily-3, see the explanation immediately on every wrong answer
- Compliance dashboard — department × domain rollup + score-over-time sparkline per learner per domain with passing/critical threshold lines + ⚠ drift flag
Quality — QMS + PI-CoE unified
- 5 entities: Defect, RootCause, CorrectiveAction, ProcessMetric, MetricReading
- Defect is lane-agnostic — source ∈ human/system/ai, with composition_id + audit_log_id back-links for AI-source
- Full loop: defect → root cause → CAPA → effectiveness check; ineffective re-opens defect as 'recurring' (systemic)
src/qms.ts— sustainability EMA with decay-per-week, Nelson Rules (1: >3σ, 2: 9 same-side, 3: 6 monotonic)- ProcessMetric sparkline against target + critical thresholds; reading drawer with inline record-form
- Operator Scorecard — per-actor composite blending AI tool-call SPC (40%) + defects (20%) + CAPA effectiveness (20%) + LMS compliance (20%); lanes drop out if no data and weights re-normalize
Legal — eDiscovery + Hygiene Scanner
- 4 entities: LegalMatter, LegalHold, HoldCustodian, LegalHygieneFlag
- 11 tools for the matter → hold → custodian → ack flow + the proactive scanner
src/legal.ts— six README hygiene patterns (noncompliance, litigation_anticipation, cover_up, privilege_waiver, hr_liability, sales_warranty_contradiction) as deterministic regex- Hygiene Scanner UI — paste any text, 250ms-debounced live scan, big risk-score number eroding from 100, per-match cards with highlighted excerpt + alert message, "Log this scan" persists to the review queue
- Matter drawer with the trigger-hold workflow + custodian acknowledged/preserved tracking + hygiene flags tied to this matter
Toast + verdict UI + drill-downs
- Toast helper (bottom-right, auto-dismiss) for async palette actions
- Per-row verdict ✓/✗ buttons on Tool calls tab + workflow drawer; optimistic in-place re-render after stamp
- Per-tool drill-down modal: full 720×220 control chart + the last 500 invocations
- Per-workflow drill-down modal: audit_log slice for one composition_id
- Recently-opened records cached per-tenant in localStorage; surfaced in the palette
Live infrastructure
| Thing | Where | | ----------------------------- | --------------------------------------------------------------- | | Worker | accelerando.chrisbender999.workers.dev | | R2 bucket | accelerando-tree (WNAM) | | D1 database | accelerando-projection (ENAM) | | Cron | */15 * * * * reconcile R2 → GitHub | | Source | github.com/Trikulture-Kyokai-Synthetica/accelerando | | Activity | Real git commits on main from the syncer + human commits |
Deliberate extension points
Open-source imperfection is a feature here. The next contributor (or future me) should find obvious places to plug in. Many of the originals are now shipped — these are the current ones:
- Schema migration handling. Adding a field to an
ENTITYblock still doesn't auto-ALTER TABLEthe projection —ensureTablehandles fresh tables. A futurereconcileSchemastep would diff live D1 columns against the spec and emit ALTERs. - Browser backend. A third runtime pair —
OpfsBackend+SqlJsBackend— would let a single-tenant install run with no server. Local-first ERP. - SPC dashboard — full control charts. Per-tool drill-down already shows the chart; the persistent multi-rule dashboard with stored historical baselines is the natural next visualization layer.
- Workflow LoRA integration. The audit_log + composition_id substrate is ready for AI-driven workflow execution; the BabyAI workflow-LoRA layer is the consumer.
- Audit-log retention policy — content-free rows are cheap but unbounded. A periodic compactor that retains aggregates beyond a window is the SPC-grade move.
- Legal Layer 1 — connectors + production sets. The reactive eDiscovery side has matter / hold / custodian tracking;
ExternalConnector+DocumentCollection+PrivilegeLogEntry+ProductionSetfrom the agicore-examplesaccelerando_legal.agiare the obvious next entities. - QMS Layer 2 — Audit / ManagementReview / DocumentControl / Calibration. The shared Defect spine handles the loop today; the ISO-9001 surrounding clauses (audits, reviews, document control, calibration) sit atop it.
- PI-CoE Layer 2 — KaizenEvent / ControlPlan / FiveSSurvey / BeltCertification / LessonsLearned. Same shape — extends the existing ProcessMetric + Defect spine.
- Tenant-configurable hygiene patterns. Six built-in patterns in
src/legal.ts; aHygienePatternentity would let tenants author industry-specific patterns at runtime.
What this is
A portfolio piece, but a working one. The Worker takes traffic. The cron runs every fifteen minutes. The git log on Trikulture-Kyokai-Synthetica/accelerando includes commits authored by the Worker itself — accelerando-syncer is the committer name on the batch: entries.
If you got this far through the wiki, you've got the whole architecture. The code is open. Forking it for your own ERP shape — invoices replaced with something else, line items replaced with something else, new modules layered on the same Defect/Workflow/AuditLog spine — is the obvious next move, and the abstractions were chosen with that in mind.
Want one of your own?
The demo runs on my Cloudflare free tier. It is not intended for running a real business off — your sandbox tenant is in the same R2 bucket as everyone else's, and the cron sync pushes everything to a public GitHub repo. That's fine for kicking the tires; it's wrong for AR.
If the architecture lands and you want an instance built and deployed against your real data — your own Cloudflare account, your own private GitHub repo, your own domain, your own ENTITY blocks — that's a Build Day engagement. The pitch + booking link is at binary-blender.com/accelerando.
— Christopher Bender, binary-blender.com · github.com/Trikulture-Kyokai-Synthetica