ARC 4Integrate Application EngineeringChapters 15–18

Chapter 18 — Scope of Layered Test Evidence

Chapter objective: After this chapter, a developer can select evidence for a domain port, real Runtime, multi-node protocol, or network black box and refuse to substitute a lower-layer green result for higher-layer acceptance.

Learning objectives

  1. Build an E1–E4 evidence ladder.
  2. Record environment, pinned revision, proven claims, and open claims at each layer.
  3. Distinguish real collections, controlled fake membership, and real network ports.
  4. Define a minimal faithful validation set for all three collection types.

Prerequisites

Case progress

The fulfillment team has domain, single-Runtime, and chaos tests. Release review asks whether these results prove real ports, client protocols, and process isolation. The answer is stated one evidence layer at a time.

Evidence strength describes scope, not points

Evidence ladder from domain contract to network black box

Level Execution surface Best evidence for Cannot replace
E1 domain fake/static asset port language, decision table, failure translation real collection/protocol behavior
E2 real Runtime, one process spec, codec, typed handle, lifecycle multi-node propagation and partition
E3 multi-node protocol/controlled chaos delta, repair, partition, recovery, member events independent processes and real ports
E4 independent processes, real port, client protocol process boundary, protocol compatibility, reachability production capacity and full failure domains

E4 is closer to deployment reality than E3 and still leaves topology, capacity, access, alerts, and operations to production acceptance.

Minimal evidence by collection

Register

Lease

CRDT

Every evidence card fixes four facts

  1. Environment and revision: source, JDK, and Maven context.
  2. Input/fault: the actual injected condition.
  3. Observation: test counts, failures, errors, skips, and key behavior.
  4. Open claim: the question left to the next layer.

Skipped and Tests run: 0 are not passes; compilation alone is not behavior evidence.

Counterexample and fault injection

Experiment

Run book-owned E1/E2:

cd examples/order-fulfillment-control-plane
mvn clean test

Run pinned-source E2/E3:

cd submodule/dsm
mvn -q -pl dsm-integration-test -am \
  -Dtest=RuntimeIntegrationTest,TwoNodeIntegrationTest,ChaosIntegrationTest \
  -Dsurefire.failIfNoSpecifiedTests=false test

Use evidence-ladder.json to confirm that every level contains nonempty proves and doesNotProve fields.

Experiment acceptance card

Field Content
Command Two book-example tests plus focused Runtime/TwoNode/Chaos tests
Input or fault fake port, real single Runtime, two nodes, loss, and partition
Observable result each layer's green result and count are reproducible; no zero-test or skipped false green
Evidence level E1, E2, E3; Chapter 23 provides the real-port E4 lab
This experiment does not prove Production capacity, cross-host deployment, real external fencing, or complete security configuration

Review

Next

Arc 5 turns to runtime responsibility. Chapter 19 adds diagnostics, metrics, and trace surfaces for locating distributed differences.