Implementation duties
Must store
Store Worker, Actor, WorkSession, JarvisEvent, Policy, PolicyDecision, Request, Review, Takeover, Contribution, EvidenceManifest, LearningRecord, MemoryProposal, SkillProposal, and OutcomeReport records.
Must emit
Emit append-only events for accepted WorkSession-scoped state changes and preserve Actor, revision, and previous event hash linkage.
Must validate
Validate mutation headers, read headers, Actor authority, path/body identity, actor/body identity, required fields, enum values, and forbidden export fields.
Must reject
Reject missing PolicyDecision, unresolved Request, missing Review or Takeover resolution, stale Takeover continuation, sealed WorkSession mutation, sealed EvidenceManifest mutation, silent memory mutation, and silent skill activation.
Mutation header contract
Every WorkSession-scoped mutating operation MUST include:
Jarvis-Protocol-Version
Jarvis-Actor-Id
Jarvis-Idempotency-Key
Jarvis-Request-Timestamp
Jarvis-Expected-WorkSession-Revision
Jarvis-Previous-Event-Hash
Worker registration, Actor registration, and OutcomeReport submission are non-WorkSession protocol mutations. They require protocol version, Actor id, idempotency key, and request timestamp.
Operation order
- Register Worker and Actor refs.
- Create WorkSession under human-defined Policy.
- Record PolicyDecision before an AgentWorker action becomes accepted protocol state.
- Create Request when the AgentWorker is blocked.
- Resolve Request through Review or Takeover.
- Record Contribution, EvidenceManifest refs, governed LearningRecord, and governed proposals.
- Submit OutcomeReport after the source WorkSession is terminal.
Host boundary
- Hosts own UI, auth, storage, runtime behavior, model routing, tool execution, billing, scoring, payment, deployment, monitoring, and host workflow.
- Jarvis records protocol state and portable evidence.
- Protocol helpers validate records; they do not run the work.
Source contracts