Work docs

suiss Work · Docs

Security and trust

The Work trust model: security invariants, data versus instruction, the credential boundary, approval surfaces, and what Work does and does not claim.

Work is in development. This page describes the planned security model, which may change.

Starting assumptions

  • Work does not assume good faith. People, agents, operators, executors, federation counterparties and suiss services can all be malicious, compromised, mistaken or stale.
  • Authority is never born in Work. Identity, authority, revocation, step-up and approval authority live in Access. Forced stops live in Access and the executor. Work can only narrow authority, add a gate or record coordination. It can never create, widen or bypass authority.
  • Cryptographic authenticity is not semantic truth. A valid signature, a valid record order or a valid receipt does not mean the content is true, appropriate or authorized.
  • Language never claims more than the guarantee. Every claim below belongs to a guarantee class, and product text, API field names and documentation never say something more strongly than its class allows.

Security invariants

These rules bind every part of Work and are designed to be enforced by types, database constraints or rule tests wherever possible.

InvariantMeaning
Content grants no authorityNo text, document, tool output, chat message or model output creates authority
Instructions come from originWhether something is an acceptable instruction depends on where it came from, not on prompt order, position or what the prose claims
Delegation never grows authorityScope, target, duration, assurance, depth and disclosure stay the same or narrow
One declared capacity per consequential actIf Work says "A, on behalf of P", the authority A used in Access must be exercised for P. Acting in your own capacity can never be shown as acting for the principal
A signature shows authorship, not truthBeing in the ledger shows existence and order, not correctness
Revocation changes future authority; it is not proof of a physical stopNo surface presents "authority revoked" as if execution had halted
The interface promises only what the control contract providesPause, cancel, take over, interrupt and roll back are offered only if the executor declares them; otherwise they are hidden or clearly marked unsupported
Unknown is a first-class resultNo report means unknown or stale, not "in progress". Authority that cannot be verified is never shown as authorized
Evidence strength comes from origin and independence, not countAn agent's self-reported confidence never affects evidence strength or ranking
Silence is not approvalImplicit acceptance rests only on an explicit prior statement from the obligee and is written as a separate record marked implicit
High-impact approval happens on a trusted, structured surfaceAgent prose and notification actions can never define the canonical approval
A requester cannot declare their own request urgent or unmutableUrgency and severity are derived from records and consequences
Secrets never enter Work recordsA leaked secret is fixed by rotating it, not only by redaction
Disclosure to a new recipient, processor or trust boundary is explicit and high impactIt needs an attributable disclosure record and a live Access check
Consequential execution is bound to a one-time authority context and an idempotency keyThe authority context is single use, and the request carries an idempotency key
Authenticated federation records are admitted, quarantined or rejected with a reasonNever dropped silently
Critical derived decisions carry an explanation and are re-checkedAttention ranking, gate state and context filters are re-checked against canonical records before anything acts on them
Protocol resources are boundedExceeding size, complexity or rate limits is a reasoned rejection, not silent truncation
Compromise is handled going forwardRecords valid in the past are never deleted or rewritten; records after a compromise are separated and marked
The principal sees the parties acting for themAnd can use only the control and revocation their own authority allows

Threat posture

Every threat is handled with four questions: prevent, contain, detect, recover. What cannot be prevented must be contained, what cannot be contained must be detected, and what is detected must be recoverable.

ThreatPreventContainDetectRecover
Indirect prompt injection (external documents, email, tool output, federated bodies)Data is not instruction; trust zonesTask scope; autonomy within authority; gatesOut-of-scope and statement-versus-fact signalsRevoke going forward; a compensating commitment
A compromised or mistaken agentOne declared capacity; the confused deputy intersectionAccess authority limits and budget ConditionsEvidence marks; independent verification; four eyesAccess revocation plus executor enforcement; takeover
Poisoned shared memoryNo single shared context pileAgent writes are proposalsSources are keptInvalidate with supersedes
A malicious federation counterpartyLocal admission; selective disclosureQuarantine; resource limitsReceipt and conflict recordsEnd the federation going forward
Stale authorityLive Access checksAccess's declared freshness limitRevocation eventsInvalidate the cache at once
Fake approval (a notification button, agent text)Approval surface rulesBinding to exact contentMismatch between the approval record and the gate content digestThe approval record is invalid; the gate stays open
Secret leakageThe credential boundaryOpaque referencesScanning record bodies and logs for secretsRotation plus redaction

