medlab

what got hurt, and what now fails loudly

↑ sublayer

medlab / family

Behavioral

Cases in the observatory's Behavioral family.

cases15

  1. 2026-10-14 A file readable by the build owner is readable by the runtime user

    now fails loudly The image build reads packaged public assets after switching to its unprivileged runtime user.

    BehavioralIntegration Tests

  2. 2026-10-14 A shared photo always arrives as image data

    now fails loudly A native iOS test supplies a camera filename and requires a stored image after the recovery picker.

    BehavioralIntegration Tests

  3. 2026-10-14 Successful signing implies valid workflow control flow

    now fails loudly Reject repeated control-flow group identifiers before signing and test balanced block nesting in the generated artifact.

    BehavioralIntegration Tests

  4. 2026-10-14 Valid structured output preserves the source vocabulary

    now fails loudly A sparse normalization fixture must still deliver every short-source label to extraction, and phrase lemmas cannot collapse onto one base word.

    BehavioralStructuralSchema ValidatorIntegration Tests

  5. 2026-10-14 A running shell script already has its remaining source

    now fails loudly The runner executes an in-memory snapshot of its source before starting simulator work.

    BehavioralIntegration Tests

  6. 2026-10-14 A successful retry removes its failure alert

    now fails loudly A failure-to-recovery test requires capture identity and removal of only that capture's active alerts.

    BehavioralIntegration Tests

  7. 2026-10-14 A failed preflight command stops the next shell command

    now fails loudly A deployment-script test injects a busy worker and requires termination before the build command.

    BehavioralIntegration Tests

  8. 2026-10-14 An image decoder that works on desktop also handles phone photos

    now fails loudly Browser tests disable the bitmap decoder and require a resized JPEG upload, while undecodable images must show an actionable error without sending a request.

    BehavioralIntegration Tests

  9. 2026-10-14 Shifting selected new cards leaves suspended cards unchanged

    now fails loudly A real-backend promotion test asserts that suspended and reviewed cards retain their scheduling fields.

    BehavioralIntegration Tests

  10. 2026-10-11 A tool returning output means the command succeeded

    now fails loudly a regression requires exit code 1 to remain a command failure when the tool error flag is false

    RuntimeBehavioralDistributed TracesIntegration Tests

  11. 2026-10-11 A developer's Python installation supplies the CI test dependencies

    now fails loudly CI installs the pinned Python test requirements and verifies the YAML module before building or running the suite.

    BehavioralIntegration Tests

  12. 2026-09-27 An empty backup suffix makes `sed -i` portable

    now fails loudly a gate refuses any `sed -i` whose argument is not a `.bak` suffix, so both the GNU-only no-suffix form and the macOS-only empty-suffix form fail the suite before they reach CI

    BehavioralEvolutionExample-Based TestsPre-Promotion Invariant Gates

  13. 2026-09-21 `sed -i 'edit' file` means "edit in place" on every machine

    now fails loudly `sed -i` with no backup suffix is GNU-only; the deck test now uses the portable `sed -i.bak` + `rm -f` form, which edits in place identically on GNU and BSD sed

    BehavioralExample-Based TestsPre-Promotion Invariant Gates

  14. 2026-09-19 Hardcoding a "recent" date into a test fixture keeps it recent

    now fails loudly the telemetry collector accepts SUBLAYER_NOW to freeze its clock, and the test pins it to the fixtures' own day, so the window is deterministic and cannot age out

    BehavioralTest EffectivenessExample-Based TestsPre-Promotion Invariant Gates

  15. 2026-09-13 Moving a repo layout's root is one mechanical change

    now fails loudly A test that silently skips because a path does not exist is a failed test; environment checks that mask defaults are recorded as overrides, and the defaults themselves are tested without them.

    ChangeBehavioralIntegration TestsPre-Promotion Invariant Gates