Early alpha. Not production-ready. No package publication or broad PHP compatibility claim.

Contract-only module

AI

Two small policy/proposal types that encode “model output is not authority.” There is no provider adapter, prompt runner, governed task journal, proposal-review workflow, or model execution in the current assembly.

Implemented surface

AiTaskPolicy records task type, authority class, whether human approval and evidence are required, and whether external data transfer is allowed. Create refuses a scientific-decision or external-action proposal when human approval is not required.

AiProposal<T> carries the policy, a typed value, evidence digests, and a non-default UTC creation time. It rejects invalid evidence digests and rejects an empty evidence set when the policy requires evidence.

There is no AcceptedAiProposal type in the current code. Human acceptance, rejection, partial acceptance, resulting domain command, and provenance are FE-11 work—not an implicit property of AiProposal<T>.

Authority classes

The enum names classify intended use; they do not execute enforcement beyond the policy factory’s approval check. Callers still need a future trusted task runner and domain-owned acceptance path.

Current flow and missing runtime

AiTaskPolicy.Create(...)
       |
       v
AiProposal<T>
  value + evidence digests + UTC time
       |
       X
no provider call
no context manifest
no schema parser
no acceptance record
no domain mutation

The project depends on Kernel and Provenance, but the current types do not append a provenance event. A project reference indicates the intended architecture, not completed governed execution.

FE-11 target—planned, not implemented

The roadmap places governed AI after plugin staging and provider/privacy boundaries. It calls for task-specific accepted schemas, exact context manifests, provider/model/version/parameter records, prompt/template digests, transfer and retention policy, cost and output digests, untrusted-output parsing, evidence citations, uncertainty, immutable proposals, and separate human acceptance or rejection.

CI must remain model-free and use recorded fixtures. The first target is a low-risk protocol clarification proposal, not autonomous Screening, Extraction, Appraisal, Synthesis, or external action.

See the FE-11 roadmap.

Failure states and extension rules

  • High-authority policy without human approval fails immediately.
  • Evidence-required proposal without evidence fails.
  • Invalid evidence digest or non-UTC/default time fails.
  • External transfer permission is only a policy value today; no privacy or provider enforcement exists.
  • Proposal value T is not schema-validated by this module.

Do not add a concrete SDK client to this domain package. Future provider code belongs in an outward adapter, while this owner defines task/context/proposal records and the separate human review contract.

Tests and explicit nonclaims

AI policy behavior has focused coverage in Core tests and architecture checks, but there is no completed FE-11 gate, governed-task fixture catalog, provider test harness, privacy review, or end-to-end acceptance evidence.

No model call, prompt execution, deterministic model replay, provider support, context selection, privacy enforcement, data transfer, output schema validation, factuality check, citation validation, proposal persistence, human acceptance, autonomous decision, external action, or PHP compatibility is claimed.