Choose your situation

WHAT YOU WILL PRODUCE
  • Turn intended behavior into a trust-boundary contract.
  • Choose controls from versioned requirements that interrupt specific failure paths.
  • Define acceptance and operating evidence before release.

A feature contract, control-to-test table and operating note that accompany the implementation.

BEFORE YOU START
  • Understand the feature’s normal request and response.
  • Use the upload, webhook or agent-gateway guide fixture if no real feature is available.
Example journey: File upload → isolated storage → validation checks
1

Define the contract

Produce a one-page feature contract naming caller, tenant, protected data, permitted action, resource budget and failure behavior. For uploads, trace receive → quarantine → inspect → publish → download; for webhooks, raw bytes → verification → event decision → business effect; for an LLM feature, user and retrieved text → model proposal → tool gateway → effect. Label which values come from the caller and which come from trusted state. Finish when every transition has a responsible component and an explicit condition for advancing.

2

Select controls

Start from the ASVS 5.0 requirements for the feature’s area at your target level, such as chapter V5 for file handling or V8 for authorization, then map each failure path to its enforcing component. An upload needs generated storage identity and controlled publication, not just an extension check; a webhook needs authenticated raw bytes and duplicate-safe effects; an agent needs a gateway that decides tool calls from the session, not from the model. Record rejected alternatives and their remaining bypass. Finish with a control table stating protected property, enforcement point, required inputs and a test that would falsify the claim.

3

Test abuse and ordinary use

Build paired cases from the feature contract. Include legitimate completion, altered or oversized input, another user’s object, duplicate delivery and interrupted work where relevant; for an LLM feature, add instructions planted in retrieved documents and tool results. State whether rejection must happen before storage, publication, a payment or a tool effect, then inspect that actual state. Finish when the connected exercise yields the required positive and negative results, with untested integration boundaries explicitly pending.

4

Prepare to operate

Create an operating note naming the owner, bounded audit events, resource limits, cleanup and retry behavior and recovery path. Decide what happens when inspection, signature verification or required evidence is unavailable. Record a change trigger such as a new file processor, payment side effect or agent tool. Finish when an operator can tell accepted work from completed work and recover without republishing untrusted bytes or repeating the business effect.

Practice

To build the skills behind this job step by step, follow the learning path Browser and API boundaries.

Work products

Use the blank work product for your system. Compare its required evidence with a completed synthetic example.

Download blank work product Download completed example