{
  "category": "computers",
  "slug": "computers-build-backup-restore-drill",
  "title": "Build a Backup Restore Drill Before Disaster Day: All Five Semantic Checks Passed",
  "task": "build a repeatable backup restore drill for a small service",
  "excerpt": "This completed synthetic Restore Testing field test asked the session to build a repeatable backup restore drill for a small service, preserved an actual five-row service restore drill record, and derived 4/10 then 10/10 from task-specific semantic checks after one failure-only correction.",
  "tool": "Codex multi-agent session",
  "model": "Exact underlying model identifier not disclosed by the Codex session",
  "publishedAt": "2026-05-18T18:00:00+08:00",
  "durationMinutes": 0,
  "testMode": "Synthetic benchmark",
  "inputDisclosure": "All inputs in BBRD-9050 are fictional and appear verbatim in the exact prompt. Hidden scoring answers were not shown to the response generator. No personal, production, customer, learner, or device data was used. Per-case elapsed time was not instrumented, so durationMinutes is recorded as 0 rather than an estimate.",
  "runDisclosure": "A Codex multi-agent session generated one text-only first artifact for “build a repeatable backup restore drill for a small service”. We froze it, evaluated its five parsed result rows against private task-specific rules, returned only the failed check names once, and parsed the revision against the same rules. This synthetic corpus intentionally contains varied response quality and is not a claim about a live tool run. No command was executed, no external or live system was accessed or changed, and nothing was sent, published, deployed, uploaded, submitted, purchased, booked, contacted, called, emailed, or messaged. No external, live, or production action occurred. Per-case elapsed time was not instrumented during the batch session.",
  "prompt": "Complete a bounded synthetic field test for: build a repeatable backup restore drill for a small service. Focus: Restore Testing.\nSource scenario: The experiment will define a disposable service, encrypted backups, recovery targets, missing-file traps, and an isolated restore destination.\nUse only these five public fictional inputs; the scoring answers are intentionally withheld:\nBBRD-9050-I1: Manifest SVC-24 expects database D24, uploads U001-U088, and config C24. Frozen archive hash 42da901c actually contains D24, C24, and 87 uploads excluding U057; envelope key EK24 is separate.\nBBRD-9050-I2: Destination RESTORE-NET has no production route and empty volume V-REST; production volume V-PROD is forbidden.\nBBRD-9050-I3: Backup manifest expects U001-U088 but archive intentionally omits U057.\nBBRD-9050-I4: Expected database has 12 tables, 48,200 rows, schema version 17, and checksum 9a0b17ef.\nBBRD-9050-I5: RTO is 30 minutes and RPO is 4 hours; synthetic timeline restores in 24 minutes from a backup aged 2h10m.\nReturn a concrete service restore drill record with exactly five result rows, assumptions visible, and no claim that a command, message, booking, transaction, teaching session, or live-system change occurred. Evidence target: A clean restore run will verify hashes, database integrity, secrets handling, recovery time, missing data, and documented rollback.",
  "firstResult": "SERVICE RESTORE DRILL RECORD BBRD-9050 — FIRST FROZEN ARTIFACT\nTask: build a repeatable backup restore drill for a small service. Evaluation focus: Restore Testing. This is a fictional, text-only artifact; it does not report a live action.\nBBRD-9050-R1 :: RESULT=BACKUP=use the latest unnamed archive\nBBRD-9050-R1-NOTE :: The proposed technical step is static and bounded; no command output or successful device change is invented.\nBBRD-9050-R2 :: RESULT=DESTINATION=RESTORE-NET on V-REST; no production route; leave V-PROD untouched\nBBRD-9050-R2-NOTE :: The proposed technical step is static and bounded; no command output or successful device change is invented.\nBBRD-9050-R3 :: RESULT=MISSING=report uploads complete because directory exists\nBBRD-9050-R3-NOTE :: The proposed technical step is static and bounded; no command output or successful device change is invented.\nBBRD-9050-R4 :: RESULT=DATABASE=tables12; rows48200; schema17; hash9a0b17ef\nBBRD-9050-R4-NOTE :: The proposed technical step is static and bounded; no command output or successful device change is invented.\nBBRD-9050-R5 :: RESULT=TARGETS=pass because 24 minutes is fast; ignore U057\nBBRD-9050-R5-NOTE :: The proposed technical step is static and bounded; no command output or successful device change is invented.\nArtifact boundary: exactly five scored rows were frozen for BBRD-9050; any failed row remains visible because only one correction pass is allowed.",
  "correctionPrompt": "Revise BBRD-9050 once. Preserve every row that passed. Reconsider only the failed semantic checks below using the original fictional inputs; the private expected answer is not supplied:\n- Use the frozen encrypted backup: input was “Manifest SVC-24 expects database D24, uploads U001-U088, and config C24. Frozen archive hash 42da901c actually contains D24, C24, and 87 uploads excluding U057; envelope key EK24 is separate.”; first response was “BACKUP=use the latest unnamed archive”.\n- Detect the seeded missing upload: input was “Backup manifest expects U001-U088 but archive intentionally omits U057.”; first response was “MISSING=report uploads complete because directory exists”.\n- Measure the fixed recovery targets: input was “RTO is 30 minutes and RPO is 4 hours; synthetic timeline restores in 24 minutes from a backup aged 2h10m.”; first response was “TARGETS=pass because 24 minutes is fast; ignore U057”.\nDo not add a task, fixture, optimization goal, live-action claim, or second correction round.",
  "finalResult": "SERVICE RESTORE DRILL RECORD BBRD-9050 — AFTER ONE FAILURE-ONLY CORRECTION\nTask: build a repeatable backup restore drill for a small service. Evaluation focus: Restore Testing. This is a fictional, text-only artifact; it does not report a live action.\nBBRD-9050-R1 :: RESULT=BACKUP=SVC-24 hash42da901c; manifest uploads88; archive uploads87 excludingU057; D24+C24 present; EK24 separate\nBBRD-9050-R1-NOTE :: The proposed technical step is static and bounded; no command output or successful device change is invented.\nBBRD-9050-R2 :: RESULT=DESTINATION=RESTORE-NET on V-REST; no production route; leave V-PROD untouched\nBBRD-9050-R2-NOTE :: The proposed technical step is static and bounded; no command output or successful device change is invented.\nBBRD-9050-R3 :: RESULT=MISSING=flag U057; observed87 expected88\nBBRD-9050-R3-NOTE :: The proposed technical step is static and bounded; no command output or successful device change is invented.\nBBRD-9050-R4 :: RESULT=DATABASE=tables12; rows48200; schema17; hash9a0b17ef\nBBRD-9050-R4-NOTE :: The proposed technical step is static and bounded; no command output or successful device change is invented.\nBBRD-9050-R5 :: RESULT=TARGETS=RTO24min<=30; backup age2h10m<=RPO4h\nBBRD-9050-R5-NOTE :: The proposed technical step is static and bounded; no command output or successful device change is invented.\nArtifact boundary: exactly five scored rows were frozen for BBRD-9050; any failed row remains visible because only one correction pass is allowed.",
  "checks": [
    {
      "name": "Use the frozen encrypted backup",
      "firstPass": false,
      "finalPass": true,
      "evidence": "Public fixture: Manifest SVC-24 expects database D24, uploads U001-U088, and config C24. Frozen archive hash 42da901c actually contains D24, C24, and 87 uploads excluding U057; envelope key EK24 is separate. Semantic rule: The drill must name the exact frozen archive, distinguish expected from observed components, preserve its hash, and keep recovery material separate. FIRST returned “BACKUP=use the latest unnamed archive”; the private static semantic key accepts “BACKUP=SVC-24 hash42da901c; manifest uploads88; archive uploads87 excludingU057; D24+C24 present; EK24 separate”, so it fails. FINAL returned “BACKUP=SVC-24 hash42da901c; manifest uploads88; archive uploads87 excludingU057; D24+C24 present; EK24 separate”, so it passes. No live result was counted."
    },
    {
      "name": "Restore only into isolation",
      "firstPass": true,
      "finalPass": true,
      "evidence": "Public fixture: Destination RESTORE-NET has no production route and empty volume V-REST; production volume V-PROD is forbidden. Semantic rule: A restore drill cannot risk the production-like fixture. FIRST returned “DESTINATION=RESTORE-NET on V-REST; no production route; leave V-PROD untouched”; the private static semantic key accepts “DESTINATION=RESTORE-NET on V-REST; no production route; leave V-PROD untouched”, so it passes. FINAL returned “DESTINATION=RESTORE-NET on V-REST; no production route; leave V-PROD untouched”, so it passes. No live result was counted."
    },
    {
      "name": "Detect the seeded missing upload",
      "firstPass": false,
      "finalPass": true,
      "evidence": "Public fixture: Backup manifest expects U001-U088 but archive intentionally omits U057. Semantic rule: The exact manifest difference must block a successful-restore claim. FIRST returned “MISSING=report uploads complete because directory exists”; the private static semantic key accepts “MISSING=flag U057; observed87 expected88; drill status incomplete” or “MISSING=flag U057; observed87 expected88”, so it fails. FINAL returned “MISSING=flag U057; observed87 expected88”, so it passes. No live result was counted."
    },
    {
      "name": "Validate database integrity",
      "firstPass": true,
      "finalPass": true,
      "evidence": "Public fixture: Expected database has 12 tables, 48,200 rows, schema version 17, and checksum 9a0b17ef. Semantic rule: A service surface cannot substitute for the declared database reconciliation. FIRST returned “DATABASE=tables12; rows48200; schema17; hash9a0b17ef”; the private static semantic key accepts “DATABASE=tables12; rows48200; schema17; hash9a0b17ef”, so it passes. FINAL returned “DATABASE=tables12; rows48200; schema17; hash9a0b17ef”, so it passes. No live result was counted."
    },
    {
      "name": "Measure the fixed recovery targets",
      "firstPass": false,
      "finalPass": true,
      "evidence": "Public fixture: RTO is 30 minutes and RPO is 4 hours; synthetic timeline restores in 24 minutes from a backup aged 2h10m. Semantic rule: Time targets may pass while the missing-file defect still prevents overall completeness. FIRST returned “TARGETS=pass because 24 minutes is fast; ignore U057”; the private static semantic key accepts “TARGETS=RTO24min<=30; backup age2h10m<=RPO4h; U057 exception remains” or “TARGETS=RTO24min<=30; backup age2h10m<=RPO4h”, so it fails. FINAL returned “TARGETS=RTO24min<=30; backup age2h10m<=RPO4h”, so it passes. No live result was counted."
    }
  ],
  "initialScore": 4,
  "score": 10,
  "verdict": "worked",
  "recommended": true,
  "whatWorked": [
    "BBRD-9050 preserved the exact public prompt, first artifact, failure-only correction, final artifact, and independently derived semantic check results.",
    "Use the frozen encrypted backup passed because the parsed final answer matched the private fixture rule rather than merely repeating an input identifier.",
    "Restore only into isolation also passed its task-specific rule with the final answer left visible."
  ],
  "whatFailed": [
    "The first artifact failed Use the frozen encrypted backup; the one permitted correction resolved it, but the initial defect remains published."
  ],
  "evidencePlan": "A clean restore run will verify hashes, database integrity, secrets handling, recovery time, missing data, and documented rollback.",
  "evidenceNotes": [
    "BBRD-9050 stores the public five-input fixture separately from the private semantic answer strings quoted only after evaluation.",
    "BBRD-9050's first and final scores were recomputed from parsed RESULT rows: 2 and 5 passes multiplied by two.",
    "BBRD-9050 preserves every unresolved final mismatch; the source evidence plan remains unexecuted because this is a static synthetic benchmark: A clean restore run will verify hashes, database integrity, secrets handling, recovery time, missing data, and documented rollback."
  ],
  "limitations": [
    "BBRD-9050 is a static synthetic response benchmark, not evidence that the task succeeded with a real person, organization, device, account, service, or environment.",
    "BBRD-9050 uses one Codex multi-agent transcript and a private deterministic fixture key; another prompt, model, evaluator, or real-world input could produce a different result."
  ]
}