Data, instruction and authority

ThingWhat it isWhat it can change
DataExternal pages, email, documents, tool results, federated bodies, another party's Claims, model outputInforms reasoning; cannot change normative state or create authority
InstructionAn eligible party's Declaration that is part of an agent's recorded normative basisSteers what the agent does, only within authority
AuthorityAccess's decision and its evidencePermits action; Work cannot create or widen it

None turns into another on its own. Data cannot become an instruction, and an instruction cannot become authority. A message is an instruction for an agent only if its author is in the agent's on-behalf-of chain, or a commitment or declared policy allows that author to instruct the agent, and it has been turned into an eligible Declaration. Every other message is data.

  • Chat is a channel, not a record. A binding chat command cannot be the basis for execution until it becomes an eligible Declaration.
  • One agent telling another "approved" is a Claim, not a decision. One agent saying "a person approved this" never replaces the approval record.
  • A runtime handoff call between agents is evidence, not a transfer of responsibility.
  • In context sent to an agent, control information (task, scope, constraints, instructions) travels in typed fields. Free text from people or external systems travels separately, with its source and an "untrusted content" mark. Instruction-like text inside free text cannot change those fields.
  • Summaries and explanations Work shows to agents or people are generated on the server from structured fields. An agent's free text is shown separately, unformatted, as "the agent's claim".

An agent acts only from a recorded normative basis: Aim, commitment, on-behalf-of delegation, Access authority evidence, autonomy policy and eligible Declarations. Autonomy evaluation returns proceed, proceed and notify, require a gate, or deny. A deny from Access can never be overcome by a gate or a waiver in Work.

The credential boundary

  • Work stores only the credential mode, assurance level and an opaque reference. Passwords, refresh tokens, session cookies, API secrets, private keys, one-time codes and payment card data never enter any record, body, evidence, event payload, log or agent context.
  • Real secret handling is not Work's job: an agent's upstream tokens live in Access's credential broker, credential injection at run time happens in the executor, and payment details live in Pay.
  • Secret input never passes through Work or an agent. If a job needs a secret or payment details, Work opens an addressed wait and sends the person to the surface that owns the secret (Access or Pay). The agent works with an opaque reference from that surface and never sees the secret.
  • If a secret ends up in a record by mistake, the fix is to rotate it. Redacting or crypto-shredding the body alone is not enough.
  • Work does not implement its own strong authentication. Strong authentication for high-impact human statements comes from Access step-up.
  • Record bodies and log content are scanned for secrets. A high-confidence match on a record submitted through the API is rejected; the error names only the rule and the part, never the secret. A federated or offline-signed record cannot be changed, so it is quarantined, an attention signal is raised and a rotation task is opened. Scanning is detection: a secret that does not match a known pattern is not caught.

The confused deputy rule

An agent acting for a principal normally uses only the intersection of:

the agent's own authority
∩ authority delegated to the agent
∩ the principal's authority
∩ the work's visibility
∩ the task scope
∩ the current policy (autonomy, gates)

The authority terms are evaluated in Access. Work applies the visibility, scope and policy terms and can never widen any term.

  • An agent acting in its own organizational capacity must say so explicitly. Its own authority is never passed off as action for the principal, and the principal's authority is never carried into the agent's own work. The capacity must match the capacity of the authority exercised in Access.
  • Assignment does not grant access. Missing access is requested from Access and shows as a wait.
  • Before a consequential action, the intersection is re-checked with a live Access check.

