1. Introduction & Goals¶
What is Finnest?¶
Finnest (commercial name: Hexis) is an AI-native, multi-industry workforce management platform for Australian employers in compliance-heavy industries — labour hire, construction, healthcare, mining, security, and similar. It handles the full employment lifecycle: recruit, onboard, roster, timekeep, pay, and keep everyone compliant with Fair Work, state awards, and industry-specific credential regimes.
What makes it different from every incumbent (Deputy, Tanda, Employment Hero, Connecteam, ELMO, Rostering.com.au):
- AI-native by default. Every screen has a command bar (Cmd+K); every long-running task can be delegated to an autonomous agent; every domain publishes typed tools via Model Context Protocol so AI assistants act inside the business, not outside it.
- Compliance auto-blocking as a first-class architectural constraint. Non-compliant workers cannot be rostered, paid, dispatched, or given equipment — enforced synchronously, not via after-the-fact reporting.
- Dual deployment from one codebase. Commercial SaaS (Anthropic Direct) and IRAP-certified government-sensitive (AWS Bedrock Sydney) from the same Elixir release, via runtime configuration.
Why does it exist?¶
Two reasons, in order:
- Existing v2 product (
ASG Central, built on Laravel) has hit its architectural ceiling. Adding a new industry, integrating award interpretation, or rolling out AI agents each require cross-cutting rewrites. ADR-0011 records the decision to migrate to Elixir/Phoenix; ADR-002-F records the supervised-modular-monolith pattern that replaces the Laravel monolith. - AI-native workforce management is an emerging category with no dominant incumbent. Every competitor audited in brainstorm-12 treats AI as a bolted-on chat window. Finnest treats it as the primary interaction model.
Goals (NFR drivers)¶
The 19 architectural drivers that shape every structural decision are catalogued in full in architecture/architecture.md §Architectural Drivers. The top six, which dominate day-to-day trade-offs:
| Goal | What it means |
|---|---|
| Concurrent AI agent swarm | Hundreds of GenServer-based agents per node, per-agent fault isolation, hot code reload |
| IRAP OFFICIAL:Sensitive | Bedrock Sydney AI, 15-minute sessions, FIDO2 mandatory, ISM-listed security boundary |
| Compliance auto-blocking | Non-compliant workers blocked synchronously at write time in 5 domains |
| Multi-tenant isolation | org_id at every layer; agent processes never reused across tenants |
| AI cost ceiling | 70 %+ of queries handled at $0; per-org budget circuit-breaker |
| Multi-industry (10 profiles) | Industries are JSONB configuration, never code branches |
Stakeholders¶
| Role | Interest |
|---|---|
| HR administrators | Primary users — daily roster + compliance + payroll work |
| Workers / field staff | Mobile-first: accept shifts, clock in/out, update credentials |
| Clients (labour hire) | Approve workers, confirm timesheets, receive compliance evidence |
| Managers | Approve leave, dispatch jobs, read dashboards |
| Auditors (IRAP assessors) | Read-only access to immutable audit trail, compliance attestations |
| Regulators (Fair Work, WHS) | Automated data extracts and compliance reporting |
| Investors / board | High-level status; read this documentation |
Reading path for new stakeholders¶
Given Finnest's breadth, a brand-new reader should walk the documentation breadth-first, then depth:
- This page (1. Introduction)
- 3. System Context — 1 diagram + 1 page
- 5. Building Blocks — the 21 OTP apps at a glance
- Pick one module that matters to the reader and go deep via architecture/architecture.md or the companion docs
That sequence costs ~30 minutes and produces a defensible mental model.