Outcall
SpecificationsS002 · Network Management

Edge cases

S002 Edge Cases

IDScenarioExpected Behavior
S002-EC-001Network already exists (create)Return success with created: false. Do not error.
S002-EC-002Bridge not up (create)Return error. Do not attempt Docker API calls.
S002-EC-003Docker daemon unreachableReturn error with descriptive message.
S002-EC-004Network does not exist (status)Return success with exists: false, null fields, empty containers list.
S002-EC-005Network does not exist (destroy)Return success with destroyed: false. Idempotent.
S002-EC-006Containers connected (destroy)Return error listing container names. Do not force-disconnect.
S002-EC-007Destroy default networkAllowed. Recreatable via outcall network create.
S002-EC-008Network exists but bridge mismatchThe create endpoint SHOULD log a warning but MUST still return success.
S002-EC-009Multiple rapid create callsIdempotency handles this: second call sees existing network.
S002-EC-010outcalld shutdown while networks existNetworks persist in Docker. Intentional — they outlive the daemon so containers are not disrupted.
S002-EC-011Docker available at startup but disappears laterIndividual endpoint calls return Docker connection errors. The daemon continues running.
S002-EC-012Subnet collision with existing Docker networkoutcalld detects the collision before calling Docker and returns a clear error naming the conflicting network.
S002-EC-013All 255 /24 subnets exhaustedReturn error: "no available subnets in 10.200.0.0/16".
S002-EC-014Invalid network name (special characters, too long)Return error with validation message.

On this page