Ojas provides five capability areas. Each is a hard constraint of the runtime, not an optional feature. Together they form the guarantees the platform depends on.
Every run emits a structured proposal — or a structured error. Every proposal carries calibrated confidence, a validation result, an evidence report, and a full runtime trace. Confidence is calibrated against a regression corpus with a declared maximum age, uncalibrated confidence is ineligible for auto-approval.
Proposals are typed and machine-verifiable. External approval reads the evidence, not the prose.
Every agent is declared by a manifest: scope, allowed tools, declared task types, referenced policies, and pinned model versions. Manifests are reviewable like IAM policies, not free text. They use enforceable policy references, never prose goals or constraints.
Model version kind is explicit. Only pinned models qualify for auto-approval. Resolved and unknown model versions fall back to external review.
No agent and no domain pack reaches the active state without passing simulation. Each domain pack declares a regression corpus, failed corpus items block promotion until the failure is explicitly waived by a recorded approval decision.
Simulation runs the full envelope — sandbox, tools, gates, budgets — against held-out data. Results feed calibration. A failing regression is not a warning, it is a gate.
Capabilities are constant. What varies is the domain pack — the registered unit of work that declares task types, specialist agents, tools, and a regression corpus.