{
  "created_at": "2026-11-12T07:59:12Z",
  "result": {
    "engine": "construction_schedule",
    "limits": "Reviews the schedule record. It does not visit the site or prove durations and weather assumptions. The run is Ed25519-signed; pin the issuer key out of band.",
    "module": "cain_a75_engines/constructionschedule/engine.py",
    "profile": "north_lot_schedule",
    "run": {
      "label": "Recomputes a construction schedule: coverage, duration arithmetic, precedence, cure gaps, permits, deadline and claim honesty. It does not visit the site.",
      "public_key_b64": "aMIQLoi7VBHeihmxQOXxaTGZZ2YPyDfZFCvIfwiTfYg=",
      "records": [
        {
          "checks": [
            {
              "detail": "0.0->2.0 = 2d",
              "id": "T-excavate.duration",
              "ok": true
            },
            {
              "detail": "finish 2.0 <= 20.0",
              "id": "T-excavate.before_deadline",
              "ok": true
            },
            {
              "detail": "predecessors []",
              "id": "T-excavate.predecessors_exist",
              "ok": true
            },
            {
              "detail": "2.0->5.0 = 3d",
              "id": "T-foundation.duration",
              "ok": true
            },
            {
              "detail": "finish 5.0 <= 20.0",
              "id": "T-foundation.before_deadline",
              "ok": true
            },
            {
              "detail": "predecessors ['T-excavate']",
              "id": "T-foundation.predecessors_exist",
              "ok": true
            },
            {
              "detail": "T-excavate finishes 2.0, T-foundation starts 2.0",
              "id": "T-foundation.after_T-excavate",
              "ok": true
            },
            {
              "detail": "an approved permit covers the task window",
              "id": "T-foundation.permit",
              "ok": true
            },
            {
              "detail": "7.0->11.0 = 4d",
              "id": "T-frame.duration",
              "ok": true
            },
            {
              "detail": "finish 11.0 <= 20.0",
              "id": "T-frame.before_deadline",
              "ok": true
            },
            {
              "detail": "predecessors ['T-foundation']",
              "id": "T-frame.predecessors_exist",
              "ok": true
            },
            {
              "detail": "T-foundation finishes 5.0, T-frame starts 7.0",
              "id": "T-frame.after_T-foundation",
              "ok": true
            },
            {
              "detail": "2 cure day(s) after T-foundation",
              "id": "T-frame.cure_after_T-foundation",
              "ok": true
            },
            {
              "detail": "claimed True, computed True",
              "id": "claims.deadline_met",
              "ok": true
            },
            {
              "detail": "claimed True, computed True",
              "id": "claims.permits_valid",
              "ok": true
            },
            {
              "detail": "claimed True, computed True",
              "id": "claims.precedence_respected",
              "ok": true
            }
          ],
          "created_at": "2026-11-12T07:59:12Z",
          "engine": "a75-043/1.0.0",
          "extra": {
            "computed": {
              "deadline_met": true,
              "permits_valid": true,
              "precedence_respected": true
            },
            "deadline_day": 20.0,
            "tasks": {
              "T-excavate": {
                "finish": 2.0,
                "start": 0.0
              },
              "T-foundation": {
                "finish": 5.0,
                "start": 2.0
              },
              "T-frame": {
                "finish": 11.0,
                "start": 7.0
              }
            }
          },
          "failed": [],
          "label": "Recomputes a construction schedule: coverage, duration arithmetic, precedence, cure gaps, permits, deadline and claim honesty. It does not visit the site.",
          "prev_record_hash": "44592ca0865cd68e2eb1a6dffe0dc34e0b74ffd7e096ccc61393639111a9490a",
          "public_key_b64": "aMIQLoi7VBHeihmxQOXxaTGZZ2YPyDfZFCvIfwiTfYg=",
          "record_hash": "54d13732e4ed913d7609d660d240b8c25b821d10132fe130723290f8e47949df",
          "schema": "cain42.a75.construction.record.v1",
          "signature_b64": "8jhZBsNXFUqnQgviRVIpq/7OmkLmOiLwRKjFpdaqttEWCbA5Nssc6GIjDOdNezxxppEVZgpfmElpgH0KM1znDg==",
          "sku": "CAIN-A75-043",
          "subject": {
            "claims": {
              "deadline_met": true,
              "permits_valid": true,
              "precedence_respected": true
            },
            "permits": [
              {
                "approved": true,
                "id": "P-1",
                "task": "T-foundation",
                "valid_from": 2.0,
                "valid_to": 6.0
              }
            ],
            "project": {
              "deadline_day": 20.0,
              "id": "SITE-7",
              "site": "north lot"
            },
            "schedule": {
              "finishes": {
                "T-excavate": 2.0,
                "T-foundation": 5.0,
                "T-frame": 11.0
              },
              "order": [
                "T-excavate",
                "T-foundation",
                "T-frame"
              ],
              "starts": {
                "T-excavate": 0.0,
                "T-foundation": 2.0,
                "T-frame": 7.0
              }
            },
            "schema": "cain42.a75.construction.schedule.v1",
            "tasks": [
              {
                "cure_days": 0,
                "duration_days": 2,
                "id": "T-excavate",
                "permit_required": false,
                "predecessors": [],
                "trade": "civil"
              },
              {
                "cure_days": 2,
                "duration_days": 3,
                "id": "T-foundation",
                "permit_required": true,
                "predecessors": [
                  "T-excavate"
                ],
                "trade": "concrete"
              },
              {
                "cure_days": 0,
                "duration_days": 4,
                "id": "T-frame",
                "permit_required": false,
                "predecessors": [
                  "T-foundation"
                ],
                "trade": "carpentry"
              }
            ]
          },
          "subject_sha256": "8a7db4c307347ac1af24bec950069afd9d4f0b37e8ac30e5a6cc61e96f14242a",
          "verdict": "SOUND"
        }
      ],
      "run_hash": "2d285bfb01fb0f78bd1347b2ac1cc4a0854e1a96a70aa152d39834bd71708a87",
      "schema": "cain42.a75.construction.run.v1",
      "sku": "CAIN-A75-043",
      "verdict": "VERIFIED",
      "verdicts": [
        "SOUND"
      ]
    },
    "scenarios": [
      {
        "deadline_day": 20.0,
        "name": "north_lot_schedule",
        "run_hash": "2d285bfb01fb0f78bd1347b2ac1cc4a0854e1a96a70aa152d39834bd71708a87",
        "tasks": 3,
        "verdict": "VERIFIED"
      },
      {
        "expected": "SOUND",
        "name": "honest_construction_schedule",
        "verdict": "SOUND"
      },
      {
        "expected": "UNSOUND",
        "name": "precedence_violation",
        "verdict": "UNSOUND"
      },
      {
        "expected": "UNSOUND",
        "name": "duration_mismatch",
        "verdict": "UNSOUND"
      },
      {
        "expected": "UNSOUND",
        "name": "permit_missing",
        "verdict": "UNSOUND"
      },
      {
        "expected": "UNSOUND",
        "name": "permit_expired",
        "verdict": "UNSOUND"
      },
      {
        "expected": "UNSOUND",
        "name": "permit_not_approved",
        "verdict": "UNSOUND"
      },
      {
        "expected": "UNSOUND",
        "name": "cure_time_ignored",
        "verdict": "UNSOUND"
      },
      {
        "expected": "UNSOUND",
        "name": "deadline_missed",
        "verdict": "UNSOUND"
      },
      {
        "expected": "UNSOUND",
        "name": "missing_task",
        "verdict": "UNSOUND"
      },
      {
        "expected": "UNSOUND",
        "name": "duplicate_task",
        "verdict": "UNSOUND"
      },
      {
        "expected": "UNSOUND",
        "name": "unknown_predecessor",
        "verdict": "UNSOUND"
      },
      {
        "expected": "UNSOUND",
        "name": "claim_overstates",
        "verdict": "UNSOUND"
      },
      {
        "expected": "UNSOUND",
        "name": "unknown_claim",
        "verdict": "UNSOUND"
      },
      {
        "expected": "UNSOUND",
        "name": "wrong_schema",
        "verdict": "UNSOUND"
      },
      {
        "expected": "UNSOUND",
        "name": "garbage",
        "verdict": "UNSOUND"
      }
    ],
    "summary": "VERIFIED: precedence, duration arithmetic, cure gaps, permits and deadline recomputed; 15/15 schedule-failure cases as expected"
  },
  "schema": "cain42.agentic75.findings.v1",
  "sku": "CAIN-A75-043"
}