Approval surfaces

The two gate kinds are approved on two different surfaces.

  • Closing a gate is not authority. Closing a coordination gate does not mean the target action will be permitted in Access, and Work never presents a closed gate as granted authority. A coordination gate never satisfies an Access requirement.
  • The authority gate record is in Access. The approval is given on Access's trusted approval surface. Work closes the gate only with a Declaration that references that Access record, and checks the reference first. A Declaration that references an invalid, missing or refused Access record is not eligible, and the gate stays open.
  • The coordination gate record is in Work. The approval is a Work Declaration only. Before recording it, Work asks Access to confirm that the approver is in the eligible set at that moment; an approval from someone outside it is not recorded. High-impact coordination gates need Access step-up, and the Declaration references the step-up evidence.
  • One way in. Authority requests that need a person enter only through Work's Needs Attention. An agent or app cannot open the Access approval surface on its own initiative.

Binding to exact content

On both surfaces, an approval is bound to exact content, and the surface shows:

Bound toShown
Work and record identityThe target: who, what, where
Version or content digestAmount or resource: money, time, budget, blast radius
ParametersWhether it is reversible
Principal and agent contextOn whose behalf, which agent asked, who is accountable
Material changes since last seenChanged fields highlighted
  • An approval from a surface that does not carry the digest of the content approved, or binds to a different digest than the one shown, is not eligible, and the gate stays open.
  • A notification action is not approval. An inbox button, push action, lock screen, SMS, email or chat reply produces no approval record by itself. A reply collected by Relay is a channel reply. For authority gates and high-impact coordination gates, the action in a notification only links to the approval surface. A low-impact coordination gate can be answered from a notification only if the notification surface meets the approval surface requirements, shows the exact content from typed fields, binds the answer to the exact digest, and needs no step-up. Even then, what satisfies the gate is the digest-bound Work Declaration, not the button.
  • Agent prose cannot define the approval summary. The summary is generated from canonical structured fields; the agent's description is shown separately as "the agent's claim".
  • A third-party approval surface can satisfy a coordination gate only if it shows the canonical structured data faithfully, binds the exact digest, work and record, and does any required strong authentication through Access step-up.

A human approval is not an oracle

A human approval shows that the approver saw the content and accepted it with their authority. It does not show that the decision was good, and product language never presents an approved action as correct or safe.

Approval fatigue is a security problem. Approval is asked for only when there is a commitment or a gate, and gate thresholds follow the risk of the work and the action.

Guarantees

Work separates what it guarantees by design, what it guarantees only under a stated condition, and what it does not claim.

Guaranteed by design

Guarantee
Normative state changes only through Declarations
Claims and Acts alone have no normative effect
Work does not create or widen authority; autonomy stays within authority
An agent's action can be traced to a recorded normative basis
The accountability chain ends in a party under the declared regime
Signed record bytes and origin never change; corrections use supersedes
The same semantic inputs give the same normative result
Normative time is ledger time, not client time
There is no approval without a commitment or gate under it
Experience and metrics never create canonical state
Verifying a record needs no online suiss service
A foreign record has no local normative effect without local admission
An authenticated federation record is never dropped silently
An unevidenced statement is marked unevidenced on every surface
An unanswered decision is not a yes; implicit acceptance rests only on a prior Declaration
Delivery, acknowledgement and channel replies are not approval or authority state
Work is not the only recovery authority for party identity; identity and recovery live in Access

Guaranteed under a stated condition

