DEFENCE
Illustrative reportAnatomy of a finding
DEFENCEExternal web/API review01 / 05
Illustrative demo — not a customer resultExternal web/API review

Synthetic retest of an approval boundary.

A five-page illustrative report: scope, expected rule, observed break, remediation, and the targeted retest that closed one named condition.

Artifact
Synthetic web/API review
Test material
Owned accounts and invented records
Conclusion
One condition closed on retest
Illustrative demo · synthetic material · not a customer result01
DEFENCEScope and property under test02 / 05
02

Scope and property under test

A retest must prove a property, not reward a changed screen.

The fictional product has a two-step approval workflow. A test member may view a draft; an approver may advance it. The important claim concerns server behavior. The transition should be accepted only for an authorized role and a valid current state.

The retest repeats that property check with both roles. A changed message or interface would not close the finding.

Invented test model

Tenant
Synthetic and owned by the test team
Actors
Read-only member and authorized approver
Object
Editable synthetic draft
Boundary
Server-side role and workflow-state validation
The rule that the investigation must preserve
Read-only test member
May view the synthetic draft
Read-only test member
May not approve the synthetic draft
Authorized approver
May approve an eligible synthetic draft
Illustrative demo · synthetic material · not a customer result02
DEFENCEFinding anatomy03 / 05
03
Finding D-01Closed under retest

Finding anatomy

The server accepted a transition the role was not allowed to make.

Finding timeline

The server should enforce role and state together.

A read-only member may view the synthetic draft. Only an approver may advance an eligible draft.

The transition was accepted for the wrong role.

A bounded request advanced the invented draft inside the owned test tenant.

The server now validates both role and current state.

The interface restriction remains a usability layer; the server owns the control.

The denied and allowed paths both behaved correctly.

The member was denied without a state change; the approver still completed the eligible transition.

The interface hid approval from the read-only member, so the investigation tested the underlying property with that owned account and synthetic draft.

Expected
The read-only member can view its synthetic draft but cannot advance that draft to the approved state.
Observed
A bounded direct request from the read-only account advanced the invented draft to approved. The account then observed the new state.
Impact
An unauthorized transition was possible inside the owned test tenant. No data belonging to another user, payment, or third party was involved.
Observed contributing condition
The interface hid the action, while the server did not enforce the same role-and-state rule when processing the transition.
Root cause not assessed
The external review describes behavior, not which internal component or decision created it.
Illustrative demo · synthetic material · not a customer result03
DEFENCERemediation and targeted retest04 / 05
04

Remediation and targeted retest

Why the retest is property-based

Remediation

The server now validates both role and current state.

Validate the caller role and current draft state on the server. Keep the interface restriction as a usability layer, not the control.

Targeted retest

The denied and allowed paths both behaved correctly.

The same read-only account was denied and the draft stayed unchanged. The authorized approver still completed the eligible transition.

The same boundary before and after remediation
Expected rule
Only the approver may advance an eligible draft
Observed before fix
Read-only member advanced the synthetic draft
Observed in retest
Member denied; approver path still worked
Illustrative demo · synthetic material · not a customer result04
DEFENCECoverage, controls, and limits05 / 05
05

Coverage, controls, and limits

A useful report also shows the controls that held and their limits.

The invented review records three nearby controls. They are bounded observations, not proof about every variant or adjacent system.

  1. Webhook verification

    Held under test
    Test condition
    Unsigned and expired synthetic events
    Observed result
    Rejected before the invented workflow changed
    Limit
    Provider delivery and replay behavior not assessed
  2. Upload type handling

    Held under test
    Test condition
    Fixtures with mismatched declared and detected types
    Observed result
    Rejected without creating a usable object
    Limit
    No large files, malware, or parser stress
  3. Concurrent editing

    Held under test
    Test condition
    Mutation with a stale synthetic revision token
    Observed result
    Stale change rejected; current revision succeeded
    Limit
    One workflow and bounded request sequence

How the final register speaks

Closed under retest
The named condition no longer reproduced under the repeated test.
Held under test
The control enforced the rule in the recorded scenarios.
Unresolved
Blocked, out-of-scope, or untested work remains explicit.

The result is a decision record, not a certificate. It records what changed and held, then identifies conditions that still need an owner.