{
  "schemaVersion": 1,
  "evidenceType": "local-linux-api-observation",
  "generatedAt": "2026-10-17T10:10:28.528477+00:00",
  "environment": {
    "kernel": "6.8.0-146-generic",
    "machine": "x86_64",
    "libc": [
      "glibc",
      "2.39"
    ],
    "filesystem": "ext4",
    "python": "3.12.3",
    "effectiveUid": 1001,
    "compiler": "cc (Ubuntu 13.3.0-6ubuntu2~24.04.1) 13.3.0",
    "compilerFlags": [
      "-std=c11",
      "-Wall",
      "-Wextra",
      "-Werror",
      "-O2"
    ]
  },
  "repetitions": 3,
  "identicalAcrossRepetitions": true,
  "sourcesSha256": {
    "demo.c": "f9dfe90438b83f190e6eddce1b2f7c01fdb75b0e2178053b45e8670e795f8275",
    "observe.py": "1c3e1b8e9775f7bb071c06c69be4efc8d1a6637c72868b4ce6d41bee88439406"
  },
  "method": "Three sequential runs in fresh private directories on one filesystem; assertions compare syscall returns, contents, inode identity and link counts.",
  "limits": [
    "No concurrent readers or writers, network mounts, injected failures or crashes were tested.",
    "Successful fsync calls are not a power-loss durability experiment.",
    "The run checks local outcomes, not the atomicity contract under concurrency.",
    "Unsupported operations fail the run rather than count as successful observations."
  ],
  "cases": [
    {
      "id": "unnamed",
      "returnValue": 0,
      "errno": 0,
      "invariant": true
    },
    {
      "id": "publish-new-name",
      "returnValue": 0,
      "errno": 0,
      "invariant": true
    },
    {
      "id": "link-collision",
      "returnValue": -1,
      "errno": 17,
      "invariant": true
    },
    {
      "id": "exclusive-cannot-publish",
      "returnValue": -1,
      "errno": 2,
      "invariant": true
    },
    {
      "id": "unlinked-cannot-publish",
      "returnValue": -1,
      "errno": 2,
      "invariant": true
    },
    {
      "id": "noreplace-collision",
      "returnValue": -1,
      "errno": 17,
      "invariant": true
    },
    {
      "id": "noreplace-new-name",
      "returnValue": 0,
      "errno": 0,
      "invariant": true
    },
    {
      "id": "exchange",
      "returnValue": 0,
      "errno": 0,
      "invariant": true
    },
    {
      "id": "exchange-missing",
      "returnValue": -1,
      "errno": 2,
      "invariant": true
    },
    {
      "id": "incompatible-flags",
      "returnValue": -1,
      "errno": 22,
      "invariant": true
    }
  ]
}