GuaranteeCondition
A recorded record survives the loss of a regionThe ledger is placed across multiple regions; in a single region, the guarantee is at the availability zone level
Execution stops after authority is revokedThe executor supports pause or cancel and confirms that it stopped
Moving to a safe stateThe control or commitment policy defines a safe state that can really be reached
"It existed at time T"An external witness or a trusted timestamp anchors it
Detecting a ledger that shows different historiesWitnesses or checkpoints are compared
An agent's real-world identityAccess has a trusted identity binding
Runtime and model configuration assuranceMatching remote attestation exists; otherwise the configuration is declared, not proven
Personal data bodies are made unreadable by crypto-shreddingNo other copy or backup of the key exists; copies already disclosed are out of scope; this is not the same as legal erasure
Integrity of the approval surfaceA trusted approval surface meeting the requirements was used
The operator cannot read contentOnly for parts encrypted on the client, which the server cannot process
Reads never use authority older than Access's declared freshness limitAccess declares the limit and the revocation event arrives, or the limit runs out
A consequential external effect happens onceThe external system supports idempotency keys

Not claimed

Work does not claim, and product language never states as a guarantee, that it can:

  • make a recipient forget data that was disclosed to them;
  • guarantee that an offline or compromised executor has physically stopped without confirmation or evidence;
  • prove that a signed Claim is true;
  • fully prevent a model from inferring things from private data it has already seen;
  • turn a human approval into proof of good judgment;
  • guarantee that a model resists prompt injection;
  • tell a compromised but still authorized agent from legitimate behaviour before it is detected;
  • detect undeclared operator configuration changes without remote attestation;
  • prove that parties who look independent are not secretly colluding;
  • stop colluding real people from getting around split authority;
  • guarantee a single external effect when the external system does not support idempotency;
  • guarantee that a ledger does not show different histories if nobody compares witnesses or checkpoints;
  • claim that the hosted service cannot read body content. Only parts encrypted on the client are unreadable to the operator;
  • detect, on its own, censorship that happened before something was recorded;
  • fully prevent leaks between jobs through an external model provider's hidden memory or training. Work does not use customer data to train models, but an external provider's behaviour is outside Work's control;
  • equate accountability in Work with responsibility under law;
  • force an action taken with an ambient session to look separate from the user in an external system;
  • remove copies that were already distributed, through redaction or crypto-shredding;
  • promise that every action has a meaningful safe state; some actions can only be compensated;
  • guarantee that a federation counterparty honours a redaction request passed to it;
  • guarantee that trust zone labelling alone makes agent behaviour safe.

How Work words things

TopicAllowedNot allowed
Stopping"Stop requested"; "the executor reported that it stopped"; "authority revoked"Claiming the agent has halted without executor confirmation
Evidence"Stated, without evidence"; "evidenced: test result, presented by X"; "verified by Y""Verified" when there is only a signature
Approval"A named person approved this content (digest …)""Approved" when there is only a channel reply or an agent message
Authority"Gate closed"; "Access permitted"Saying authority was approved when only a coordination gate closed
Erasure"Personal fields were made unreadable"Saying data was deleted for good
Delivery"The counterparty received it"; "the counterparty wrote an acceptance record"Claiming acceptance by the counterparty when there is only a transport receipt

Privacy

  • Work sends Access only opaque references, gate content digests and narrow Claims. Work content, Condition and Aim structure, Claim bodies and attention state never go to Access.
  • The record skeleton is kept without a time limit; bodies follow their retention class. There are no physical deletes. On an erasure request, the body is made unreadable by crypto-shredding and the skeleton remains.
  • A person's drafts are private by default, and organization policy cannot make them visible.
  • Per-person aggregate views are off by default; if an organization turns them on, the people concerned can see it.
  • Customer data is never used to train models.

See Evidence and visibility for visibility axes, context assembly and permission freshness, and Work across organizations for what can and cannot cross an organization boundary.

Out of scope

TopicOwner
Authentication, step-up, passkeysAccess
General secret storage and credential injectionAccess, the executor, Pay
Enforcing a physical stopAccess plus the executor
Data loss prevention, data classification, security event management, audit searchSeparate product layers
Model safety and resistance to prompt injectionNo coordination layer can provide it
Hiding all content from the operatorBodies the service must process are readable on the server; only client-side encrypted parts are unreadable to the operator