diff --git a/.agents/skills/finalize-phase/SKILL.md b/.agents/skills/finalize-phase/SKILL.md
index e7e767d..754daf2 100644
--- a/.agents/skills/finalize-phase/SKILL.md
+++ b/.agents/skills/finalize-phase/SKILL.md
@@ -25,6 +25,19 @@ Inspect the current worktree, `HEAD`, tracked and untracked changes, and commits
base against `main`: prefer the merge base with `origin/main` when available, otherwise use local
`main`. Record the exact base.
+Fetch `origin` before treating generated contracts or release evidence as final:
+
+```bash
+git fetch origin
+git rev-parse HEAD
+git rev-parse origin/main
+git merge-base HEAD origin/main
+```
+
+The task branch contains the current `origin/main` only when the merge-base equals `origin/main`.
+If it does not, STOP. Do not merge or rebase as part of this check. Require an explicit
+synchronization decision before regenerating OpenAPI, generated TypeScript, or release evidence.
+
Review the union of:
- committed changes from the base through `HEAD`;
diff --git a/.agents/skills/finish-worktree/SKILL.md b/.agents/skills/finish-worktree/SKILL.md
index 6d78bec..e5bf812 100644
--- a/.agents/skills/finish-worktree/SKILL.md
+++ b/.agents/skills/finish-worktree/SKILL.md
@@ -51,6 +51,20 @@ If a substantial unrelated change is present, stop and report it instead of sile
## 3. Perform targeted validation
+Confirm the task branch contains the current `origin/main` before running final validation of
+generated contracts or release evidence:
+
+```bash
+git fetch origin
+git rev-parse HEAD
+git rev-parse origin/main
+git merge-base HEAD origin/main
+```
+
+The branch contains `origin/main` only when the merge-base equals `origin/main`. If it does not,
+STOP. Do not merge or rebase as part of this check. Require an explicit synchronization decision
+before regenerating OpenAPI, generated TypeScript, or release evidence.
+
Determine validation from the files and behavior changed by this task.
Run the relevant targeted:
diff --git a/.claude/skills/finalize-phase/SKILL.md b/.claude/skills/finalize-phase/SKILL.md
index e7e767d..754daf2 100644
--- a/.claude/skills/finalize-phase/SKILL.md
+++ b/.claude/skills/finalize-phase/SKILL.md
@@ -25,6 +25,19 @@ Inspect the current worktree, `HEAD`, tracked and untracked changes, and commits
base against `main`: prefer the merge base with `origin/main` when available, otherwise use local
`main`. Record the exact base.
+Fetch `origin` before treating generated contracts or release evidence as final:
+
+```bash
+git fetch origin
+git rev-parse HEAD
+git rev-parse origin/main
+git merge-base HEAD origin/main
+```
+
+The task branch contains the current `origin/main` only when the merge-base equals `origin/main`.
+If it does not, STOP. Do not merge or rebase as part of this check. Require an explicit
+synchronization decision before regenerating OpenAPI, generated TypeScript, or release evidence.
+
Review the union of:
- committed changes from the base through `HEAD`;
diff --git a/.claude/skills/finish-worktree/SKILL.md b/.claude/skills/finish-worktree/SKILL.md
index 6d78bec..e5bf812 100644
--- a/.claude/skills/finish-worktree/SKILL.md
+++ b/.claude/skills/finish-worktree/SKILL.md
@@ -51,6 +51,20 @@ If a substantial unrelated change is present, stop and report it instead of sile
## 3. Perform targeted validation
+Confirm the task branch contains the current `origin/main` before running final validation of
+generated contracts or release evidence:
+
+```bash
+git fetch origin
+git rev-parse HEAD
+git rev-parse origin/main
+git merge-base HEAD origin/main
+```
+
+The branch contains `origin/main` only when the merge-base equals `origin/main`. If it does not,
+STOP. Do not merge or rebase as part of this check. Require an explicit synchronization decision
+before regenerating OpenAPI, generated TypeScript, or release evidence.
+
Determine validation from the files and behavior changed by this task.
Run the relevant targeted:
diff --git a/.claude/tools/gates.py b/.claude/tools/gates.py
index c18a5bb..bbffaae 100644
--- a/.claude/tools/gates.py
+++ b/.claude/tools/gates.py
@@ -25,6 +25,7 @@
import argparse
import json
+import os
import shutil
import subprocess
import sys
@@ -97,7 +98,7 @@ def _has_selected_test(root: Path, marker: str, keyword: str) -> bool:
return False
-def _command_responds(argv: list[str]) -> bool:
+def _command_responds(argv: list[str], *, env: dict[str, str] | None = None) -> bool:
"""Whether a subcommand actually exists, probed via its own `--help`.
A file existing is not the same as a command being implemented: `src/labbridge/cli.py` appears
@@ -109,7 +110,7 @@ def _command_responds(argv: list[str]) -> bool:
try:
return (
subprocess.run(
- [*argv, "--help"], capture_output=True, timeout=15, check=False
+ [*argv, "--help"], capture_output=True, timeout=15, check=False, env=env
).returncode
== 0
)
@@ -117,6 +118,19 @@ def _command_responds(argv: list[str]) -> bool:
return False
+def _checkout_env(root: Path) -> dict[str, str]:
+ """Environment that resolves `labbridge` to this checkout rather than to an editable install.
+
+ An editable install can point at a different worktree, so a probe without this would report on
+ someone else's bytes.
+ """
+ environment = dict(os.environ)
+ existing = environment.get("PYTHONPATH")
+ source = str(root / "src")
+ environment["PYTHONPATH"] = f"{source}{os.pathsep}{existing}" if existing else source
+ return environment
+
+
def _tool_gate(key: str, command: str, tool: str, present: bool, missing_reason: str) -> Gate:
if not present:
return Gate(key, command, SCAFFOLDED, missing_reason)
@@ -134,7 +148,9 @@ def collect(root: Path) -> list[Gate]:
compose = any(
(root / f).exists() for f in ("docker-compose.yml", "docker-compose.yaml", "compose.yaml")
)
- artifacts_cmd = _command_responds(["labbridge", "validate-artifacts"])
+ artifacts_cmd = _command_responds(
+ [sys.executable, "-m", "labbridge.cli", "validate-artifacts"], env=_checkout_env(root)
+ )
has_integration = _has_marked_test(root, "integration")
has_replay = _has_selected_test(root, "integration", "test_replay_determinism")
has_migration_test = _has_selected_test(root, "integration", "migration")
@@ -224,11 +240,11 @@ def collect(root: Path) -> list[Gate]:
),
Gate(
"artifacts",
- "labbridge validate-artifacts",
+ "PYTHONPATH=src python -m labbridge.cli validate-artifacts",
LIVE if artifacts_cmd else SCAFFOLDED,
- "command responds to --help"
+ "command responds to --help; verifies the committed artifacts/ tree"
if artifacts_cmd
- else "`labbridge validate-artifacts` is not implemented yet (ROADMAP Slice 3)",
+ else "`validate-artifacts` is not implemented yet (ROADMAP Slice 3)",
),
Gate(
"compose",
diff --git a/.gitattributes b/.gitattributes
index 335bbda..e260950 100644
--- a/.gitattributes
+++ b/.gitattributes
@@ -10,24 +10,20 @@ scripts/hooks/* text eol=lf
# SHA256SUMS.txt checksums the published documents byte-for-byte against their LF content. Pin LF so
# a Windows checkout cannot rewrite them to CRLF and make `sha256sum -c SHA256SUMS.txt` fail on a
# file nobody edited.
-*.md text eol=lf
+# Two trailing spaces are a hard line break in Markdown, so `git diff --check` must not read them
+# as whitespace errors in the published documents.
+*.md text eol=lf whitespace=-trailing-space
*.toml text eol=lf
SHA256SUMS.txt text eol=lf
-# Released integrity artifacts and their source fixtures are exact bytes. Do not let checkout
-# line-ending conversion invalidate their recorded hashes.
-artifacts/source-capture/** -text
-artifacts/experiment-passport/** -text
-artifacts/fault-campaign/** -text
+# Released integrity artifacts and the fixture inputs they are reproduced from are exact bytes. Do
+# not let checkout line-ending conversion invalidate their recorded hashes. These cover whole trees
+# rather than one rule per directory: a manifest-covered member added under a new artifact or
+# fixture directory is protected when it lands, not when someone remembers to extend this list.
+artifacts/** -text
artifacts/fault-campaign/raw-results.csv -text whitespace=-trailing-space
artifacts/cv-passport-demo/** -text -eol
-artifacts/gamry-dta-cv/** -text
-artifacts/echemdb-cv-exchange/** -text
-artifacts/galvanostatic-electrolysis/** -text
-fixtures/source/synthetic-replay-cv-opaque.csv -text
-fixtures/source/synthetic-gamry-cv.dta -text
-fixtures/source/synthetic-galvanostatic-electrolysis.csv -text
-fixtures/source/synthetic-galvanostatic-electrolysis.provenance.json -text
+fixtures/** -text
frontend/public/demo-fixtures/synthetic-cv-passport-demo.csv -text
frontend/src/generated/api-v1.ts text eol=lf
src/labbridge/evidence/schemas/** -text whitespace=-trailing-space
diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml
new file mode 100644
index 0000000..8daa817
--- /dev/null
+++ b/.github/workflows/ci.yml
@@ -0,0 +1,102 @@
+name: CI
+
+# Pull-request gating for the checks that need no services. The integration, migration, and
+# fault-campaign suites need PostgreSQL and MinIO and are deliberately not run here; they stay
+# explicit higher-layer checks so a green PR never implies a durability guarantee it did not test.
+on:
+ pull_request:
+ push:
+ branches: [main]
+
+permissions:
+ contents: read
+
+concurrency:
+ group: ci-${{ github.ref }}
+ cancel-in-progress: true
+
+defaults:
+ run:
+ shell: bash
+
+jobs:
+ python-gates:
+ # Both platforms on purpose. Committed evidence is verified by SHA-256, and a checkout that
+ # rewrites line endings changes those bytes on one platform only, so a Linux-only run cannot
+ # see it.
+ strategy:
+ fail-fast: false
+ matrix:
+ os: [ubuntu-latest, windows-latest]
+ runs-on: ${{ matrix.os }}
+ steps:
+ - uses: actions/checkout@v4
+ with:
+ # The whitespace check below diffs against the pull-request base commit.
+ fetch-depth: 0
+
+ - uses: actions/setup-python@v5
+ with:
+ python-version: '3.12'
+ cache: pip
+
+ - name: Install
+ run: pip install -e ".[dev]"
+
+ - name: Documentation consistency
+ run: python scripts/check_docs.py --strict
+
+ - name: Normative document manifest
+ run: sha256sum -c SHA256SUMS.txt
+
+ - name: Agent system
+ run: python .claude/tools/check_agent_system.py
+
+ - name: ruff format
+ run: ruff format --check src/ tests/ scripts/ migrations/ .claude/hooks/ .claude/tools/
+
+ - name: ruff check
+ run: ruff check src/ tests/ scripts/ migrations/ .claude/hooks/ .claude/tools/
+
+ - name: mypy --strict
+ run: mypy --strict src/
+
+ - name: Offline tests
+ run: pytest -q -m "not slow and not data and not integration"
+
+ - name: Committed artifact verification
+ run: python -m labbridge.cli validate-artifacts
+
+ # Scoped to what this change introduces: the published documents predate the gate and use
+ # trailing double spaces as Markdown hard breaks.
+ - name: Whitespace and conflict markers in this change
+ if: github.event_name == 'pull_request'
+ run: git diff --check "${{ github.event.pull_request.base.sha }}" HEAD
+
+ frontend-contract:
+ # The OpenAPI/generated-type drift gate. Its Python half runs in the offline suite above; this
+ # is the half that proves the committed TypeScript still matches the committed contract.
+ runs-on: ubuntu-latest
+ defaults:
+ run:
+ working-directory: frontend
+ steps:
+ - uses: actions/checkout@v4
+
+ - uses: actions/setup-node@v4
+ with:
+ node-version: '24'
+ cache: npm
+ cache-dependency-path: frontend/package-lock.json
+
+ - name: Install
+ run: npm ci
+
+ - name: Generated API types match the contract
+ run: npm run api:check
+
+ - name: Typecheck
+ run: npm run typecheck
+
+ - name: Unit tests
+ run: npm test -- --run
diff --git a/README.md b/README.md
index 9363959..7c01201 100644
--- a/README.md
+++ b/README.md
@@ -232,6 +232,11 @@ labbridge reconcile
Reclaims expired leases, closes abandoned attempts with durable outcomes, and classifies stored
objects without deleting unexplained bytes. A worker runs the same reconciliation pass at startup.
+It does not cover source intake: `SourceArtifactService.reconcile` implements the same recovery for
+a source left `pending` after an intake interrupted between the object write and the metadata
+commit (`docs/FAILURE_MATRIX.md` F-048), but has no operator command, because its `commit`/
+`quarantine` writes are unguarded against a concurrent `intake()` of the same content identity and
+exposing it needs that race closed first.
## Evidence status
@@ -287,10 +292,9 @@ single-user CV Passport candidate is under
domain classification and unfamiliar-viewer acceptance records described above. The
Phase 4 candidate under [`artifacts/gamry-dta-cv`](artifacts/gamry-dta-cv) follows the same boundary:
its code, tests, and candidate Package justify `implemented`, not `demonstrated`, in this worktree.
-Phase 7 synthetic-replay reliability evidence is released under
-[`artifacts/fault-campaign`](artifacts/fault-campaign). It demonstrates the recorded fault campaign,
-backup/restore, replay comparison, and full stored-object verification; it does not demonstrate
-observed replay or live execution.
+Phase 7 synthetic-replay reliability evidence is committed under
+[`artifacts/fault-campaign`](artifacts/fault-campaign). The recorded producer is a clean committed
+tree that contains `origin/main`. It does not demonstrate observed replay or live execution.
The galvanostatic electrolysis candidate under
[`artifacts/galvanostatic-electrolysis`](artifacts/galvanostatic-electrolysis) packages explicit time,
current, and potential series while reporting chemical analysis as unavailable. It makes no
@@ -304,10 +308,11 @@ conversion, selectivity, yield, product-assignment, or Faradaic-efficiency claim
- `labbridge reconcile` and worker-startup reconciliation are on-demand rather than a continuous
daemon. Retry scheduling is durable and bounded, but no continuously running scheduler is
provided.
-- `labbridge validate-artifacts` defaults to `--mode bundle-only`, verifies bundle members locally,
- and reports `partial`; it does not contact object storage. `--mode full` additionally checks every
- referenced object for existence, byte size, and SHA-256 and reports `complete` only when those checks
- pass.
+- `labbridge validate-artifacts` with no `--bundle` verifies every closed manifest under `artifacts/`
+ and under the local `data/bundles/` root, and exits non-zero when it finds nothing to verify. It
+ defaults to `--mode bundle-only`, verifies bundle members locally, and reports `partial`; it does
+ not contact object storage. `--mode full` additionally checks every referenced object for existence,
+ byte size, and SHA-256 and reports `complete` only when those checks pass.
- Crash recovery is tested across real process boundaries after lease acquisition, after adapter
return, during object upload, after upload before the outcome transaction, after commit before
acknowledgement, and during evidence export. Campaign cancellation with a leased job is also
diff --git a/SHA256SUMS.txt b/SHA256SUMS.txt
index 18a2eba..cda0c3c 100644
--- a/SHA256SUMS.txt
+++ b/SHA256SUMS.txt
@@ -6,7 +6,7 @@ a70a90ce5f4920d42f1d38cab5785f3ca19206b4fb98f2464718d813b08a752e *docs/DATA_STRA
cc9585ebb400cecfbc796296753f48f47fe06fb18e0393037d3315b62a9c6819 *docs/DEVELOPMENT_WORKFLOW.md
5f4a3475482f6485bca11c02f5b553a99c440c1eb164867dba118cfa73b35c83 *docs/FAILURE_MATRIX.md
11ba8a68a5e615b5f03ed68c08e8724ed5abd3c1f2f84cb50f0a6063ff042517 *docs/OPERATOR_RUNBOOK.md
-44b3ff8b19669513536732c7bb3434236ac78f51b6f52ea593aeed9521a3e1aa *docs/ROADMAP.md
+f0916117156813286c7ba9c215930682fbf4ecb620efef13da059ffaae9a8253 *docs/ROADMAP.md
b0fe3118afa8403a2ec7ee138479fd24f93135a34957b1c75a5624d6839c786c *docs/SIMULATOR_MODEL.md
-b36f89a42fdaa1dda18bc891c5d6f30a2131e4ffc22538407b3713e7d9e0961d *docs/SPEC.md
+fde295bd73f5959c68d5fe2690fcac6286384954b82a19733acc4624465701bb *docs/SPEC.md
e74afe9f11555bf79778f53a1388d21bba3434b20e558f7ee6d028fbacd740de *docs/superpowers/specs/2026-08-12-cv-passport-demo-design.md
diff --git a/artifacts/echemdb-cv-exchange/LIMITATIONS.md b/artifacts/echemdb-cv-exchange/LIMITATIONS.md
index 4636442..37473d8 100644
--- a/artifacts/echemdb-cv-exchange/LIMITATIONS.md
+++ b/artifacts/echemdb-cv-exchange/LIMITATIONS.md
@@ -22,5 +22,14 @@ contact area, scan rate, and cycle information are omitted and listed in `mappin
EchemDB figure type is an explicitly asserted lossy projection; LabBridge `data_origin` and
`execution_mode` remain independently represented in `labbridge-provenance.json`.
+Two boundaries of that companion arrangement are explicit rather than resolved. `datapackage.json`
+declares one resource, `cv.csv`, and does not reference `labbridge-provenance.json`, so a consumer
+reading the package only as Frictionless defines it receives the table without LabBridge origin,
+execution mode, or evidence identities; those are found by reading the companion beside it.
+`cv.csv` itself carries no synthetic marker in its filename or its columns, because its field set
+is fixed by the pinned EchemDB `figureDescription`. Within this package the synthetic origin is
+declared by `source.citationKey`, `source.originalFilename`, `figureDescription.type`, and the
+companion; detached from them the table does not identify itself as synthetic.
+
The capability status is `implemented`; this uncommitted candidate is not evidence of clean-checkout
demonstration, EchemDB ingestion, EchemDB publication, or production deployment.
diff --git a/artifacts/echemdb-cv-exchange/manifest.json b/artifacts/echemdb-cv-exchange/manifest.json
index 703634b..504859b 100644
--- a/artifacts/echemdb-cv-exchange/manifest.json
+++ b/artifacts/echemdb-cv-exchange/manifest.json
@@ -37,9 +37,9 @@
"sha256": "a7cda1623b5170e94d53ec8beac6969568fee02fcfa0539cd828352dae38b577"
},
{
- "byte_size": 1866,
+ "byte_size": 2622,
"name": "LIMITATIONS.md",
- "sha256": "2cd60c07b092bb4216fb704fcda233e37824d4a48ea222b0f119a327d52b60e1"
+ "sha256": "94dc644c23cab3fabae5a082cc4cdb43bfcd8e4fe31ffa84211a64e1fa091f9e"
},
{
"byte_size": 12651,
@@ -87,7 +87,7 @@
"sha256": "5ad1ecbdad8e23c9260d29e4fe7bde569cbb79a1899c8c1430310647e466d236"
}
],
- "files_digest": "565c900337c6db637d74a6647e1685084df93dc0f33e778060f55246864f6909",
+ "files_digest": "b582c2c8efd880b26fa11dd1eed415053dc743cb875aee809d72035d4c9a1d1e",
"observation_id": "cv-observation:f88ccc6e9ad289c674d8f3ba4b9bcc20",
"producing_versions": {
"adapter": "echemdb-cv/1",
diff --git a/artifacts/fault-campaign/LIMITATIONS.md b/artifacts/fault-campaign/LIMITATIONS.md
index 70d10fe..e8a2e0a 100644
--- a/artifacts/fault-campaign/LIMITATIONS.md
+++ b/artifacts/fault-campaign/LIMITATIONS.md
@@ -1,5 +1,5 @@
# Limitations
-- The released run used generated synthetic fixture bytes in replay mode; it did not use observed HER archive bytes.
+- The released run used synthetic bytes in replay mode.
- Future observed live execution remains outside Phase 7 and was not run.
- Results cover only the recorded environment, seeds, and injected boundaries.
diff --git a/artifacts/fault-campaign/REPRODUCE.txt b/artifacts/fault-campaign/REPRODUCE.txt
index 55fe12d..19dacb1 100644
--- a/artifacts/fault-campaign/REPRODUCE.txt
+++ b/artifacts/fault-campaign/REPRODUCE.txt
@@ -1 +1 @@
-python scripts/reproduce_campaign_reliability.py --campaigns 100 --master-seed 20260813 --database-name labbridge_phase7_fault_release2 --bucket labbridge-phase7-fault-release2 --output build/phase7-fault-campaign
+python scripts/reproduce_campaign_reliability.py --campaigns 100 --master-seed 20260813 --database-name labbridge_phase7_fault_release3 --bucket labbridge-phase7-fault-release3 --output build/phase7-fault-campaign
diff --git a/artifacts/fault-campaign/audit-log.jsonl b/artifacts/fault-campaign/audit-log.jsonl
index 903a271..a8e791c 100644
--- a/artifacts/fault-campaign/audit-log.jsonl
+++ b/artifacts/fault-campaign/audit-log.jsonl
@@ -1,100 +1,100 @@
-{"campaign_id":"5aa7cb86-8bb3-4506-9bd5-a768e251cb41","fault_point":"after_upload_before_outcome_transaction","multipart_aborted":false,"ordinal":1,"partial_export_removed":false,"process_state":{"attempt_id":"542cde9c-ba02-4094-987f-f04f856158c7","byte_size":12528,"committed":false,"fencing_token":1,"job_id":"4b9ce2b9-8809-4525-92d2-eb29167d64fe","kill_stage":"after_upload_before_outcome_transaction","lease_expires_at":"2026-08-13 15:20:24.989067+00:00","lease_owner":"fault-worker-001","lease_token":"306d6e6c-4ccb-47f7-a947-96342cae7fd4","object_keys":["observations/5aa7cb86-8bb3-4506-9bd5-a768e251cb41/d8cd5745de60b80ddbcc49714fe19fe4cb42fa70b27ed60a64af1eb85def8b0f"],"pid":33532,"reached":true,"sha256":"d8cd5745de60b80ddbcc49714fe19fe4cb42fa70b27ed60a64af1eb85def8b0f","work_item_id":"abeb0033-c7f9-46c9-b91d-0d7b4327bb48"},"replay_mismatches":[],"stderr":"","stdout":""}
-{"campaign_id":"7e46971f-d52e-4048-8764-c329f7108574","fault_point":"after_commit_before_acknowledgement","multipart_aborted":false,"ordinal":2,"partial_export_removed":false,"process_state":{"attempt_id":"bb00a261-eebb-43b9-803d-67ff39df25e7","byte_size":12552,"committed":true,"fencing_token":1,"job_id":"75a71070-54fd-438d-bdfa-38dc2389e8d3","kill_stage":"after_commit_before_acknowledgement","lease_expires_at":null,"lease_owner":"fault-worker-002","lease_token":null,"object_keys":["observations/7e46971f-d52e-4048-8764-c329f7108574/15b5f92914195b4689fb72a65379ddfe54be32309e713612ab9fd0ba8231232c"],"observation_id":"obs:ec33918fdd0d2872e583371f88a7fdcb","outcome_status":"succeeded","pid":11664,"reached":true,"sha256":"15b5f92914195b4689fb72a65379ddfe54be32309e713612ab9fd0ba8231232c","work_item_id":"893f61bc-c494-4fe8-a534-783e91118fe0"},"replay_mismatches":[],"stderr":"","stdout":""}
-{"campaign_id":"8a1487ce-d860-43d1-8d54-043be3122625","fault_point":"after_commit_before_acknowledgement","multipart_aborted":false,"ordinal":3,"partial_export_removed":false,"process_state":{"attempt_id":"018e719d-06dc-436f-a14f-ffa62f18a3d2","byte_size":12588,"committed":true,"fencing_token":1,"job_id":"b4f8b9a8-7dbf-4a99-b611-362b15bc5e80","kill_stage":"after_commit_before_acknowledgement","lease_expires_at":null,"lease_owner":"fault-worker-003","lease_token":null,"object_keys":["observations/8a1487ce-d860-43d1-8d54-043be3122625/d8935227d741c829368468f14ee66e8253bef83a8cb6fe49e3d363464bfe90ea"],"observation_id":"obs:4a4ceb152add486a6face6ca46f59b79","outcome_status":"succeeded","pid":16004,"reached":true,"sha256":"d8935227d741c829368468f14ee66e8253bef83a8cb6fe49e3d363464bfe90ea","work_item_id":"41cdffb6-d207-4955-a637-cccf1905f245"},"replay_mismatches":[],"stderr":"","stdout":""}
-{"campaign_id":"2ac4cf24-29e8-4db0-a91d-0fea1100c541","fault_point":"after_upload_before_outcome_transaction","multipart_aborted":false,"ordinal":4,"partial_export_removed":false,"process_state":{"attempt_id":"65d4bff1-00a9-493e-8dd8-091f941c082c","byte_size":12612,"committed":false,"fencing_token":1,"job_id":"be782267-ab40-4315-a2f1-e0bb84b213f0","kill_stage":"after_upload_before_outcome_transaction","lease_expires_at":"2026-08-13 15:20:39.710696+00:00","lease_owner":"fault-worker-004","lease_token":"4c0732e3-eb69-45e5-949a-4b8bf0932078","object_keys":["observations/2ac4cf24-29e8-4db0-a91d-0fea1100c541/a5e2da997bfdf576e90976ee6e41cf2857bf784047581585fe3a835eaf018af4"],"pid":37184,"reached":true,"sha256":"a5e2da997bfdf576e90976ee6e41cf2857bf784047581585fe3a835eaf018af4","work_item_id":"edb0692f-482c-4bb0-a1e7-fe7e800b1f13"},"replay_mismatches":[],"stderr":"","stdout":""}
-{"campaign_id":"622a6919-2afb-4128-8f66-cf7871d9dd3b","fault_point":"during_evidence_export","multipart_aborted":false,"ordinal":5,"partial_export_removed":true,"process_state":{"complete_byte_size":12383,"kill_stage":"during_evidence_export","object_store_bucket":"labbridge-phase7-fault-release2","package_id":"experiment-package:4c7c46442779acea8a789fb67051cb96","partial_byte_size":6191,"partial_path":"build\\phase7-fault-release2\\working\\interrupted\\622a6919-2afb-4128-8f66-cf7871d9dd3b.zip.partial","pid":8936,"reached":true},"replay_mismatches":[],"stderr":"","stdout":""}
-{"campaign_id":"41a4fbd3-7748-4c64-8fc2-9d5e05c148a3","fault_point":"after_commit_before_acknowledgement","multipart_aborted":false,"ordinal":6,"partial_export_removed":false,"process_state":{"attempt_id":"cd6eee00-3653-4c21-b56d-219ba5c1bddc","byte_size":12612,"committed":true,"fencing_token":1,"job_id":"c09c0d8a-9eb3-40fe-ba51-664162b252df","kill_stage":"after_commit_before_acknowledgement","lease_expires_at":null,"lease_owner":"fault-worker-006","lease_token":null,"object_keys":["observations/41a4fbd3-7748-4c64-8fc2-9d5e05c148a3/aad36cf1091ec61b8a9c0fd9a87bd6804cd05449a99877dc799f13d96726f4aa"],"observation_id":"obs:c2adaedb0ac11f4fdb041873e5366ca7","outcome_status":"succeeded","pid":37984,"reached":true,"sha256":"aad36cf1091ec61b8a9c0fd9a87bd6804cd05449a99877dc799f13d96726f4aa","work_item_id":"a9b5bead-5559-4fcb-a09a-4d8c9e875b53"},"replay_mismatches":[],"stderr":"","stdout":""}
-{"campaign_id":"135daa99-c98d-4d55-8207-e81b7f351cda","fault_point":"after_lease_acquisition","multipart_aborted":false,"ordinal":7,"partial_export_removed":false,"process_state":{"attempt_id":null,"committed":false,"fencing_token":1,"job_id":"cdaf8466-29d9-4735-b165-796d336ae50b","kill_stage":"after_lease_acquisition","lease_expires_at":"2026-08-13 15:20:53.851236+00:00","lease_owner":"fault-worker-007","lease_token":"5d05831f-fd33-4e54-a315-86fb9e770e38","pid":38840,"reached":true,"work_item_id":"16a4f205-b2af-46b2-b399-071aee823542"},"replay_mismatches":[],"stderr":"","stdout":""}
-{"campaign_id":"cbf3a329-e6f5-4794-a66a-c15f40da536c","fault_point":"during_object_upload","multipart_aborted":true,"ordinal":8,"partial_export_removed":false,"process_state":{"attempt_id":"9c9f9c5e-291f-403c-befa-83a08a994745","committed":false,"fencing_token":1,"job_id":"0a9ee547-a16b-4d3e-9eb6-9d3b75692f88","kill_stage":"during_object_upload","lease_expires_at":"2026-08-13 15:20:59.403521+00:00","lease_owner":"fault-worker-008","lease_token":"be2b4de6-814c-4aff-b46c-17f14fd3edc9","multipart_part_count":1,"multipart_upload_id":"ZjAzZDk3MmEtNDFiYy00ZGRhLTg1MjAtNWI4MzdmNzFhZDRiLjk5MGVjOGVlLTA1MjUtNGI0Yy04YjZkLTNjYTE5Y2M1MWIwN3gxNzg2NjM0NDU4NjIwMDA2MjA0","object_keys":["observations/cbf3a329-e6f5-4794-a66a-c15f40da536c/15b5f92914195b4689fb72a65379ddfe54be32309e713612ab9fd0ba8231232c"],"pid":30664,"reached":true,"work_item_id":"df369640-9a72-4aaf-a803-31be83268dd6"},"replay_mismatches":[],"stderr":"","stdout":""}
-{"campaign_id":"9ae3ef5b-65f1-4c96-9a9a-f9d7145f412b","fault_point":"during_object_upload","multipart_aborted":true,"ordinal":9,"partial_export_removed":false,"process_state":{"attempt_id":"2742b1a0-c9a6-41c2-9f62-c26e0a51742d","committed":false,"fencing_token":1,"job_id":"2ecdd756-0e8c-4ccd-b351-0c40786225b1","kill_stage":"during_object_upload","lease_expires_at":"2026-08-13 15:21:05.110396+00:00","lease_owner":"fault-worker-009","lease_token":"41268dd0-ed70-448d-acaf-1d94e867dea9","multipart_part_count":1,"multipart_upload_id":"ZjAzZDk3MmEtNDFiYy00ZGRhLTg1MjAtNWI4MzdmNzFhZDRiLjhhNDY1NTYyLWQ4OWQtNDlmNy04Yzk5LTNmZTBlM2Y3ZTg5NXgxNzg2NjM0NDY0MjgzNTcxNDA0","object_keys":["observations/9ae3ef5b-65f1-4c96-9a9a-f9d7145f412b/d8935227d741c829368468f14ee66e8253bef83a8cb6fe49e3d363464bfe90ea"],"pid":27656,"reached":true,"work_item_id":"73b0b84f-ecd9-465f-b80f-f06e6fe2c055"},"replay_mismatches":[],"stderr":"","stdout":""}
-{"campaign_id":"23809f10-2911-4424-ac25-74dd64d39835","fault_point":"after_adapter_return_before_upload","multipart_aborted":false,"ordinal":10,"partial_export_removed":false,"process_state":{"attempt_id":"2a202dc6-70de-4396-a97c-d36823ab469e","committed":false,"fencing_token":1,"job_id":"01a91fab-72e5-4b2b-997c-155d30af840c","kill_stage":"after_adapter_return_before_upload","lease_expires_at":"2026-08-13 15:21:11.544085+00:00","lease_owner":"fault-worker-010","lease_token":"1fa8c660-3636-400e-bf2e-ca95c147277d","pid":31724,"reached":true,"work_item_id":"f718c8d1-92f3-4670-8819-be36ef65c766"},"replay_mismatches":[],"stderr":"","stdout":""}
-{"campaign_id":"6c0dcbcf-e8f3-484f-92fb-835a0a7021d0","fault_point":"during_object_upload","multipart_aborted":true,"ordinal":11,"partial_export_removed":false,"process_state":{"attempt_id":"b6cf3fae-0143-4a33-9f4d-8b46917b9cd3","committed":false,"fencing_token":1,"job_id":"e747eff1-507d-43c5-8798-bef101e9865b","kill_stage":"during_object_upload","lease_expires_at":"2026-08-13 15:21:17.886397+00:00","lease_owner":"fault-worker-011","lease_token":"753c7e9e-73e3-4622-bb7a-14eec1a90ace","multipart_part_count":1,"multipart_upload_id":"ZjAzZDk3MmEtNDFiYy00ZGRhLTg1MjAtNWI4MzdmNzFhZDRiLmY5N2IwY2RlLTIzZGQtNGE2ZC05OGFmLTNmMjI5ZGY3NDhjYXgxNzg2NjM0NDc3MTg3MDgzNTYz","object_keys":["observations/6c0dcbcf-e8f3-484f-92fb-835a0a7021d0/a51d521be9793013395aac33cad16a4953a973d5ff0b38ad3c40a996a12e59ac"],"pid":27284,"reached":true,"work_item_id":"8e486dd8-9a35-402e-836d-9795500803b6"},"replay_mismatches":[],"stderr":"","stdout":""}
-{"campaign_id":"6de3894d-bc6f-4ae7-b3a7-51c97dd02403","fault_point":"after_commit_before_acknowledgement","multipart_aborted":false,"ordinal":12,"partial_export_removed":false,"process_state":{"attempt_id":"dcf2ce97-b93a-42af-97a0-e5580857b00b","byte_size":12612,"committed":true,"fencing_token":1,"job_id":"a6013c4a-743e-4dfa-a8c0-cac1a3ee22f0","kill_stage":"after_commit_before_acknowledgement","lease_expires_at":null,"lease_owner":"fault-worker-012","lease_token":null,"object_keys":["observations/6de3894d-bc6f-4ae7-b3a7-51c97dd02403/aad36cf1091ec61b8a9c0fd9a87bd6804cd05449a99877dc799f13d96726f4aa"],"observation_id":"obs:c2adaedb0ac11f4fdb041873e5366ca7","outcome_status":"succeeded","pid":39136,"reached":true,"sha256":"aad36cf1091ec61b8a9c0fd9a87bd6804cd05449a99877dc799f13d96726f4aa","work_item_id":"ef76e874-bfab-41b3-8a9c-7ab254ec6682"},"replay_mismatches":[],"stderr":"","stdout":""}
-{"campaign_id":"c2203cb6-dd54-49df-b83d-e3acc688ded5","fault_point":"after_adapter_return_before_upload","multipart_aborted":false,"ordinal":13,"partial_export_removed":false,"process_state":{"attempt_id":"2a77f49d-117c-444b-a595-81b9229a82ab","committed":false,"fencing_token":1,"job_id":"52f3f5ec-952b-48f7-b59b-17a9a09a5d23","kill_stage":"after_adapter_return_before_upload","lease_expires_at":"2026-08-13 15:21:29.283029+00:00","lease_owner":"fault-worker-013","lease_token":"78f91b7e-e2b9-448e-b2a1-abb42f4d9c2d","pid":33548,"reached":true,"work_item_id":"e0d80908-4949-4c53-b806-ba1dc0c40fa5"},"replay_mismatches":[],"stderr":"","stdout":""}
-{"campaign_id":"47bc04ef-6a51-48b1-bbca-68ecff5f7158","fault_point":"after_lease_acquisition","multipart_aborted":false,"ordinal":14,"partial_export_removed":false,"process_state":{"attempt_id":null,"committed":false,"fencing_token":1,"job_id":"2c8849d4-ae0b-4099-a801-39dcbf474c56","kill_stage":"after_lease_acquisition","lease_expires_at":"2026-08-13 15:21:34.920642+00:00","lease_owner":"fault-worker-014","lease_token":"8ae8b71e-8cf2-4774-b57a-2f48e1b7e8b4","pid":1572,"reached":true,"work_item_id":"313070c9-633a-4be8-a4d9-5b3dd1a3030e"},"replay_mismatches":[],"stderr":"","stdout":""}
-{"campaign_id":"33159243-2f76-409a-aefe-c516d8c6c0d7","fault_point":"after_lease_acquisition","multipart_aborted":false,"ordinal":15,"partial_export_removed":false,"process_state":{"attempt_id":null,"committed":false,"fencing_token":1,"job_id":"24e036cf-06de-47b6-bcae-95ecb865d948","kill_stage":"after_lease_acquisition","lease_expires_at":"2026-08-13 15:21:40.616533+00:00","lease_owner":"fault-worker-015","lease_token":"8ab153e4-fbe3-48b3-bd08-1904b3d3c24c","pid":10288,"reached":true,"work_item_id":"b7c5a1a2-90f0-4b8b-9c53-9a4651b72147"},"replay_mismatches":[],"stderr":"","stdout":""}
-{"campaign_id":"b22d4364-8e6a-4c06-b612-f956d3aa2e77","fault_point":"after_lease_acquisition","multipart_aborted":false,"ordinal":16,"partial_export_removed":false,"process_state":{"attempt_id":null,"committed":false,"fencing_token":1,"job_id":"5c0a19c6-327d-4263-902b-ed3a0da12323","kill_stage":"after_lease_acquisition","lease_expires_at":"2026-08-13 15:21:46.550633+00:00","lease_owner":"fault-worker-016","lease_token":"88bf413c-637a-4388-985e-be4d8e484a19","pid":38764,"reached":true,"work_item_id":"cc0b8e3b-0a85-4d4d-8db9-afcf6ce93295"},"replay_mismatches":[],"stderr":"","stdout":""}
-{"campaign_id":"21c1f828-89e5-408c-8771-d2ff0f941d88","fault_point":"after_adapter_return_before_upload","multipart_aborted":false,"ordinal":17,"partial_export_removed":false,"process_state":{"attempt_id":"5269c6bf-ae3a-41fb-9530-2a1891f44d58","committed":false,"fencing_token":1,"job_id":"a32cd15b-381b-4702-b546-b3f32a00d809","kill_stage":"after_adapter_return_before_upload","lease_expires_at":"2026-08-13 15:21:53.266949+00:00","lease_owner":"fault-worker-017","lease_token":"246166d8-0cf1-4fdc-be98-def5ad4c9937","pid":39240,"reached":true,"work_item_id":"7bdc7776-8d68-47b0-a4f4-924cc6222ef4"},"replay_mismatches":[],"stderr":"","stdout":""}
-{"campaign_id":"8a1bf94c-00ec-4b36-9a75-de568152b0cd","fault_point":"during_object_upload","multipart_aborted":true,"ordinal":18,"partial_export_removed":false,"process_state":{"attempt_id":"0db0e437-6521-41b9-9795-41045fc92e45","committed":false,"fencing_token":1,"job_id":"ac416269-13d4-4edf-a5c1-971477de3bb9","kill_stage":"during_object_upload","lease_expires_at":"2026-08-13 15:22:00.309099+00:00","lease_owner":"fault-worker-018","lease_token":"3415d076-b763-4c7c-932b-103287db78c6","multipart_part_count":1,"multipart_upload_id":"ZjAzZDk3MmEtNDFiYy00ZGRhLTg1MjAtNWI4MzdmNzFhZDRiLjI3YWMyMDZkLTJjZjctNGI4Mi04ZDU5LTQ3Mzc1MmQyY2U3YngxNzg2NjM0NTE5NTQ3MDE3MDk5","object_keys":["observations/8a1bf94c-00ec-4b36-9a75-de568152b0cd/aad36cf1091ec61b8a9c0fd9a87bd6804cd05449a99877dc799f13d96726f4aa"],"pid":31624,"reached":true,"work_item_id":"7f380133-e911-4878-8e53-008274d772c1"},"replay_mismatches":[],"stderr":"","stdout":""}
-{"campaign_id":"f3bd9b1c-d26c-4cfd-bf74-58f35b299087","fault_point":"after_adapter_return_before_upload","multipart_aborted":false,"ordinal":19,"partial_export_removed":false,"process_state":{"attempt_id":"8b6f7318-45a1-4474-9fc9-669c852db75f","committed":false,"fencing_token":1,"job_id":"302ba0f4-2cde-4508-a833-69911dd112eb","kill_stage":"after_adapter_return_before_upload","lease_expires_at":"2026-08-13 15:22:07.807979+00:00","lease_owner":"fault-worker-019","lease_token":"0c385830-28f9-4e67-ac39-ab22da5b3ee9","pid":33700,"reached":true,"work_item_id":"5e1bca03-4c60-4a23-894c-6fd4b684de2c"},"replay_mismatches":[],"stderr":"","stdout":""}
-{"campaign_id":"72c5a640-a72e-4e7b-8ec0-f7807877a56a","fault_point":"during_object_upload","multipart_aborted":true,"ordinal":20,"partial_export_removed":false,"process_state":{"attempt_id":"f3c3da16-8d25-47b5-befa-666d913018b5","committed":false,"fencing_token":1,"job_id":"ca151eec-f885-48dc-8dfb-8ed84c942111","kill_stage":"during_object_upload","lease_expires_at":"2026-08-13 15:22:14.984901+00:00","lease_owner":"fault-worker-020","lease_token":"910fe5fa-889e-4f73-bc93-b6f1e8efbfbd","multipart_part_count":1,"multipart_upload_id":"ZjAzZDk3MmEtNDFiYy00ZGRhLTg1MjAtNWI4MzdmNzFhZDRiLjkxYWNmYmYxLWU3MDMtNGY2Yi05ZTc4LTQ1NDc0NDE1MDAzM3gxNzg2NjM0NTM0MjA2NDE2NzA2","object_keys":["observations/72c5a640-a72e-4e7b-8ec0-f7807877a56a/15b5f92914195b4689fb72a65379ddfe54be32309e713612ab9fd0ba8231232c"],"pid":30908,"reached":true,"work_item_id":"c903e840-7b99-4443-8d96-88f99472cef8"},"replay_mismatches":[],"stderr":"","stdout":""}
-{"campaign_id":"2a15e30a-dd39-47a3-8ced-ede6c17e1263","fault_point":"during_object_upload","multipart_aborted":true,"ordinal":21,"partial_export_removed":false,"process_state":{"attempt_id":"0f8844ef-0676-4fc9-b432-a278e1d13866","committed":false,"fencing_token":1,"job_id":"f8626faa-c6a9-4977-8b19-13fddda3d60d","kill_stage":"during_object_upload","lease_expires_at":"2026-08-13 15:22:21.813040+00:00","lease_owner":"fault-worker-021","lease_token":"a49eafa8-3886-47b8-91d2-e44510428ffc","multipart_part_count":1,"multipart_upload_id":"ZjAzZDk3MmEtNDFiYy00ZGRhLTg1MjAtNWI4MzdmNzFhZDRiLmYxYzY3NGRjLTc2NDQtNDFmOC04NDQxLWM1ZWZiMDg5OGQxZXgxNzg2NjM0NTQxMDQ5Mjc0NzE1","object_keys":["observations/2a15e30a-dd39-47a3-8ced-ede6c17e1263/d8935227d741c829368468f14ee66e8253bef83a8cb6fe49e3d363464bfe90ea"],"pid":38248,"reached":true,"work_item_id":"ab826d50-abbc-431a-83ca-19c444d5514b"},"replay_mismatches":[],"stderr":"","stdout":""}
-{"campaign_id":"cabc27fd-a974-417e-98c7-a16fa4bfa22a","fault_point":"after_upload_before_outcome_transaction","multipart_aborted":false,"ordinal":22,"partial_export_removed":false,"process_state":{"attempt_id":"cba75877-2372-43a9-ae43-83bc19ce002f","byte_size":12612,"committed":false,"fencing_token":1,"job_id":"090c1b87-c13b-48dd-8125-3436247f98ba","kill_stage":"after_upload_before_outcome_transaction","lease_expires_at":"2026-08-13 15:22:29.380705+00:00","lease_owner":"fault-worker-022","lease_token":"86273212-8614-4169-9f25-55fa8a8a9043","object_keys":["observations/cabc27fd-a974-417e-98c7-a16fa4bfa22a/a5e2da997bfdf576e90976ee6e41cf2857bf784047581585fe3a835eaf018af4"],"pid":39284,"reached":true,"sha256":"a5e2da997bfdf576e90976ee6e41cf2857bf784047581585fe3a835eaf018af4","work_item_id":"a9807a6e-dad9-446c-b184-017854beaef2"},"replay_mismatches":[],"stderr":"","stdout":""}
-{"campaign_id":"6f7443d7-6eef-4ff6-b011-31682267449a","fault_point":"during_object_upload","multipart_aborted":true,"ordinal":23,"partial_export_removed":false,"process_state":{"attempt_id":"feee38a6-8e5a-4549-8239-b2a1693c6461","committed":false,"fencing_token":1,"job_id":"eda90ff1-84eb-442e-b35e-bccc32dee64d","kill_stage":"during_object_upload","lease_expires_at":"2026-08-13 15:22:37.130414+00:00","lease_owner":"fault-worker-023","lease_token":"391b4924-1daa-4315-acae-4713963c4489","multipart_part_count":1,"multipart_upload_id":"ZjAzZDk3MmEtNDFiYy00ZGRhLTg1MjAtNWI4MzdmNzFhZDRiLjUxZWU0OGE4LTY2M2MtNDBkOS1iZTE0LWYyYzc0Nzk0MjQ4Y3gxNzg2NjM0NTU2MzI5MDk5MDE2","object_keys":["observations/6f7443d7-6eef-4ff6-b011-31682267449a/a51d521be9793013395aac33cad16a4953a973d5ff0b38ad3c40a996a12e59ac"],"pid":36732,"reached":true,"work_item_id":"b0ecc748-231a-47c2-bf90-4a3eeb61aee2"},"replay_mismatches":[],"stderr":"","stdout":""}
-{"campaign_id":"3ee666c6-07f4-484b-9c39-266020796907","fault_point":"after_adapter_return_before_upload","multipart_aborted":false,"ordinal":24,"partial_export_removed":false,"process_state":{"attempt_id":"19c18150-8bea-4be5-ba75-0499d7293bff","committed":false,"fencing_token":1,"job_id":"aef10ee3-2de4-4568-9c5a-c6adfee24777","kill_stage":"after_adapter_return_before_upload","lease_expires_at":"2026-08-13 15:22:43.166193+00:00","lease_owner":"fault-worker-024","lease_token":"0b76e19f-f516-47f2-8315-6446e0071b5a","pid":39116,"reached":true,"work_item_id":"6e0921cc-9aa2-4286-a595-dec1417bf67d"},"replay_mismatches":[],"stderr":"","stdout":""}
-{"campaign_id":"2e4a527c-df6b-48a9-aeed-259f81145504","fault_point":"after_lease_acquisition","multipart_aborted":false,"ordinal":25,"partial_export_removed":false,"process_state":{"attempt_id":null,"committed":false,"fencing_token":1,"job_id":"21686b91-dc66-4758-b450-fd8a96dd48a9","kill_stage":"after_lease_acquisition","lease_expires_at":"2026-08-13 15:22:49.285832+00:00","lease_owner":"fault-worker-025","lease_token":"f3debc79-f50a-426a-861d-ff2a099a1e7d","pid":21688,"reached":true,"work_item_id":"468c6e03-798e-4d64-8550-5cbe41185f6a"},"replay_mismatches":[],"stderr":"","stdout":""}
-{"campaign_id":"4d60587b-1e77-4a75-a65d-f8faca41f981","fault_point":"after_upload_before_outcome_transaction","multipart_aborted":false,"ordinal":26,"partial_export_removed":false,"process_state":{"attempt_id":"eb88f709-f69b-4750-b81f-c5285d7a280b","byte_size":12552,"committed":false,"fencing_token":1,"job_id":"8ba1f17a-ab5a-4b5f-92d1-b2e90de29094","kill_stage":"after_upload_before_outcome_transaction","lease_expires_at":"2026-08-13 15:22:56.053213+00:00","lease_owner":"fault-worker-026","lease_token":"327ad864-1fca-41b9-b3cd-46bee08adc89","object_keys":["observations/4d60587b-1e77-4a75-a65d-f8faca41f981/15b5f92914195b4689fb72a65379ddfe54be32309e713612ab9fd0ba8231232c"],"pid":5116,"reached":true,"sha256":"15b5f92914195b4689fb72a65379ddfe54be32309e713612ab9fd0ba8231232c","work_item_id":"606acb4a-7f97-4e44-9db2-7371727039e9"},"replay_mismatches":[],"stderr":"","stdout":""}
-{"campaign_id":"e47fe0e5-eb40-4c46-b582-cded270a7d80","fault_point":"after_lease_acquisition","multipart_aborted":false,"ordinal":27,"partial_export_removed":false,"process_state":{"attempt_id":null,"committed":false,"fencing_token":1,"job_id":"7630891b-1291-4bd1-96e5-258823c485be","kill_stage":"after_lease_acquisition","lease_expires_at":"2026-08-13 15:23:03.032353+00:00","lease_owner":"fault-worker-027","lease_token":"dcf08b2f-7ed8-4ae6-8fb5-2391b0f1ba92","pid":39048,"reached":true,"work_item_id":"84c3ad53-ec60-4689-93c1-d8f82a97b9c2"},"replay_mismatches":[],"stderr":"","stdout":""}
-{"campaign_id":"dee06c98-5df9-4d46-988b-3bedca9fab6c","fault_point":"during_object_upload","multipart_aborted":true,"ordinal":28,"partial_export_removed":false,"process_state":{"attempt_id":"6ed5ecb4-e00a-4c7b-86ae-479c07ce55d5","committed":false,"fencing_token":1,"job_id":"7f2f38c9-7afb-47d4-90ce-0be684bdca68","kill_stage":"during_object_upload","lease_expires_at":"2026-08-13 15:23:10.218046+00:00","lease_owner":"fault-worker-028","lease_token":"f9d52ec1-0a6f-44b2-b9a4-e7e11fb52b0e","multipart_part_count":1,"multipart_upload_id":"ZjAzZDk3MmEtNDFiYy00ZGRhLTg1MjAtNWI4MzdmNzFhZDRiLjNhMjMwMTI1LTQ5ZWQtNDQ1ZC04NmM3LWY0MDc2OGVhNGI0ZXgxNzg2NjM0NTg5Mzk4NzAzNTk5","object_keys":["observations/dee06c98-5df9-4d46-988b-3bedca9fab6c/a5e2da997bfdf576e90976ee6e41cf2857bf784047581585fe3a835eaf018af4"],"pid":37448,"reached":true,"work_item_id":"7b522bc2-714c-4431-ac93-d3a098c8aa58"},"replay_mismatches":[],"stderr":"","stdout":""}
-{"campaign_id":"558dbdec-63cb-43c3-af7b-cd0dcfb867a8","fault_point":"after_lease_acquisition","multipart_aborted":false,"ordinal":29,"partial_export_removed":false,"process_state":{"attempt_id":null,"committed":false,"fencing_token":1,"job_id":"aa75206d-d8a7-43af-a4d4-ba92eec1774e","kill_stage":"after_lease_acquisition","lease_expires_at":"2026-08-13 15:23:17.721729+00:00","lease_owner":"fault-worker-029","lease_token":"f62daae3-8e55-449c-8f2e-2d4a7185f63e","pid":34592,"reached":true,"work_item_id":"fdd4ffbc-b2e7-4d5a-8ede-a4ca04401b73"},"replay_mismatches":[],"stderr":"","stdout":""}
-{"campaign_id":"806fe7bd-c12c-44c5-9b49-3da2372ee257","fault_point":"after_lease_acquisition","multipart_aborted":false,"ordinal":30,"partial_export_removed":false,"process_state":{"attempt_id":null,"committed":false,"fencing_token":1,"job_id":"67db7509-bfff-4382-97c3-192fdffba93d","kill_stage":"after_lease_acquisition","lease_expires_at":"2026-08-13 15:23:25.192483+00:00","lease_owner":"fault-worker-030","lease_token":"c36b9e35-8386-4422-a013-84ba663ff473","pid":39796,"reached":true,"work_item_id":"b19ec804-0a70-45b3-b332-17b1bc2af37d"},"replay_mismatches":[],"stderr":"","stdout":""}
-{"campaign_id":"1f674de1-c040-4f90-87b4-057558bd6230","fault_point":"during_evidence_export","multipart_aborted":false,"ordinal":31,"partial_export_removed":true,"process_state":{"complete_byte_size":12386,"kill_stage":"during_evidence_export","object_store_bucket":"labbridge-phase7-fault-release2","package_id":"experiment-package:a13104ed259c20c082b456a5d6e058c5","partial_byte_size":6193,"partial_path":"build\\phase7-fault-release2\\working\\interrupted\\1f674de1-c040-4f90-87b4-057558bd6230.zip.partial","pid":32344,"reached":true},"replay_mismatches":[],"stderr":"","stdout":""}
-{"campaign_id":"c444ea0e-cfde-40b1-87ce-9ad7bb306d76","fault_point":"during_object_upload","multipart_aborted":true,"ordinal":32,"partial_export_removed":false,"process_state":{"attempt_id":"a701b970-8733-419e-b1ac-2c73bf2da340","committed":false,"fencing_token":1,"job_id":"3083f673-1d78-40dd-9890-0bd6637001f5","kill_stage":"during_object_upload","lease_expires_at":"2026-08-13 15:23:37.790239+00:00","lease_owner":"fault-worker-032","lease_token":"a3c39b45-6268-4f19-a93b-27fcef76cd77","multipart_part_count":1,"multipart_upload_id":"ZjAzZDk3MmEtNDFiYy00ZGRhLTg1MjAtNWI4MzdmNzFhZDRiLjA1NWRjMmU3LTZiMTYtNGU0Mi05NDljLWZlZmE1YTNmMzgyZHgxNzg2NjM0NjE3MDYyNDEzNTU4","object_keys":["observations/c444ea0e-cfde-40b1-87ce-9ad7bb306d76/15b5f92914195b4689fb72a65379ddfe54be32309e713612ab9fd0ba8231232c"],"pid":30848,"reached":true,"work_item_id":"3ff5d61f-e391-4437-a6d8-a6d0995d9174"},"replay_mismatches":[],"stderr":"","stdout":""}
-{"campaign_id":"7886f262-3928-4622-b0aa-c10b8917bb73","fault_point":"after_commit_before_acknowledgement","multipart_aborted":false,"ordinal":33,"partial_export_removed":false,"process_state":{"attempt_id":"706ba498-5116-4334-aa49-c129096b3bff","byte_size":12588,"committed":true,"fencing_token":1,"job_id":"b0a43f26-9bef-4d6a-b6c4-d868f17e4eef","kill_stage":"after_commit_before_acknowledgement","lease_expires_at":null,"lease_owner":"fault-worker-033","lease_token":null,"object_keys":["observations/7886f262-3928-4622-b0aa-c10b8917bb73/d8935227d741c829368468f14ee66e8253bef83a8cb6fe49e3d363464bfe90ea"],"observation_id":"obs:4a4ceb152add486a6face6ca46f59b79","outcome_status":"succeeded","pid":38992,"reached":true,"sha256":"d8935227d741c829368468f14ee66e8253bef83a8cb6fe49e3d363464bfe90ea","work_item_id":"5c10f1b4-7bb0-4a32-8524-3a87fd11aaf5"},"replay_mismatches":[],"stderr":"","stdout":""}
-{"campaign_id":"ae704d06-66ad-4b3d-8fa0-bc5eab031700","fault_point":"during_evidence_export","multipart_aborted":false,"ordinal":34,"partial_export_removed":true,"process_state":{"complete_byte_size":12384,"kill_stage":"during_evidence_export","object_store_bucket":"labbridge-phase7-fault-release2","package_id":"experiment-package:7677d47d99ba1524d2a3d499b7062ea2","partial_byte_size":6192,"partial_path":"build\\phase7-fault-release2\\working\\interrupted\\ae704d06-66ad-4b3d-8fa0-bc5eab031700.zip.partial","pid":35260,"reached":true},"replay_mismatches":[],"stderr":"","stdout":""}
-{"campaign_id":"c6cbf15f-2f7c-43d7-b20f-40762aef8c16","fault_point":"during_evidence_export","multipart_aborted":false,"ordinal":35,"partial_export_removed":true,"process_state":{"complete_byte_size":12359,"kill_stage":"during_evidence_export","object_store_bucket":"labbridge-phase7-fault-release2","package_id":"experiment-package:924afc3470ae63ffe1c3651bf82d7170","partial_byte_size":6179,"partial_path":"build\\phase7-fault-release2\\working\\interrupted\\c6cbf15f-2f7c-43d7-b20f-40762aef8c16.zip.partial","pid":12456,"reached":true},"replay_mismatches":[],"stderr":"","stdout":""}
-{"campaign_id":"d70fc10d-5775-4e4a-abc1-d3ed2a3be71a","fault_point":"after_lease_acquisition","multipart_aborted":false,"ordinal":36,"partial_export_removed":false,"process_state":{"attempt_id":null,"committed":false,"fencing_token":1,"job_id":"a725b7c0-7b59-41bf-bf5a-a11f7a341d74","kill_stage":"after_lease_acquisition","lease_expires_at":"2026-08-13 15:24:00.938421+00:00","lease_owner":"fault-worker-036","lease_token":"28b8b4d0-f5d5-4234-9760-962144dd8325","pid":20816,"reached":true,"work_item_id":"800814f0-3a89-4e84-8754-43881d9abfd7"},"replay_mismatches":[],"stderr":"","stdout":""}
-{"campaign_id":"da45a71c-0f1b-4522-81a5-9119a448adb4","fault_point":"after_commit_before_acknowledgement","multipart_aborted":false,"ordinal":37,"partial_export_removed":false,"process_state":{"attempt_id":"41fcaf39-9026-40b5-832e-01b448d0f5e7","byte_size":12528,"committed":true,"fencing_token":1,"job_id":"9ba7cacd-b7b7-4daa-a43b-c66e3c1ffb05","kill_stage":"after_commit_before_acknowledgement","lease_expires_at":null,"lease_owner":"fault-worker-037","lease_token":null,"object_keys":["observations/da45a71c-0f1b-4522-81a5-9119a448adb4/d8cd5745de60b80ddbcc49714fe19fe4cb42fa70b27ed60a64af1eb85def8b0f"],"observation_id":"obs:b84eb9616f3723fa4749e020b2922217","outcome_status":"succeeded","pid":23060,"reached":true,"sha256":"d8cd5745de60b80ddbcc49714fe19fe4cb42fa70b27ed60a64af1eb85def8b0f","work_item_id":"95655773-a4c3-41cf-97a6-135dba3916f8"},"replay_mismatches":[],"stderr":"","stdout":""}
-{"campaign_id":"d5de7bd1-021b-407e-ac83-a04f0ae3d654","fault_point":"after_lease_acquisition","multipart_aborted":false,"ordinal":38,"partial_export_removed":false,"process_state":{"attempt_id":null,"committed":false,"fencing_token":1,"job_id":"2d5e77b7-b0d0-44fe-8146-5c86c0758152","kill_stage":"after_lease_acquisition","lease_expires_at":"2026-08-13 15:24:14.846540+00:00","lease_owner":"fault-worker-038","lease_token":"c7069efe-d020-47cf-9f66-d1529d33ee3b","pid":32348,"reached":true,"work_item_id":"8e9c785b-c7bd-489a-ab9e-ee5968cdbe39"},"replay_mismatches":[],"stderr":"","stdout":""}
-{"campaign_id":"47d20867-15c9-45bc-8889-18340a643a03","fault_point":"during_object_upload","multipart_aborted":true,"ordinal":39,"partial_export_removed":false,"process_state":{"attempt_id":"737097d6-91a6-404c-9505-c1cfcdc3773c","committed":false,"fencing_token":1,"job_id":"7ccf9c83-229e-4c27-adb0-f84adc709a94","kill_stage":"during_object_upload","lease_expires_at":"2026-08-13 15:24:21.822541+00:00","lease_owner":"fault-worker-039","lease_token":"48c50c0f-193d-4bc2-8475-3f05310a21db","multipart_part_count":1,"multipart_upload_id":"ZjAzZDk3MmEtNDFiYy00ZGRhLTg1MjAtNWI4MzdmNzFhZDRiLmExNTM0MmJkLTE4OTctNDdjYS1iMThkLTVlNTM3ZTc0YWM0Y3gxNzg2NjM0NjYxMDYzMTc5ODA5","object_keys":["observations/47d20867-15c9-45bc-8889-18340a643a03/d8935227d741c829368468f14ee66e8253bef83a8cb6fe49e3d363464bfe90ea"],"pid":32780,"reached":true,"work_item_id":"302798ac-cc9f-4700-a4b7-24795a00ad7b"},"replay_mismatches":[],"stderr":"","stdout":""}
-{"campaign_id":"6d0132f3-e034-4f94-9387-55c181663900","fault_point":"after_lease_acquisition","multipart_aborted":false,"ordinal":40,"partial_export_removed":false,"process_state":{"attempt_id":null,"committed":false,"fencing_token":1,"job_id":"ad3975bd-1578-4faa-b341-b22857cf0a61","kill_stage":"after_lease_acquisition","lease_expires_at":"2026-08-13 15:24:33.018449+00:00","lease_owner":"fault-worker-040","lease_token":"bff3df54-3410-4261-b74b-e5ad7d39b31e","pid":29956,"reached":true,"work_item_id":"34e242a2-6459-4e5e-81e9-3e1cc4fe7bb2"},"replay_mismatches":[],"stderr":"","stdout":""}
-{"campaign_id":"f4eacdcc-0342-47d6-bdfb-ea7642655326","fault_point":"during_evidence_export","multipart_aborted":false,"ordinal":41,"partial_export_removed":true,"process_state":{"complete_byte_size":12403,"kill_stage":"during_evidence_export","object_store_bucket":"labbridge-phase7-fault-release2","package_id":"experiment-package:10eb605415b0cea1b927d13df28e4e3d","partial_byte_size":6201,"partial_path":"build\\phase7-fault-release2\\working\\interrupted\\f4eacdcc-0342-47d6-bdfb-ea7642655326.zip.partial","pid":35008,"reached":true},"replay_mismatches":[],"stderr":"","stdout":""}
-{"campaign_id":"5bd63eff-2e2c-416a-aad2-ed12427e6a7e","fault_point":"during_object_upload","multipart_aborted":true,"ordinal":42,"partial_export_removed":false,"process_state":{"attempt_id":"0fb4a0ce-ef1e-4fdf-98b6-4d5cb9f8a51f","committed":false,"fencing_token":1,"job_id":"0e67551c-0190-483a-86c0-deb87f69f3c6","kill_stage":"during_object_upload","lease_expires_at":"2026-08-13 15:24:49.404086+00:00","lease_owner":"fault-worker-042","lease_token":"5c41684d-1731-401b-b7c1-8bf7e749c22b","multipart_part_count":1,"multipart_upload_id":"ZjAzZDk3MmEtNDFiYy00ZGRhLTg1MjAtNWI4MzdmNzFhZDRiLjZiZTY1ZTk1LWE1ZmYtNDdjNi1iMTE1LWU3ZTliYTg4YjViMngxNzg2NjM0Njg4NjYzNjUwMjYw","object_keys":["observations/5bd63eff-2e2c-416a-aad2-ed12427e6a7e/aad36cf1091ec61b8a9c0fd9a87bd6804cd05449a99877dc799f13d96726f4aa"],"pid":17924,"reached":true,"work_item_id":"90b7a964-bfb8-49f7-91b8-8d3b9a674f6d"},"replay_mismatches":[],"stderr":"","stdout":""}
-{"campaign_id":"cd6374d8-0fa8-4a68-bf16-7c239a3a2bfe","fault_point":"after_adapter_return_before_upload","multipart_aborted":false,"ordinal":43,"partial_export_removed":false,"process_state":{"attempt_id":"caf4977c-3095-4151-920f-d575208b9268","committed":false,"fencing_token":1,"job_id":"e379adf3-4661-422e-a0cf-81d4a05b9942","kill_stage":"after_adapter_return_before_upload","lease_expires_at":"2026-08-13 15:24:58.409861+00:00","lease_owner":"fault-worker-043","lease_token":"a3e29a4f-dedd-4d4b-9ef2-69f2abf8495c","pid":4548,"reached":true,"work_item_id":"0decd8b8-8705-4663-b3ca-3a6c23e331e0"},"replay_mismatches":[],"stderr":"","stdout":""}
-{"campaign_id":"59cbeb32-5252-4d24-b89f-50f50964d679","fault_point":"after_adapter_return_before_upload","multipart_aborted":false,"ordinal":44,"partial_export_removed":false,"process_state":{"attempt_id":"cafab764-2028-441a-a3f8-356ff3395551","committed":false,"fencing_token":1,"job_id":"d980e1c1-fce2-46af-b1dd-dbe3c1e7ef45","kill_stage":"after_adapter_return_before_upload","lease_expires_at":"2026-08-13 15:25:07.787364+00:00","lease_owner":"fault-worker-044","lease_token":"0d2effe5-3b1e-4745-8a1a-583407d0e3cd","pid":23440,"reached":true,"work_item_id":"bbc84b61-ec14-4703-934c-3b40162ffe51"},"replay_mismatches":[],"stderr":"","stdout":""}
-{"campaign_id":"bc38c14c-d8fa-4954-b1ab-d2af6df6d2a9","fault_point":"after_commit_before_acknowledgement","multipart_aborted":false,"ordinal":45,"partial_export_removed":false,"process_state":{"attempt_id":"de521c27-89fb-4ef4-a371-c7c354597588","byte_size":12588,"committed":true,"fencing_token":1,"job_id":"380265d6-764b-43cd-8472-2151dac7c828","kill_stage":"after_commit_before_acknowledgement","lease_expires_at":null,"lease_owner":"fault-worker-045","lease_token":null,"object_keys":["observations/bc38c14c-d8fa-4954-b1ab-d2af6df6d2a9/d8935227d741c829368468f14ee66e8253bef83a8cb6fe49e3d363464bfe90ea"],"observation_id":"obs:4a4ceb152add486a6face6ca46f59b79","outcome_status":"succeeded","pid":16936,"reached":true,"sha256":"d8935227d741c829368468f14ee66e8253bef83a8cb6fe49e3d363464bfe90ea","work_item_id":"b98d277d-b840-4a4e-a095-6fea02746367"},"replay_mismatches":[],"stderr":"","stdout":""}
-{"campaign_id":"d0cb5535-5a73-4a33-9d7b-e2be378f10fc","fault_point":"after_commit_before_acknowledgement","multipart_aborted":false,"ordinal":46,"partial_export_removed":false,"process_state":{"attempt_id":"087af668-3202-4e50-b2c9-51e581ff9b17","byte_size":12612,"committed":true,"fencing_token":1,"job_id":"05180064-2375-4321-957f-8cf5f9678afc","kill_stage":"after_commit_before_acknowledgement","lease_expires_at":null,"lease_owner":"fault-worker-046","lease_token":null,"object_keys":["observations/d0cb5535-5a73-4a33-9d7b-e2be378f10fc/a5e2da997bfdf576e90976ee6e41cf2857bf784047581585fe3a835eaf018af4"],"observation_id":"obs:88adb71861dfb514c417fb6da350e784","outcome_status":"succeeded","pid":38212,"reached":true,"sha256":"a5e2da997bfdf576e90976ee6e41cf2857bf784047581585fe3a835eaf018af4","work_item_id":"2844ac67-83b6-4152-9f3d-fd44e592e79d"},"replay_mismatches":[],"stderr":"","stdout":""}
-{"campaign_id":"59ea5b03-51b3-403a-9a2d-1b852f3eaab5","fault_point":"after_commit_before_acknowledgement","multipart_aborted":false,"ordinal":47,"partial_export_removed":false,"process_state":{"attempt_id":"16f0f3d9-4b23-40c9-a6af-f6a69bd76ea5","byte_size":12588,"committed":true,"fencing_token":1,"job_id":"097d1107-3f73-4563-b99e-02ceae438fd2","kill_stage":"after_commit_before_acknowledgement","lease_expires_at":null,"lease_owner":"fault-worker-047","lease_token":null,"object_keys":["observations/59ea5b03-51b3-403a-9a2d-1b852f3eaab5/a51d521be9793013395aac33cad16a4953a973d5ff0b38ad3c40a996a12e59ac"],"observation_id":"obs:c945679c1ffbe026119d65dbeae68109","outcome_status":"succeeded","pid":39016,"reached":true,"sha256":"a51d521be9793013395aac33cad16a4953a973d5ff0b38ad3c40a996a12e59ac","work_item_id":"6fe76baf-f8e3-417a-816e-d54a16bdd424"},"replay_mismatches":[],"stderr":"","stdout":""}
-{"campaign_id":"48dd37ad-ac19-4649-aac0-8fb0a40e95ea","fault_point":"after_commit_before_acknowledgement","multipart_aborted":false,"ordinal":48,"partial_export_removed":false,"process_state":{"attempt_id":"de939eaa-370e-4a63-9419-6eba622dc75c","byte_size":12612,"committed":true,"fencing_token":1,"job_id":"cdc5c6a8-aeca-44de-93c1-89461cf7c319","kill_stage":"after_commit_before_acknowledgement","lease_expires_at":null,"lease_owner":"fault-worker-048","lease_token":null,"object_keys":["observations/48dd37ad-ac19-4649-aac0-8fb0a40e95ea/aad36cf1091ec61b8a9c0fd9a87bd6804cd05449a99877dc799f13d96726f4aa"],"observation_id":"obs:c2adaedb0ac11f4fdb041873e5366ca7","outcome_status":"succeeded","pid":36712,"reached":true,"sha256":"aad36cf1091ec61b8a9c0fd9a87bd6804cd05449a99877dc799f13d96726f4aa","work_item_id":"2f676a0a-a6b5-485d-bf74-686f6b880f6b"},"replay_mismatches":[],"stderr":"","stdout":""}
-{"campaign_id":"7c6d06d3-0c61-485c-acf8-23d1b851dea2","fault_point":"during_object_upload","multipart_aborted":true,"ordinal":49,"partial_export_removed":false,"process_state":{"attempt_id":"a63909e0-55a6-4e5d-b3ad-01afd7f459ae","committed":false,"fencing_token":1,"job_id":"206caea8-778e-44fd-9e8e-7f6956bf9f02","kill_stage":"during_object_upload","lease_expires_at":"2026-08-13 15:25:51.851425+00:00","lease_owner":"fault-worker-049","lease_token":"9a84cbcb-43dc-458e-9a3e-6c52f34b3358","multipart_part_count":1,"multipart_upload_id":"ZjAzZDk3MmEtNDFiYy00ZGRhLTg1MjAtNWI4MzdmNzFhZDRiLjM1YTM1NTJmLTcwZWYtNDI5Ni1hNzRjLTNhZGIxY2RiNjVjOXgxNzg2NjM0NzUxMDM5ODIyMTAw","object_keys":["observations/7c6d06d3-0c61-485c-acf8-23d1b851dea2/d8cd5745de60b80ddbcc49714fe19fe4cb42fa70b27ed60a64af1eb85def8b0f"],"pid":27088,"reached":true,"work_item_id":"b0dcaa8f-a8dc-41ac-a0bc-b750663bcf71"},"replay_mismatches":[],"stderr":"","stdout":""}
-{"campaign_id":"87b5ce0a-2af4-481b-aa1f-c3c02dc28931","fault_point":"after_commit_before_acknowledgement","multipart_aborted":false,"ordinal":50,"partial_export_removed":false,"process_state":{"attempt_id":"4fcf7cb8-6655-4398-be53-1b2d72616ada","byte_size":12552,"committed":true,"fencing_token":1,"job_id":"83c91d34-34ac-48fd-bd6e-16290ddcc2cc","kill_stage":"after_commit_before_acknowledgement","lease_expires_at":null,"lease_owner":"fault-worker-050","lease_token":null,"object_keys":["observations/87b5ce0a-2af4-481b-aa1f-c3c02dc28931/15b5f92914195b4689fb72a65379ddfe54be32309e713612ab9fd0ba8231232c"],"observation_id":"obs:ec33918fdd0d2872e583371f88a7fdcb","outcome_status":"succeeded","pid":35896,"reached":true,"sha256":"15b5f92914195b4689fb72a65379ddfe54be32309e713612ab9fd0ba8231232c","work_item_id":"28b8a7c3-954d-49b1-8a29-660e9d81c9be"},"replay_mismatches":[],"stderr":"","stdout":""}
-{"campaign_id":"c624ec0a-5c8f-413f-99c0-c57e85617984","fault_point":"after_adapter_return_before_upload","multipart_aborted":false,"ordinal":51,"partial_export_removed":false,"process_state":{"attempt_id":"4acc5268-7632-4938-a809-920ac49a6462","committed":false,"fencing_token":1,"job_id":"0ee02c74-c845-4abf-8436-4666698a91b4","kill_stage":"after_adapter_return_before_upload","lease_expires_at":"2026-08-13 15:26:08.052159+00:00","lease_owner":"fault-worker-051","lease_token":"10d14aeb-12a8-41ca-86cb-00fbe8b99e3e","pid":37116,"reached":true,"work_item_id":"550789c1-b7a9-427f-9f3c-8fc39e16b062"},"replay_mismatches":[],"stderr":"","stdout":""}
-{"campaign_id":"db21d30b-ff2c-4431-8a8a-17a2ec046190","fault_point":"after_upload_before_outcome_transaction","multipart_aborted":false,"ordinal":52,"partial_export_removed":false,"process_state":{"attempt_id":"e139e5cb-d097-484b-a57c-6c9b53179ae9","byte_size":12612,"committed":false,"fencing_token":1,"job_id":"6355e73d-2c2e-4c6e-b1d4-229a9dc81070","kill_stage":"after_upload_before_outcome_transaction","lease_expires_at":"2026-08-13 15:26:15.946169+00:00","lease_owner":"fault-worker-052","lease_token":"e9e3bead-b57e-41fb-a261-c740fb170d29","object_keys":["observations/db21d30b-ff2c-4431-8a8a-17a2ec046190/a5e2da997bfdf576e90976ee6e41cf2857bf784047581585fe3a835eaf018af4"],"pid":33248,"reached":true,"sha256":"a5e2da997bfdf576e90976ee6e41cf2857bf784047581585fe3a835eaf018af4","work_item_id":"f16989c6-ea6f-471d-aa48-08550a36c10b"},"replay_mismatches":[],"stderr":"","stdout":""}
-{"campaign_id":"96e3f7c3-fa35-46dd-bafa-9b3d66aad56d","fault_point":"during_object_upload","multipart_aborted":true,"ordinal":53,"partial_export_removed":false,"process_state":{"attempt_id":"4129f75b-6872-4c74-8e6e-233bf381fd7f","committed":false,"fencing_token":1,"job_id":"0e9fbe7c-dcbe-4f02-8856-93d0ea433070","kill_stage":"during_object_upload","lease_expires_at":"2026-08-13 15:26:24.779043+00:00","lease_owner":"fault-worker-053","lease_token":"0f85caf8-1e7a-40d0-9d0b-6d51361fb6b7","multipart_part_count":1,"multipart_upload_id":"ZjAzZDk3MmEtNDFiYy00ZGRhLTg1MjAtNWI4MzdmNzFhZDRiLjg1MzFlMDc1LTZhZDYtNDVjMC04MzcyLTI1M2RiZTNjMDU3M3gxNzg2NjM0NzgzOTM4MjUyMTAy","object_keys":["observations/96e3f7c3-fa35-46dd-bafa-9b3d66aad56d/a51d521be9793013395aac33cad16a4953a973d5ff0b38ad3c40a996a12e59ac"],"pid":38660,"reached":true,"work_item_id":"588f791a-c648-4bee-8738-1990b8f1d13e"},"replay_mismatches":[],"stderr":"","stdout":""}
-{"campaign_id":"125d599f-5e20-4e67-8583-e8cdfd21f056","fault_point":"after_adapter_return_before_upload","multipart_aborted":false,"ordinal":54,"partial_export_removed":false,"process_state":{"attempt_id":"d0a9f9b1-4c5b-4618-a251-cd13e0a34b1e","committed":false,"fencing_token":1,"job_id":"68109857-6918-4c5b-a347-aa81c7c76c0f","kill_stage":"after_adapter_return_before_upload","lease_expires_at":"2026-08-13 15:26:33.646792+00:00","lease_owner":"fault-worker-054","lease_token":"cb79e75c-4219-4c0c-8c1d-f618ff88622a","pid":28476,"reached":true,"work_item_id":"3b402279-6d6c-429a-b7ff-f76377853f86"},"replay_mismatches":[],"stderr":"","stdout":""}
-{"campaign_id":"bf5c4dfe-40fa-4789-bf66-f9b667f105ed","fault_point":"during_evidence_export","multipart_aborted":false,"ordinal":55,"partial_export_removed":true,"process_state":{"complete_byte_size":12386,"kill_stage":"during_evidence_export","object_store_bucket":"labbridge-phase7-fault-release2","package_id":"experiment-package:32986e9bbac78b84e9fcb63b79ba0c5a","partial_byte_size":6193,"partial_path":"build\\phase7-fault-release2\\working\\interrupted\\bf5c4dfe-40fa-4789-bf66-f9b667f105ed.zip.partial","pid":38972,"reached":true},"replay_mismatches":[],"stderr":"","stdout":""}
-{"campaign_id":"28294cf5-321a-459b-90f2-d48c7a99d245","fault_point":"after_upload_before_outcome_transaction","multipart_aborted":false,"ordinal":56,"partial_export_removed":false,"process_state":{"attempt_id":"c9c1dbd4-040c-4d8d-8e7f-4514ffadb5c1","byte_size":12552,"committed":false,"fencing_token":1,"job_id":"f2a726a6-d4ad-49d1-9842-ec53e699a889","kill_stage":"after_upload_before_outcome_transaction","lease_expires_at":"2026-08-13 15:26:48.163668+00:00","lease_owner":"fault-worker-056","lease_token":"0b784c80-75d1-483f-aace-e583ad4c4213","object_keys":["observations/28294cf5-321a-459b-90f2-d48c7a99d245/15b5f92914195b4689fb72a65379ddfe54be32309e713612ab9fd0ba8231232c"],"pid":11328,"reached":true,"sha256":"15b5f92914195b4689fb72a65379ddfe54be32309e713612ab9fd0ba8231232c","work_item_id":"21b30449-d4d1-4953-bc12-85cd886d95a3"},"replay_mismatches":[],"stderr":"","stdout":""}
-{"campaign_id":"78ef6b4e-b1ee-4618-b573-ef1007699e43","fault_point":"after_lease_acquisition","multipart_aborted":false,"ordinal":57,"partial_export_removed":false,"process_state":{"attempt_id":null,"committed":false,"fencing_token":1,"job_id":"86eb53ec-0ec6-4f8a-8dae-a5ee9c22009d","kill_stage":"after_lease_acquisition","lease_expires_at":"2026-08-13 15:26:57.864755+00:00","lease_owner":"fault-worker-057","lease_token":"ff37a8a0-2ffa-4bc2-8448-81230f455b12","pid":28676,"reached":true,"work_item_id":"9704e982-c9ab-4bda-a908-efeb5bdfddf8"},"replay_mismatches":[],"stderr":"","stdout":""}
-{"campaign_id":"c04f2c07-1319-4eb0-bba8-f41a44594b72","fault_point":"after_commit_before_acknowledgement","multipart_aborted":false,"ordinal":58,"partial_export_removed":false,"process_state":{"attempt_id":"124cb318-a058-40fe-bd06-2c6142665f2c","byte_size":12612,"committed":true,"fencing_token":1,"job_id":"3dc10b9f-6254-4334-a4c6-b0cb21a0dbaf","kill_stage":"after_commit_before_acknowledgement","lease_expires_at":null,"lease_owner":"fault-worker-058","lease_token":null,"object_keys":["observations/c04f2c07-1319-4eb0-bba8-f41a44594b72/a5e2da997bfdf576e90976ee6e41cf2857bf784047581585fe3a835eaf018af4"],"observation_id":"obs:88adb71861dfb514c417fb6da350e784","outcome_status":"succeeded","pid":18660,"reached":true,"sha256":"a5e2da997bfdf576e90976ee6e41cf2857bf784047581585fe3a835eaf018af4","work_item_id":"df8e0e35-f2c3-4b91-92c0-359096ec55ed"},"replay_mismatches":[],"stderr":"","stdout":""}
-{"campaign_id":"b411eb8f-a546-4aa2-aaf3-3d790cbd5f05","fault_point":"after_upload_before_outcome_transaction","multipart_aborted":false,"ordinal":59,"partial_export_removed":false,"process_state":{"attempt_id":"491818b9-e1b0-4f9f-908d-82322e1ee653","byte_size":12588,"committed":false,"fencing_token":1,"job_id":"1286723c-dcf2-4f81-8aca-d38d6d363d56","kill_stage":"after_upload_before_outcome_transaction","lease_expires_at":"2026-08-13 15:27:19.174815+00:00","lease_owner":"fault-worker-059","lease_token":"d73d4495-f4e2-4828-96b4-aea1862a3e6f","object_keys":["observations/b411eb8f-a546-4aa2-aaf3-3d790cbd5f05/a51d521be9793013395aac33cad16a4953a973d5ff0b38ad3c40a996a12e59ac"],"pid":38204,"reached":true,"sha256":"a51d521be9793013395aac33cad16a4953a973d5ff0b38ad3c40a996a12e59ac","work_item_id":"2d3b7609-592d-4e15-bf5c-898ad872fdbf"},"replay_mismatches":[],"stderr":"","stdout":""}
-{"campaign_id":"a36a8519-635c-4a9a-89f7-e74603e5afb3","fault_point":"after_upload_before_outcome_transaction","multipart_aborted":false,"ordinal":60,"partial_export_removed":false,"process_state":{"attempt_id":"2907ce04-186f-4b2a-bacb-5c9f6c117421","byte_size":12612,"committed":false,"fencing_token":1,"job_id":"6ed0d487-41be-4159-aa47-4b4096485f7a","kill_stage":"after_upload_before_outcome_transaction","lease_expires_at":"2026-08-13 15:27:28.408985+00:00","lease_owner":"fault-worker-060","lease_token":"ff34cb65-392f-404d-99f1-3f410a873415","object_keys":["observations/a36a8519-635c-4a9a-89f7-e74603e5afb3/aad36cf1091ec61b8a9c0fd9a87bd6804cd05449a99877dc799f13d96726f4aa"],"pid":22800,"reached":true,"sha256":"aad36cf1091ec61b8a9c0fd9a87bd6804cd05449a99877dc799f13d96726f4aa","work_item_id":"fe4d6ab0-b9c7-4a75-a7ed-d40b3dc0c59d"},"replay_mismatches":[],"stderr":"","stdout":""}
-{"campaign_id":"b20cf37e-2d82-44a8-9f5f-3aa42695fbc2","fault_point":"after_lease_acquisition","multipart_aborted":false,"ordinal":61,"partial_export_removed":false,"process_state":{"attempt_id":null,"committed":false,"fencing_token":1,"job_id":"b82d0727-02ea-42fc-b51f-a81ae15136b2","kill_stage":"after_lease_acquisition","lease_expires_at":"2026-08-13 15:27:37.268101+00:00","lease_owner":"fault-worker-061","lease_token":"73b27a1c-95db-4dd0-b361-a6ccb9691dfa","pid":28400,"reached":true,"work_item_id":"407047d3-ffb3-4087-bbda-03dd3e24ed82"},"replay_mismatches":[],"stderr":"","stdout":""}
-{"campaign_id":"8917decd-bef5-4230-8e03-1f0c56458e39","fault_point":"during_evidence_export","multipart_aborted":false,"ordinal":62,"partial_export_removed":true,"process_state":{"complete_byte_size":12406,"kill_stage":"during_evidence_export","object_store_bucket":"labbridge-phase7-fault-release2","package_id":"experiment-package:9e8c8ec4bcc61a3dedadb525fc5c5743","partial_byte_size":6203,"partial_path":"build\\phase7-fault-release2\\working\\interrupted\\8917decd-bef5-4230-8e03-1f0c56458e39.zip.partial","pid":39100,"reached":true},"replay_mismatches":[],"stderr":"","stdout":""}
-{"campaign_id":"de49fa8b-4661-45f1-bea9-ca9608e9558a","fault_point":"after_commit_before_acknowledgement","multipart_aborted":false,"ordinal":63,"partial_export_removed":false,"process_state":{"attempt_id":"fb78a52f-416f-45e3-a6ab-876c7d96c819","byte_size":12588,"committed":true,"fencing_token":1,"job_id":"59c2fa70-9e67-4cd5-a66f-63b9154aee09","kill_stage":"after_commit_before_acknowledgement","lease_expires_at":null,"lease_owner":"fault-worker-063","lease_token":null,"object_keys":["observations/de49fa8b-4661-45f1-bea9-ca9608e9558a/d8935227d741c829368468f14ee66e8253bef83a8cb6fe49e3d363464bfe90ea"],"observation_id":"obs:4a4ceb152add486a6face6ca46f59b79","outcome_status":"succeeded","pid":17928,"reached":true,"sha256":"d8935227d741c829368468f14ee66e8253bef83a8cb6fe49e3d363464bfe90ea","work_item_id":"42293a96-a26e-4d0a-8119-c19dd802b34c"},"replay_mismatches":[],"stderr":"","stdout":""}
-{"campaign_id":"86ba137f-61a2-4ac2-b91c-e690e4474b40","fault_point":"after_lease_acquisition","multipart_aborted":false,"ordinal":64,"partial_export_removed":false,"process_state":{"attempt_id":null,"committed":false,"fencing_token":1,"job_id":"1609265f-dde4-42a2-b1ce-232eec7dced5","kill_stage":"after_lease_acquisition","lease_expires_at":"2026-08-13 15:28:00.201838+00:00","lease_owner":"fault-worker-064","lease_token":"3c9fd069-c2a8-49f6-b4fb-7ef5d2896540","pid":28920,"reached":true,"work_item_id":"beed08b1-6c9b-4610-80f7-4fa22bc585ab"},"replay_mismatches":[],"stderr":"","stdout":""}
-{"campaign_id":"d384007b-c0c7-4a07-99e0-23d7fbbead56","fault_point":"after_upload_before_outcome_transaction","multipart_aborted":false,"ordinal":65,"partial_export_removed":false,"process_state":{"attempt_id":"7e0c8f50-25c5-4ae9-9e1e-5bb3f44adea2","byte_size":12588,"committed":false,"fencing_token":1,"job_id":"0256d11c-1694-4c6b-a580-da386ecb9aa4","kill_stage":"after_upload_before_outcome_transaction","lease_expires_at":"2026-08-13 15:28:09.452742+00:00","lease_owner":"fault-worker-065","lease_token":"e20077ef-f7a7-48ab-8071-d90c5963eb77","object_keys":["observations/d384007b-c0c7-4a07-99e0-23d7fbbead56/a51d521be9793013395aac33cad16a4953a973d5ff0b38ad3c40a996a12e59ac"],"pid":38244,"reached":true,"sha256":"a51d521be9793013395aac33cad16a4953a973d5ff0b38ad3c40a996a12e59ac","work_item_id":"ac7b1057-62dc-4cea-b274-86bb4012b692"},"replay_mismatches":[],"stderr":"","stdout":""}
-{"campaign_id":"8c8ea74e-2648-4dcb-bca7-0295f341a56e","fault_point":"after_lease_acquisition","multipart_aborted":false,"ordinal":66,"partial_export_removed":false,"process_state":{"attempt_id":null,"committed":false,"fencing_token":1,"job_id":"1ca39794-fc06-4566-809d-a5ce1f85eb69","kill_stage":"after_lease_acquisition","lease_expires_at":"2026-08-13 15:28:18.784341+00:00","lease_owner":"fault-worker-066","lease_token":"f47c7a61-4f23-496e-9ae6-c35b884420e9","pid":27056,"reached":true,"work_item_id":"ba021401-cb82-4aff-9d83-3ccdedaf7b52"},"replay_mismatches":[],"stderr":"","stdout":""}
-{"campaign_id":"e5c78838-d72a-4976-81cb-e80189296002","fault_point":"after_upload_before_outcome_transaction","multipart_aborted":false,"ordinal":67,"partial_export_removed":false,"process_state":{"attempt_id":"68d3872a-9150-4a3a-a28d-91d9e3f236aa","byte_size":12528,"committed":false,"fencing_token":1,"job_id":"41fe6a96-4c3e-425b-8e2b-4dcedae4f266","kill_stage":"after_upload_before_outcome_transaction","lease_expires_at":"2026-08-13 15:28:28.031804+00:00","lease_owner":"fault-worker-067","lease_token":"a5b73dfd-22af-4f11-ae04-a14122df68a4","object_keys":["observations/e5c78838-d72a-4976-81cb-e80189296002/d8cd5745de60b80ddbcc49714fe19fe4cb42fa70b27ed60a64af1eb85def8b0f"],"pid":38416,"reached":true,"sha256":"d8cd5745de60b80ddbcc49714fe19fe4cb42fa70b27ed60a64af1eb85def8b0f","work_item_id":"f3f3b527-e781-49a5-b34b-f57c854b24d8"},"replay_mismatches":[],"stderr":"","stdout":""}
-{"campaign_id":"27b887d3-a2e9-44af-9a78-44b4bc07f6c2","fault_point":"during_evidence_export","multipart_aborted":false,"ordinal":68,"partial_export_removed":true,"process_state":{"complete_byte_size":12383,"kill_stage":"during_evidence_export","object_store_bucket":"labbridge-phase7-fault-release2","package_id":"experiment-package:3c7e66fd8c2439ad2838e9c2c108f7ac","partial_byte_size":6191,"partial_path":"build\\phase7-fault-release2\\working\\interrupted\\27b887d3-a2e9-44af-9a78-44b4bc07f6c2.zip.partial","pid":33644,"reached":true},"replay_mismatches":[],"stderr":"","stdout":""}
-{"campaign_id":"fca390dd-591a-4b30-9071-fba97647aaca","fault_point":"after_adapter_return_before_upload","multipart_aborted":false,"ordinal":69,"partial_export_removed":false,"process_state":{"attempt_id":"4d398076-3fbd-481a-9906-711e062f6ee9","committed":false,"fencing_token":1,"job_id":"c55d8efb-64a7-487e-b90c-4cd34b6fcfed","kill_stage":"after_adapter_return_before_upload","lease_expires_at":"2026-08-13 15:28:43.664664+00:00","lease_owner":"fault-worker-069","lease_token":"ff39dfac-d524-4f55-9716-608de7aa4015","pid":18544,"reached":true,"work_item_id":"6d547698-da27-4d78-983b-902ae12c28d9"},"replay_mismatches":[],"stderr":"","stdout":""}
-{"campaign_id":"47e0cf17-3b46-4ef7-bd1e-301a0b178d6c","fault_point":"during_evidence_export","multipart_aborted":false,"ordinal":70,"partial_export_removed":true,"process_state":{"complete_byte_size":12389,"kill_stage":"during_evidence_export","object_store_bucket":"labbridge-phase7-fault-release2","package_id":"experiment-package:23c7aa79396867bfd435ab7c8a86bb1b","partial_byte_size":6194,"partial_path":"build\\phase7-fault-release2\\working\\interrupted\\47e0cf17-3b46-4ef7-bd1e-301a0b178d6c.zip.partial","pid":34276,"reached":true},"replay_mismatches":[],"stderr":"","stdout":""}
-{"campaign_id":"9c646f85-7801-4760-b6c3-684cc20fda21","fault_point":"after_adapter_return_before_upload","multipart_aborted":false,"ordinal":71,"partial_export_removed":false,"process_state":{"attempt_id":"d384ff36-51a3-427b-8312-5139faf34428","committed":false,"fencing_token":1,"job_id":"9680d509-9828-4a79-a4ab-3d7f80fb7cb8","kill_stage":"after_adapter_return_before_upload","lease_expires_at":"2026-08-13 15:29:00.406709+00:00","lease_owner":"fault-worker-071","lease_token":"54280afa-1131-4fa9-8d0a-df04c23bc609","pid":25552,"reached":true,"work_item_id":"192f8d65-f075-4530-bf04-a1ce47b2b91a"},"replay_mismatches":[],"stderr":"","stdout":""}
-{"campaign_id":"072d4372-08f2-4c90-b42e-57af4ee751c1","fault_point":"during_object_upload","multipart_aborted":true,"ordinal":72,"partial_export_removed":false,"process_state":{"attempt_id":"1d4dc1d5-d42b-4f2d-b934-ccb3c7130fda","committed":false,"fencing_token":1,"job_id":"07724845-d470-430c-9ed3-4051eafdabc5","kill_stage":"during_object_upload","lease_expires_at":"2026-08-13 15:29:10.364628+00:00","lease_owner":"fault-worker-072","lease_token":"e0234417-95de-4c5b-901c-d832430099b4","multipart_part_count":1,"multipart_upload_id":"ZjAzZDk3MmEtNDFiYy00ZGRhLTg1MjAtNWI4MzdmNzFhZDRiLjVjNmY5NWM4LTc1YmEtNGFmZC04MDc4LTAzMmQ3NWFmNjA3Y3gxNzg2NjM0OTQ5NTI4NzQ1ODk0","object_keys":["observations/072d4372-08f2-4c90-b42e-57af4ee751c1/aad36cf1091ec61b8a9c0fd9a87bd6804cd05449a99877dc799f13d96726f4aa"],"pid":35768,"reached":true,"work_item_id":"8a9e7455-1193-4ae9-95f0-fd4ebf63ac67"},"replay_mismatches":[],"stderr":"","stdout":""}
-{"campaign_id":"cb133b65-1429-4249-b345-1b7b78f28dea","fault_point":"during_evidence_export","multipart_aborted":false,"ordinal":73,"partial_export_removed":true,"process_state":{"complete_byte_size":12384,"kill_stage":"during_evidence_export","object_store_bucket":"labbridge-phase7-fault-release2","package_id":"experiment-package:bd570a4afd773a46b8c67962e31c77ba","partial_byte_size":6192,"partial_path":"build\\phase7-fault-release2\\working\\interrupted\\cb133b65-1429-4249-b345-1b7b78f28dea.zip.partial","pid":29732,"reached":true},"replay_mismatches":[],"stderr":"","stdout":""}
-{"campaign_id":"b5f6266d-f6f5-4109-a632-fca8823a3300","fault_point":"after_lease_acquisition","multipart_aborted":false,"ordinal":74,"partial_export_removed":false,"process_state":{"attempt_id":null,"committed":false,"fencing_token":1,"job_id":"af450314-e662-48cc-aa81-5c0fd1a49d0c","kill_stage":"after_lease_acquisition","lease_expires_at":"2026-08-13 15:29:27.108644+00:00","lease_owner":"fault-worker-074","lease_token":"395c5e74-7551-49fb-ba33-8b151194e2f4","pid":38364,"reached":true,"work_item_id":"96babc92-629a-401f-b1a6-fbd93e3cc734"},"replay_mismatches":[],"stderr":"","stdout":""}
-{"campaign_id":"01590fe3-e7ca-4e25-8b3a-1f3030e6885d","fault_point":"during_evidence_export","multipart_aborted":false,"ordinal":75,"partial_export_removed":true,"process_state":{"complete_byte_size":12396,"kill_stage":"during_evidence_export","object_store_bucket":"labbridge-phase7-fault-release2","package_id":"experiment-package:1f08fbef54a248b64d0a9532aa5daa61","partial_byte_size":6198,"partial_path":"build\\phase7-fault-release2\\working\\interrupted\\01590fe3-e7ca-4e25-8b3a-1f3030e6885d.zip.partial","pid":38332,"reached":true},"replay_mismatches":[],"stderr":"","stdout":""}
-{"campaign_id":"b9606d88-c543-461e-b948-1d89709557e4","fault_point":"after_commit_before_acknowledgement","multipart_aborted":false,"ordinal":76,"partial_export_removed":false,"process_state":{"attempt_id":"45d0c3cc-7b5b-4d8c-9351-39231caa75a0","byte_size":12612,"committed":true,"fencing_token":1,"job_id":"fe6d1082-99a9-478a-9b3a-40348a500c52","kill_stage":"after_commit_before_acknowledgement","lease_expires_at":null,"lease_owner":"fault-worker-076","lease_token":null,"object_keys":["observations/b9606d88-c543-461e-b948-1d89709557e4/a5e2da997bfdf576e90976ee6e41cf2857bf784047581585fe3a835eaf018af4"],"observation_id":"obs:88adb71861dfb514c417fb6da350e784","outcome_status":"succeeded","pid":4500,"reached":true,"sha256":"a5e2da997bfdf576e90976ee6e41cf2857bf784047581585fe3a835eaf018af4","work_item_id":"fc99a8c0-9924-4677-84d9-7f1ab7a4dde8"},"replay_mismatches":[],"stderr":"","stdout":""}
-{"campaign_id":"1e330dca-c472-448e-b9b0-abb37eec951e","fault_point":"after_adapter_return_before_upload","multipart_aborted":false,"ordinal":77,"partial_export_removed":false,"process_state":{"attempt_id":"2b46fad8-f824-4362-ab40-05a68c48306e","committed":false,"fencing_token":1,"job_id":"d63f5d1f-032f-4d74-8c23-6e3e2c270820","kill_stage":"after_adapter_return_before_upload","lease_expires_at":"2026-08-13 15:29:52.789055+00:00","lease_owner":"fault-worker-077","lease_token":"6872901c-5e85-48fa-932e-db8c55ab4763","pid":30160,"reached":true,"work_item_id":"7edcfec1-f120-4543-b3e7-84be18155bdf"},"replay_mismatches":[],"stderr":"","stdout":""}
-{"campaign_id":"48759d52-8893-4de1-9344-b3ee0f5e48a8","fault_point":"after_upload_before_outcome_transaction","multipart_aborted":false,"ordinal":78,"partial_export_removed":false,"process_state":{"attempt_id":"ab6d0f37-42f8-4cd4-9023-49ba2032a3df","byte_size":12612,"committed":false,"fencing_token":1,"job_id":"ac386c2c-a15a-4041-96a1-c5ae50c02c12","kill_stage":"after_upload_before_outcome_transaction","lease_expires_at":"2026-08-13 15:30:02.436734+00:00","lease_owner":"fault-worker-078","lease_token":"1d3ffec3-a1e8-4a8b-aa54-a41098c21939","object_keys":["observations/48759d52-8893-4de1-9344-b3ee0f5e48a8/aad36cf1091ec61b8a9c0fd9a87bd6804cd05449a99877dc799f13d96726f4aa"],"pid":12876,"reached":true,"sha256":"aad36cf1091ec61b8a9c0fd9a87bd6804cd05449a99877dc799f13d96726f4aa","work_item_id":"e25b4a3b-4909-49ed-a392-17f26788ca54"},"replay_mismatches":[],"stderr":"","stdout":""}
-{"campaign_id":"39c05254-5da1-43e2-9eed-044e22381b6f","fault_point":"during_evidence_export","multipart_aborted":false,"ordinal":79,"partial_export_removed":true,"process_state":{"complete_byte_size":12368,"kill_stage":"during_evidence_export","object_store_bucket":"labbridge-phase7-fault-release2","package_id":"experiment-package:c518144f36c3e6c49cedabf0b3ec3f42","partial_byte_size":6184,"partial_path":"build\\phase7-fault-release2\\working\\interrupted\\39c05254-5da1-43e2-9eed-044e22381b6f.zip.partial","pid":29620,"reached":true},"replay_mismatches":[],"stderr":"","stdout":""}
-{"campaign_id":"58bc6b16-5c81-4b87-a0e8-81dec961885a","fault_point":"after_adapter_return_before_upload","multipart_aborted":false,"ordinal":80,"partial_export_removed":false,"process_state":{"attempt_id":"d562c7d6-2ca2-4fdf-83e6-b3554028ecfd","committed":false,"fencing_token":1,"job_id":"015f4f86-6934-4eaa-bfc7-43efa9427e67","kill_stage":"after_adapter_return_before_upload","lease_expires_at":"2026-08-13 15:30:20.212566+00:00","lease_owner":"fault-worker-080","lease_token":"96119ed7-4872-48ca-a672-8f619772de4c","pid":39852,"reached":true,"work_item_id":"0537bfd2-70a1-4cf0-9049-158ee56b8351"},"replay_mismatches":[],"stderr":"","stdout":""}
-{"campaign_id":"9f330b2f-2e46-4923-9ddf-894e38a6627c","fault_point":"during_object_upload","multipart_aborted":true,"ordinal":81,"partial_export_removed":false,"process_state":{"attempt_id":"a9b0fe5d-b2cb-478d-aff5-373e8fed74a2","committed":false,"fencing_token":1,"job_id":"6b57a9ac-f611-48bd-9b5a-b13bae62af95","kill_stage":"during_object_upload","lease_expires_at":"2026-08-13 15:30:30.667044+00:00","lease_owner":"fault-worker-081","lease_token":"e193c56e-216b-4987-a706-3c2f2569a2a5","multipart_part_count":1,"multipart_upload_id":"ZjAzZDk3MmEtNDFiYy00ZGRhLTg1MjAtNWI4MzdmNzFhZDRiLmQ0Zjk4OGU2LTZkZWQtNDg4MS04NjlkLWNiYWZjNjRjMTkzNngxNzg2NjM1MDI5ODAzNjQ3OTQ3","object_keys":["observations/9f330b2f-2e46-4923-9ddf-894e38a6627c/d8935227d741c829368468f14ee66e8253bef83a8cb6fe49e3d363464bfe90ea"],"pid":38508,"reached":true,"work_item_id":"94ec4db6-54a4-4ae1-8141-6f2ae450bfd5"},"replay_mismatches":[],"stderr":"","stdout":""}
-{"campaign_id":"dd914774-38dd-492d-92fb-8420c8ab58b7","fault_point":"after_commit_before_acknowledgement","multipart_aborted":false,"ordinal":82,"partial_export_removed":false,"process_state":{"attempt_id":"35ae5205-1d6d-498d-a8c6-7c170afccb73","byte_size":12612,"committed":true,"fencing_token":1,"job_id":"0f5e8c8c-3916-488f-b440-5580031da826","kill_stage":"after_commit_before_acknowledgement","lease_expires_at":null,"lease_owner":"fault-worker-082","lease_token":null,"object_keys":["observations/dd914774-38dd-492d-92fb-8420c8ab58b7/a5e2da997bfdf576e90976ee6e41cf2857bf784047581585fe3a835eaf018af4"],"observation_id":"obs:88adb71861dfb514c417fb6da350e784","outcome_status":"succeeded","pid":33456,"reached":true,"sha256":"a5e2da997bfdf576e90976ee6e41cf2857bf784047581585fe3a835eaf018af4","work_item_id":"fe034118-ed88-416f-b4f2-e8a676829297"},"replay_mismatches":[],"stderr":"","stdout":""}
-{"campaign_id":"1e85d510-f597-405f-9351-eb5683f60ed3","fault_point":"after_upload_before_outcome_transaction","multipart_aborted":false,"ordinal":83,"partial_export_removed":false,"process_state":{"attempt_id":"0b81cdac-36a1-4e53-9037-afcc661b14c9","byte_size":12588,"committed":false,"fencing_token":1,"job_id":"b9f49de6-29d6-4f40-839b-20736ebe1950","kill_stage":"after_upload_before_outcome_transaction","lease_expires_at":"2026-08-13 15:30:51.902560+00:00","lease_owner":"fault-worker-083","lease_token":"b5d2fe69-29f2-48e5-8c3c-94a0299588fa","object_keys":["observations/1e85d510-f597-405f-9351-eb5683f60ed3/a51d521be9793013395aac33cad16a4953a973d5ff0b38ad3c40a996a12e59ac"],"pid":3644,"reached":true,"sha256":"a51d521be9793013395aac33cad16a4953a973d5ff0b38ad3c40a996a12e59ac","work_item_id":"42ec6a5e-07c5-4d7b-9a5d-4bf0c62e73b3"},"replay_mismatches":[],"stderr":"","stdout":""}
-{"campaign_id":"68613b39-5b67-4f47-a4da-35ce5068f40b","fault_point":"after_upload_before_outcome_transaction","multipart_aborted":false,"ordinal":84,"partial_export_removed":false,"process_state":{"attempt_id":"875cc2d7-de5c-4ed7-96a0-5dee7cec3715","byte_size":12612,"committed":false,"fencing_token":1,"job_id":"3f9ce7b1-3123-4139-9967-485805f20333","kill_stage":"after_upload_before_outcome_transaction","lease_expires_at":"2026-08-13 15:31:02.371821+00:00","lease_owner":"fault-worker-084","lease_token":"b0353153-cd16-4d18-a1f0-8e24724e7208","object_keys":["observations/68613b39-5b67-4f47-a4da-35ce5068f40b/aad36cf1091ec61b8a9c0fd9a87bd6804cd05449a99877dc799f13d96726f4aa"],"pid":34568,"reached":true,"sha256":"aad36cf1091ec61b8a9c0fd9a87bd6804cd05449a99877dc799f13d96726f4aa","work_item_id":"32985d74-6077-453f-b4e4-2defde80c67f"},"replay_mismatches":[],"stderr":"","stdout":""}
-{"campaign_id":"5b3e002f-5593-456a-9e46-d21e941ec43e","fault_point":"after_adapter_return_before_upload","multipart_aborted":false,"ordinal":85,"partial_export_removed":false,"process_state":{"attempt_id":"bd07e15e-aa9f-4a3d-bd37-4f1f4665896a","committed":false,"fencing_token":1,"job_id":"e1407459-126c-4b7c-b450-299f9ee420ab","kill_stage":"after_adapter_return_before_upload","lease_expires_at":"2026-08-13 15:31:13.357565+00:00","lease_owner":"fault-worker-085","lease_token":"86c854e6-225c-4b9b-b18a-2a3d01e5bd29","pid":8344,"reached":true,"work_item_id":"072c2021-1a32-4958-a3a4-96b3ed3756bb"},"replay_mismatches":[],"stderr":"","stdout":""}
-{"campaign_id":"ed089dbc-273b-410a-ae00-2adc2cdb48ce","fault_point":"during_object_upload","multipart_aborted":true,"ordinal":86,"partial_export_removed":false,"process_state":{"attempt_id":"8649821a-bb65-4e68-bc89-20f0c508dbb3","committed":false,"fencing_token":1,"job_id":"5f220615-d7c7-4719-8d9d-d3bac96c3a00","kill_stage":"during_object_upload","lease_expires_at":"2026-08-13 15:31:25.132967+00:00","lease_owner":"fault-worker-086","lease_token":"eff689b2-84d9-4dce-8bb1-45b8bbaa8524","multipart_part_count":1,"multipart_upload_id":"ZjAzZDk3MmEtNDFiYy00ZGRhLTg1MjAtNWI4MzdmNzFhZDRiLmY2OTk4YzMyLWRmMWUtNDE4ZC1iZDBjLTMwZWM4ZDAzNzdlMHgxNzg2NjM1MDg0MzMxODU1ODMx","object_keys":["observations/ed089dbc-273b-410a-ae00-2adc2cdb48ce/15b5f92914195b4689fb72a65379ddfe54be32309e713612ab9fd0ba8231232c"],"pid":34152,"reached":true,"work_item_id":"8230fe47-829e-40c6-8fc7-f881745ca746"},"replay_mismatches":[],"stderr":"","stdout":""}
-{"campaign_id":"edbe2be0-d9ed-46d1-a4a5-41fe9f7e9536","fault_point":"after_upload_before_outcome_transaction","multipart_aborted":false,"ordinal":87,"partial_export_removed":false,"process_state":{"attempt_id":"6ddf6f37-41da-42d3-baf6-f644cb842302","byte_size":12588,"committed":false,"fencing_token":1,"job_id":"28df16bd-49bb-42ed-a144-62b8e2e52eab","kill_stage":"after_upload_before_outcome_transaction","lease_expires_at":"2026-08-13 15:31:35.885527+00:00","lease_owner":"fault-worker-087","lease_token":"2b53b4e0-ca7f-4aca-9855-cc8c65a63f90","object_keys":["observations/edbe2be0-d9ed-46d1-a4a5-41fe9f7e9536/d8935227d741c829368468f14ee66e8253bef83a8cb6fe49e3d363464bfe90ea"],"pid":36440,"reached":true,"sha256":"d8935227d741c829368468f14ee66e8253bef83a8cb6fe49e3d363464bfe90ea","work_item_id":"dc22e64d-4d20-4ed8-a65d-6e997d4f0ea2"},"replay_mismatches":[],"stderr":"","stdout":""}
-{"campaign_id":"7a82b14e-f2c1-4679-b28a-9e0194e71e95","fault_point":"after_upload_before_outcome_transaction","multipart_aborted":false,"ordinal":88,"partial_export_removed":false,"process_state":{"attempt_id":"4613bfeb-ab6c-45f6-9bbe-96e0fd28aa9b","byte_size":12612,"committed":false,"fencing_token":1,"job_id":"9713e8fd-b465-45f1-b193-d5c9471266f6","kill_stage":"after_upload_before_outcome_transaction","lease_expires_at":"2026-08-13 15:31:46.699409+00:00","lease_owner":"fault-worker-088","lease_token":"30d6b4e8-ebf7-478c-b5e1-a2473331a4ae","object_keys":["observations/7a82b14e-f2c1-4679-b28a-9e0194e71e95/a5e2da997bfdf576e90976ee6e41cf2857bf784047581585fe3a835eaf018af4"],"pid":30076,"reached":true,"sha256":"a5e2da997bfdf576e90976ee6e41cf2857bf784047581585fe3a835eaf018af4","work_item_id":"c8c45608-cd3b-4dce-bb2a-ee8dd1563e43"},"replay_mismatches":[],"stderr":"","stdout":""}
-{"campaign_id":"84a30526-8931-4372-90f9-b60c1e111ed0","fault_point":"after_adapter_return_before_upload","multipart_aborted":false,"ordinal":89,"partial_export_removed":false,"process_state":{"attempt_id":"b0871059-bb5f-4bfb-8759-5eaf2cbdf67a","committed":false,"fencing_token":1,"job_id":"72c1d8a6-c28a-42bc-8042-2e4d75c1fab8","kill_stage":"after_adapter_return_before_upload","lease_expires_at":"2026-08-13 15:31:57.891865+00:00","lease_owner":"fault-worker-089","lease_token":"fd032a35-35d4-449b-b3d2-261636c3bc41","pid":38948,"reached":true,"work_item_id":"72ae051b-e65c-4538-a07c-a528ac3233f1"},"replay_mismatches":[],"stderr":"","stdout":""}
-{"campaign_id":"136f2ca6-1984-42a4-9266-82479854223f","fault_point":"after_upload_before_outcome_transaction","multipart_aborted":false,"ordinal":90,"partial_export_removed":false,"process_state":{"attempt_id":"3cbc4f65-2d73-47ab-a9dd-2440d80414e0","byte_size":12612,"committed":false,"fencing_token":1,"job_id":"529e499e-5051-4f5f-bec4-ba13fb2cc19f","kill_stage":"after_upload_before_outcome_transaction","lease_expires_at":"2026-08-13 15:32:08.368791+00:00","lease_owner":"fault-worker-090","lease_token":"7ffa84d5-21c0-4495-9f8d-0b3aac293092","object_keys":["observations/136f2ca6-1984-42a4-9266-82479854223f/aad36cf1091ec61b8a9c0fd9a87bd6804cd05449a99877dc799f13d96726f4aa"],"pid":36292,"reached":true,"sha256":"aad36cf1091ec61b8a9c0fd9a87bd6804cd05449a99877dc799f13d96726f4aa","work_item_id":"78a497d0-9374-47db-acb6-bec8f774bbd0"},"replay_mismatches":[],"stderr":"","stdout":""}
-{"campaign_id":"4cf918c1-a536-4f95-968e-7a5406ce59b7","fault_point":"during_evidence_export","multipart_aborted":false,"ordinal":91,"partial_export_removed":true,"process_state":{"complete_byte_size":12381,"kill_stage":"during_evidence_export","object_store_bucket":"labbridge-phase7-fault-release2","package_id":"experiment-package:246eea282d3fd650a964458d53a3a1a6","partial_byte_size":6190,"partial_path":"build\\phase7-fault-release2\\working\\interrupted\\4cf918c1-a536-4f95-968e-7a5406ce59b7.zip.partial","pid":13640,"reached":true},"replay_mismatches":[],"stderr":"","stdout":""}
-{"campaign_id":"6c3b6a35-8005-4b87-9352-3c102ea4e6e3","fault_point":"after_adapter_return_before_upload","multipart_aborted":false,"ordinal":92,"partial_export_removed":false,"process_state":{"attempt_id":"88b16124-84e5-41c9-a834-5820f6969414","committed":false,"fencing_token":1,"job_id":"afabcfdf-f14f-4c52-90c0-b472731529db","kill_stage":"after_adapter_return_before_upload","lease_expires_at":"2026-08-13 15:32:27.143725+00:00","lease_owner":"fault-worker-092","lease_token":"54d36501-adcf-46bc-a4d7-f83502bb579e","pid":37516,"reached":true,"work_item_id":"94c584e1-c416-4322-a655-0cd6ec0f448d"},"replay_mismatches":[],"stderr":"","stdout":""}
-{"campaign_id":"519d9e8c-7f1f-4fcf-9b02-a880ca86a268","fault_point":"after_adapter_return_before_upload","multipart_aborted":false,"ordinal":93,"partial_export_removed":false,"process_state":{"attempt_id":"727f0b68-6efb-419b-b643-ce43332c8e84","committed":false,"fencing_token":1,"job_id":"ff258052-0141-459b-8fe7-f568e33491f8","kill_stage":"after_adapter_return_before_upload","lease_expires_at":"2026-08-13 15:32:38.480914+00:00","lease_owner":"fault-worker-093","lease_token":"e28ed570-a912-49a7-bce2-93ec3bb80e1f","pid":38076,"reached":true,"work_item_id":"553372a2-23bc-4845-a8c5-589d716bef54"},"replay_mismatches":[],"stderr":"","stdout":""}
-{"campaign_id":"eedb969b-1a0d-45d1-a1e8-37cbea951417","fault_point":"during_evidence_export","multipart_aborted":false,"ordinal":94,"partial_export_removed":true,"process_state":{"complete_byte_size":12386,"kill_stage":"during_evidence_export","object_store_bucket":"labbridge-phase7-fault-release2","package_id":"experiment-package:fca71f41d87ba21dfba25e19d86ccf48","partial_byte_size":6193,"partial_path":"build\\phase7-fault-release2\\working\\interrupted\\eedb969b-1a0d-45d1-a1e8-37cbea951417.zip.partial","pid":23984,"reached":true},"replay_mismatches":[],"stderr":"","stdout":""}
-{"campaign_id":"f5360227-cf82-4423-9f17-fcc48f0e26df","fault_point":"after_lease_acquisition","multipart_aborted":false,"ordinal":95,"partial_export_removed":false,"process_state":{"attempt_id":null,"committed":false,"fencing_token":1,"job_id":"9d455da5-2bf9-4dc1-af55-f4f531f98956","kill_stage":"after_lease_acquisition","lease_expires_at":"2026-08-13 15:32:57.698988+00:00","lease_owner":"fault-worker-095","lease_token":"8dcd7caa-6953-413c-b66b-494e6d144bbc","pid":39056,"reached":true,"work_item_id":"97bd4c62-78bc-46b6-babc-813646246df6"},"replay_mismatches":[],"stderr":"","stdout":""}
-{"campaign_id":"61890fc0-9ed1-4ed1-8db0-fd4c5b6318dc","fault_point":"after_upload_before_outcome_transaction","multipart_aborted":false,"ordinal":96,"partial_export_removed":false,"process_state":{"attempt_id":"f80bc625-b11b-4694-87aa-4d7e63701e44","byte_size":12612,"committed":false,"fencing_token":1,"job_id":"241d8517-eede-43eb-b7f5-9d1cb1ed399a","kill_stage":"after_upload_before_outcome_transaction","lease_expires_at":"2026-08-13 15:33:09.313905+00:00","lease_owner":"fault-worker-096","lease_token":"8cbd6c77-536a-43d8-be38-80bbdf1fe731","object_keys":["observations/61890fc0-9ed1-4ed1-8db0-fd4c5b6318dc/aad36cf1091ec61b8a9c0fd9a87bd6804cd05449a99877dc799f13d96726f4aa"],"pid":33372,"reached":true,"sha256":"aad36cf1091ec61b8a9c0fd9a87bd6804cd05449a99877dc799f13d96726f4aa","work_item_id":"812d3b60-6b8a-4f75-bf11-c8be71a7142f"},"replay_mismatches":[],"stderr":"","stdout":""}
-{"campaign_id":"a2c40507-e440-4f6a-b166-87f5d619a9dd","fault_point":"after_commit_before_acknowledgement","multipart_aborted":false,"ordinal":97,"partial_export_removed":false,"process_state":{"attempt_id":"e972f874-82c7-4b08-a631-db874f914b7c","byte_size":12528,"committed":true,"fencing_token":1,"job_id":"72933fea-55b7-4f84-9469-ff8830391459","kill_stage":"after_commit_before_acknowledgement","lease_expires_at":null,"lease_owner":"fault-worker-097","lease_token":null,"object_keys":["observations/a2c40507-e440-4f6a-b166-87f5d619a9dd/d8cd5745de60b80ddbcc49714fe19fe4cb42fa70b27ed60a64af1eb85def8b0f"],"observation_id":"obs:b84eb9616f3723fa4749e020b2922217","outcome_status":"succeeded","pid":30836,"reached":true,"sha256":"d8cd5745de60b80ddbcc49714fe19fe4cb42fa70b27ed60a64af1eb85def8b0f","work_item_id":"1fb0762f-2fb6-4b1f-af36-3ad65740aa99"},"replay_mismatches":[],"stderr":"","stdout":""}
-{"campaign_id":"f3e4def2-6635-4026-9e1f-9fa2b0f3e4f2","fault_point":"during_object_upload","multipart_aborted":true,"ordinal":98,"partial_export_removed":false,"process_state":{"attempt_id":"4788404f-f20d-4a7f-8651-c73c8d5d5868","committed":false,"fencing_token":1,"job_id":"61682296-22f1-4fa3-80d8-40edf6f84df4","kill_stage":"during_object_upload","lease_expires_at":"2026-08-13 15:33:32.400339+00:00","lease_owner":"fault-worker-098","lease_token":"cf9d932d-d3e1-4ab5-b329-e41df0b6198b","multipart_part_count":1,"multipart_upload_id":"ZjAzZDk3MmEtNDFiYy00ZGRhLTg1MjAtNWI4MzdmNzFhZDRiLjZhYTY2MjljLWY0NDUtNDZjNC1hZjk5LWU1ZGE2ZDI5ZjdmMngxNzg2NjM1MjExNTc2MjkxNzM5","object_keys":["observations/f3e4def2-6635-4026-9e1f-9fa2b0f3e4f2/15b5f92914195b4689fb72a65379ddfe54be32309e713612ab9fd0ba8231232c"],"pid":37700,"reached":true,"work_item_id":"7b484342-1dca-49ea-8805-e75a675f227f"},"replay_mismatches":[],"stderr":"","stdout":""}
-{"campaign_id":"94c8929d-f086-472b-b54d-4702739bb26f","fault_point":"during_evidence_export","multipart_aborted":false,"ordinal":99,"partial_export_removed":true,"process_state":{"complete_byte_size":12381,"kill_stage":"during_evidence_export","object_store_bucket":"labbridge-phase7-fault-release2","package_id":"experiment-package:522e2e2e808c572e195f5578d5c22167","partial_byte_size":6190,"partial_path":"build\\phase7-fault-release2\\working\\interrupted\\94c8929d-f086-472b-b54d-4702739bb26f.zip.partial","pid":34420,"reached":true},"replay_mismatches":[],"stderr":"","stdout":""}
-{"campaign_id":"19937805-b191-4d42-bff5-ef2f6ada4fe8","fault_point":"during_evidence_export","multipart_aborted":false,"ordinal":100,"partial_export_removed":true,"process_state":{"complete_byte_size":12380,"kill_stage":"during_evidence_export","object_store_bucket":"labbridge-phase7-fault-release2","package_id":"experiment-package:8a4c6732bf6d082a13cfb1ba573c21c0","partial_byte_size":6190,"partial_path":"build\\phase7-fault-release2\\working\\interrupted\\19937805-b191-4d42-bff5-ef2f6ada4fe8.zip.partial","pid":9728,"reached":true},"replay_mismatches":[],"stderr":"","stdout":""}
+{"campaign_id":"6b985d61-1f60-44d9-881c-807d024beb86","fault_point":"after_upload_before_outcome_transaction","multipart_aborted":false,"ordinal":1,"partial_export_removed":false,"process_state":{"attempt_id":"1baa9238-c9d8-4c41-8332-7d981abee592","byte_size":12528,"committed":false,"fencing_token":1,"job_id":"e23265a7-5cce-4aeb-a5c1-2a8d83e4b05e","kill_stage":"after_upload_before_outcome_transaction","lease_expires_at":"2026-08-14 10:10:11.858066+00:00","lease_owner":"fault-worker-001","lease_token":"26145127-789d-470d-b7a9-1a97227edd49","object_keys":["observations/6b985d61-1f60-44d9-881c-807d024beb86/d8cd5745de60b80ddbcc49714fe19fe4cb42fa70b27ed60a64af1eb85def8b0f"],"pid":35220,"reached":true,"sha256":"d8cd5745de60b80ddbcc49714fe19fe4cb42fa70b27ed60a64af1eb85def8b0f","work_item_id":"3f2023a3-d20b-42e9-9c37-e0aa62979a25"},"replay_mismatches":[],"stderr":"","stdout":""}
+{"campaign_id":"3ec20c72-ef7d-4976-8458-f77e4c0cdf95","fault_point":"after_commit_before_acknowledgement","multipart_aborted":false,"ordinal":2,"partial_export_removed":false,"process_state":{"attempt_id":"56f66952-4066-484b-9afd-9728089a08eb","byte_size":12552,"committed":true,"fencing_token":1,"job_id":"6a26b627-5f0f-4611-99b7-8a21a4d70d10","kill_stage":"after_commit_before_acknowledgement","lease_expires_at":null,"lease_owner":"fault-worker-002","lease_token":null,"object_keys":["observations/3ec20c72-ef7d-4976-8458-f77e4c0cdf95/15b5f92914195b4689fb72a65379ddfe54be32309e713612ab9fd0ba8231232c"],"observation_id":"obs:ec33918fdd0d2872e583371f88a7fdcb","outcome_status":"succeeded","pid":31992,"reached":true,"sha256":"15b5f92914195b4689fb72a65379ddfe54be32309e713612ab9fd0ba8231232c","work_item_id":"8fa0dae1-2252-42c5-929b-d54db89dc1e9"},"replay_mismatches":[],"stderr":"","stdout":""}
+{"campaign_id":"d691cf85-6cc4-4ff6-ae0e-e09eef28676b","fault_point":"after_commit_before_acknowledgement","multipart_aborted":false,"ordinal":3,"partial_export_removed":false,"process_state":{"attempt_id":"818d413f-5027-4bd7-a668-6f3d9aec557f","byte_size":12588,"committed":true,"fencing_token":1,"job_id":"7790c4d1-5354-42b7-b4cf-122cc0acdbe7","kill_stage":"after_commit_before_acknowledgement","lease_expires_at":null,"lease_owner":"fault-worker-003","lease_token":null,"object_keys":["observations/d691cf85-6cc4-4ff6-ae0e-e09eef28676b/d8935227d741c829368468f14ee66e8253bef83a8cb6fe49e3d363464bfe90ea"],"observation_id":"obs:4a4ceb152add486a6face6ca46f59b79","outcome_status":"succeeded","pid":35612,"reached":true,"sha256":"d8935227d741c829368468f14ee66e8253bef83a8cb6fe49e3d363464bfe90ea","work_item_id":"4831f91f-ea21-4615-8484-e4210db2abbb"},"replay_mismatches":[],"stderr":"","stdout":""}
+{"campaign_id":"e99032a1-d0db-417c-afbb-7323c2916f43","fault_point":"after_upload_before_outcome_transaction","multipart_aborted":false,"ordinal":4,"partial_export_removed":false,"process_state":{"attempt_id":"66061769-1259-4e0c-87b6-83eee7e8543a","byte_size":12612,"committed":false,"fencing_token":1,"job_id":"ae4d208b-6f22-4dd7-9c7b-264f5363bdd1","kill_stage":"after_upload_before_outcome_transaction","lease_expires_at":"2026-08-14 10:10:27.693359+00:00","lease_owner":"fault-worker-004","lease_token":"bbd834e1-5498-42e4-88b0-51738ff977df","object_keys":["observations/e99032a1-d0db-417c-afbb-7323c2916f43/a5e2da997bfdf576e90976ee6e41cf2857bf784047581585fe3a835eaf018af4"],"pid":34784,"reached":true,"sha256":"a5e2da997bfdf576e90976ee6e41cf2857bf784047581585fe3a835eaf018af4","work_item_id":"fa45a7c7-c124-41ab-8fcf-9b6ee7918287"},"replay_mismatches":[],"stderr":"","stdout":""}
+{"campaign_id":"debea722-7e09-48fa-87da-b9497c61bed9","fault_point":"during_evidence_export","multipart_aborted":false,"ordinal":5,"partial_export_removed":true,"process_state":{"complete_byte_size":12356,"kill_stage":"during_evidence_export","object_store_bucket":"labbridge-phase7-fault-release3","package_id":"experiment-package:ae759fee90c05341a1a718b80d5537f5","partial_byte_size":6178,"partial_path":"build\\phase7-fault-campaign\\working\\interrupted\\debea722-7e09-48fa-87da-b9497c61bed9.zip.partial","pid":36428,"reached":true},"replay_mismatches":[],"stderr":"","stdout":""}
+{"campaign_id":"a1bc6249-fbc8-4959-bfbe-28a425045f05","fault_point":"after_commit_before_acknowledgement","multipart_aborted":false,"ordinal":6,"partial_export_removed":false,"process_state":{"attempt_id":"0572dcea-bfa6-429c-9820-b8b550d13996","byte_size":12612,"committed":true,"fencing_token":1,"job_id":"0c060b82-d703-45fe-8005-67d3cdaab86f","kill_stage":"after_commit_before_acknowledgement","lease_expires_at":null,"lease_owner":"fault-worker-006","lease_token":null,"object_keys":["observations/a1bc6249-fbc8-4959-bfbe-28a425045f05/aad36cf1091ec61b8a9c0fd9a87bd6804cd05449a99877dc799f13d96726f4aa"],"observation_id":"obs:c2adaedb0ac11f4fdb041873e5366ca7","outcome_status":"succeeded","pid":36304,"reached":true,"sha256":"aad36cf1091ec61b8a9c0fd9a87bd6804cd05449a99877dc799f13d96726f4aa","work_item_id":"32e3b842-a7cc-4d56-b802-bfe6b63bac43"},"replay_mismatches":[],"stderr":"","stdout":""}
+{"campaign_id":"4e2327cc-9dea-464a-bfdd-cb24bb962bda","fault_point":"after_lease_acquisition","multipart_aborted":false,"ordinal":7,"partial_export_removed":false,"process_state":{"attempt_id":null,"committed":false,"fencing_token":1,"job_id":"07963c85-70c8-47c3-8a8c-bc72df9473ed","kill_stage":"after_lease_acquisition","lease_expires_at":"2026-08-14 10:10:39.379360+00:00","lease_owner":"fault-worker-007","lease_token":"d77309d8-bf91-4b4a-abf9-31ede2aea2b4","pid":24932,"reached":true,"work_item_id":"bca4a4f3-a5f3-4dc6-9ce6-80186a03f9d1"},"replay_mismatches":[],"stderr":"","stdout":""}
+{"campaign_id":"63c86416-3e69-49c6-9c26-7c19c7cad96d","fault_point":"during_object_upload","multipart_aborted":true,"ordinal":8,"partial_export_removed":false,"process_state":{"attempt_id":"6a399dd6-d3a0-4936-872b-fda05584dc36","committed":false,"fencing_token":1,"job_id":"21139f34-4c58-4ca8-9d72-7a3ec9bfbc93","kill_stage":"during_object_upload","lease_expires_at":"2026-08-14 10:10:43.958089+00:00","lease_owner":"fault-worker-008","lease_token":"d6b2cec8-584a-4a49-bd2c-c50c7c221397","multipart_part_count":1,"multipart_upload_id":"Njg2NTZiOWUtYzNmOC00Nzk2LWFlMjMtZDgxZGU1MGViNTk4LjU2NDJjYmRmLTNlMGYtNGFmMS1iYjA0LTEzMmU0Mjk3NWNjZHgxNzg2NzAyMjQzMTIxMzcxNDYy","object_keys":["observations/63c86416-3e69-49c6-9c26-7c19c7cad96d/15b5f92914195b4689fb72a65379ddfe54be32309e713612ab9fd0ba8231232c"],"pid":29024,"reached":true,"work_item_id":"e9f91370-0cb3-477e-9464-7fceaaa07172"},"replay_mismatches":[],"stderr":"","stdout":""}
+{"campaign_id":"605615d2-914f-4543-b5b0-f0a4b8bce588","fault_point":"during_object_upload","multipart_aborted":true,"ordinal":9,"partial_export_removed":false,"process_state":{"attempt_id":"e05ccbb3-debf-46a9-8eca-33aabe2c2091","committed":false,"fencing_token":1,"job_id":"b7b34ae4-5260-431e-bd4b-32043162248b","kill_stage":"during_object_upload","lease_expires_at":"2026-08-14 10:10:50.156977+00:00","lease_owner":"fault-worker-009","lease_token":"cfd251c8-a3b9-4470-8102-7739c1253a07","multipart_part_count":1,"multipart_upload_id":"Njg2NTZiOWUtYzNmOC00Nzk2LWFlMjMtZDgxZGU1MGViNTk4LjBlM2EzYjA0LTAzZjctNDc1Mi05MGY3LWFiYTE2MWY0MjNlYngxNzg2NzAyMjQ5NDg3MTU2NjIz","object_keys":["observations/605615d2-914f-4543-b5b0-f0a4b8bce588/d8935227d741c829368468f14ee66e8253bef83a8cb6fe49e3d363464bfe90ea"],"pid":14492,"reached":true,"work_item_id":"c455617e-3867-4108-ae2b-4b05f0f2ac93"},"replay_mismatches":[],"stderr":"","stdout":""}
+{"campaign_id":"fa5dde52-f4d2-49e6-9da6-9e0650f9f995","fault_point":"after_adapter_return_before_upload","multipart_aborted":false,"ordinal":10,"partial_export_removed":false,"process_state":{"attempt_id":"c26a36ad-1513-49a7-b4ab-a7d0d23ed5cf","committed":false,"fencing_token":1,"job_id":"84dcec9b-f719-4f2f-9c8b-d936a1d17713","kill_stage":"after_adapter_return_before_upload","lease_expires_at":"2026-08-14 10:10:56.611658+00:00","lease_owner":"fault-worker-010","lease_token":"4bfe8f05-de34-4c01-9fcb-dcd7b6f10fe5","pid":28800,"reached":true,"work_item_id":"5ccdb010-1dd3-4f99-860d-710f82680244"},"replay_mismatches":[],"stderr":"","stdout":""}
+{"campaign_id":"7f13ceee-76a2-4996-be86-6342a9ca4b14","fault_point":"during_object_upload","multipart_aborted":true,"ordinal":11,"partial_export_removed":false,"process_state":{"attempt_id":"6162ee4b-ddc7-4d4a-bc2b-2a1eb958c208","committed":false,"fencing_token":1,"job_id":"fd9972ae-cc92-4382-8f75-6519351ffca9","kill_stage":"during_object_upload","lease_expires_at":"2026-08-14 10:11:02.196180+00:00","lease_owner":"fault-worker-011","lease_token":"b405f483-1246-4f4f-8268-d2ac0bda152c","multipart_part_count":1,"multipart_upload_id":"Njg2NTZiOWUtYzNmOC00Nzk2LWFlMjMtZDgxZGU1MGViNTk4LmNmMzcyM2E0LWIxZmMtNDVhNC04ZjAxLTk5NzY4NTQxNDkzY3gxNzg2NzAyMjYxMzg3MTE3MjA1","object_keys":["observations/7f13ceee-76a2-4996-be86-6342a9ca4b14/a51d521be9793013395aac33cad16a4953a973d5ff0b38ad3c40a996a12e59ac"],"pid":27400,"reached":true,"work_item_id":"98f1d87a-f766-40e3-ae0c-c871bdd50f81"},"replay_mismatches":[],"stderr":"","stdout":""}
+{"campaign_id":"8c33bb8b-54d6-4e69-8398-19320e394cec","fault_point":"after_commit_before_acknowledgement","multipart_aborted":false,"ordinal":12,"partial_export_removed":false,"process_state":{"attempt_id":"03c293c6-80a2-48f5-959b-1bb4ad492ee9","byte_size":12612,"committed":true,"fencing_token":1,"job_id":"21fcadc6-3442-4396-a557-231e7eefa943","kill_stage":"after_commit_before_acknowledgement","lease_expires_at":null,"lease_owner":"fault-worker-012","lease_token":null,"object_keys":["observations/8c33bb8b-54d6-4e69-8398-19320e394cec/aad36cf1091ec61b8a9c0fd9a87bd6804cd05449a99877dc799f13d96726f4aa"],"observation_id":"obs:c2adaedb0ac11f4fdb041873e5366ca7","outcome_status":"succeeded","pid":36232,"reached":true,"sha256":"aad36cf1091ec61b8a9c0fd9a87bd6804cd05449a99877dc799f13d96726f4aa","work_item_id":"43afe326-39ad-4d47-9f6a-572b44d9c453"},"replay_mismatches":[],"stderr":"","stdout":""}
+{"campaign_id":"eb15f57a-9453-455b-b698-b9c0c7392a7a","fault_point":"after_adapter_return_before_upload","multipart_aborted":false,"ordinal":13,"partial_export_removed":false,"process_state":{"attempt_id":"dccfdcff-a9d4-43a8-9719-57d6ccd56d91","committed":false,"fencing_token":1,"job_id":"294d97ad-9f02-4606-bd8a-07a587a588a0","kill_stage":"after_adapter_return_before_upload","lease_expires_at":"2026-08-14 10:11:12.563307+00:00","lease_owner":"fault-worker-013","lease_token":"8111c028-b8a2-4e24-af66-3cb9e4e47ff7","pid":34956,"reached":true,"work_item_id":"d212ce84-a36f-402b-9a84-876f4613cd52"},"replay_mismatches":[],"stderr":"","stdout":""}
+{"campaign_id":"151ccef8-ef3e-4d0f-8369-e7f7f608ef6f","fault_point":"after_lease_acquisition","multipart_aborted":false,"ordinal":14,"partial_export_removed":false,"process_state":{"attempt_id":null,"committed":false,"fencing_token":1,"job_id":"42ad698a-bcc0-4474-bd10-8c0c731a6883","kill_stage":"after_lease_acquisition","lease_expires_at":"2026-08-14 10:11:17.773487+00:00","lease_owner":"fault-worker-014","lease_token":"0c5bfbaa-3df0-4d08-9ebd-1b2df6752376","pid":1888,"reached":true,"work_item_id":"f8a31524-8881-48c9-9938-903fa24a51b6"},"replay_mismatches":[],"stderr":"","stdout":""}
+{"campaign_id":"ae40ec4a-9c7c-4bf0-b9cf-f52c96558d1c","fault_point":"after_lease_acquisition","multipart_aborted":false,"ordinal":15,"partial_export_removed":false,"process_state":{"attempt_id":null,"committed":false,"fencing_token":1,"job_id":"3f5cc94c-5e19-4cfe-b7ad-0ce108936ae0","kill_stage":"after_lease_acquisition","lease_expires_at":"2026-08-14 10:11:23.812133+00:00","lease_owner":"fault-worker-015","lease_token":"6a961aa6-93ab-40b5-948d-234f459475ff","pid":33568,"reached":true,"work_item_id":"dbeec658-fa24-42a2-a273-486a5cecb1fa"},"replay_mismatches":[],"stderr":"","stdout":""}
+{"campaign_id":"7ddde011-de55-4b48-8979-a68b176eafaa","fault_point":"after_lease_acquisition","multipart_aborted":false,"ordinal":16,"partial_export_removed":false,"process_state":{"attempt_id":null,"committed":false,"fencing_token":1,"job_id":"f882507b-37d9-4b53-b951-2274fcfa88ab","kill_stage":"after_lease_acquisition","lease_expires_at":"2026-08-14 10:11:29.215163+00:00","lease_owner":"fault-worker-016","lease_token":"70912909-3362-42f2-a04c-1f86794c4cbf","pid":34368,"reached":true,"work_item_id":"197cbe92-29b2-4806-b8e9-aec38d4f7f0b"},"replay_mismatches":[],"stderr":"","stdout":""}
+{"campaign_id":"137655fe-2638-4d0f-a009-bcc9176dd0e7","fault_point":"after_adapter_return_before_upload","multipart_aborted":false,"ordinal":17,"partial_export_removed":false,"process_state":{"attempt_id":"000c9f69-779a-4eb8-8d1d-399e7490988e","committed":false,"fencing_token":1,"job_id":"17b2136f-adb7-426d-980d-ba6cd5c47dae","kill_stage":"after_adapter_return_before_upload","lease_expires_at":"2026-08-14 10:11:35.927691+00:00","lease_owner":"fault-worker-017","lease_token":"6356eaf7-f06f-423c-9ea6-724755e69530","pid":2232,"reached":true,"work_item_id":"08f82a3e-db12-473b-bf2a-d46b363abe8b"},"replay_mismatches":[],"stderr":"","stdout":""}
+{"campaign_id":"c5e5e6d8-0f6e-4af6-81df-c86cfb376721","fault_point":"during_object_upload","multipart_aborted":true,"ordinal":18,"partial_export_removed":false,"process_state":{"attempt_id":"f805a62f-3211-4dc2-8b4d-852b94375b59","committed":false,"fencing_token":1,"job_id":"ee470b6c-cf87-4a6d-8ce9-fd133735a1d7","kill_stage":"during_object_upload","lease_expires_at":"2026-08-14 10:11:42.585245+00:00","lease_owner":"fault-worker-018","lease_token":"89fe87a1-2429-4d9b-a565-41865d1da910","multipart_part_count":1,"multipart_upload_id":"Njg2NTZiOWUtYzNmOC00Nzk2LWFlMjMtZDgxZGU1MGViNTk4LjNiYzE1OGNmLTU2MTAtNGU4ZS1iYzNmLTRjYzhkZDNhNDc5MXgxNzg2NzAyMzAxNzc5MTczNTY2","object_keys":["observations/c5e5e6d8-0f6e-4af6-81df-c86cfb376721/aad36cf1091ec61b8a9c0fd9a87bd6804cd05449a99877dc799f13d96726f4aa"],"pid":34360,"reached":true,"work_item_id":"0d43221b-5dae-4a18-9ae1-42a5b8cda496"},"replay_mismatches":[],"stderr":"","stdout":""}
+{"campaign_id":"b27e92ae-eb8e-4576-bef9-b923334dcc71","fault_point":"after_adapter_return_before_upload","multipart_aborted":false,"ordinal":19,"partial_export_removed":false,"process_state":{"attempt_id":"cb5cd259-16d3-4200-b238-fac324de5e7a","committed":false,"fencing_token":1,"job_id":"1aa7aaff-3c63-4daf-86a7-d43f388c3723","kill_stage":"after_adapter_return_before_upload","lease_expires_at":"2026-08-14 10:11:49.041490+00:00","lease_owner":"fault-worker-019","lease_token":"a76f518a-047b-4178-b4b4-44c3401f2ff2","pid":27016,"reached":true,"work_item_id":"2a132801-1535-45e8-8fc3-21424ff3435c"},"replay_mismatches":[],"stderr":"","stdout":""}
+{"campaign_id":"60c1b1b6-173f-4375-afc2-67a5f2ae08aa","fault_point":"during_object_upload","multipart_aborted":true,"ordinal":20,"partial_export_removed":false,"process_state":{"attempt_id":"92c9a3ab-c895-439b-aee3-38e25d45516a","committed":false,"fencing_token":1,"job_id":"0b9f1105-dc60-4a2e-aad5-69a1f87d46fb","kill_stage":"during_object_upload","lease_expires_at":"2026-08-14 10:11:55.134591+00:00","lease_owner":"fault-worker-020","lease_token":"dbf7fd5f-0a9e-43c0-b334-b27a5444876d","multipart_part_count":1,"multipart_upload_id":"Njg2NTZiOWUtYzNmOC00Nzk2LWFlMjMtZDgxZGU1MGViNTk4LjE1MTBlNTM5LTdmOWItNGMyYy04ZTU0LWE2MzdiNjg0MjVmM3gxNzg2NzAyMzE0MzQxOTQ4Mjg0","object_keys":["observations/60c1b1b6-173f-4375-afc2-67a5f2ae08aa/15b5f92914195b4689fb72a65379ddfe54be32309e713612ab9fd0ba8231232c"],"pid":34240,"reached":true,"work_item_id":"64e706a7-bac6-4725-8b09-959cf2ebee4a"},"replay_mismatches":[],"stderr":"","stdout":""}
+{"campaign_id":"4a29aec2-9501-4195-97e3-25eeb1014c87","fault_point":"during_object_upload","multipart_aborted":true,"ordinal":21,"partial_export_removed":false,"process_state":{"attempt_id":"ddf9943c-95d3-4a49-a41c-6a63a1c2433a","committed":false,"fencing_token":1,"job_id":"ef0c865e-2669-4547-87a4-118aeba79e20","kill_stage":"during_object_upload","lease_expires_at":"2026-08-14 10:12:00.878315+00:00","lease_owner":"fault-worker-021","lease_token":"50f9fdc5-dfaf-4084-9c84-7c69c1231092","multipart_part_count":1,"multipart_upload_id":"Njg2NTZiOWUtYzNmOC00Nzk2LWFlMjMtZDgxZGU1MGViNTk4LjI3ZTZjYjM5LTQwNDgtNDRiNC1hMjU1LTA5ZDg0Nzg2OTY1ZXgxNzg2NzAyMzIwMDgxNzIyODQ1","object_keys":["observations/4a29aec2-9501-4195-97e3-25eeb1014c87/d8935227d741c829368468f14ee66e8253bef83a8cb6fe49e3d363464bfe90ea"],"pid":34460,"reached":true,"work_item_id":"088ee337-19c3-4e44-bf9f-dea5cfcb93c9"},"replay_mismatches":[],"stderr":"","stdout":""}
+{"campaign_id":"e107ca1d-5f49-43ad-98d0-82bbd2161c5b","fault_point":"after_upload_before_outcome_transaction","multipart_aborted":false,"ordinal":22,"partial_export_removed":false,"process_state":{"attempt_id":"785928d6-70fa-4079-a3a3-a6c373a19bd9","byte_size":12612,"committed":false,"fencing_token":1,"job_id":"84383670-cccf-48c5-8895-906382a9a344","kill_stage":"after_upload_before_outcome_transaction","lease_expires_at":"2026-08-14 10:12:06.623199+00:00","lease_owner":"fault-worker-022","lease_token":"ef675408-6a90-4f17-af9f-ab57cb0550ea","object_keys":["observations/e107ca1d-5f49-43ad-98d0-82bbd2161c5b/a5e2da997bfdf576e90976ee6e41cf2857bf784047581585fe3a835eaf018af4"],"pid":35572,"reached":true,"sha256":"a5e2da997bfdf576e90976ee6e41cf2857bf784047581585fe3a835eaf018af4","work_item_id":"8397e7a3-1f68-4182-aae9-bf9f503c3c31"},"replay_mismatches":[],"stderr":"","stdout":""}
+{"campaign_id":"f12df2e2-3626-4d3e-9350-dd8e497c4f47","fault_point":"during_object_upload","multipart_aborted":true,"ordinal":23,"partial_export_removed":false,"process_state":{"attempt_id":"2744f623-4ed0-4368-b216-a98ea670cb1e","committed":false,"fencing_token":1,"job_id":"15340983-5e30-4d09-971b-9857cca371c6","kill_stage":"during_object_upload","lease_expires_at":"2026-08-14 10:12:11.949344+00:00","lease_owner":"fault-worker-023","lease_token":"14b074ec-a12c-4ff5-aa80-19a90d5ebf60","multipart_part_count":1,"multipart_upload_id":"Njg2NTZiOWUtYzNmOC00Nzk2LWFlMjMtZDgxZGU1MGViNTk4LmRmNDU4NmY3LTU2NjgtNDU0My1iY2Y4LWVmNWNkYTRhMDI1ZHgxNzg2NzAyMzMxMDU0Njc4OTI1","object_keys":["observations/f12df2e2-3626-4d3e-9350-dd8e497c4f47/a51d521be9793013395aac33cad16a4953a973d5ff0b38ad3c40a996a12e59ac"],"pid":33344,"reached":true,"work_item_id":"4a690ac0-59ef-4f78-a350-537dd2258b68"},"replay_mismatches":[],"stderr":"","stdout":""}
+{"campaign_id":"1d42f522-20a4-4679-b64f-1d426a3d1828","fault_point":"after_adapter_return_before_upload","multipart_aborted":false,"ordinal":24,"partial_export_removed":false,"process_state":{"attempt_id":"ca2a785d-a248-440d-a062-5941ffb61d96","committed":false,"fencing_token":1,"job_id":"0d7ad5b1-91ee-4c49-9b32-8acbe5a39a7b","kill_stage":"after_adapter_return_before_upload","lease_expires_at":"2026-08-14 10:12:17.575563+00:00","lease_owner":"fault-worker-024","lease_token":"61d1b884-1c1b-4d1d-af64-b686695acd89","pid":34680,"reached":true,"work_item_id":"25058ee4-00cc-4c10-a8fb-e17ba2d45ef7"},"replay_mismatches":[],"stderr":"","stdout":""}
+{"campaign_id":"49cafee4-4b11-4575-b93e-5d32091788a1","fault_point":"after_lease_acquisition","multipart_aborted":false,"ordinal":25,"partial_export_removed":false,"process_state":{"attempt_id":null,"committed":false,"fencing_token":1,"job_id":"5479b414-8bcd-4589-943c-cd681a5b2cdc","kill_stage":"after_lease_acquisition","lease_expires_at":"2026-08-14 10:12:23.920701+00:00","lease_owner":"fault-worker-025","lease_token":"71d2b9af-328b-4557-8a6f-0e68b95b61e1","pid":36816,"reached":true,"work_item_id":"efe41304-944e-4520-9a66-03c1f25a1234"},"replay_mismatches":[],"stderr":"","stdout":""}
+{"campaign_id":"820f15e5-e222-46cc-b74e-6713d9e12e29","fault_point":"after_upload_before_outcome_transaction","multipart_aborted":false,"ordinal":26,"partial_export_removed":false,"process_state":{"attempt_id":"96850c13-bbb7-42cc-8016-069a2d569a9d","byte_size":12552,"committed":false,"fencing_token":1,"job_id":"2b99e4c8-c664-4c14-9b8a-2d2380ef5dfb","kill_stage":"after_upload_before_outcome_transaction","lease_expires_at":"2026-08-14 10:12:30.243615+00:00","lease_owner":"fault-worker-026","lease_token":"6a8ba61f-77ff-4eb1-9156-ead5d7b69793","object_keys":["observations/820f15e5-e222-46cc-b74e-6713d9e12e29/15b5f92914195b4689fb72a65379ddfe54be32309e713612ab9fd0ba8231232c"],"pid":35132,"reached":true,"sha256":"15b5f92914195b4689fb72a65379ddfe54be32309e713612ab9fd0ba8231232c","work_item_id":"5d0e2099-f8e6-4a5a-bd25-0ab174696905"},"replay_mismatches":[],"stderr":"","stdout":""}
+{"campaign_id":"a36da83d-db46-4670-a637-9ffe5e220810","fault_point":"after_lease_acquisition","multipart_aborted":false,"ordinal":27,"partial_export_removed":false,"process_state":{"attempt_id":null,"committed":false,"fencing_token":1,"job_id":"07d0b9de-1b11-4fa1-bf64-77579d5534b6","kill_stage":"after_lease_acquisition","lease_expires_at":"2026-08-14 10:12:38.233994+00:00","lease_owner":"fault-worker-027","lease_token":"9a584152-9652-4457-9372-2d3e461f8718","pid":10388,"reached":true,"work_item_id":"ca47c16f-0018-4b16-bf09-589da6c75b39"},"replay_mismatches":[],"stderr":"","stdout":""}
+{"campaign_id":"bc56f20c-e654-46aa-9329-4c05c20a0258","fault_point":"during_object_upload","multipart_aborted":true,"ordinal":28,"partial_export_removed":false,"process_state":{"attempt_id":"800f3f14-3a5a-439d-b973-fd38291e7e8d","committed":false,"fencing_token":1,"job_id":"c39f8497-24b8-4113-9d16-5f1a19e96cb9","kill_stage":"during_object_upload","lease_expires_at":"2026-08-14 10:12:47.818987+00:00","lease_owner":"fault-worker-028","lease_token":"0f49f223-839d-4022-8a7d-34c747c29564","multipart_part_count":1,"multipart_upload_id":"Njg2NTZiOWUtYzNmOC00Nzk2LWFlMjMtZDgxZGU1MGViNTk4LmUxM2M4NGQxLTM4MGQtNDNmMi05NTEwLTcyZjA4NjEzYWJiM3gxNzg2NzAyMzY3MTAxMzIyNDYz","object_keys":["observations/bc56f20c-e654-46aa-9329-4c05c20a0258/a5e2da997bfdf576e90976ee6e41cf2857bf784047581585fe3a835eaf018af4"],"pid":7580,"reached":true,"work_item_id":"b00253b4-1315-473a-b2c0-9133c94ca1b3"},"replay_mismatches":[],"stderr":"","stdout":""}
+{"campaign_id":"4aa64844-d429-49b2-acab-ff3288a90bcc","fault_point":"after_lease_acquisition","multipart_aborted":false,"ordinal":29,"partial_export_removed":false,"process_state":{"attempt_id":null,"committed":false,"fencing_token":1,"job_id":"e3efc3dd-3ca4-4dd8-b2db-a5e2e6fd2c2e","kill_stage":"after_lease_acquisition","lease_expires_at":"2026-08-14 10:12:55.923317+00:00","lease_owner":"fault-worker-029","lease_token":"9d79e901-f44e-4c78-891d-8f49239478eb","pid":36632,"reached":true,"work_item_id":"e4f41138-5864-4917-bf84-182604f6c2a9"},"replay_mismatches":[],"stderr":"","stdout":""}
+{"campaign_id":"22a57b2d-ead3-47f0-832d-7a8300d12991","fault_point":"after_lease_acquisition","multipart_aborted":false,"ordinal":30,"partial_export_removed":false,"process_state":{"attempt_id":null,"committed":false,"fencing_token":1,"job_id":"1f952d7c-8f96-4351-9579-7db165d96275","kill_stage":"after_lease_acquisition","lease_expires_at":"2026-08-14 10:13:03.037140+00:00","lease_owner":"fault-worker-030","lease_token":"06e912b0-c7db-4769-8521-7276db107fe9","pid":18912,"reached":true,"work_item_id":"07dc9ed4-c0dd-4460-8f4e-f685d27f4a1a"},"replay_mismatches":[],"stderr":"","stdout":""}
+{"campaign_id":"974eecb8-5060-4d2c-880c-d046ebf5755f","fault_point":"during_evidence_export","multipart_aborted":false,"ordinal":31,"partial_export_removed":true,"process_state":{"complete_byte_size":12354,"kill_stage":"during_evidence_export","object_store_bucket":"labbridge-phase7-fault-release3","package_id":"experiment-package:372220c16d5da8bd3ab0f990a552124b","partial_byte_size":6177,"partial_path":"build\\phase7-fault-campaign\\working\\interrupted\\974eecb8-5060-4d2c-880c-d046ebf5755f.zip.partial","pid":22020,"reached":true},"replay_mismatches":[],"stderr":"","stdout":""}
+{"campaign_id":"c7d1b4b9-44df-4daf-bdff-fbccd0c12995","fault_point":"during_object_upload","multipart_aborted":true,"ordinal":32,"partial_export_removed":false,"process_state":{"attempt_id":"c8cbe966-cdb0-471f-a1b7-97042a25b933","committed":false,"fencing_token":1,"job_id":"9ec902dd-4840-49fc-b75b-8815207a0ef6","kill_stage":"during_object_upload","lease_expires_at":"2026-08-14 10:13:13.274774+00:00","lease_owner":"fault-worker-032","lease_token":"e458abcd-695a-4f8c-81ca-e792fade4bc7","multipart_part_count":1,"multipart_upload_id":"Njg2NTZiOWUtYzNmOC00Nzk2LWFlMjMtZDgxZGU1MGViNTk4LjRkYTZhMTQ3LTQ1ZDMtNDgzZi1iZjM4LTYxYzgwYzA0NDMyZHgxNzg2NzAyMzkyNDIwMTgwNDQ0","object_keys":["observations/c7d1b4b9-44df-4daf-bdff-fbccd0c12995/15b5f92914195b4689fb72a65379ddfe54be32309e713612ab9fd0ba8231232c"],"pid":18704,"reached":true,"work_item_id":"f1f91210-8589-49f5-bfe4-ed53ae3ef6bb"},"replay_mismatches":[],"stderr":"","stdout":""}
+{"campaign_id":"4c848945-5f9d-4ba2-9f42-a83d056553ed","fault_point":"after_commit_before_acknowledgement","multipart_aborted":false,"ordinal":33,"partial_export_removed":false,"process_state":{"attempt_id":"d250c7a4-b871-48dc-9134-e6e728c33410","byte_size":12588,"committed":true,"fencing_token":1,"job_id":"6db891e6-6589-493d-ac94-8daa4e3e1941","kill_stage":"after_commit_before_acknowledgement","lease_expires_at":null,"lease_owner":"fault-worker-033","lease_token":null,"object_keys":["observations/4c848945-5f9d-4ba2-9f42-a83d056553ed/d8935227d741c829368468f14ee66e8253bef83a8cb6fe49e3d363464bfe90ea"],"observation_id":"obs:4a4ceb152add486a6face6ca46f59b79","outcome_status":"succeeded","pid":35280,"reached":true,"sha256":"d8935227d741c829368468f14ee66e8253bef83a8cb6fe49e3d363464bfe90ea","work_item_id":"1c80eb80-b72d-4b8a-b009-d9e8912151e9"},"replay_mismatches":[],"stderr":"","stdout":""}
+{"campaign_id":"385b45ec-ef19-4cf5-b824-59dfcb89df1a","fault_point":"during_evidence_export","multipart_aborted":false,"ordinal":34,"partial_export_removed":true,"process_state":{"complete_byte_size":12358,"kill_stage":"during_evidence_export","object_store_bucket":"labbridge-phase7-fault-release3","package_id":"experiment-package:a63f2142d6ae06010051560c7049d892","partial_byte_size":6179,"partial_path":"build\\phase7-fault-campaign\\working\\interrupted\\385b45ec-ef19-4cf5-b824-59dfcb89df1a.zip.partial","pid":33712,"reached":true},"replay_mismatches":[],"stderr":"","stdout":""}
+{"campaign_id":"2ddfa503-e912-44ec-bc85-57cad2b1cbef","fault_point":"during_evidence_export","multipart_aborted":false,"ordinal":35,"partial_export_removed":true,"process_state":{"complete_byte_size":12368,"kill_stage":"during_evidence_export","object_store_bucket":"labbridge-phase7-fault-release3","package_id":"experiment-package:f8681971b2463129a6a9a628eccd6a84","partial_byte_size":6184,"partial_path":"build\\phase7-fault-campaign\\working\\interrupted\\2ddfa503-e912-44ec-bc85-57cad2b1cbef.zip.partial","pid":36252,"reached":true},"replay_mismatches":[],"stderr":"","stdout":""}
+{"campaign_id":"44cbfa21-1aec-4c40-a2b2-ee7e885463a3","fault_point":"after_lease_acquisition","multipart_aborted":false,"ordinal":36,"partial_export_removed":false,"process_state":{"attempt_id":null,"committed":false,"fencing_token":1,"job_id":"dfcc17b2-d06e-421f-a55a-5d466cfb145f","kill_stage":"after_lease_acquisition","lease_expires_at":"2026-08-14 10:13:36.979097+00:00","lease_owner":"fault-worker-036","lease_token":"22750097-c67b-44f2-a547-5d2601871c3d","pid":31164,"reached":true,"work_item_id":"9fc4bf02-cc85-4bb5-a36b-ffc6f07eeebd"},"replay_mismatches":[],"stderr":"","stdout":""}
+{"campaign_id":"159041f3-1d8e-434f-865e-5a0e66f96591","fault_point":"after_commit_before_acknowledgement","multipart_aborted":false,"ordinal":37,"partial_export_removed":false,"process_state":{"attempt_id":"8dcae77a-47cc-4251-9f04-976ce2f73d0b","byte_size":12528,"committed":true,"fencing_token":1,"job_id":"58c08158-a4ad-415c-96ac-f3c85adefd73","kill_stage":"after_commit_before_acknowledgement","lease_expires_at":null,"lease_owner":"fault-worker-037","lease_token":null,"object_keys":["observations/159041f3-1d8e-434f-865e-5a0e66f96591/d8cd5745de60b80ddbcc49714fe19fe4cb42fa70b27ed60a64af1eb85def8b0f"],"observation_id":"obs:b84eb9616f3723fa4749e020b2922217","outcome_status":"succeeded","pid":33508,"reached":true,"sha256":"d8cd5745de60b80ddbcc49714fe19fe4cb42fa70b27ed60a64af1eb85def8b0f","work_item_id":"5efce3c4-d0f3-45a9-ace4-753212d3e689"},"replay_mismatches":[],"stderr":"","stdout":""}
+{"campaign_id":"e873a878-dd73-43e8-a90a-d96ca6d3f952","fault_point":"after_lease_acquisition","multipart_aborted":false,"ordinal":38,"partial_export_removed":false,"process_state":{"attempt_id":null,"committed":false,"fencing_token":1,"job_id":"c6a9ecd6-c729-458c-ac71-ba289e798bad","kill_stage":"after_lease_acquisition","lease_expires_at":"2026-08-14 10:13:50.346260+00:00","lease_owner":"fault-worker-038","lease_token":"c7c16f8c-a6ed-4e33-97d6-68cacd77dd84","pid":13328,"reached":true,"work_item_id":"dd558d75-de37-43da-8944-af1598195371"},"replay_mismatches":[],"stderr":"","stdout":""}
+{"campaign_id":"8794d3a7-3103-4f50-a299-daf90d776b17","fault_point":"during_object_upload","multipart_aborted":true,"ordinal":39,"partial_export_removed":false,"process_state":{"attempt_id":"bd1f94d1-710d-4d0e-9fd3-5eaae22293ab","committed":false,"fencing_token":1,"job_id":"c0c6e2a5-e7cb-4d81-98de-c6f19017d9bc","kill_stage":"during_object_upload","lease_expires_at":"2026-08-14 10:13:59.578447+00:00","lease_owner":"fault-worker-039","lease_token":"65087114-c42a-4dc1-b6b4-05f4860e9dbd","multipart_part_count":1,"multipart_upload_id":"Njg2NTZiOWUtYzNmOC00Nzk2LWFlMjMtZDgxZGU1MGViNTk4LmI4ZjBhNmJmLTU4MWYtNGRhMy05ZGUyLWFjNmY1NDhjNjM1MHgxNzg2NzAyNDM4ODcxNTg5MDk1","object_keys":["observations/8794d3a7-3103-4f50-a299-daf90d776b17/d8935227d741c829368468f14ee66e8253bef83a8cb6fe49e3d363464bfe90ea"],"pid":31284,"reached":true,"work_item_id":"8f52a616-3cf7-4004-bea2-3190749eff1f"},"replay_mismatches":[],"stderr":"","stdout":""}
+{"campaign_id":"b5273feb-6224-47f5-9efe-ca8f5f2c50c3","fault_point":"after_lease_acquisition","multipart_aborted":false,"ordinal":40,"partial_export_removed":false,"process_state":{"attempt_id":null,"committed":false,"fencing_token":1,"job_id":"33d28fca-9e15-4d2d-a848-5bdadb0fd331","kill_stage":"after_lease_acquisition","lease_expires_at":"2026-08-14 10:14:07.589968+00:00","lease_owner":"fault-worker-040","lease_token":"28400819-2ee3-486c-abc7-b93a5527cee7","pid":21920,"reached":true,"work_item_id":"52e036d1-7285-42df-b318-04ace4f946df"},"replay_mismatches":[],"stderr":"","stdout":""}
+{"campaign_id":"f93cb898-46ff-4b94-a210-5daa4267fedf","fault_point":"during_evidence_export","multipart_aborted":false,"ordinal":41,"partial_export_removed":true,"process_state":{"complete_byte_size":12376,"kill_stage":"during_evidence_export","object_store_bucket":"labbridge-phase7-fault-release3","package_id":"experiment-package:f8a98a4d306375b391873d06bca4e7a6","partial_byte_size":6188,"partial_path":"build\\phase7-fault-campaign\\working\\interrupted\\f93cb898-46ff-4b94-a210-5daa4267fedf.zip.partial","pid":34056,"reached":true},"replay_mismatches":[],"stderr":"","stdout":""}
+{"campaign_id":"1a161d49-a854-4da0-b7a4-de86aa4b9eef","fault_point":"during_object_upload","multipart_aborted":true,"ordinal":42,"partial_export_removed":false,"process_state":{"attempt_id":"9b708b34-20cb-43c8-a047-1433882d6bfc","committed":false,"fencing_token":1,"job_id":"3d6dcd81-00c2-4f81-b22a-fb49b62d6979","kill_stage":"during_object_upload","lease_expires_at":"2026-08-14 10:14:22.677956+00:00","lease_owner":"fault-worker-042","lease_token":"2bdd2433-6f4f-4493-9300-ec71197c4099","multipart_part_count":1,"multipart_upload_id":"Njg2NTZiOWUtYzNmOC00Nzk2LWFlMjMtZDgxZGU1MGViNTk4LjM1Yjc3NDY1LTQ0MGMtNDRkZi04MWU1LTJjZWI4NTIxMWI4NngxNzg2NzAyNDYxOTEyOTEzODc4","object_keys":["observations/1a161d49-a854-4da0-b7a4-de86aa4b9eef/aad36cf1091ec61b8a9c0fd9a87bd6804cd05449a99877dc799f13d96726f4aa"],"pid":5832,"reached":true,"work_item_id":"6d040167-db1e-4992-99af-cf43c0ce812a"},"replay_mismatches":[],"stderr":"","stdout":""}
+{"campaign_id":"31ab9938-a72a-4770-9d33-e9d2e85bc8ad","fault_point":"after_adapter_return_before_upload","multipart_aborted":false,"ordinal":43,"partial_export_removed":false,"process_state":{"attempt_id":"27dd03ef-7a61-4fe0-9989-0833755c4136","committed":false,"fencing_token":1,"job_id":"fcabf355-0057-4116-8885-976ef6200921","kill_stage":"after_adapter_return_before_upload","lease_expires_at":"2026-08-14 10:14:31.514720+00:00","lease_owner":"fault-worker-043","lease_token":"2bcf27e7-82c0-47f0-831c-6623fe784791","pid":26672,"reached":true,"work_item_id":"014ead52-64d4-4624-bed2-97c5105736e8"},"replay_mismatches":[],"stderr":"","stdout":""}
+{"campaign_id":"fa233469-95d6-4b96-a632-26b1e4e1930e","fault_point":"after_adapter_return_before_upload","multipart_aborted":false,"ordinal":44,"partial_export_removed":false,"process_state":{"attempt_id":"6b96df21-ba9e-4756-8e65-8751c83eebc7","committed":false,"fencing_token":1,"job_id":"d94c656f-187f-408f-a089-7f455d40ec68","kill_stage":"after_adapter_return_before_upload","lease_expires_at":"2026-08-14 10:14:39.118564+00:00","lease_owner":"fault-worker-044","lease_token":"439bb08c-287a-4db1-9e0a-25a37c7f1af9","pid":9840,"reached":true,"work_item_id":"45dbbc6e-8aad-4944-98f8-4e839edf4c99"},"replay_mismatches":[],"stderr":"","stdout":""}
+{"campaign_id":"a9dbfd65-eaba-4d48-9d16-f06fd3ac7a5c","fault_point":"after_commit_before_acknowledgement","multipart_aborted":false,"ordinal":45,"partial_export_removed":false,"process_state":{"attempt_id":"2e4fff40-af2e-482b-a369-977964e0d6d8","byte_size":12588,"committed":true,"fencing_token":1,"job_id":"37ea5f11-6b2d-4ec1-827c-6da5c6572096","kill_stage":"after_commit_before_acknowledgement","lease_expires_at":null,"lease_owner":"fault-worker-045","lease_token":null,"object_keys":["observations/a9dbfd65-eaba-4d48-9d16-f06fd3ac7a5c/d8935227d741c829368468f14ee66e8253bef83a8cb6fe49e3d363464bfe90ea"],"observation_id":"obs:4a4ceb152add486a6face6ca46f59b79","outcome_status":"succeeded","pid":8904,"reached":true,"sha256":"d8935227d741c829368468f14ee66e8253bef83a8cb6fe49e3d363464bfe90ea","work_item_id":"86538b83-11ec-4f61-b5c4-ce2d03cea71f"},"replay_mismatches":[],"stderr":"","stdout":""}
+{"campaign_id":"9540a137-fb43-4c8c-b855-e85e4a1b0251","fault_point":"after_commit_before_acknowledgement","multipart_aborted":false,"ordinal":46,"partial_export_removed":false,"process_state":{"attempt_id":"f3271bad-eab9-4f7b-9afb-d8a81a5b60bb","byte_size":12612,"committed":true,"fencing_token":1,"job_id":"6bff2ba7-4631-4c7e-95e5-b4eac4337c5e","kill_stage":"after_commit_before_acknowledgement","lease_expires_at":null,"lease_owner":"fault-worker-046","lease_token":null,"object_keys":["observations/9540a137-fb43-4c8c-b855-e85e4a1b0251/a5e2da997bfdf576e90976ee6e41cf2857bf784047581585fe3a835eaf018af4"],"observation_id":"obs:88adb71861dfb514c417fb6da350e784","outcome_status":"succeeded","pid":33436,"reached":true,"sha256":"a5e2da997bfdf576e90976ee6e41cf2857bf784047581585fe3a835eaf018af4","work_item_id":"1295a13c-6356-4236-b2ee-a9da6f190b7e"},"replay_mismatches":[],"stderr":"","stdout":""}
+{"campaign_id":"eaa90654-d76d-4f1a-8518-7beae7bb8aa5","fault_point":"after_commit_before_acknowledgement","multipart_aborted":false,"ordinal":47,"partial_export_removed":false,"process_state":{"attempt_id":"479c1a68-a60b-44bc-b056-c8c51f303e73","byte_size":12588,"committed":true,"fencing_token":1,"job_id":"fb812f39-2454-4695-a684-8348a2cb06d2","kill_stage":"after_commit_before_acknowledgement","lease_expires_at":null,"lease_owner":"fault-worker-047","lease_token":null,"object_keys":["observations/eaa90654-d76d-4f1a-8518-7beae7bb8aa5/a51d521be9793013395aac33cad16a4953a973d5ff0b38ad3c40a996a12e59ac"],"observation_id":"obs:c945679c1ffbe026119d65dbeae68109","outcome_status":"succeeded","pid":36720,"reached":true,"sha256":"a51d521be9793013395aac33cad16a4953a973d5ff0b38ad3c40a996a12e59ac","work_item_id":"6619905f-03c0-4bcc-9a8a-52b725271073"},"replay_mismatches":[],"stderr":"","stdout":""}
+{"campaign_id":"242b4137-17f0-4fa0-95d3-15fa3479517b","fault_point":"after_commit_before_acknowledgement","multipart_aborted":false,"ordinal":48,"partial_export_removed":false,"process_state":{"attempt_id":"a9e11675-f646-4027-a6e9-4f28304ecaea","byte_size":12612,"committed":true,"fencing_token":1,"job_id":"3396b39b-2315-4a17-ad10-133a6f2eead4","kill_stage":"after_commit_before_acknowledgement","lease_expires_at":null,"lease_owner":"fault-worker-048","lease_token":null,"object_keys":["observations/242b4137-17f0-4fa0-95d3-15fa3479517b/aad36cf1091ec61b8a9c0fd9a87bd6804cd05449a99877dc799f13d96726f4aa"],"observation_id":"obs:c2adaedb0ac11f4fdb041873e5366ca7","outcome_status":"succeeded","pid":31828,"reached":true,"sha256":"aad36cf1091ec61b8a9c0fd9a87bd6804cd05449a99877dc799f13d96726f4aa","work_item_id":"9987dd60-acde-4a0d-96ab-4e85c8e9f7eb"},"replay_mismatches":[],"stderr":"","stdout":""}
+{"campaign_id":"bfca9dea-5602-4bf5-afe2-c1a31ca3b1c9","fault_point":"during_object_upload","multipart_aborted":true,"ordinal":49,"partial_export_removed":false,"process_state":{"attempt_id":"dceea50c-a01d-46b6-8fcf-06f1bbef5354","committed":false,"fencing_token":1,"job_id":"cf231e49-a9f6-4e55-9ca5-1059f37d214f","kill_stage":"during_object_upload","lease_expires_at":"2026-08-14 10:15:24.889835+00:00","lease_owner":"fault-worker-049","lease_token":"ab639e6a-d5bd-4372-bcd4-d3be0abb6744","multipart_part_count":1,"multipart_upload_id":"Njg2NTZiOWUtYzNmOC00Nzk2LWFlMjMtZDgxZGU1MGViNTk4Ljk3MTE0MzZjLWY4NDUtNGI1OC05YThjLTk5YmQzOTU5ZjA0ZngxNzg2NzAyNTI0MDYwNDg2OTg5","object_keys":["observations/bfca9dea-5602-4bf5-afe2-c1a31ca3b1c9/d8cd5745de60b80ddbcc49714fe19fe4cb42fa70b27ed60a64af1eb85def8b0f"],"pid":33912,"reached":true,"work_item_id":"967cb435-be35-4b78-9bac-b231cc94b928"},"replay_mismatches":[],"stderr":"","stdout":""}
+{"campaign_id":"bd6c1f73-1291-4703-92c2-9c793ffd41d2","fault_point":"after_commit_before_acknowledgement","multipart_aborted":false,"ordinal":50,"partial_export_removed":false,"process_state":{"attempt_id":"36230aed-3391-4bd4-be8f-b7d5c164969c","byte_size":12552,"committed":true,"fencing_token":1,"job_id":"be061a07-9c0d-4f2f-af93-42630c0c9715","kill_stage":"after_commit_before_acknowledgement","lease_expires_at":null,"lease_owner":"fault-worker-050","lease_token":null,"object_keys":["observations/bd6c1f73-1291-4703-92c2-9c793ffd41d2/15b5f92914195b4689fb72a65379ddfe54be32309e713612ab9fd0ba8231232c"],"observation_id":"obs:ec33918fdd0d2872e583371f88a7fdcb","outcome_status":"succeeded","pid":29260,"reached":true,"sha256":"15b5f92914195b4689fb72a65379ddfe54be32309e713612ab9fd0ba8231232c","work_item_id":"5891850c-e53f-420d-86fa-5738d167a06b"},"replay_mismatches":[],"stderr":"","stdout":""}
+{"campaign_id":"7fb3eeee-7c16-4260-99c6-7663db4a0686","fault_point":"after_adapter_return_before_upload","multipart_aborted":false,"ordinal":51,"partial_export_removed":false,"process_state":{"attempt_id":"7d563820-0dd8-45b9-8475-371d04735ba7","committed":false,"fencing_token":1,"job_id":"f4df7ed0-b1f5-4389-968c-f06fa071b68a","kill_stage":"after_adapter_return_before_upload","lease_expires_at":"2026-08-14 10:15:42.893550+00:00","lease_owner":"fault-worker-051","lease_token":"e511b960-0ac5-4310-ae2e-10fab314fb16","pid":32416,"reached":true,"work_item_id":"953c5226-3256-45bf-8951-4e8b58558d94"},"replay_mismatches":[],"stderr":"","stdout":""}
+{"campaign_id":"dd7df504-61ec-4fc1-bf35-643f8893eea6","fault_point":"after_upload_before_outcome_transaction","multipart_aborted":false,"ordinal":52,"partial_export_removed":false,"process_state":{"attempt_id":"cec59c60-737e-4bc3-bdc7-2879bc42b1b8","byte_size":12612,"committed":false,"fencing_token":1,"job_id":"f5805aa3-1b7a-4dee-ab1d-e8408e16d1a0","kill_stage":"after_upload_before_outcome_transaction","lease_expires_at":"2026-08-14 10:15:52.599753+00:00","lease_owner":"fault-worker-052","lease_token":"5a6a5d82-f91a-446f-b0e2-f9c1a173bc4b","object_keys":["observations/dd7df504-61ec-4fc1-bf35-643f8893eea6/a5e2da997bfdf576e90976ee6e41cf2857bf784047581585fe3a835eaf018af4"],"pid":35568,"reached":true,"sha256":"a5e2da997bfdf576e90976ee6e41cf2857bf784047581585fe3a835eaf018af4","work_item_id":"06c9491d-19ab-48ab-ad75-a07ee6a8f013"},"replay_mismatches":[],"stderr":"","stdout":""}
+{"campaign_id":"367618ea-4656-4a19-b3d0-a2d785dc051d","fault_point":"during_object_upload","multipart_aborted":true,"ordinal":53,"partial_export_removed":false,"process_state":{"attempt_id":"bf4f266e-63db-4de4-ad49-0d32dddda725","committed":false,"fencing_token":1,"job_id":"f4c8b3e7-b28e-45ee-8313-a815a3680e73","kill_stage":"during_object_upload","lease_expires_at":"2026-08-14 10:16:02.866155+00:00","lease_owner":"fault-worker-053","lease_token":"898cd747-ba31-4a89-8bee-c23a7a00861a","multipart_part_count":1,"multipart_upload_id":"Njg2NTZiOWUtYzNmOC00Nzk2LWFlMjMtZDgxZGU1MGViNTk4LmE1MmNkNGZhLWUyYTItNDIyYy1hMzdjLTQ2YmFjMjkxN2Q4MXgxNzg2NzAyNTYyMTYxMTI3MTE3","object_keys":["observations/367618ea-4656-4a19-b3d0-a2d785dc051d/a51d521be9793013395aac33cad16a4953a973d5ff0b38ad3c40a996a12e59ac"],"pid":25368,"reached":true,"work_item_id":"f36045b6-faef-4825-aa1f-5bf0b8e8d8b5"},"replay_mismatches":[],"stderr":"","stdout":""}
+{"campaign_id":"4fe0557a-28e9-445f-8e86-7405dd47b5e3","fault_point":"after_adapter_return_before_upload","multipart_aborted":false,"ordinal":54,"partial_export_removed":false,"process_state":{"attempt_id":"55021d49-379a-444c-bd2b-61feed4b7b38","committed":false,"fencing_token":1,"job_id":"ab076156-541d-4f8f-9041-d04772f8d6d5","kill_stage":"after_adapter_return_before_upload","lease_expires_at":"2026-08-14 10:16:23.389267+00:00","lease_owner":"fault-worker-054","lease_token":"55f4a43e-1534-4341-8a76-84e7ddb51c82","pid":14484,"reached":true,"work_item_id":"f49e0f57-f663-4f05-9fce-baa2b2615b27"},"replay_mismatches":[],"stderr":"","stdout":""}
+{"campaign_id":"0b34aa01-19c5-483a-b6b1-7010a99c01ef","fault_point":"during_evidence_export","multipart_aborted":false,"ordinal":55,"partial_export_removed":true,"process_state":{"complete_byte_size":12369,"kill_stage":"during_evidence_export","object_store_bucket":"labbridge-phase7-fault-release3","package_id":"experiment-package:1d9060cebacc02fe41b2fd9d1166911d","partial_byte_size":6184,"partial_path":"build\\phase7-fault-campaign\\working\\interrupted\\0b34aa01-19c5-483a-b6b1-7010a99c01ef.zip.partial","pid":36752,"reached":true},"replay_mismatches":[],"stderr":"","stdout":""}
+{"campaign_id":"5ba71a70-ce26-45d8-97a8-ac397b5c2ae1","fault_point":"after_upload_before_outcome_transaction","multipart_aborted":false,"ordinal":56,"partial_export_removed":false,"process_state":{"attempt_id":"757e03f6-3a94-4e4b-8263-0ed61a0be768","byte_size":12552,"committed":false,"fencing_token":1,"job_id":"47a309e7-6b66-46f8-a7f7-66fab0737605","kill_stage":"after_upload_before_outcome_transaction","lease_expires_at":"2026-08-14 10:16:43.718593+00:00","lease_owner":"fault-worker-056","lease_token":"757b2c75-4155-4865-95fb-f692365268f4","object_keys":["observations/5ba71a70-ce26-45d8-97a8-ac397b5c2ae1/15b5f92914195b4689fb72a65379ddfe54be32309e713612ab9fd0ba8231232c"],"pid":10464,"reached":true,"sha256":"15b5f92914195b4689fb72a65379ddfe54be32309e713612ab9fd0ba8231232c","work_item_id":"75b41f6d-2245-4461-8451-cea6ee6d4d73"},"replay_mismatches":[],"stderr":"","stdout":""}
+{"campaign_id":"98a1c7df-781a-41e3-8591-c7fbffb05b20","fault_point":"after_lease_acquisition","multipart_aborted":false,"ordinal":57,"partial_export_removed":false,"process_state":{"attempt_id":null,"committed":false,"fencing_token":1,"job_id":"0522befa-57ab-4431-9563-713b6a524f23","kill_stage":"after_lease_acquisition","lease_expires_at":"2026-08-14 10:16:53.667798+00:00","lease_owner":"fault-worker-057","lease_token":"c4b51f22-fd97-4f18-ae42-0682ce96b703","pid":24008,"reached":true,"work_item_id":"57db7011-f5f4-4a22-93c6-e0547b1ed747"},"replay_mismatches":[],"stderr":"","stdout":""}
+{"campaign_id":"847de2e8-745b-4ac9-8ab1-88ae19e70052","fault_point":"after_commit_before_acknowledgement","multipart_aborted":false,"ordinal":58,"partial_export_removed":false,"process_state":{"attempt_id":"52784110-4626-4987-8a6d-074a804cecc3","byte_size":12612,"committed":true,"fencing_token":1,"job_id":"b92235a8-0904-4b5d-81cb-e3b9be746eec","kill_stage":"after_commit_before_acknowledgement","lease_expires_at":null,"lease_owner":"fault-worker-058","lease_token":null,"object_keys":["observations/847de2e8-745b-4ac9-8ab1-88ae19e70052/a5e2da997bfdf576e90976ee6e41cf2857bf784047581585fe3a835eaf018af4"],"observation_id":"obs:88adb71861dfb514c417fb6da350e784","outcome_status":"succeeded","pid":24896,"reached":true,"sha256":"a5e2da997bfdf576e90976ee6e41cf2857bf784047581585fe3a835eaf018af4","work_item_id":"d05e5b22-13e5-49d3-b124-0b1baa8f2ef1"},"replay_mismatches":[],"stderr":"","stdout":""}
+{"campaign_id":"b095a683-b126-4274-9777-6050a6ea4b50","fault_point":"after_upload_before_outcome_transaction","multipart_aborted":false,"ordinal":59,"partial_export_removed":false,"process_state":{"attempt_id":"57d2d618-1134-4419-ae9a-2761a0b4fd53","byte_size":12588,"committed":false,"fencing_token":1,"job_id":"bbc0d68e-38ec-4dd2-8f80-6186131df596","kill_stage":"after_upload_before_outcome_transaction","lease_expires_at":"2026-08-14 10:17:15.264118+00:00","lease_owner":"fault-worker-059","lease_token":"a1fd2a49-efb7-4565-a53b-ac1bbec3ce06","object_keys":["observations/b095a683-b126-4274-9777-6050a6ea4b50/a51d521be9793013395aac33cad16a4953a973d5ff0b38ad3c40a996a12e59ac"],"pid":29376,"reached":true,"sha256":"a51d521be9793013395aac33cad16a4953a973d5ff0b38ad3c40a996a12e59ac","work_item_id":"0857cd5c-2124-497a-a38c-e48a27b8f64a"},"replay_mismatches":[],"stderr":"","stdout":""}
+{"campaign_id":"a53bebf9-6f36-4c6f-bc9d-fc971585fd0f","fault_point":"after_upload_before_outcome_transaction","multipart_aborted":false,"ordinal":60,"partial_export_removed":false,"process_state":{"attempt_id":"a8863749-4da2-4ada-8ef2-826275a9a8b2","byte_size":12612,"committed":false,"fencing_token":1,"job_id":"9311be0e-d053-4d86-9463-f9a50f03a823","kill_stage":"after_upload_before_outcome_transaction","lease_expires_at":"2026-08-14 10:17:25.962533+00:00","lease_owner":"fault-worker-060","lease_token":"39665ab3-f8aa-4f96-8d33-5e1e431a4b5a","object_keys":["observations/a53bebf9-6f36-4c6f-bc9d-fc971585fd0f/aad36cf1091ec61b8a9c0fd9a87bd6804cd05449a99877dc799f13d96726f4aa"],"pid":36312,"reached":true,"sha256":"aad36cf1091ec61b8a9c0fd9a87bd6804cd05449a99877dc799f13d96726f4aa","work_item_id":"0b73c298-9703-4709-bf11-617d40d51173"},"replay_mismatches":[],"stderr":"","stdout":""}
+{"campaign_id":"bdb5b719-89cc-472d-a336-428c7e07624e","fault_point":"after_lease_acquisition","multipart_aborted":false,"ordinal":61,"partial_export_removed":false,"process_state":{"attempt_id":null,"committed":false,"fencing_token":1,"job_id":"e42a6fd5-7d2d-4bab-98c1-148af07bda52","kill_stage":"after_lease_acquisition","lease_expires_at":"2026-08-14 10:17:36.468555+00:00","lease_owner":"fault-worker-061","lease_token":"1ea16ad5-2401-45e0-83f0-00edb9f45cd8","pid":31680,"reached":true,"work_item_id":"33d0908d-aadf-43a6-b897-a4629796862b"},"replay_mismatches":[],"stderr":"","stdout":""}
+{"campaign_id":"00e64846-7d5b-4642-b639-0cdcfb0aaa6b","fault_point":"during_evidence_export","multipart_aborted":false,"ordinal":62,"partial_export_removed":true,"process_state":{"complete_byte_size":12399,"kill_stage":"during_evidence_export","object_store_bucket":"labbridge-phase7-fault-release3","package_id":"experiment-package:a19f457e5cd6f1d91d103ee569085cc5","partial_byte_size":6199,"partial_path":"build\\phase7-fault-campaign\\working\\interrupted\\00e64846-7d5b-4642-b639-0cdcfb0aaa6b.zip.partial","pid":35108,"reached":true},"replay_mismatches":[],"stderr":"","stdout":""}
+{"campaign_id":"7c83619d-4a96-4f3c-8b30-0e94f9d8c7e7","fault_point":"after_commit_before_acknowledgement","multipart_aborted":false,"ordinal":63,"partial_export_removed":false,"process_state":{"attempt_id":"c481edb5-bd29-48e6-9e2e-dfc24863f9c1","byte_size":12588,"committed":true,"fencing_token":1,"job_id":"3c54f60a-f800-4b64-80a3-37112dcd8642","kill_stage":"after_commit_before_acknowledgement","lease_expires_at":null,"lease_owner":"fault-worker-063","lease_token":null,"object_keys":["observations/7c83619d-4a96-4f3c-8b30-0e94f9d8c7e7/d8935227d741c829368468f14ee66e8253bef83a8cb6fe49e3d363464bfe90ea"],"observation_id":"obs:4a4ceb152add486a6face6ca46f59b79","outcome_status":"succeeded","pid":32588,"reached":true,"sha256":"d8935227d741c829368468f14ee66e8253bef83a8cb6fe49e3d363464bfe90ea","work_item_id":"9334503a-187f-41b6-af61-05a42e72eaa7"},"replay_mismatches":[],"stderr":"","stdout":""}
+{"campaign_id":"2c11298c-7cc8-4b64-b633-2dcdbffa24f1","fault_point":"after_lease_acquisition","multipart_aborted":false,"ordinal":64,"partial_export_removed":false,"process_state":{"attempt_id":null,"committed":false,"fencing_token":1,"job_id":"856d3a37-ba74-48a0-88e2-63019d0356a3","kill_stage":"after_lease_acquisition","lease_expires_at":"2026-08-14 10:18:05.894435+00:00","lease_owner":"fault-worker-064","lease_token":"6f6bcacd-40de-4f9f-b008-41382c795655","pid":34956,"reached":true,"work_item_id":"ef87ed30-c9d7-4bac-b0d8-117693f821ad"},"replay_mismatches":[],"stderr":"","stdout":""}
+{"campaign_id":"cb90286b-ca59-4dc4-8dce-cc7330a07373","fault_point":"after_upload_before_outcome_transaction","multipart_aborted":false,"ordinal":65,"partial_export_removed":false,"process_state":{"attempt_id":"2736d3c4-465b-48d8-be60-60d1dec8f721","byte_size":12588,"committed":false,"fencing_token":1,"job_id":"ee263816-7df2-4d6e-b06d-f4cb3ffda940","kill_stage":"after_upload_before_outcome_transaction","lease_expires_at":"2026-08-14 10:18:16.406811+00:00","lease_owner":"fault-worker-065","lease_token":"101b9f3a-4b50-4a21-a98a-ef1afc037631","object_keys":["observations/cb90286b-ca59-4dc4-8dce-cc7330a07373/a51d521be9793013395aac33cad16a4953a973d5ff0b38ad3c40a996a12e59ac"],"pid":31224,"reached":true,"sha256":"a51d521be9793013395aac33cad16a4953a973d5ff0b38ad3c40a996a12e59ac","work_item_id":"dda5ee2b-edd1-4d18-8cd3-c048dabcdd6c"},"replay_mismatches":[],"stderr":"","stdout":""}
+{"campaign_id":"34e1517f-006f-4a20-83e2-c9cb8bf76013","fault_point":"after_lease_acquisition","multipart_aborted":false,"ordinal":66,"partial_export_removed":false,"process_state":{"attempt_id":null,"committed":false,"fencing_token":1,"job_id":"49685ca2-f3be-4e0e-97aa-756da6e5ea10","kill_stage":"after_lease_acquisition","lease_expires_at":"2026-08-14 10:18:27.625617+00:00","lease_owner":"fault-worker-066","lease_token":"4592e173-37c0-41da-a850-1c926c90bcd4","pid":20448,"reached":true,"work_item_id":"b9f5076c-e2d9-47e7-8467-2d49096afe08"},"replay_mismatches":[],"stderr":"","stdout":""}
+{"campaign_id":"9593d9a2-c5d6-4967-9e3b-666a98adf108","fault_point":"after_upload_before_outcome_transaction","multipart_aborted":false,"ordinal":67,"partial_export_removed":false,"process_state":{"attempt_id":"87bf754b-9ef6-4e1c-b401-61561b266d3b","byte_size":12528,"committed":false,"fencing_token":1,"job_id":"bd70e6b0-0106-4cf8-9785-0a2098e269ca","kill_stage":"after_upload_before_outcome_transaction","lease_expires_at":"2026-08-14 10:18:38.788021+00:00","lease_owner":"fault-worker-067","lease_token":"fb63555c-35ab-4d5e-b4dc-598b4cebc2d0","object_keys":["observations/9593d9a2-c5d6-4967-9e3b-666a98adf108/d8cd5745de60b80ddbcc49714fe19fe4cb42fa70b27ed60a64af1eb85def8b0f"],"pid":35504,"reached":true,"sha256":"d8cd5745de60b80ddbcc49714fe19fe4cb42fa70b27ed60a64af1eb85def8b0f","work_item_id":"00b5099d-1b6d-42bb-93ad-aad25e5f499f"},"replay_mismatches":[],"stderr":"","stdout":""}
+{"campaign_id":"dfa14842-a1ea-428c-a28a-5e5acfa69a27","fault_point":"during_evidence_export","multipart_aborted":false,"ordinal":68,"partial_export_removed":true,"process_state":{"complete_byte_size":12403,"kill_stage":"during_evidence_export","object_store_bucket":"labbridge-phase7-fault-release3","package_id":"experiment-package:7592e7045c7f378e2c064319e04df169","partial_byte_size":6201,"partial_path":"build\\phase7-fault-campaign\\working\\interrupted\\dfa14842-a1ea-428c-a28a-5e5acfa69a27.zip.partial","pid":33308,"reached":true},"replay_mismatches":[],"stderr":"","stdout":""}
+{"campaign_id":"55ba9687-2da4-471a-976d-862126577ad3","fault_point":"after_adapter_return_before_upload","multipart_aborted":false,"ordinal":69,"partial_export_removed":false,"process_state":{"attempt_id":"1b3f9fd1-5332-4a95-831a-8a729586fd86","committed":false,"fencing_token":1,"job_id":"891287ca-0dba-4055-a4d6-6176c1178f48","kill_stage":"after_adapter_return_before_upload","lease_expires_at":"2026-08-14 10:18:56.011847+00:00","lease_owner":"fault-worker-069","lease_token":"8ff53e3b-6fbd-41fe-8945-c51398217097","pid":33048,"reached":true,"work_item_id":"11b582d3-c936-4a50-aa20-9d00901c68db"},"replay_mismatches":[],"stderr":"","stdout":""}
+{"campaign_id":"2fbddd90-0de9-4020-9a2a-601216479075","fault_point":"during_evidence_export","multipart_aborted":false,"ordinal":70,"partial_export_removed":true,"process_state":{"complete_byte_size":12396,"kill_stage":"during_evidence_export","object_store_bucket":"labbridge-phase7-fault-release3","package_id":"experiment-package:c89206ab40f44e85721efe1b79da3b39","partial_byte_size":6198,"partial_path":"build\\phase7-fault-campaign\\working\\interrupted\\2fbddd90-0de9-4020-9a2a-601216479075.zip.partial","pid":30880,"reached":true},"replay_mismatches":[],"stderr":"","stdout":""}
+{"campaign_id":"9efd6265-dc3d-4fda-9984-e2b29681eda5","fault_point":"after_adapter_return_before_upload","multipart_aborted":false,"ordinal":71,"partial_export_removed":false,"process_state":{"attempt_id":"c0a352d0-e997-40aa-bbac-00607642f962","committed":false,"fencing_token":1,"job_id":"179f1898-9134-45ee-bbb6-cb59c5b84a5e","kill_stage":"after_adapter_return_before_upload","lease_expires_at":"2026-08-14 10:19:16.237302+00:00","lease_owner":"fault-worker-071","lease_token":"0d138026-b1df-46d4-b1a3-2b72d512e255","pid":23888,"reached":true,"work_item_id":"2cb45b19-fc6f-4171-98d9-19989f04f3b5"},"replay_mismatches":[],"stderr":"","stdout":""}
+{"campaign_id":"1fbf9d27-0eb2-44df-803d-9cb650cc32c7","fault_point":"during_object_upload","multipart_aborted":true,"ordinal":72,"partial_export_removed":false,"process_state":{"attempt_id":"d55dc0d7-7f68-4cca-a4e3-e86f21c72bdc","committed":false,"fencing_token":1,"job_id":"b9de285f-4ea0-4445-981a-2905dc713955","kill_stage":"during_object_upload","lease_expires_at":"2026-08-14 10:19:27.024622+00:00","lease_owner":"fault-worker-072","lease_token":"72faee33-eede-4018-97f9-26620161f7d7","multipart_part_count":1,"multipart_upload_id":"Njg2NTZiOWUtYzNmOC00Nzk2LWFlMjMtZDgxZGU1MGViNTk4LjcwODJkZGJlLTg5YjAtNGJmOS1hZTNmLTE5NDVkY2I4ZjI4MHgxNzg2NzAyNzY2MTk4NjMzMzU0","object_keys":["observations/1fbf9d27-0eb2-44df-803d-9cb650cc32c7/aad36cf1091ec61b8a9c0fd9a87bd6804cd05449a99877dc799f13d96726f4aa"],"pid":24748,"reached":true,"work_item_id":"827f09bb-da81-45fe-8c15-77fae6068b36"},"replay_mismatches":[],"stderr":"","stdout":""}
+{"campaign_id":"3b46d138-a70a-4494-8973-bfe2b3949bb3","fault_point":"during_evidence_export","multipart_aborted":false,"ordinal":73,"partial_export_removed":true,"process_state":{"complete_byte_size":12380,"kill_stage":"during_evidence_export","object_store_bucket":"labbridge-phase7-fault-release3","package_id":"experiment-package:5fcf4af9b58048085c7975b4a104f69f","partial_byte_size":6190,"partial_path":"build\\phase7-fault-campaign\\working\\interrupted\\3b46d138-a70a-4494-8973-bfe2b3949bb3.zip.partial","pid":36352,"reached":true},"replay_mismatches":[],"stderr":"","stdout":""}
+{"campaign_id":"b1aa75e3-6842-4408-acd8-826e35ee2508","fault_point":"after_lease_acquisition","multipart_aborted":false,"ordinal":74,"partial_export_removed":false,"process_state":{"attempt_id":null,"committed":false,"fencing_token":1,"job_id":"1748660d-3b4e-41d9-8762-7f3e295e3b67","kill_stage":"after_lease_acquisition","lease_expires_at":"2026-08-14 10:19:47.967666+00:00","lease_owner":"fault-worker-074","lease_token":"cadf4306-a9d5-4086-8079-23eae3ecb9be","pid":33268,"reached":true,"work_item_id":"1348edbb-ceed-4289-a77d-fb1844865245"},"replay_mismatches":[],"stderr":"","stdout":""}
+{"campaign_id":"c8cc2173-170c-49db-aba4-30a1c4dec9b4","fault_point":"during_evidence_export","multipart_aborted":false,"ordinal":75,"partial_export_removed":true,"process_state":{"complete_byte_size":12393,"kill_stage":"during_evidence_export","object_store_bucket":"labbridge-phase7-fault-release3","package_id":"experiment-package:eaf98fa08a5b1c71c5d0869cbdcd5d9d","partial_byte_size":6196,"partial_path":"build\\phase7-fault-campaign\\working\\interrupted\\c8cc2173-170c-49db-aba4-30a1c4dec9b4.zip.partial","pid":32232,"reached":true},"replay_mismatches":[],"stderr":"","stdout":""}
+{"campaign_id":"1883256d-5487-4a72-93c7-83c64118b1d6","fault_point":"after_commit_before_acknowledgement","multipart_aborted":false,"ordinal":76,"partial_export_removed":false,"process_state":{"attempt_id":"f4dc1099-bfe4-4ed6-954b-88fec33c4d8e","byte_size":12612,"committed":true,"fencing_token":1,"job_id":"fbbe47f9-6a72-4f9c-93b0-21f43c06517c","kill_stage":"after_commit_before_acknowledgement","lease_expires_at":null,"lease_owner":"fault-worker-076","lease_token":null,"object_keys":["observations/1883256d-5487-4a72-93c7-83c64118b1d6/a5e2da997bfdf576e90976ee6e41cf2857bf784047581585fe3a835eaf018af4"],"observation_id":"obs:88adb71861dfb514c417fb6da350e784","outcome_status":"succeeded","pid":19368,"reached":true,"sha256":"a5e2da997bfdf576e90976ee6e41cf2857bf784047581585fe3a835eaf018af4","work_item_id":"5383899b-d6ae-4741-ae3b-eb47981dadca"},"replay_mismatches":[],"stderr":"","stdout":""}
+{"campaign_id":"e783df27-3418-4f00-8261-cd85844dc6e5","fault_point":"after_adapter_return_before_upload","multipart_aborted":false,"ordinal":77,"partial_export_removed":false,"process_state":{"attempt_id":"b87da861-f1e9-4d93-b22a-0dad97e02160","committed":false,"fencing_token":1,"job_id":"feb33c92-29f2-4ed0-b5cd-2cd782c274ce","kill_stage":"after_adapter_return_before_upload","lease_expires_at":"2026-08-14 10:20:21.484187+00:00","lease_owner":"fault-worker-077","lease_token":"3dd18442-62e9-44d7-9307-6c7bd845d825","pid":31212,"reached":true,"work_item_id":"1185dbf1-fc12-4147-bf55-f44e21de2cc4"},"replay_mismatches":[],"stderr":"","stdout":""}
+{"campaign_id":"0f2b028a-591b-4b4c-a437-48daaa8f8556","fault_point":"after_upload_before_outcome_transaction","multipart_aborted":false,"ordinal":78,"partial_export_removed":false,"process_state":{"attempt_id":"e7da2587-ca49-4a67-902b-40e33e3f3aee","byte_size":12612,"committed":false,"fencing_token":1,"job_id":"c0fa45db-7cf2-4942-85e6-37ef7e06d3ad","kill_stage":"after_upload_before_outcome_transaction","lease_expires_at":"2026-08-14 10:20:31.900718+00:00","lease_owner":"fault-worker-078","lease_token":"ba88e87b-17a5-42ee-95d3-375d644b35dd","object_keys":["observations/0f2b028a-591b-4b4c-a437-48daaa8f8556/aad36cf1091ec61b8a9c0fd9a87bd6804cd05449a99877dc799f13d96726f4aa"],"pid":35020,"reached":true,"sha256":"aad36cf1091ec61b8a9c0fd9a87bd6804cd05449a99877dc799f13d96726f4aa","work_item_id":"fc2a1790-b2e0-4354-870c-000fe9e5ec63"},"replay_mismatches":[],"stderr":"","stdout":""}
+{"campaign_id":"e6c1a315-0053-44f1-ab79-0d798b52d8d9","fault_point":"during_evidence_export","multipart_aborted":false,"ordinal":79,"partial_export_removed":true,"process_state":{"complete_byte_size":12365,"kill_stage":"during_evidence_export","object_store_bucket":"labbridge-phase7-fault-release3","package_id":"experiment-package:6ab63870ecf535fb69b68cd9ac6c8090","partial_byte_size":6182,"partial_path":"build\\phase7-fault-campaign\\working\\interrupted\\e6c1a315-0053-44f1-ab79-0d798b52d8d9.zip.partial","pid":32416,"reached":true},"replay_mismatches":[],"stderr":"","stdout":""}
+{"campaign_id":"91047a2e-1a9a-4af0-94e6-fc220010407f","fault_point":"after_adapter_return_before_upload","multipart_aborted":false,"ordinal":80,"partial_export_removed":false,"process_state":{"attempt_id":"c2f27093-fb63-4a8a-ab3e-795cf0b702c0","committed":false,"fencing_token":1,"job_id":"a7f655e0-37fb-4926-ab3c-f92b320bede1","kill_stage":"after_adapter_return_before_upload","lease_expires_at":"2026-08-14 10:20:48.693999+00:00","lease_owner":"fault-worker-080","lease_token":"0b454448-9653-47f8-865c-4b6ab4b606b8","pid":35428,"reached":true,"work_item_id":"61285572-97e3-4b2d-892d-96c79ee6c40f"},"replay_mismatches":[],"stderr":"","stdout":""}
+{"campaign_id":"91ae41fa-7e87-483d-a5f6-8266748c5dc6","fault_point":"during_object_upload","multipart_aborted":true,"ordinal":81,"partial_export_removed":false,"process_state":{"attempt_id":"f12c763b-2088-4399-aa5c-271a7228a0e4","committed":false,"fencing_token":1,"job_id":"40516e64-52dc-455c-b6a8-6fc3cc536a4a","kill_stage":"during_object_upload","lease_expires_at":"2026-08-14 10:21:01.005067+00:00","lease_owner":"fault-worker-081","lease_token":"1a73ca35-de9d-476a-909c-042997425b8c","multipart_part_count":1,"multipart_upload_id":"Njg2NTZiOWUtYzNmOC00Nzk2LWFlMjMtZDgxZGU1MGViNTk4LmUwNTA2NDIwLTJhOGMtNDlmMi1iMTk0LWYyNWJlODU3OTlhOXgxNzg2NzAyODYwMTMxMDI5OTYz","object_keys":["observations/91ae41fa-7e87-483d-a5f6-8266748c5dc6/d8935227d741c829368468f14ee66e8253bef83a8cb6fe49e3d363464bfe90ea"],"pid":19848,"reached":true,"work_item_id":"ad86a84c-93ae-4d83-8391-01b20b336227"},"replay_mismatches":[],"stderr":"","stdout":""}
+{"campaign_id":"8d90f848-8386-4bf0-930d-497cde12520f","fault_point":"after_commit_before_acknowledgement","multipart_aborted":false,"ordinal":82,"partial_export_removed":false,"process_state":{"attempt_id":"5878600e-e3b1-4ba7-94cd-549c54307e5b","byte_size":12612,"committed":true,"fencing_token":1,"job_id":"c214f5f8-598b-4496-8dcc-df3edfc094da","kill_stage":"after_commit_before_acknowledgement","lease_expires_at":null,"lease_owner":"fault-worker-082","lease_token":null,"object_keys":["observations/8d90f848-8386-4bf0-930d-497cde12520f/a5e2da997bfdf576e90976ee6e41cf2857bf784047581585fe3a835eaf018af4"],"observation_id":"obs:88adb71861dfb514c417fb6da350e784","outcome_status":"succeeded","pid":28436,"reached":true,"sha256":"a5e2da997bfdf576e90976ee6e41cf2857bf784047581585fe3a835eaf018af4","work_item_id":"b7365dd7-a9c5-41f9-af52-f5624351e4ee"},"replay_mismatches":[],"stderr":"","stdout":""}
+{"campaign_id":"576e46db-760e-4304-936e-65a6a5027a05","fault_point":"after_upload_before_outcome_transaction","multipart_aborted":false,"ordinal":83,"partial_export_removed":false,"process_state":{"attempt_id":"bd37ba7e-79e3-4005-9e68-174c294cf698","byte_size":12588,"committed":false,"fencing_token":1,"job_id":"64e877df-d747-4267-8048-261e4f6388aa","kill_stage":"after_upload_before_outcome_transaction","lease_expires_at":"2026-08-14 10:21:24.587864+00:00","lease_owner":"fault-worker-083","lease_token":"ad28b3fe-5436-415f-ba15-2b9a6d66eb73","object_keys":["observations/576e46db-760e-4304-936e-65a6a5027a05/a51d521be9793013395aac33cad16a4953a973d5ff0b38ad3c40a996a12e59ac"],"pid":15772,"reached":true,"sha256":"a51d521be9793013395aac33cad16a4953a973d5ff0b38ad3c40a996a12e59ac","work_item_id":"946224b9-51d4-4d9b-8cd8-5dbf5b8b87d6"},"replay_mismatches":[],"stderr":"","stdout":""}
+{"campaign_id":"32ef2a9f-ac43-417a-96ab-d2a1ee261e61","fault_point":"after_upload_before_outcome_transaction","multipart_aborted":false,"ordinal":84,"partial_export_removed":false,"process_state":{"attempt_id":"792c06ec-af2e-4d54-b29f-2075d6029542","byte_size":12612,"committed":false,"fencing_token":1,"job_id":"cd2303a3-eb46-46ed-b025-923e687e68ee","kill_stage":"after_upload_before_outcome_transaction","lease_expires_at":"2026-08-14 10:21:36.502746+00:00","lease_owner":"fault-worker-084","lease_token":"4d5c21da-7f16-44d6-81ec-86c5fbd81252","object_keys":["observations/32ef2a9f-ac43-417a-96ab-d2a1ee261e61/aad36cf1091ec61b8a9c0fd9a87bd6804cd05449a99877dc799f13d96726f4aa"],"pid":32424,"reached":true,"sha256":"aad36cf1091ec61b8a9c0fd9a87bd6804cd05449a99877dc799f13d96726f4aa","work_item_id":"a5c7821d-4f17-4e26-8c6b-a46d2eb9479c"},"replay_mismatches":[],"stderr":"","stdout":""}
+{"campaign_id":"5a8ac619-1e04-41aa-bb4d-0c97f6e210ed","fault_point":"after_adapter_return_before_upload","multipart_aborted":false,"ordinal":85,"partial_export_removed":false,"process_state":{"attempt_id":"9629ce00-30a6-498a-82b9-40feff31b8e6","committed":false,"fencing_token":1,"job_id":"a6ed7e18-381c-4dde-bce2-b904f1fb288b","kill_stage":"after_adapter_return_before_upload","lease_expires_at":"2026-08-14 10:21:47.521970+00:00","lease_owner":"fault-worker-085","lease_token":"d7af5ca0-e95c-4164-bf62-5fb2a066e141","pid":23840,"reached":true,"work_item_id":"1c2eae16-540e-4f57-8fd7-154916fb0ce3"},"replay_mismatches":[],"stderr":"","stdout":""}
+{"campaign_id":"f4470e01-9d79-49d6-938d-58dcd9696a0e","fault_point":"during_object_upload","multipart_aborted":true,"ordinal":86,"partial_export_removed":false,"process_state":{"attempt_id":"022165b6-f458-4267-bc5c-ae4033bd8682","committed":false,"fencing_token":1,"job_id":"2246acef-c6f5-45ab-94b0-c6d8783d7b69","kill_stage":"during_object_upload","lease_expires_at":"2026-08-14 10:21:57.616695+00:00","lease_owner":"fault-worker-086","lease_token":"b4b985c3-c823-4879-9254-40df52df9bc9","multipart_part_count":1,"multipart_upload_id":"Njg2NTZiOWUtYzNmOC00Nzk2LWFlMjMtZDgxZGU1MGViNTk4LjQ1ZmI2ODljLWRkZWUtNDI0NC1hMDBjLTBjNWE3MWNhMjJkOXgxNzg2NzAyOTE2NzI2MTI4MzE0","object_keys":["observations/f4470e01-9d79-49d6-938d-58dcd9696a0e/15b5f92914195b4689fb72a65379ddfe54be32309e713612ab9fd0ba8231232c"],"pid":31560,"reached":true,"work_item_id":"a92402d4-1eee-49cc-9c78-9c350a4ebe82"},"replay_mismatches":[],"stderr":"","stdout":""}
+{"campaign_id":"2450a748-6614-4fed-ab61-687f9e96284a","fault_point":"after_upload_before_outcome_transaction","multipart_aborted":false,"ordinal":87,"partial_export_removed":false,"process_state":{"attempt_id":"a3a47e37-769c-4c44-b826-33c794b94816","byte_size":12588,"committed":false,"fencing_token":1,"job_id":"a2c79440-f6ea-4026-a927-f2b727457d2f","kill_stage":"after_upload_before_outcome_transaction","lease_expires_at":"2026-08-14 10:22:10.840655+00:00","lease_owner":"fault-worker-087","lease_token":"bf748f7e-a860-429a-99fb-ca0baaa68ed1","object_keys":["observations/2450a748-6614-4fed-ab61-687f9e96284a/d8935227d741c829368468f14ee66e8253bef83a8cb6fe49e3d363464bfe90ea"],"pid":36532,"reached":true,"sha256":"d8935227d741c829368468f14ee66e8253bef83a8cb6fe49e3d363464bfe90ea","work_item_id":"ead9b2e4-73dc-47b1-806a-385197fb51fe"},"replay_mismatches":[],"stderr":"","stdout":""}
+{"campaign_id":"e1227616-87a9-40fa-a733-02e093e69a7d","fault_point":"after_upload_before_outcome_transaction","multipart_aborted":false,"ordinal":88,"partial_export_removed":false,"process_state":{"attempt_id":"56edb4c5-3c17-4c02-aa9f-d3ccbbd1a9d5","byte_size":12612,"committed":false,"fencing_token":1,"job_id":"91c3c160-e087-4652-9cfb-68c81835bbd6","kill_stage":"after_upload_before_outcome_transaction","lease_expires_at":"2026-08-14 10:22:23.235321+00:00","lease_owner":"fault-worker-088","lease_token":"c7a7dc6e-1b4a-4cfe-affd-a9a2cd543b84","object_keys":["observations/e1227616-87a9-40fa-a733-02e093e69a7d/a5e2da997bfdf576e90976ee6e41cf2857bf784047581585fe3a835eaf018af4"],"pid":33860,"reached":true,"sha256":"a5e2da997bfdf576e90976ee6e41cf2857bf784047581585fe3a835eaf018af4","work_item_id":"b02e4019-63e0-484e-ab64-e8988e7b0dfe"},"replay_mismatches":[],"stderr":"","stdout":""}
+{"campaign_id":"3d003205-f527-44a1-b054-7a7c56f61baa","fault_point":"after_adapter_return_before_upload","multipart_aborted":false,"ordinal":89,"partial_export_removed":false,"process_state":{"attempt_id":"3d7f9b98-65b0-492c-ada1-1593c57c79d2","committed":false,"fencing_token":1,"job_id":"fd2809cd-0817-42df-905b-dad5d7595f88","kill_stage":"after_adapter_return_before_upload","lease_expires_at":"2026-08-14 10:22:34.259187+00:00","lease_owner":"fault-worker-089","lease_token":"6ce3de26-e356-4060-a08a-409b5767830e","pid":26416,"reached":true,"work_item_id":"5610005f-fb7c-423a-a2de-b1707147755a"},"replay_mismatches":[],"stderr":"","stdout":""}
+{"campaign_id":"ecfa5869-11b7-4ad4-b0f7-a6f92213a30b","fault_point":"after_upload_before_outcome_transaction","multipart_aborted":false,"ordinal":90,"partial_export_removed":false,"process_state":{"attempt_id":"914eef61-ab1d-4d94-a8a5-8b5a6078e450","byte_size":12612,"committed":false,"fencing_token":1,"job_id":"149e672d-92cf-4b38-b80b-c36826db07eb","kill_stage":"after_upload_before_outcome_transaction","lease_expires_at":"2026-08-14 10:22:49.972683+00:00","lease_owner":"fault-worker-090","lease_token":"788aaddf-5157-4966-a37a-825531e9b4c2","object_keys":["observations/ecfa5869-11b7-4ad4-b0f7-a6f92213a30b/aad36cf1091ec61b8a9c0fd9a87bd6804cd05449a99877dc799f13d96726f4aa"],"pid":17584,"reached":true,"sha256":"aad36cf1091ec61b8a9c0fd9a87bd6804cd05449a99877dc799f13d96726f4aa","work_item_id":"13e5187b-f346-4c06-97ce-f422cb9530de"},"replay_mismatches":[],"stderr":"","stdout":""}
+{"campaign_id":"34a57c82-3407-428c-b788-07820ac053c9","fault_point":"during_evidence_export","multipart_aborted":false,"ordinal":91,"partial_export_removed":true,"process_state":{"complete_byte_size":12383,"kill_stage":"during_evidence_export","object_store_bucket":"labbridge-phase7-fault-release3","package_id":"experiment-package:0d8b35ce1f091838b92b592b03386f19","partial_byte_size":6191,"partial_path":"build\\phase7-fault-campaign\\working\\interrupted\\34a57c82-3407-428c-b788-07820ac053c9.zip.partial","pid":8824,"reached":true},"replay_mismatches":[],"stderr":"","stdout":""}
+{"campaign_id":"b40b0b56-51d5-42bf-9fd8-fccbcec1b2a0","fault_point":"after_adapter_return_before_upload","multipart_aborted":false,"ordinal":92,"partial_export_removed":false,"process_state":{"attempt_id":"65b36775-4dc6-410e-b7d3-5527c4fad958","committed":false,"fencing_token":1,"job_id":"eba79f36-17d3-4fe7-89e2-058e46d624f4","kill_stage":"after_adapter_return_before_upload","lease_expires_at":"2026-08-14 10:23:12.750204+00:00","lease_owner":"fault-worker-092","lease_token":"4c659eb1-d436-4cc8-824e-71a51d7f946f","pid":9428,"reached":true,"work_item_id":"e44b8af5-ec57-4bd0-a08c-658101385310"},"replay_mismatches":[],"stderr":"","stdout":""}
+{"campaign_id":"94839296-cafa-4461-8bb6-de3afc49345d","fault_point":"after_adapter_return_before_upload","multipart_aborted":false,"ordinal":93,"partial_export_removed":false,"process_state":{"attempt_id":"5b1b1ded-4db6-48f9-9e05-0801604dfdac","committed":false,"fencing_token":1,"job_id":"d5ce8f95-935b-4d6f-9207-3cadb22d7ef0","kill_stage":"after_adapter_return_before_upload","lease_expires_at":"2026-08-14 10:23:26.016762+00:00","lease_owner":"fault-worker-093","lease_token":"af8fbad4-cd20-40fb-9d7e-00b0aebb21ef","pid":6628,"reached":true,"work_item_id":"7a68663b-acb2-4fa1-9e61-4370185a4df7"},"replay_mismatches":[],"stderr":"","stdout":""}
+{"campaign_id":"79723cf5-99db-4b46-922d-9b1bff8c616b","fault_point":"during_evidence_export","multipart_aborted":false,"ordinal":94,"partial_export_removed":true,"process_state":{"complete_byte_size":12382,"kill_stage":"during_evidence_export","object_store_bucket":"labbridge-phase7-fault-release3","package_id":"experiment-package:10fa99630bd8851e8fd74cb0663fc814","partial_byte_size":6191,"partial_path":"build\\phase7-fault-campaign\\working\\interrupted\\79723cf5-99db-4b46-922d-9b1bff8c616b.zip.partial","pid":26796,"reached":true},"replay_mismatches":[],"stderr":"","stdout":""}
+{"campaign_id":"3ac7ec2f-1498-4ccb-8a0d-384bb7b3e461","fault_point":"after_lease_acquisition","multipart_aborted":false,"ordinal":95,"partial_export_removed":false,"process_state":{"attempt_id":null,"committed":false,"fencing_token":1,"job_id":"e18dddab-76a9-4528-ba78-d40e7c41dd27","kill_stage":"after_lease_acquisition","lease_expires_at":"2026-08-14 10:23:45.957660+00:00","lease_owner":"fault-worker-095","lease_token":"8897ba77-1c36-4060-98ba-3e46b14ae56c","pid":34972,"reached":true,"work_item_id":"ae35fa6c-7766-43b4-82b3-0fedcff2693a"},"replay_mismatches":[],"stderr":"","stdout":""}
+{"campaign_id":"18f399f9-3257-4620-b948-2169afffc583","fault_point":"after_upload_before_outcome_transaction","multipart_aborted":false,"ordinal":96,"partial_export_removed":false,"process_state":{"attempt_id":"9887a416-a7d3-4d16-be30-eae405757d16","byte_size":12612,"committed":false,"fencing_token":1,"job_id":"f64a37d2-0105-4b0b-8ccc-031b49e96414","kill_stage":"after_upload_before_outcome_transaction","lease_expires_at":"2026-08-14 10:23:58.960696+00:00","lease_owner":"fault-worker-096","lease_token":"6d8ebaa4-08f7-41b5-9b8b-2d6b97e91708","object_keys":["observations/18f399f9-3257-4620-b948-2169afffc583/aad36cf1091ec61b8a9c0fd9a87bd6804cd05449a99877dc799f13d96726f4aa"],"pid":33804,"reached":true,"sha256":"aad36cf1091ec61b8a9c0fd9a87bd6804cd05449a99877dc799f13d96726f4aa","work_item_id":"c9c51460-2a27-4d53-9658-d32ef610d9e5"},"replay_mismatches":[],"stderr":"","stdout":""}
+{"campaign_id":"3c73f261-245b-4a8e-874f-8223348863d7","fault_point":"after_commit_before_acknowledgement","multipart_aborted":false,"ordinal":97,"partial_export_removed":false,"process_state":{"attempt_id":"60dde320-75b9-4a4b-b56c-3d7d8de77579","byte_size":12528,"committed":true,"fencing_token":1,"job_id":"630d25fe-6d6b-4316-a069-3daedd52d99a","kill_stage":"after_commit_before_acknowledgement","lease_expires_at":null,"lease_owner":"fault-worker-097","lease_token":null,"object_keys":["observations/3c73f261-245b-4a8e-874f-8223348863d7/d8cd5745de60b80ddbcc49714fe19fe4cb42fa70b27ed60a64af1eb85def8b0f"],"observation_id":"obs:b84eb9616f3723fa4749e020b2922217","outcome_status":"succeeded","pid":35872,"reached":true,"sha256":"d8cd5745de60b80ddbcc49714fe19fe4cb42fa70b27ed60a64af1eb85def8b0f","work_item_id":"0b365ff6-303c-4f68-8019-abfc880544e4"},"replay_mismatches":[],"stderr":"","stdout":""}
+{"campaign_id":"40c209d6-8fa2-4c46-a5e1-bc3e52bf6800","fault_point":"during_object_upload","multipart_aborted":true,"ordinal":98,"partial_export_removed":false,"process_state":{"attempt_id":"37b8eed9-0ec2-4f9b-82cd-4f7a154fc44a","committed":false,"fencing_token":1,"job_id":"494696d1-952d-48f6-9b8c-eada0c8372e5","kill_stage":"during_object_upload","lease_expires_at":"2026-08-14 10:24:21.992146+00:00","lease_owner":"fault-worker-098","lease_token":"b35c5366-41c9-4172-9b03-dd11bb4d0114","multipart_part_count":1,"multipart_upload_id":"Njg2NTZiOWUtYzNmOC00Nzk2LWFlMjMtZDgxZGU1MGViNTk4LjgyNmY1ZjIxLWFhZmQtNDIxZC1hYzRkLTdlM2ZlNzgyNTk4MHgxNzg2NzAzMDYxMTQ5NTI3NTI2","object_keys":["observations/40c209d6-8fa2-4c46-a5e1-bc3e52bf6800/15b5f92914195b4689fb72a65379ddfe54be32309e713612ab9fd0ba8231232c"],"pid":2524,"reached":true,"work_item_id":"5596db75-d14f-42d7-908b-b09e9324690a"},"replay_mismatches":[],"stderr":"","stdout":""}
+{"campaign_id":"b00d7a14-4687-4129-85f8-9264f9e65afc","fault_point":"during_evidence_export","multipart_aborted":false,"ordinal":99,"partial_export_removed":true,"process_state":{"complete_byte_size":12405,"kill_stage":"during_evidence_export","object_store_bucket":"labbridge-phase7-fault-release3","package_id":"experiment-package:915875c3be4d4d022429c26373f31bf5","partial_byte_size":6202,"partial_path":"build\\phase7-fault-campaign\\working\\interrupted\\b00d7a14-4687-4129-85f8-9264f9e65afc.zip.partial","pid":35116,"reached":true},"replay_mismatches":[],"stderr":"","stdout":""}
+{"campaign_id":"73fc256b-6ce8-4142-961c-6777c9107c7f","fault_point":"during_evidence_export","multipart_aborted":false,"ordinal":100,"partial_export_removed":true,"process_state":{"complete_byte_size":12396,"kill_stage":"during_evidence_export","object_store_bucket":"labbridge-phase7-fault-release3","package_id":"experiment-package:81d317e75bd1303ff0308d52e9cad2fa","partial_byte_size":6198,"partial_path":"build\\phase7-fault-campaign\\working\\interrupted\\73fc256b-6ce8-4142-961c-6777c9107c7f.zip.partial","pid":35472,"reached":true},"replay_mismatches":[],"stderr":"","stdout":""}
diff --git a/artifacts/fault-campaign/backup-restore.json b/artifacts/fault-campaign/backup-restore.json
index e3673de..3b73751 100644
--- a/artifacts/fault-campaign/backup-restore.json
+++ b/artifacts/fault-campaign/backup-restore.json
@@ -1,518 +1,518 @@
{
"campaigns_replayed_equal": 100,
- "finished_at": "2026-08-13T15:34:19.795509+00:00",
+ "finished_at": "2026-08-14T10:25:08.287372+00:00",
"object_count": 100,
"object_inventory": [
+ {
+ "byte_size": 12552,
+ "key": "observations/00e64846-7d5b-4642-b639-0cdcfb0aaa6b/15b5f92914195b4689fb72a65379ddfe54be32309e713612ab9fd0ba8231232c",
+ "sha256": "15b5f92914195b4689fb72a65379ddfe54be32309e713612ab9fd0ba8231232c"
+ },
+ {
+ "byte_size": 12528,
+ "key": "observations/0b34aa01-19c5-483a-b6b1-7010a99c01ef/d8cd5745de60b80ddbcc49714fe19fe4cb42fa70b27ed60a64af1eb85def8b0f",
+ "sha256": "d8cd5745de60b80ddbcc49714fe19fe4cb42fa70b27ed60a64af1eb85def8b0f"
+ },
+ {
+ "byte_size": 12612,
+ "key": "observations/0f2b028a-591b-4b4c-a437-48daaa8f8556/aad36cf1091ec61b8a9c0fd9a87bd6804cd05449a99877dc799f13d96726f4aa",
+ "sha256": "aad36cf1091ec61b8a9c0fd9a87bd6804cd05449a99877dc799f13d96726f4aa"
+ },
{
"byte_size": 12588,
- "key": "observations/01590fe3-e7ca-4e25-8b3a-1f3030e6885d/d8935227d741c829368468f14ee66e8253bef83a8cb6fe49e3d363464bfe90ea",
- "sha256": "d8935227d741c829368468f14ee66e8253bef83a8cb6fe49e3d363464bfe90ea"
+ "key": "observations/137655fe-2638-4d0f-a009-bcc9176dd0e7/a51d521be9793013395aac33cad16a4953a973d5ff0b38ad3c40a996a12e59ac",
+ "sha256": "a51d521be9793013395aac33cad16a4953a973d5ff0b38ad3c40a996a12e59ac"
+ },
+ {
+ "byte_size": 12552,
+ "key": "observations/151ccef8-ef3e-4d0f-8369-e7f7f608ef6f/15b5f92914195b4689fb72a65379ddfe54be32309e713612ab9fd0ba8231232c",
+ "sha256": "15b5f92914195b4689fb72a65379ddfe54be32309e713612ab9fd0ba8231232c"
+ },
+ {
+ "byte_size": 12528,
+ "key": "observations/159041f3-1d8e-434f-865e-5a0e66f96591/d8cd5745de60b80ddbcc49714fe19fe4cb42fa70b27ed60a64af1eb85def8b0f",
+ "sha256": "d8cd5745de60b80ddbcc49714fe19fe4cb42fa70b27ed60a64af1eb85def8b0f"
},
{
"byte_size": 12612,
- "key": "observations/072d4372-08f2-4c90-b42e-57af4ee751c1/aad36cf1091ec61b8a9c0fd9a87bd6804cd05449a99877dc799f13d96726f4aa",
+ "key": "observations/1883256d-5487-4a72-93c7-83c64118b1d6/a5e2da997bfdf576e90976ee6e41cf2857bf784047581585fe3a835eaf018af4",
+ "sha256": "a5e2da997bfdf576e90976ee6e41cf2857bf784047581585fe3a835eaf018af4"
+ },
+ {
+ "byte_size": 12612,
+ "key": "observations/18f399f9-3257-4620-b948-2169afffc583/aad36cf1091ec61b8a9c0fd9a87bd6804cd05449a99877dc799f13d96726f4aa",
"sha256": "aad36cf1091ec61b8a9c0fd9a87bd6804cd05449a99877dc799f13d96726f4aa"
},
{
"byte_size": 12612,
- "key": "observations/125d599f-5e20-4e67-8583-e8cdfd21f056/aad36cf1091ec61b8a9c0fd9a87bd6804cd05449a99877dc799f13d96726f4aa",
+ "key": "observations/1a161d49-a854-4da0-b7a4-de86aa4b9eef/aad36cf1091ec61b8a9c0fd9a87bd6804cd05449a99877dc799f13d96726f4aa",
"sha256": "aad36cf1091ec61b8a9c0fd9a87bd6804cd05449a99877dc799f13d96726f4aa"
},
{
- "byte_size": 12528,
- "key": "observations/135daa99-c98d-4d55-8207-e81b7f351cda/d8cd5745de60b80ddbcc49714fe19fe4cb42fa70b27ed60a64af1eb85def8b0f",
- "sha256": "d8cd5745de60b80ddbcc49714fe19fe4cb42fa70b27ed60a64af1eb85def8b0f"
+ "byte_size": 12612,
+ "key": "observations/1d42f522-20a4-4679-b64f-1d426a3d1828/aad36cf1091ec61b8a9c0fd9a87bd6804cd05449a99877dc799f13d96726f4aa",
+ "sha256": "aad36cf1091ec61b8a9c0fd9a87bd6804cd05449a99877dc799f13d96726f4aa"
},
{
"byte_size": 12612,
- "key": "observations/136f2ca6-1984-42a4-9266-82479854223f/aad36cf1091ec61b8a9c0fd9a87bd6804cd05449a99877dc799f13d96726f4aa",
+ "key": "observations/1fbf9d27-0eb2-44df-803d-9cb650cc32c7/aad36cf1091ec61b8a9c0fd9a87bd6804cd05449a99877dc799f13d96726f4aa",
"sha256": "aad36cf1091ec61b8a9c0fd9a87bd6804cd05449a99877dc799f13d96726f4aa"
},
{
"byte_size": 12612,
- "key": "observations/19937805-b191-4d42-bff5-ef2f6ada4fe8/a5e2da997bfdf576e90976ee6e41cf2857bf784047581585fe3a835eaf018af4",
- "sha256": "a5e2da997bfdf576e90976ee6e41cf2857bf784047581585fe3a835eaf018af4"
+ "key": "observations/22a57b2d-ead3-47f0-832d-7a8300d12991/aad36cf1091ec61b8a9c0fd9a87bd6804cd05449a99877dc799f13d96726f4aa",
+ "sha256": "aad36cf1091ec61b8a9c0fd9a87bd6804cd05449a99877dc799f13d96726f4aa"
},
{
- "byte_size": 12588,
- "key": "observations/1e330dca-c472-448e-b9b0-abb37eec951e/a51d521be9793013395aac33cad16a4953a973d5ff0b38ad3c40a996a12e59ac",
- "sha256": "a51d521be9793013395aac33cad16a4953a973d5ff0b38ad3c40a996a12e59ac"
+ "byte_size": 12612,
+ "key": "observations/242b4137-17f0-4fa0-95d3-15fa3479517b/aad36cf1091ec61b8a9c0fd9a87bd6804cd05449a99877dc799f13d96726f4aa",
+ "sha256": "aad36cf1091ec61b8a9c0fd9a87bd6804cd05449a99877dc799f13d96726f4aa"
},
{
"byte_size": 12588,
- "key": "observations/1e85d510-f597-405f-9351-eb5683f60ed3/a51d521be9793013395aac33cad16a4953a973d5ff0b38ad3c40a996a12e59ac",
- "sha256": "a51d521be9793013395aac33cad16a4953a973d5ff0b38ad3c40a996a12e59ac"
+ "key": "observations/2450a748-6614-4fed-ab61-687f9e96284a/d8935227d741c829368468f14ee66e8253bef83a8cb6fe49e3d363464bfe90ea",
+ "sha256": "d8935227d741c829368468f14ee66e8253bef83a8cb6fe49e3d363464bfe90ea"
},
{
- "byte_size": 12528,
- "key": "observations/1f674de1-c040-4f90-87b4-057558bd6230/d8cd5745de60b80ddbcc49714fe19fe4cb42fa70b27ed60a64af1eb85def8b0f",
- "sha256": "d8cd5745de60b80ddbcc49714fe19fe4cb42fa70b27ed60a64af1eb85def8b0f"
+ "byte_size": 12612,
+ "key": "observations/2c11298c-7cc8-4b64-b633-2dcdbffa24f1/a5e2da997bfdf576e90976ee6e41cf2857bf784047581585fe3a835eaf018af4",
+ "sha256": "a5e2da997bfdf576e90976ee6e41cf2857bf784047581585fe3a835eaf018af4"
},
{
"byte_size": 12588,
- "key": "observations/21c1f828-89e5-408c-8771-d2ff0f941d88/a51d521be9793013395aac33cad16a4953a973d5ff0b38ad3c40a996a12e59ac",
+ "key": "observations/2ddfa503-e912-44ec-bc85-57cad2b1cbef/a51d521be9793013395aac33cad16a4953a973d5ff0b38ad3c40a996a12e59ac",
"sha256": "a51d521be9793013395aac33cad16a4953a973d5ff0b38ad3c40a996a12e59ac"
},
{
"byte_size": 12612,
- "key": "observations/23809f10-2911-4424-ac25-74dd64d39835/a5e2da997bfdf576e90976ee6e41cf2857bf784047581585fe3a835eaf018af4",
+ "key": "observations/2fbddd90-0de9-4020-9a2a-601216479075/a5e2da997bfdf576e90976ee6e41cf2857bf784047581585fe3a835eaf018af4",
"sha256": "a5e2da997bfdf576e90976ee6e41cf2857bf784047581585fe3a835eaf018af4"
},
{
- "byte_size": 12552,
- "key": "observations/27b887d3-a2e9-44af-9a78-44b4bc07f6c2/15b5f92914195b4689fb72a65379ddfe54be32309e713612ab9fd0ba8231232c",
- "sha256": "15b5f92914195b4689fb72a65379ddfe54be32309e713612ab9fd0ba8231232c"
+ "byte_size": 12528,
+ "key": "observations/31ab9938-a72a-4770-9d33-e9d2e85bc8ad/d8cd5745de60b80ddbcc49714fe19fe4cb42fa70b27ed60a64af1eb85def8b0f",
+ "sha256": "d8cd5745de60b80ddbcc49714fe19fe4cb42fa70b27ed60a64af1eb85def8b0f"
},
{
- "byte_size": 12552,
- "key": "observations/28294cf5-321a-459b-90f2-d48c7a99d245/15b5f92914195b4689fb72a65379ddfe54be32309e713612ab9fd0ba8231232c",
- "sha256": "15b5f92914195b4689fb72a65379ddfe54be32309e713612ab9fd0ba8231232c"
+ "byte_size": 12612,
+ "key": "observations/32ef2a9f-ac43-417a-96ab-d2a1ee261e61/aad36cf1091ec61b8a9c0fd9a87bd6804cd05449a99877dc799f13d96726f4aa",
+ "sha256": "aad36cf1091ec61b8a9c0fd9a87bd6804cd05449a99877dc799f13d96726f4aa"
+ },
+ {
+ "byte_size": 12528,
+ "key": "observations/34a57c82-3407-428c-b788-07820ac053c9/d8cd5745de60b80ddbcc49714fe19fe4cb42fa70b27ed60a64af1eb85def8b0f",
+ "sha256": "d8cd5745de60b80ddbcc49714fe19fe4cb42fa70b27ed60a64af1eb85def8b0f"
+ },
+ {
+ "byte_size": 12612,
+ "key": "observations/34e1517f-006f-4a20-83e2-c9cb8bf76013/aad36cf1091ec61b8a9c0fd9a87bd6804cd05449a99877dc799f13d96726f4aa",
+ "sha256": "aad36cf1091ec61b8a9c0fd9a87bd6804cd05449a99877dc799f13d96726f4aa"
},
{
"byte_size": 12588,
- "key": "observations/2a15e30a-dd39-47a3-8ced-ede6c17e1263/d8935227d741c829368468f14ee66e8253bef83a8cb6fe49e3d363464bfe90ea",
- "sha256": "d8935227d741c829368468f14ee66e8253bef83a8cb6fe49e3d363464bfe90ea"
+ "key": "observations/367618ea-4656-4a19-b3d0-a2d785dc051d/a51d521be9793013395aac33cad16a4953a973d5ff0b38ad3c40a996a12e59ac",
+ "sha256": "a51d521be9793013395aac33cad16a4953a973d5ff0b38ad3c40a996a12e59ac"
},
{
"byte_size": 12612,
- "key": "observations/2ac4cf24-29e8-4db0-a91d-0fea1100c541/a5e2da997bfdf576e90976ee6e41cf2857bf784047581585fe3a835eaf018af4",
+ "key": "observations/385b45ec-ef19-4cf5-b824-59dfcb89df1a/a5e2da997bfdf576e90976ee6e41cf2857bf784047581585fe3a835eaf018af4",
"sha256": "a5e2da997bfdf576e90976ee6e41cf2857bf784047581585fe3a835eaf018af4"
},
+ {
+ "byte_size": 12588,
+ "key": "observations/3ac7ec2f-1498-4ccb-8a0d-384bb7b3e461/a51d521be9793013395aac33cad16a4953a973d5ff0b38ad3c40a996a12e59ac",
+ "sha256": "a51d521be9793013395aac33cad16a4953a973d5ff0b38ad3c40a996a12e59ac"
+ },
+ {
+ "byte_size": 12528,
+ "key": "observations/3b46d138-a70a-4494-8973-bfe2b3949bb3/d8cd5745de60b80ddbcc49714fe19fe4cb42fa70b27ed60a64af1eb85def8b0f",
+ "sha256": "d8cd5745de60b80ddbcc49714fe19fe4cb42fa70b27ed60a64af1eb85def8b0f"
+ },
{
"byte_size": 12528,
- "key": "observations/2e4a527c-df6b-48a9-aeed-259f81145504/d8cd5745de60b80ddbcc49714fe19fe4cb42fa70b27ed60a64af1eb85def8b0f",
+ "key": "observations/3c73f261-245b-4a8e-874f-8223348863d7/d8cd5745de60b80ddbcc49714fe19fe4cb42fa70b27ed60a64af1eb85def8b0f",
"sha256": "d8cd5745de60b80ddbcc49714fe19fe4cb42fa70b27ed60a64af1eb85def8b0f"
},
{
"byte_size": 12588,
- "key": "observations/33159243-2f76-409a-aefe-c516d8c6c0d7/d8935227d741c829368468f14ee66e8253bef83a8cb6fe49e3d363464bfe90ea",
- "sha256": "d8935227d741c829368468f14ee66e8253bef83a8cb6fe49e3d363464bfe90ea"
+ "key": "observations/3d003205-f527-44a1-b054-7a7c56f61baa/a51d521be9793013395aac33cad16a4953a973d5ff0b38ad3c40a996a12e59ac",
+ "sha256": "a51d521be9793013395aac33cad16a4953a973d5ff0b38ad3c40a996a12e59ac"
},
{
- "byte_size": 12528,
- "key": "observations/39c05254-5da1-43e2-9eed-044e22381b6f/d8cd5745de60b80ddbcc49714fe19fe4cb42fa70b27ed60a64af1eb85def8b0f",
- "sha256": "d8cd5745de60b80ddbcc49714fe19fe4cb42fa70b27ed60a64af1eb85def8b0f"
+ "byte_size": 12552,
+ "key": "observations/3ec20c72-ef7d-4976-8458-f77e4c0cdf95/15b5f92914195b4689fb72a65379ddfe54be32309e713612ab9fd0ba8231232c",
+ "sha256": "15b5f92914195b4689fb72a65379ddfe54be32309e713612ab9fd0ba8231232c"
},
{
- "byte_size": 12612,
- "key": "observations/3ee666c6-07f4-484b-9c39-266020796907/aad36cf1091ec61b8a9c0fd9a87bd6804cd05449a99877dc799f13d96726f4aa",
- "sha256": "aad36cf1091ec61b8a9c0fd9a87bd6804cd05449a99877dc799f13d96726f4aa"
+ "byte_size": 12552,
+ "key": "observations/40c209d6-8fa2-4c46-a5e1-bc3e52bf6800/15b5f92914195b4689fb72a65379ddfe54be32309e713612ab9fd0ba8231232c",
+ "sha256": "15b5f92914195b4689fb72a65379ddfe54be32309e713612ab9fd0ba8231232c"
},
{
"byte_size": 12612,
- "key": "observations/41a4fbd3-7748-4c64-8fc2-9d5e05c148a3/aad36cf1091ec61b8a9c0fd9a87bd6804cd05449a99877dc799f13d96726f4aa",
+ "key": "observations/44cbfa21-1aec-4c40-a2b2-ee7e885463a3/aad36cf1091ec61b8a9c0fd9a87bd6804cd05449a99877dc799f13d96726f4aa",
"sha256": "aad36cf1091ec61b8a9c0fd9a87bd6804cd05449a99877dc799f13d96726f4aa"
},
{
- "byte_size": 12552,
- "key": "observations/47bc04ef-6a51-48b1-bbca-68ecff5f7158/15b5f92914195b4689fb72a65379ddfe54be32309e713612ab9fd0ba8231232c",
- "sha256": "15b5f92914195b4689fb72a65379ddfe54be32309e713612ab9fd0ba8231232c"
+ "byte_size": 12528,
+ "key": "observations/49cafee4-4b11-4575-b93e-5d32091788a1/d8cd5745de60b80ddbcc49714fe19fe4cb42fa70b27ed60a64af1eb85def8b0f",
+ "sha256": "d8cd5745de60b80ddbcc49714fe19fe4cb42fa70b27ed60a64af1eb85def8b0f"
},
{
"byte_size": 12588,
- "key": "observations/47d20867-15c9-45bc-8889-18340a643a03/d8935227d741c829368468f14ee66e8253bef83a8cb6fe49e3d363464bfe90ea",
+ "key": "observations/4a29aec2-9501-4195-97e3-25eeb1014c87/d8935227d741c829368468f14ee66e8253bef83a8cb6fe49e3d363464bfe90ea",
"sha256": "d8935227d741c829368468f14ee66e8253bef83a8cb6fe49e3d363464bfe90ea"
},
{
- "byte_size": 12612,
- "key": "observations/47e0cf17-3b46-4ef7-bd1e-301a0b178d6c/a5e2da997bfdf576e90976ee6e41cf2857bf784047581585fe3a835eaf018af4",
- "sha256": "a5e2da997bfdf576e90976ee6e41cf2857bf784047581585fe3a835eaf018af4"
- },
- {
- "byte_size": 12612,
- "key": "observations/48759d52-8893-4de1-9344-b3ee0f5e48a8/aad36cf1091ec61b8a9c0fd9a87bd6804cd05449a99877dc799f13d96726f4aa",
- "sha256": "aad36cf1091ec61b8a9c0fd9a87bd6804cd05449a99877dc799f13d96726f4aa"
+ "byte_size": 12588,
+ "key": "observations/4aa64844-d429-49b2-acab-ff3288a90bcc/a51d521be9793013395aac33cad16a4953a973d5ff0b38ad3c40a996a12e59ac",
+ "sha256": "a51d521be9793013395aac33cad16a4953a973d5ff0b38ad3c40a996a12e59ac"
},
{
- "byte_size": 12612,
- "key": "observations/48dd37ad-ac19-4649-aac0-8fb0a40e95ea/aad36cf1091ec61b8a9c0fd9a87bd6804cd05449a99877dc799f13d96726f4aa",
- "sha256": "aad36cf1091ec61b8a9c0fd9a87bd6804cd05449a99877dc799f13d96726f4aa"
+ "byte_size": 12588,
+ "key": "observations/4c848945-5f9d-4ba2-9f42-a83d056553ed/d8935227d741c829368468f14ee66e8253bef83a8cb6fe49e3d363464bfe90ea",
+ "sha256": "d8935227d741c829368468f14ee66e8253bef83a8cb6fe49e3d363464bfe90ea"
},
{
"byte_size": 12528,
- "key": "observations/4cf918c1-a536-4f95-968e-7a5406ce59b7/d8cd5745de60b80ddbcc49714fe19fe4cb42fa70b27ed60a64af1eb85def8b0f",
+ "key": "observations/4e2327cc-9dea-464a-bfdd-cb24bb962bda/d8cd5745de60b80ddbcc49714fe19fe4cb42fa70b27ed60a64af1eb85def8b0f",
"sha256": "d8cd5745de60b80ddbcc49714fe19fe4cb42fa70b27ed60a64af1eb85def8b0f"
},
{
- "byte_size": 12552,
- "key": "observations/4d60587b-1e77-4a75-a65d-f8faca41f981/15b5f92914195b4689fb72a65379ddfe54be32309e713612ab9fd0ba8231232c",
- "sha256": "15b5f92914195b4689fb72a65379ddfe54be32309e713612ab9fd0ba8231232c"
+ "byte_size": 12612,
+ "key": "observations/4fe0557a-28e9-445f-8e86-7405dd47b5e3/aad36cf1091ec61b8a9c0fd9a87bd6804cd05449a99877dc799f13d96726f4aa",
+ "sha256": "aad36cf1091ec61b8a9c0fd9a87bd6804cd05449a99877dc799f13d96726f4aa"
},
{
"byte_size": 12588,
- "key": "observations/519d9e8c-7f1f-4fcf-9b02-a880ca86a268/d8935227d741c829368468f14ee66e8253bef83a8cb6fe49e3d363464bfe90ea",
+ "key": "observations/55ba9687-2da4-471a-976d-862126577ad3/d8935227d741c829368468f14ee66e8253bef83a8cb6fe49e3d363464bfe90ea",
"sha256": "d8935227d741c829368468f14ee66e8253bef83a8cb6fe49e3d363464bfe90ea"
},
{
"byte_size": 12588,
- "key": "observations/558dbdec-63cb-43c3-af7b-cd0dcfb867a8/a51d521be9793013395aac33cad16a4953a973d5ff0b38ad3c40a996a12e59ac",
+ "key": "observations/576e46db-760e-4304-936e-65a6a5027a05/a51d521be9793013395aac33cad16a4953a973d5ff0b38ad3c40a996a12e59ac",
"sha256": "a51d521be9793013395aac33cad16a4953a973d5ff0b38ad3c40a996a12e59ac"
},
{
- "byte_size": 12552,
- "key": "observations/58bc6b16-5c81-4b87-a0e8-81dec961885a/15b5f92914195b4689fb72a65379ddfe54be32309e713612ab9fd0ba8231232c",
- "sha256": "15b5f92914195b4689fb72a65379ddfe54be32309e713612ab9fd0ba8231232c"
+ "byte_size": 12528,
+ "key": "observations/5a8ac619-1e04-41aa-bb4d-0c97f6e210ed/d8cd5745de60b80ddbcc49714fe19fe4cb42fa70b27ed60a64af1eb85def8b0f",
+ "sha256": "d8cd5745de60b80ddbcc49714fe19fe4cb42fa70b27ed60a64af1eb85def8b0f"
},
{
"byte_size": 12552,
- "key": "observations/59cbeb32-5252-4d24-b89f-50f50964d679/15b5f92914195b4689fb72a65379ddfe54be32309e713612ab9fd0ba8231232c",
+ "key": "observations/5ba71a70-ce26-45d8-97a8-ac397b5c2ae1/15b5f92914195b4689fb72a65379ddfe54be32309e713612ab9fd0ba8231232c",
"sha256": "15b5f92914195b4689fb72a65379ddfe54be32309e713612ab9fd0ba8231232c"
},
{
"byte_size": 12588,
- "key": "observations/59ea5b03-51b3-403a-9a2d-1b852f3eaab5/a51d521be9793013395aac33cad16a4953a973d5ff0b38ad3c40a996a12e59ac",
- "sha256": "a51d521be9793013395aac33cad16a4953a973d5ff0b38ad3c40a996a12e59ac"
+ "key": "observations/605615d2-914f-4543-b5b0-f0a4b8bce588/d8935227d741c829368468f14ee66e8253bef83a8cb6fe49e3d363464bfe90ea",
+ "sha256": "d8935227d741c829368468f14ee66e8253bef83a8cb6fe49e3d363464bfe90ea"
},
{
- "byte_size": 12528,
- "key": "observations/5aa7cb86-8bb3-4506-9bd5-a768e251cb41/d8cd5745de60b80ddbcc49714fe19fe4cb42fa70b27ed60a64af1eb85def8b0f",
- "sha256": "d8cd5745de60b80ddbcc49714fe19fe4cb42fa70b27ed60a64af1eb85def8b0f"
+ "byte_size": 12552,
+ "key": "observations/60c1b1b6-173f-4375-afc2-67a5f2ae08aa/15b5f92914195b4689fb72a65379ddfe54be32309e713612ab9fd0ba8231232c",
+ "sha256": "15b5f92914195b4689fb72a65379ddfe54be32309e713612ab9fd0ba8231232c"
+ },
+ {
+ "byte_size": 12552,
+ "key": "observations/63c86416-3e69-49c6-9c26-7c19c7cad96d/15b5f92914195b4689fb72a65379ddfe54be32309e713612ab9fd0ba8231232c",
+ "sha256": "15b5f92914195b4689fb72a65379ddfe54be32309e713612ab9fd0ba8231232c"
},
{
"byte_size": 12528,
- "key": "observations/5b3e002f-5593-456a-9e46-d21e941ec43e/d8cd5745de60b80ddbcc49714fe19fe4cb42fa70b27ed60a64af1eb85def8b0f",
+ "key": "observations/6b985d61-1f60-44d9-881c-807d024beb86/d8cd5745de60b80ddbcc49714fe19fe4cb42fa70b27ed60a64af1eb85def8b0f",
"sha256": "d8cd5745de60b80ddbcc49714fe19fe4cb42fa70b27ed60a64af1eb85def8b0f"
},
{
"byte_size": 12612,
- "key": "observations/5bd63eff-2e2c-416a-aad2-ed12427e6a7e/aad36cf1091ec61b8a9c0fd9a87bd6804cd05449a99877dc799f13d96726f4aa",
- "sha256": "aad36cf1091ec61b8a9c0fd9a87bd6804cd05449a99877dc799f13d96726f4aa"
+ "key": "observations/73fc256b-6ce8-4142-961c-6777c9107c7f/a5e2da997bfdf576e90976ee6e41cf2857bf784047581585fe3a835eaf018af4",
+ "sha256": "a5e2da997bfdf576e90976ee6e41cf2857bf784047581585fe3a835eaf018af4"
},
{
"byte_size": 12612,
- "key": "observations/61890fc0-9ed1-4ed1-8db0-fd4c5b6318dc/aad36cf1091ec61b8a9c0fd9a87bd6804cd05449a99877dc799f13d96726f4aa",
- "sha256": "aad36cf1091ec61b8a9c0fd9a87bd6804cd05449a99877dc799f13d96726f4aa"
+ "key": "observations/79723cf5-99db-4b46-922d-9b1bff8c616b/a5e2da997bfdf576e90976ee6e41cf2857bf784047581585fe3a835eaf018af4",
+ "sha256": "a5e2da997bfdf576e90976ee6e41cf2857bf784047581585fe3a835eaf018af4"
},
{
"byte_size": 12588,
- "key": "observations/622a6919-2afb-4128-8f66-cf7871d9dd3b/a51d521be9793013395aac33cad16a4953a973d5ff0b38ad3c40a996a12e59ac",
- "sha256": "a51d521be9793013395aac33cad16a4953a973d5ff0b38ad3c40a996a12e59ac"
+ "key": "observations/7c83619d-4a96-4f3c-8b30-0e94f9d8c7e7/d8935227d741c829368468f14ee66e8253bef83a8cb6fe49e3d363464bfe90ea",
+ "sha256": "d8935227d741c829368468f14ee66e8253bef83a8cb6fe49e3d363464bfe90ea"
},
{
"byte_size": 12612,
- "key": "observations/68613b39-5b67-4f47-a4da-35ce5068f40b/aad36cf1091ec61b8a9c0fd9a87bd6804cd05449a99877dc799f13d96726f4aa",
- "sha256": "aad36cf1091ec61b8a9c0fd9a87bd6804cd05449a99877dc799f13d96726f4aa"
+ "key": "observations/7ddde011-de55-4b48-8979-a68b176eafaa/a5e2da997bfdf576e90976ee6e41cf2857bf784047581585fe3a835eaf018af4",
+ "sha256": "a5e2da997bfdf576e90976ee6e41cf2857bf784047581585fe3a835eaf018af4"
},
{
"byte_size": 12588,
- "key": "observations/6c0dcbcf-e8f3-484f-92fb-835a0a7021d0/a51d521be9793013395aac33cad16a4953a973d5ff0b38ad3c40a996a12e59ac",
+ "key": "observations/7f13ceee-76a2-4996-be86-6342a9ca4b14/a51d521be9793013395aac33cad16a4953a973d5ff0b38ad3c40a996a12e59ac",
"sha256": "a51d521be9793013395aac33cad16a4953a973d5ff0b38ad3c40a996a12e59ac"
},
+ {
+ "byte_size": 12588,
+ "key": "observations/7fb3eeee-7c16-4260-99c6-7663db4a0686/d8935227d741c829368468f14ee66e8253bef83a8cb6fe49e3d363464bfe90ea",
+ "sha256": "d8935227d741c829368468f14ee66e8253bef83a8cb6fe49e3d363464bfe90ea"
+ },
{
"byte_size": 12552,
- "key": "observations/6c3b6a35-8005-4b87-9352-3c102ea4e6e3/15b5f92914195b4689fb72a65379ddfe54be32309e713612ab9fd0ba8231232c",
+ "key": "observations/820f15e5-e222-46cc-b74e-6713d9e12e29/15b5f92914195b4689fb72a65379ddfe54be32309e713612ab9fd0ba8231232c",
"sha256": "15b5f92914195b4689fb72a65379ddfe54be32309e713612ab9fd0ba8231232c"
},
{
"byte_size": 12612,
- "key": "observations/6d0132f3-e034-4f94-9387-55c181663900/a5e2da997bfdf576e90976ee6e41cf2857bf784047581585fe3a835eaf018af4",
+ "key": "observations/847de2e8-745b-4ac9-8ab1-88ae19e70052/a5e2da997bfdf576e90976ee6e41cf2857bf784047581585fe3a835eaf018af4",
"sha256": "a5e2da997bfdf576e90976ee6e41cf2857bf784047581585fe3a835eaf018af4"
},
+ {
+ "byte_size": 12588,
+ "key": "observations/8794d3a7-3103-4f50-a299-daf90d776b17/d8935227d741c829368468f14ee66e8253bef83a8cb6fe49e3d363464bfe90ea",
+ "sha256": "d8935227d741c829368468f14ee66e8253bef83a8cb6fe49e3d363464bfe90ea"
+ },
{
"byte_size": 12612,
- "key": "observations/6de3894d-bc6f-4ae7-b3a7-51c97dd02403/aad36cf1091ec61b8a9c0fd9a87bd6804cd05449a99877dc799f13d96726f4aa",
+ "key": "observations/8c33bb8b-54d6-4e69-8398-19320e394cec/aad36cf1091ec61b8a9c0fd9a87bd6804cd05449a99877dc799f13d96726f4aa",
"sha256": "aad36cf1091ec61b8a9c0fd9a87bd6804cd05449a99877dc799f13d96726f4aa"
},
{
- "byte_size": 12588,
- "key": "observations/6f7443d7-6eef-4ff6-b011-31682267449a/a51d521be9793013395aac33cad16a4953a973d5ff0b38ad3c40a996a12e59ac",
- "sha256": "a51d521be9793013395aac33cad16a4953a973d5ff0b38ad3c40a996a12e59ac"
+ "byte_size": 12612,
+ "key": "observations/8d90f848-8386-4bf0-930d-497cde12520f/a5e2da997bfdf576e90976ee6e41cf2857bf784047581585fe3a835eaf018af4",
+ "sha256": "a5e2da997bfdf576e90976ee6e41cf2857bf784047581585fe3a835eaf018af4"
},
{
"byte_size": 12552,
- "key": "observations/72c5a640-a72e-4e7b-8ec0-f7807877a56a/15b5f92914195b4689fb72a65379ddfe54be32309e713612ab9fd0ba8231232c",
+ "key": "observations/91047a2e-1a9a-4af0-94e6-fc220010407f/15b5f92914195b4689fb72a65379ddfe54be32309e713612ab9fd0ba8231232c",
"sha256": "15b5f92914195b4689fb72a65379ddfe54be32309e713612ab9fd0ba8231232c"
},
{
"byte_size": 12588,
- "key": "observations/7886f262-3928-4622-b0aa-c10b8917bb73/d8935227d741c829368468f14ee66e8253bef83a8cb6fe49e3d363464bfe90ea",
+ "key": "observations/91ae41fa-7e87-483d-a5f6-8266748c5dc6/d8935227d741c829368468f14ee66e8253bef83a8cb6fe49e3d363464bfe90ea",
"sha256": "d8935227d741c829368468f14ee66e8253bef83a8cb6fe49e3d363464bfe90ea"
},
{
"byte_size": 12588,
- "key": "observations/78ef6b4e-b1ee-4618-b573-ef1007699e43/d8935227d741c829368468f14ee66e8253bef83a8cb6fe49e3d363464bfe90ea",
+ "key": "observations/94839296-cafa-4461-8bb6-de3afc49345d/d8935227d741c829368468f14ee66e8253bef83a8cb6fe49e3d363464bfe90ea",
"sha256": "d8935227d741c829368468f14ee66e8253bef83a8cb6fe49e3d363464bfe90ea"
},
{
"byte_size": 12612,
- "key": "observations/7a82b14e-f2c1-4679-b28a-9e0194e71e95/a5e2da997bfdf576e90976ee6e41cf2857bf784047581585fe3a835eaf018af4",
+ "key": "observations/9540a137-fb43-4c8c-b855-e85e4a1b0251/a5e2da997bfdf576e90976ee6e41cf2857bf784047581585fe3a835eaf018af4",
"sha256": "a5e2da997bfdf576e90976ee6e41cf2857bf784047581585fe3a835eaf018af4"
},
{
"byte_size": 12528,
- "key": "observations/7c6d06d3-0c61-485c-acf8-23d1b851dea2/d8cd5745de60b80ddbcc49714fe19fe4cb42fa70b27ed60a64af1eb85def8b0f",
+ "key": "observations/9593d9a2-c5d6-4967-9e3b-666a98adf108/d8cd5745de60b80ddbcc49714fe19fe4cb42fa70b27ed60a64af1eb85def8b0f",
"sha256": "d8cd5745de60b80ddbcc49714fe19fe4cb42fa70b27ed60a64af1eb85def8b0f"
},
{
- "byte_size": 12552,
- "key": "observations/7e46971f-d52e-4048-8764-c329f7108574/15b5f92914195b4689fb72a65379ddfe54be32309e713612ab9fd0ba8231232c",
- "sha256": "15b5f92914195b4689fb72a65379ddfe54be32309e713612ab9fd0ba8231232c"
+ "byte_size": 12528,
+ "key": "observations/974eecb8-5060-4d2c-880c-d046ebf5755f/d8cd5745de60b80ddbcc49714fe19fe4cb42fa70b27ed60a64af1eb85def8b0f",
+ "sha256": "d8cd5745de60b80ddbcc49714fe19fe4cb42fa70b27ed60a64af1eb85def8b0f"
},
{
- "byte_size": 12612,
- "key": "observations/806fe7bd-c12c-44c5-9b49-3da2372ee257/aad36cf1091ec61b8a9c0fd9a87bd6804cd05449a99877dc799f13d96726f4aa",
- "sha256": "aad36cf1091ec61b8a9c0fd9a87bd6804cd05449a99877dc799f13d96726f4aa"
+ "byte_size": 12588,
+ "key": "observations/98a1c7df-781a-41e3-8591-c7fbffb05b20/d8935227d741c829368468f14ee66e8253bef83a8cb6fe49e3d363464bfe90ea",
+ "sha256": "d8935227d741c829368468f14ee66e8253bef83a8cb6fe49e3d363464bfe90ea"
},
{
"byte_size": 12588,
- "key": "observations/84a30526-8931-4372-90f9-b60c1e111ed0/a51d521be9793013395aac33cad16a4953a973d5ff0b38ad3c40a996a12e59ac",
+ "key": "observations/9efd6265-dc3d-4fda-9984-e2b29681eda5/a51d521be9793013395aac33cad16a4953a973d5ff0b38ad3c40a996a12e59ac",
"sha256": "a51d521be9793013395aac33cad16a4953a973d5ff0b38ad3c40a996a12e59ac"
},
{
"byte_size": 12612,
- "key": "observations/86ba137f-61a2-4ac2-b91c-e690e4474b40/a5e2da997bfdf576e90976ee6e41cf2857bf784047581585fe3a835eaf018af4",
- "sha256": "a5e2da997bfdf576e90976ee6e41cf2857bf784047581585fe3a835eaf018af4"
- },
- {
- "byte_size": 12552,
- "key": "observations/87b5ce0a-2af4-481b-aa1f-c3c02dc28931/15b5f92914195b4689fb72a65379ddfe54be32309e713612ab9fd0ba8231232c",
- "sha256": "15b5f92914195b4689fb72a65379ddfe54be32309e713612ab9fd0ba8231232c"
- },
- {
- "byte_size": 12552,
- "key": "observations/8917decd-bef5-4230-8e03-1f0c56458e39/15b5f92914195b4689fb72a65379ddfe54be32309e713612ab9fd0ba8231232c",
- "sha256": "15b5f92914195b4689fb72a65379ddfe54be32309e713612ab9fd0ba8231232c"
+ "key": "observations/a1bc6249-fbc8-4959-bfbe-28a425045f05/aad36cf1091ec61b8a9c0fd9a87bd6804cd05449a99877dc799f13d96726f4aa",
+ "sha256": "aad36cf1091ec61b8a9c0fd9a87bd6804cd05449a99877dc799f13d96726f4aa"
},
{
"byte_size": 12588,
- "key": "observations/8a1487ce-d860-43d1-8d54-043be3122625/d8935227d741c829368468f14ee66e8253bef83a8cb6fe49e3d363464bfe90ea",
+ "key": "observations/a36da83d-db46-4670-a637-9ffe5e220810/d8935227d741c829368468f14ee66e8253bef83a8cb6fe49e3d363464bfe90ea",
"sha256": "d8935227d741c829368468f14ee66e8253bef83a8cb6fe49e3d363464bfe90ea"
},
{
"byte_size": 12612,
- "key": "observations/8a1bf94c-00ec-4b36-9a75-de568152b0cd/aad36cf1091ec61b8a9c0fd9a87bd6804cd05449a99877dc799f13d96726f4aa",
- "sha256": "aad36cf1091ec61b8a9c0fd9a87bd6804cd05449a99877dc799f13d96726f4aa"
- },
- {
- "byte_size": 12612,
- "key": "observations/8c8ea74e-2648-4dcb-bca7-0295f341a56e/aad36cf1091ec61b8a9c0fd9a87bd6804cd05449a99877dc799f13d96726f4aa",
+ "key": "observations/a53bebf9-6f36-4c6f-bc9d-fc971585fd0f/aad36cf1091ec61b8a9c0fd9a87bd6804cd05449a99877dc799f13d96726f4aa",
"sha256": "aad36cf1091ec61b8a9c0fd9a87bd6804cd05449a99877dc799f13d96726f4aa"
},
{
"byte_size": 12588,
- "key": "observations/94c8929d-f086-472b-b54d-4702739bb26f/d8935227d741c829368468f14ee66e8253bef83a8cb6fe49e3d363464bfe90ea",
+ "key": "observations/a9dbfd65-eaba-4d48-9d16-f06fd3ac7a5c/d8935227d741c829368468f14ee66e8253bef83a8cb6fe49e3d363464bfe90ea",
"sha256": "d8935227d741c829368468f14ee66e8253bef83a8cb6fe49e3d363464bfe90ea"
},
{
"byte_size": 12588,
- "key": "observations/96e3f7c3-fa35-46dd-bafa-9b3d66aad56d/a51d521be9793013395aac33cad16a4953a973d5ff0b38ad3c40a996a12e59ac",
- "sha256": "a51d521be9793013395aac33cad16a4953a973d5ff0b38ad3c40a996a12e59ac"
+ "key": "observations/ae40ec4a-9c7c-4bf0-b9cf-f52c96558d1c/d8935227d741c829368468f14ee66e8253bef83a8cb6fe49e3d363464bfe90ea",
+ "sha256": "d8935227d741c829368468f14ee66e8253bef83a8cb6fe49e3d363464bfe90ea"
},
{
"byte_size": 12588,
- "key": "observations/9ae3ef5b-65f1-4c96-9a9a-f9d7145f412b/d8935227d741c829368468f14ee66e8253bef83a8cb6fe49e3d363464bfe90ea",
+ "key": "observations/b00d7a14-4687-4129-85f8-9264f9e65afc/d8935227d741c829368468f14ee66e8253bef83a8cb6fe49e3d363464bfe90ea",
"sha256": "d8935227d741c829368468f14ee66e8253bef83a8cb6fe49e3d363464bfe90ea"
},
{
"byte_size": 12588,
- "key": "observations/9c646f85-7801-4760-b6c3-684cc20fda21/a51d521be9793013395aac33cad16a4953a973d5ff0b38ad3c40a996a12e59ac",
+ "key": "observations/b095a683-b126-4274-9777-6050a6ea4b50/a51d521be9793013395aac33cad16a4953a973d5ff0b38ad3c40a996a12e59ac",
"sha256": "a51d521be9793013395aac33cad16a4953a973d5ff0b38ad3c40a996a12e59ac"
},
{
- "byte_size": 12588,
- "key": "observations/9f330b2f-2e46-4923-9ddf-894e38a6627c/d8935227d741c829368468f14ee66e8253bef83a8cb6fe49e3d363464bfe90ea",
- "sha256": "d8935227d741c829368468f14ee66e8253bef83a8cb6fe49e3d363464bfe90ea"
+ "byte_size": 12552,
+ "key": "observations/b1aa75e3-6842-4408-acd8-826e35ee2508/15b5f92914195b4689fb72a65379ddfe54be32309e713612ab9fd0ba8231232c",
+ "sha256": "15b5f92914195b4689fb72a65379ddfe54be32309e713612ab9fd0ba8231232c"
},
{
"byte_size": 12528,
- "key": "observations/a2c40507-e440-4f6a-b166-87f5d619a9dd/d8cd5745de60b80ddbcc49714fe19fe4cb42fa70b27ed60a64af1eb85def8b0f",
+ "key": "observations/b27e92ae-eb8e-4576-bef9-b923334dcc71/d8cd5745de60b80ddbcc49714fe19fe4cb42fa70b27ed60a64af1eb85def8b0f",
"sha256": "d8cd5745de60b80ddbcc49714fe19fe4cb42fa70b27ed60a64af1eb85def8b0f"
},
{
- "byte_size": 12612,
- "key": "observations/a36a8519-635c-4a9a-89f7-e74603e5afb3/aad36cf1091ec61b8a9c0fd9a87bd6804cd05449a99877dc799f13d96726f4aa",
- "sha256": "aad36cf1091ec61b8a9c0fd9a87bd6804cd05449a99877dc799f13d96726f4aa"
+ "byte_size": 12552,
+ "key": "observations/b40b0b56-51d5-42bf-9fd8-fccbcec1b2a0/15b5f92914195b4689fb72a65379ddfe54be32309e713612ab9fd0ba8231232c",
+ "sha256": "15b5f92914195b4689fb72a65379ddfe54be32309e713612ab9fd0ba8231232c"
},
{
"byte_size": 12612,
- "key": "observations/ae704d06-66ad-4b3d-8fa0-bc5eab031700/a5e2da997bfdf576e90976ee6e41cf2857bf784047581585fe3a835eaf018af4",
+ "key": "observations/b5273feb-6224-47f5-9efe-ca8f5f2c50c3/a5e2da997bfdf576e90976ee6e41cf2857bf784047581585fe3a835eaf018af4",
"sha256": "a5e2da997bfdf576e90976ee6e41cf2857bf784047581585fe3a835eaf018af4"
},
- {
- "byte_size": 12528,
- "key": "observations/b20cf37e-2d82-44a8-9f5f-3aa42695fbc2/d8cd5745de60b80ddbcc49714fe19fe4cb42fa70b27ed60a64af1eb85def8b0f",
- "sha256": "d8cd5745de60b80ddbcc49714fe19fe4cb42fa70b27ed60a64af1eb85def8b0f"
- },
{
"byte_size": 12612,
- "key": "observations/b22d4364-8e6a-4c06-b612-f956d3aa2e77/a5e2da997bfdf576e90976ee6e41cf2857bf784047581585fe3a835eaf018af4",
+ "key": "observations/bc56f20c-e654-46aa-9329-4c05c20a0258/a5e2da997bfdf576e90976ee6e41cf2857bf784047581585fe3a835eaf018af4",
"sha256": "a5e2da997bfdf576e90976ee6e41cf2857bf784047581585fe3a835eaf018af4"
},
- {
- "byte_size": 12588,
- "key": "observations/b411eb8f-a546-4aa2-aaf3-3d790cbd5f05/a51d521be9793013395aac33cad16a4953a973d5ff0b38ad3c40a996a12e59ac",
- "sha256": "a51d521be9793013395aac33cad16a4953a973d5ff0b38ad3c40a996a12e59ac"
- },
{
"byte_size": 12552,
- "key": "observations/b5f6266d-f6f5-4109-a632-fca8823a3300/15b5f92914195b4689fb72a65379ddfe54be32309e713612ab9fd0ba8231232c",
+ "key": "observations/bd6c1f73-1291-4703-92c2-9c793ffd41d2/15b5f92914195b4689fb72a65379ddfe54be32309e713612ab9fd0ba8231232c",
"sha256": "15b5f92914195b4689fb72a65379ddfe54be32309e713612ab9fd0ba8231232c"
},
{
- "byte_size": 12612,
- "key": "observations/b9606d88-c543-461e-b948-1d89709557e4/a5e2da997bfdf576e90976ee6e41cf2857bf784047581585fe3a835eaf018af4",
- "sha256": "a5e2da997bfdf576e90976ee6e41cf2857bf784047581585fe3a835eaf018af4"
- },
- {
- "byte_size": 12588,
- "key": "observations/bc38c14c-d8fa-4954-b1ab-d2af6df6d2a9/d8935227d741c829368468f14ee66e8253bef83a8cb6fe49e3d363464bfe90ea",
- "sha256": "d8935227d741c829368468f14ee66e8253bef83a8cb6fe49e3d363464bfe90ea"
+ "byte_size": 12528,
+ "key": "observations/bdb5b719-89cc-472d-a336-428c7e07624e/d8cd5745de60b80ddbcc49714fe19fe4cb42fa70b27ed60a64af1eb85def8b0f",
+ "sha256": "d8cd5745de60b80ddbcc49714fe19fe4cb42fa70b27ed60a64af1eb85def8b0f"
},
{
"byte_size": 12528,
- "key": "observations/bf5c4dfe-40fa-4789-bf66-f9b667f105ed/d8cd5745de60b80ddbcc49714fe19fe4cb42fa70b27ed60a64af1eb85def8b0f",
+ "key": "observations/bfca9dea-5602-4bf5-afe2-c1a31ca3b1c9/d8cd5745de60b80ddbcc49714fe19fe4cb42fa70b27ed60a64af1eb85def8b0f",
"sha256": "d8cd5745de60b80ddbcc49714fe19fe4cb42fa70b27ed60a64af1eb85def8b0f"
},
{
"byte_size": 12612,
- "key": "observations/c04f2c07-1319-4eb0-bba8-f41a44594b72/a5e2da997bfdf576e90976ee6e41cf2857bf784047581585fe3a835eaf018af4",
- "sha256": "a5e2da997bfdf576e90976ee6e41cf2857bf784047581585fe3a835eaf018af4"
- },
- {
- "byte_size": 12528,
- "key": "observations/c2203cb6-dd54-49df-b83d-e3acc688ded5/d8cd5745de60b80ddbcc49714fe19fe4cb42fa70b27ed60a64af1eb85def8b0f",
- "sha256": "d8cd5745de60b80ddbcc49714fe19fe4cb42fa70b27ed60a64af1eb85def8b0f"
+ "key": "observations/c5e5e6d8-0f6e-4af6-81df-c86cfb376721/aad36cf1091ec61b8a9c0fd9a87bd6804cd05449a99877dc799f13d96726f4aa",
+ "sha256": "aad36cf1091ec61b8a9c0fd9a87bd6804cd05449a99877dc799f13d96726f4aa"
},
{
"byte_size": 12552,
- "key": "observations/c444ea0e-cfde-40b1-87ce-9ad7bb306d76/15b5f92914195b4689fb72a65379ddfe54be32309e713612ab9fd0ba8231232c",
+ "key": "observations/c7d1b4b9-44df-4daf-bdff-fbccd0c12995/15b5f92914195b4689fb72a65379ddfe54be32309e713612ab9fd0ba8231232c",
"sha256": "15b5f92914195b4689fb72a65379ddfe54be32309e713612ab9fd0ba8231232c"
},
{
"byte_size": 12588,
- "key": "observations/c624ec0a-5c8f-413f-99c0-c57e85617984/d8935227d741c829368468f14ee66e8253bef83a8cb6fe49e3d363464bfe90ea",
+ "key": "observations/c8cc2173-170c-49db-aba4-30a1c4dec9b4/d8935227d741c829368468f14ee66e8253bef83a8cb6fe49e3d363464bfe90ea",
"sha256": "d8935227d741c829368468f14ee66e8253bef83a8cb6fe49e3d363464bfe90ea"
},
{
"byte_size": 12588,
- "key": "observations/c6cbf15f-2f7c-43d7-b20f-40762aef8c16/a51d521be9793013395aac33cad16a4953a973d5ff0b38ad3c40a996a12e59ac",
+ "key": "observations/cb90286b-ca59-4dc4-8dce-cc7330a07373/a51d521be9793013395aac33cad16a4953a973d5ff0b38ad3c40a996a12e59ac",
"sha256": "a51d521be9793013395aac33cad16a4953a973d5ff0b38ad3c40a996a12e59ac"
},
{
- "byte_size": 12612,
- "key": "observations/cabc27fd-a974-417e-98c7-a16fa4bfa22a/a5e2da997bfdf576e90976ee6e41cf2857bf784047581585fe3a835eaf018af4",
- "sha256": "a5e2da997bfdf576e90976ee6e41cf2857bf784047581585fe3a835eaf018af4"
- },
- {
- "byte_size": 12528,
- "key": "observations/cb133b65-1429-4249-b345-1b7b78f28dea/d8cd5745de60b80ddbcc49714fe19fe4cb42fa70b27ed60a64af1eb85def8b0f",
- "sha256": "d8cd5745de60b80ddbcc49714fe19fe4cb42fa70b27ed60a64af1eb85def8b0f"
- },
- {
- "byte_size": 12552,
- "key": "observations/cbf3a329-e6f5-4794-a66a-c15f40da536c/15b5f92914195b4689fb72a65379ddfe54be32309e713612ab9fd0ba8231232c",
- "sha256": "15b5f92914195b4689fb72a65379ddfe54be32309e713612ab9fd0ba8231232c"
- },
- {
- "byte_size": 12528,
- "key": "observations/cd6374d8-0fa8-4a68-bf16-7c239a3a2bfe/d8cd5745de60b80ddbcc49714fe19fe4cb42fa70b27ed60a64af1eb85def8b0f",
- "sha256": "d8cd5745de60b80ddbcc49714fe19fe4cb42fa70b27ed60a64af1eb85def8b0f"
+ "byte_size": 12588,
+ "key": "observations/d691cf85-6cc4-4ff6-ae0e-e09eef28676b/d8935227d741c829368468f14ee66e8253bef83a8cb6fe49e3d363464bfe90ea",
+ "sha256": "d8935227d741c829368468f14ee66e8253bef83a8cb6fe49e3d363464bfe90ea"
},
{
"byte_size": 12612,
- "key": "observations/d0cb5535-5a73-4a33-9d7b-e2be378f10fc/a5e2da997bfdf576e90976ee6e41cf2857bf784047581585fe3a835eaf018af4",
+ "key": "observations/dd7df504-61ec-4fc1-bf35-643f8893eea6/a5e2da997bfdf576e90976ee6e41cf2857bf784047581585fe3a835eaf018af4",
"sha256": "a5e2da997bfdf576e90976ee6e41cf2857bf784047581585fe3a835eaf018af4"
},
{
"byte_size": 12588,
- "key": "observations/d384007b-c0c7-4a07-99e0-23d7fbbead56/a51d521be9793013395aac33cad16a4953a973d5ff0b38ad3c40a996a12e59ac",
+ "key": "observations/debea722-7e09-48fa-87da-b9497c61bed9/a51d521be9793013395aac33cad16a4953a973d5ff0b38ad3c40a996a12e59ac",
"sha256": "a51d521be9793013395aac33cad16a4953a973d5ff0b38ad3c40a996a12e59ac"
},
{
"byte_size": 12552,
- "key": "observations/d5de7bd1-021b-407e-ac83-a04f0ae3d654/15b5f92914195b4689fb72a65379ddfe54be32309e713612ab9fd0ba8231232c",
+ "key": "observations/dfa14842-a1ea-428c-a28a-5e5acfa69a27/15b5f92914195b4689fb72a65379ddfe54be32309e713612ab9fd0ba8231232c",
"sha256": "15b5f92914195b4689fb72a65379ddfe54be32309e713612ab9fd0ba8231232c"
},
{
"byte_size": 12612,
- "key": "observations/d70fc10d-5775-4e4a-abc1-d3ed2a3be71a/aad36cf1091ec61b8a9c0fd9a87bd6804cd05449a99877dc799f13d96726f4aa",
- "sha256": "aad36cf1091ec61b8a9c0fd9a87bd6804cd05449a99877dc799f13d96726f4aa"
- },
- {
- "byte_size": 12528,
- "key": "observations/da45a71c-0f1b-4522-81a5-9119a448adb4/d8cd5745de60b80ddbcc49714fe19fe4cb42fa70b27ed60a64af1eb85def8b0f",
- "sha256": "d8cd5745de60b80ddbcc49714fe19fe4cb42fa70b27ed60a64af1eb85def8b0f"
+ "key": "observations/e107ca1d-5f49-43ad-98d0-82bbd2161c5b/a5e2da997bfdf576e90976ee6e41cf2857bf784047581585fe3a835eaf018af4",
+ "sha256": "a5e2da997bfdf576e90976ee6e41cf2857bf784047581585fe3a835eaf018af4"
},
{
"byte_size": 12612,
- "key": "observations/db21d30b-ff2c-4431-8a8a-17a2ec046190/a5e2da997bfdf576e90976ee6e41cf2857bf784047581585fe3a835eaf018af4",
+ "key": "observations/e1227616-87a9-40fa-a733-02e093e69a7d/a5e2da997bfdf576e90976ee6e41cf2857bf784047581585fe3a835eaf018af4",
"sha256": "a5e2da997bfdf576e90976ee6e41cf2857bf784047581585fe3a835eaf018af4"
},
{
- "byte_size": 12612,
- "key": "observations/dd914774-38dd-492d-92fb-8420c8ab58b7/a5e2da997bfdf576e90976ee6e41cf2857bf784047581585fe3a835eaf018af4",
- "sha256": "a5e2da997bfdf576e90976ee6e41cf2857bf784047581585fe3a835eaf018af4"
+ "byte_size": 12528,
+ "key": "observations/e6c1a315-0053-44f1-ab79-0d798b52d8d9/d8cd5745de60b80ddbcc49714fe19fe4cb42fa70b27ed60a64af1eb85def8b0f",
+ "sha256": "d8cd5745de60b80ddbcc49714fe19fe4cb42fa70b27ed60a64af1eb85def8b0f"
},
{
"byte_size": 12588,
- "key": "observations/de49fa8b-4661-45f1-bea9-ca9608e9558a/d8935227d741c829368468f14ee66e8253bef83a8cb6fe49e3d363464bfe90ea",
- "sha256": "d8935227d741c829368468f14ee66e8253bef83a8cb6fe49e3d363464bfe90ea"
+ "key": "observations/e783df27-3418-4f00-8261-cd85844dc6e5/a51d521be9793013395aac33cad16a4953a973d5ff0b38ad3c40a996a12e59ac",
+ "sha256": "a51d521be9793013395aac33cad16a4953a973d5ff0b38ad3c40a996a12e59ac"
+ },
+ {
+ "byte_size": 12552,
+ "key": "observations/e873a878-dd73-43e8-a90a-d96ca6d3f952/15b5f92914195b4689fb72a65379ddfe54be32309e713612ab9fd0ba8231232c",
+ "sha256": "15b5f92914195b4689fb72a65379ddfe54be32309e713612ab9fd0ba8231232c"
},
{
"byte_size": 12612,
- "key": "observations/dee06c98-5df9-4d46-988b-3bedca9fab6c/a5e2da997bfdf576e90976ee6e41cf2857bf784047581585fe3a835eaf018af4",
+ "key": "observations/e99032a1-d0db-417c-afbb-7323c2916f43/a5e2da997bfdf576e90976ee6e41cf2857bf784047581585fe3a835eaf018af4",
"sha256": "a5e2da997bfdf576e90976ee6e41cf2857bf784047581585fe3a835eaf018af4"
},
{
"byte_size": 12588,
- "key": "observations/e47fe0e5-eb40-4c46-b582-cded270a7d80/d8935227d741c829368468f14ee66e8253bef83a8cb6fe49e3d363464bfe90ea",
- "sha256": "d8935227d741c829368468f14ee66e8253bef83a8cb6fe49e3d363464bfe90ea"
+ "key": "observations/eaa90654-d76d-4f1a-8518-7beae7bb8aa5/a51d521be9793013395aac33cad16a4953a973d5ff0b38ad3c40a996a12e59ac",
+ "sha256": "a51d521be9793013395aac33cad16a4953a973d5ff0b38ad3c40a996a12e59ac"
},
{
"byte_size": 12528,
- "key": "observations/e5c78838-d72a-4976-81cb-e80189296002/d8cd5745de60b80ddbcc49714fe19fe4cb42fa70b27ed60a64af1eb85def8b0f",
+ "key": "observations/eb15f57a-9453-455b-b698-b9c0c7392a7a/d8cd5745de60b80ddbcc49714fe19fe4cb42fa70b27ed60a64af1eb85def8b0f",
"sha256": "d8cd5745de60b80ddbcc49714fe19fe4cb42fa70b27ed60a64af1eb85def8b0f"
},
- {
- "byte_size": 12552,
- "key": "observations/ed089dbc-273b-410a-ae00-2adc2cdb48ce/15b5f92914195b4689fb72a65379ddfe54be32309e713612ab9fd0ba8231232c",
- "sha256": "15b5f92914195b4689fb72a65379ddfe54be32309e713612ab9fd0ba8231232c"
- },
- {
- "byte_size": 12588,
- "key": "observations/edbe2be0-d9ed-46d1-a4a5-41fe9f7e9536/d8935227d741c829368468f14ee66e8253bef83a8cb6fe49e3d363464bfe90ea",
- "sha256": "d8935227d741c829368468f14ee66e8253bef83a8cb6fe49e3d363464bfe90ea"
- },
{
"byte_size": 12612,
- "key": "observations/eedb969b-1a0d-45d1-a1e8-37cbea951417/a5e2da997bfdf576e90976ee6e41cf2857bf784047581585fe3a835eaf018af4",
- "sha256": "a5e2da997bfdf576e90976ee6e41cf2857bf784047581585fe3a835eaf018af4"
+ "key": "observations/ecfa5869-11b7-4ad4-b0f7-a6f92213a30b/aad36cf1091ec61b8a9c0fd9a87bd6804cd05449a99877dc799f13d96726f4aa",
+ "sha256": "aad36cf1091ec61b8a9c0fd9a87bd6804cd05449a99877dc799f13d96726f4aa"
},
{
- "byte_size": 12528,
- "key": "observations/f3bd9b1c-d26c-4cfd-bf74-58f35b299087/d8cd5745de60b80ddbcc49714fe19fe4cb42fa70b27ed60a64af1eb85def8b0f",
- "sha256": "d8cd5745de60b80ddbcc49714fe19fe4cb42fa70b27ed60a64af1eb85def8b0f"
+ "byte_size": 12588,
+ "key": "observations/f12df2e2-3626-4d3e-9350-dd8e497c4f47/a51d521be9793013395aac33cad16a4953a973d5ff0b38ad3c40a996a12e59ac",
+ "sha256": "a51d521be9793013395aac33cad16a4953a973d5ff0b38ad3c40a996a12e59ac"
},
{
"byte_size": 12552,
- "key": "observations/f3e4def2-6635-4026-9e1f-9fa2b0f3e4f2/15b5f92914195b4689fb72a65379ddfe54be32309e713612ab9fd0ba8231232c",
+ "key": "observations/f4470e01-9d79-49d6-938d-58dcd9696a0e/15b5f92914195b4689fb72a65379ddfe54be32309e713612ab9fd0ba8231232c",
"sha256": "15b5f92914195b4689fb72a65379ddfe54be32309e713612ab9fd0ba8231232c"
},
{
"byte_size": 12588,
- "key": "observations/f4eacdcc-0342-47d6-bdfb-ea7642655326/a51d521be9793013395aac33cad16a4953a973d5ff0b38ad3c40a996a12e59ac",
+ "key": "observations/f93cb898-46ff-4b94-a210-5daa4267fedf/a51d521be9793013395aac33cad16a4953a973d5ff0b38ad3c40a996a12e59ac",
"sha256": "a51d521be9793013395aac33cad16a4953a973d5ff0b38ad3c40a996a12e59ac"
},
{
- "byte_size": 12588,
- "key": "observations/f5360227-cf82-4423-9f17-fcc48f0e26df/a51d521be9793013395aac33cad16a4953a973d5ff0b38ad3c40a996a12e59ac",
- "sha256": "a51d521be9793013395aac33cad16a4953a973d5ff0b38ad3c40a996a12e59ac"
+ "byte_size": 12552,
+ "key": "observations/fa233469-95d6-4b96-a632-26b1e4e1930e/15b5f92914195b4689fb72a65379ddfe54be32309e713612ab9fd0ba8231232c",
+ "sha256": "15b5f92914195b4689fb72a65379ddfe54be32309e713612ab9fd0ba8231232c"
},
{
- "byte_size": 12588,
- "key": "observations/fca390dd-591a-4b30-9071-fba97647aaca/d8935227d741c829368468f14ee66e8253bef83a8cb6fe49e3d363464bfe90ea",
- "sha256": "d8935227d741c829368468f14ee66e8253bef83a8cb6fe49e3d363464bfe90ea"
+ "byte_size": 12612,
+ "key": "observations/fa5dde52-f4d2-49e6-9da6-9e0650f9f995/a5e2da997bfdf576e90976ee6e41cf2857bf784047581585fe3a835eaf018af4",
+ "sha256": "a5e2da997bfdf576e90976ee6e41cf2857bf784047581585fe3a835eaf018af4"
}
],
"passed": true,
- "postgres_dump_byte_size": 449513,
- "postgres_dump_sha256": "92f88920e58575f4133d56b3b34cadbea4b6fc737974f41eab840dcd28d0bf44",
- "restore_database": "labbridge_phase7_fault_release2_restore",
+ "postgres_dump_byte_size": 464208,
+ "postgres_dump_sha256": "aec69955914e004e923807c5b9f12dc8324978cd388f0fd96436003f0773a34d",
+ "restore_database": "labbridge_phase7_fault_release3_restore",
"restore_minio_distinct_instance": true,
"restored_object_checksums_verified": 100,
"restored_packages_fully_verified": 100,
- "source_database": "labbridge_phase7_fault_release2",
- "started_at": "2026-08-13T15:33:55.693985+00:00",
+ "source_database": "labbridge_phase7_fault_release3",
+ "started_at": "2026-08-14T10:24:43.515031+00:00",
"status": "PASSED",
"table_counts": {
"attempt_outcomes": 251,
@@ -523,6 +523,10 @@
"cv_structural_findings": 0,
"cv_transformation_records": 0,
"derived_metrics": 200,
+ "electrolysis_auxiliary_results": 0,
+ "electrolysis_import_profiles": 0,
+ "electrolysis_structural_findings": 0,
+ "electrolysis_transformation_records": 0,
"events": 2642,
"experiment_packages": 0,
"experiment_passports": 0,
@@ -533,6 +537,8 @@
"jobs": 200,
"metadata_assertions": 0,
"normalised_cv_observations": 0,
+ "normalised_electrolysis_observations": 0,
+ "normalised_observations": 0,
"observations": 200,
"record_relations": 0,
"source_artifacts": 0,
diff --git a/artifacts/fault-campaign/environment-manifest.json b/artifacts/fault-campaign/environment-manifest.json
index cd78f58..a7488a5 100644
--- a/artifacts/fault-campaign/environment-manifest.json
+++ b/artifacts/fault-campaign/environment-manifest.json
@@ -1,7 +1,7 @@
{
- "compose_images": "[{\"ID\":\"sha256:826a2a18d8fb2408f04ee0ce683a4ec41e860abe0dd8c4ec2ac2cd77a3575f3e\",\"ContainerName\":\"labbridge-app-1\",\"Repository\":\"labbridge-app\",\"Tag\":\"latest\",\"Size\":742683979},{\"ID\":\"sha256:69b2ec208575b69597784255eec6fa6a2985ee9e1a47f4411a51f7f5fdd193a9\",\"ContainerName\":\"labbridge-minio-1\",\"Repository\":\"minio/minio\",\"Tag\":\"latest\",\"Size\":175494058},{\"ID\":\"sha256:93aa428db0aeeb71d24dcad1491bef6e1396a4255697e4bfc4c725bfeb981b74\",\"ContainerName\":\"labbridge-postgres-1\",\"Repository\":\"postgres\",\"Tag\":\"17-alpine\",\"Size\":297072501}]",
+ "compose_images": "[{\"ID\":\"sha256:39e0ae9551fe0b4882a918ff8f7f475fd1730f76e3b7a3e0f399e915c32a4f11\",\"ContainerName\":\"labbridge-cv-passport-demo-app-1\",\"Repository\":\"labbridge-cv-passport-demo-app\",\"Tag\":\"latest\",\"Size\":758720726},{\"ID\":\"sha256:69b2ec208575b69597784255eec6fa6a2985ee9e1a47f4411a51f7f5fdd193a9\",\"ContainerName\":\"labbridge-cv-passport-demo-demo-minio-1\",\"Repository\":\"minio/minio\",\"Tag\":\"latest\",\"Size\":175494058},{\"ID\":\"sha256:93aa428db0aeeb71d24dcad1491bef6e1396a4255697e4bfc4c725bfeb981b74\",\"ContainerName\":\"labbridge-cv-passport-demo-demo-postgres-1\",\"Repository\":\"postgres\",\"Tag\":\"17-alpine\",\"Size\":297072501},{\"ID\":\"sha256:69b2ec208575b69597784255eec6fa6a2985ee9e1a47f4411a51f7f5fdd193a9\",\"ContainerName\":\"labbridge-cv-passport-demo-minio-1\",\"Repository\":\"minio/minio\",\"Tag\":\"latest\",\"Size\":175494058},{\"ID\":\"sha256:93aa428db0aeeb71d24dcad1491bef6e1396a4255697e4bfc4c725bfeb981b74\",\"ContainerName\":\"labbridge-cv-passport-demo-postgres-1\",\"Repository\":\"postgres\",\"Tag\":\"17-alpine\",\"Size\":297072501}]",
"data_origin": "synthetic",
- "database_name": "labbridge_phase7_fault_release2",
+ "database_name": "labbridge_phase7_fault_release3",
"dependency_versions": {
"alembic": "1.18.5",
"boto3": "1.43.59",
@@ -13,13 +13,16 @@
"execution_mode": "replay",
"fixture_manifest_sha256": "84a7fa5c3f48ac4c625e20de29a9df9cf6b5d82c6106caeac8a648d552ca3495",
"future_live_execution": "not_run_out_of_scope",
- "git_head": "14921d701e512bb70816e55c844293f90e6bb8d0",
- "object_store_bucket": "labbridge-phase7-fault-release2",
+ "git_head": "376dc2209cfff80f6d7af930e99fb1f5ab792e70",
+ "merge_base_with_origin_main": "2f090e71a780dc35d34ee04a33557f093559fad6",
+ "object_store_bucket": "labbridge-phase7-fault-release3",
"operating_system": "Windows-11-10.0.26200-SP0",
- "origin_main": "17b4d2060c8a6d2431769a1d55ce76d7977f88f8",
+ "origin_main": "2f090e71a780dc35d34ee04a33557f093559fad6",
+ "origin_main_contained": true,
"python": "3.12.0 (tags/v3.12.0:0fb18b0, Oct 2 2023, 13:03:39) [MSC v.1935 64 bit (AMD64)]",
"python_executable": "C:\\Users\\Lenovo L14\\AppData\\Local\\Programs\\Python\\Python312\\python.exe",
- "recorded_at": "2026-08-13T15:33:54.733993+00:00",
+ "recorded_at": "2026-08-14T10:24:41.454929+00:00",
"secrets_recorded": false,
- "source_tree_sha256": "29787fbebd7468df182d5133f9b14efd184944467fb82791d60bec70c98aba1b"
+ "source_tree_sha256": "133101fa7fbfb51c5845576a68f9ce0f8057534b216fdb12b2fbc7e7f821cfff",
+ "working_tree": "clean"
}
diff --git a/artifacts/fault-campaign/fault-campaign-report.html b/artifacts/fault-campaign/fault-campaign-report.html
index 0fba663..a558d31 100644
--- a/artifacts/fault-campaign/fault-campaign-report.html
+++ b/artifacts/fault-campaign/fault-campaign-report.html
@@ -1 +1 @@
-
LabBridge Phase 7 fault campaignPhase 7 process-boundary fault campaign
Data classification: synthetic + replay
This report describes at-least-once delivery with idempotent effect handling. It makes no exactly-once execution claim.
| campaigns_executed | 100 |
|---|
| fault_point_counts | {'after_adapter_return_before_upload': 17, 'after_commit_before_acknowledgement': 16, 'after_lease_acquisition': 17, 'after_upload_before_outcome_transaction': 17, 'during_evidence_export': 16, 'during_object_upload': 17} |
|---|
| lost_accepted_observations | 0 |
|---|
| unintended_duplicate_acceptances | 0 |
|---|
| hard_budget_overspends | 0 |
|---|
| projection_mismatches | 0 |
|---|
| failed_package_verifications | 0 |
|---|
| corrupted_receipts_retained | 0 |
|---|
| duplicate_suppressions | 100 |
|---|
| failure_code_counts | {'lease_lost': 51} |
|---|
| acceptance_met | True |
|---|
Scope and exclusions
- The released run used generated synthetic fixture bytes in replay mode; it did not use observed HER archive bytes.
- Future observed live execution remains outside Phase 7 and was not run.
- Results cover only the recorded environment, seeds, and injected boundaries.
+LabBridge Phase 7 fault campaignPhase 7 process-boundary fault campaign
Data classification: synthetic + replay
This report describes at-least-once delivery with idempotent effect handling. It makes no exactly-once execution claim.
| campaigns_executed | 100 |
|---|
| fault_point_counts | {'after_adapter_return_before_upload': 17, 'after_commit_before_acknowledgement': 16, 'after_lease_acquisition': 17, 'after_upload_before_outcome_transaction': 17, 'during_evidence_export': 16, 'during_object_upload': 17} |
|---|
| lost_accepted_observations | 0 |
|---|
| unintended_duplicate_acceptances | 0 |
|---|
| hard_budget_overspends | 0 |
|---|
| projection_mismatches | 0 |
|---|
| failed_package_verifications | 0 |
|---|
| corrupted_receipts_retained | 0 |
|---|
| duplicate_suppressions | 100 |
|---|
| failure_code_counts | {'lease_lost': 51} |
|---|
| acceptance_met | True |
|---|
Scope and exclusions
- The released run used synthetic bytes in replay mode.
- Future observed live execution remains outside Phase 7 and was not run.
- Results cover only the recorded environment, seeds, and injected boundaries.
diff --git a/artifacts/fault-campaign/fault-campaign-report.json b/artifacts/fault-campaign/fault-campaign-report.json
index 40ad14a..a15bd18 100644
--- a/artifacts/fault-campaign/fault-campaign-report.json
+++ b/artifacts/fault-campaign/fault-campaign-report.json
@@ -1,519 +1,519 @@
{
"backup_restore": {
"campaigns_replayed_equal": 100,
- "finished_at": "2026-08-13T15:34:19.795509+00:00",
+ "finished_at": "2026-08-14T10:25:08.287372+00:00",
"object_count": 100,
"object_inventory": [
+ {
+ "byte_size": 12552,
+ "key": "observations/00e64846-7d5b-4642-b639-0cdcfb0aaa6b/15b5f92914195b4689fb72a65379ddfe54be32309e713612ab9fd0ba8231232c",
+ "sha256": "15b5f92914195b4689fb72a65379ddfe54be32309e713612ab9fd0ba8231232c"
+ },
+ {
+ "byte_size": 12528,
+ "key": "observations/0b34aa01-19c5-483a-b6b1-7010a99c01ef/d8cd5745de60b80ddbcc49714fe19fe4cb42fa70b27ed60a64af1eb85def8b0f",
+ "sha256": "d8cd5745de60b80ddbcc49714fe19fe4cb42fa70b27ed60a64af1eb85def8b0f"
+ },
+ {
+ "byte_size": 12612,
+ "key": "observations/0f2b028a-591b-4b4c-a437-48daaa8f8556/aad36cf1091ec61b8a9c0fd9a87bd6804cd05449a99877dc799f13d96726f4aa",
+ "sha256": "aad36cf1091ec61b8a9c0fd9a87bd6804cd05449a99877dc799f13d96726f4aa"
+ },
{
"byte_size": 12588,
- "key": "observations/01590fe3-e7ca-4e25-8b3a-1f3030e6885d/d8935227d741c829368468f14ee66e8253bef83a8cb6fe49e3d363464bfe90ea",
- "sha256": "d8935227d741c829368468f14ee66e8253bef83a8cb6fe49e3d363464bfe90ea"
+ "key": "observations/137655fe-2638-4d0f-a009-bcc9176dd0e7/a51d521be9793013395aac33cad16a4953a973d5ff0b38ad3c40a996a12e59ac",
+ "sha256": "a51d521be9793013395aac33cad16a4953a973d5ff0b38ad3c40a996a12e59ac"
+ },
+ {
+ "byte_size": 12552,
+ "key": "observations/151ccef8-ef3e-4d0f-8369-e7f7f608ef6f/15b5f92914195b4689fb72a65379ddfe54be32309e713612ab9fd0ba8231232c",
+ "sha256": "15b5f92914195b4689fb72a65379ddfe54be32309e713612ab9fd0ba8231232c"
+ },
+ {
+ "byte_size": 12528,
+ "key": "observations/159041f3-1d8e-434f-865e-5a0e66f96591/d8cd5745de60b80ddbcc49714fe19fe4cb42fa70b27ed60a64af1eb85def8b0f",
+ "sha256": "d8cd5745de60b80ddbcc49714fe19fe4cb42fa70b27ed60a64af1eb85def8b0f"
},
{
"byte_size": 12612,
- "key": "observations/072d4372-08f2-4c90-b42e-57af4ee751c1/aad36cf1091ec61b8a9c0fd9a87bd6804cd05449a99877dc799f13d96726f4aa",
+ "key": "observations/1883256d-5487-4a72-93c7-83c64118b1d6/a5e2da997bfdf576e90976ee6e41cf2857bf784047581585fe3a835eaf018af4",
+ "sha256": "a5e2da997bfdf576e90976ee6e41cf2857bf784047581585fe3a835eaf018af4"
+ },
+ {
+ "byte_size": 12612,
+ "key": "observations/18f399f9-3257-4620-b948-2169afffc583/aad36cf1091ec61b8a9c0fd9a87bd6804cd05449a99877dc799f13d96726f4aa",
"sha256": "aad36cf1091ec61b8a9c0fd9a87bd6804cd05449a99877dc799f13d96726f4aa"
},
{
"byte_size": 12612,
- "key": "observations/125d599f-5e20-4e67-8583-e8cdfd21f056/aad36cf1091ec61b8a9c0fd9a87bd6804cd05449a99877dc799f13d96726f4aa",
+ "key": "observations/1a161d49-a854-4da0-b7a4-de86aa4b9eef/aad36cf1091ec61b8a9c0fd9a87bd6804cd05449a99877dc799f13d96726f4aa",
"sha256": "aad36cf1091ec61b8a9c0fd9a87bd6804cd05449a99877dc799f13d96726f4aa"
},
{
- "byte_size": 12528,
- "key": "observations/135daa99-c98d-4d55-8207-e81b7f351cda/d8cd5745de60b80ddbcc49714fe19fe4cb42fa70b27ed60a64af1eb85def8b0f",
- "sha256": "d8cd5745de60b80ddbcc49714fe19fe4cb42fa70b27ed60a64af1eb85def8b0f"
+ "byte_size": 12612,
+ "key": "observations/1d42f522-20a4-4679-b64f-1d426a3d1828/aad36cf1091ec61b8a9c0fd9a87bd6804cd05449a99877dc799f13d96726f4aa",
+ "sha256": "aad36cf1091ec61b8a9c0fd9a87bd6804cd05449a99877dc799f13d96726f4aa"
},
{
"byte_size": 12612,
- "key": "observations/136f2ca6-1984-42a4-9266-82479854223f/aad36cf1091ec61b8a9c0fd9a87bd6804cd05449a99877dc799f13d96726f4aa",
+ "key": "observations/1fbf9d27-0eb2-44df-803d-9cb650cc32c7/aad36cf1091ec61b8a9c0fd9a87bd6804cd05449a99877dc799f13d96726f4aa",
"sha256": "aad36cf1091ec61b8a9c0fd9a87bd6804cd05449a99877dc799f13d96726f4aa"
},
{
"byte_size": 12612,
- "key": "observations/19937805-b191-4d42-bff5-ef2f6ada4fe8/a5e2da997bfdf576e90976ee6e41cf2857bf784047581585fe3a835eaf018af4",
- "sha256": "a5e2da997bfdf576e90976ee6e41cf2857bf784047581585fe3a835eaf018af4"
+ "key": "observations/22a57b2d-ead3-47f0-832d-7a8300d12991/aad36cf1091ec61b8a9c0fd9a87bd6804cd05449a99877dc799f13d96726f4aa",
+ "sha256": "aad36cf1091ec61b8a9c0fd9a87bd6804cd05449a99877dc799f13d96726f4aa"
},
{
- "byte_size": 12588,
- "key": "observations/1e330dca-c472-448e-b9b0-abb37eec951e/a51d521be9793013395aac33cad16a4953a973d5ff0b38ad3c40a996a12e59ac",
- "sha256": "a51d521be9793013395aac33cad16a4953a973d5ff0b38ad3c40a996a12e59ac"
+ "byte_size": 12612,
+ "key": "observations/242b4137-17f0-4fa0-95d3-15fa3479517b/aad36cf1091ec61b8a9c0fd9a87bd6804cd05449a99877dc799f13d96726f4aa",
+ "sha256": "aad36cf1091ec61b8a9c0fd9a87bd6804cd05449a99877dc799f13d96726f4aa"
},
{
"byte_size": 12588,
- "key": "observations/1e85d510-f597-405f-9351-eb5683f60ed3/a51d521be9793013395aac33cad16a4953a973d5ff0b38ad3c40a996a12e59ac",
- "sha256": "a51d521be9793013395aac33cad16a4953a973d5ff0b38ad3c40a996a12e59ac"
+ "key": "observations/2450a748-6614-4fed-ab61-687f9e96284a/d8935227d741c829368468f14ee66e8253bef83a8cb6fe49e3d363464bfe90ea",
+ "sha256": "d8935227d741c829368468f14ee66e8253bef83a8cb6fe49e3d363464bfe90ea"
},
{
- "byte_size": 12528,
- "key": "observations/1f674de1-c040-4f90-87b4-057558bd6230/d8cd5745de60b80ddbcc49714fe19fe4cb42fa70b27ed60a64af1eb85def8b0f",
- "sha256": "d8cd5745de60b80ddbcc49714fe19fe4cb42fa70b27ed60a64af1eb85def8b0f"
+ "byte_size": 12612,
+ "key": "observations/2c11298c-7cc8-4b64-b633-2dcdbffa24f1/a5e2da997bfdf576e90976ee6e41cf2857bf784047581585fe3a835eaf018af4",
+ "sha256": "a5e2da997bfdf576e90976ee6e41cf2857bf784047581585fe3a835eaf018af4"
},
{
"byte_size": 12588,
- "key": "observations/21c1f828-89e5-408c-8771-d2ff0f941d88/a51d521be9793013395aac33cad16a4953a973d5ff0b38ad3c40a996a12e59ac",
+ "key": "observations/2ddfa503-e912-44ec-bc85-57cad2b1cbef/a51d521be9793013395aac33cad16a4953a973d5ff0b38ad3c40a996a12e59ac",
"sha256": "a51d521be9793013395aac33cad16a4953a973d5ff0b38ad3c40a996a12e59ac"
},
{
"byte_size": 12612,
- "key": "observations/23809f10-2911-4424-ac25-74dd64d39835/a5e2da997bfdf576e90976ee6e41cf2857bf784047581585fe3a835eaf018af4",
+ "key": "observations/2fbddd90-0de9-4020-9a2a-601216479075/a5e2da997bfdf576e90976ee6e41cf2857bf784047581585fe3a835eaf018af4",
"sha256": "a5e2da997bfdf576e90976ee6e41cf2857bf784047581585fe3a835eaf018af4"
},
{
- "byte_size": 12552,
- "key": "observations/27b887d3-a2e9-44af-9a78-44b4bc07f6c2/15b5f92914195b4689fb72a65379ddfe54be32309e713612ab9fd0ba8231232c",
- "sha256": "15b5f92914195b4689fb72a65379ddfe54be32309e713612ab9fd0ba8231232c"
+ "byte_size": 12528,
+ "key": "observations/31ab9938-a72a-4770-9d33-e9d2e85bc8ad/d8cd5745de60b80ddbcc49714fe19fe4cb42fa70b27ed60a64af1eb85def8b0f",
+ "sha256": "d8cd5745de60b80ddbcc49714fe19fe4cb42fa70b27ed60a64af1eb85def8b0f"
},
{
- "byte_size": 12552,
- "key": "observations/28294cf5-321a-459b-90f2-d48c7a99d245/15b5f92914195b4689fb72a65379ddfe54be32309e713612ab9fd0ba8231232c",
- "sha256": "15b5f92914195b4689fb72a65379ddfe54be32309e713612ab9fd0ba8231232c"
+ "byte_size": 12612,
+ "key": "observations/32ef2a9f-ac43-417a-96ab-d2a1ee261e61/aad36cf1091ec61b8a9c0fd9a87bd6804cd05449a99877dc799f13d96726f4aa",
+ "sha256": "aad36cf1091ec61b8a9c0fd9a87bd6804cd05449a99877dc799f13d96726f4aa"
+ },
+ {
+ "byte_size": 12528,
+ "key": "observations/34a57c82-3407-428c-b788-07820ac053c9/d8cd5745de60b80ddbcc49714fe19fe4cb42fa70b27ed60a64af1eb85def8b0f",
+ "sha256": "d8cd5745de60b80ddbcc49714fe19fe4cb42fa70b27ed60a64af1eb85def8b0f"
+ },
+ {
+ "byte_size": 12612,
+ "key": "observations/34e1517f-006f-4a20-83e2-c9cb8bf76013/aad36cf1091ec61b8a9c0fd9a87bd6804cd05449a99877dc799f13d96726f4aa",
+ "sha256": "aad36cf1091ec61b8a9c0fd9a87bd6804cd05449a99877dc799f13d96726f4aa"
},
{
"byte_size": 12588,
- "key": "observations/2a15e30a-dd39-47a3-8ced-ede6c17e1263/d8935227d741c829368468f14ee66e8253bef83a8cb6fe49e3d363464bfe90ea",
- "sha256": "d8935227d741c829368468f14ee66e8253bef83a8cb6fe49e3d363464bfe90ea"
+ "key": "observations/367618ea-4656-4a19-b3d0-a2d785dc051d/a51d521be9793013395aac33cad16a4953a973d5ff0b38ad3c40a996a12e59ac",
+ "sha256": "a51d521be9793013395aac33cad16a4953a973d5ff0b38ad3c40a996a12e59ac"
},
{
"byte_size": 12612,
- "key": "observations/2ac4cf24-29e8-4db0-a91d-0fea1100c541/a5e2da997bfdf576e90976ee6e41cf2857bf784047581585fe3a835eaf018af4",
+ "key": "observations/385b45ec-ef19-4cf5-b824-59dfcb89df1a/a5e2da997bfdf576e90976ee6e41cf2857bf784047581585fe3a835eaf018af4",
"sha256": "a5e2da997bfdf576e90976ee6e41cf2857bf784047581585fe3a835eaf018af4"
},
+ {
+ "byte_size": 12588,
+ "key": "observations/3ac7ec2f-1498-4ccb-8a0d-384bb7b3e461/a51d521be9793013395aac33cad16a4953a973d5ff0b38ad3c40a996a12e59ac",
+ "sha256": "a51d521be9793013395aac33cad16a4953a973d5ff0b38ad3c40a996a12e59ac"
+ },
+ {
+ "byte_size": 12528,
+ "key": "observations/3b46d138-a70a-4494-8973-bfe2b3949bb3/d8cd5745de60b80ddbcc49714fe19fe4cb42fa70b27ed60a64af1eb85def8b0f",
+ "sha256": "d8cd5745de60b80ddbcc49714fe19fe4cb42fa70b27ed60a64af1eb85def8b0f"
+ },
{
"byte_size": 12528,
- "key": "observations/2e4a527c-df6b-48a9-aeed-259f81145504/d8cd5745de60b80ddbcc49714fe19fe4cb42fa70b27ed60a64af1eb85def8b0f",
+ "key": "observations/3c73f261-245b-4a8e-874f-8223348863d7/d8cd5745de60b80ddbcc49714fe19fe4cb42fa70b27ed60a64af1eb85def8b0f",
"sha256": "d8cd5745de60b80ddbcc49714fe19fe4cb42fa70b27ed60a64af1eb85def8b0f"
},
{
"byte_size": 12588,
- "key": "observations/33159243-2f76-409a-aefe-c516d8c6c0d7/d8935227d741c829368468f14ee66e8253bef83a8cb6fe49e3d363464bfe90ea",
- "sha256": "d8935227d741c829368468f14ee66e8253bef83a8cb6fe49e3d363464bfe90ea"
+ "key": "observations/3d003205-f527-44a1-b054-7a7c56f61baa/a51d521be9793013395aac33cad16a4953a973d5ff0b38ad3c40a996a12e59ac",
+ "sha256": "a51d521be9793013395aac33cad16a4953a973d5ff0b38ad3c40a996a12e59ac"
},
{
- "byte_size": 12528,
- "key": "observations/39c05254-5da1-43e2-9eed-044e22381b6f/d8cd5745de60b80ddbcc49714fe19fe4cb42fa70b27ed60a64af1eb85def8b0f",
- "sha256": "d8cd5745de60b80ddbcc49714fe19fe4cb42fa70b27ed60a64af1eb85def8b0f"
+ "byte_size": 12552,
+ "key": "observations/3ec20c72-ef7d-4976-8458-f77e4c0cdf95/15b5f92914195b4689fb72a65379ddfe54be32309e713612ab9fd0ba8231232c",
+ "sha256": "15b5f92914195b4689fb72a65379ddfe54be32309e713612ab9fd0ba8231232c"
},
{
- "byte_size": 12612,
- "key": "observations/3ee666c6-07f4-484b-9c39-266020796907/aad36cf1091ec61b8a9c0fd9a87bd6804cd05449a99877dc799f13d96726f4aa",
- "sha256": "aad36cf1091ec61b8a9c0fd9a87bd6804cd05449a99877dc799f13d96726f4aa"
+ "byte_size": 12552,
+ "key": "observations/40c209d6-8fa2-4c46-a5e1-bc3e52bf6800/15b5f92914195b4689fb72a65379ddfe54be32309e713612ab9fd0ba8231232c",
+ "sha256": "15b5f92914195b4689fb72a65379ddfe54be32309e713612ab9fd0ba8231232c"
},
{
"byte_size": 12612,
- "key": "observations/41a4fbd3-7748-4c64-8fc2-9d5e05c148a3/aad36cf1091ec61b8a9c0fd9a87bd6804cd05449a99877dc799f13d96726f4aa",
+ "key": "observations/44cbfa21-1aec-4c40-a2b2-ee7e885463a3/aad36cf1091ec61b8a9c0fd9a87bd6804cd05449a99877dc799f13d96726f4aa",
"sha256": "aad36cf1091ec61b8a9c0fd9a87bd6804cd05449a99877dc799f13d96726f4aa"
},
{
- "byte_size": 12552,
- "key": "observations/47bc04ef-6a51-48b1-bbca-68ecff5f7158/15b5f92914195b4689fb72a65379ddfe54be32309e713612ab9fd0ba8231232c",
- "sha256": "15b5f92914195b4689fb72a65379ddfe54be32309e713612ab9fd0ba8231232c"
+ "byte_size": 12528,
+ "key": "observations/49cafee4-4b11-4575-b93e-5d32091788a1/d8cd5745de60b80ddbcc49714fe19fe4cb42fa70b27ed60a64af1eb85def8b0f",
+ "sha256": "d8cd5745de60b80ddbcc49714fe19fe4cb42fa70b27ed60a64af1eb85def8b0f"
},
{
"byte_size": 12588,
- "key": "observations/47d20867-15c9-45bc-8889-18340a643a03/d8935227d741c829368468f14ee66e8253bef83a8cb6fe49e3d363464bfe90ea",
+ "key": "observations/4a29aec2-9501-4195-97e3-25eeb1014c87/d8935227d741c829368468f14ee66e8253bef83a8cb6fe49e3d363464bfe90ea",
"sha256": "d8935227d741c829368468f14ee66e8253bef83a8cb6fe49e3d363464bfe90ea"
},
{
- "byte_size": 12612,
- "key": "observations/47e0cf17-3b46-4ef7-bd1e-301a0b178d6c/a5e2da997bfdf576e90976ee6e41cf2857bf784047581585fe3a835eaf018af4",
- "sha256": "a5e2da997bfdf576e90976ee6e41cf2857bf784047581585fe3a835eaf018af4"
- },
- {
- "byte_size": 12612,
- "key": "observations/48759d52-8893-4de1-9344-b3ee0f5e48a8/aad36cf1091ec61b8a9c0fd9a87bd6804cd05449a99877dc799f13d96726f4aa",
- "sha256": "aad36cf1091ec61b8a9c0fd9a87bd6804cd05449a99877dc799f13d96726f4aa"
+ "byte_size": 12588,
+ "key": "observations/4aa64844-d429-49b2-acab-ff3288a90bcc/a51d521be9793013395aac33cad16a4953a973d5ff0b38ad3c40a996a12e59ac",
+ "sha256": "a51d521be9793013395aac33cad16a4953a973d5ff0b38ad3c40a996a12e59ac"
},
{
- "byte_size": 12612,
- "key": "observations/48dd37ad-ac19-4649-aac0-8fb0a40e95ea/aad36cf1091ec61b8a9c0fd9a87bd6804cd05449a99877dc799f13d96726f4aa",
- "sha256": "aad36cf1091ec61b8a9c0fd9a87bd6804cd05449a99877dc799f13d96726f4aa"
+ "byte_size": 12588,
+ "key": "observations/4c848945-5f9d-4ba2-9f42-a83d056553ed/d8935227d741c829368468f14ee66e8253bef83a8cb6fe49e3d363464bfe90ea",
+ "sha256": "d8935227d741c829368468f14ee66e8253bef83a8cb6fe49e3d363464bfe90ea"
},
{
"byte_size": 12528,
- "key": "observations/4cf918c1-a536-4f95-968e-7a5406ce59b7/d8cd5745de60b80ddbcc49714fe19fe4cb42fa70b27ed60a64af1eb85def8b0f",
+ "key": "observations/4e2327cc-9dea-464a-bfdd-cb24bb962bda/d8cd5745de60b80ddbcc49714fe19fe4cb42fa70b27ed60a64af1eb85def8b0f",
"sha256": "d8cd5745de60b80ddbcc49714fe19fe4cb42fa70b27ed60a64af1eb85def8b0f"
},
{
- "byte_size": 12552,
- "key": "observations/4d60587b-1e77-4a75-a65d-f8faca41f981/15b5f92914195b4689fb72a65379ddfe54be32309e713612ab9fd0ba8231232c",
- "sha256": "15b5f92914195b4689fb72a65379ddfe54be32309e713612ab9fd0ba8231232c"
+ "byte_size": 12612,
+ "key": "observations/4fe0557a-28e9-445f-8e86-7405dd47b5e3/aad36cf1091ec61b8a9c0fd9a87bd6804cd05449a99877dc799f13d96726f4aa",
+ "sha256": "aad36cf1091ec61b8a9c0fd9a87bd6804cd05449a99877dc799f13d96726f4aa"
},
{
"byte_size": 12588,
- "key": "observations/519d9e8c-7f1f-4fcf-9b02-a880ca86a268/d8935227d741c829368468f14ee66e8253bef83a8cb6fe49e3d363464bfe90ea",
+ "key": "observations/55ba9687-2da4-471a-976d-862126577ad3/d8935227d741c829368468f14ee66e8253bef83a8cb6fe49e3d363464bfe90ea",
"sha256": "d8935227d741c829368468f14ee66e8253bef83a8cb6fe49e3d363464bfe90ea"
},
{
"byte_size": 12588,
- "key": "observations/558dbdec-63cb-43c3-af7b-cd0dcfb867a8/a51d521be9793013395aac33cad16a4953a973d5ff0b38ad3c40a996a12e59ac",
+ "key": "observations/576e46db-760e-4304-936e-65a6a5027a05/a51d521be9793013395aac33cad16a4953a973d5ff0b38ad3c40a996a12e59ac",
"sha256": "a51d521be9793013395aac33cad16a4953a973d5ff0b38ad3c40a996a12e59ac"
},
{
- "byte_size": 12552,
- "key": "observations/58bc6b16-5c81-4b87-a0e8-81dec961885a/15b5f92914195b4689fb72a65379ddfe54be32309e713612ab9fd0ba8231232c",
- "sha256": "15b5f92914195b4689fb72a65379ddfe54be32309e713612ab9fd0ba8231232c"
+ "byte_size": 12528,
+ "key": "observations/5a8ac619-1e04-41aa-bb4d-0c97f6e210ed/d8cd5745de60b80ddbcc49714fe19fe4cb42fa70b27ed60a64af1eb85def8b0f",
+ "sha256": "d8cd5745de60b80ddbcc49714fe19fe4cb42fa70b27ed60a64af1eb85def8b0f"
},
{
"byte_size": 12552,
- "key": "observations/59cbeb32-5252-4d24-b89f-50f50964d679/15b5f92914195b4689fb72a65379ddfe54be32309e713612ab9fd0ba8231232c",
+ "key": "observations/5ba71a70-ce26-45d8-97a8-ac397b5c2ae1/15b5f92914195b4689fb72a65379ddfe54be32309e713612ab9fd0ba8231232c",
"sha256": "15b5f92914195b4689fb72a65379ddfe54be32309e713612ab9fd0ba8231232c"
},
{
"byte_size": 12588,
- "key": "observations/59ea5b03-51b3-403a-9a2d-1b852f3eaab5/a51d521be9793013395aac33cad16a4953a973d5ff0b38ad3c40a996a12e59ac",
- "sha256": "a51d521be9793013395aac33cad16a4953a973d5ff0b38ad3c40a996a12e59ac"
+ "key": "observations/605615d2-914f-4543-b5b0-f0a4b8bce588/d8935227d741c829368468f14ee66e8253bef83a8cb6fe49e3d363464bfe90ea",
+ "sha256": "d8935227d741c829368468f14ee66e8253bef83a8cb6fe49e3d363464bfe90ea"
},
{
- "byte_size": 12528,
- "key": "observations/5aa7cb86-8bb3-4506-9bd5-a768e251cb41/d8cd5745de60b80ddbcc49714fe19fe4cb42fa70b27ed60a64af1eb85def8b0f",
- "sha256": "d8cd5745de60b80ddbcc49714fe19fe4cb42fa70b27ed60a64af1eb85def8b0f"
+ "byte_size": 12552,
+ "key": "observations/60c1b1b6-173f-4375-afc2-67a5f2ae08aa/15b5f92914195b4689fb72a65379ddfe54be32309e713612ab9fd0ba8231232c",
+ "sha256": "15b5f92914195b4689fb72a65379ddfe54be32309e713612ab9fd0ba8231232c"
+ },
+ {
+ "byte_size": 12552,
+ "key": "observations/63c86416-3e69-49c6-9c26-7c19c7cad96d/15b5f92914195b4689fb72a65379ddfe54be32309e713612ab9fd0ba8231232c",
+ "sha256": "15b5f92914195b4689fb72a65379ddfe54be32309e713612ab9fd0ba8231232c"
},
{
"byte_size": 12528,
- "key": "observations/5b3e002f-5593-456a-9e46-d21e941ec43e/d8cd5745de60b80ddbcc49714fe19fe4cb42fa70b27ed60a64af1eb85def8b0f",
+ "key": "observations/6b985d61-1f60-44d9-881c-807d024beb86/d8cd5745de60b80ddbcc49714fe19fe4cb42fa70b27ed60a64af1eb85def8b0f",
"sha256": "d8cd5745de60b80ddbcc49714fe19fe4cb42fa70b27ed60a64af1eb85def8b0f"
},
{
"byte_size": 12612,
- "key": "observations/5bd63eff-2e2c-416a-aad2-ed12427e6a7e/aad36cf1091ec61b8a9c0fd9a87bd6804cd05449a99877dc799f13d96726f4aa",
- "sha256": "aad36cf1091ec61b8a9c0fd9a87bd6804cd05449a99877dc799f13d96726f4aa"
+ "key": "observations/73fc256b-6ce8-4142-961c-6777c9107c7f/a5e2da997bfdf576e90976ee6e41cf2857bf784047581585fe3a835eaf018af4",
+ "sha256": "a5e2da997bfdf576e90976ee6e41cf2857bf784047581585fe3a835eaf018af4"
},
{
"byte_size": 12612,
- "key": "observations/61890fc0-9ed1-4ed1-8db0-fd4c5b6318dc/aad36cf1091ec61b8a9c0fd9a87bd6804cd05449a99877dc799f13d96726f4aa",
- "sha256": "aad36cf1091ec61b8a9c0fd9a87bd6804cd05449a99877dc799f13d96726f4aa"
+ "key": "observations/79723cf5-99db-4b46-922d-9b1bff8c616b/a5e2da997bfdf576e90976ee6e41cf2857bf784047581585fe3a835eaf018af4",
+ "sha256": "a5e2da997bfdf576e90976ee6e41cf2857bf784047581585fe3a835eaf018af4"
},
{
"byte_size": 12588,
- "key": "observations/622a6919-2afb-4128-8f66-cf7871d9dd3b/a51d521be9793013395aac33cad16a4953a973d5ff0b38ad3c40a996a12e59ac",
- "sha256": "a51d521be9793013395aac33cad16a4953a973d5ff0b38ad3c40a996a12e59ac"
+ "key": "observations/7c83619d-4a96-4f3c-8b30-0e94f9d8c7e7/d8935227d741c829368468f14ee66e8253bef83a8cb6fe49e3d363464bfe90ea",
+ "sha256": "d8935227d741c829368468f14ee66e8253bef83a8cb6fe49e3d363464bfe90ea"
},
{
"byte_size": 12612,
- "key": "observations/68613b39-5b67-4f47-a4da-35ce5068f40b/aad36cf1091ec61b8a9c0fd9a87bd6804cd05449a99877dc799f13d96726f4aa",
- "sha256": "aad36cf1091ec61b8a9c0fd9a87bd6804cd05449a99877dc799f13d96726f4aa"
+ "key": "observations/7ddde011-de55-4b48-8979-a68b176eafaa/a5e2da997bfdf576e90976ee6e41cf2857bf784047581585fe3a835eaf018af4",
+ "sha256": "a5e2da997bfdf576e90976ee6e41cf2857bf784047581585fe3a835eaf018af4"
},
{
"byte_size": 12588,
- "key": "observations/6c0dcbcf-e8f3-484f-92fb-835a0a7021d0/a51d521be9793013395aac33cad16a4953a973d5ff0b38ad3c40a996a12e59ac",
+ "key": "observations/7f13ceee-76a2-4996-be86-6342a9ca4b14/a51d521be9793013395aac33cad16a4953a973d5ff0b38ad3c40a996a12e59ac",
"sha256": "a51d521be9793013395aac33cad16a4953a973d5ff0b38ad3c40a996a12e59ac"
},
+ {
+ "byte_size": 12588,
+ "key": "observations/7fb3eeee-7c16-4260-99c6-7663db4a0686/d8935227d741c829368468f14ee66e8253bef83a8cb6fe49e3d363464bfe90ea",
+ "sha256": "d8935227d741c829368468f14ee66e8253bef83a8cb6fe49e3d363464bfe90ea"
+ },
{
"byte_size": 12552,
- "key": "observations/6c3b6a35-8005-4b87-9352-3c102ea4e6e3/15b5f92914195b4689fb72a65379ddfe54be32309e713612ab9fd0ba8231232c",
+ "key": "observations/820f15e5-e222-46cc-b74e-6713d9e12e29/15b5f92914195b4689fb72a65379ddfe54be32309e713612ab9fd0ba8231232c",
"sha256": "15b5f92914195b4689fb72a65379ddfe54be32309e713612ab9fd0ba8231232c"
},
{
"byte_size": 12612,
- "key": "observations/6d0132f3-e034-4f94-9387-55c181663900/a5e2da997bfdf576e90976ee6e41cf2857bf784047581585fe3a835eaf018af4",
+ "key": "observations/847de2e8-745b-4ac9-8ab1-88ae19e70052/a5e2da997bfdf576e90976ee6e41cf2857bf784047581585fe3a835eaf018af4",
"sha256": "a5e2da997bfdf576e90976ee6e41cf2857bf784047581585fe3a835eaf018af4"
},
+ {
+ "byte_size": 12588,
+ "key": "observations/8794d3a7-3103-4f50-a299-daf90d776b17/d8935227d741c829368468f14ee66e8253bef83a8cb6fe49e3d363464bfe90ea",
+ "sha256": "d8935227d741c829368468f14ee66e8253bef83a8cb6fe49e3d363464bfe90ea"
+ },
{
"byte_size": 12612,
- "key": "observations/6de3894d-bc6f-4ae7-b3a7-51c97dd02403/aad36cf1091ec61b8a9c0fd9a87bd6804cd05449a99877dc799f13d96726f4aa",
+ "key": "observations/8c33bb8b-54d6-4e69-8398-19320e394cec/aad36cf1091ec61b8a9c0fd9a87bd6804cd05449a99877dc799f13d96726f4aa",
"sha256": "aad36cf1091ec61b8a9c0fd9a87bd6804cd05449a99877dc799f13d96726f4aa"
},
{
- "byte_size": 12588,
- "key": "observations/6f7443d7-6eef-4ff6-b011-31682267449a/a51d521be9793013395aac33cad16a4953a973d5ff0b38ad3c40a996a12e59ac",
- "sha256": "a51d521be9793013395aac33cad16a4953a973d5ff0b38ad3c40a996a12e59ac"
+ "byte_size": 12612,
+ "key": "observations/8d90f848-8386-4bf0-930d-497cde12520f/a5e2da997bfdf576e90976ee6e41cf2857bf784047581585fe3a835eaf018af4",
+ "sha256": "a5e2da997bfdf576e90976ee6e41cf2857bf784047581585fe3a835eaf018af4"
},
{
"byte_size": 12552,
- "key": "observations/72c5a640-a72e-4e7b-8ec0-f7807877a56a/15b5f92914195b4689fb72a65379ddfe54be32309e713612ab9fd0ba8231232c",
+ "key": "observations/91047a2e-1a9a-4af0-94e6-fc220010407f/15b5f92914195b4689fb72a65379ddfe54be32309e713612ab9fd0ba8231232c",
"sha256": "15b5f92914195b4689fb72a65379ddfe54be32309e713612ab9fd0ba8231232c"
},
{
"byte_size": 12588,
- "key": "observations/7886f262-3928-4622-b0aa-c10b8917bb73/d8935227d741c829368468f14ee66e8253bef83a8cb6fe49e3d363464bfe90ea",
+ "key": "observations/91ae41fa-7e87-483d-a5f6-8266748c5dc6/d8935227d741c829368468f14ee66e8253bef83a8cb6fe49e3d363464bfe90ea",
"sha256": "d8935227d741c829368468f14ee66e8253bef83a8cb6fe49e3d363464bfe90ea"
},
{
"byte_size": 12588,
- "key": "observations/78ef6b4e-b1ee-4618-b573-ef1007699e43/d8935227d741c829368468f14ee66e8253bef83a8cb6fe49e3d363464bfe90ea",
+ "key": "observations/94839296-cafa-4461-8bb6-de3afc49345d/d8935227d741c829368468f14ee66e8253bef83a8cb6fe49e3d363464bfe90ea",
"sha256": "d8935227d741c829368468f14ee66e8253bef83a8cb6fe49e3d363464bfe90ea"
},
{
"byte_size": 12612,
- "key": "observations/7a82b14e-f2c1-4679-b28a-9e0194e71e95/a5e2da997bfdf576e90976ee6e41cf2857bf784047581585fe3a835eaf018af4",
+ "key": "observations/9540a137-fb43-4c8c-b855-e85e4a1b0251/a5e2da997bfdf576e90976ee6e41cf2857bf784047581585fe3a835eaf018af4",
"sha256": "a5e2da997bfdf576e90976ee6e41cf2857bf784047581585fe3a835eaf018af4"
},
{
"byte_size": 12528,
- "key": "observations/7c6d06d3-0c61-485c-acf8-23d1b851dea2/d8cd5745de60b80ddbcc49714fe19fe4cb42fa70b27ed60a64af1eb85def8b0f",
+ "key": "observations/9593d9a2-c5d6-4967-9e3b-666a98adf108/d8cd5745de60b80ddbcc49714fe19fe4cb42fa70b27ed60a64af1eb85def8b0f",
"sha256": "d8cd5745de60b80ddbcc49714fe19fe4cb42fa70b27ed60a64af1eb85def8b0f"
},
{
- "byte_size": 12552,
- "key": "observations/7e46971f-d52e-4048-8764-c329f7108574/15b5f92914195b4689fb72a65379ddfe54be32309e713612ab9fd0ba8231232c",
- "sha256": "15b5f92914195b4689fb72a65379ddfe54be32309e713612ab9fd0ba8231232c"
+ "byte_size": 12528,
+ "key": "observations/974eecb8-5060-4d2c-880c-d046ebf5755f/d8cd5745de60b80ddbcc49714fe19fe4cb42fa70b27ed60a64af1eb85def8b0f",
+ "sha256": "d8cd5745de60b80ddbcc49714fe19fe4cb42fa70b27ed60a64af1eb85def8b0f"
},
{
- "byte_size": 12612,
- "key": "observations/806fe7bd-c12c-44c5-9b49-3da2372ee257/aad36cf1091ec61b8a9c0fd9a87bd6804cd05449a99877dc799f13d96726f4aa",
- "sha256": "aad36cf1091ec61b8a9c0fd9a87bd6804cd05449a99877dc799f13d96726f4aa"
+ "byte_size": 12588,
+ "key": "observations/98a1c7df-781a-41e3-8591-c7fbffb05b20/d8935227d741c829368468f14ee66e8253bef83a8cb6fe49e3d363464bfe90ea",
+ "sha256": "d8935227d741c829368468f14ee66e8253bef83a8cb6fe49e3d363464bfe90ea"
},
{
"byte_size": 12588,
- "key": "observations/84a30526-8931-4372-90f9-b60c1e111ed0/a51d521be9793013395aac33cad16a4953a973d5ff0b38ad3c40a996a12e59ac",
+ "key": "observations/9efd6265-dc3d-4fda-9984-e2b29681eda5/a51d521be9793013395aac33cad16a4953a973d5ff0b38ad3c40a996a12e59ac",
"sha256": "a51d521be9793013395aac33cad16a4953a973d5ff0b38ad3c40a996a12e59ac"
},
{
"byte_size": 12612,
- "key": "observations/86ba137f-61a2-4ac2-b91c-e690e4474b40/a5e2da997bfdf576e90976ee6e41cf2857bf784047581585fe3a835eaf018af4",
- "sha256": "a5e2da997bfdf576e90976ee6e41cf2857bf784047581585fe3a835eaf018af4"
- },
- {
- "byte_size": 12552,
- "key": "observations/87b5ce0a-2af4-481b-aa1f-c3c02dc28931/15b5f92914195b4689fb72a65379ddfe54be32309e713612ab9fd0ba8231232c",
- "sha256": "15b5f92914195b4689fb72a65379ddfe54be32309e713612ab9fd0ba8231232c"
- },
- {
- "byte_size": 12552,
- "key": "observations/8917decd-bef5-4230-8e03-1f0c56458e39/15b5f92914195b4689fb72a65379ddfe54be32309e713612ab9fd0ba8231232c",
- "sha256": "15b5f92914195b4689fb72a65379ddfe54be32309e713612ab9fd0ba8231232c"
+ "key": "observations/a1bc6249-fbc8-4959-bfbe-28a425045f05/aad36cf1091ec61b8a9c0fd9a87bd6804cd05449a99877dc799f13d96726f4aa",
+ "sha256": "aad36cf1091ec61b8a9c0fd9a87bd6804cd05449a99877dc799f13d96726f4aa"
},
{
"byte_size": 12588,
- "key": "observations/8a1487ce-d860-43d1-8d54-043be3122625/d8935227d741c829368468f14ee66e8253bef83a8cb6fe49e3d363464bfe90ea",
+ "key": "observations/a36da83d-db46-4670-a637-9ffe5e220810/d8935227d741c829368468f14ee66e8253bef83a8cb6fe49e3d363464bfe90ea",
"sha256": "d8935227d741c829368468f14ee66e8253bef83a8cb6fe49e3d363464bfe90ea"
},
{
"byte_size": 12612,
- "key": "observations/8a1bf94c-00ec-4b36-9a75-de568152b0cd/aad36cf1091ec61b8a9c0fd9a87bd6804cd05449a99877dc799f13d96726f4aa",
- "sha256": "aad36cf1091ec61b8a9c0fd9a87bd6804cd05449a99877dc799f13d96726f4aa"
- },
- {
- "byte_size": 12612,
- "key": "observations/8c8ea74e-2648-4dcb-bca7-0295f341a56e/aad36cf1091ec61b8a9c0fd9a87bd6804cd05449a99877dc799f13d96726f4aa",
+ "key": "observations/a53bebf9-6f36-4c6f-bc9d-fc971585fd0f/aad36cf1091ec61b8a9c0fd9a87bd6804cd05449a99877dc799f13d96726f4aa",
"sha256": "aad36cf1091ec61b8a9c0fd9a87bd6804cd05449a99877dc799f13d96726f4aa"
},
{
"byte_size": 12588,
- "key": "observations/94c8929d-f086-472b-b54d-4702739bb26f/d8935227d741c829368468f14ee66e8253bef83a8cb6fe49e3d363464bfe90ea",
+ "key": "observations/a9dbfd65-eaba-4d48-9d16-f06fd3ac7a5c/d8935227d741c829368468f14ee66e8253bef83a8cb6fe49e3d363464bfe90ea",
"sha256": "d8935227d741c829368468f14ee66e8253bef83a8cb6fe49e3d363464bfe90ea"
},
{
"byte_size": 12588,
- "key": "observations/96e3f7c3-fa35-46dd-bafa-9b3d66aad56d/a51d521be9793013395aac33cad16a4953a973d5ff0b38ad3c40a996a12e59ac",
- "sha256": "a51d521be9793013395aac33cad16a4953a973d5ff0b38ad3c40a996a12e59ac"
+ "key": "observations/ae40ec4a-9c7c-4bf0-b9cf-f52c96558d1c/d8935227d741c829368468f14ee66e8253bef83a8cb6fe49e3d363464bfe90ea",
+ "sha256": "d8935227d741c829368468f14ee66e8253bef83a8cb6fe49e3d363464bfe90ea"
},
{
"byte_size": 12588,
- "key": "observations/9ae3ef5b-65f1-4c96-9a9a-f9d7145f412b/d8935227d741c829368468f14ee66e8253bef83a8cb6fe49e3d363464bfe90ea",
+ "key": "observations/b00d7a14-4687-4129-85f8-9264f9e65afc/d8935227d741c829368468f14ee66e8253bef83a8cb6fe49e3d363464bfe90ea",
"sha256": "d8935227d741c829368468f14ee66e8253bef83a8cb6fe49e3d363464bfe90ea"
},
{
"byte_size": 12588,
- "key": "observations/9c646f85-7801-4760-b6c3-684cc20fda21/a51d521be9793013395aac33cad16a4953a973d5ff0b38ad3c40a996a12e59ac",
+ "key": "observations/b095a683-b126-4274-9777-6050a6ea4b50/a51d521be9793013395aac33cad16a4953a973d5ff0b38ad3c40a996a12e59ac",
"sha256": "a51d521be9793013395aac33cad16a4953a973d5ff0b38ad3c40a996a12e59ac"
},
{
- "byte_size": 12588,
- "key": "observations/9f330b2f-2e46-4923-9ddf-894e38a6627c/d8935227d741c829368468f14ee66e8253bef83a8cb6fe49e3d363464bfe90ea",
- "sha256": "d8935227d741c829368468f14ee66e8253bef83a8cb6fe49e3d363464bfe90ea"
+ "byte_size": 12552,
+ "key": "observations/b1aa75e3-6842-4408-acd8-826e35ee2508/15b5f92914195b4689fb72a65379ddfe54be32309e713612ab9fd0ba8231232c",
+ "sha256": "15b5f92914195b4689fb72a65379ddfe54be32309e713612ab9fd0ba8231232c"
},
{
"byte_size": 12528,
- "key": "observations/a2c40507-e440-4f6a-b166-87f5d619a9dd/d8cd5745de60b80ddbcc49714fe19fe4cb42fa70b27ed60a64af1eb85def8b0f",
+ "key": "observations/b27e92ae-eb8e-4576-bef9-b923334dcc71/d8cd5745de60b80ddbcc49714fe19fe4cb42fa70b27ed60a64af1eb85def8b0f",
"sha256": "d8cd5745de60b80ddbcc49714fe19fe4cb42fa70b27ed60a64af1eb85def8b0f"
},
{
- "byte_size": 12612,
- "key": "observations/a36a8519-635c-4a9a-89f7-e74603e5afb3/aad36cf1091ec61b8a9c0fd9a87bd6804cd05449a99877dc799f13d96726f4aa",
- "sha256": "aad36cf1091ec61b8a9c0fd9a87bd6804cd05449a99877dc799f13d96726f4aa"
+ "byte_size": 12552,
+ "key": "observations/b40b0b56-51d5-42bf-9fd8-fccbcec1b2a0/15b5f92914195b4689fb72a65379ddfe54be32309e713612ab9fd0ba8231232c",
+ "sha256": "15b5f92914195b4689fb72a65379ddfe54be32309e713612ab9fd0ba8231232c"
},
{
"byte_size": 12612,
- "key": "observations/ae704d06-66ad-4b3d-8fa0-bc5eab031700/a5e2da997bfdf576e90976ee6e41cf2857bf784047581585fe3a835eaf018af4",
+ "key": "observations/b5273feb-6224-47f5-9efe-ca8f5f2c50c3/a5e2da997bfdf576e90976ee6e41cf2857bf784047581585fe3a835eaf018af4",
"sha256": "a5e2da997bfdf576e90976ee6e41cf2857bf784047581585fe3a835eaf018af4"
},
- {
- "byte_size": 12528,
- "key": "observations/b20cf37e-2d82-44a8-9f5f-3aa42695fbc2/d8cd5745de60b80ddbcc49714fe19fe4cb42fa70b27ed60a64af1eb85def8b0f",
- "sha256": "d8cd5745de60b80ddbcc49714fe19fe4cb42fa70b27ed60a64af1eb85def8b0f"
- },
{
"byte_size": 12612,
- "key": "observations/b22d4364-8e6a-4c06-b612-f956d3aa2e77/a5e2da997bfdf576e90976ee6e41cf2857bf784047581585fe3a835eaf018af4",
+ "key": "observations/bc56f20c-e654-46aa-9329-4c05c20a0258/a5e2da997bfdf576e90976ee6e41cf2857bf784047581585fe3a835eaf018af4",
"sha256": "a5e2da997bfdf576e90976ee6e41cf2857bf784047581585fe3a835eaf018af4"
},
- {
- "byte_size": 12588,
- "key": "observations/b411eb8f-a546-4aa2-aaf3-3d790cbd5f05/a51d521be9793013395aac33cad16a4953a973d5ff0b38ad3c40a996a12e59ac",
- "sha256": "a51d521be9793013395aac33cad16a4953a973d5ff0b38ad3c40a996a12e59ac"
- },
{
"byte_size": 12552,
- "key": "observations/b5f6266d-f6f5-4109-a632-fca8823a3300/15b5f92914195b4689fb72a65379ddfe54be32309e713612ab9fd0ba8231232c",
+ "key": "observations/bd6c1f73-1291-4703-92c2-9c793ffd41d2/15b5f92914195b4689fb72a65379ddfe54be32309e713612ab9fd0ba8231232c",
"sha256": "15b5f92914195b4689fb72a65379ddfe54be32309e713612ab9fd0ba8231232c"
},
{
- "byte_size": 12612,
- "key": "observations/b9606d88-c543-461e-b948-1d89709557e4/a5e2da997bfdf576e90976ee6e41cf2857bf784047581585fe3a835eaf018af4",
- "sha256": "a5e2da997bfdf576e90976ee6e41cf2857bf784047581585fe3a835eaf018af4"
- },
- {
- "byte_size": 12588,
- "key": "observations/bc38c14c-d8fa-4954-b1ab-d2af6df6d2a9/d8935227d741c829368468f14ee66e8253bef83a8cb6fe49e3d363464bfe90ea",
- "sha256": "d8935227d741c829368468f14ee66e8253bef83a8cb6fe49e3d363464bfe90ea"
+ "byte_size": 12528,
+ "key": "observations/bdb5b719-89cc-472d-a336-428c7e07624e/d8cd5745de60b80ddbcc49714fe19fe4cb42fa70b27ed60a64af1eb85def8b0f",
+ "sha256": "d8cd5745de60b80ddbcc49714fe19fe4cb42fa70b27ed60a64af1eb85def8b0f"
},
{
"byte_size": 12528,
- "key": "observations/bf5c4dfe-40fa-4789-bf66-f9b667f105ed/d8cd5745de60b80ddbcc49714fe19fe4cb42fa70b27ed60a64af1eb85def8b0f",
+ "key": "observations/bfca9dea-5602-4bf5-afe2-c1a31ca3b1c9/d8cd5745de60b80ddbcc49714fe19fe4cb42fa70b27ed60a64af1eb85def8b0f",
"sha256": "d8cd5745de60b80ddbcc49714fe19fe4cb42fa70b27ed60a64af1eb85def8b0f"
},
{
"byte_size": 12612,
- "key": "observations/c04f2c07-1319-4eb0-bba8-f41a44594b72/a5e2da997bfdf576e90976ee6e41cf2857bf784047581585fe3a835eaf018af4",
- "sha256": "a5e2da997bfdf576e90976ee6e41cf2857bf784047581585fe3a835eaf018af4"
- },
- {
- "byte_size": 12528,
- "key": "observations/c2203cb6-dd54-49df-b83d-e3acc688ded5/d8cd5745de60b80ddbcc49714fe19fe4cb42fa70b27ed60a64af1eb85def8b0f",
- "sha256": "d8cd5745de60b80ddbcc49714fe19fe4cb42fa70b27ed60a64af1eb85def8b0f"
+ "key": "observations/c5e5e6d8-0f6e-4af6-81df-c86cfb376721/aad36cf1091ec61b8a9c0fd9a87bd6804cd05449a99877dc799f13d96726f4aa",
+ "sha256": "aad36cf1091ec61b8a9c0fd9a87bd6804cd05449a99877dc799f13d96726f4aa"
},
{
"byte_size": 12552,
- "key": "observations/c444ea0e-cfde-40b1-87ce-9ad7bb306d76/15b5f92914195b4689fb72a65379ddfe54be32309e713612ab9fd0ba8231232c",
+ "key": "observations/c7d1b4b9-44df-4daf-bdff-fbccd0c12995/15b5f92914195b4689fb72a65379ddfe54be32309e713612ab9fd0ba8231232c",
"sha256": "15b5f92914195b4689fb72a65379ddfe54be32309e713612ab9fd0ba8231232c"
},
{
"byte_size": 12588,
- "key": "observations/c624ec0a-5c8f-413f-99c0-c57e85617984/d8935227d741c829368468f14ee66e8253bef83a8cb6fe49e3d363464bfe90ea",
+ "key": "observations/c8cc2173-170c-49db-aba4-30a1c4dec9b4/d8935227d741c829368468f14ee66e8253bef83a8cb6fe49e3d363464bfe90ea",
"sha256": "d8935227d741c829368468f14ee66e8253bef83a8cb6fe49e3d363464bfe90ea"
},
{
"byte_size": 12588,
- "key": "observations/c6cbf15f-2f7c-43d7-b20f-40762aef8c16/a51d521be9793013395aac33cad16a4953a973d5ff0b38ad3c40a996a12e59ac",
+ "key": "observations/cb90286b-ca59-4dc4-8dce-cc7330a07373/a51d521be9793013395aac33cad16a4953a973d5ff0b38ad3c40a996a12e59ac",
"sha256": "a51d521be9793013395aac33cad16a4953a973d5ff0b38ad3c40a996a12e59ac"
},
{
- "byte_size": 12612,
- "key": "observations/cabc27fd-a974-417e-98c7-a16fa4bfa22a/a5e2da997bfdf576e90976ee6e41cf2857bf784047581585fe3a835eaf018af4",
- "sha256": "a5e2da997bfdf576e90976ee6e41cf2857bf784047581585fe3a835eaf018af4"
- },
- {
- "byte_size": 12528,
- "key": "observations/cb133b65-1429-4249-b345-1b7b78f28dea/d8cd5745de60b80ddbcc49714fe19fe4cb42fa70b27ed60a64af1eb85def8b0f",
- "sha256": "d8cd5745de60b80ddbcc49714fe19fe4cb42fa70b27ed60a64af1eb85def8b0f"
- },
- {
- "byte_size": 12552,
- "key": "observations/cbf3a329-e6f5-4794-a66a-c15f40da536c/15b5f92914195b4689fb72a65379ddfe54be32309e713612ab9fd0ba8231232c",
- "sha256": "15b5f92914195b4689fb72a65379ddfe54be32309e713612ab9fd0ba8231232c"
- },
- {
- "byte_size": 12528,
- "key": "observations/cd6374d8-0fa8-4a68-bf16-7c239a3a2bfe/d8cd5745de60b80ddbcc49714fe19fe4cb42fa70b27ed60a64af1eb85def8b0f",
- "sha256": "d8cd5745de60b80ddbcc49714fe19fe4cb42fa70b27ed60a64af1eb85def8b0f"
+ "byte_size": 12588,
+ "key": "observations/d691cf85-6cc4-4ff6-ae0e-e09eef28676b/d8935227d741c829368468f14ee66e8253bef83a8cb6fe49e3d363464bfe90ea",
+ "sha256": "d8935227d741c829368468f14ee66e8253bef83a8cb6fe49e3d363464bfe90ea"
},
{
"byte_size": 12612,
- "key": "observations/d0cb5535-5a73-4a33-9d7b-e2be378f10fc/a5e2da997bfdf576e90976ee6e41cf2857bf784047581585fe3a835eaf018af4",
+ "key": "observations/dd7df504-61ec-4fc1-bf35-643f8893eea6/a5e2da997bfdf576e90976ee6e41cf2857bf784047581585fe3a835eaf018af4",
"sha256": "a5e2da997bfdf576e90976ee6e41cf2857bf784047581585fe3a835eaf018af4"
},
{
"byte_size": 12588,
- "key": "observations/d384007b-c0c7-4a07-99e0-23d7fbbead56/a51d521be9793013395aac33cad16a4953a973d5ff0b38ad3c40a996a12e59ac",
+ "key": "observations/debea722-7e09-48fa-87da-b9497c61bed9/a51d521be9793013395aac33cad16a4953a973d5ff0b38ad3c40a996a12e59ac",
"sha256": "a51d521be9793013395aac33cad16a4953a973d5ff0b38ad3c40a996a12e59ac"
},
{
"byte_size": 12552,
- "key": "observations/d5de7bd1-021b-407e-ac83-a04f0ae3d654/15b5f92914195b4689fb72a65379ddfe54be32309e713612ab9fd0ba8231232c",
+ "key": "observations/dfa14842-a1ea-428c-a28a-5e5acfa69a27/15b5f92914195b4689fb72a65379ddfe54be32309e713612ab9fd0ba8231232c",
"sha256": "15b5f92914195b4689fb72a65379ddfe54be32309e713612ab9fd0ba8231232c"
},
{
"byte_size": 12612,
- "key": "observations/d70fc10d-5775-4e4a-abc1-d3ed2a3be71a/aad36cf1091ec61b8a9c0fd9a87bd6804cd05449a99877dc799f13d96726f4aa",
- "sha256": "aad36cf1091ec61b8a9c0fd9a87bd6804cd05449a99877dc799f13d96726f4aa"
- },
- {
- "byte_size": 12528,
- "key": "observations/da45a71c-0f1b-4522-81a5-9119a448adb4/d8cd5745de60b80ddbcc49714fe19fe4cb42fa70b27ed60a64af1eb85def8b0f",
- "sha256": "d8cd5745de60b80ddbcc49714fe19fe4cb42fa70b27ed60a64af1eb85def8b0f"
+ "key": "observations/e107ca1d-5f49-43ad-98d0-82bbd2161c5b/a5e2da997bfdf576e90976ee6e41cf2857bf784047581585fe3a835eaf018af4",
+ "sha256": "a5e2da997bfdf576e90976ee6e41cf2857bf784047581585fe3a835eaf018af4"
},
{
"byte_size": 12612,
- "key": "observations/db21d30b-ff2c-4431-8a8a-17a2ec046190/a5e2da997bfdf576e90976ee6e41cf2857bf784047581585fe3a835eaf018af4",
+ "key": "observations/e1227616-87a9-40fa-a733-02e093e69a7d/a5e2da997bfdf576e90976ee6e41cf2857bf784047581585fe3a835eaf018af4",
"sha256": "a5e2da997bfdf576e90976ee6e41cf2857bf784047581585fe3a835eaf018af4"
},
{
- "byte_size": 12612,
- "key": "observations/dd914774-38dd-492d-92fb-8420c8ab58b7/a5e2da997bfdf576e90976ee6e41cf2857bf784047581585fe3a835eaf018af4",
- "sha256": "a5e2da997bfdf576e90976ee6e41cf2857bf784047581585fe3a835eaf018af4"
+ "byte_size": 12528,
+ "key": "observations/e6c1a315-0053-44f1-ab79-0d798b52d8d9/d8cd5745de60b80ddbcc49714fe19fe4cb42fa70b27ed60a64af1eb85def8b0f",
+ "sha256": "d8cd5745de60b80ddbcc49714fe19fe4cb42fa70b27ed60a64af1eb85def8b0f"
},
{
"byte_size": 12588,
- "key": "observations/de49fa8b-4661-45f1-bea9-ca9608e9558a/d8935227d741c829368468f14ee66e8253bef83a8cb6fe49e3d363464bfe90ea",
- "sha256": "d8935227d741c829368468f14ee66e8253bef83a8cb6fe49e3d363464bfe90ea"
+ "key": "observations/e783df27-3418-4f00-8261-cd85844dc6e5/a51d521be9793013395aac33cad16a4953a973d5ff0b38ad3c40a996a12e59ac",
+ "sha256": "a51d521be9793013395aac33cad16a4953a973d5ff0b38ad3c40a996a12e59ac"
+ },
+ {
+ "byte_size": 12552,
+ "key": "observations/e873a878-dd73-43e8-a90a-d96ca6d3f952/15b5f92914195b4689fb72a65379ddfe54be32309e713612ab9fd0ba8231232c",
+ "sha256": "15b5f92914195b4689fb72a65379ddfe54be32309e713612ab9fd0ba8231232c"
},
{
"byte_size": 12612,
- "key": "observations/dee06c98-5df9-4d46-988b-3bedca9fab6c/a5e2da997bfdf576e90976ee6e41cf2857bf784047581585fe3a835eaf018af4",
+ "key": "observations/e99032a1-d0db-417c-afbb-7323c2916f43/a5e2da997bfdf576e90976ee6e41cf2857bf784047581585fe3a835eaf018af4",
"sha256": "a5e2da997bfdf576e90976ee6e41cf2857bf784047581585fe3a835eaf018af4"
},
{
"byte_size": 12588,
- "key": "observations/e47fe0e5-eb40-4c46-b582-cded270a7d80/d8935227d741c829368468f14ee66e8253bef83a8cb6fe49e3d363464bfe90ea",
- "sha256": "d8935227d741c829368468f14ee66e8253bef83a8cb6fe49e3d363464bfe90ea"
+ "key": "observations/eaa90654-d76d-4f1a-8518-7beae7bb8aa5/a51d521be9793013395aac33cad16a4953a973d5ff0b38ad3c40a996a12e59ac",
+ "sha256": "a51d521be9793013395aac33cad16a4953a973d5ff0b38ad3c40a996a12e59ac"
},
{
"byte_size": 12528,
- "key": "observations/e5c78838-d72a-4976-81cb-e80189296002/d8cd5745de60b80ddbcc49714fe19fe4cb42fa70b27ed60a64af1eb85def8b0f",
+ "key": "observations/eb15f57a-9453-455b-b698-b9c0c7392a7a/d8cd5745de60b80ddbcc49714fe19fe4cb42fa70b27ed60a64af1eb85def8b0f",
"sha256": "d8cd5745de60b80ddbcc49714fe19fe4cb42fa70b27ed60a64af1eb85def8b0f"
},
- {
- "byte_size": 12552,
- "key": "observations/ed089dbc-273b-410a-ae00-2adc2cdb48ce/15b5f92914195b4689fb72a65379ddfe54be32309e713612ab9fd0ba8231232c",
- "sha256": "15b5f92914195b4689fb72a65379ddfe54be32309e713612ab9fd0ba8231232c"
- },
- {
- "byte_size": 12588,
- "key": "observations/edbe2be0-d9ed-46d1-a4a5-41fe9f7e9536/d8935227d741c829368468f14ee66e8253bef83a8cb6fe49e3d363464bfe90ea",
- "sha256": "d8935227d741c829368468f14ee66e8253bef83a8cb6fe49e3d363464bfe90ea"
- },
{
"byte_size": 12612,
- "key": "observations/eedb969b-1a0d-45d1-a1e8-37cbea951417/a5e2da997bfdf576e90976ee6e41cf2857bf784047581585fe3a835eaf018af4",
- "sha256": "a5e2da997bfdf576e90976ee6e41cf2857bf784047581585fe3a835eaf018af4"
+ "key": "observations/ecfa5869-11b7-4ad4-b0f7-a6f92213a30b/aad36cf1091ec61b8a9c0fd9a87bd6804cd05449a99877dc799f13d96726f4aa",
+ "sha256": "aad36cf1091ec61b8a9c0fd9a87bd6804cd05449a99877dc799f13d96726f4aa"
},
{
- "byte_size": 12528,
- "key": "observations/f3bd9b1c-d26c-4cfd-bf74-58f35b299087/d8cd5745de60b80ddbcc49714fe19fe4cb42fa70b27ed60a64af1eb85def8b0f",
- "sha256": "d8cd5745de60b80ddbcc49714fe19fe4cb42fa70b27ed60a64af1eb85def8b0f"
+ "byte_size": 12588,
+ "key": "observations/f12df2e2-3626-4d3e-9350-dd8e497c4f47/a51d521be9793013395aac33cad16a4953a973d5ff0b38ad3c40a996a12e59ac",
+ "sha256": "a51d521be9793013395aac33cad16a4953a973d5ff0b38ad3c40a996a12e59ac"
},
{
"byte_size": 12552,
- "key": "observations/f3e4def2-6635-4026-9e1f-9fa2b0f3e4f2/15b5f92914195b4689fb72a65379ddfe54be32309e713612ab9fd0ba8231232c",
+ "key": "observations/f4470e01-9d79-49d6-938d-58dcd9696a0e/15b5f92914195b4689fb72a65379ddfe54be32309e713612ab9fd0ba8231232c",
"sha256": "15b5f92914195b4689fb72a65379ddfe54be32309e713612ab9fd0ba8231232c"
},
{
"byte_size": 12588,
- "key": "observations/f4eacdcc-0342-47d6-bdfb-ea7642655326/a51d521be9793013395aac33cad16a4953a973d5ff0b38ad3c40a996a12e59ac",
+ "key": "observations/f93cb898-46ff-4b94-a210-5daa4267fedf/a51d521be9793013395aac33cad16a4953a973d5ff0b38ad3c40a996a12e59ac",
"sha256": "a51d521be9793013395aac33cad16a4953a973d5ff0b38ad3c40a996a12e59ac"
},
{
- "byte_size": 12588,
- "key": "observations/f5360227-cf82-4423-9f17-fcc48f0e26df/a51d521be9793013395aac33cad16a4953a973d5ff0b38ad3c40a996a12e59ac",
- "sha256": "a51d521be9793013395aac33cad16a4953a973d5ff0b38ad3c40a996a12e59ac"
+ "byte_size": 12552,
+ "key": "observations/fa233469-95d6-4b96-a632-26b1e4e1930e/15b5f92914195b4689fb72a65379ddfe54be32309e713612ab9fd0ba8231232c",
+ "sha256": "15b5f92914195b4689fb72a65379ddfe54be32309e713612ab9fd0ba8231232c"
},
{
- "byte_size": 12588,
- "key": "observations/fca390dd-591a-4b30-9071-fba97647aaca/d8935227d741c829368468f14ee66e8253bef83a8cb6fe49e3d363464bfe90ea",
- "sha256": "d8935227d741c829368468f14ee66e8253bef83a8cb6fe49e3d363464bfe90ea"
+ "byte_size": 12612,
+ "key": "observations/fa5dde52-f4d2-49e6-9da6-9e0650f9f995/a5e2da997bfdf576e90976ee6e41cf2857bf784047581585fe3a835eaf018af4",
+ "sha256": "a5e2da997bfdf576e90976ee6e41cf2857bf784047581585fe3a835eaf018af4"
}
],
"passed": true,
- "postgres_dump_byte_size": 449513,
- "postgres_dump_sha256": "92f88920e58575f4133d56b3b34cadbea4b6fc737974f41eab840dcd28d0bf44",
- "restore_database": "labbridge_phase7_fault_release2_restore",
+ "postgres_dump_byte_size": 464208,
+ "postgres_dump_sha256": "aec69955914e004e923807c5b9f12dc8324978cd388f0fd96436003f0773a34d",
+ "restore_database": "labbridge_phase7_fault_release3_restore",
"restore_minio_distinct_instance": true,
"restored_object_checksums_verified": 100,
"restored_packages_fully_verified": 100,
- "source_database": "labbridge_phase7_fault_release2",
- "started_at": "2026-08-13T15:33:55.693985+00:00",
+ "source_database": "labbridge_phase7_fault_release3",
+ "started_at": "2026-08-14T10:24:43.515031+00:00",
"status": "PASSED",
"table_counts": {
"attempt_outcomes": 251,
@@ -524,6 +524,10 @@
"cv_structural_findings": 0,
"cv_transformation_records": 0,
"derived_metrics": 200,
+ "electrolysis_auxiliary_results": 0,
+ "electrolysis_import_profiles": 0,
+ "electrolysis_structural_findings": 0,
+ "electrolysis_transformation_records": 0,
"events": 2642,
"experiment_packages": 0,
"experiment_passports": 0,
@@ -534,6 +538,8 @@
"jobs": 200,
"metadata_assertions": 0,
"normalised_cv_observations": 0,
+ "normalised_electrolysis_observations": 0,
+ "normalised_observations": 0,
"observations": 200,
"record_relations": 0,
"source_artifacts": 0,
@@ -545,9 +551,9 @@
"writers_quiescent": true
},
"data_classification": "synthetic + replay",
- "generated_at": "2026-08-13T15:34:22.160631+00:00",
+ "generated_at": "2026-08-14T10:25:09.867923+00:00",
"limitations": [
- "The released run used generated synthetic fixture bytes in replay mode; it did not use observed HER archive bytes.",
+ "The released run used synthetic bytes in replay mode.",
"Future observed live execution remains outside Phase 7 and was not run.",
"Results cover only the recorded environment, seeds, and injected boundaries."
],
@@ -555,15 +561,15 @@
"campaign_rows_after": 1,
"campaign_rows_before": 1,
"contract_version_2_constraint_present": true,
- "database_name": "labbridge_phase7_fault_release2_migration",
- "duration_seconds": 0.156,
- "finished_at": "2026-08-13T15:34:22.160631+00:00",
+ "database_name": "labbridge_phase7_fault_release3_migration",
+ "duration_seconds": 0.234,
+ "finished_at": "2026-08-14T10:25:09.867923+00:00",
"from_revision": "74e1b6a09d22",
"legacy_contract_version_preserved": 1,
"passed": true,
- "started_at": "2026-08-13T15:34:19.798310+00:00",
+ "started_at": "2026-08-14T10:25:08.290634+00:00",
"status": "PASSED",
- "to_revision": "a93b7c1e4d62"
+ "to_revision": "d9c4e7a1b280"
},
"run_id": "phase7-20260813-100",
"schema_version": "1",
diff --git a/artifacts/fault-campaign/manifest.json b/artifacts/fault-campaign/manifest.json
index c69b80a..d01b79b 100644
--- a/artifacts/fault-campaign/manifest.json
+++ b/artifacts/fault-campaign/manifest.json
@@ -6,59 +6,59 @@
"execution_mode": "replay",
"files": [
{
- "byte_size": 285,
+ "byte_size": 224,
"name": "LIMITATIONS.md",
- "sha256": "f11c873e928504e8eaf7da72f6945dcb615a92991b531b403e4226b704be059f"
+ "sha256": "b479e90e84c58f52ee1d228bb3e82e6436b6db5bb8db0f01efb3fad1d200ddf8"
},
{
"byte_size": 214,
"name": "REPRODUCE.txt",
- "sha256": "2aa59b645184cb6894fa6dd793f848f062dcad310ecefeef7c44e68b6753af4b"
+ "sha256": "c2d7fe3cc84c6c271eee88478e9293ad59347ad65f800ee2047f735c00124ece"
},
{
- "byte_size": 75579,
+ "byte_size": 75577,
"name": "audit-log.jsonl",
- "sha256": "1ae669fa465df8ff4fdc4dcb5046abcb806f5fa78d26a4db082b07a5c338f48b"
+ "sha256": "a4dde66a6fd468bd16d63d2694c365a6019272cf60ddc202c337ed3d3066eb29"
},
{
- "byte_size": 26649,
+ "byte_size": 26899,
"name": "backup-restore.json",
- "sha256": "452fc936f4bc72fa04301ca108a336b51bac2772edfca31cd55b9d37dedb5bd9"
+ "sha256": "90da337b90e042ed595d7afb3cd4d707bf42168171d335092e2b4d477c5af9ff"
},
{
- "byte_size": 1668,
+ "byte_size": 2308,
"name": "environment-manifest.json",
- "sha256": "932bbab07d7eb97ae2cabeea731d58484e6d12f3ed250cf6bc7be979c6fbdb71"
+ "sha256": "91981c0fe46a926f7e9d84e6b460345971949fd1413b508bfa5a544f0927d544"
},
{
- "byte_size": 1485,
+ "byte_size": 1424,
"name": "fault-campaign-report.html",
- "sha256": "fb08b13786addcae2f501a20d4dbb01bcfea625324798d966f8668616d98792d"
+ "sha256": "249ba202043b2d2c3b30288cb3844b4d803d6c1b645386a13cfa780e8f4a29c7"
},
{
- "byte_size": 29421,
+ "byte_size": 29622,
"name": "fault-campaign-report.json",
- "sha256": "e03fbd2adfa426530da9dc36ca22148f8482a61678901ea7be5221f2c940aa9a"
+ "sha256": "105ac1b8663bafc0c8eee959ed3fa9240e6ecdf9abc7f0d4e0a4603aad68f722"
},
{
"byte_size": 457,
"name": "migration-checks.json",
- "sha256": "7d2bc785d2a0c3e7a19739c8ac007fe099e319767750f5464f8c58acf6ed4151"
+ "sha256": "910e99a46b184445f0cd62f9c96b8bd95fe2464c4d484d66b93e077b0736aa29"
},
{
"byte_size": 30803,
"name": "package-verifications.json",
- "sha256": "6f0656e8883c0e7d981d4a4fe392b5e9557c337383c972636b45009d379deb74"
+ "sha256": "f385477ea428ca5c28be7cb8ce9d47740b5ff7bc48bdd2212762b230ab9e137d"
},
{
- "byte_size": 1213429,
+ "byte_size": 1213305,
"name": "packages.zip",
- "sha256": "b1dbec349277b29bedcb4c113df193dd96c0a87c1445884f522c8423ad4a1146"
+ "sha256": "1de8ebfa0b8f9c0d5a1428d087f50d7632b6e8cc6968537ba2448bac0c1b0b1f"
},
{
- "byte_size": 41318,
+ "byte_size": 41316,
"name": "raw-results.csv",
- "sha256": "bf51941e1f8a6ed7e2a30f2ab73ee4f32a1ee268248d4fe9ebfd25a530de0c11"
+ "sha256": "c38e905046e47c0916dc8620398ef55084dbfde05b058cf9306fc1a4e3027b99"
},
{
"byte_size": 236,
@@ -71,7 +71,7 @@
"sha256": "e92d16b76eabf629c16663a3df535e5cd5d9217748ba64bf21d6294dd0f1ef08"
}
],
- "files_digest": "dc9f787ce2de0a1d4d3c075ecac4d28e594bbc50ea6834b4de537c0c451d318e",
+ "files_digest": "254d817a34dd43d56ea3103789faa9505f1199ec6b3729f0dc5b3635c6cf5740",
"run_id": "phase7-20260813-100",
"schema_version": "1",
"summary": {
diff --git a/artifacts/fault-campaign/migration-checks.json b/artifacts/fault-campaign/migration-checks.json
index f68b1c1..6963705 100644
--- a/artifacts/fault-campaign/migration-checks.json
+++ b/artifacts/fault-campaign/migration-checks.json
@@ -2,13 +2,13 @@
"campaign_rows_after": 1,
"campaign_rows_before": 1,
"contract_version_2_constraint_present": true,
- "database_name": "labbridge_phase7_fault_release2_migration",
- "duration_seconds": 0.156,
- "finished_at": "2026-08-13T15:34:22.160631+00:00",
+ "database_name": "labbridge_phase7_fault_release3_migration",
+ "duration_seconds": 0.234,
+ "finished_at": "2026-08-14T10:25:09.867923+00:00",
"from_revision": "74e1b6a09d22",
"legacy_contract_version_preserved": 1,
"passed": true,
- "started_at": "2026-08-13T15:34:19.798310+00:00",
+ "started_at": "2026-08-14T10:25:08.290634+00:00",
"status": "PASSED",
- "to_revision": "a93b7c1e4d62"
+ "to_revision": "d9c4e7a1b280"
}
diff --git a/artifacts/fault-campaign/package-verifications.json b/artifacts/fault-campaign/package-verifications.json
index 8cb81ba..42bcc9d 100644
--- a/artifacts/fault-campaign/package-verifications.json
+++ b/artifacts/fault-campaign/package-verifications.json
@@ -1,802 +1,802 @@
[
{
- "archive_sha256": "4f37655e611cb667f50e6fa89b6c9f4978578c439a50ed0532b564e4ab81f549",
- "campaign_id": "5aa7cb86-8bb3-4506-9bd5-a768e251cb41",
+ "archive_sha256": "86a7caa79c1741d73a7c912882a7abf7c2ab846be127338e8bbd18b1d8a13b4c",
+ "campaign_id": "6b985d61-1f60-44d9-881c-807d024beb86",
"objects_referenced": 2,
"objects_verified": 1,
- "package_id": "experiment-package:d830483adcf22ea942afde37b844b32b",
+ "package_id": "experiment-package:1414b041c81403865340375ce2d5cd9d",
"verified": true
},
{
- "archive_sha256": "816d01347e4ff9c443ac2e79d1be3ca8849bcfc58631e5f6a57a49db937dbcd3",
- "campaign_id": "7e46971f-d52e-4048-8764-c329f7108574",
+ "archive_sha256": "dfde9196df4488dbd1e5f786084d1a48116ca9c2ec3a232ddc3e41e986b42cfe",
+ "campaign_id": "3ec20c72-ef7d-4976-8458-f77e4c0cdf95",
"objects_referenced": 2,
"objects_verified": 1,
- "package_id": "experiment-package:741301eb11f96492aa45b7ad19ca0537",
+ "package_id": "experiment-package:1aa9c3cfbcb1c61fbd9efb7b04d24578",
"verified": true
},
{
- "archive_sha256": "160ba8970386a209f15ad9a40680751d2b290d943fca5c36e3f3e5d489b582ed",
- "campaign_id": "8a1487ce-d860-43d1-8d54-043be3122625",
+ "archive_sha256": "59e9845b5665c7711e67ba3b141bc17a7250b8a6cf99eef88c6245a62936132f",
+ "campaign_id": "d691cf85-6cc4-4ff6-ae0e-e09eef28676b",
"objects_referenced": 2,
"objects_verified": 1,
- "package_id": "experiment-package:287c5f158f59f061d24ef6ad5334bfe0",
+ "package_id": "experiment-package:977845b98cb7b844b52e04de5ea708dd",
"verified": true
},
{
- "archive_sha256": "9ea2627043a44db577aaa00b56dfabd45b460c2eddddb01de7f205e0b3ecc769",
- "campaign_id": "2ac4cf24-29e8-4db0-a91d-0fea1100c541",
+ "archive_sha256": "29d538eff169caf773dc4f362bd3b17b3d663e3edfdd054a830e7173d3be8188",
+ "campaign_id": "e99032a1-d0db-417c-afbb-7323c2916f43",
"objects_referenced": 2,
"objects_verified": 1,
- "package_id": "experiment-package:2aaa3659bf595499a159546d3cc8112d",
+ "package_id": "experiment-package:0afa5fd9864def08c5c9f13b9ed1c45b",
"verified": true
},
{
- "archive_sha256": "42de22f9f1c15e2a036b8e7fa4f5ccd9de959c303943244828fd6dc00ca78058",
- "campaign_id": "622a6919-2afb-4128-8f66-cf7871d9dd3b",
+ "archive_sha256": "26e6e6ce6b0e9daaf2c76e4a65450d05c4dc8c903cbc2ca02e1ffb7f3dee8008",
+ "campaign_id": "debea722-7e09-48fa-87da-b9497c61bed9",
"objects_referenced": 2,
"objects_verified": 1,
- "package_id": "experiment-package:e3992788f9e252d18c6cd188f0e15b77",
+ "package_id": "experiment-package:9b56e5ccf96f83051746cbddef119e45",
"verified": true
},
{
- "archive_sha256": "864eb7f6d4c7d37d7fa3f4fb3596ce6db832927036134ce87c730d6d9b1de512",
- "campaign_id": "41a4fbd3-7748-4c64-8fc2-9d5e05c148a3",
+ "archive_sha256": "6b82127f6ebbc7f2387472f9221be60bf4c382b17cb002faa8f128b8e2afc16c",
+ "campaign_id": "a1bc6249-fbc8-4959-bfbe-28a425045f05",
"objects_referenced": 2,
"objects_verified": 1,
- "package_id": "experiment-package:3487e6ab7da4309bcd689d19ea719220",
+ "package_id": "experiment-package:74bd13cf276c5d69481f85d14ef81331",
"verified": true
},
{
- "archive_sha256": "5741bce124d7cc5b3c543bcb03e0c3f94cdd2e9b1cb78f7ae276b460cd680152",
- "campaign_id": "135daa99-c98d-4d55-8207-e81b7f351cda",
+ "archive_sha256": "e5e1b6cc569e81942883c5cab902a9981e3357579e6b7b9e6331dd0cac107c57",
+ "campaign_id": "4e2327cc-9dea-464a-bfdd-cb24bb962bda",
"objects_referenced": 2,
"objects_verified": 1,
- "package_id": "experiment-package:e170c9ebfd2406e392247c0085e1bc4b",
+ "package_id": "experiment-package:7cad4e0b8f7c7b14e990b1aba26ad3aa",
"verified": true
},
{
- "archive_sha256": "70dc0e7527b67df20c963c08e96c35e5d75f1a986de53af2d954de24bea25a5a",
- "campaign_id": "cbf3a329-e6f5-4794-a66a-c15f40da536c",
+ "archive_sha256": "657c7d65d430459bd3c332622c8f2c45ecc672124b77152503be536c1dbbd1de",
+ "campaign_id": "63c86416-3e69-49c6-9c26-7c19c7cad96d",
"objects_referenced": 2,
"objects_verified": 1,
- "package_id": "experiment-package:3555f45ee336db0a8d297a293552fea6",
+ "package_id": "experiment-package:47999c9e3d7555b3a20655ec51fab20f",
"verified": true
},
{
- "archive_sha256": "5c8f2a67d232b3f0de5e10b59402a691c06c3c67b4550a833414b5b2ac86d29b",
- "campaign_id": "9ae3ef5b-65f1-4c96-9a9a-f9d7145f412b",
+ "archive_sha256": "b3f8ffdb5a08b115e3b8fe9cfa34530a260dbd9dd1b6ce5c13f3399859395040",
+ "campaign_id": "605615d2-914f-4543-b5b0-f0a4b8bce588",
"objects_referenced": 2,
"objects_verified": 1,
- "package_id": "experiment-package:b3cb9087918dee708cc948e7ed3eb62f",
+ "package_id": "experiment-package:ac75dc2e372bbfd60c3680ed755417a1",
"verified": true
},
{
- "archive_sha256": "7d8bab5b38a1e33f1f2e1bc3beea83c0299d03414cbce7f9dcf86b1903170fae",
- "campaign_id": "23809f10-2911-4424-ac25-74dd64d39835",
+ "archive_sha256": "c1b5dbf63957312b5223df33059dec364108cedfff52fe1457557a82e959901c",
+ "campaign_id": "fa5dde52-f4d2-49e6-9da6-9e0650f9f995",
"objects_referenced": 2,
"objects_verified": 1,
- "package_id": "experiment-package:c9db3422e399c52e0990962be3c267d4",
+ "package_id": "experiment-package:ea4cb92d87f72d93f41674ae3e664df7",
"verified": true
},
{
- "archive_sha256": "64105c27d4012dd589e4c7aa5d29c34387a29a8d1958397de5507bfb9dfb86d1",
- "campaign_id": "6c0dcbcf-e8f3-484f-92fb-835a0a7021d0",
+ "archive_sha256": "c244a3a25e4aa7929ce0472fb7e33c172e2fd72bdbaa83f7e3edcc6f9878a26b",
+ "campaign_id": "7f13ceee-76a2-4996-be86-6342a9ca4b14",
"objects_referenced": 2,
"objects_verified": 1,
- "package_id": "experiment-package:d743f30607dd6a33d09b6502984889dd",
+ "package_id": "experiment-package:852206b0f7b1135639e353dee147e933",
"verified": true
},
{
- "archive_sha256": "a79ae7fb92151f71702c329f96b7a155b63266824f91e5a7354504f8ddbf04b2",
- "campaign_id": "6de3894d-bc6f-4ae7-b3a7-51c97dd02403",
+ "archive_sha256": "4e0a33de9a4ec4e9afd4ffa1f6584158b2146cbbbbf546b78dd219c12c1ea240",
+ "campaign_id": "8c33bb8b-54d6-4e69-8398-19320e394cec",
"objects_referenced": 2,
"objects_verified": 1,
- "package_id": "experiment-package:417204090882c40e9125cac3c40976c9",
+ "package_id": "experiment-package:231bc333897664a1b5b9543ed2d259ca",
"verified": true
},
{
- "archive_sha256": "943ed85c8d260b03600e3dbeead631fefb66a200505a8b7fb51c968faec982db",
- "campaign_id": "c2203cb6-dd54-49df-b83d-e3acc688ded5",
+ "archive_sha256": "84f1c814fa769bc415fd5a8f4ad52f3c43ef96799a0a7c577326296414586bce",
+ "campaign_id": "eb15f57a-9453-455b-b698-b9c0c7392a7a",
"objects_referenced": 2,
"objects_verified": 1,
- "package_id": "experiment-package:871a2f7b4aab5391082d6db99f5e41e0",
+ "package_id": "experiment-package:b6f10393d1262459eace3aabdc4e1ad6",
"verified": true
},
{
- "archive_sha256": "c823fb56f379b11a4fc7b95a1baacc33491143d4df3e921d4d103efea8d9decc",
- "campaign_id": "47bc04ef-6a51-48b1-bbca-68ecff5f7158",
+ "archive_sha256": "ea07a61da7c0a0c1bafc48b5e847b296f9768cee8268554c7ade0b35c81e29c7",
+ "campaign_id": "151ccef8-ef3e-4d0f-8369-e7f7f608ef6f",
"objects_referenced": 2,
"objects_verified": 1,
- "package_id": "experiment-package:07af5010fa53b33796261a55c6b27296",
+ "package_id": "experiment-package:9b9ac01b74af9a8853a8873eb80524ae",
"verified": true
},
{
- "archive_sha256": "11fdde7ea02116a2ef91ee010d58755820f04bcdcc2ada7dedd007659f50c610",
- "campaign_id": "33159243-2f76-409a-aefe-c516d8c6c0d7",
+ "archive_sha256": "fce6f56e33c56eb3ad3d089aa53e3486618e5fd5287ba9282e0e061750375a00",
+ "campaign_id": "ae40ec4a-9c7c-4bf0-b9cf-f52c96558d1c",
"objects_referenced": 2,
"objects_verified": 1,
- "package_id": "experiment-package:238cc03519a77934070083471e36c0fe",
+ "package_id": "experiment-package:0555fed1abbd483a0fdbd917c8ce4805",
"verified": true
},
{
- "archive_sha256": "5241478f239ee0b127cac9df932488a5b508e6eb29829e63190425381d550b88",
- "campaign_id": "b22d4364-8e6a-4c06-b612-f956d3aa2e77",
+ "archive_sha256": "b3ab131411f9095f23d51f6524834b1c89671c6198cf50c9061bb21aa5b56698",
+ "campaign_id": "7ddde011-de55-4b48-8979-a68b176eafaa",
"objects_referenced": 2,
"objects_verified": 1,
- "package_id": "experiment-package:1b5dbe52ef773347016bfb981247a2fa",
+ "package_id": "experiment-package:22a3784d17204a82eedcdb2a27bcb0f9",
"verified": true
},
{
- "archive_sha256": "b53a3c373dcab41c627449e5bb12c48dcce01a3ee9af0547d846128a229e60fc",
- "campaign_id": "21c1f828-89e5-408c-8771-d2ff0f941d88",
+ "archive_sha256": "e76d6a93738dab3e093436a9002fec6d90a503e311461eaf13e8eededc3b2f90",
+ "campaign_id": "137655fe-2638-4d0f-a009-bcc9176dd0e7",
"objects_referenced": 2,
"objects_verified": 1,
- "package_id": "experiment-package:3e96faff730879951e6768f1b695e8e0",
+ "package_id": "experiment-package:0ea7d4987e61464380c5f4bdbd20bb58",
"verified": true
},
{
- "archive_sha256": "476963e6ba54a98b0fb9288a1965a9eb4247fb3a9accc796f2e8465c23fc5936",
- "campaign_id": "8a1bf94c-00ec-4b36-9a75-de568152b0cd",
+ "archive_sha256": "409ee8a971ac7f6e6ddcc94413eef8b280dc39f6ee4c1c3b6c175b1e7f8c9dc2",
+ "campaign_id": "c5e5e6d8-0f6e-4af6-81df-c86cfb376721",
"objects_referenced": 2,
"objects_verified": 1,
- "package_id": "experiment-package:5a2a1041069b06f2717446653ff005ee",
+ "package_id": "experiment-package:a132f5fe1649a05a80715eb0827a28b8",
"verified": true
},
{
- "archive_sha256": "37e67716f555640677c16438511420a113cffaa8b30901a9ab46016d1705d221",
- "campaign_id": "f3bd9b1c-d26c-4cfd-bf74-58f35b299087",
+ "archive_sha256": "605d4217b61a92f1dd04957125bb6aad9464632568d9514bf4fba438607d17ac",
+ "campaign_id": "b27e92ae-eb8e-4576-bef9-b923334dcc71",
"objects_referenced": 2,
"objects_verified": 1,
- "package_id": "experiment-package:52cbcfaa15c2be97692dc993f8476ca7",
+ "package_id": "experiment-package:e335bb813afe560ea22c59d70b255e68",
"verified": true
},
{
- "archive_sha256": "1402ba8c5a01f9eaf91696fa570ad82865ce7b9bb5c5e3dc9208f0f8394995aa",
- "campaign_id": "72c5a640-a72e-4e7b-8ec0-f7807877a56a",
+ "archive_sha256": "188cf0df0108fc7ac45252bb6c4b30bd13be5b549b6a005d7c8c7e842ca25644",
+ "campaign_id": "60c1b1b6-173f-4375-afc2-67a5f2ae08aa",
"objects_referenced": 2,
"objects_verified": 1,
- "package_id": "experiment-package:e21aecccb14c334619ac227c3f369afc",
+ "package_id": "experiment-package:786016bc979d5d2328c7905b31e79950",
"verified": true
},
{
- "archive_sha256": "6859ee95909706d00bd8064e7e97e3d2bfee2c04f18ad73abe1aa777d37f0434",
- "campaign_id": "2a15e30a-dd39-47a3-8ced-ede6c17e1263",
+ "archive_sha256": "f8b43cf5e473f4ca56cb2323298561888542e30d12ff3ef4e35b15c77ab7da1c",
+ "campaign_id": "4a29aec2-9501-4195-97e3-25eeb1014c87",
"objects_referenced": 2,
"objects_verified": 1,
- "package_id": "experiment-package:80d99e37693e90e732afa02b43d55f30",
+ "package_id": "experiment-package:78bdcb7ffe116250e0c0b796845656a4",
"verified": true
},
{
- "archive_sha256": "2434394ba81504a2bab28e33ba50f3b755908047d39794214512c7bd66248c05",
- "campaign_id": "cabc27fd-a974-417e-98c7-a16fa4bfa22a",
+ "archive_sha256": "ac2e6a9d738757b6fa24a61f46b47e2b547d5a4cbf03580a1340627907bb42dc",
+ "campaign_id": "e107ca1d-5f49-43ad-98d0-82bbd2161c5b",
"objects_referenced": 2,
"objects_verified": 1,
- "package_id": "experiment-package:51619d55b38a155c0df5192f7cd39010",
+ "package_id": "experiment-package:1d589d7de8e38831b299ddc0b6aebbb3",
"verified": true
},
{
- "archive_sha256": "b348b527dceae88e8b1da6cb1a7c7236cbc60ce3be57fda83b22760ac15b4a0b",
- "campaign_id": "6f7443d7-6eef-4ff6-b011-31682267449a",
+ "archive_sha256": "218b9c8478ffb4ae8f1a95a5593ca749918d5a6a7eb0300724884cd9b7065d96",
+ "campaign_id": "f12df2e2-3626-4d3e-9350-dd8e497c4f47",
"objects_referenced": 2,
"objects_verified": 1,
- "package_id": "experiment-package:d80128c270fcf4ff7134d776daf5270a",
+ "package_id": "experiment-package:7f78584f6f8625ecb8f36a9996bf022f",
"verified": true
},
{
- "archive_sha256": "cf1e1d677513cc4141af7ac4533f2f64c501460432940ffd00d96561916fdfe4",
- "campaign_id": "3ee666c6-07f4-484b-9c39-266020796907",
+ "archive_sha256": "7c173a1e461d4fb223982da8c3e6ef43dd605ed61450ce45a50201c505bf781e",
+ "campaign_id": "1d42f522-20a4-4679-b64f-1d426a3d1828",
"objects_referenced": 2,
"objects_verified": 1,
- "package_id": "experiment-package:aa232a2d36f796dbaa0f6f0f9b949138",
+ "package_id": "experiment-package:4b0b85f1eb4b6f123b181183bad05d90",
"verified": true
},
{
- "archive_sha256": "a8922c503e97399010d18327f0416fdd759f30d393a637798d7e75f2256af67b",
- "campaign_id": "2e4a527c-df6b-48a9-aeed-259f81145504",
+ "archive_sha256": "a55b516afd47c8ef324b11ac46b0deeef9b6ceac92e29c36a055896878282c21",
+ "campaign_id": "49cafee4-4b11-4575-b93e-5d32091788a1",
"objects_referenced": 2,
"objects_verified": 1,
- "package_id": "experiment-package:b25eded85e20ac852cd0ba7687e49a1f",
+ "package_id": "experiment-package:e8754a5fd2398e8084eff67ca6bc70fb",
"verified": true
},
{
- "archive_sha256": "fbcb7ca67566f3569535605d2b5afa1ba92851a1d3e9c7b50bd76d34d8efb923",
- "campaign_id": "4d60587b-1e77-4a75-a65d-f8faca41f981",
+ "archive_sha256": "03e409a18374d73b4558efcbce29fee002f6f7dd6dc70f42050605394d7787ce",
+ "campaign_id": "820f15e5-e222-46cc-b74e-6713d9e12e29",
"objects_referenced": 2,
"objects_verified": 1,
- "package_id": "experiment-package:16214a2357350c0743f4f7273081758b",
+ "package_id": "experiment-package:334431cdc11a92437302e92df434e00c",
"verified": true
},
{
- "archive_sha256": "60a6b3542ca81f313e83a3483605f84187afa0de3f0f557d5d4ebe16dcc3a400",
- "campaign_id": "e47fe0e5-eb40-4c46-b582-cded270a7d80",
+ "archive_sha256": "2db064f43e34aba7f8dba9492c3f783d38d24da72c3654cb3f51526a52b4e2f7",
+ "campaign_id": "a36da83d-db46-4670-a637-9ffe5e220810",
"objects_referenced": 2,
"objects_verified": 1,
- "package_id": "experiment-package:55a33b80025cc5dff7c5629b73518403",
+ "package_id": "experiment-package:d716bde40a0d9da20a9e9b0ef1dde77a",
"verified": true
},
{
- "archive_sha256": "ca3929da587bc9ea117c84444505e4a361ae5cfc9a03329d39f168db832aff16",
- "campaign_id": "dee06c98-5df9-4d46-988b-3bedca9fab6c",
+ "archive_sha256": "1de58c7ce3246b9a2d4fd37c3ea7b4378edad1fdeef4c1ea75379ecbdf32d9bd",
+ "campaign_id": "bc56f20c-e654-46aa-9329-4c05c20a0258",
"objects_referenced": 2,
"objects_verified": 1,
- "package_id": "experiment-package:49a39e9a15ca51d890090c2caf8605a3",
+ "package_id": "experiment-package:fd6bb3c3ec937a56a85178391c4a518a",
"verified": true
},
{
- "archive_sha256": "a1e7e27b268c60731aac08b024e17ea0082b8aebb0ad5df2242cafe15d76f389",
- "campaign_id": "558dbdec-63cb-43c3-af7b-cd0dcfb867a8",
+ "archive_sha256": "0b5ff33ea8f55a5c693d53c176d821bf4dca9406524a291275bb3320c860d78b",
+ "campaign_id": "4aa64844-d429-49b2-acab-ff3288a90bcc",
"objects_referenced": 2,
"objects_verified": 1,
- "package_id": "experiment-package:57cbe840c03bf0d2d7cee1a6e0db06fb",
+ "package_id": "experiment-package:ed21b79537fe093af093d5130a668f94",
"verified": true
},
{
- "archive_sha256": "efba10dedcf46f1a85d5b0719d479a7ed344f6f58196041685602d24998284ba",
- "campaign_id": "806fe7bd-c12c-44c5-9b49-3da2372ee257",
+ "archive_sha256": "4cf8decd23fd6d9e02aded6567ff64847692da4e30fd9875c7df193630b480c2",
+ "campaign_id": "22a57b2d-ead3-47f0-832d-7a8300d12991",
"objects_referenced": 2,
"objects_verified": 1,
- "package_id": "experiment-package:03398acacc0ac77644e1ce73ed497017",
+ "package_id": "experiment-package:795a09c7b337841a4ceccd6f6f6c0f4d",
"verified": true
},
{
- "archive_sha256": "5e4facdb600ec5811508c5f4469e033dfcb1c2dd2f5b1978cfa3b1dad15c0096",
- "campaign_id": "1f674de1-c040-4f90-87b4-057558bd6230",
+ "archive_sha256": "cf5e8a03221405d40400b3bf59d55ee31771a1e2ba1705ef22401501c31465c2",
+ "campaign_id": "974eecb8-5060-4d2c-880c-d046ebf5755f",
"objects_referenced": 2,
"objects_verified": 1,
- "package_id": "experiment-package:1b0ef670cfc4c13245e55998ccda7c0a",
+ "package_id": "experiment-package:190b0fb5901e6df80ffe8ef4d520d261",
"verified": true
},
{
- "archive_sha256": "3f45a495c519882a6f009a8fdc204f98d907b074a5045c8c807eb46223d489de",
- "campaign_id": "c444ea0e-cfde-40b1-87ce-9ad7bb306d76",
+ "archive_sha256": "07b7c0e978f9cc7b4c3287c3010a82f63eed125af8ec800ce34f3a8769d6d337",
+ "campaign_id": "c7d1b4b9-44df-4daf-bdff-fbccd0c12995",
"objects_referenced": 2,
"objects_verified": 1,
- "package_id": "experiment-package:9962b7c41c3ca9b6271957b5901ef69d",
+ "package_id": "experiment-package:e500de6d80f414dca4bc2f1ddedca5b3",
"verified": true
},
{
- "archive_sha256": "a680d90d3c162ffee4a62c6690699fd4fc8baee66431f01490691d756377dd0a",
- "campaign_id": "7886f262-3928-4622-b0aa-c10b8917bb73",
+ "archive_sha256": "10164a425c6f41d7e4142d576a23481693705d59c401feed3fcd3d13c3a64c7d",
+ "campaign_id": "4c848945-5f9d-4ba2-9f42-a83d056553ed",
"objects_referenced": 2,
"objects_verified": 1,
- "package_id": "experiment-package:eecb260badc1f7b287f3405c0f20557e",
+ "package_id": "experiment-package:855684756a8c0b00c45f1004826d60be",
"verified": true
},
{
- "archive_sha256": "c3519591ac8c39d4239edda5008aa4402726d61544007c72a87e58a6dc8473f2",
- "campaign_id": "ae704d06-66ad-4b3d-8fa0-bc5eab031700",
+ "archive_sha256": "eb54528914baa7eb133085440ad6798bf12847b273f6edc5ef016d0ba3d351d4",
+ "campaign_id": "385b45ec-ef19-4cf5-b824-59dfcb89df1a",
"objects_referenced": 2,
"objects_verified": 1,
- "package_id": "experiment-package:e1c3fff835834de977cfece3f739fa10",
+ "package_id": "experiment-package:b406045afe39c7d7c237f490972938e6",
"verified": true
},
{
- "archive_sha256": "4a68dc5e1b06b7759b03957050a69e54882f74a02dc9abfc247e6634340afea1",
- "campaign_id": "c6cbf15f-2f7c-43d7-b20f-40762aef8c16",
+ "archive_sha256": "667529ba16ae71a95b1faeae17e5aabfb282e3832a4cbd082bf11a4117bafcd5",
+ "campaign_id": "2ddfa503-e912-44ec-bc85-57cad2b1cbef",
"objects_referenced": 2,
"objects_verified": 1,
- "package_id": "experiment-package:507a82c6993a1673c3e5097e585bd5d7",
+ "package_id": "experiment-package:5ad8e5bf559421c20a7f45c8a37c80cc",
"verified": true
},
{
- "archive_sha256": "f4f8e50329054b7c02d14517d9f16afb241c2453dcb2ba4874a9ebb2b56ac04d",
- "campaign_id": "d70fc10d-5775-4e4a-abc1-d3ed2a3be71a",
+ "archive_sha256": "a29c82ffe88bb2ff0c2927a273b05275bccf220b08f8ce25509829cb502e62a2",
+ "campaign_id": "44cbfa21-1aec-4c40-a2b2-ee7e885463a3",
"objects_referenced": 2,
"objects_verified": 1,
- "package_id": "experiment-package:bf85bc02a15ecc32721941e0839a6c61",
+ "package_id": "experiment-package:04275c2306966be30b9e1656d9a076aa",
"verified": true
},
{
- "archive_sha256": "6b7a337a822ac03abc18ca88e974f6ecd66cd556ee86cfeb99155d4de254a30a",
- "campaign_id": "da45a71c-0f1b-4522-81a5-9119a448adb4",
+ "archive_sha256": "a8c75b620cd570fb1008b89d88b793f338efc59559a04409eb714ecc4d6c0f4c",
+ "campaign_id": "159041f3-1d8e-434f-865e-5a0e66f96591",
"objects_referenced": 2,
"objects_verified": 1,
- "package_id": "experiment-package:1788e4cfa47f6bc21c5b3d5f6c5ce212",
+ "package_id": "experiment-package:342178808f6a538bc652aa08de603218",
"verified": true
},
{
- "archive_sha256": "25008149c9079774fec75f485deaf72a318fa52bf269660aa308482d54eced88",
- "campaign_id": "d5de7bd1-021b-407e-ac83-a04f0ae3d654",
+ "archive_sha256": "a856cd9db82526c9c02cd192b0ccc976b12c204d40c1385e5e1a126b91c82b42",
+ "campaign_id": "e873a878-dd73-43e8-a90a-d96ca6d3f952",
"objects_referenced": 2,
"objects_verified": 1,
- "package_id": "experiment-package:977a46a49fbdf796398a96332cb6c6ac",
+ "package_id": "experiment-package:da7dac27d15dce8b8cdb0cede64d8dfe",
"verified": true
},
{
- "archive_sha256": "7312db1116a456cae1dac19fb10026a4e6818ccc1a980db66c15fee79d130b4a",
- "campaign_id": "47d20867-15c9-45bc-8889-18340a643a03",
+ "archive_sha256": "9b4e44283be839f950f352813ee516bd728bf87d3e01371d01959cee529a03f0",
+ "campaign_id": "8794d3a7-3103-4f50-a299-daf90d776b17",
"objects_referenced": 2,
"objects_verified": 1,
- "package_id": "experiment-package:94c6f2c4fb952c942b7ffcdab8a5bbc0",
+ "package_id": "experiment-package:08857decb1303af5567e73b40cf22189",
"verified": true
},
{
- "archive_sha256": "4a7bfdbbd898f29e1f32817c2b49046107250ad43b3776cc5387cfbc4b379164",
- "campaign_id": "6d0132f3-e034-4f94-9387-55c181663900",
+ "archive_sha256": "ce4f297a72df2591457177bf93c57b5f44942191f7e6e05897c8df01b536b07e",
+ "campaign_id": "b5273feb-6224-47f5-9efe-ca8f5f2c50c3",
"objects_referenced": 2,
"objects_verified": 1,
- "package_id": "experiment-package:0ad8c2ae3c03361f98ea27571e66765a",
+ "package_id": "experiment-package:715137e2d11e4b8e75c53fb59cb75059",
"verified": true
},
{
- "archive_sha256": "c20f96a0735b6a40a18f38beb7a31a15fa92a5cddf5e50f23501a801fe0b7206",
- "campaign_id": "f4eacdcc-0342-47d6-bdfb-ea7642655326",
+ "archive_sha256": "07c3b39ba5514028e3c280a10d22c5c3521335975ecf162438409b3e1c58af57",
+ "campaign_id": "f93cb898-46ff-4b94-a210-5daa4267fedf",
"objects_referenced": 2,
"objects_verified": 1,
- "package_id": "experiment-package:147277e8a006d46c0349c666e6564383",
+ "package_id": "experiment-package:7946d26c91cdb0e2edd5749ab563660e",
"verified": true
},
{
- "archive_sha256": "ff5482fc9eadd965da54ef6ed95e02f2645f92f4fda1a79779cf7ce9a9a701bc",
- "campaign_id": "5bd63eff-2e2c-416a-aad2-ed12427e6a7e",
+ "archive_sha256": "9dfa6e712dd65148674ea60aa4c3831a27ca57f345f5039056c4776cfd026c73",
+ "campaign_id": "1a161d49-a854-4da0-b7a4-de86aa4b9eef",
"objects_referenced": 2,
"objects_verified": 1,
- "package_id": "experiment-package:d1e2cc384e4f6268a2a959abdc11fbc1",
+ "package_id": "experiment-package:89dbbf871a17ce89062aedabb07a8615",
"verified": true
},
{
- "archive_sha256": "b9def2bac71026c8cac05332e9e6c82a2f3f4a08e580d77588a3b144311aa34d",
- "campaign_id": "cd6374d8-0fa8-4a68-bf16-7c239a3a2bfe",
+ "archive_sha256": "a95e1b5e7cedb632ad52cd25d8b83587658b9619226982981a78433769410022",
+ "campaign_id": "31ab9938-a72a-4770-9d33-e9d2e85bc8ad",
"objects_referenced": 2,
"objects_verified": 1,
- "package_id": "experiment-package:4fb88e7a1308c3e1ac9e70a86ac85126",
+ "package_id": "experiment-package:8d339395d474f70d0f1a52fa8d1e36e8",
"verified": true
},
{
- "archive_sha256": "8ef9e6b37c7f8e1f652c453cab997cd8bd78249a9641f42220d4e493bd410640",
- "campaign_id": "59cbeb32-5252-4d24-b89f-50f50964d679",
+ "archive_sha256": "4a2b50ded86f439c58ef1a20e737a65d5208b94343271c67531fe0caa1ec19d5",
+ "campaign_id": "fa233469-95d6-4b96-a632-26b1e4e1930e",
"objects_referenced": 2,
"objects_verified": 1,
- "package_id": "experiment-package:bed2b6816292bd4a094cb7582cd30c45",
+ "package_id": "experiment-package:8ed613c891650aed7a7fab94e302222f",
"verified": true
},
{
- "archive_sha256": "b36945a1356689361f9815c51080dacc7a7c1bfb9d55e6cc665408a11ac4f0fc",
- "campaign_id": "bc38c14c-d8fa-4954-b1ab-d2af6df6d2a9",
+ "archive_sha256": "854b35ac108acee9a7241e80a1aacd3349e6bb0bd266c4d87ba10ff252550a71",
+ "campaign_id": "a9dbfd65-eaba-4d48-9d16-f06fd3ac7a5c",
"objects_referenced": 2,
"objects_verified": 1,
- "package_id": "experiment-package:4f1ca0510c6492a514296a2e61791f8c",
+ "package_id": "experiment-package:2d0717e0ead865dcd5500dd3097117d2",
"verified": true
},
{
- "archive_sha256": "706dd051261ca8b027584e79e5936d0d6243c69ca55fe896bcfd7262f49ada8e",
- "campaign_id": "d0cb5535-5a73-4a33-9d7b-e2be378f10fc",
+ "archive_sha256": "eab094487747bdcbd856a2b8a07ea1b3ccdb138911163f37db1686c9fc1063f1",
+ "campaign_id": "9540a137-fb43-4c8c-b855-e85e4a1b0251",
"objects_referenced": 2,
"objects_verified": 1,
- "package_id": "experiment-package:f3d91789d04ac5955dabf3f10ef96251",
+ "package_id": "experiment-package:2143d8a976ed2b9ec0e75cca8e3b36b7",
"verified": true
},
{
- "archive_sha256": "244d7942840ba37c3625e72cf28e6bc78d416742fbe789c7aec736b8f6078a0d",
- "campaign_id": "59ea5b03-51b3-403a-9a2d-1b852f3eaab5",
+ "archive_sha256": "c003e43e79a17123d6f5685da76dc4ce6290468638cf0643b449dfd206a389d9",
+ "campaign_id": "eaa90654-d76d-4f1a-8518-7beae7bb8aa5",
"objects_referenced": 2,
"objects_verified": 1,
- "package_id": "experiment-package:5605e96f69515408b416199350a47430",
+ "package_id": "experiment-package:be65096c0a0d7f9974e87294a9bb72c5",
"verified": true
},
{
- "archive_sha256": "ab18d03c56101b4159920c2ee4a0be65ab544432b9f3a6152774e0f16ad4afee",
- "campaign_id": "48dd37ad-ac19-4649-aac0-8fb0a40e95ea",
+ "archive_sha256": "7d2946981fe98e720c00b8814558fb367c7fa16ef275fdc1b30948a1f0c9ac3d",
+ "campaign_id": "242b4137-17f0-4fa0-95d3-15fa3479517b",
"objects_referenced": 2,
"objects_verified": 1,
- "package_id": "experiment-package:3979beacef41ee48bb0cfeb8ee2447af",
+ "package_id": "experiment-package:ec8aef445a6bb803caa99707e29ee9a1",
"verified": true
},
{
- "archive_sha256": "695573658476c583a4c8bd3af640839a9e64b816bf9838978251683297e41db1",
- "campaign_id": "7c6d06d3-0c61-485c-acf8-23d1b851dea2",
+ "archive_sha256": "429eb4e9f09fdbce9d2f31af69ef10609c5b0bc6e41b8d4ac5309d77da0dca7b",
+ "campaign_id": "bfca9dea-5602-4bf5-afe2-c1a31ca3b1c9",
"objects_referenced": 2,
"objects_verified": 1,
- "package_id": "experiment-package:7510f371664e2a78d4b2e52bfcabe29f",
+ "package_id": "experiment-package:490400f30c4ff69ab4b4abac68e8e13b",
"verified": true
},
{
- "archive_sha256": "f774c97c8b5cb913abe202028be4f7bfd4eacbeadf6861e6a105472df667641f",
- "campaign_id": "87b5ce0a-2af4-481b-aa1f-c3c02dc28931",
+ "archive_sha256": "071adbd418a996346b9bc63644f20ba73e0109c3fb0f6dd0cade425c92905626",
+ "campaign_id": "bd6c1f73-1291-4703-92c2-9c793ffd41d2",
"objects_referenced": 2,
"objects_verified": 1,
- "package_id": "experiment-package:3475d93f617876a2e46376f6ff614db5",
+ "package_id": "experiment-package:b95ef8ea7c840c1529a491ce20184600",
"verified": true
},
{
- "archive_sha256": "92e05080ed5d226eba221749b0129181a725d999683a686e10850a3234e1cfa6",
- "campaign_id": "c624ec0a-5c8f-413f-99c0-c57e85617984",
+ "archive_sha256": "0de9a76ce3c2b8c28925e0c860044486c6a8b0397974b0aebb9c00e39fa2a97f",
+ "campaign_id": "7fb3eeee-7c16-4260-99c6-7663db4a0686",
"objects_referenced": 2,
"objects_verified": 1,
- "package_id": "experiment-package:d44b07df708942f47df26b2137b093e4",
+ "package_id": "experiment-package:e177be90069e30c17e879d270bc44d6b",
"verified": true
},
{
- "archive_sha256": "e98fa2dce9ffcefadf1c9e0f296b9ed945afed8aa37a34f692be48b3b714103e",
- "campaign_id": "db21d30b-ff2c-4431-8a8a-17a2ec046190",
+ "archive_sha256": "de8c5c603d366cc58a9b383645e2e93224a6a16be68776c2c3280ac54aaf6903",
+ "campaign_id": "dd7df504-61ec-4fc1-bf35-643f8893eea6",
"objects_referenced": 2,
"objects_verified": 1,
- "package_id": "experiment-package:c145488cc9dbc636a0d84264ba9250a4",
+ "package_id": "experiment-package:7eace65381e92bbbb4996253c1ebcd16",
"verified": true
},
{
- "archive_sha256": "ebe272bbb36fcf0d6f63259279e916fab8913a0fb61285a4c8b907b12b33fa2f",
- "campaign_id": "96e3f7c3-fa35-46dd-bafa-9b3d66aad56d",
+ "archive_sha256": "12de92dcc6236a5c102e38b7be9f0c6f8445018aaa3db85a92c74d84013af51a",
+ "campaign_id": "367618ea-4656-4a19-b3d0-a2d785dc051d",
"objects_referenced": 2,
"objects_verified": 1,
- "package_id": "experiment-package:8edf504cc899b56acd2d05dd18cb2ceb",
+ "package_id": "experiment-package:09123c8bb92aa064364c32ab5c2a6069",
"verified": true
},
{
- "archive_sha256": "c7c67bb391a9f9e897e3d25bf42f98e37ed8894d1d17bb814a97c85dac3739c8",
- "campaign_id": "125d599f-5e20-4e67-8583-e8cdfd21f056",
+ "archive_sha256": "9fe56d67d403e006a43bc04a6cbca0ec4e8bc1a192f2d39dac5e99d49d75b014",
+ "campaign_id": "4fe0557a-28e9-445f-8e86-7405dd47b5e3",
"objects_referenced": 2,
"objects_verified": 1,
- "package_id": "experiment-package:0a3045b268a310525c1daf1866400d3c",
+ "package_id": "experiment-package:2a560cc595c952d6fe497e60d3848fbf",
"verified": true
},
{
- "archive_sha256": "5893a518422290094627dbe0bd1fd44272d4ab713a2983f734c3018a98c289f5",
- "campaign_id": "bf5c4dfe-40fa-4789-bf66-f9b667f105ed",
+ "archive_sha256": "1dbd57652ff9bb6a0b10c11d18c4a4bdb0e93e3e2f7784a6b1f91a3009b06b1b",
+ "campaign_id": "0b34aa01-19c5-483a-b6b1-7010a99c01ef",
"objects_referenced": 2,
"objects_verified": 1,
- "package_id": "experiment-package:e6c1d159f4477c0b4afb0a6aed1c412b",
+ "package_id": "experiment-package:579d19792c647dca3a9ead1bc84ab924",
"verified": true
},
{
- "archive_sha256": "8fac3971102e9fe6a927cbbe4cad8f0b74716879f4c6d2726a84272af26c1619",
- "campaign_id": "28294cf5-321a-459b-90f2-d48c7a99d245",
+ "archive_sha256": "012195d884372706014c2852d9d32536799e4f77fadc79646a5f4f0e923495df",
+ "campaign_id": "5ba71a70-ce26-45d8-97a8-ac397b5c2ae1",
"objects_referenced": 2,
"objects_verified": 1,
- "package_id": "experiment-package:ef6e24fe8073ef1c587d3d67e6352267",
+ "package_id": "experiment-package:ebd7a626a5683935d58c76278308acad",
"verified": true
},
{
- "archive_sha256": "86c1b6017c997494302bdeb0bb2c0f41411d185a48bc84ce77dcac643bbc375c",
- "campaign_id": "78ef6b4e-b1ee-4618-b573-ef1007699e43",
+ "archive_sha256": "468246c754d72ffa458c2b94668da1db11049f221123188fb83ffb0137ffdac8",
+ "campaign_id": "98a1c7df-781a-41e3-8591-c7fbffb05b20",
"objects_referenced": 2,
"objects_verified": 1,
- "package_id": "experiment-package:af7df53822c9cda3a6029a2d0adeb213",
+ "package_id": "experiment-package:88abd582847dbc3689b8f18921162c27",
"verified": true
},
{
- "archive_sha256": "794b411fbae6b5a42768e346ecb21a1113a19d890b32248510ef114e28ea8031",
- "campaign_id": "c04f2c07-1319-4eb0-bba8-f41a44594b72",
+ "archive_sha256": "7e23500b3a675ce3ccf78c7bd727c009f1ccf81a957da8fb859fbda767e23be7",
+ "campaign_id": "847de2e8-745b-4ac9-8ab1-88ae19e70052",
"objects_referenced": 2,
"objects_verified": 1,
- "package_id": "experiment-package:26f2aa5185fbc3cd0ebca82e87cd1bef",
+ "package_id": "experiment-package:6d165833d8ce45087f8e65bbc250f078",
"verified": true
},
{
- "archive_sha256": "d9a6ddc5a0b9b55c85a70206668b5d40d73c351b5aa80cc77c0aa22ebfe428a1",
- "campaign_id": "b411eb8f-a546-4aa2-aaf3-3d790cbd5f05",
+ "archive_sha256": "8ba5bb0a3aa37f8d4c1e41095f918ef2f87e9185dc98e280eea2909761bcc67b",
+ "campaign_id": "b095a683-b126-4274-9777-6050a6ea4b50",
"objects_referenced": 2,
"objects_verified": 1,
- "package_id": "experiment-package:70f05379470b5ff03420fa79aa00b7f9",
+ "package_id": "experiment-package:b7c705b23f398a0c321864398a75b8d8",
"verified": true
},
{
- "archive_sha256": "7c1f3fb2cf39619bf0bc76ac93957250b94e6943477d82168568cac60e9c8312",
- "campaign_id": "a36a8519-635c-4a9a-89f7-e74603e5afb3",
+ "archive_sha256": "cf80ca44ba7ae4dad06ad8dcf36d77ba586243c3efb2e63cdafdfe380f713b23",
+ "campaign_id": "a53bebf9-6f36-4c6f-bc9d-fc971585fd0f",
"objects_referenced": 2,
"objects_verified": 1,
- "package_id": "experiment-package:ac1ab626b34d48e7c52bb0535780ea57",
+ "package_id": "experiment-package:425980201bf94fd654ee5e64137f1806",
"verified": true
},
{
- "archive_sha256": "db7e55cf5d6297e28adaba162d5a78aea684ea8db0b77370593084357f5d58d6",
- "campaign_id": "b20cf37e-2d82-44a8-9f5f-3aa42695fbc2",
+ "archive_sha256": "3feb58dd76f556ffc462f42f85a24b5b67cead484f719cd3bd3886cb5cee99ee",
+ "campaign_id": "bdb5b719-89cc-472d-a336-428c7e07624e",
"objects_referenced": 2,
"objects_verified": 1,
- "package_id": "experiment-package:151eec45cf4c45784f43b7e7b5695ed5",
+ "package_id": "experiment-package:f926164c5a0af2ee8e2c43f442432679",
"verified": true
},
{
- "archive_sha256": "3d832c83c7794699f100087e73da9aa4adc94bdd7cd3f0d0644d296c4149a983",
- "campaign_id": "8917decd-bef5-4230-8e03-1f0c56458e39",
+ "archive_sha256": "3970268b0ed8317c34748825143463eb8fd0bf2ac4db620ce6dbcb6254db4d59",
+ "campaign_id": "00e64846-7d5b-4642-b639-0cdcfb0aaa6b",
"objects_referenced": 2,
"objects_verified": 1,
- "package_id": "experiment-package:d4456cd68fb71aee1b6f6414370729fa",
+ "package_id": "experiment-package:24862b75bb7bc68a510a160e148c7e13",
"verified": true
},
{
- "archive_sha256": "428dfe470b4103d9e99a98ed35a256e6a4e63b5f24a37a0dc623f70ad25a98b2",
- "campaign_id": "de49fa8b-4661-45f1-bea9-ca9608e9558a",
+ "archive_sha256": "0ce020fbcc4c631d24e3f7083a0e38972e8b6a1e4e56404d902c2914cdbd5fe9",
+ "campaign_id": "7c83619d-4a96-4f3c-8b30-0e94f9d8c7e7",
"objects_referenced": 2,
"objects_verified": 1,
- "package_id": "experiment-package:a6f60c77e44f4a5b75f0849c78a69677",
+ "package_id": "experiment-package:8c5f87417a091a38927e0312e1ae7116",
"verified": true
},
{
- "archive_sha256": "fb7da99237db2d882718654cc833317b030a9c570c98448ce82f7072913b7ba6",
- "campaign_id": "86ba137f-61a2-4ac2-b91c-e690e4474b40",
+ "archive_sha256": "f47b71a1b8729f737db738c0d111ce82bfb86b5baf91908958f8058ecd949f27",
+ "campaign_id": "2c11298c-7cc8-4b64-b633-2dcdbffa24f1",
"objects_referenced": 2,
"objects_verified": 1,
- "package_id": "experiment-package:bad71cecccadb4dc69359ed8f21812c8",
+ "package_id": "experiment-package:eb192fcb8b2944076e1489c381e0c694",
"verified": true
},
{
- "archive_sha256": "596f37d110e661eab4d82030e4493e3a569222692e63433c809046e8859ad550",
- "campaign_id": "d384007b-c0c7-4a07-99e0-23d7fbbead56",
+ "archive_sha256": "1c3451e594625e1a647720c8ae949d71eb8ff0f97f245f7e7655932dee7eaedb",
+ "campaign_id": "cb90286b-ca59-4dc4-8dce-cc7330a07373",
"objects_referenced": 2,
"objects_verified": 1,
- "package_id": "experiment-package:20226041115fe6332083f416f9d06b10",
+ "package_id": "experiment-package:0d9ba6e3950d6eac0b94416708770d40",
"verified": true
},
{
- "archive_sha256": "5ae70b4144399c667fcaec5858dcbc6ba2121c38f6d9f7f7fa25161d7c62ac31",
- "campaign_id": "8c8ea74e-2648-4dcb-bca7-0295f341a56e",
+ "archive_sha256": "1079b04af9987c3883169c6ded04c759d5471e7676021348be629b1fd1ecb726",
+ "campaign_id": "34e1517f-006f-4a20-83e2-c9cb8bf76013",
"objects_referenced": 2,
"objects_verified": 1,
- "package_id": "experiment-package:9de4b4e42500a99503e0c66d27fced8d",
+ "package_id": "experiment-package:4579e697d465801e9f46f7ebdbc7833e",
"verified": true
},
{
- "archive_sha256": "65c3692de54ff391321567d7749ffdf5a51d98996f101a57432d28544c6e296e",
- "campaign_id": "e5c78838-d72a-4976-81cb-e80189296002",
+ "archive_sha256": "b3b2fb9d99429a6c18c9912a0a962e384d1da69b947280382d15b3b228a0e43b",
+ "campaign_id": "9593d9a2-c5d6-4967-9e3b-666a98adf108",
"objects_referenced": 2,
"objects_verified": 1,
- "package_id": "experiment-package:3701d18dd18dfc5adcf8750834f36a07",
+ "package_id": "experiment-package:01e7599ccfa856f4b9f9a90137bbf300",
"verified": true
},
{
- "archive_sha256": "acd40b0b29bf1118960b4464eddfa04864ad91ac95a5459bd9318773e126aca3",
- "campaign_id": "27b887d3-a2e9-44af-9a78-44b4bc07f6c2",
+ "archive_sha256": "f34a3329b1fb3dc9d1c5a1d6cd9b2a7a8eae3befb445c15b5949fa78554eaa7e",
+ "campaign_id": "dfa14842-a1ea-428c-a28a-5e5acfa69a27",
"objects_referenced": 2,
"objects_verified": 1,
- "package_id": "experiment-package:9bccb410446defe8e240256726327c82",
+ "package_id": "experiment-package:6ca974cfdc2df32ca86d76371d88237b",
"verified": true
},
{
- "archive_sha256": "36f4f590f5f31182f51e39e4f6883409a6d508ba1499c725ece6d22087cea449",
- "campaign_id": "fca390dd-591a-4b30-9071-fba97647aaca",
+ "archive_sha256": "7c2ca544d39e154f322add078bcf8cf8ee3057d582c5fd14ce5d9e5552b1655d",
+ "campaign_id": "55ba9687-2da4-471a-976d-862126577ad3",
"objects_referenced": 2,
"objects_verified": 1,
- "package_id": "experiment-package:23bd010884c9bff28379f89b4d4e2de2",
+ "package_id": "experiment-package:1a30713b62be2063acea4801b8474c35",
"verified": true
},
{
- "archive_sha256": "d4968bda9c89fab5c3e3f6d77ad9eab28527a41e4f41221bff207fb76776fb1f",
- "campaign_id": "47e0cf17-3b46-4ef7-bd1e-301a0b178d6c",
+ "archive_sha256": "3486ecaf69a198761d6a6db790c62075d5b5bc418a6eae590530a9363b06141a",
+ "campaign_id": "2fbddd90-0de9-4020-9a2a-601216479075",
"objects_referenced": 2,
"objects_verified": 1,
- "package_id": "experiment-package:6acb1ca5d245cafd48ca5520c0a1fb6f",
+ "package_id": "experiment-package:0e0d54589828d8ea9c10bf630dd2d3d6",
"verified": true
},
{
- "archive_sha256": "2ec9cd9ed497d4d1e7d36f678e96d511d28bfd2c8941e7ef43d39ed4cc94d667",
- "campaign_id": "9c646f85-7801-4760-b6c3-684cc20fda21",
+ "archive_sha256": "38d9f38dc656fea652681cde06ed8eaed5d18703f61074740cf126bbea84de13",
+ "campaign_id": "9efd6265-dc3d-4fda-9984-e2b29681eda5",
"objects_referenced": 2,
"objects_verified": 1,
- "package_id": "experiment-package:e6b9d7033e1d5e6d76bc9c35899f1ae0",
+ "package_id": "experiment-package:e04968bc9a77af2c3d85ba3bd2c1dfe2",
"verified": true
},
{
- "archive_sha256": "aaac5d4a1b0821fecd35b47e2be1c9eadd03a9796e94686fed43157dffa3ec96",
- "campaign_id": "072d4372-08f2-4c90-b42e-57af4ee751c1",
+ "archive_sha256": "373a5307e09470bceb355bafd11efafabddbda2177f3c2f949593b234cf9b1e7",
+ "campaign_id": "1fbf9d27-0eb2-44df-803d-9cb650cc32c7",
"objects_referenced": 2,
"objects_verified": 1,
- "package_id": "experiment-package:2df114372364ff8d287ab37123b0e5a4",
+ "package_id": "experiment-package:138af07fa240d9d35ce024114e67bedb",
"verified": true
},
{
- "archive_sha256": "df91506968b4fce6a76488bb4c5459fb5062edc05947bb1a79dfe63311e9c625",
- "campaign_id": "cb133b65-1429-4249-b345-1b7b78f28dea",
+ "archive_sha256": "ea4511d7590edf937a63acb17e7d8678ef9b7391bef2bf645660fd1acc8af391",
+ "campaign_id": "3b46d138-a70a-4494-8973-bfe2b3949bb3",
"objects_referenced": 2,
"objects_verified": 1,
- "package_id": "experiment-package:9927872772614a8179595a80c7a20773",
+ "package_id": "experiment-package:aed00ad3cc2ce1224bb941edb43a2ae7",
"verified": true
},
{
- "archive_sha256": "ecc4d6d5d20328aaef0cfcd0e64c7e9ca2b5199634d7d7897951bd3a97bda9e7",
- "campaign_id": "b5f6266d-f6f5-4109-a632-fca8823a3300",
+ "archive_sha256": "b5a0534734a91ac3028a12cc959740780f92a56990f5f8c8c41e0a3d76243509",
+ "campaign_id": "b1aa75e3-6842-4408-acd8-826e35ee2508",
"objects_referenced": 2,
"objects_verified": 1,
- "package_id": "experiment-package:68be63ee7b4970504cebcbead5603493",
+ "package_id": "experiment-package:a88921aaec192ad063d3eea10b259e27",
"verified": true
},
{
- "archive_sha256": "0980916715b1f4f41b9e867f4808e6d70d0003b7fc677790f4711a863fb58dbc",
- "campaign_id": "01590fe3-e7ca-4e25-8b3a-1f3030e6885d",
+ "archive_sha256": "7bc9862c5c77fac3d178f1bf479df21f5a35d84115ca6b3cb66683715e877e7b",
+ "campaign_id": "c8cc2173-170c-49db-aba4-30a1c4dec9b4",
"objects_referenced": 2,
"objects_verified": 1,
- "package_id": "experiment-package:659e106425bb6b4705762aeb5b262565",
+ "package_id": "experiment-package:b63778e70e27aefa41f89a21be3a11ae",
"verified": true
},
{
- "archive_sha256": "e3ba6e08d3e7c59d2b38df65a0a9508872008202904c56d7aa518e7d514eee5c",
- "campaign_id": "b9606d88-c543-461e-b948-1d89709557e4",
+ "archive_sha256": "637614966ca72b3abb31da5546141ac53febb967703f466d6339ce54e1e44e37",
+ "campaign_id": "1883256d-5487-4a72-93c7-83c64118b1d6",
"objects_referenced": 2,
"objects_verified": 1,
- "package_id": "experiment-package:5563af1211b86b3666d22ef811b7ebeb",
+ "package_id": "experiment-package:13400f6c8c67f57e5ae2b8eabc3f5a92",
"verified": true
},
{
- "archive_sha256": "4f5eca006d620e4fc0fd37f62b61856428bb25ed36106d1e5cb3a205b65260b6",
- "campaign_id": "1e330dca-c472-448e-b9b0-abb37eec951e",
+ "archive_sha256": "e03bf45d553a033738e3f4a4364eea63f4b201dc5eea0d402cf33859224fd9ca",
+ "campaign_id": "e783df27-3418-4f00-8261-cd85844dc6e5",
"objects_referenced": 2,
"objects_verified": 1,
- "package_id": "experiment-package:216c208c2c003d83d714e4849075d5dd",
+ "package_id": "experiment-package:3ea493aff270763f5f72f1dd3a859bab",
"verified": true
},
{
- "archive_sha256": "2c899a8647da720594b6a3c54ddd7b76a3ba1c5c0a2a13e7440ab4fccdf49e9b",
- "campaign_id": "48759d52-8893-4de1-9344-b3ee0f5e48a8",
+ "archive_sha256": "424aaa04fb0b2e9f0b3064f43fe379db18adfef21cd539abc139c6cf286b92ab",
+ "campaign_id": "0f2b028a-591b-4b4c-a437-48daaa8f8556",
"objects_referenced": 2,
"objects_verified": 1,
- "package_id": "experiment-package:63b8c5f983a258245b45d0b31f6ee9af",
+ "package_id": "experiment-package:ad4579450fa13930a50c114eafcfd41a",
"verified": true
},
{
- "archive_sha256": "3489c63a24e0452aac4c046aa74998820f80bfa899b599a574cab42980d40c70",
- "campaign_id": "39c05254-5da1-43e2-9eed-044e22381b6f",
+ "archive_sha256": "f80a4a1c78e79aff3150c0dc1b2d09298ad7d4fab35e91b47a793c7b64fbfd16",
+ "campaign_id": "e6c1a315-0053-44f1-ab79-0d798b52d8d9",
"objects_referenced": 2,
"objects_verified": 1,
- "package_id": "experiment-package:bc5faf0f6c99a6b5e052754b18d133b8",
+ "package_id": "experiment-package:6a32e6b5f9dc05b957eb002ab60af2b9",
"verified": true
},
{
- "archive_sha256": "049fcc45b2c8f07a0a71d274063029fbe87d17828aaec9341830a6bd630fa811",
- "campaign_id": "58bc6b16-5c81-4b87-a0e8-81dec961885a",
+ "archive_sha256": "098ca52ae6dac675e6948f914366b2d3c276412ce6ea4caf9b7bf20eea4b6b11",
+ "campaign_id": "91047a2e-1a9a-4af0-94e6-fc220010407f",
"objects_referenced": 2,
"objects_verified": 1,
- "package_id": "experiment-package:3cbc948779291e0297b26d7f913d37ba",
+ "package_id": "experiment-package:4e77ebab252e0f465bdcb8f8722050fc",
"verified": true
},
{
- "archive_sha256": "0eb78aa2b3c752b8486ad688c3da41b0b92b7f31645b203b04a05462f315fab0",
- "campaign_id": "9f330b2f-2e46-4923-9ddf-894e38a6627c",
+ "archive_sha256": "faa788442f2ad342638308b8dbe713a4aca4fc4f1a20baaaa2eccd6519a27b03",
+ "campaign_id": "91ae41fa-7e87-483d-a5f6-8266748c5dc6",
"objects_referenced": 2,
"objects_verified": 1,
- "package_id": "experiment-package:a8ca514cc3d93ac7cd045d545717ebfe",
+ "package_id": "experiment-package:2dc027c942a14cf3e6586df46650ae9d",
"verified": true
},
{
- "archive_sha256": "06cb6aa8c88f93b3c84159cbe02ea94e5fa36d19b8a1b4b5026d23762096e843",
- "campaign_id": "dd914774-38dd-492d-92fb-8420c8ab58b7",
+ "archive_sha256": "88a5dae8a463fe2bf114daf67188b88db7439f7f6881012d2153634f9417fcbe",
+ "campaign_id": "8d90f848-8386-4bf0-930d-497cde12520f",
"objects_referenced": 2,
"objects_verified": 1,
- "package_id": "experiment-package:fd1bd241579af27821230f74183c1962",
+ "package_id": "experiment-package:769ae2bfcaac4ce5599b72f0fa60dbb5",
"verified": true
},
{
- "archive_sha256": "9c6b2345b8deeb89b3fbeea65b9238f2c66c657a37d9a0b2047257ba59053ace",
- "campaign_id": "1e85d510-f597-405f-9351-eb5683f60ed3",
+ "archive_sha256": "1f2ad9c9a0d47e686fbb827d336527cc00efd8a8d7c0086892b5020d30961bcb",
+ "campaign_id": "576e46db-760e-4304-936e-65a6a5027a05",
"objects_referenced": 2,
"objects_verified": 1,
- "package_id": "experiment-package:807d12d4c932f7e248aa3db36327b60a",
+ "package_id": "experiment-package:7534dbcf5d1e6da222453d274ae11052",
"verified": true
},
{
- "archive_sha256": "3fdb20e8a6b3b813a099d455764d5995589e69a6c3121747feada51e1458a189",
- "campaign_id": "68613b39-5b67-4f47-a4da-35ce5068f40b",
+ "archive_sha256": "6fdb71170f273394f8e93db3790d005c6757248d2a8fffc788611adfca92a2b9",
+ "campaign_id": "32ef2a9f-ac43-417a-96ab-d2a1ee261e61",
"objects_referenced": 2,
"objects_verified": 1,
- "package_id": "experiment-package:cd7347d779b0b3ebecd339788049e183",
+ "package_id": "experiment-package:31a319a145971b70f4041c9106c8d9a2",
"verified": true
},
{
- "archive_sha256": "7ebf7dac740e551996f7b8afb44bce85d1d5a827c6fb1c23ac1711315c051f46",
- "campaign_id": "5b3e002f-5593-456a-9e46-d21e941ec43e",
+ "archive_sha256": "b1a8d76482f1ce971aa800065547e4ff3e5763d1d13798222f354ebe9434dbe8",
+ "campaign_id": "5a8ac619-1e04-41aa-bb4d-0c97f6e210ed",
"objects_referenced": 2,
"objects_verified": 1,
- "package_id": "experiment-package:e8613e254fb8bec6aad3422f955ccedc",
+ "package_id": "experiment-package:c085f72189db13d0a9a73c7119c6df95",
"verified": true
},
{
- "archive_sha256": "9f8d35136ce2d904f23c96785ba54127d4f90e5ca2c5ed6fe12868bedc3b9ee8",
- "campaign_id": "ed089dbc-273b-410a-ae00-2adc2cdb48ce",
+ "archive_sha256": "3a94e7d0b9af830b31d182dd40919a0431283abd6373227ff54cfd83f434d76c",
+ "campaign_id": "f4470e01-9d79-49d6-938d-58dcd9696a0e",
"objects_referenced": 2,
"objects_verified": 1,
- "package_id": "experiment-package:6a9277b68b8b2ff13ec37021d29fb064",
+ "package_id": "experiment-package:e8b1e5bed04afc2a02b4f024283025ed",
"verified": true
},
{
- "archive_sha256": "6828238c165580690d00f38fd3101eda01ed9c92efc53c887091da35816d2688",
- "campaign_id": "edbe2be0-d9ed-46d1-a4a5-41fe9f7e9536",
+ "archive_sha256": "e4f33873d39f4d3b3729af33f3781ad610c6fd738bc2ebb730cbe83548e0b7e1",
+ "campaign_id": "2450a748-6614-4fed-ab61-687f9e96284a",
"objects_referenced": 2,
"objects_verified": 1,
- "package_id": "experiment-package:d7f09fe7074d3a61f0fbc112bf266106",
+ "package_id": "experiment-package:f7f8956895f2bcb6f2b657c1d5e6ddb4",
"verified": true
},
{
- "archive_sha256": "5fb9c3d951043f7d2ffb3cecf7546008a28e092dd47ad7b3fbcf28a96fb9fae0",
- "campaign_id": "7a82b14e-f2c1-4679-b28a-9e0194e71e95",
+ "archive_sha256": "125ad6ae1db767581677b729cdc0478fc9d9c56c81e68885f79e01985b14f79f",
+ "campaign_id": "e1227616-87a9-40fa-a733-02e093e69a7d",
"objects_referenced": 2,
"objects_verified": 1,
- "package_id": "experiment-package:dd198c2a1003040b5bc2c3522a979e02",
+ "package_id": "experiment-package:ef9c91721f67d59881e29132a13217a9",
"verified": true
},
{
- "archive_sha256": "61eff8f2a4db0d9a184559f2a4b20bab0d2f06f1d583bcce06d744f19d0cfbe4",
- "campaign_id": "84a30526-8931-4372-90f9-b60c1e111ed0",
+ "archive_sha256": "72eb360c9c67cee125a1196d177e0666498e9f7bc7cef149177149c8ef79954e",
+ "campaign_id": "3d003205-f527-44a1-b054-7a7c56f61baa",
"objects_referenced": 2,
"objects_verified": 1,
- "package_id": "experiment-package:8db6a828c345a27c0abee93c5dbd4993",
+ "package_id": "experiment-package:c7d589fe3afd54c76aba24655bda76cd",
"verified": true
},
{
- "archive_sha256": "e774c4d9a5b81a2eb0308cff9b3077d89cba388cdf94459b6c1c9511615eecb3",
- "campaign_id": "136f2ca6-1984-42a4-9266-82479854223f",
+ "archive_sha256": "a97de1ad8ffee7a8a42507e5686ec493e705aa22565c0b597a822ed67ea297d0",
+ "campaign_id": "ecfa5869-11b7-4ad4-b0f7-a6f92213a30b",
"objects_referenced": 2,
"objects_verified": 1,
- "package_id": "experiment-package:f39528e74f359f077675fae4e99d2e35",
+ "package_id": "experiment-package:ef201d2374d58c013a691c75e41fba34",
"verified": true
},
{
- "archive_sha256": "f344f69bf8c6b4f112046b34e7a566d5b389ed04d292c349f92dc7fef655df90",
- "campaign_id": "4cf918c1-a536-4f95-968e-7a5406ce59b7",
+ "archive_sha256": "a7763bf585003e7853330079a317dfd06a7c4962c6c88a5297042a9b90515ddf",
+ "campaign_id": "34a57c82-3407-428c-b788-07820ac053c9",
"objects_referenced": 2,
"objects_verified": 1,
- "package_id": "experiment-package:cfda7b272632926583622585f0516c89",
+ "package_id": "experiment-package:8e9d007c4833014cd28be0321fb3a7c4",
"verified": true
},
{
- "archive_sha256": "30fdece637f811b7dbccbfa9711bf743eaa28c73bcc18888f0e577691e612235",
- "campaign_id": "6c3b6a35-8005-4b87-9352-3c102ea4e6e3",
+ "archive_sha256": "f85cf4806f0198feaf0b34b2f0c8b0bcbff407c4d1fee23fb5b62f0e06b8255c",
+ "campaign_id": "b40b0b56-51d5-42bf-9fd8-fccbcec1b2a0",
"objects_referenced": 2,
"objects_verified": 1,
- "package_id": "experiment-package:4657687a6e5df6a055250ddb259a3fec",
+ "package_id": "experiment-package:e068bd89acb4a07c65a9d7e3474bfe18",
"verified": true
},
{
- "archive_sha256": "32d8f84d4d3de868b50a510c49a787dc7ef55c704e57131ffec9545f77fddf14",
- "campaign_id": "519d9e8c-7f1f-4fcf-9b02-a880ca86a268",
+ "archive_sha256": "13153bcd733f73babd39d96dbe1387e56434c9498d14ef677a5e5ddda14cf0c8",
+ "campaign_id": "94839296-cafa-4461-8bb6-de3afc49345d",
"objects_referenced": 2,
"objects_verified": 1,
- "package_id": "experiment-package:5df94ca306e3b14060c6c7de0eb36932",
+ "package_id": "experiment-package:4fc2821457b7029f64c0f08d47c315c3",
"verified": true
},
{
- "archive_sha256": "124a31b5bd570973b97822fe5c17a27a0d2835be2fd2b2fdbfcc193c011a5257",
- "campaign_id": "eedb969b-1a0d-45d1-a1e8-37cbea951417",
+ "archive_sha256": "b60cb6648365a7ef9552e112b78520540ff1a34317eaac2276a23a1fa0e808de",
+ "campaign_id": "79723cf5-99db-4b46-922d-9b1bff8c616b",
"objects_referenced": 2,
"objects_verified": 1,
- "package_id": "experiment-package:4f0a9bef9e51d636d29a5fe783e6ed1f",
+ "package_id": "experiment-package:dae434e0a9a947fa8de3595316410089",
"verified": true
},
{
- "archive_sha256": "c786095d28c95fb29d78c02a426fe511cf41878f9631bde8a3ceaa734545ec69",
- "campaign_id": "f5360227-cf82-4423-9f17-fcc48f0e26df",
+ "archive_sha256": "d49fa4d2fb078fbff1a8adf5abcfaa49194b40ceaa1586e70440581d1ac75077",
+ "campaign_id": "3ac7ec2f-1498-4ccb-8a0d-384bb7b3e461",
"objects_referenced": 2,
"objects_verified": 1,
- "package_id": "experiment-package:9e1ce1f2d0f8e8a037096442b41b8462",
+ "package_id": "experiment-package:438c905c061d75de6f18b0c09a6e63c7",
"verified": true
},
{
- "archive_sha256": "cc91206fa0c706b1817968454c0557d795c4adec15d819d2103f648f52dd918a",
- "campaign_id": "61890fc0-9ed1-4ed1-8db0-fd4c5b6318dc",
+ "archive_sha256": "33470f673414adc3e664d8ddb466fce7f005b1ec22ea433320ef548910877b9b",
+ "campaign_id": "18f399f9-3257-4620-b948-2169afffc583",
"objects_referenced": 2,
"objects_verified": 1,
- "package_id": "experiment-package:f0d37322ba4baa7d6c449a77b2cd4e46",
+ "package_id": "experiment-package:06c831b200f25593d59f4f03c519af58",
"verified": true
},
{
- "archive_sha256": "77507ddcb13e11511fb075ca91dd620cedca49e6f44b4a72480e7b76c0c1ee5f",
- "campaign_id": "a2c40507-e440-4f6a-b166-87f5d619a9dd",
+ "archive_sha256": "499c16bc2c63cf3f2384d708d684a7be46a8540399f4e39fb120e348f4931d89",
+ "campaign_id": "3c73f261-245b-4a8e-874f-8223348863d7",
"objects_referenced": 2,
"objects_verified": 1,
- "package_id": "experiment-package:25068ca2c5d0ca3b1345d443146f12fd",
+ "package_id": "experiment-package:c52cf8ba8f2cdbd9f1af2b0833b0c7a3",
"verified": true
},
{
- "archive_sha256": "96eb6915e3460f0d41861c23955d9bc3db216db4d51c03b47c5c8e34e68813a2",
- "campaign_id": "f3e4def2-6635-4026-9e1f-9fa2b0f3e4f2",
+ "archive_sha256": "d2e101f666e0b22beadf36837fd7d2be90970dbdef86f1162eea224a8f9027e3",
+ "campaign_id": "40c209d6-8fa2-4c46-a5e1-bc3e52bf6800",
"objects_referenced": 2,
"objects_verified": 1,
- "package_id": "experiment-package:ec2dbee75eec96c171824f361241ac05",
+ "package_id": "experiment-package:a02f6138bcd0e9de19a2e27207feb812",
"verified": true
},
{
- "archive_sha256": "a6e4f7c027af10c842ecb2333d84e07e17bab50d65dbcec9d726f442647e32d8",
- "campaign_id": "94c8929d-f086-472b-b54d-4702739bb26f",
+ "archive_sha256": "ce1a7ebe2dba267f8de3b0c3a267608f1e896d644f09b876b5a6cbefaf329a80",
+ "campaign_id": "b00d7a14-4687-4129-85f8-9264f9e65afc",
"objects_referenced": 2,
"objects_verified": 1,
- "package_id": "experiment-package:5eeaa97dc2a11b6a1c05b46f10323dbf",
+ "package_id": "experiment-package:b95e07a6448cfc6d8b8a50ffcf698a3b",
"verified": true
},
{
- "archive_sha256": "9ea560b053fcf8426bb1a05b1308ea9d994e3503b646f70792054e64b33cb588",
- "campaign_id": "19937805-b191-4d42-bff5-ef2f6ada4fe8",
+ "archive_sha256": "912993fc88f423b566f402c05f842021d27e68882ed5ef4fa056d4ddc098ee99",
+ "campaign_id": "73fc256b-6ce8-4142-961c-6777c9107c7f",
"objects_referenced": 2,
"objects_verified": 1,
- "package_id": "experiment-package:98c883b10e75f6150b98720c7d6f2274",
+ "package_id": "experiment-package:468dbf9c831f5bfc149128f73fa9c2de",
"verified": true
}
]
diff --git a/artifacts/fault-campaign/packages.zip b/artifacts/fault-campaign/packages.zip
index 450cae6..fb94cc9 100644
Binary files a/artifacts/fault-campaign/packages.zip and b/artifacts/fault-campaign/packages.zip differ
diff --git a/artifacts/fault-campaign/raw-results.csv b/artifacts/fault-campaign/raw-results.csv
index d808910..9a4e6bc 100644
--- a/artifacts/fault-campaign/raw-results.csv
+++ b/artifacts/fault-campaign/raw-results.csv
@@ -1,101 +1,101 @@
run_id,ordinal,seed,campaign_id,fault_point,data_origin,execution_mode,process_pid,process_exit_code,process_started_at,checkpoint_reached_at,process_killed_at,restart_completed_at,attempts_created,lease_recoveries,observations_staged,observations_received,observations_accepted,corrupted_receipts,accepted_outcomes,duplicate_suppressions,hard_budget,budget_committed,budget_reserved,budget_consumed,budget_released,replay_equal,package_verified,objects_referenced,objects_verified,package_id,package_sha256,failure_codes,exclusions
-phase7-20260813-100,1,20260814,5aa7cb86-8bb3-4506-9bd5-a768e251cb41,after_upload_before_outcome_transaction,synthetic,replay,33532,1,2026-08-13T15:20:21.062930Z,2026-08-13T15:20:24.330643Z,2026-08-13T15:20:24.330643Z,2026-08-13T15:20:27.148814Z,3,1,1,1,1,0,1,1,3,3,3,3,0,True,True,2,1,experiment-package:d830483adcf22ea942afde37b844b32b,4f37655e611cb667f50e6fa89b6c9f4978578c439a50ed0532b564e4ab81f549,"[""lease_lost""]",[]
-phase7-20260813-100,2,20260815,7e46971f-d52e-4048-8764-c329f7108574,after_commit_before_acknowledgement,synthetic,replay,11664,1,2026-08-13T15:20:27.243779Z,2026-08-13T15:20:30.042971Z,2026-08-13T15:20:30.042971Z,2026-08-13T15:20:32.099312Z,2,0,1,1,1,0,1,1,3,2,2,2,0,True,True,2,1,experiment-package:741301eb11f96492aa45b7ad19ca0537,816d01347e4ff9c443ac2e79d1be3ca8849bcfc58631e5f6a57a49db937dbcd3,[],[]
-phase7-20260813-100,3,20260816,8a1487ce-d860-43d1-8d54-043be3122625,after_commit_before_acknowledgement,synthetic,replay,16004,1,2026-08-13T15:20:32.201910Z,2026-08-13T15:20:34.637510Z,2026-08-13T15:20:34.637510Z,2026-08-13T15:20:36.568528Z,2,0,1,1,1,0,1,1,3,2,2,2,0,True,True,2,1,experiment-package:287c5f158f59f061d24ef6ad5334bfe0,160ba8970386a209f15ad9a40680751d2b290d943fca5c36e3f3e5d489b582ed,[],[]
-phase7-20260813-100,4,20260817,2ac4cf24-29e8-4db0-a91d-0fea1100c541,after_upload_before_outcome_transaction,synthetic,replay,37184,1,2026-08-13T15:20:36.650453Z,2026-08-13T15:20:38.969277Z,2026-08-13T15:20:38.969277Z,2026-08-13T15:20:41.596572Z,3,1,1,1,1,0,1,1,3,3,3,3,0,True,True,2,1,experiment-package:2aaa3659bf595499a159546d3cc8112d,9ea2627043a44db577aaa00b56dfabd45b460c2eddddb01de7f205e0b3ecc769,"[""lease_lost""]",[]
-phase7-20260813-100,5,20260818,622a6919-2afb-4128-8f66-cf7871d9dd3b,during_evidence_export,synthetic,replay,8936,1,2026-08-13T15:20:42.819768Z,2026-08-13T15:20:44.920630Z,2026-08-13T15:20:44.920630Z,2026-08-13T15:20:45.088213Z,2,0,1,1,1,0,1,1,3,2,2,2,0,True,True,2,1,experiment-package:e3992788f9e252d18c6cd188f0e15b77,42de22f9f1c15e2a036b8e7fa4f5ccd9de959c303943244828fd6dc00ca78058,[],[]
-phase7-20260813-100,6,20260819,41a4fbd3-7748-4c64-8fc2-9d5e05c148a3,after_commit_before_acknowledgement,synthetic,replay,37984,1,2026-08-13T15:20:45.168902Z,2026-08-13T15:20:48.523015Z,2026-08-13T15:20:48.523015Z,2026-08-13T15:20:50.623960Z,2,0,1,1,1,0,1,1,3,2,2,2,0,True,True,2,1,experiment-package:3487e6ab7da4309bcd689d19ea719220,864eb7f6d4c7d37d7fa3f4fb3596ce6db832927036134ce87c730d6d9b1de512,[],[]
-phase7-20260813-100,7,20260820,135daa99-c98d-4d55-8207-e81b7f351cda,after_lease_acquisition,synthetic,replay,38840,1,2026-08-13T15:20:50.704854Z,2026-08-13T15:20:53.036708Z,2026-08-13T15:20:53.036708Z,2026-08-13T15:20:55.387607Z,2,1,1,1,1,0,1,1,3,2,3,2,1,True,True,2,1,experiment-package:e170c9ebfd2406e392247c0085e1bc4b,5741bce124d7cc5b3c543bcb03e0c3f94cdd2e9b1cb78f7ae276b460cd680152,[],[]
-phase7-20260813-100,8,20260821,cbf3a329-e6f5-4794-a66a-c15f40da536c,during_object_upload,synthetic,replay,30664,1,2026-08-13T15:20:55.458044Z,2026-08-13T15:20:58.712137Z,2026-08-13T15:20:58.712137Z,2026-08-13T15:21:01.513813Z,3,1,1,1,1,0,1,1,3,3,3,3,0,True,True,2,1,experiment-package:3555f45ee336db0a8d297a293552fea6,70dc0e7527b67df20c963c08e96c35e5d75f1a986de53af2d954de24bea25a5a,"[""lease_lost""]",[]
-phase7-20260813-100,9,20260822,9ae3ef5b-65f1-4c96-9a9a-f9d7145f412b,during_object_upload,synthetic,replay,27656,1,2026-08-13T15:21:01.599055Z,2026-08-13T15:21:04.358432Z,2026-08-13T15:21:04.358432Z,2026-08-13T15:21:07.923030Z,3,1,1,1,1,0,1,1,3,3,3,3,0,True,True,2,1,experiment-package:b3cb9087918dee708cc948e7ed3eb62f,5c8f2a67d232b3f0de5e10b59402a691c06c3c67b4550a833414b5b2ac86d29b,"[""lease_lost""]",[]
-phase7-20260813-100,10,20260823,23809f10-2911-4424-ac25-74dd64d39835,after_adapter_return_before_upload,synthetic,replay,31724,1,2026-08-13T15:21:08.004720Z,2026-08-13T15:21:10.791102Z,2026-08-13T15:21:10.791102Z,2026-08-13T15:21:13.988947Z,3,1,1,1,1,0,1,1,3,3,3,3,0,True,True,2,1,experiment-package:c9db3422e399c52e0990962be3c267d4,7d8bab5b38a1e33f1f2e1bc3beea83c0299d03414cbce7f9dcf86b1903170fae,"[""lease_lost""]",[]
-phase7-20260813-100,11,20260824,6c0dcbcf-e8f3-484f-92fb-835a0a7021d0,during_object_upload,synthetic,replay,27284,1,2026-08-13T15:21:14.077934Z,2026-08-13T15:21:17.330052Z,2026-08-13T15:21:17.330052Z,2026-08-13T15:21:20.190137Z,3,1,1,1,1,0,1,1,3,3,3,3,0,True,True,2,1,experiment-package:d743f30607dd6a33d09b6502984889dd,64105c27d4012dd589e4c7aa5d29c34387a29a8d1958397de5507bfb9dfb86d1,"[""lease_lost""]",[]
-phase7-20260813-100,12,20260825,6de3894d-bc6f-4ae7-b3a7-51c97dd02403,after_commit_before_acknowledgement,synthetic,replay,39136,1,2026-08-13T15:21:20.267545Z,2026-08-13T15:21:23.520825Z,2026-08-13T15:21:23.520825Z,2026-08-13T15:21:25.827921Z,2,0,1,1,1,0,1,1,3,2,2,2,0,True,True,2,1,experiment-package:417204090882c40e9125cac3c40976c9,a79ae7fb92151f71702c329f96b7a155b63266824f91e5a7354504f8ddbf04b2,[],[]
-phase7-20260813-100,13,20260826,c2203cb6-dd54-49df-b83d-e3acc688ded5,after_adapter_return_before_upload,synthetic,replay,33548,1,2026-08-13T15:21:25.900039Z,2026-08-13T15:21:28.625881Z,2026-08-13T15:21:28.625881Z,2026-08-13T15:21:31.636465Z,3,1,1,1,1,0,1,1,3,3,3,3,0,True,True,2,1,experiment-package:871a2f7b4aab5391082d6db99f5e41e0,943ed85c8d260b03600e3dbeead631fefb66a200505a8b7fb51c968faec982db,"[""lease_lost""]",[]
-phase7-20260813-100,14,20260827,47bc04ef-6a51-48b1-bbca-68ecff5f7158,after_lease_acquisition,synthetic,replay,1572,1,2026-08-13T15:21:31.703964Z,2026-08-13T15:21:34.084263Z,2026-08-13T15:21:34.084263Z,2026-08-13T15:21:37.043983Z,2,1,1,1,1,0,1,1,3,2,3,2,1,True,True,2,1,experiment-package:07af5010fa53b33796261a55c6b27296,c823fb56f379b11a4fc7b95a1baacc33491143d4df3e921d4d103efea8d9decc,[],[]
-phase7-20260813-100,15,20260828,33159243-2f76-409a-aefe-c516d8c6c0d7,after_lease_acquisition,synthetic,replay,10288,1,2026-08-13T15:21:37.117763Z,2026-08-13T15:21:39.773053Z,2026-08-13T15:21:39.773053Z,2026-08-13T15:21:43.036252Z,2,1,1,1,1,0,1,1,3,2,3,2,1,True,True,2,1,experiment-package:238cc03519a77934070083471e36c0fe,11fdde7ea02116a2ef91ee010d58755820f04bcdcc2ada7dedd007659f50c610,[],[]
-phase7-20260813-100,16,20260829,b22d4364-8e6a-4c06-b612-f956d3aa2e77,after_lease_acquisition,synthetic,replay,38764,1,2026-08-13T15:21:43.127796Z,2026-08-13T15:21:45.780354Z,2026-08-13T15:21:45.780354Z,2026-08-13T15:21:49.267842Z,2,1,1,1,1,0,1,1,3,2,3,2,1,True,True,2,1,experiment-package:1b5dbe52ef773347016bfb981247a2fa,5241478f239ee0b127cac9df932488a5b508e6eb29829e63190425381d550b88,[],[]
-phase7-20260813-100,17,20260830,21c1f828-89e5-408c-8771-d2ff0f941d88,after_adapter_return_before_upload,synthetic,replay,39240,1,2026-08-13T15:21:49.337391Z,2026-08-13T15:21:52.590468Z,2026-08-13T15:21:52.590468Z,2026-08-13T15:21:56.119503Z,3,1,1,1,1,0,1,1,3,3,3,3,0,True,True,2,1,experiment-package:3e96faff730879951e6768f1b695e8e0,b53a3c373dcab41c627449e5bb12c48dcce01a3ee9af0547d846128a229e60fc,"[""lease_lost""]",[]
-phase7-20260813-100,18,20260831,8a1bf94c-00ec-4b36-9a75-de568152b0cd,during_object_upload,synthetic,replay,31624,1,2026-08-13T15:21:56.199587Z,2026-08-13T15:21:59.687331Z,2026-08-13T15:21:59.687331Z,2026-08-13T15:22:03.741511Z,3,1,1,1,1,0,1,1,3,3,3,3,0,True,True,2,1,experiment-package:5a2a1041069b06f2717446653ff005ee,476963e6ba54a98b0fb9288a1965a9eb4247fb3a9accc796f2e8465c23fc5936,"[""lease_lost""]",[]
-phase7-20260813-100,19,20260832,f3bd9b1c-d26c-4cfd-bf74-58f35b299087,after_adapter_return_before_upload,synthetic,replay,33700,1,2026-08-13T15:22:03.836085Z,2026-08-13T15:22:07.047225Z,2026-08-13T15:22:07.047225Z,2026-08-13T15:22:10.221852Z,3,1,1,1,1,0,1,1,3,3,3,3,0,True,True,2,1,experiment-package:52cbcfaa15c2be97692dc993f8476ca7,37e67716f555640677c16438511420a113cffaa8b30901a9ab46016d1705d221,"[""lease_lost""]",[]
-phase7-20260813-100,20,20260833,72c5a640-a72e-4e7b-8ec0-f7807877a56a,during_object_upload,synthetic,replay,30908,1,2026-08-13T15:22:10.298951Z,2026-08-13T15:22:14.345786Z,2026-08-13T15:22:14.345786Z,2026-08-13T15:22:17.950254Z,3,1,1,1,1,0,1,1,3,3,3,3,0,True,True,2,1,experiment-package:e21aecccb14c334619ac227c3f369afc,1402ba8c5a01f9eaf91696fa570ad82865ce7b9bb5c5e3dc9208f0f8394995aa,"[""lease_lost""]",[]
-phase7-20260813-100,21,20260834,2a15e30a-dd39-47a3-8ced-ede6c17e1263,during_object_upload,synthetic,replay,38248,1,2026-08-13T15:22:18.045842Z,2026-08-13T15:22:21.136951Z,2026-08-13T15:22:21.136951Z,2026-08-13T15:22:25.095602Z,3,1,1,1,1,0,1,1,3,3,3,3,0,True,True,2,1,experiment-package:80d99e37693e90e732afa02b43d55f30,6859ee95909706d00bd8064e7e97e3d2bfee2c04f18ad73abe1aa777d37f0434,"[""lease_lost""]",[]
-phase7-20260813-100,22,20260835,cabc27fd-a974-417e-98c7-a16fa4bfa22a,after_upload_before_outcome_transaction,synthetic,replay,39284,1,2026-08-13T15:22:25.175600Z,2026-08-13T15:22:28.744095Z,2026-08-13T15:22:28.744095Z,2026-08-13T15:22:32.857951Z,3,1,1,1,1,0,1,1,3,3,3,3,0,True,True,2,1,experiment-package:51619d55b38a155c0df5192f7cd39010,2434394ba81504a2bab28e33ba50f3b755908047d39794214512c7bd66248c05,"[""lease_lost""]",[]
-phase7-20260813-100,23,20260836,6f7443d7-6eef-4ff6-b011-31682267449a,during_object_upload,synthetic,replay,36732,1,2026-08-13T15:22:32.952281Z,2026-08-13T15:22:36.460816Z,2026-08-13T15:22:36.460816Z,2026-08-13T15:22:39.809881Z,3,1,1,1,1,0,1,1,3,3,3,3,0,True,True,2,1,experiment-package:d80128c270fcf4ff7134d776daf5270a,b348b527dceae88e8b1da6cb1a7c7236cbc60ce3be57fda83b22760ac15b4a0b,"[""lease_lost""]",[]
-phase7-20260813-100,24,20260837,3ee666c6-07f4-484b-9c39-266020796907,after_adapter_return_before_upload,synthetic,replay,39116,1,2026-08-13T15:22:39.874003Z,2026-08-13T15:22:42.398582Z,2026-08-13T15:22:42.398582Z,2026-08-13T15:22:45.966443Z,3,1,1,1,1,0,1,1,3,3,3,3,0,True,True,2,1,experiment-package:aa232a2d36f796dbaa0f6f0f9b949138,cf1e1d677513cc4141af7ac4533f2f64c501460432940ffd00d96561916fdfe4,"[""lease_lost""]",[]
-phase7-20260813-100,25,20260838,2e4a527c-df6b-48a9-aeed-259f81145504,after_lease_acquisition,synthetic,replay,21688,1,2026-08-13T15:22:46.032029Z,2026-08-13T15:22:48.463412Z,2026-08-13T15:22:48.463412Z,2026-08-13T15:22:51.996557Z,2,1,1,1,1,0,1,1,3,2,3,2,1,True,True,2,1,experiment-package:b25eded85e20ac852cd0ba7687e49a1f,a8922c503e97399010d18327f0416fdd759f30d393a637798d7e75f2256af67b,[],[]
-phase7-20260813-100,26,20260839,4d60587b-1e77-4a75-a65d-f8faca41f981,after_upload_before_outcome_transaction,synthetic,replay,5116,1,2026-08-13T15:22:52.078564Z,2026-08-13T15:22:55.291244Z,2026-08-13T15:22:55.291244Z,2026-08-13T15:22:59.134057Z,3,1,1,1,1,0,1,1,3,3,3,3,0,True,True,2,1,experiment-package:16214a2357350c0743f4f7273081758b,fbcb7ca67566f3569535605d2b5afa1ba92851a1d3e9c7b50bd76d34d8efb923,"[""lease_lost""]",[]
-phase7-20260813-100,27,20260840,e47fe0e5-eb40-4c46-b582-cded270a7d80,after_lease_acquisition,synthetic,replay,39048,1,2026-08-13T15:22:59.215991Z,2026-08-13T15:23:02.250206Z,2026-08-13T15:23:02.250206Z,2026-08-13T15:23:06.296046Z,2,1,1,1,1,0,1,1,3,2,3,2,1,True,True,2,1,experiment-package:55a33b80025cc5dff7c5629b73518403,60a6b3542ca81f313e83a3483605f84187afa0de3f0f557d5d4ebe16dcc3a400,[],[]
-phase7-20260813-100,28,20260841,dee06c98-5df9-4d46-988b-3bedca9fab6c,during_object_upload,synthetic,replay,37448,1,2026-08-13T15:23:06.374875Z,2026-08-13T15:23:09.535684Z,2026-08-13T15:23:09.535684Z,2026-08-13T15:23:13.729870Z,3,1,1,1,1,0,1,1,3,3,3,3,0,True,True,2,1,experiment-package:49a39e9a15ca51d890090c2caf8605a3,ca3929da587bc9ea117c84444505e4a361ae5cfc9a03329d39f168db832aff16,"[""lease_lost""]",[]
-phase7-20260813-100,29,20260842,558dbdec-63cb-43c3-af7b-cd0dcfb867a8,after_lease_acquisition,synthetic,replay,34592,1,2026-08-13T15:23:13.815559Z,2026-08-13T15:23:16.961750Z,2026-08-13T15:23:16.961750Z,2026-08-13T15:23:20.737567Z,2,1,1,1,1,0,1,1,3,2,3,2,1,True,True,2,1,experiment-package:57cbe840c03bf0d2d7cee1a6e0db06fb,a1e7e27b268c60731aac08b024e17ea0082b8aebb0ad5df2242cafe15d76f389,[],[]
-phase7-20260813-100,30,20260843,806fe7bd-c12c-44c5-9b49-3da2372ee257,after_lease_acquisition,synthetic,replay,39796,1,2026-08-13T15:23:20.822867Z,2026-08-13T15:23:24.380442Z,2026-08-13T15:23:24.380442Z,2026-08-13T15:23:28.637334Z,2,1,1,1,1,0,1,1,3,2,3,2,1,True,True,2,1,experiment-package:03398acacc0ac77644e1ce73ed497017,efba10dedcf46f1a85d5b0719d479a7ed344f6f58196041685602d24998284ba,[],[]
-phase7-20260813-100,31,20260844,1f674de1-c040-4f90-87b4-057558bd6230,during_evidence_export,synthetic,replay,32344,1,2026-08-13T15:23:30.984218Z,2026-08-13T15:23:33.379913Z,2026-08-13T15:23:33.379913Z,2026-08-13T15:23:33.596673Z,2,0,1,1,1,0,1,1,3,2,2,2,0,True,True,2,1,experiment-package:1b0ef670cfc4c13245e55998ccda7c0a,5e4facdb600ec5811508c5f4469e033dfcb1c2dd2f5b1978cfa3b1dad15c0096,[],[]
-phase7-20260813-100,32,20260845,c444ea0e-cfde-40b1-87ce-9ad7bb306d76,during_object_upload,synthetic,replay,30848,1,2026-08-13T15:23:33.699711Z,2026-08-13T15:23:37.164258Z,2026-08-13T15:23:37.164258Z,2026-08-13T15:23:40.881227Z,3,1,1,1,1,0,1,1,3,3,3,3,0,True,True,2,1,experiment-package:9962b7c41c3ca9b6271957b5901ef69d,3f45a495c519882a6f009a8fdc204f98d907b074a5045c8c807eb46223d489de,"[""lease_lost""]",[]
-phase7-20260813-100,33,20260846,7886f262-3928-4622-b0aa-c10b8917bb73,after_commit_before_acknowledgement,synthetic,replay,38992,1,2026-08-13T15:23:40.962071Z,2026-08-13T15:23:44.318781Z,2026-08-13T15:23:44.318781Z,2026-08-13T15:23:48.041722Z,2,0,1,1,1,0,1,1,3,2,2,2,0,True,True,2,1,experiment-package:eecb260badc1f7b287f3405c0f20557e,a680d90d3c162ffee4a62c6690699fd4fc8baee66431f01490691d756377dd0a,[],[]
-phase7-20260813-100,34,20260847,ae704d06-66ad-4b3d-8fa0-bc5eab031700,during_evidence_export,synthetic,replay,35260,1,2026-08-13T15:23:50.401258Z,2026-08-13T15:23:52.243116Z,2026-08-13T15:23:52.243116Z,2026-08-13T15:23:52.501031Z,2,0,1,1,1,0,1,1,3,2,2,2,0,True,True,2,1,experiment-package:e1c3fff835834de977cfece3f739fa10,c3519591ac8c39d4239edda5008aa4402726d61544007c72a87e58a6dc8473f2,[],[]
-phase7-20260813-100,35,20260848,c6cbf15f-2f7c-43d7-b20f-40762aef8c16,during_evidence_export,synthetic,replay,12456,1,2026-08-13T15:23:55.378548Z,2026-08-13T15:23:57.325804Z,2026-08-13T15:23:57.325804Z,2026-08-13T15:23:57.479029Z,2,0,1,1,1,0,1,1,3,2,2,2,0,True,True,2,1,experiment-package:507a82c6993a1673c3e5097e585bd5d7,4a68dc5e1b06b7759b03957050a69e54882f74a02dc9abfc247e6634340afea1,[],[]
-phase7-20260813-100,36,20260849,d70fc10d-5775-4e4a-abc1-d3ed2a3be71a,after_lease_acquisition,synthetic,replay,20816,1,2026-08-13T15:23:57.558473Z,2026-08-13T15:24:00.124644Z,2026-08-13T15:24:00.124644Z,2026-08-13T15:24:04.573310Z,2,1,1,1,1,0,1,1,3,2,3,2,1,True,True,2,1,experiment-package:bf85bc02a15ecc32721941e0839a6c61,f4f8e50329054b7c02d14517d9f16afb241c2453dcb2ba4874a9ebb2b56ac04d,[],[]
-phase7-20260813-100,37,20260850,da45a71c-0f1b-4522-81a5-9119a448adb4,after_commit_before_acknowledgement,synthetic,replay,23060,1,2026-08-13T15:24:04.647402Z,2026-08-13T15:24:07.785719Z,2026-08-13T15:24:07.785719Z,2026-08-13T15:24:10.927001Z,2,0,1,1,1,0,1,1,3,2,2,2,0,True,True,2,1,experiment-package:1788e4cfa47f6bc21c5b3d5f6c5ce212,6b7a337a822ac03abc18ca88e974f6ecd66cd556ee86cfeb99155d4de254a30a,[],[]
-phase7-20260813-100,38,20260851,d5de7bd1-021b-407e-ac83-a04f0ae3d654,after_lease_acquisition,synthetic,replay,32348,1,2026-08-13T15:24:11.007284Z,2026-08-13T15:24:14.037996Z,2026-08-13T15:24:14.037996Z,2026-08-13T15:24:17.975149Z,2,1,1,1,1,0,1,1,3,2,3,2,1,True,True,2,1,experiment-package:977a46a49fbdf796398a96332cb6c6ac,25008149c9079774fec75f485deaf72a318fa52bf269660aa308482d54eced88,[],[]
-phase7-20260813-100,39,20260852,47d20867-15c9-45bc-8889-18340a643a03,during_object_upload,synthetic,replay,32780,1,2026-08-13T15:24:18.046137Z,2026-08-13T15:24:21.180176Z,2026-08-13T15:24:21.180176Z,2026-08-13T15:24:26.648845Z,3,1,1,1,1,0,1,1,3,3,3,3,0,True,True,2,1,experiment-package:94c6f2c4fb952c942b7ffcdab8a5bbc0,7312db1116a456cae1dac19fb10026a4e6818ccc1a980db66c15fee79d130b4a,"[""lease_lost""]",[]
-phase7-20260813-100,40,20260853,6d0132f3-e034-4f94-9387-55c181663900,after_lease_acquisition,synthetic,replay,29956,1,2026-08-13T15:24:26.743790Z,2026-08-13T15:24:32.239644Z,2026-08-13T15:24:32.239644Z,2026-08-13T15:24:36.874597Z,2,1,1,1,1,0,1,1,3,2,3,2,1,True,True,2,1,experiment-package:0ad8c2ae3c03361f98ea27571e66765a,4a7bfdbbd898f29e1f32817c2b49046107250ad43b3776cc5387cfbc4b379164,[],[]
-phase7-20260813-100,41,20260854,f4eacdcc-0342-47d6-bdfb-ea7642655326,during_evidence_export,synthetic,replay,35008,1,2026-08-13T15:24:40.613375Z,2026-08-13T15:24:43.017649Z,2026-08-13T15:24:43.017649Z,2026-08-13T15:24:43.170810Z,2,0,1,1,1,0,1,1,3,2,2,2,0,True,True,2,1,experiment-package:147277e8a006d46c0349c666e6564383,c20f96a0735b6a40a18f38beb7a31a15fa92a5cddf5e50f23501a801fe0b7206,[],[]
-phase7-20260813-100,42,20260855,5bd63eff-2e2c-416a-aad2-ed12427e6a7e,during_object_upload,synthetic,replay,17924,1,2026-08-13T15:24:43.247610Z,2026-08-13T15:24:48.811845Z,2026-08-13T15:24:48.811845Z,2026-08-13T15:24:53.839081Z,3,1,1,1,1,0,1,1,3,3,3,3,0,True,True,2,1,experiment-package:d1e2cc384e4f6268a2a959abdc11fbc1,ff5482fc9eadd965da54ef6ed95e02f2645f92f4fda1a79779cf7ce9a9a701bc,"[""lease_lost""]",[]
-phase7-20260813-100,43,20260856,cd6374d8-0fa8-4a68-bf16-7c239a3a2bfe,after_adapter_return_before_upload,synthetic,replay,4548,1,2026-08-13T15:24:53.924958Z,2026-08-13T15:24:57.727820Z,2026-08-13T15:24:57.727820Z,2026-08-13T15:25:02.885865Z,3,1,1,1,1,0,1,1,3,3,3,3,0,True,True,2,1,experiment-package:4fb88e7a1308c3e1ac9e70a86ac85126,b9def2bac71026c8cac05332e9e6c82a2f3f4a08e580d77588a3b144311aa34d,"[""lease_lost""]",[]
-phase7-20260813-100,44,20260857,59cbeb32-5252-4d24-b89f-50f50964d679,after_adapter_return_before_upload,synthetic,replay,23440,1,2026-08-13T15:25:02.957424Z,2026-08-13T15:25:07.017031Z,2026-08-13T15:25:07.017031Z,2026-08-13T15:25:12.023007Z,3,1,1,1,1,0,1,1,3,3,3,3,0,True,True,2,1,experiment-package:bed2b6816292bd4a094cb7582cd30c45,8ef9e6b37c7f8e1f652c453cab997cd8bd78249a9641f42220d4e493bd410640,"[""lease_lost""]",[]
-phase7-20260813-100,45,20260858,bc38c14c-d8fa-4954-b1ab-d2af6df6d2a9,after_commit_before_acknowledgement,synthetic,replay,16936,1,2026-08-13T15:25:12.114958Z,2026-08-13T15:25:17.514919Z,2026-08-13T15:25:17.514919Z,2026-08-13T15:25:22.256845Z,2,0,1,1,1,0,1,1,3,2,2,2,0,True,True,2,1,experiment-package:4f1ca0510c6492a514296a2e61791f8c,b36945a1356689361f9815c51080dacc7a7c1bfb9d55e6cc665408a11ac4f0fc,[],[]
-phase7-20260813-100,46,20260859,d0cb5535-5a73-4a33-9d7b-e2be378f10fc,after_commit_before_acknowledgement,synthetic,replay,38212,1,2026-08-13T15:25:22.337301Z,2026-08-13T15:25:27.069092Z,2026-08-13T15:25:27.069092Z,2026-08-13T15:25:31.632071Z,2,0,1,1,1,0,1,1,3,2,2,2,0,True,True,2,1,experiment-package:f3d91789d04ac5955dabf3f10ef96251,706dd051261ca8b027584e79e5936d0d6243c69ca55fe896bcfd7262f49ada8e,[],[]
-phase7-20260813-100,47,20260860,59ea5b03-51b3-403a-9a2d-1b852f3eaab5,after_commit_before_acknowledgement,synthetic,replay,39016,1,2026-08-13T15:25:31.697565Z,2026-08-13T15:25:35.111586Z,2026-08-13T15:25:35.111586Z,2026-08-13T15:25:39.866711Z,2,0,1,1,1,0,1,1,3,2,2,2,0,True,True,2,1,experiment-package:5605e96f69515408b416199350a47430,244d7942840ba37c3625e72cf28e6bc78d416742fbe789c7aec736b8f6078a0d,[],[]
-phase7-20260813-100,48,20260861,48dd37ad-ac19-4649-aac0-8fb0a40e95ea,after_commit_before_acknowledgement,synthetic,replay,36712,1,2026-08-13T15:25:39.929864Z,2026-08-13T15:25:43.528562Z,2026-08-13T15:25:43.528562Z,2026-08-13T15:25:47.748279Z,2,0,1,1,1,0,1,1,3,2,2,2,0,True,True,2,1,experiment-package:3979beacef41ee48bb0cfeb8ee2447af,ab18d03c56101b4159920c2ee4a0be65ab544432b9f3a6152774e0f16ad4afee,[],[]
-phase7-20260813-100,49,20260862,7c6d06d3-0c61-485c-acf8-23d1b851dea2,during_object_upload,synthetic,replay,27088,1,2026-08-13T15:25:47.821579Z,2026-08-13T15:25:51.112528Z,2026-08-13T15:25:51.112528Z,2026-08-13T15:25:55.393872Z,3,1,1,1,1,0,1,1,3,3,3,3,0,True,True,2,1,experiment-package:7510f371664e2a78d4b2e52bfcabe29f,695573658476c583a4c8bd3af640839a9e64b816bf9838978251683297e41db1,"[""lease_lost""]",[]
-phase7-20260813-100,50,20260863,87b5ce0a-2af4-481b-aa1f-c3c02dc28931,after_commit_before_acknowledgement,synthetic,replay,35896,1,2026-08-13T15:25:55.444899Z,2026-08-13T15:25:58.917816Z,2026-08-13T15:25:58.917816Z,2026-08-13T15:26:03.537546Z,2,0,1,1,1,0,1,1,3,2,2,2,0,True,True,2,1,experiment-package:3475d93f617876a2e46376f6ff614db5,f774c97c8b5cb913abe202028be4f7bfd4eacbeadf6861e6a105472df667641f,[],[]
-phase7-20260813-100,51,20260864,c624ec0a-5c8f-413f-99c0-c57e85617984,after_adapter_return_before_upload,synthetic,replay,37116,1,2026-08-13T15:26:03.603893Z,2026-08-13T15:26:07.318577Z,2026-08-13T15:26:07.318577Z,2026-08-13T15:26:12.277130Z,3,1,1,1,1,0,1,1,3,3,3,3,0,True,True,2,1,experiment-package:d44b07df708942f47df26b2137b093e4,92e05080ed5d226eba221749b0129181a725d999683a686e10850a3234e1cfa6,"[""lease_lost""]",[]
-phase7-20260813-100,52,20260865,db21d30b-ff2c-4431-8a8a-17a2ec046190,after_upload_before_outcome_transaction,synthetic,replay,33248,1,2026-08-13T15:26:12.332475Z,2026-08-13T15:26:15.148264Z,2026-08-13T15:26:15.148264Z,2026-08-13T15:26:20.116637Z,3,1,1,1,1,0,1,1,3,3,3,3,0,True,True,2,1,experiment-package:c145488cc9dbc636a0d84264ba9250a4,e98fa2dce9ffcefadf1c9e0f296b9ed945afed8aa37a34f692be48b3b714103e,"[""lease_lost""]",[]
-phase7-20260813-100,53,20260866,96e3f7c3-fa35-46dd-bafa-9b3d66aad56d,during_object_upload,synthetic,replay,38660,1,2026-08-13T15:26:20.227864Z,2026-08-13T15:26:24.048637Z,2026-08-13T15:26:24.048637Z,2026-08-13T15:26:29.169478Z,3,1,1,1,1,0,1,1,3,3,3,3,0,True,True,2,1,experiment-package:8edf504cc899b56acd2d05dd18cb2ceb,ebe272bbb36fcf0d6f63259279e916fab8913a0fb61285a4c8b907b12b33fa2f,"[""lease_lost""]",[]
-phase7-20260813-100,54,20260867,125d599f-5e20-4e67-8583-e8cdfd21f056,after_adapter_return_before_upload,synthetic,replay,28476,1,2026-08-13T15:26:29.244139Z,2026-08-13T15:26:32.889802Z,2026-08-13T15:26:32.889802Z,2026-08-13T15:26:37.903499Z,3,1,1,1,1,0,1,1,3,3,3,3,0,True,True,2,1,experiment-package:0a3045b268a310525c1daf1866400d3c,c7c67bb391a9f9e897e3d25bf42f98e37ed8894d1d17bb814a97c85dac3739c8,"[""lease_lost""]",[]
-phase7-20260813-100,55,20260868,bf5c4dfe-40fa-4789-bf66-f9b667f105ed,during_evidence_export,synthetic,replay,38972,1,2026-08-13T15:26:41.833104Z,2026-08-13T15:26:43.876601Z,2026-08-13T15:26:43.876601Z,2026-08-13T15:26:43.993339Z,2,0,1,1,1,0,1,1,3,2,2,2,0,True,True,2,1,experiment-package:e6c1d159f4477c0b4afb0a6aed1c412b,5893a518422290094627dbe0bd1fd44272d4ab713a2983f734c3018a98c289f5,[],[]
-phase7-20260813-100,56,20260869,28294cf5-321a-459b-90f2-d48c7a99d245,after_upload_before_outcome_transaction,synthetic,replay,11328,1,2026-08-13T15:26:44.052772Z,2026-08-13T15:26:47.504869Z,2026-08-13T15:26:47.504869Z,2026-08-13T15:26:52.806155Z,3,1,1,1,1,0,1,1,3,3,3,3,0,True,True,2,1,experiment-package:ef6e24fe8073ef1c587d3d67e6352267,8fac3971102e9fe6a927cbbe4cad8f0b74716879f4c6d2726a84272af26c1619,"[""lease_lost""]",[]
-phase7-20260813-100,57,20260870,78ef6b4e-b1ee-4618-b573-ef1007699e43,after_lease_acquisition,synthetic,replay,28676,1,2026-08-13T15:26:52.899417Z,2026-08-13T15:26:57.139661Z,2026-08-13T15:26:57.139661Z,2026-08-13T15:27:04.593029Z,2,1,1,1,1,0,1,1,3,2,3,2,1,True,True,2,1,experiment-package:af7df53822c9cda3a6029a2d0adeb213,86c1b6017c997494302bdeb0bb2c0f41411d185a48bc84ce77dcac643bbc375c,[],[]
-phase7-20260813-100,58,20260871,c04f2c07-1319-4eb0-bba8-f41a44594b72,after_commit_before_acknowledgement,synthetic,replay,18660,1,2026-08-13T15:27:04.736923Z,2026-08-13T15:27:10.073870Z,2026-08-13T15:27:10.073870Z,2026-08-13T15:27:14.916280Z,2,0,1,1,1,0,1,1,3,2,2,2,0,True,True,2,1,experiment-package:26f2aa5185fbc3cd0ebca82e87cd1bef,794b411fbae6b5a42768e346ecb21a1113a19d890b32248510ef114e28ea8031,[],[]
-phase7-20260813-100,59,20260872,b411eb8f-a546-4aa2-aaf3-3d790cbd5f05,after_upload_before_outcome_transaction,synthetic,replay,38204,1,2026-08-13T15:27:14.985522Z,2026-08-13T15:27:18.420231Z,2026-08-13T15:27:18.420231Z,2026-08-13T15:27:23.877233Z,3,1,1,1,1,0,1,1,3,3,3,3,0,True,True,2,1,experiment-package:70f05379470b5ff03420fa79aa00b7f9,d9a6ddc5a0b9b55c85a70206668b5d40d73c351b5aa80cc77c0aa22ebfe428a1,"[""lease_lost""]",[]
-phase7-20260813-100,60,20260873,a36a8519-635c-4a9a-89f7-e74603e5afb3,after_upload_before_outcome_transaction,synthetic,replay,22800,1,2026-08-13T15:27:23.954088Z,2026-08-13T15:27:27.699776Z,2026-08-13T15:27:27.699776Z,2026-08-13T15:27:32.796626Z,3,1,1,1,1,0,1,1,3,3,3,3,0,True,True,2,1,experiment-package:ac1ab626b34d48e7c52bb0535780ea57,7c1f3fb2cf39619bf0bc76ac93957250b94e6943477d82168568cac60e9c8312,"[""lease_lost""]",[]
-phase7-20260813-100,61,20260874,b20cf37e-2d82-44a8-9f5f-3aa42695fbc2,after_lease_acquisition,synthetic,replay,28400,1,2026-08-13T15:27:32.869649Z,2026-08-13T15:27:36.456534Z,2026-08-13T15:27:36.456534Z,2026-08-13T15:27:41.119291Z,2,1,1,1,1,0,1,1,3,2,3,2,1,True,True,2,1,experiment-package:151eec45cf4c45784f43b7e7b5695ed5,db7e55cf5d6297e28adaba162d5a78aea684ea8db0b77370593084357f5d58d6,[],[]
-phase7-20260813-100,62,20260875,8917decd-bef5-4230-8e03-1f0c56458e39,during_evidence_export,synthetic,replay,39100,1,2026-08-13T15:27:45.397031Z,2026-08-13T15:27:47.395127Z,2026-08-13T15:27:47.395127Z,2026-08-13T15:27:47.558603Z,2,0,1,1,1,0,1,1,3,2,2,2,0,True,True,2,1,experiment-package:d4456cd68fb71aee1b6f6414370729fa,3d832c83c7794699f100087e73da9aa4adc94bdd7cd3f0d0644d296c4149a983,[],[]
-phase7-20260813-100,63,20260876,de49fa8b-4661-45f1-bea9-ca9608e9558a,after_commit_before_acknowledgement,synthetic,replay,17928,1,2026-08-13T15:27:47.632347Z,2026-08-13T15:27:50.877603Z,2026-08-13T15:27:50.877603Z,2026-08-13T15:27:55.993969Z,2,0,1,1,1,0,1,1,3,2,2,2,0,True,True,2,1,experiment-package:a6f60c77e44f4a5b75f0849c78a69677,428dfe470b4103d9e99a98ed35a256e6a4e63b5f24a37a0dc623f70ad25a98b2,[],[]
-phase7-20260813-100,64,20260877,86ba137f-61a2-4ac2-b91c-e690e4474b40,after_lease_acquisition,synthetic,replay,28920,1,2026-08-13T15:27:56.058481Z,2026-08-13T15:27:59.343024Z,2026-08-13T15:27:59.343024Z,2026-08-13T15:28:04.861979Z,2,1,1,1,1,0,1,1,3,2,3,2,1,True,True,2,1,experiment-package:bad71cecccadb4dc69359ed8f21812c8,fb7da99237db2d882718654cc833317b030a9c570c98448ce82f7072913b7ba6,[],[]
-phase7-20260813-100,65,20260878,d384007b-c0c7-4a07-99e0-23d7fbbead56,after_upload_before_outcome_transaction,synthetic,replay,38244,1,2026-08-13T15:28:04.935819Z,2026-08-13T15:28:08.675778Z,2026-08-13T15:28:08.675778Z,2026-08-13T15:28:14.159312Z,3,1,1,1,1,0,1,1,3,3,3,3,0,True,True,2,1,experiment-package:20226041115fe6332083f416f9d06b10,596f37d110e661eab4d82030e4493e3a569222692e63433c809046e8859ad550,"[""lease_lost""]",[]
-phase7-20260813-100,66,20260879,8c8ea74e-2648-4dcb-bca7-0295f341a56e,after_lease_acquisition,synthetic,replay,27056,1,2026-08-13T15:28:14.226800Z,2026-08-13T15:28:17.973982Z,2026-08-13T15:28:17.973982Z,2026-08-13T15:28:23.298033Z,2,1,1,1,1,0,1,1,3,2,3,2,1,True,True,2,1,experiment-package:9de4b4e42500a99503e0c66d27fced8d,5ae70b4144399c667fcaec5858dcbc6ba2121c38f6d9f7f7fa25161d7c62ac31,[],[]
-phase7-20260813-100,67,20260880,e5c78838-d72a-4976-81cb-e80189296002,after_upload_before_outcome_transaction,synthetic,replay,38416,1,2026-08-13T15:28:23.382462Z,2026-08-13T15:28:27.282087Z,2026-08-13T15:28:27.282087Z,2026-08-13T15:28:32.493872Z,3,1,1,1,1,0,1,1,3,3,3,3,0,True,True,2,1,experiment-package:3701d18dd18dfc5adcf8750834f36a07,65c3692de54ff391321567d7749ffdf5a51d98996f101a57432d28544c6e296e,"[""lease_lost""]",[]
-phase7-20260813-100,68,20260881,27b887d3-a2e9-44af-9a78-44b4bc07f6c2,during_evidence_export,synthetic,replay,33644,1,2026-08-13T15:28:36.926575Z,2026-08-13T15:28:39.131633Z,2026-08-13T15:28:39.131633Z,2026-08-13T15:28:39.266996Z,2,0,1,1,1,0,1,1,3,2,2,2,0,True,True,2,1,experiment-package:9bccb410446defe8e240256726327c82,acd40b0b29bf1118960b4464eddfa04864ad91ac95a5459bd9318773e126aca3,[],[]
-phase7-20260813-100,69,20260882,fca390dd-591a-4b30-9071-fba97647aaca,after_adapter_return_before_upload,synthetic,replay,18544,1,2026-08-13T15:28:39.334019Z,2026-08-13T15:28:42.929843Z,2026-08-13T15:28:42.929843Z,2026-08-13T15:28:48.851081Z,3,1,1,1,1,0,1,1,3,3,3,3,0,True,True,2,1,experiment-package:23bd010884c9bff28379f89b4d4e2de2,36f4f590f5f31182f51e39e4f6883409a6d508ba1499c725ece6d22087cea449,"[""lease_lost""]",[]
-phase7-20260813-100,70,20260883,47e0cf17-3b46-4ef7-bd1e-301a0b178d6c,during_evidence_export,synthetic,replay,34276,1,2026-08-13T15:28:53.324159Z,2026-08-13T15:28:55.370534Z,2026-08-13T15:28:55.370534Z,2026-08-13T15:28:55.518202Z,2,0,1,1,1,0,1,1,3,2,2,2,0,True,True,2,1,experiment-package:6acb1ca5d245cafd48ca5520c0a1fb6f,d4968bda9c89fab5c3e3f6d77ad9eab28527a41e4f41221bff207fb76776fb1f,[],[]
-phase7-20260813-100,71,20260884,9c646f85-7801-4760-b6c3-684cc20fda21,after_adapter_return_before_upload,synthetic,replay,25552,1,2026-08-13T15:28:55.599897Z,2026-08-13T15:28:59.597379Z,2026-08-13T15:28:59.597379Z,2026-08-13T15:29:05.661466Z,3,1,1,1,1,0,1,1,3,3,3,3,0,True,True,2,1,experiment-package:e6b9d7033e1d5e6d76bc9c35899f1ae0,2ec9cd9ed497d4d1e7d36f678e96d511d28bfd2c8941e7ef43d39ed4cc94d667,"[""lease_lost""]",[]
-phase7-20260813-100,72,20260885,072d4372-08f2-4c90-b42e-57af4ee751c1,during_object_upload,synthetic,replay,35768,1,2026-08-13T15:29:05.733141Z,2026-08-13T15:29:09.651851Z,2026-08-13T15:29:09.651851Z,2026-08-13T15:29:15.928779Z,3,1,1,1,1,0,1,1,3,3,3,3,0,True,True,2,1,experiment-package:2df114372364ff8d287ab37123b0e5a4,aaac5d4a1b0821fecd35b47e2be1c9eadd03a9796e94686fed43157dffa3ec96,"[""lease_lost""]",[]
-phase7-20260813-100,73,20260886,cb133b65-1429-4249-b345-1b7b78f28dea,during_evidence_export,synthetic,replay,29732,1,2026-08-13T15:29:20.105577Z,2026-08-13T15:29:21.744139Z,2026-08-13T15:29:21.744139Z,2026-08-13T15:29:21.891671Z,2,0,1,1,1,0,1,1,3,2,2,2,0,True,True,2,1,experiment-package:9927872772614a8179595a80c7a20773,df91506968b4fce6a76488bb4c5459fb5062edc05947bb1a79dfe63311e9c625,[],[]
-phase7-20260813-100,74,20260887,b5f6266d-f6f5-4109-a632-fca8823a3300,after_lease_acquisition,synthetic,replay,38364,1,2026-08-13T15:29:21.954646Z,2026-08-13T15:29:26.316563Z,2026-08-13T15:29:26.316563Z,2026-08-13T15:29:31.877413Z,2,1,1,1,1,0,1,1,3,2,3,2,1,True,True,2,1,experiment-package:68be63ee7b4970504cebcbead5603493,ecc4d6d5d20328aaef0cfcd0e64c7e9ca2b5199634d7d7897951bd3a97bda9e7,[],[]
-phase7-20260813-100,75,20260888,01590fe3-e7ca-4e25-8b3a-1f3030e6885d,during_evidence_export,synthetic,replay,38332,1,2026-08-13T15:29:36.836947Z,2026-08-13T15:29:38.784010Z,2026-08-13T15:29:38.784010Z,2026-08-13T15:29:38.951449Z,2,0,1,1,1,0,1,1,3,2,2,2,0,True,True,2,1,experiment-package:659e106425bb6b4705762aeb5b262565,0980916715b1f4f41b9e867f4808e6d70d0003b7fc677790f4711a863fb58dbc,[],[]
-phase7-20260813-100,76,20260889,b9606d88-c543-461e-b948-1d89709557e4,after_commit_before_acknowledgement,synthetic,replay,4500,1,2026-08-13T15:29:39.011082Z,2026-08-13T15:29:42.677709Z,2026-08-13T15:29:42.677709Z,2026-08-13T15:29:48.450508Z,2,0,1,1,1,0,1,1,3,2,2,2,0,True,True,2,1,experiment-package:5563af1211b86b3666d22ef811b7ebeb,e3ba6e08d3e7c59d2b38df65a0a9508872008202904c56d7aa518e7d514eee5c,[],[]
-phase7-20260813-100,77,20260890,1e330dca-c472-448e-b9b0-abb37eec951e,after_adapter_return_before_upload,synthetic,replay,30160,1,2026-08-13T15:29:48.510696Z,2026-08-13T15:29:51.994024Z,2026-08-13T15:29:51.994024Z,2026-08-13T15:29:58.260885Z,3,1,1,1,1,0,1,1,3,3,3,3,0,True,True,2,1,experiment-package:216c208c2c003d83d714e4849075d5dd,4f5eca006d620e4fc0fd37f62b61856428bb25ed36106d1e5cb3a205b65260b6,"[""lease_lost""]",[]
-phase7-20260813-100,78,20260891,48759d52-8893-4de1-9344-b3ee0f5e48a8,after_upload_before_outcome_transaction,synthetic,replay,12876,1,2026-08-13T15:29:58.322188Z,2026-08-13T15:30:01.707813Z,2026-08-13T15:30:01.707813Z,2026-08-13T15:30:08.113355Z,3,1,1,1,1,0,1,1,3,3,3,3,0,True,True,2,1,experiment-package:63b8c5f983a258245b45d0b31f6ee9af,2c899a8647da720594b6a3c54ddd7b76a3ba1c5c0a2a13e7440ab4fccdf49e9b,"[""lease_lost""]",[]
-phase7-20260813-100,79,20260892,39c05254-5da1-43e2-9eed-044e22381b6f,during_evidence_export,synthetic,replay,29620,1,2026-08-13T15:30:12.698520Z,2026-08-13T15:30:14.860248Z,2026-08-13T15:30:14.860248Z,2026-08-13T15:30:15.080727Z,2,0,1,1,1,0,1,1,3,2,2,2,0,True,True,2,1,experiment-package:bc5faf0f6c99a6b5e052754b18d133b8,3489c63a24e0452aac4c046aa74998820f80bfa899b599a574cab42980d40c70,[],[]
-phase7-20260813-100,80,20260893,58bc6b16-5c81-4b87-a0e8-81dec961885a,after_adapter_return_before_upload,synthetic,replay,39852,1,2026-08-13T15:30:15.164274Z,2026-08-13T15:30:19.365807Z,2026-08-13T15:30:19.365807Z,2026-08-13T15:30:25.909544Z,3,1,1,1,1,0,1,1,3,3,3,3,0,True,True,2,1,experiment-package:3cbc948779291e0297b26d7f913d37ba,049fcc45b2c8f07a0a71d274063029fbe87d17828aaec9341830a6bd630fa811,"[""lease_lost""]",[]
-phase7-20260813-100,81,20260894,9f330b2f-2e46-4923-9ddf-894e38a6627c,during_object_upload,synthetic,replay,38508,1,2026-08-13T15:30:25.981946Z,2026-08-13T15:30:29.866966Z,2026-08-13T15:30:29.866966Z,2026-08-13T15:30:36.494712Z,3,1,1,1,1,0,1,1,3,3,3,3,0,True,True,2,1,experiment-package:a8ca514cc3d93ac7cd045d545717ebfe,0eb78aa2b3c752b8486ad688c3da41b0b92b7f31645b203b04a05462f315fab0,"[""lease_lost""]",[]
-phase7-20260813-100,82,20260895,dd914774-38dd-492d-92fb-8420c8ab58b7,after_commit_before_acknowledgement,synthetic,replay,33456,1,2026-08-13T15:30:36.563281Z,2026-08-13T15:30:40.802178Z,2026-08-13T15:30:40.802178Z,2026-08-13T15:30:47.298901Z,2,0,1,1,1,0,1,1,3,2,2,2,0,True,True,2,1,experiment-package:fd1bd241579af27821230f74183c1962,06cb6aa8c88f93b3c84159cbe02ea94e5fa36d19b8a1b4b5026d23762096e843,[],[]
-phase7-20260813-100,83,20260896,1e85d510-f597-405f-9351-eb5683f60ed3,after_upload_before_outcome_transaction,synthetic,replay,3644,1,2026-08-13T15:30:47.378953Z,2026-08-13T15:30:51.185542Z,2026-08-13T15:30:51.185542Z,2026-08-13T15:30:57.948240Z,3,1,1,1,1,0,1,1,3,3,3,3,0,True,True,2,1,experiment-package:807d12d4c932f7e248aa3db36327b60a,9c6b2345b8deeb89b3fbeea65b9238f2c66c657a37d9a0b2047257ba59053ace,"[""lease_lost""]",[]
-phase7-20260813-100,84,20260897,68613b39-5b67-4f47-a4da-35ce5068f40b,after_upload_before_outcome_transaction,synthetic,replay,34568,1,2026-08-13T15:30:58.022274Z,2026-08-13T15:31:01.661032Z,2026-08-13T15:31:01.661032Z,2026-08-13T15:31:08.599962Z,3,1,1,1,1,0,1,1,3,3,3,3,0,True,True,2,1,experiment-package:cd7347d779b0b3ebecd339788049e183,3fdb20e8a6b3b813a099d455764d5995589e69a6c3121747feada51e1458a189,"[""lease_lost""]",[]
-phase7-20260813-100,85,20260898,5b3e002f-5593-456a-9e46-d21e941ec43e,after_adapter_return_before_upload,synthetic,replay,8344,1,2026-08-13T15:31:08.694903Z,2026-08-13T15:31:12.645496Z,2026-08-13T15:31:12.645496Z,2026-08-13T15:31:19.799129Z,3,1,1,1,1,0,1,1,3,3,3,3,0,True,True,2,1,experiment-package:e8613e254fb8bec6aad3422f955ccedc,7ebf7dac740e551996f7b8afb44bce85d1d5a827c6fb1c23ac1711315c051f46,"[""lease_lost""]",[]
-phase7-20260813-100,86,20260899,ed089dbc-273b-410a-ae00-2adc2cdb48ce,during_object_upload,synthetic,replay,34152,1,2026-08-13T15:31:19.882319Z,2026-08-13T15:31:24.446789Z,2026-08-13T15:31:24.446789Z,2026-08-13T15:31:30.633307Z,3,1,1,1,1,0,1,1,3,3,3,3,0,True,True,2,1,experiment-package:6a9277b68b8b2ff13ec37021d29fb064,9f8d35136ce2d904f23c96785ba54127d4f90e5ca2c5ed6fe12868bedc3b9ee8,"[""lease_lost""]",[]
-phase7-20260813-100,87,20260900,edbe2be0-d9ed-46d1-a4a5-41fe9f7e9536,after_upload_before_outcome_transaction,synthetic,replay,36440,1,2026-08-13T15:31:30.687232Z,2026-08-13T15:31:35.139291Z,2026-08-13T15:31:35.139291Z,2026-08-13T15:31:41.375080Z,3,1,1,1,1,0,1,1,3,3,3,3,0,True,True,2,1,experiment-package:d7f09fe7074d3a61f0fbc112bf266106,6828238c165580690d00f38fd3101eda01ed9c92efc53c887091da35816d2688,"[""lease_lost""]",[]
-phase7-20260813-100,88,20260901,7a82b14e-f2c1-4679-b28a-9e0194e71e95,after_upload_before_outcome_transaction,synthetic,replay,30076,1,2026-08-13T15:31:41.448387Z,2026-08-13T15:31:45.972413Z,2026-08-13T15:31:45.972413Z,2026-08-13T15:31:52.301258Z,3,1,1,1,1,0,1,1,3,3,3,3,0,True,True,2,1,experiment-package:dd198c2a1003040b5bc2c3522a979e02,5fb9c3d951043f7d2ffb3cecf7546008a28e092dd47ad7b3fbcf28a96fb9fae0,"[""lease_lost""]",[]
-phase7-20260813-100,89,20260902,84a30526-8931-4372-90f9-b60c1e111ed0,after_adapter_return_before_upload,synthetic,replay,38948,1,2026-08-13T15:31:52.369736Z,2026-08-13T15:31:57.133054Z,2026-08-13T15:31:57.133054Z,2026-08-13T15:32:03.148721Z,3,1,1,1,1,0,1,1,3,3,3,3,0,True,True,2,1,experiment-package:8db6a828c345a27c0abee93c5dbd4993,61eff8f2a4db0d9a184559f2a4b20bab0d2f06f1d583bcce06d744f19d0cfbe4,"[""lease_lost""]",[]
-phase7-20260813-100,90,20260903,136f2ca6-1984-42a4-9266-82479854223f,after_upload_before_outcome_transaction,synthetic,replay,36292,1,2026-08-13T15:32:03.225548Z,2026-08-13T15:32:07.775121Z,2026-08-13T15:32:07.775121Z,2026-08-13T15:32:14.146381Z,3,1,1,1,1,0,1,1,3,3,3,3,0,True,True,2,1,experiment-package:f39528e74f359f077675fae4e99d2e35,e774c4d9a5b81a2eb0308cff9b3077d89cba388cdf94459b6c1c9511615eecb3,"[""lease_lost""]",[]
-phase7-20260813-100,91,20260904,4cf918c1-a536-4f95-968e-7a5406ce59b7,during_evidence_export,synthetic,replay,13640,1,2026-08-13T15:32:19.872357Z,2026-08-13T15:32:21.407678Z,2026-08-13T15:32:21.407678Z,2026-08-13T15:32:21.557134Z,2,0,1,1,1,0,1,1,3,2,2,2,0,True,True,2,1,experiment-package:cfda7b272632926583622585f0516c89,f344f69bf8c6b4f112046b34e7a566d5b389ed04d292c349f92dc7fef655df90,[],[]
-phase7-20260813-100,92,20260905,6c3b6a35-8005-4b87-9352-3c102ea4e6e3,after_adapter_return_before_upload,synthetic,replay,37516,1,2026-08-13T15:32:21.656519Z,2026-08-13T15:32:26.376511Z,2026-08-13T15:32:26.376511Z,2026-08-13T15:32:33.075533Z,3,1,1,1,1,0,1,1,3,3,3,3,0,True,True,2,1,experiment-package:4657687a6e5df6a055250ddb259a3fec,30fdece637f811b7dbccbfa9711bf743eaa28c73bcc18888f0e577691e612235,"[""lease_lost""]",[]
-phase7-20260813-100,93,20260906,519d9e8c-7f1f-4fcf-9b02-a880ca86a268,after_adapter_return_before_upload,synthetic,replay,38076,1,2026-08-13T15:32:33.153634Z,2026-08-13T15:32:37.710797Z,2026-08-13T15:32:37.710797Z,2026-08-13T15:32:44.400621Z,3,1,1,1,1,0,1,1,3,3,3,3,0,True,True,2,1,experiment-package:5df94ca306e3b14060c6c7de0eb36932,32d8f84d4d3de868b50a510c49a787dc7ef55c704e57131ffec9545f77fddf14,"[""lease_lost""]",[]
-phase7-20260813-100,94,20260907,eedb969b-1a0d-45d1-a1e8-37cbea951417,during_evidence_export,synthetic,replay,23984,1,2026-08-13T15:32:50.087056Z,2026-08-13T15:32:51.877272Z,2026-08-13T15:32:51.877272Z,2026-08-13T15:32:52.021314Z,2,0,1,1,1,0,1,1,3,2,2,2,0,True,True,2,1,experiment-package:4f0a9bef9e51d636d29a5fe783e6ed1f,124a31b5bd570973b97822fe5c17a27a0d2835be2fd2b2fdbfcc193c011a5257,[],[]
-phase7-20260813-100,95,20260908,f5360227-cf82-4423-9f17-fcc48f0e26df,after_lease_acquisition,synthetic,replay,39056,1,2026-08-13T15:32:52.088793Z,2026-08-13T15:32:56.854658Z,2026-08-13T15:32:56.854658Z,2026-08-13T15:33:03.844750Z,2,1,1,1,1,0,1,1,3,2,3,2,1,True,True,2,1,experiment-package:9e1ce1f2d0f8e8a037096442b41b8462,c786095d28c95fb29d78c02a426fe511cf41878f9631bde8a3ceaa734545ec69,[],[]
-phase7-20260813-100,96,20260909,61890fc0-9ed1-4ed1-8db0-fd4c5b6318dc,after_upload_before_outcome_transaction,synthetic,replay,33372,1,2026-08-13T15:33:03.956843Z,2026-08-13T15:33:08.638300Z,2026-08-13T15:33:08.638300Z,2026-08-13T15:33:15.651615Z,3,1,1,1,1,0,1,1,3,3,3,3,0,True,True,2,1,experiment-package:f0d37322ba4baa7d6c449a77b2cd4e46,cc91206fa0c706b1817968454c0557d795c4adec15d819d2103f648f52dd918a,"[""lease_lost""]",[]
-phase7-20260813-100,97,20260910,a2c40507-e440-4f6a-b166-87f5d619a9dd,after_commit_before_acknowledgement,synthetic,replay,30836,1,2026-08-13T15:33:15.716694Z,2026-08-13T15:33:20.267494Z,2026-08-13T15:33:20.267494Z,2026-08-13T15:33:27.569747Z,2,0,1,1,1,0,1,1,3,2,2,2,0,True,True,2,1,experiment-package:25068ca2c5d0ca3b1345d443146f12fd,77507ddcb13e11511fb075ca91dd620cedca49e6f44b4a72480e7b76c0c1ee5f,[],[]
-phase7-20260813-100,98,20260911,f3e4def2-6635-4026-9e1f-9fa2b0f3e4f2,during_object_upload,synthetic,replay,37700,1,2026-08-13T15:33:27.639212Z,2026-08-13T15:33:31.695173Z,2026-08-13T15:33:31.695173Z,2026-08-13T15:33:39.131602Z,3,1,1,1,1,0,1,1,3,3,3,3,0,True,True,2,1,experiment-package:ec2dbee75eec96c171824f361241ac05,96eb6915e3460f0d41861c23955d9bc3db216db4d51c03b47c5c8e34e68813a2,"[""lease_lost""]",[]
-phase7-20260813-100,99,20260912,94c8929d-f086-472b-b54d-4702739bb26f,during_evidence_export,synthetic,replay,34420,1,2026-08-13T15:33:44.522002Z,2026-08-13T15:33:46.519404Z,2026-08-13T15:33:46.519404Z,2026-08-13T15:33:46.687603Z,2,0,1,1,1,0,1,1,3,2,2,2,0,True,True,2,1,experiment-package:5eeaa97dc2a11b6a1c05b46f10323dbf,a6e4f7c027af10c842ecb2333d84e07e17bab50d65dbcec9d726f442647e32d8,[],[]
-phase7-20260813-100,100,20260913,19937805-b191-4d42-bff5-ef2f6ada4fe8,during_evidence_export,synthetic,replay,9728,1,2026-08-13T15:33:52.331003Z,2026-08-13T15:33:54.486429Z,2026-08-13T15:33:54.486429Z,2026-08-13T15:33:54.640369Z,2,0,1,1,1,0,1,1,3,2,2,2,0,True,True,2,1,experiment-package:98c883b10e75f6150b98720c7d6f2274,9ea560b053fcf8426bb1a05b1308ea9d994e3503b646f70792054e64b33cb588,[],[]
+phase7-20260813-100,1,20260814,6b985d61-1f60-44d9-881c-807d024beb86,after_upload_before_outcome_transaction,synthetic,replay,35220,1,2026-08-14T10:10:08.541304Z,2026-08-14T10:10:11.197768Z,2026-08-14T10:10:11.197768Z,2026-08-14T10:10:13.940587Z,3,1,1,1,1,0,1,1,3,3,3,3,0,True,True,2,1,experiment-package:1414b041c81403865340375ce2d5cd9d,86a7caa79c1741d73a7c912882a7abf7c2ab846be127338e8bbd18b1d8a13b4c,"[""lease_lost""]",[]
+phase7-20260813-100,2,20260815,3ec20c72-ef7d-4976-8458-f77e4c0cdf95,after_commit_before_acknowledgement,synthetic,replay,31992,1,2026-08-14T10:10:14.069961Z,2026-08-14T10:10:17.727327Z,2026-08-14T10:10:17.727327Z,2026-08-14T10:10:19.665713Z,2,0,1,1,1,0,1,1,3,2,2,2,0,True,True,2,1,experiment-package:1aa9c3cfbcb1c61fbd9efb7b04d24578,dfde9196df4488dbd1e5f786084d1a48116ca9c2ec3a232ddc3e41e986b42cfe,[],[]
+phase7-20260813-100,3,20260816,d691cf85-6cc4-4ff6-ae0e-e09eef28676b,after_commit_before_acknowledgement,synthetic,replay,35612,1,2026-08-14T10:10:19.729429Z,2026-08-14T10:10:22.554614Z,2026-08-14T10:10:22.554614Z,2026-08-14T10:10:24.572791Z,2,0,1,1,1,0,1,1,3,2,2,2,0,True,True,2,1,experiment-package:977845b98cb7b844b52e04de5ea708dd,59e9845b5665c7711e67ba3b141bc17a7250b8a6cf99eef88c6245a62936132f,[],[]
+phase7-20260813-100,4,20260817,e99032a1-d0db-417c-afbb-7323c2916f43,after_upload_before_outcome_transaction,synthetic,replay,34784,1,2026-08-14T10:10:24.642532Z,2026-08-14T10:10:26.963888Z,2026-08-14T10:10:26.963888Z,2026-08-14T10:10:29.286627Z,3,1,1,1,1,0,1,1,3,3,3,3,0,True,True,2,1,experiment-package:0afa5fd9864def08c5c9f13b9ed1c45b,29d538eff169caf773dc4f362bd3b17b3d663e3edfdd054a830e7173d3be8188,"[""lease_lost""]",[]
+phase7-20260813-100,5,20260818,debea722-7e09-48fa-87da-b9497c61bed9,during_evidence_export,synthetic,replay,36428,1,2026-08-14T10:10:30.205785Z,2026-08-14T10:10:31.797918Z,2026-08-14T10:10:31.797918Z,2026-08-14T10:10:31.920780Z,2,0,1,1,1,0,1,1,3,2,2,2,0,True,True,2,1,experiment-package:9b56e5ccf96f83051746cbddef119e45,26e6e6ce6b0e9daaf2c76e4a65450d05c4dc8c903cbc2ca02e1ffb7f3dee8008,[],[]
+phase7-20260813-100,6,20260819,a1bc6249-fbc8-4959-bfbe-28a425045f05,after_commit_before_acknowledgement,synthetic,replay,36304,1,2026-08-14T10:10:31.979406Z,2026-08-14T10:10:34.411422Z,2026-08-14T10:10:34.411422Z,2026-08-14T10:10:36.367988Z,2,0,1,1,1,0,1,1,3,2,2,2,0,True,True,2,1,experiment-package:74bd13cf276c5d69481f85d14ef81331,6b82127f6ebbc7f2387472f9221be60bf4c382b17cb002faa8f128b8e2afc16c,[],[]
+phase7-20260813-100,7,20260820,4e2327cc-9dea-464a-bfdd-cb24bb962bda,after_lease_acquisition,synthetic,replay,24932,1,2026-08-14T10:10:36.421794Z,2026-08-14T10:10:38.535645Z,2026-08-14T10:10:38.535645Z,2026-08-14T10:10:41.026907Z,2,1,1,1,1,0,1,1,3,2,3,2,1,True,True,2,1,experiment-package:7cad4e0b8f7c7b14e990b1aba26ad3aa,e5e1b6cc569e81942883c5cab902a9981e3357579e6b7b9e6331dd0cac107c57,[],[]
+phase7-20260813-100,8,20260821,63c86416-3e69-49c6-9c26-7c19c7cad96d,during_object_upload,synthetic,replay,29024,1,2026-08-14T10:10:41.075890Z,2026-08-14T10:10:43.275096Z,2026-08-14T10:10:43.275096Z,2026-08-14T10:10:46.067999Z,3,1,1,1,1,0,1,1,3,3,3,3,0,True,True,2,1,experiment-package:47999c9e3d7555b3a20655ec51fab20f,657c7d65d430459bd3c332622c8f2c45ecc672124b77152503be536c1dbbd1de,"[""lease_lost""]",[]
+phase7-20260813-100,9,20260822,605615d2-914f-4543-b5b0-f0a4b8bce588,during_object_upload,synthetic,replay,14492,1,2026-08-14T10:10:46.125239Z,2026-08-14T10:10:49.667977Z,2026-08-14T10:10:49.667977Z,2026-08-14T10:10:53.536849Z,3,1,1,1,1,0,1,1,3,3,3,3,0,True,True,2,1,experiment-package:ac75dc2e372bbfd60c3680ed755417a1,b3f8ffdb5a08b115e3b8fe9cfa34530a260dbd9dd1b6ce5c13f3399859395040,"[""lease_lost""]",[]
+phase7-20260813-100,10,20260823,fa5dde52-f4d2-49e6-9da6-9e0650f9f995,after_adapter_return_before_upload,synthetic,replay,28800,1,2026-08-14T10:10:53.609050Z,2026-08-14T10:10:55.838197Z,2026-08-14T10:10:55.838197Z,2026-08-14T10:10:58.674242Z,3,1,1,1,1,0,1,1,3,3,3,3,0,True,True,2,1,experiment-package:ea4cb92d87f72d93f41674ae3e664df7,c1b5dbf63957312b5223df33059dec364108cedfff52fe1457557a82e959901c,"[""lease_lost""]",[]
+phase7-20260813-100,11,20260824,7f13ceee-76a2-4996-be86-6342a9ca4b14,during_object_upload,synthetic,replay,27400,1,2026-08-14T10:10:58.763269Z,2026-08-14T10:11:01.507675Z,2026-08-14T10:11:01.507675Z,2026-08-14T10:11:04.261601Z,3,1,1,1,1,0,1,1,3,3,3,3,0,True,True,2,1,experiment-package:852206b0f7b1135639e353dee147e933,c244a3a25e4aa7929ce0472fb7e33c172e2fd72bdbaa83f7e3edcc6f9878a26b,"[""lease_lost""]",[]
+phase7-20260813-100,12,20260825,8c33bb8b-54d6-4e69-8398-19320e394cec,after_commit_before_acknowledgement,synthetic,replay,36232,1,2026-08-14T10:11:04.350169Z,2026-08-14T10:11:07.005153Z,2026-08-14T10:11:07.005153Z,2026-08-14T10:11:09.445493Z,2,0,1,1,1,0,1,1,3,2,2,2,0,True,True,2,1,experiment-package:231bc333897664a1b5b9543ed2d259ca,4e0a33de9a4ec4e9afd4ffa1f6584158b2146cbbbbf546b78dd219c12c1ea240,[],[]
+phase7-20260813-100,13,20260826,eb15f57a-9453-455b-b698-b9c0c7392a7a,after_adapter_return_before_upload,synthetic,replay,34956,1,2026-08-14T10:11:09.511999Z,2026-08-14T10:11:11.780887Z,2026-08-14T10:11:11.780887Z,2026-08-14T10:11:14.679115Z,3,1,1,1,1,0,1,1,3,3,3,3,0,True,True,2,1,experiment-package:b6f10393d1262459eace3aabdc4e1ad6,84f1c814fa769bc415fd5a8f4ad52f3c43ef96799a0a7c577326296414586bce,"[""lease_lost""]",[]
+phase7-20260813-100,14,20260827,151ccef8-ef3e-4d0f-8369-e7f7f608ef6f,after_lease_acquisition,synthetic,replay,1888,1,2026-08-14T10:11:14.745658Z,2026-08-14T10:11:16.912007Z,2026-08-14T10:11:16.912007Z,2026-08-14T10:11:20.340675Z,2,1,1,1,1,0,1,1,3,2,3,2,1,True,True,2,1,experiment-package:9b9ac01b74af9a8853a8873eb80524ae,ea07a61da7c0a0c1bafc48b5e847b296f9768cee8268554c7ade0b35c81e29c7,[],[]
+phase7-20260813-100,15,20260828,ae40ec4a-9c7c-4bf0-b9cf-f52c96558d1c,after_lease_acquisition,synthetic,replay,33568,1,2026-08-14T10:11:20.409416Z,2026-08-14T10:11:23.043569Z,2026-08-14T10:11:23.043569Z,2026-08-14T10:11:26.038171Z,2,1,1,1,1,0,1,1,3,2,3,2,1,True,True,2,1,experiment-package:0555fed1abbd483a0fdbd917c8ce4805,fce6f56e33c56eb3ad3d089aa53e3486618e5fd5287ba9282e0e061750375a00,[],[]
+phase7-20260813-100,16,20260829,7ddde011-de55-4b48-8979-a68b176eafaa,after_lease_acquisition,synthetic,replay,34368,1,2026-08-14T10:11:26.097691Z,2026-08-14T10:11:28.458627Z,2026-08-14T10:11:28.458627Z,2026-08-14T10:11:32.015471Z,2,1,1,1,1,0,1,1,3,2,3,2,1,True,True,2,1,experiment-package:22a3784d17204a82eedcdb2a27bcb0f9,b3ab131411f9095f23d51f6524834b1c89671c6198cf50c9061bb21aa5b56698,[],[]
+phase7-20260813-100,17,20260830,137655fe-2638-4d0f-a009-bcc9176dd0e7,after_adapter_return_before_upload,synthetic,replay,2232,1,2026-08-14T10:11:32.095132Z,2026-08-14T10:11:35.296299Z,2026-08-14T10:11:35.296299Z,2026-08-14T10:11:38.411243Z,3,1,1,1,1,0,1,1,3,3,3,3,0,True,True,2,1,experiment-package:0ea7d4987e61464380c5f4bdbd20bb58,e76d6a93738dab3e093436a9002fec6d90a503e311461eaf13e8eededc3b2f90,"[""lease_lost""]",[]
+phase7-20260813-100,18,20260831,c5e5e6d8-0f6e-4af6-81df-c86cfb376721,during_object_upload,synthetic,replay,34360,1,2026-08-14T10:11:38.511691Z,2026-08-14T10:11:41.871762Z,2026-08-14T10:11:41.871762Z,2026-08-14T10:11:45.150350Z,3,1,1,1,1,0,1,1,3,3,3,3,0,True,True,2,1,experiment-package:a132f5fe1649a05a80715eb0827a28b8,409ee8a971ac7f6e6ddcc94413eef8b280dc39f6ee4c1c3b6c175b1e7f8c9dc2,"[""lease_lost""]",[]
+phase7-20260813-100,19,20260832,b27e92ae-eb8e-4576-bef9-b923334dcc71,after_adapter_return_before_upload,synthetic,replay,27016,1,2026-08-14T10:11:45.232075Z,2026-08-14T10:11:48.327089Z,2026-08-14T10:11:48.327089Z,2026-08-14T10:11:51.629487Z,3,1,1,1,1,0,1,1,3,3,3,3,0,True,True,2,1,experiment-package:e335bb813afe560ea22c59d70b255e68,605d4217b61a92f1dd04957125bb6aad9464632568d9514bf4fba438607d17ac,"[""lease_lost""]",[]
+phase7-20260813-100,20,20260833,60c1b1b6-173f-4375-afc2-67a5f2ae08aa,during_object_upload,synthetic,replay,34240,1,2026-08-14T10:11:51.700767Z,2026-08-14T10:11:54.424125Z,2026-08-14T10:11:54.424125Z,2026-08-14T10:11:57.389518Z,3,1,1,1,1,0,1,1,3,3,3,3,0,True,True,2,1,experiment-package:786016bc979d5d2328c7905b31e79950,188cf0df0108fc7ac45252bb6c4b30bd13be5b549b6a005d7c8c7e842ca25644,"[""lease_lost""]",[]
+phase7-20260813-100,21,20260834,4a29aec2-9501-4195-97e3-25eeb1014c87,during_object_upload,synthetic,replay,34460,1,2026-08-14T10:11:57.447343Z,2026-08-14T10:12:00.179646Z,2026-08-14T10:12:00.179646Z,2026-08-14T10:12:03.124567Z,3,1,1,1,1,0,1,1,3,3,3,3,0,True,True,2,1,experiment-package:78bdcb7ffe116250e0c0b796845656a4,f8b43cf5e473f4ca56cb2323298561888542e30d12ff3ef4e35b15c77ab7da1c,"[""lease_lost""]",[]
+phase7-20260813-100,22,20260835,e107ca1d-5f49-43ad-98d0-82bbd2161c5b,after_upload_before_outcome_transaction,synthetic,replay,35572,1,2026-08-14T10:12:03.205372Z,2026-08-14T10:12:05.880034Z,2026-08-14T10:12:05.880034Z,2026-08-14T10:12:08.865576Z,3,1,1,1,1,0,1,1,3,3,3,3,0,True,True,2,1,experiment-package:1d589d7de8e38831b299ddc0b6aebbb3,ac2e6a9d738757b6fa24a61f46b47e2b547d5a4cbf03580a1340627907bb42dc,"[""lease_lost""]",[]
+phase7-20260813-100,23,20260836,f12df2e2-3626-4d3e-9350-dd8e497c4f47,during_object_upload,synthetic,replay,33344,1,2026-08-14T10:12:08.916540Z,2026-08-14T10:12:11.128827Z,2026-08-14T10:12:11.128827Z,2026-08-14T10:12:14.287442Z,3,1,1,1,1,0,1,1,3,3,3,3,0,True,True,2,1,experiment-package:7f78584f6f8625ecb8f36a9996bf022f,218b9c8478ffb4ae8f1a95a5593ca749918d5a6a7eb0300724884cd9b7065d96,"[""lease_lost""]",[]
+phase7-20260813-100,24,20260837,1d42f522-20a4-4679-b64f-1d426a3d1828,after_adapter_return_before_upload,synthetic,replay,34680,1,2026-08-14T10:12:14.346917Z,2026-08-14T10:12:16.709410Z,2026-08-14T10:12:16.709410Z,2026-08-14T10:12:20.387650Z,3,1,1,1,1,0,1,1,3,3,3,3,0,True,True,2,1,experiment-package:4b0b85f1eb4b6f123b181183bad05d90,7c173a1e461d4fb223982da8c3e6ef43dd605ed61450ce45a50201c505bf781e,"[""lease_lost""]",[]
+phase7-20260813-100,25,20260838,49cafee4-4b11-4575-b93e-5d32091788a1,after_lease_acquisition,synthetic,replay,36816,1,2026-08-14T10:12:20.468246Z,2026-08-14T10:12:23.224028Z,2026-08-14T10:12:23.224028Z,2026-08-14T10:12:26.574447Z,2,1,1,1,1,0,1,1,3,2,3,2,1,True,True,2,1,experiment-package:e8754a5fd2398e8084eff67ca6bc70fb,a55b516afd47c8ef324b11ac46b0deeef9b6ceac92e29c36a055896878282c21,[],[]
+phase7-20260813-100,26,20260839,820f15e5-e222-46cc-b74e-6713d9e12e29,after_upload_before_outcome_transaction,synthetic,replay,35132,1,2026-08-14T10:12:26.627412Z,2026-08-14T10:12:29.524176Z,2026-08-14T10:12:29.524176Z,2026-08-14T10:12:32.905394Z,3,1,1,1,1,0,1,1,3,3,3,3,0,True,True,2,1,experiment-package:334431cdc11a92437302e92df434e00c,03e409a18374d73b4558efcbce29fee002f6f7dd6dc70f42050605394d7787ce,"[""lease_lost""]",[]
+phase7-20260813-100,27,20260840,a36da83d-db46-4670-a637-9ffe5e220810,after_lease_acquisition,synthetic,replay,10388,1,2026-08-14T10:12:32.980001Z,2026-08-14T10:12:37.451470Z,2026-08-14T10:12:37.451470Z,2026-08-14T10:12:42.523857Z,2,1,1,1,1,0,1,1,3,2,3,2,1,True,True,2,1,experiment-package:d716bde40a0d9da20a9e9b0ef1dde77a,2db064f43e34aba7f8dba9492c3f783d38d24da72c3654cb3f51526a52b4e2f7,[],[]
+phase7-20260813-100,28,20260841,bc56f20c-e654-46aa-9329-4c05c20a0258,during_object_upload,synthetic,replay,7580,1,2026-08-14T10:12:42.624449Z,2026-08-14T10:12:47.342603Z,2026-08-14T10:12:47.342603Z,2026-08-14T10:12:51.487075Z,3,1,1,1,1,0,1,1,3,3,3,3,0,True,True,2,1,experiment-package:fd6bb3c3ec937a56a85178391c4a518a,1de58c7ce3246b9a2d4fd37c3ea7b4378edad1fdeef4c1ea75379ecbdf32d9bd,"[""lease_lost""]",[]
+phase7-20260813-100,29,20260842,4aa64844-d429-49b2-acab-ff3288a90bcc,after_lease_acquisition,synthetic,replay,36632,1,2026-08-14T10:12:51.623714Z,2026-08-14T10:12:55.124561Z,2026-08-14T10:12:55.124561Z,2026-08-14T10:12:58.883294Z,2,1,1,1,1,0,1,1,3,2,3,2,1,True,True,2,1,experiment-package:ed21b79537fe093af093d5130a668f94,0b5ff33ea8f55a5c693d53c176d821bf4dca9406524a291275bb3320c860d78b,[],[]
+phase7-20260813-100,30,20260843,22a57b2d-ead3-47f0-832d-7a8300d12991,after_lease_acquisition,synthetic,replay,18912,1,2026-08-14T10:12:58.974953Z,2026-08-14T10:13:02.264449Z,2026-08-14T10:13:02.264449Z,2026-08-14T10:13:05.518901Z,2,1,1,1,1,0,1,1,3,2,3,2,1,True,True,2,1,experiment-package:795a09c7b337841a4ceccd6f6f6c0f4d,4cf8decd23fd6d9e02aded6567ff64847692da4e30fd9875c7df193630b480c2,[],[]
+phase7-20260813-100,31,20260844,974eecb8-5060-4d2c-880c-d046ebf5755f,during_evidence_export,synthetic,replay,22020,1,2026-08-14T10:13:07.329221Z,2026-08-14T10:13:09.124629Z,2026-08-14T10:13:09.124629Z,2026-08-14T10:13:09.280443Z,2,0,1,1,1,0,1,1,3,2,2,2,0,True,True,2,1,experiment-package:190b0fb5901e6df80ffe8ef4d520d261,cf5e8a03221405d40400b3bf59d55ee31771a1e2ba1705ef22401501c31465c2,[],[]
+phase7-20260813-100,32,20260845,c7d1b4b9-44df-4daf-bdff-fbccd0c12995,during_object_upload,synthetic,replay,18704,1,2026-08-14T10:13:09.345830Z,2026-08-14T10:13:12.539667Z,2026-08-14T10:13:12.539667Z,2026-08-14T10:13:16.783695Z,3,1,1,1,1,0,1,1,3,3,3,3,0,True,True,2,1,experiment-package:e500de6d80f414dca4bc2f1ddedca5b3,07b7c0e978f9cc7b4c3287c3010a82f63eed125af8ec800ce34f3a8769d6d337,"[""lease_lost""]",[]
+phase7-20260813-100,33,20260846,4c848945-5f9d-4ba2-9f42-a83d056553ed,after_commit_before_acknowledgement,synthetic,replay,35280,1,2026-08-14T10:13:16.852090Z,2026-08-14T10:13:20.161238Z,2026-08-14T10:13:20.161238Z,2026-08-14T10:13:23.606607Z,2,0,1,1,1,0,1,1,3,2,2,2,0,True,True,2,1,experiment-package:855684756a8c0b00c45f1004826d60be,10164a425c6f41d7e4142d576a23481693705d59c401feed3fcd3d13c3a64c7d,[],[]
+phase7-20260813-100,34,20260847,385b45ec-ef19-4cf5-b824-59dfcb89df1a,during_evidence_export,synthetic,replay,33712,1,2026-08-14T10:13:26.632677Z,2026-08-14T10:13:28.375254Z,2026-08-14T10:13:28.375254Z,2026-08-14T10:13:28.489800Z,2,0,1,1,1,0,1,1,3,2,2,2,0,True,True,2,1,experiment-package:b406045afe39c7d7c237f490972938e6,eb54528914baa7eb133085440ad6798bf12847b273f6edc5ef016d0ba3d351d4,[],[]
+phase7-20260813-100,35,20260848,2ddfa503-e912-44ec-bc85-57cad2b1cbef,during_evidence_export,synthetic,replay,36252,1,2026-08-14T10:13:31.298079Z,2026-08-14T10:13:33.239314Z,2026-08-14T10:13:33.239314Z,2026-08-14T10:13:33.365681Z,2,0,1,1,1,0,1,1,3,2,2,2,0,True,True,2,1,experiment-package:5ad8e5bf559421c20a7f45c8a37c80cc,667529ba16ae71a95b1faeae17e5aabfb282e3832a4cbd082bf11a4117bafcd5,[],[]
+phase7-20260813-100,36,20260849,44cbfa21-1aec-4c40-a2b2-ee7e885463a3,after_lease_acquisition,synthetic,replay,31164,1,2026-08-14T10:13:33.428004Z,2026-08-14T10:13:36.146212Z,2026-08-14T10:13:36.146212Z,2026-08-14T10:13:39.969794Z,2,1,1,1,1,0,1,1,3,2,3,2,1,True,True,2,1,experiment-package:04275c2306966be30b9e1656d9a076aa,a29c82ffe88bb2ff0c2927a273b05275bccf220b08f8ce25509829cb502e62a2,[],[]
+phase7-20260813-100,37,20260850,159041f3-1d8e-434f-865e-5a0e66f96591,after_commit_before_acknowledgement,synthetic,replay,33508,1,2026-08-14T10:13:40.021781Z,2026-08-14T10:13:43.061523Z,2026-08-14T10:13:43.061523Z,2026-08-14T10:13:46.358255Z,2,0,1,1,1,0,1,1,3,2,2,2,0,True,True,2,1,experiment-package:342178808f6a538bc652aa08de603218,a8c75b620cd570fb1008b89d88b793f338efc59559a04409eb714ecc4d6c0f4c,[],[]
+phase7-20260813-100,38,20260851,e873a878-dd73-43e8-a90a-d96ca6d3f952,after_lease_acquisition,synthetic,replay,13328,1,2026-08-14T10:13:46.407406Z,2026-08-14T10:13:49.549143Z,2026-08-14T10:13:49.549143Z,2026-08-14T10:13:53.910440Z,2,1,1,1,1,0,1,1,3,2,3,2,1,True,True,2,1,experiment-package:da7dac27d15dce8b8cdb0cede64d8dfe,a856cd9db82526c9c02cd192b0ccc976b12c204d40c1385e5e1a126b91c82b42,[],[]
+phase7-20260813-100,39,20260852,8794d3a7-3103-4f50-a299-daf90d776b17,during_object_upload,synthetic,replay,31284,1,2026-08-14T10:13:53.978017Z,2026-08-14T10:13:58.974335Z,2026-08-14T10:13:58.974335Z,2026-08-14T10:14:03.276663Z,3,1,1,1,1,0,1,1,3,3,3,3,0,True,True,2,1,experiment-package:08857decb1303af5567e73b40cf22189,9b4e44283be839f950f352813ee516bd728bf87d3e01371d01959cee529a03f0,"[""lease_lost""]",[]
+phase7-20260813-100,40,20260853,b5273feb-6224-47f5-9efe-ca8f5f2c50c3,after_lease_acquisition,synthetic,replay,21920,1,2026-08-14T10:14:03.355705Z,2026-08-14T10:14:06.794732Z,2026-08-14T10:14:06.794732Z,2026-08-14T10:14:11.572061Z,2,1,1,1,1,0,1,1,3,2,3,2,1,True,True,2,1,experiment-package:715137e2d11e4b8e75c53fb59cb75059,ce4f297a72df2591457177bf93c57b5f44942191f7e6e05897c8df01b536b07e,[],[]
+phase7-20260813-100,41,20260854,f93cb898-46ff-4b94-a210-5daa4267fedf,during_evidence_export,synthetic,replay,34056,1,2026-08-14T10:14:14.888846Z,2026-08-14T10:14:17.457817Z,2026-08-14T10:14:17.457817Z,2026-08-14T10:14:17.611710Z,2,0,1,1,1,0,1,1,3,2,2,2,0,True,True,2,1,experiment-package:7946d26c91cdb0e2edd5749ab563660e,07c3b39ba5514028e3c280a10d22c5c3521335975ecf162438409b3e1c58af57,[],[]
+phase7-20260813-100,42,20260855,1a161d49-a854-4da0-b7a4-de86aa4b9eef,during_object_upload,synthetic,replay,5832,1,2026-08-14T10:14:17.702812Z,2026-08-14T10:14:22.048011Z,2026-08-14T10:14:22.048011Z,2026-08-14T10:14:26.932919Z,3,1,1,1,1,0,1,1,3,3,3,3,0,True,True,2,1,experiment-package:89dbbf871a17ce89062aedabb07a8615,9dfa6e712dd65148674ea60aa4c3831a27ca57f345f5039056c4776cfd026c73,"[""lease_lost""]",[]
+phase7-20260813-100,43,20260856,31ab9938-a72a-4770-9d33-e9d2e85bc8ad,after_adapter_return_before_upload,synthetic,replay,26672,1,2026-08-14T10:14:27.002549Z,2026-08-14T10:14:30.716666Z,2026-08-14T10:14:30.716666Z,2026-08-14T10:14:35.334911Z,3,1,1,1,1,0,1,1,3,3,3,3,0,True,True,2,1,experiment-package:8d339395d474f70d0f1a52fa8d1e36e8,a95e1b5e7cedb632ad52cd25d8b83587658b9619226982981a78433769410022,"[""lease_lost""]",[]
+phase7-20260813-100,44,20260857,fa233469-95d6-4b96-a632-26b1e4e1930e,after_adapter_return_before_upload,synthetic,replay,9840,1,2026-08-14T10:14:35.389946Z,2026-08-14T10:14:38.408843Z,2026-08-14T10:14:38.408843Z,2026-08-14T10:14:43.693688Z,3,1,1,1,1,0,1,1,3,3,3,3,0,True,True,2,1,experiment-package:8ed613c891650aed7a7fab94e302222f,4a2b50ded86f439c58ef1a20e737a65d5208b94343271c67531fe0caa1ec19d5,"[""lease_lost""]",[]
+phase7-20260813-100,45,20260858,a9dbfd65-eaba-4d48-9d16-f06fd3ac7a5c,after_commit_before_acknowledgement,synthetic,replay,8904,1,2026-08-14T10:14:43.767402Z,2026-08-14T10:14:48.120430Z,2026-08-14T10:14:48.120430Z,2026-08-14T10:14:53.709411Z,2,0,1,1,1,0,1,1,3,2,2,2,0,True,True,2,1,experiment-package:2d0717e0ead865dcd5500dd3097117d2,854b35ac108acee9a7241e80a1aacd3349e6bb0bd266c4d87ba10ff252550a71,[],[]
+phase7-20260813-100,46,20260859,9540a137-fb43-4c8c-b855-e85e4a1b0251,after_commit_before_acknowledgement,synthetic,replay,33436,1,2026-08-14T10:14:53.819248Z,2026-08-14T10:14:59.113610Z,2026-08-14T10:14:59.113610Z,2026-08-14T10:15:03.593612Z,2,0,1,1,1,0,1,1,3,2,2,2,0,True,True,2,1,experiment-package:2143d8a976ed2b9ec0e75cca8e3b36b7,eab094487747bdcbd856a2b8a07ea1b3ccdb138911163f37db1686c9fc1063f1,[],[]
+phase7-20260813-100,47,20260860,eaa90654-d76d-4f1a-8518-7beae7bb8aa5,after_commit_before_acknowledgement,synthetic,replay,36720,1,2026-08-14T10:15:03.689939Z,2026-08-14T10:15:07.560795Z,2026-08-14T10:15:07.560795Z,2026-08-14T10:15:12.346949Z,2,0,1,1,1,0,1,1,3,2,2,2,0,True,True,2,1,experiment-package:be65096c0a0d7f9974e87294a9bb72c5,c003e43e79a17123d6f5685da76dc4ce6290468638cf0643b449dfd206a389d9,[],[]
+phase7-20260813-100,48,20260861,242b4137-17f0-4fa0-95d3-15fa3479517b,after_commit_before_acknowledgement,synthetic,replay,31828,1,2026-08-14T10:15:12.403874Z,2026-08-14T10:15:16.555087Z,2026-08-14T10:15:16.555087Z,2026-08-14T10:15:20.779039Z,2,0,1,1,1,0,1,1,3,2,2,2,0,True,True,2,1,experiment-package:ec8aef445a6bb803caa99707e29ee9a1,7d2946981fe98e720c00b8814558fb367c7fa16ef275fdc1b30948a1f0c9ac3d,[],[]
+phase7-20260813-100,49,20260862,bfca9dea-5602-4bf5-afe2-c1a31ca3b1c9,during_object_upload,synthetic,replay,33912,1,2026-08-14T10:15:20.839347Z,2026-08-14T10:15:24.124706Z,2026-08-14T10:15:24.124706Z,2026-08-14T10:15:28.265797Z,3,1,1,1,1,0,1,1,3,3,3,3,0,True,True,2,1,experiment-package:490400f30c4ff69ab4b4abac68e8e13b,429eb4e9f09fdbce9d2f31af69ef10609c5b0bc6e41b8d4ac5309d77da0dca7b,"[""lease_lost""]",[]
+phase7-20260813-100,50,20260863,bd6c1f73-1291-4703-92c2-9c793ffd41d2,after_commit_before_acknowledgement,synthetic,replay,29260,1,2026-08-14T10:15:28.318258Z,2026-08-14T10:15:33.653071Z,2026-08-14T10:15:33.653071Z,2026-08-14T10:15:38.778852Z,2,0,1,1,1,0,1,1,3,2,2,2,0,True,True,2,1,experiment-package:b95ef8ea7c840c1529a491ce20184600,071adbd418a996346b9bc63644f20ba73e0109c3fb0f6dd0cade425c92905626,[],[]
+phase7-20260813-100,51,20260864,7fb3eeee-7c16-4260-99c6-7663db4a0686,after_adapter_return_before_upload,synthetic,replay,32416,1,2026-08-14T10:15:38.836943Z,2026-08-14T10:15:42.132608Z,2026-08-14T10:15:42.132608Z,2026-08-14T10:15:47.290315Z,3,1,1,1,1,0,1,1,3,3,3,3,0,True,True,2,1,experiment-package:e177be90069e30c17e879d270bc44d6b,0de9a76ce3c2b8c28925e0c860044486c6a8b0397974b0aebb9c00e39fa2a97f,"[""lease_lost""]",[]
+phase7-20260813-100,52,20260865,dd7df504-61ec-4fc1-bf35-643f8893eea6,after_upload_before_outcome_transaction,synthetic,replay,35568,1,2026-08-14T10:15:47.374048Z,2026-08-14T10:15:51.818547Z,2026-08-14T10:15:51.818547Z,2026-08-14T10:15:57.964968Z,3,1,1,1,1,0,1,1,3,3,3,3,0,True,True,2,1,experiment-package:7eace65381e92bbbb4996253c1ebcd16,de8c5c603d366cc58a9b383645e2e93224a6a16be68776c2c3280ac54aaf6903,"[""lease_lost""]",[]
+phase7-20260813-100,53,20260866,367618ea-4656-4a19-b3d0-a2d785dc051d,during_object_upload,synthetic,replay,25368,1,2026-08-14T10:15:58.017799Z,2026-08-14T10:16:02.324692Z,2026-08-14T10:16:02.324692Z,2026-08-14T10:16:12.779879Z,3,1,1,1,1,0,1,1,3,3,3,3,0,True,True,2,1,experiment-package:09123c8bb92aa064364c32ab5c2a6069,12de92dcc6236a5c102e38b7be9f0c6f8445018aaa3db85a92c74d84013af51a,"[""lease_lost""]",[]
+phase7-20260813-100,54,20260867,4fe0557a-28e9-445f-8e86-7405dd47b5e3,after_adapter_return_before_upload,synthetic,replay,14484,1,2026-08-14T10:16:12.953620Z,2026-08-14T10:16:22.814443Z,2026-08-14T10:16:22.814443Z,2026-08-14T10:16:29.213286Z,3,1,1,1,1,0,1,1,3,3,3,3,0,True,True,2,1,experiment-package:2a560cc595c952d6fe497e60d3848fbf,9fe56d67d403e006a43bc04a6cbca0ec4e8bc1a192f2d39dac5e99d49d75b014,"[""lease_lost""]",[]
+phase7-20260813-100,55,20260868,0b34aa01-19c5-483a-b6b1-7010a99c01ef,during_evidence_export,synthetic,replay,36752,1,2026-08-14T10:16:33.343354Z,2026-08-14T10:16:36.913545Z,2026-08-14T10:16:36.913545Z,2026-08-14T10:16:37.057417Z,2,0,1,1,1,0,1,1,3,2,2,2,0,True,True,2,1,experiment-package:579d19792c647dca3a9ead1bc84ab924,1dbd57652ff9bb6a0b10c11d18c4a4bdb0e93e3e2f7784a6b1f91a3009b06b1b,[],[]
+phase7-20260813-100,56,20260869,5ba71a70-ce26-45d8-97a8-ac397b5c2ae1,after_upload_before_outcome_transaction,synthetic,replay,10464,1,2026-08-14T10:16:37.124218Z,2026-08-14T10:16:43.028513Z,2026-08-14T10:16:43.028513Z,2026-08-14T10:16:48.863113Z,3,1,1,1,1,0,1,1,3,3,3,3,0,True,True,2,1,experiment-package:ebd7a626a5683935d58c76278308acad,012195d884372706014c2852d9d32536799e4f77fadc79646a5f4f0e923495df,"[""lease_lost""]",[]
+phase7-20260813-100,57,20260870,98a1c7df-781a-41e3-8591-c7fbffb05b20,after_lease_acquisition,synthetic,replay,24008,1,2026-08-14T10:16:48.950523Z,2026-08-14T10:16:52.791733Z,2026-08-14T10:16:52.791733Z,2026-08-14T10:16:59.224291Z,2,1,1,1,1,0,1,1,3,2,3,2,1,True,True,2,1,experiment-package:88abd582847dbc3689b8f18921162c27,468246c754d72ffa458c2b94668da1db11049f221123188fb83ffb0137ffdac8,[],[]
+phase7-20260813-100,58,20260871,847de2e8-745b-4ac9-8ab1-88ae19e70052,after_commit_before_acknowledgement,synthetic,replay,24896,1,2026-08-14T10:16:59.300762Z,2026-08-14T10:17:03.925790Z,2026-08-14T10:17:03.925790Z,2026-08-14T10:17:09.781505Z,2,0,1,1,1,0,1,1,3,2,2,2,0,True,True,2,1,experiment-package:6d165833d8ce45087f8e65bbc250f078,7e23500b3a675ce3ccf78c7bd727c009f1ccf81a957da8fb859fbda767e23be7,[],[]
+phase7-20260813-100,59,20260872,b095a683-b126-4274-9777-6050a6ea4b50,after_upload_before_outcome_transaction,synthetic,replay,29376,1,2026-08-14T10:17:09.845318Z,2026-08-14T10:17:14.580932Z,2026-08-14T10:17:14.580932Z,2026-08-14T10:17:20.608995Z,3,1,1,1,1,0,1,1,3,3,3,3,0,True,True,2,1,experiment-package:b7c705b23f398a0c321864398a75b8d8,8ba5bb0a3aa37f8d4c1e41095f918ef2f87e9185dc98e280eea2909761bcc67b,"[""lease_lost""]",[]
+phase7-20260813-100,60,20260873,a53bebf9-6f36-4c6f-bc9d-fc971585fd0f,after_upload_before_outcome_transaction,synthetic,replay,36312,1,2026-08-14T10:17:20.672072Z,2026-08-14T10:17:25.270450Z,2026-08-14T10:17:25.270450Z,2026-08-14T10:17:30.919659Z,3,1,1,1,1,0,1,1,3,3,3,3,0,True,True,2,1,experiment-package:425980201bf94fd654ee5e64137f1806,cf80ca44ba7ae4dad06ad8dcf36d77ba586243c3efb2e63cdafdfe380f713b23,"[""lease_lost""]",[]
+phase7-20260813-100,61,20260874,bdb5b719-89cc-472d-a336-428c7e07624e,after_lease_acquisition,synthetic,replay,31680,1,2026-08-14T10:17:31.002294Z,2026-08-14T10:17:35.669218Z,2026-08-14T10:17:35.669218Z,2026-08-14T10:17:41.912401Z,2,1,1,1,1,0,1,1,3,2,3,2,1,True,True,2,1,experiment-package:f926164c5a0af2ee8e2c43f442432679,3feb58dd76f556ffc462f42f85a24b5b67cead484f719cd3bd3886cb5cee99ee,[],[]
+phase7-20260813-100,62,20260875,00e64846-7d5b-4642-b639-0cdcfb0aaa6b,during_evidence_export,synthetic,replay,35108,1,2026-08-14T10:17:48.019670Z,2026-08-14T10:17:50.396911Z,2026-08-14T10:17:50.396911Z,2026-08-14T10:17:50.601112Z,2,0,1,1,1,0,1,1,3,2,2,2,0,True,True,2,1,experiment-package:24862b75bb7bc68a510a160e148c7e13,3970268b0ed8317c34748825143463eb8fd0bf2ac4db620ce6dbcb6254db4d59,[],[]
+phase7-20260813-100,63,20260876,7c83619d-4a96-4f3c-8b30-0e94f9d8c7e7,after_commit_before_acknowledgement,synthetic,replay,32588,1,2026-08-14T10:17:50.731195Z,2026-08-14T10:17:56.376690Z,2026-08-14T10:17:56.376690Z,2026-08-14T10:18:01.593635Z,2,0,1,1,1,0,1,1,3,2,2,2,0,True,True,2,1,experiment-package:8c5f87417a091a38927e0312e1ae7116,0ce020fbcc4c631d24e3f7083a0e38972e8b6a1e4e56404d902c2914cdbd5fe9,[],[]
+phase7-20260813-100,64,20260877,2c11298c-7cc8-4b64-b633-2dcdbffa24f1,after_lease_acquisition,synthetic,replay,34956,1,2026-08-14T10:18:01.656936Z,2026-08-14T10:18:05.044412Z,2026-08-14T10:18:05.044412Z,2026-08-14T10:18:10.096201Z,2,1,1,1,1,0,1,1,3,2,3,2,1,True,True,2,1,experiment-package:eb192fcb8b2944076e1489c381e0c694,f47b71a1b8729f737db738c0d111ce82bfb86b5baf91908958f8058ecd949f27,[],[]
+phase7-20260813-100,65,20260878,cb90286b-ca59-4dc4-8dce-cc7330a07373,after_upload_before_outcome_transaction,synthetic,replay,31224,1,2026-08-14T10:18:10.160780Z,2026-08-14T10:18:15.726839Z,2026-08-14T10:18:15.726839Z,2026-08-14T10:18:22.007492Z,3,1,1,1,1,0,1,1,3,3,3,3,0,True,True,2,1,experiment-package:0d9ba6e3950d6eac0b94416708770d40,1c3451e594625e1a647720c8ae949d71eb8ff0f97f245f7e7655932dee7eaedb,"[""lease_lost""]",[]
+phase7-20260813-100,66,20260879,34e1517f-006f-4a20-83e2-c9cb8bf76013,after_lease_acquisition,synthetic,replay,20448,1,2026-08-14T10:18:22.067802Z,2026-08-14T10:18:26.819260Z,2026-08-14T10:18:26.819260Z,2026-08-14T10:18:33.644645Z,2,1,1,1,1,0,1,1,3,2,3,2,1,True,True,2,1,experiment-package:4579e697d465801e9f46f7ebdbc7833e,1079b04af9987c3883169c6ded04c759d5471e7676021348be629b1fd1ecb726,[],[]
+phase7-20260813-100,67,20260880,9593d9a2-c5d6-4967-9e3b-666a98adf108,after_upload_before_outcome_transaction,synthetic,replay,35504,1,2026-08-14T10:18:33.727562Z,2026-08-14T10:18:38.058253Z,2026-08-14T10:18:38.058253Z,2026-08-14T10:18:44.008438Z,3,1,1,1,1,0,1,1,3,3,3,3,0,True,True,2,1,experiment-package:01e7599ccfa856f4b9f9a90137bbf300,b3b2fb9d99429a6c18c9912a0a962e384d1da69b947280382d15b3b228a0e43b,"[""lease_lost""]",[]
+phase7-20260813-100,68,20260881,dfa14842-a1ea-428c-a28a-5e5acfa69a27,during_evidence_export,synthetic,replay,33308,1,2026-08-14T10:18:49.332367Z,2026-08-14T10:18:51.130320Z,2026-08-14T10:18:51.130320Z,2026-08-14T10:18:51.267501Z,2,0,1,1,1,0,1,1,3,2,2,2,0,True,True,2,1,experiment-package:6ca974cfdc2df32ca86d76371d88237b,f34a3329b1fb3dc9d1c5a1d6cd9b2a7a8eae3befb445c15b5949fa78554eaa7e,[],[]
+phase7-20260813-100,69,20260882,55ba9687-2da4-471a-976d-862126577ad3,after_adapter_return_before_upload,synthetic,replay,33048,1,2026-08-14T10:18:51.329304Z,2026-08-14T10:18:55.290506Z,2026-08-14T10:18:55.290506Z,2026-08-14T10:19:01.461383Z,3,1,1,1,1,0,1,1,3,3,3,3,0,True,True,2,1,experiment-package:1a30713b62be2063acea4801b8474c35,7c2ca544d39e154f322add078bcf8cf8ee3057d582c5fd14ce5d9e5552b1655d,"[""lease_lost""]",[]
+phase7-20260813-100,70,20260883,2fbddd90-0de9-4020-9a2a-601216479075,during_evidence_export,synthetic,replay,30880,1,2026-08-14T10:19:07.033508Z,2026-08-14T10:19:09.642705Z,2026-08-14T10:19:09.642705Z,2026-08-14T10:19:09.813453Z,2,0,1,1,1,0,1,1,3,2,2,2,0,True,True,2,1,experiment-package:0e0d54589828d8ea9c10bf630dd2d3d6,3486ecaf69a198761d6a6db790c62075d5b5bc418a6eae590530a9363b06141a,[],[]
+phase7-20260813-100,71,20260884,9efd6265-dc3d-4fda-9984-e2b29681eda5,after_adapter_return_before_upload,synthetic,replay,23888,1,2026-08-14T10:19:09.900155Z,2026-08-14T10:19:15.459799Z,2026-08-14T10:19:15.459799Z,2026-08-14T10:19:21.654799Z,3,1,1,1,1,0,1,1,3,3,3,3,0,True,True,2,1,experiment-package:e04968bc9a77af2c3d85ba3bd2c1dfe2,38d9f38dc656fea652681cde06ed8eaed5d18703f61074740cf126bbea84de13,"[""lease_lost""]",[]
+phase7-20260813-100,72,20260885,1fbf9d27-0eb2-44df-803d-9cb650cc32c7,during_object_upload,synthetic,replay,24748,1,2026-08-14T10:19:21.712127Z,2026-08-14T10:19:26.281539Z,2026-08-14T10:19:26.281539Z,2026-08-14T10:19:34.109860Z,3,1,1,1,1,0,1,1,3,3,3,3,0,True,True,2,1,experiment-package:138af07fa240d9d35ce024114e67bedb,373a5307e09470bceb355bafd11efafabddbda2177f3c2f949593b234cf9b1e7,"[""lease_lost""]",[]
+phase7-20260813-100,73,20260886,3b46d138-a70a-4494-8973-bfe2b3949bb3,during_evidence_export,synthetic,replay,36352,1,2026-08-14T10:19:38.812790Z,2026-08-14T10:19:41.332994Z,2026-08-14T10:19:41.332994Z,2026-08-14T10:19:41.493453Z,2,0,1,1,1,0,1,1,3,2,2,2,0,True,True,2,1,experiment-package:aed00ad3cc2ce1224bb941edb43a2ae7,ea4511d7590edf937a63acb17e7d8678ef9b7391bef2bf645660fd1acc8af391,[],[]
+phase7-20260813-100,74,20260887,b1aa75e3-6842-4408-acd8-826e35ee2508,after_lease_acquisition,synthetic,replay,33268,1,2026-08-14T10:19:41.564950Z,2026-08-14T10:19:47.185314Z,2026-08-14T10:19:47.185314Z,2026-08-14T10:19:53.841134Z,2,1,1,1,1,0,1,1,3,2,3,2,1,True,True,2,1,experiment-package:a88921aaec192ad063d3eea10b259e27,b5a0534734a91ac3028a12cc959740780f92a56990f5f8c8c41e0a3d76243509,[],[]
+phase7-20260813-100,75,20260888,c8cc2173-170c-49db-aba4-30a1c4dec9b4,during_evidence_export,synthetic,replay,32232,1,2026-08-14T10:19:59.847183Z,2026-08-14T10:20:02.150224Z,2026-08-14T10:20:02.150224Z,2026-08-14T10:20:02.276442Z,2,0,1,1,1,0,1,1,3,2,2,2,0,True,True,2,1,experiment-package:b63778e70e27aefa41f89a21be3a11ae,7bc9862c5c77fac3d178f1bf479df21f5a35d84115ca6b3cb66683715e877e7b,[],[]
+phase7-20260813-100,76,20260889,1883256d-5487-4a72-93c7-83c64118b1d6,after_commit_before_acknowledgement,synthetic,replay,19368,1,2026-08-14T10:20:02.345137Z,2026-08-14T10:20:08.464957Z,2026-08-14T10:20:08.464957Z,2026-08-14T10:20:15.206147Z,2,0,1,1,1,0,1,1,3,2,2,2,0,True,True,2,1,experiment-package:13400f6c8c67f57e5ae2b8eabc3f5a92,637614966ca72b3abb31da5546141ac53febb967703f466d6339ce54e1e44e37,[],[]
+phase7-20260813-100,77,20260890,e783df27-3418-4f00-8261-cd85844dc6e5,after_adapter_return_before_upload,synthetic,replay,31212,1,2026-08-14T10:20:15.426462Z,2026-08-14T10:20:20.741188Z,2026-08-14T10:20:20.741188Z,2026-08-14T10:20:27.007062Z,3,1,1,1,1,0,1,1,3,3,3,3,0,True,True,2,1,experiment-package:3ea493aff270763f5f72f1dd3a859bab,e03bf45d553a033738e3f4a4364eea63f4b201dc5eea0d402cf33859224fd9ca,"[""lease_lost""]",[]
+phase7-20260813-100,78,20260891,0f2b028a-591b-4b4c-a437-48daaa8f8556,after_upload_before_outcome_transaction,synthetic,replay,35020,1,2026-08-14T10:20:27.065922Z,2026-08-14T10:20:31.177195Z,2026-08-14T10:20:31.177195Z,2026-08-14T10:20:37.083295Z,3,1,1,1,1,0,1,1,3,3,3,3,0,True,True,2,1,experiment-package:ad4579450fa13930a50c114eafcfd41a,424aaa04fb0b2e9f0b3064f43fe379db18adfef21cd539abc139c6cf286b92ab,"[""lease_lost""]",[]
+phase7-20260813-100,79,20260892,e6c1a315-0053-44f1-ab79-0d798b52d8d9,during_evidence_export,synthetic,replay,32416,1,2026-08-14T10:20:41.914043Z,2026-08-14T10:20:43.550725Z,2026-08-14T10:20:43.550725Z,2026-08-14T10:20:43.682327Z,2,0,1,1,1,0,1,1,3,2,2,2,0,True,True,2,1,experiment-package:6a32e6b5f9dc05b957eb002ab60af2b9,f80a4a1c78e79aff3150c0dc1b2d09298ad7d4fab35e91b47a793c7b64fbfd16,[],[]
+phase7-20260813-100,80,20260893,91047a2e-1a9a-4af0-94e6-fc220010407f,after_adapter_return_before_upload,synthetic,replay,35428,1,2026-08-14T10:20:43.743558Z,2026-08-14T10:20:47.887334Z,2026-08-14T10:20:47.887334Z,2026-08-14T10:20:54.289566Z,3,1,1,1,1,0,1,1,3,3,3,3,0,True,True,2,1,experiment-package:4e77ebab252e0f465bdcb8f8722050fc,098ca52ae6dac675e6948f914366b2d3c276412ce6ea4caf9b7bf20eea4b6b11,"[""lease_lost""]",[]
+phase7-20260813-100,81,20260894,91ae41fa-7e87-483d-a5f6-8266748c5dc6,during_object_upload,synthetic,replay,19848,1,2026-08-14T10:20:54.409140Z,2026-08-14T10:21:00.219164Z,2026-08-14T10:21:00.219164Z,2026-08-14T10:21:05.771312Z,3,1,1,1,1,0,1,1,3,3,3,3,0,True,True,2,1,experiment-package:2dc027c942a14cf3e6586df46650ae9d,faa788442f2ad342638308b8dbe713a4aca4fc4f1a20baaaa2eccd6519a27b03,"[""lease_lost""]",[]
+phase7-20260813-100,82,20260895,8d90f848-8386-4bf0-930d-497cde12520f,after_commit_before_acknowledgement,synthetic,replay,28436,1,2026-08-14T10:21:05.853366Z,2026-08-14T10:21:11.162431Z,2026-08-14T10:21:11.162431Z,2026-08-14T10:21:18.432616Z,2,0,1,1,1,0,1,1,3,2,2,2,0,True,True,2,1,experiment-package:769ae2bfcaac4ce5599b72f0fa60dbb5,88a5dae8a463fe2bf114daf67188b88db7439f7f6881012d2153634f9417fcbe,[],[]
+phase7-20260813-100,83,20260896,576e46db-760e-4304-936e-65a6a5027a05,after_upload_before_outcome_transaction,synthetic,replay,15772,1,2026-08-14T10:21:18.517309Z,2026-08-14T10:21:23.920713Z,2026-08-14T10:21:23.920713Z,2026-08-14T10:21:30.937243Z,3,1,1,1,1,0,1,1,3,3,3,3,0,True,True,2,1,experiment-package:7534dbcf5d1e6da222453d274ae11052,1f2ad9c9a0d47e686fbb827d336527cc00efd8a8d7c0086892b5020d30961bcb,"[""lease_lost""]",[]
+phase7-20260813-100,84,20260897,32ef2a9f-ac43-417a-96ab-d2a1ee261e61,after_upload_before_outcome_transaction,synthetic,replay,32424,1,2026-08-14T10:21:30.997887Z,2026-08-14T10:21:35.801800Z,2026-08-14T10:21:35.801800Z,2026-08-14T10:21:42.259367Z,3,1,1,1,1,0,1,1,3,3,3,3,0,True,True,2,1,experiment-package:31a319a145971b70f4041c9106c8d9a2,6fdb71170f273394f8e93db3790d005c6757248d2a8fffc788611adfca92a2b9,"[""lease_lost""]",[]
+phase7-20260813-100,85,20260898,5a8ac619-1e04-41aa-bb4d-0c97f6e210ed,after_adapter_return_before_upload,synthetic,replay,23840,1,2026-08-14T10:21:42.311945Z,2026-08-14T10:21:46.724007Z,2026-08-14T10:21:46.724007Z,2026-08-14T10:21:52.646969Z,3,1,1,1,1,0,1,1,3,3,3,3,0,True,True,2,1,experiment-package:c085f72189db13d0a9a73c7119c6df95,b1a8d76482f1ce971aa800065547e4ff3e5763d1d13798222f354ebe9434dbe8,"[""lease_lost""]",[]
+phase7-20260813-100,86,20260899,f4470e01-9d79-49d6-938d-58dcd9696a0e,during_object_upload,synthetic,replay,31560,1,2026-08-14T10:21:52.690451Z,2026-08-14T10:21:56.779781Z,2026-08-14T10:21:56.779781Z,2026-08-14T10:22:05.377592Z,3,1,1,1,1,0,1,1,3,3,3,3,0,True,True,2,1,experiment-package:e8b1e5bed04afc2a02b4f024283025ed,3a94e7d0b9af830b31d182dd40919a0431283abd6373227ff54cfd83f434d76c,"[""lease_lost""]",[]
+phase7-20260813-100,87,20260900,2450a748-6614-4fed-ab61-687f9e96284a,after_upload_before_outcome_transaction,synthetic,replay,36532,1,2026-08-14T10:22:05.439386Z,2026-08-14T10:22:10.171418Z,2026-08-14T10:22:10.171418Z,2026-08-14T10:22:17.380992Z,3,1,1,1,1,0,1,1,3,3,3,3,0,True,True,2,1,experiment-package:f7f8956895f2bcb6f2b657c1d5e6ddb4,e4f33873d39f4d3b3729af33f3781ad610c6fd738bc2ebb730cbe83548e0b7e1,"[""lease_lost""]",[]
+phase7-20260813-100,88,20260901,e1227616-87a9-40fa-a733-02e093e69a7d,after_upload_before_outcome_transaction,synthetic,replay,33860,1,2026-08-14T10:22:17.454814Z,2026-08-14T10:22:22.495681Z,2026-08-14T10:22:22.495681Z,2026-08-14T10:22:28.836432Z,3,1,1,1,1,0,1,1,3,3,3,3,0,True,True,2,1,experiment-package:ef9c91721f67d59881e29132a13217a9,125ad6ae1db767581677b729cdc0478fc9d9c56c81e68885f79e01985b14f79f,"[""lease_lost""]",[]
+phase7-20260813-100,89,20260902,3d003205-f527-44a1-b054-7a7c56f61baa,after_adapter_return_before_upload,synthetic,replay,26416,1,2026-08-14T10:22:28.903198Z,2026-08-14T10:22:33.659919Z,2026-08-14T10:22:33.659919Z,2026-08-14T10:22:42.395646Z,3,1,1,1,1,0,1,1,3,3,3,3,0,True,True,2,1,experiment-package:c7d589fe3afd54c76aba24655bda76cd,72eb360c9c67cee125a1196d177e0666498e9f7bc7cef149177149c8ef79954e,"[""lease_lost""]",[]
+phase7-20260813-100,90,20260903,ecfa5869-11b7-4ad4-b0f7-a6f92213a30b,after_upload_before_outcome_transaction,synthetic,replay,17584,1,2026-08-14T10:22:42.464462Z,2026-08-14T10:22:49.240033Z,2026-08-14T10:22:49.240033Z,2026-08-14T10:22:57.652215Z,3,1,1,1,1,0,1,1,3,3,3,3,0,True,True,2,1,experiment-package:ef201d2374d58c013a691c75e41fba34,a97de1ad8ffee7a8a42507e5686ec493e705aa22565c0b597a822ed67ea297d0,"[""lease_lost""]",[]
+phase7-20260813-100,91,20260904,34a57c82-3407-428c-b788-07820ac053c9,during_evidence_export,synthetic,replay,8824,1,2026-08-14T10:23:04.110245Z,2026-08-14T10:23:06.253373Z,2026-08-14T10:23:06.253373Z,2026-08-14T10:23:06.526777Z,2,0,1,1,1,0,1,1,3,2,2,2,0,True,True,2,1,experiment-package:8e9d007c4833014cd28be0321fb3a7c4,a7763bf585003e7853330079a317dfd06a7c4962c6c88a5297042a9b90515ddf,[],[]
+phase7-20260813-100,92,20260905,b40b0b56-51d5-42bf-9fd8-fccbcec1b2a0,after_adapter_return_before_upload,synthetic,replay,9428,1,2026-08-14T10:23:06.679117Z,2026-08-14T10:23:12.046637Z,2026-08-14T10:23:12.046637Z,2026-08-14T10:23:20.404222Z,3,1,1,1,1,0,1,1,3,3,3,3,0,True,True,2,1,experiment-package:e068bd89acb4a07c65a9d7e3474bfe18,f85cf4806f0198feaf0b34b2f0c8b0bcbff407c4d1fee23fb5b62f0e06b8255c,"[""lease_lost""]",[]
+phase7-20260813-100,93,20260906,94839296-cafa-4461-8bb6-de3afc49345d,after_adapter_return_before_upload,synthetic,replay,6628,1,2026-08-14T10:23:20.474393Z,2026-08-14T10:23:25.179257Z,2026-08-14T10:23:25.179257Z,2026-08-14T10:23:33.441428Z,3,1,1,1,1,0,1,1,3,3,3,3,0,True,True,2,1,experiment-package:4fc2821457b7029f64c0f08d47c315c3,13153bcd733f73babd39d96dbe1387e56434c9498d14ef677a5e5ddda14cf0c8,"[""lease_lost""]",[]
+phase7-20260813-100,94,20260907,79723cf5-99db-4b46-922d-9b1bff8c616b,during_evidence_export,synthetic,replay,26796,1,2026-08-14T10:23:39.567431Z,2026-08-14T10:23:41.461751Z,2026-08-14T10:23:41.461751Z,2026-08-14T10:23:41.579614Z,2,0,1,1,1,0,1,1,3,2,2,2,0,True,True,2,1,experiment-package:dae434e0a9a947fa8de3595316410089,b60cb6648365a7ef9552e112b78520540ff1a34317eaac2276a23a1fa0e808de,[],[]
+phase7-20260813-100,95,20260908,3ac7ec2f-1498-4ccb-8a0d-384bb7b3e461,after_lease_acquisition,synthetic,replay,34972,1,2026-08-14T10:23:41.634487Z,2026-08-14T10:23:45.115454Z,2026-08-14T10:23:45.115454Z,2026-08-14T10:23:53.778071Z,2,1,1,1,1,0,1,1,3,2,3,2,1,True,True,2,1,experiment-package:438c905c061d75de6f18b0c09a6e63c7,d49fa4d2fb078fbff1a8adf5abcfaa49194b40ceaa1586e70440581d1ac75077,[],[]
+phase7-20260813-100,96,20260909,18f399f9-3257-4620-b948-2169afffc583,after_upload_before_outcome_transaction,synthetic,replay,33804,1,2026-08-14T10:23:53.838967Z,2026-08-14T10:23:58.287678Z,2026-08-14T10:23:58.287678Z,2026-08-14T10:24:06.106026Z,3,1,1,1,1,0,1,1,3,3,3,3,0,True,True,2,1,experiment-package:06c831b200f25593d59f4f03c519af58,33470f673414adc3e664d8ddb466fce7f005b1ec22ea433320ef548910877b9b,"[""lease_lost""]",[]
+phase7-20260813-100,97,20260910,3c73f261-245b-4a8e-874f-8223348863d7,after_commit_before_acknowledgement,synthetic,replay,35872,1,2026-08-14T10:24:06.161696Z,2026-08-14T10:24:10.346890Z,2026-08-14T10:24:10.346890Z,2026-08-14T10:24:16.598193Z,2,0,1,1,1,0,1,1,3,2,2,2,0,True,True,2,1,experiment-package:c52cf8ba8f2cdbd9f1af2b0833b0c7a3,499c16bc2c63cf3f2384d708d684a7be46a8540399f4e39fb120e348f4931d89,[],[]
+phase7-20260813-100,98,20260911,40c209d6-8fa2-4c46-a5e1-bc3e52bf6800,during_object_upload,synthetic,replay,2524,1,2026-08-14T10:24:16.654190Z,2026-08-14T10:24:21.285187Z,2026-08-14T10:24:21.285187Z,2026-08-14T10:24:27.594341Z,3,1,1,1,1,0,1,1,3,3,3,3,0,True,True,2,1,experiment-package:a02f6138bcd0e9de19a2e27207feb812,d2e101f666e0b22beadf36837fd7d2be90970dbdef86f1162eea224a8f9027e3,"[""lease_lost""]",[]
+phase7-20260813-100,99,20260912,b00d7a14-4687-4129-85f8-9264f9e65afc,during_evidence_export,synthetic,replay,35116,1,2026-08-14T10:24:32.839921Z,2026-08-14T10:24:34.326689Z,2026-08-14T10:24:34.326689Z,2026-08-14T10:24:34.482990Z,2,0,1,1,1,0,1,1,3,2,2,2,0,True,True,2,1,experiment-package:b95e07a6448cfc6d8b8a50ffcf698a3b,ce1a7ebe2dba267f8de3b0c3a267608f1e896d644f09b876b5a6cbefaf329a80,[],[]
+phase7-20260813-100,100,20260913,73fc256b-6ce8-4142-961c-6777c9107c7f,during_evidence_export,synthetic,replay,35472,1,2026-08-14T10:24:39.466800Z,2026-08-14T10:24:41.263146Z,2026-08-14T10:24:41.263146Z,2026-08-14T10:24:41.386697Z,2,0,1,1,1,0,1,1,3,2,2,2,0,True,True,2,1,experiment-package:468dbf9c831f5bfc149128f73fa9c2de,912993fc88f423b566f402c05f842021d27e68882ed5ef4fa056d4ddc098ee99,[],[]
diff --git a/artifacts/galvanostatic-electrolysis/REPRODUCE.txt b/artifacts/galvanostatic-electrolysis/REPRODUCE.txt
index ebf6c8a..ff742ee 100644
--- a/artifacts/galvanostatic-electrolysis/REPRODUCE.txt
+++ b/artifacts/galvanostatic-electrolysis/REPRODUCE.txt
@@ -1,3 +1,3 @@
python scripts/reproduce_galvanostatic_electrolysis.py --output build/galvanostatic-electrolysis
labbridge package verify build/galvanostatic-electrolysis/experiment-package.zip --json
-labbridge validate-artifacts build/galvanostatic-electrolysis
+labbridge validate-artifacts --bundle build/galvanostatic-electrolysis
diff --git a/artifacts/galvanostatic-electrolysis/manifest.json b/artifacts/galvanostatic-electrolysis/manifest.json
index 2d4c8ef..30f5e74 100644
--- a/artifacts/galvanostatic-electrolysis/manifest.json
+++ b/artifacts/galvanostatic-electrolysis/manifest.json
@@ -47,9 +47,9 @@
"sha256": "4ac8787065058d1f63cfb6a968c4ccea0ac4c104b248dd4938e11ed61bd3cbc8"
},
{
- "byte_size": 247,
+ "byte_size": 256,
"name": "REPRODUCE.txt",
- "sha256": "5419e336d24c003361f7be5e6db02e9582066a2b1ea0e6d11020abc0c6ab6bc3"
+ "sha256": "f7866ef48330a6a1517d8ec81fb63047a3b3fa6af3797100a9c1b952902ec6a6"
},
{
"byte_size": 598,
@@ -82,7 +82,7 @@
"sha256": "aa0d10c794f2630f2c1ad2a883452b6262ce2a5e77560e40b14d46cae6ba810a"
}
],
- "files_digest": "36d69a4cf252b8a2c01e9949a43e40592fc86d09c4edbaf49f7f4f6860eb4a04",
+ "files_digest": "1494f9ca439b01b96cd34fbcd6e798a51f0f4a2da55c510f0edcf812af4a03ff",
"import_profile_id": "electrolysis-profile:90c3daa1e062f26c3ecec024935d6fdc",
"observation_id": "electrolysis-observation:9f3108fa2b0e8cbc963e343c08e92f8e",
"package_id": "experiment-package:6479dddfda8860fedee9058d164fffd9",
diff --git a/artifacts/gamry-dta-cv/REPRODUCE.txt b/artifacts/gamry-dta-cv/REPRODUCE.txt
index ac0cda6..40f9282 100644
--- a/artifacts/gamry-dta-cv/REPRODUCE.txt
+++ b/artifacts/gamry-dta-cv/REPRODUCE.txt
@@ -1,3 +1,3 @@
python scripts/reproduce_gamry_dta_cv.py --output build/gamry-dta-cv
labbridge package verify build/gamry-dta-cv/experiment-package.zip --json
-labbridge validate-artifacts build/gamry-dta-cv
+labbridge validate-artifacts --bundle build/gamry-dta-cv
diff --git a/artifacts/gamry-dta-cv/manifest.json b/artifacts/gamry-dta-cv/manifest.json
index 8c3c871..0990b87 100644
--- a/artifacts/gamry-dta-cv/manifest.json
+++ b/artifacts/gamry-dta-cv/manifest.json
@@ -52,9 +52,9 @@
"sha256": "61cd28c682ebe085a2b5f94451124664f30f204dd9e11df4410a5f1f1a776bda"
},
{
- "byte_size": 191,
+ "byte_size": 200,
"name": "REPRODUCE.txt",
- "sha256": "f374bcfad922e87e801b77eeec2372e9a9755baa07ca6117e29c685278ba2169"
+ "sha256": "43ad7afa19bb140e9626a62315150eed781675b613b91ce5fe9197902d0a5be1"
},
{
"byte_size": 597,
@@ -92,7 +92,7 @@
"sha256": "3d789d63c58370ab29ed191ad52c2b83372b94990d52a6028f8df3d552b0c9c9"
}
],
- "files_digest": "6934c29d745951e60f93ef1a73cb6b195067c4aadd15223a7fa0c5f7929b5906",
+ "files_digest": "ac1dbfb345705b2418b7870147642313abdc56874a9b535ccf5708ae911a3a70",
"import_profile_id": "cv-profile:b972971ffc04130cb2ba9811e5e76cc2",
"observation_id": "cv-observation:f88ccc6e9ad289c674d8f3ba4b9bcc20",
"package_id": "experiment-package:16b5b290eaacdd068f4b82ffa061d426",
diff --git a/contracts/openapi-v1.json b/contracts/openapi-v1.json
index 7e3b387..aab589d 100644
--- a/contracts/openapi-v1.json
+++ b/contracts/openapi-v1.json
@@ -102,6 +102,175 @@
"title": "AssertionValue",
"type": "object"
},
+ "AuxiliaryAnalyticalResult-Input": {
+ "additionalProperties": false,
+ "description": "A declared analytical result linked to retained electrical and analytical sources.",
+ "properties": {
+ "analyte": {
+ "minLength": 1,
+ "title": "Analyte",
+ "type": "string"
+ },
+ "collection_point": {
+ "minLength": 1,
+ "title": "Collection Point",
+ "type": "string"
+ },
+ "electrical_source_artifact_id": {
+ "minLength": 1,
+ "title": "Electrical Source Artifact Id",
+ "type": "string"
+ },
+ "method_name": {
+ "minLength": 1,
+ "title": "Method Name",
+ "type": "string"
+ },
+ "method_version": {
+ "minLength": 1,
+ "title": "Method Version",
+ "type": "string"
+ },
+ "quantity_kind": {
+ "const": "concentration",
+ "title": "Quantity Kind",
+ "type": "string"
+ },
+ "result_id": {
+ "minLength": 1,
+ "title": "Result Id",
+ "type": "string"
+ },
+ "sample_id": {
+ "minLength": 1,
+ "title": "Sample Id",
+ "type": "string"
+ },
+ "source_artifact_id": {
+ "minLength": 1,
+ "title": "Source Artifact Id",
+ "type": "string"
+ },
+ "source_location": {
+ "minLength": 1,
+ "title": "Source Location",
+ "type": "string"
+ },
+ "unit": {
+ "minLength": 1,
+ "title": "Unit",
+ "type": "string"
+ },
+ "value": {
+ "anyOf": [
+ {
+ "type": "number"
+ },
+ {
+ "type": "string"
+ }
+ ],
+ "title": "Value"
+ }
+ },
+ "required": [
+ "result_id",
+ "electrical_source_artifact_id",
+ "source_artifact_id",
+ "method_name",
+ "method_version",
+ "source_location",
+ "sample_id",
+ "collection_point",
+ "analyte",
+ "quantity_kind",
+ "value",
+ "unit"
+ ],
+ "title": "AuxiliaryAnalyticalResult",
+ "type": "object"
+ },
+ "AuxiliaryAnalyticalResult-Output": {
+ "additionalProperties": false,
+ "description": "A declared analytical result linked to retained electrical and analytical sources.",
+ "properties": {
+ "analyte": {
+ "minLength": 1,
+ "title": "Analyte",
+ "type": "string"
+ },
+ "collection_point": {
+ "minLength": 1,
+ "title": "Collection Point",
+ "type": "string"
+ },
+ "electrical_source_artifact_id": {
+ "minLength": 1,
+ "title": "Electrical Source Artifact Id",
+ "type": "string"
+ },
+ "method_name": {
+ "minLength": 1,
+ "title": "Method Name",
+ "type": "string"
+ },
+ "method_version": {
+ "minLength": 1,
+ "title": "Method Version",
+ "type": "string"
+ },
+ "quantity_kind": {
+ "const": "concentration",
+ "title": "Quantity Kind",
+ "type": "string"
+ },
+ "result_id": {
+ "minLength": 1,
+ "title": "Result Id",
+ "type": "string"
+ },
+ "sample_id": {
+ "minLength": 1,
+ "title": "Sample Id",
+ "type": "string"
+ },
+ "source_artifact_id": {
+ "minLength": 1,
+ "title": "Source Artifact Id",
+ "type": "string"
+ },
+ "source_location": {
+ "minLength": 1,
+ "title": "Source Location",
+ "type": "string"
+ },
+ "unit": {
+ "minLength": 1,
+ "title": "Unit",
+ "type": "string"
+ },
+ "value": {
+ "title": "Value",
+ "type": "string"
+ }
+ },
+ "required": [
+ "result_id",
+ "electrical_source_artifact_id",
+ "source_artifact_id",
+ "method_name",
+ "method_version",
+ "source_location",
+ "sample_id",
+ "collection_point",
+ "analyte",
+ "quantity_kind",
+ "value",
+ "unit"
+ ],
+ "title": "AuxiliaryAnalyticalResult",
+ "type": "object"
+ },
"CVImportProfile-Input": {
"additionalProperties": false,
"description": "Versioned, complete and immutable instructions for parsing one CSV shape.",
@@ -705,146 +874,597 @@
"title": "State",
"type": "string"
},
- "succeeded": {
- "title": "Succeeded",
- "type": "integer"
+ "succeeded": {
+ "title": "Succeeded",
+ "type": "integer"
+ },
+ "work_items": {
+ "title": "Work Items",
+ "type": "integer"
+ }
+ },
+ "required": [
+ "campaign_id",
+ "name",
+ "state",
+ "data_origin",
+ "execution_mode",
+ "work_items",
+ "succeeded",
+ "failed",
+ "budget",
+ "attempts"
+ ],
+ "title": "CampaignView",
+ "type": "object"
+ },
+ "ColumnMapping": {
+ "additionalProperties": false,
+ "description": "One explicit decision about one source column.",
+ "properties": {
+ "role": {
+ "enum": [
+ "potential",
+ "current",
+ "current_density",
+ "time",
+ "cycle",
+ "ignored"
+ ],
+ "title": "Role",
+ "type": "string"
+ },
+ "source_column": {
+ "minLength": 1,
+ "title": "Source Column",
+ "type": "string"
+ },
+ "source_unit": {
+ "anyOf": [
+ {
+ "type": "string"
+ },
+ {
+ "type": "null"
+ }
+ ],
+ "title": "Source Unit"
+ },
+ "target_unit": {
+ "anyOf": [
+ {
+ "type": "string"
+ },
+ {
+ "type": "null"
+ }
+ ],
+ "title": "Target Unit"
+ }
+ },
+ "required": [
+ "source_column",
+ "role"
+ ],
+ "title": "ColumnMapping",
+ "type": "object"
+ },
+ "ConfidenceRepresentation": {
+ "additionalProperties": false,
+ "description": "The declared representation used for one inference confidence statement.",
+ "properties": {
+ "kind": {
+ "enum": [
+ "probability",
+ "qualitative",
+ "interval"
+ ],
+ "title": "Kind",
+ "type": "string"
+ },
+ "value": {
+ "title": "Value",
+ "type": "string"
+ }
+ },
+ "required": [
+ "kind",
+ "value"
+ ],
+ "title": "ConfidenceRepresentation",
+ "type": "object"
+ },
+ "CreateExperimentRequest": {
+ "additionalProperties": false,
+ "properties": {
+ "expected_experiment_version": {
+ "minimum": 0.0,
+ "title": "Expected Experiment Version",
+ "type": "integer"
+ },
+ "observation_id": {
+ "minLength": 1,
+ "title": "Observation Id",
+ "type": "string"
+ }
+ },
+ "required": [
+ "observation_id",
+ "expected_experiment_version"
+ ],
+ "title": "CreateExperimentRequest",
+ "type": "object"
+ },
+ "CreatePackageRequest": {
+ "additionalProperties": false,
+ "properties": {
+ "expected_experiment_version": {
+ "minimum": 1.0,
+ "title": "Expected Experiment Version",
+ "type": "integer"
+ },
+ "passport_id": {
+ "minLength": 1,
+ "title": "Passport Id",
+ "type": "string"
+ }
+ },
+ "required": [
+ "expected_experiment_version",
+ "passport_id"
+ ],
+ "title": "CreatePackageRequest",
+ "type": "object"
+ },
+ "ElectrolysisColumnMapping": {
+ "additionalProperties": false,
+ "description": "One explicit electrolysis source-column role and unit conversion.",
+ "properties": {
+ "role": {
+ "enum": [
+ "time",
+ "current",
+ "current_density",
+ "potential",
+ "ignored"
+ ],
+ "title": "Role",
+ "type": "string"
+ },
+ "source_column": {
+ "minLength": 1,
+ "title": "Source Column",
+ "type": "string"
+ },
+ "source_unit": {
+ "anyOf": [
+ {
+ "type": "string"
+ },
+ {
+ "type": "null"
+ }
+ ],
+ "title": "Source Unit"
+ },
+ "target_unit": {
+ "anyOf": [
+ {
+ "type": "string"
+ },
+ {
+ "type": "null"
+ }
+ ],
+ "title": "Target Unit"
+ }
+ },
+ "required": [
+ "source_column",
+ "role"
+ ],
+ "title": "ElectrolysisColumnMapping",
+ "type": "object"
+ },
+ "ElectrolysisImportProfile-Input": {
+ "additionalProperties": false,
+ "description": "Complete instructions for one galvanostatic-electrolysis CSV shape.",
+ "properties": {
+ "auxiliary_results": {
+ "items": {
+ "$ref": "#/components/schemas/AuxiliaryAnalyticalResult-Input"
+ },
+ "title": "Auxiliary Results",
+ "type": "array"
+ },
+ "columns": {
+ "items": {
+ "$ref": "#/components/schemas/ElectrolysisColumnMapping"
+ },
+ "minItems": 1,
+ "title": "Columns",
+ "type": "array"
+ },
+ "decimal_convention": {
+ "enum": [
+ "point",
+ "comma"
+ ],
+ "title": "Decimal Convention",
+ "type": "string"
+ },
+ "delimiter": {
+ "maxLength": 1,
+ "minLength": 1,
+ "title": "Delimiter",
+ "type": "string"
+ },
+ "encoding": {
+ "enum": [
+ "utf-8",
+ "utf-8-sig"
+ ],
+ "title": "Encoding",
+ "type": "string"
+ },
+ "environment_id": {
+ "minLength": 1,
+ "title": "Environment Id",
+ "type": "string"
+ },
+ "header_row": {
+ "minimum": 1.0,
+ "title": "Header Row",
+ "type": "integer"
+ },
+ "metadata": {
+ "$ref": "#/components/schemas/ElectrolysisMetadata-Input"
+ },
+ "missing_value_tokens": {
+ "items": {
+ "type": "string"
+ },
+ "title": "Missing Value Tokens",
+ "type": "array"
+ },
+ "schema_version": {
+ "const": "1",
+ "title": "Schema Version",
+ "type": "string"
+ },
+ "technique": {
+ "const": "galvanostatic_electrolysis",
+ "title": "Technique",
+ "type": "string"
+ }
+ },
+ "required": [
+ "schema_version",
+ "technique",
+ "environment_id",
+ "encoding",
+ "delimiter",
+ "decimal_convention",
+ "header_row",
+ "missing_value_tokens",
+ "columns",
+ "metadata",
+ "auxiliary_results"
+ ],
+ "title": "ElectrolysisImportProfile",
+ "type": "object"
+ },
+ "ElectrolysisImportProfile-Output": {
+ "additionalProperties": false,
+ "description": "Complete instructions for one galvanostatic-electrolysis CSV shape.",
+ "properties": {
+ "auxiliary_results": {
+ "items": {
+ "$ref": "#/components/schemas/AuxiliaryAnalyticalResult-Output"
+ },
+ "title": "Auxiliary Results",
+ "type": "array"
+ },
+ "columns": {
+ "items": {
+ "$ref": "#/components/schemas/ElectrolysisColumnMapping"
+ },
+ "minItems": 1,
+ "title": "Columns",
+ "type": "array"
+ },
+ "decimal_convention": {
+ "enum": [
+ "point",
+ "comma"
+ ],
+ "title": "Decimal Convention",
+ "type": "string"
+ },
+ "delimiter": {
+ "maxLength": 1,
+ "minLength": 1,
+ "title": "Delimiter",
+ "type": "string"
+ },
+ "encoding": {
+ "enum": [
+ "utf-8",
+ "utf-8-sig"
+ ],
+ "title": "Encoding",
+ "type": "string"
+ },
+ "environment_id": {
+ "minLength": 1,
+ "title": "Environment Id",
+ "type": "string"
+ },
+ "header_row": {
+ "minimum": 1.0,
+ "title": "Header Row",
+ "type": "integer"
+ },
+ "metadata": {
+ "$ref": "#/components/schemas/ElectrolysisMetadata-Output"
+ },
+ "missing_value_tokens": {
+ "items": {
+ "type": "string"
+ },
+ "title": "Missing Value Tokens",
+ "type": "array"
+ },
+ "schema_version": {
+ "const": "1",
+ "title": "Schema Version",
+ "type": "string"
+ },
+ "technique": {
+ "const": "galvanostatic_electrolysis",
+ "title": "Technique",
+ "type": "string"
+ }
+ },
+ "required": [
+ "schema_version",
+ "technique",
+ "environment_id",
+ "encoding",
+ "delimiter",
+ "decimal_convention",
+ "header_row",
+ "missing_value_tokens",
+ "columns",
+ "metadata",
+ "auxiliary_results"
+ ],
+ "title": "ElectrolysisImportProfile",
+ "type": "object"
+ },
+ "ElectrolysisLineage": {
+ "additionalProperties": false,
+ "properties": {
+ "auxiliary_source_artifact_ids": {
+ "items": {
+ "type": "string"
+ },
+ "title": "Auxiliary Source Artifact Ids",
+ "type": "array"
+ },
+ "environment_id": {
+ "minLength": 1,
+ "title": "Environment Id",
+ "type": "string"
+ },
+ "import_profile_id": {
+ "minLength": 1,
+ "title": "Import Profile Id",
+ "type": "string"
+ },
+ "source_artifact_id": {
+ "minLength": 1,
+ "title": "Source Artifact Id",
+ "type": "string"
+ },
+ "source_sha256": {
+ "pattern": "^[0-9a-f]{64}$",
+ "title": "Source Sha256",
+ "type": "string"
+ },
+ "transformation_ids": {
+ "items": {
+ "type": "string"
+ },
+ "minItems": 1,
+ "title": "Transformation Ids",
+ "type": "array"
+ }
+ },
+ "required": [
+ "environment_id",
+ "source_artifact_id",
+ "source_sha256",
+ "import_profile_id",
+ "auxiliary_source_artifact_ids",
+ "transformation_ids"
+ ],
+ "title": "ElectrolysisLineage",
+ "type": "object"
+ },
+ "ElectrolysisMetadata-Input": {
+ "additionalProperties": false,
+ "description": "Declared electrical context without product-quantification inference.",
+ "properties": {
+ "cell_geometry": {
+ "$ref": "#/components/schemas/MetadataValue-Input"
+ },
+ "chemical_analysis": {
+ "$ref": "#/components/schemas/MetadataValue-Input"
+ },
+ "current_basis": {
+ "$ref": "#/components/schemas/MetadataValue-Input"
+ },
+ "current_sign_convention": {
+ "$ref": "#/components/schemas/MetadataValue-Input"
+ },
+ "electrode_area": {
+ "$ref": "#/components/schemas/MetadataValue-Input"
+ },
+ "interruptions": {
+ "$ref": "#/components/schemas/MetadataValue-Input"
+ },
+ "potential_treatment": {
+ "$ref": "#/components/schemas/MetadataValue-Input"
+ },
+ "reference_scale": {
+ "$ref": "#/components/schemas/MetadataValue-Input"
+ },
+ "sampling_interval": {
+ "$ref": "#/components/schemas/MetadataValue-Input"
+ }
+ },
+ "required": [
+ "current_sign_convention",
+ "current_basis",
+ "electrode_area",
+ "cell_geometry",
+ "reference_scale",
+ "potential_treatment",
+ "sampling_interval",
+ "interruptions",
+ "chemical_analysis"
+ ],
+ "title": "ElectrolysisMetadata",
+ "type": "object"
+ },
+ "ElectrolysisMetadata-Output": {
+ "additionalProperties": false,
+ "description": "Declared electrical context without product-quantification inference.",
+ "properties": {
+ "cell_geometry": {
+ "$ref": "#/components/schemas/MetadataValue-Output"
+ },
+ "chemical_analysis": {
+ "$ref": "#/components/schemas/MetadataValue-Output"
+ },
+ "current_basis": {
+ "$ref": "#/components/schemas/MetadataValue-Output"
+ },
+ "current_sign_convention": {
+ "$ref": "#/components/schemas/MetadataValue-Output"
+ },
+ "electrode_area": {
+ "$ref": "#/components/schemas/MetadataValue-Output"
+ },
+ "interruptions": {
+ "$ref": "#/components/schemas/MetadataValue-Output"
+ },
+ "potential_treatment": {
+ "$ref": "#/components/schemas/MetadataValue-Output"
+ },
+ "reference_scale": {
+ "$ref": "#/components/schemas/MetadataValue-Output"
},
- "work_items": {
- "title": "Work Items",
- "type": "integer"
+ "sampling_interval": {
+ "$ref": "#/components/schemas/MetadataValue-Output"
}
},
"required": [
- "campaign_id",
- "name",
- "state",
- "data_origin",
- "execution_mode",
- "work_items",
- "succeeded",
- "failed",
- "budget",
- "attempts"
+ "current_sign_convention",
+ "current_basis",
+ "electrode_area",
+ "cell_geometry",
+ "reference_scale",
+ "potential_treatment",
+ "sampling_interval",
+ "interruptions",
+ "chemical_analysis"
],
- "title": "CampaignView",
+ "title": "ElectrolysisMetadata",
"type": "object"
},
- "ColumnMapping": {
+ "ElectrolysisNormalisationRequest": {
"additionalProperties": false,
- "description": "One explicit decision about one source column.",
"properties": {
- "role": {
- "enum": [
- "potential",
- "current",
- "current_density",
- "time",
- "cycle",
- "ignored"
- ],
- "title": "Role",
+ "profile_id": {
+ "title": "Profile Id",
"type": "string"
},
- "source_column": {
- "minLength": 1,
- "title": "Source Column",
+ "source_artifact_id": {
+ "title": "Source Artifact Id",
"type": "string"
- },
- "source_unit": {
- "anyOf": [
- {
- "type": "string"
- },
- {
- "type": "null"
- }
- ],
- "title": "Source Unit"
- },
- "target_unit": {
- "anyOf": [
- {
- "type": "string"
- },
- {
- "type": "null"
- }
- ],
- "title": "Target Unit"
}
},
"required": [
- "source_column",
- "role"
+ "source_artifact_id",
+ "profile_id"
],
- "title": "ColumnMapping",
+ "title": "ElectrolysisNormalisationRequest",
"type": "object"
},
- "ConfidenceRepresentation": {
+ "ElectrolysisNormalisationResult": {
"additionalProperties": false,
- "description": "The declared representation used for one inference confidence statement.",
"properties": {
- "kind": {
- "enum": [
- "probability",
- "qualitative",
- "interval"
- ],
- "title": "Kind",
- "type": "string"
+ "findings": {
+ "items": {
+ "$ref": "#/components/schemas/StructuralFinding"
+ },
+ "title": "Findings",
+ "type": "array"
},
- "value": {
- "title": "Value",
- "type": "string"
+ "graph": {
+ "$ref": "#/components/schemas/TransformationGraph"
+ },
+ "observation": {
+ "$ref": "#/components/schemas/NormalisedElectrolysisObservation"
}
},
"required": [
- "kind",
- "value"
+ "observation",
+ "graph",
+ "findings"
],
- "title": "ConfidenceRepresentation",
+ "title": "ElectrolysisNormalisationResult",
"type": "object"
},
- "CreateExperimentRequest": {
- "additionalProperties": false,
+ "ElectrolysisNormalisationView": {
"properties": {
- "expected_experiment_version": {
- "minimum": 0.0,
- "title": "Expected Experiment Version",
- "type": "integer"
+ "replayed": {
+ "title": "Replayed",
+ "type": "boolean"
},
- "observation_id": {
- "minLength": 1,
- "title": "Observation Id",
- "type": "string"
+ "result": {
+ "$ref": "#/components/schemas/ElectrolysisNormalisationResult"
}
},
"required": [
- "observation_id",
- "expected_experiment_version"
+ "result",
+ "replayed"
],
- "title": "CreateExperimentRequest",
+ "title": "ElectrolysisNormalisationView",
"type": "object"
},
- "CreatePackageRequest": {
- "additionalProperties": false,
+ "ElectrolysisProfileView": {
"properties": {
- "expected_experiment_version": {
- "minimum": 1.0,
- "title": "Expected Experiment Version",
- "type": "integer"
+ "profile": {
+ "$ref": "#/components/schemas/ElectrolysisImportProfile-Output"
},
- "passport_id": {
- "minLength": 1,
- "title": "Passport Id",
+ "profile_id": {
+ "title": "Profile Id",
"type": "string"
+ },
+ "replayed": {
+ "title": "Replayed",
+ "type": "boolean"
}
},
"required": [
- "expected_experiment_version",
- "passport_id"
+ "profile_id",
+ "profile",
+ "replayed"
],
- "title": "CreatePackageRequest",
+ "title": "ElectrolysisProfileView",
"type": "object"
},
"ExpectedVersionRequest": {
@@ -1629,45 +2249,165 @@
"observation": {
"$ref": "#/components/schemas/NormalisedCVObservation"
},
- "parser_record": {
- "anyOf": [
- {
- "$ref": "#/components/schemas/ParserRecord"
- },
- {
- "type": "null"
- }
- ]
- }
- },
- "required": [
- "observation",
- "graph",
- "findings"
- ],
- "title": "NormalisationResult",
- "type": "object"
- },
- "NormalisationView": {
- "properties": {
- "replayed": {
- "title": "Replayed",
- "type": "boolean"
+ "parser_record": {
+ "anyOf": [
+ {
+ "$ref": "#/components/schemas/ParserRecord"
+ },
+ {
+ "type": "null"
+ }
+ ]
+ }
+ },
+ "required": [
+ "observation",
+ "graph",
+ "findings"
+ ],
+ "title": "NormalisationResult",
+ "type": "object"
+ },
+ "NormalisationView": {
+ "properties": {
+ "replayed": {
+ "title": "Replayed",
+ "type": "boolean"
+ },
+ "result": {
+ "$ref": "#/components/schemas/NormalisationResult"
+ }
+ },
+ "required": [
+ "result",
+ "replayed"
+ ],
+ "title": "NormalisationView",
+ "type": "object"
+ },
+ "NormalisedCVObservation": {
+ "additionalProperties": false,
+ "properties": {
+ "data_origin": {
+ "enum": [
+ "observed",
+ "synthetic"
+ ],
+ "title": "Data Origin",
+ "type": "string"
+ },
+ "environment_id": {
+ "minLength": 1,
+ "title": "Environment Id",
+ "type": "string"
+ },
+ "execution_mode": {
+ "enum": [
+ "replay",
+ "simulation",
+ "live"
+ ],
+ "title": "Execution Mode",
+ "type": "string"
+ },
+ "import_profile_id": {
+ "minLength": 1,
+ "title": "Import Profile Id",
+ "type": "string"
+ },
+ "metadata": {
+ "$ref": "#/components/schemas/CVMetadata-Output"
+ },
+ "normalisation_version": {
+ "minLength": 1,
+ "title": "Normalisation Version",
+ "type": "string"
+ },
+ "observation_id": {
+ "minLength": 1,
+ "title": "Observation Id",
+ "type": "string"
+ },
+ "parser_record_id": {
+ "anyOf": [
+ {
+ "type": "string"
+ },
+ {
+ "type": "null"
+ }
+ ],
+ "title": "Parser Record Id"
+ },
+ "parser_version": {
+ "minLength": 1,
+ "title": "Parser Version",
+ "type": "string"
+ },
+ "provenance": {
+ "$ref": "#/components/schemas/CVLineage"
+ },
+ "row_count": {
+ "minimum": 1.0,
+ "title": "Row Count",
+ "type": "integer"
+ },
+ "schema_version": {
+ "const": "1",
+ "title": "Schema Version",
+ "type": "string"
+ },
+ "series": {
+ "items": {
+ "$ref": "#/components/schemas/NormalisedSeries"
+ },
+ "minItems": 2,
+ "title": "Series",
+ "type": "array"
+ },
+ "source_artifact_id": {
+ "minLength": 1,
+ "title": "Source Artifact Id",
+ "type": "string"
},
- "result": {
- "$ref": "#/components/schemas/NormalisationResult"
+ "transformation_ids": {
+ "items": {
+ "type": "string"
+ },
+ "minItems": 1,
+ "title": "Transformation Ids",
+ "type": "array"
}
},
"required": [
- "result",
- "replayed"
+ "observation_id",
+ "schema_version",
+ "parser_version",
+ "normalisation_version",
+ "source_artifact_id",
+ "import_profile_id",
+ "data_origin",
+ "execution_mode",
+ "environment_id",
+ "row_count",
+ "series",
+ "metadata",
+ "transformation_ids",
+ "provenance"
],
- "title": "NormalisationView",
+ "title": "NormalisedCVObservation",
"type": "object"
},
- "NormalisedCVObservation": {
+ "NormalisedElectrolysisObservation": {
"additionalProperties": false,
"properties": {
+ "auxiliary_results": {
+ "items": {
+ "$ref": "#/components/schemas/AuxiliaryAnalyticalResult-Output"
+ },
+ "title": "Auxiliary Results",
+ "type": "array"
+ },
"data_origin": {
"enum": [
"observed",
@@ -1696,7 +2436,7 @@
"type": "string"
},
"metadata": {
- "$ref": "#/components/schemas/CVMetadata-Output"
+ "$ref": "#/components/schemas/ElectrolysisMetadata-Output"
},
"normalisation_version": {
"minLength": 1,
@@ -1708,24 +2448,13 @@
"title": "Observation Id",
"type": "string"
},
- "parser_record_id": {
- "anyOf": [
- {
- "type": "string"
- },
- {
- "type": "null"
- }
- ],
- "title": "Parser Record Id"
- },
"parser_version": {
"minLength": 1,
"title": "Parser Version",
"type": "string"
},
"provenance": {
- "$ref": "#/components/schemas/CVLineage"
+ "$ref": "#/components/schemas/ElectrolysisLineage"
},
"row_count": {
"minimum": 1.0,
@@ -1741,7 +2470,7 @@
"items": {
"$ref": "#/components/schemas/NormalisedSeries"
},
- "minItems": 2,
+ "minItems": 3,
"title": "Series",
"type": "array"
},
@@ -1750,6 +2479,11 @@
"title": "Source Artifact Id",
"type": "string"
},
+ "technique": {
+ "const": "galvanostatic_electrolysis",
+ "title": "Technique",
+ "type": "string"
+ },
"transformation_ids": {
"items": {
"type": "string"
@@ -1762,6 +2496,7 @@
"required": [
"observation_id",
"schema_version",
+ "technique",
"parser_version",
"normalisation_version",
"source_artifact_id",
@@ -1772,10 +2507,11 @@
"row_count",
"series",
"metadata",
+ "auxiliary_results",
"transformation_ids",
"provenance"
],
- "title": "NormalisedCVObservation",
+ "title": "NormalisedElectrolysisObservation",
"type": "object"
},
"NormalisedSeries": {
@@ -3461,6 +4197,196 @@
"summary": "Inspect Source"
}
},
+ "/electrolysis/import-profiles": {
+ "post": {
+ "operationId": "create_profile_electrolysis_import_profiles_post",
+ "parameters": [
+ {
+ "in": "header",
+ "name": "Idempotency-Key",
+ "required": false,
+ "schema": {
+ "anyOf": [
+ {
+ "type": "string"
+ },
+ {
+ "type": "null"
+ }
+ ],
+ "title": "Idempotency-Key"
+ }
+ }
+ ],
+ "requestBody": {
+ "content": {
+ "application/json": {
+ "schema": {
+ "$ref": "#/components/schemas/ElectrolysisImportProfile-Input"
+ }
+ }
+ },
+ "required": true
+ },
+ "responses": {
+ "201": {
+ "content": {
+ "application/json": {
+ "schema": {
+ "$ref": "#/components/schemas/ElectrolysisProfileView"
+ }
+ }
+ },
+ "description": "Successful Response"
+ },
+ "422": {
+ "content": {
+ "application/json": {
+ "schema": {
+ "$ref": "#/components/schemas/HTTPValidationError"
+ }
+ }
+ },
+ "description": "Validation Error"
+ }
+ },
+ "summary": "Create Profile"
+ }
+ },
+ "/electrolysis/import-profiles/{profile_id}": {
+ "get": {
+ "operationId": "read_profile_electrolysis_import_profiles__profile_id__get",
+ "parameters": [
+ {
+ "in": "path",
+ "name": "profile_id",
+ "required": true,
+ "schema": {
+ "title": "Profile Id",
+ "type": "string"
+ }
+ }
+ ],
+ "responses": {
+ "200": {
+ "content": {
+ "application/json": {
+ "schema": {
+ "$ref": "#/components/schemas/ElectrolysisProfileView"
+ }
+ }
+ },
+ "description": "Successful Response"
+ },
+ "422": {
+ "content": {
+ "application/json": {
+ "schema": {
+ "$ref": "#/components/schemas/HTTPValidationError"
+ }
+ }
+ },
+ "description": "Validation Error"
+ }
+ },
+ "summary": "Read Profile"
+ }
+ },
+ "/electrolysis/normalisations": {
+ "post": {
+ "operationId": "normalise_electrolysis_normalisations_post",
+ "parameters": [
+ {
+ "in": "header",
+ "name": "Idempotency-Key",
+ "required": false,
+ "schema": {
+ "anyOf": [
+ {
+ "type": "string"
+ },
+ {
+ "type": "null"
+ }
+ ],
+ "title": "Idempotency-Key"
+ }
+ }
+ ],
+ "requestBody": {
+ "content": {
+ "application/json": {
+ "schema": {
+ "$ref": "#/components/schemas/ElectrolysisNormalisationRequest"
+ }
+ }
+ },
+ "required": true
+ },
+ "responses": {
+ "201": {
+ "content": {
+ "application/json": {
+ "schema": {
+ "$ref": "#/components/schemas/ElectrolysisNormalisationView"
+ }
+ }
+ },
+ "description": "Successful Response"
+ },
+ "422": {
+ "content": {
+ "application/json": {
+ "schema": {
+ "$ref": "#/components/schemas/HTTPValidationError"
+ }
+ }
+ },
+ "description": "Validation Error"
+ }
+ },
+ "summary": "Normalise"
+ }
+ },
+ "/electrolysis/normalised-observations/{observation_id}": {
+ "get": {
+ "operationId": "read_normalisation_electrolysis_normalised_observations__observation_id__get",
+ "parameters": [
+ {
+ "in": "path",
+ "name": "observation_id",
+ "required": true,
+ "schema": {
+ "title": "Observation Id",
+ "type": "string"
+ }
+ }
+ ],
+ "responses": {
+ "200": {
+ "content": {
+ "application/json": {
+ "schema": {
+ "$ref": "#/components/schemas/ElectrolysisNormalisationView"
+ }
+ }
+ },
+ "description": "Successful Response"
+ },
+ "422": {
+ "content": {
+ "application/json": {
+ "schema": {
+ "$ref": "#/components/schemas/HTTPValidationError"
+ }
+ }
+ },
+ "description": "Validation Error"
+ }
+ },
+ "summary": "Read Normalisation"
+ }
+ },
"/experiment-packages/{package_id}": {
"get": {
"operationId": "get_package_route_experiment_packages__package_id__get",
diff --git a/docs/ROADMAP.md b/docs/ROADMAP.md
index c9f0d92..2e95731 100644
--- a/docs/ROADMAP.md
+++ b/docs/ROADMAP.md
@@ -586,8 +586,8 @@ for techniques not demonstrated in earlier phases.
## Phase 7 — campaign reliability demonstration
-**Status:** `demonstrated` for synthetic replay in the recorded environment; observed replay and
-future live execution were not run.
+**Status:** `demonstrated` for synthetic replay across the six declared process-termination
+boundaries. Observed HER replay and future live execution were not run.
### Objective
@@ -635,7 +635,8 @@ zero lost accepted observations, unintended duplicate acceptances, hard-budget o
projection mismatches, or Package-verification failures; it also records 51 `lease_lost` failures
and 100 suppressed redeliveries. The deployment restore reverified 100 stored objects, replayed 100
campaigns, and fully verified 100 restored campaign Packages. These are synthetic-replay reliability
-measurements, not scientific or live-instrument results.
+measurements, not scientific or live-instrument results. Observed replay and future live execution
+were not run.
### Out of scope
diff --git a/docs/SPEC.md b/docs/SPEC.md
index 010fc4a..7fd59ce 100644
--- a/docs/SPEC.md
+++ b/docs/SPEC.md
@@ -901,6 +901,10 @@ Minimum endpoints:
and retrieve its observation, graph, and structural findings;
- `GET /cv/normalised-observations/{id}/plot-series` — retrieve backend-approved values, roles,
units, identity, and provenance without display transformations;
+- `POST /electrolysis/import-profiles` and `GET /electrolysis/import-profiles/{id}` — create and
+ retrieve immutable explicit galvanostatic-electrolysis profiles;
+- `POST /electrolysis/normalisations` and `GET /electrolysis/normalised-observations/{id}` —
+ normalise a retained electrolysis source and retrieve its observation, graph, and findings;
- `POST /experiments` and `GET /experiments/{id}` — create an experiment from one retained Phase 2
observation and retrieve its latest immutable version;
- `POST /experiments/{id}/assertions` — append one user-supplied supplement or correction;
@@ -950,6 +954,8 @@ labbridge cv inspect --encoding --delimiter [--json]
labbridge cv normalise --profile-id [--json]
labbridge cv plot [--json]
+labbridge electrolysis profile-create [--json]
+labbridge electrolysis normalise --profile-id [--json]
labbridge experiment create --expected-version 0 \
--idempotency-key [--json]
labbridge experiment assert --expected-version \
diff --git a/frontend/src/generated/api-v1.ts b/frontend/src/generated/api-v1.ts
index 96a2f1d..a0cffe5 100644
--- a/frontend/src/generated/api-v1.ts
+++ b/frontend/src/generated/api-v1.ts
@@ -45,6 +45,57 @@ export interface paths {
patch?: never;
trace?: never;
};
+ "/campaigns/{campaign_id}/cancel": {
+ parameters: {
+ query?: never;
+ header?: never;
+ path?: never;
+ cookie?: never;
+ };
+ get?: never;
+ put?: never;
+ /** Cancel Campaign */
+ post: operations["cancel_campaign_campaigns__campaign_id__cancel_post"];
+ delete?: never;
+ options?: never;
+ head?: never;
+ patch?: never;
+ trace?: never;
+ };
+ "/campaigns/{campaign_id}/pause": {
+ parameters: {
+ query?: never;
+ header?: never;
+ path?: never;
+ cookie?: never;
+ };
+ get?: never;
+ put?: never;
+ /** Pause Campaign */
+ post: operations["pause_campaign_campaigns__campaign_id__pause_post"];
+ delete?: never;
+ options?: never;
+ head?: never;
+ patch?: never;
+ trace?: never;
+ };
+ "/campaigns/{campaign_id}/resume": {
+ parameters: {
+ query?: never;
+ header?: never;
+ path?: never;
+ cookie?: never;
+ };
+ get?: never;
+ put?: never;
+ /** Resume Campaign */
+ post: operations["resume_campaign_campaigns__campaign_id__resume_post"];
+ delete?: never;
+ options?: never;
+ head?: never;
+ patch?: never;
+ trace?: never;
+ };
"/cv/import-profiles": {
parameters: {
query?: never;
@@ -164,6 +215,74 @@ export interface paths {
patch?: never;
trace?: never;
};
+ "/electrolysis/import-profiles": {
+ parameters: {
+ query?: never;
+ header?: never;
+ path?: never;
+ cookie?: never;
+ };
+ get?: never;
+ put?: never;
+ /** Create Profile */
+ post: operations["create_profile_electrolysis_import_profiles_post"];
+ delete?: never;
+ options?: never;
+ head?: never;
+ patch?: never;
+ trace?: never;
+ };
+ "/electrolysis/import-profiles/{profile_id}": {
+ parameters: {
+ query?: never;
+ header?: never;
+ path?: never;
+ cookie?: never;
+ };
+ /** Read Profile */
+ get: operations["read_profile_electrolysis_import_profiles__profile_id__get"];
+ put?: never;
+ post?: never;
+ delete?: never;
+ options?: never;
+ head?: never;
+ patch?: never;
+ trace?: never;
+ };
+ "/electrolysis/normalisations": {
+ parameters: {
+ query?: never;
+ header?: never;
+ path?: never;
+ cookie?: never;
+ };
+ get?: never;
+ put?: never;
+ /** Normalise */
+ post: operations["normalise_electrolysis_normalisations_post"];
+ delete?: never;
+ options?: never;
+ head?: never;
+ patch?: never;
+ trace?: never;
+ };
+ "/electrolysis/normalised-observations/{observation_id}": {
+ parameters: {
+ query?: never;
+ header?: never;
+ path?: never;
+ cookie?: never;
+ };
+ /** Read Normalisation */
+ get: operations["read_normalisation_electrolysis_normalised_observations__observation_id__get"];
+ put?: never;
+ post?: never;
+ delete?: never;
+ options?: never;
+ head?: never;
+ patch?: never;
+ trace?: never;
+ };
"/experiment-packages/{package_id}": {
parameters: {
query?: never;
@@ -461,6 +580,72 @@ export interface components {
/** Value */
value?: string | boolean | number | null;
};
+ /**
+ * AuxiliaryAnalyticalResult
+ * @description A declared analytical result linked to retained electrical and analytical sources.
+ */
+ "AuxiliaryAnalyticalResult-Input": {
+ /** Analyte */
+ analyte: string;
+ /** Collection Point */
+ collection_point: string;
+ /** Electrical Source Artifact Id */
+ electrical_source_artifact_id: string;
+ /** Method Name */
+ method_name: string;
+ /** Method Version */
+ method_version: string;
+ /**
+ * Quantity Kind
+ * @constant
+ */
+ quantity_kind: "concentration";
+ /** Result Id */
+ result_id: string;
+ /** Sample Id */
+ sample_id: string;
+ /** Source Artifact Id */
+ source_artifact_id: string;
+ /** Source Location */
+ source_location: string;
+ /** Unit */
+ unit: string;
+ /** Value */
+ value: number | string;
+ };
+ /**
+ * AuxiliaryAnalyticalResult
+ * @description A declared analytical result linked to retained electrical and analytical sources.
+ */
+ "AuxiliaryAnalyticalResult-Output": {
+ /** Analyte */
+ analyte: string;
+ /** Collection Point */
+ collection_point: string;
+ /** Electrical Source Artifact Id */
+ electrical_source_artifact_id: string;
+ /** Method Name */
+ method_name: string;
+ /** Method Version */
+ method_version: string;
+ /**
+ * Quantity Kind
+ * @constant
+ */
+ quantity_kind: "concentration";
+ /** Result Id */
+ result_id: string;
+ /** Sample Id */
+ sample_id: string;
+ /** Source Artifact Id */
+ source_artifact_id: string;
+ /** Source Location */
+ source_location: string;
+ /** Unit */
+ unit: string;
+ /** Value */
+ value: string;
+ };
/**
* CVImportProfile
* @description Versioned, complete and immutable instructions for parsing one CSV shape.
@@ -578,6 +763,58 @@ export interface components {
reference_scale: components["schemas"]["MetadataValue-Output"];
scan_rate: components["schemas"]["MetadataValue-Output"];
};
+ /** CampaignAttemptsView */
+ CampaignAttemptsView: {
+ /** By Status */
+ by_status: {
+ [key: string]: number;
+ };
+ /** Failure Codes */
+ failure_codes: {
+ [key: string]: number;
+ };
+ /** Total */
+ total: number;
+ };
+ /** CampaignBudgetView */
+ CampaignBudgetView: {
+ /** Consumed */
+ consumed: string;
+ /** Hard Limit */
+ hard_limit: string;
+ /** Outstanding */
+ outstanding: string;
+ /** Released */
+ released: string;
+ /** Remaining */
+ remaining: string;
+ /** Reserved */
+ reserved: string;
+ /** Unit */
+ unit: string;
+ };
+ /** CampaignControlRequest */
+ CampaignControlRequest: {
+ /** Expected Version */
+ expected_version: number;
+ };
+ /** CampaignControlResult */
+ CampaignControlResult: {
+ /**
+ * Campaign Id
+ * Format: uuid
+ */
+ campaign_id: string;
+ /** Replayed */
+ replayed: boolean;
+ /**
+ * State
+ * @enum {string}
+ */
+ state: "draft" | "ready" | "active" | "paused" | "completed" | "budget_exhausted" | "cancelled" | "failed";
+ /** Version */
+ version: number;
+ };
/** CampaignCreated */
CampaignCreated: {
/**
@@ -590,10 +827,30 @@ export interface components {
/** Work Items */
work_items: number;
};
+ /**
+ * CampaignDeclaration
+ * @description The execution limits that must be known before a campaign becomes active.
+ */
+ CampaignDeclaration: {
+ /** Budget Unit */
+ budget_unit: string;
+ /** Hard Budget */
+ hard_budget: number | string;
+ /** Max Attempts */
+ max_attempts: number;
+ /** Per Attempt Estimate */
+ per_attempt_estimate: number | string;
+ /**
+ * Stopping Rule
+ * @constant
+ */
+ stopping_rule: "hard_budget_exhausted";
+ };
/** CampaignRequest */
CampaignRequest: {
/** Adapter Version */
adapter_version: string;
+ budget?: components["schemas"]["CampaignDeclaration"] | null;
/** Candidates */
candidates: components["schemas"]["HerCandidate"][];
/**
@@ -613,6 +870,8 @@ export interface components {
};
/** CampaignView */
CampaignView: {
+ attempts: components["schemas"]["CampaignAttemptsView"];
+ budget: components["schemas"]["CampaignBudgetView"];
/**
* Campaign Id
* Format: uuid
@@ -677,6 +936,174 @@ export interface components {
/** Passport Id */
passport_id: string;
};
+ /**
+ * ElectrolysisColumnMapping
+ * @description One explicit electrolysis source-column role and unit conversion.
+ */
+ ElectrolysisColumnMapping: {
+ /**
+ * Role
+ * @enum {string}
+ */
+ role: "time" | "current" | "current_density" | "potential" | "ignored";
+ /** Source Column */
+ source_column: string;
+ /** Source Unit */
+ source_unit?: string | null;
+ /** Target Unit */
+ target_unit?: string | null;
+ };
+ /**
+ * ElectrolysisImportProfile
+ * @description Complete instructions for one galvanostatic-electrolysis CSV shape.
+ */
+ "ElectrolysisImportProfile-Input": {
+ /** Auxiliary Results */
+ auxiliary_results: components["schemas"]["AuxiliaryAnalyticalResult-Input"][];
+ /** Columns */
+ columns: components["schemas"]["ElectrolysisColumnMapping"][];
+ /**
+ * Decimal Convention
+ * @enum {string}
+ */
+ decimal_convention: "point" | "comma";
+ /** Delimiter */
+ delimiter: string;
+ /**
+ * Encoding
+ * @enum {string}
+ */
+ encoding: "utf-8" | "utf-8-sig";
+ /** Environment Id */
+ environment_id: string;
+ /** Header Row */
+ header_row: number;
+ metadata: components["schemas"]["ElectrolysisMetadata-Input"];
+ /** Missing Value Tokens */
+ missing_value_tokens: string[];
+ /**
+ * Schema Version
+ * @constant
+ */
+ schema_version: "1";
+ /**
+ * Technique
+ * @constant
+ */
+ technique: "galvanostatic_electrolysis";
+ };
+ /**
+ * ElectrolysisImportProfile
+ * @description Complete instructions for one galvanostatic-electrolysis CSV shape.
+ */
+ "ElectrolysisImportProfile-Output": {
+ /** Auxiliary Results */
+ auxiliary_results: components["schemas"]["AuxiliaryAnalyticalResult-Output"][];
+ /** Columns */
+ columns: components["schemas"]["ElectrolysisColumnMapping"][];
+ /**
+ * Decimal Convention
+ * @enum {string}
+ */
+ decimal_convention: "point" | "comma";
+ /** Delimiter */
+ delimiter: string;
+ /**
+ * Encoding
+ * @enum {string}
+ */
+ encoding: "utf-8" | "utf-8-sig";
+ /** Environment Id */
+ environment_id: string;
+ /** Header Row */
+ header_row: number;
+ metadata: components["schemas"]["ElectrolysisMetadata-Output"];
+ /** Missing Value Tokens */
+ missing_value_tokens: string[];
+ /**
+ * Schema Version
+ * @constant
+ */
+ schema_version: "1";
+ /**
+ * Technique
+ * @constant
+ */
+ technique: "galvanostatic_electrolysis";
+ };
+ /** ElectrolysisLineage */
+ ElectrolysisLineage: {
+ /** Auxiliary Source Artifact Ids */
+ auxiliary_source_artifact_ids: string[];
+ /** Environment Id */
+ environment_id: string;
+ /** Import Profile Id */
+ import_profile_id: string;
+ /** Source Artifact Id */
+ source_artifact_id: string;
+ /** Source Sha256 */
+ source_sha256: string;
+ /** Transformation Ids */
+ transformation_ids: string[];
+ };
+ /**
+ * ElectrolysisMetadata
+ * @description Declared electrical context without product-quantification inference.
+ */
+ "ElectrolysisMetadata-Input": {
+ cell_geometry: components["schemas"]["MetadataValue-Input"];
+ chemical_analysis: components["schemas"]["MetadataValue-Input"];
+ current_basis: components["schemas"]["MetadataValue-Input"];
+ current_sign_convention: components["schemas"]["MetadataValue-Input"];
+ electrode_area: components["schemas"]["MetadataValue-Input"];
+ interruptions: components["schemas"]["MetadataValue-Input"];
+ potential_treatment: components["schemas"]["MetadataValue-Input"];
+ reference_scale: components["schemas"]["MetadataValue-Input"];
+ sampling_interval: components["schemas"]["MetadataValue-Input"];
+ };
+ /**
+ * ElectrolysisMetadata
+ * @description Declared electrical context without product-quantification inference.
+ */
+ "ElectrolysisMetadata-Output": {
+ cell_geometry: components["schemas"]["MetadataValue-Output"];
+ chemical_analysis: components["schemas"]["MetadataValue-Output"];
+ current_basis: components["schemas"]["MetadataValue-Output"];
+ current_sign_convention: components["schemas"]["MetadataValue-Output"];
+ electrode_area: components["schemas"]["MetadataValue-Output"];
+ interruptions: components["schemas"]["MetadataValue-Output"];
+ potential_treatment: components["schemas"]["MetadataValue-Output"];
+ reference_scale: components["schemas"]["MetadataValue-Output"];
+ sampling_interval: components["schemas"]["MetadataValue-Output"];
+ };
+ /** ElectrolysisNormalisationRequest */
+ ElectrolysisNormalisationRequest: {
+ /** Profile Id */
+ profile_id: string;
+ /** Source Artifact Id */
+ source_artifact_id: string;
+ };
+ /** ElectrolysisNormalisationResult */
+ ElectrolysisNormalisationResult: {
+ /** Findings */
+ findings: components["schemas"]["StructuralFinding"][];
+ graph: components["schemas"]["TransformationGraph"];
+ observation: components["schemas"]["NormalisedElectrolysisObservation"];
+ };
+ /** ElectrolysisNormalisationView */
+ ElectrolysisNormalisationView: {
+ /** Replayed */
+ replayed: boolean;
+ result: components["schemas"]["ElectrolysisNormalisationResult"];
+ };
+ /** ElectrolysisProfileView */
+ ElectrolysisProfileView: {
+ profile: components["schemas"]["ElectrolysisImportProfile-Output"];
+ /** Profile Id */
+ profile_id: string;
+ /** Replayed */
+ replayed: boolean;
+ };
/** ExpectedVersionRequest */
ExpectedVersionRequest: {
/** Expected Experiment Version */
@@ -968,29 +1395,71 @@ export interface components {
profile_id: string;
/** Source Artifact Id */
source_artifact_id: string;
- /**
- * Source Format
- * @default generic_csv
- * @enum {string}
- */
- source_format: "generic_csv" | "gamry_dta";
- };
- /** NormalisationResult */
- NormalisationResult: {
- /** Findings */
- findings: components["schemas"]["StructuralFinding"][];
- graph: components["schemas"]["TransformationGraph"];
- observation: components["schemas"]["NormalisedCVObservation"];
- parser_record?: components["schemas"]["ParserRecord"] | null;
- };
- /** NormalisationView */
- NormalisationView: {
- /** Replayed */
- replayed: boolean;
- result: components["schemas"]["NormalisationResult"];
+ /**
+ * Source Format
+ * @default generic_csv
+ * @enum {string}
+ */
+ source_format: "generic_csv" | "gamry_dta";
+ };
+ /** NormalisationResult */
+ NormalisationResult: {
+ /** Findings */
+ findings: components["schemas"]["StructuralFinding"][];
+ graph: components["schemas"]["TransformationGraph"];
+ observation: components["schemas"]["NormalisedCVObservation"];
+ parser_record?: components["schemas"]["ParserRecord"] | null;
+ };
+ /** NormalisationView */
+ NormalisationView: {
+ /** Replayed */
+ replayed: boolean;
+ result: components["schemas"]["NormalisationResult"];
+ };
+ /** NormalisedCVObservation */
+ NormalisedCVObservation: {
+ /**
+ * Data Origin
+ * @enum {string}
+ */
+ data_origin: "observed" | "synthetic";
+ /** Environment Id */
+ environment_id: string;
+ /**
+ * Execution Mode
+ * @enum {string}
+ */
+ execution_mode: "replay" | "simulation" | "live";
+ /** Import Profile Id */
+ import_profile_id: string;
+ metadata: components["schemas"]["CVMetadata-Output"];
+ /** Normalisation Version */
+ normalisation_version: string;
+ /** Observation Id */
+ observation_id: string;
+ /** Parser Record Id */
+ parser_record_id?: string | null;
+ /** Parser Version */
+ parser_version: string;
+ provenance: components["schemas"]["CVLineage"];
+ /** Row Count */
+ row_count: number;
+ /**
+ * Schema Version
+ * @constant
+ */
+ schema_version: "1";
+ /** Series */
+ series: components["schemas"]["NormalisedSeries"][];
+ /** Source Artifact Id */
+ source_artifact_id: string;
+ /** Transformation Ids */
+ transformation_ids: string[];
};
- /** NormalisedCVObservation */
- NormalisedCVObservation: {
+ /** NormalisedElectrolysisObservation */
+ NormalisedElectrolysisObservation: {
+ /** Auxiliary Results */
+ auxiliary_results: components["schemas"]["AuxiliaryAnalyticalResult-Output"][];
/**
* Data Origin
* @enum {string}
@@ -1005,16 +1474,14 @@ export interface components {
execution_mode: "replay" | "simulation" | "live";
/** Import Profile Id */
import_profile_id: string;
- metadata: components["schemas"]["CVMetadata-Output"];
+ metadata: components["schemas"]["ElectrolysisMetadata-Output"];
/** Normalisation Version */
normalisation_version: string;
/** Observation Id */
observation_id: string;
- /** Parser Record Id */
- parser_record_id?: string | null;
/** Parser Version */
parser_version: string;
- provenance: components["schemas"]["CVLineage"];
+ provenance: components["schemas"]["ElectrolysisLineage"];
/** Row Count */
row_count: number;
/**
@@ -1026,6 +1493,11 @@ export interface components {
series: components["schemas"]["NormalisedSeries"][];
/** Source Artifact Id */
source_artifact_id: string;
+ /**
+ * Technique
+ * @constant
+ */
+ technique: "galvanostatic_electrolysis";
/** Transformation Ids */
transformation_ids: string[];
};
@@ -1511,6 +1983,117 @@ export interface operations {
};
};
};
+ cancel_campaign_campaigns__campaign_id__cancel_post: {
+ parameters: {
+ query?: never;
+ header?: {
+ "Idempotency-Key"?: string | null;
+ };
+ path: {
+ campaign_id: string;
+ };
+ cookie?: never;
+ };
+ requestBody: {
+ content: {
+ "application/json": components["schemas"]["CampaignControlRequest"];
+ };
+ };
+ responses: {
+ /** @description Successful Response */
+ 200: {
+ headers: {
+ [name: string]: unknown;
+ };
+ content: {
+ "application/json": components["schemas"]["CampaignControlResult"];
+ };
+ };
+ /** @description Validation Error */
+ 422: {
+ headers: {
+ [name: string]: unknown;
+ };
+ content: {
+ "application/json": components["schemas"]["HTTPValidationError"];
+ };
+ };
+ };
+ };
+ pause_campaign_campaigns__campaign_id__pause_post: {
+ parameters: {
+ query?: never;
+ header?: {
+ "Idempotency-Key"?: string | null;
+ };
+ path: {
+ campaign_id: string;
+ };
+ cookie?: never;
+ };
+ requestBody: {
+ content: {
+ "application/json": components["schemas"]["CampaignControlRequest"];
+ };
+ };
+ responses: {
+ /** @description Successful Response */
+ 200: {
+ headers: {
+ [name: string]: unknown;
+ };
+ content: {
+ "application/json": components["schemas"]["CampaignControlResult"];
+ };
+ };
+ /** @description Validation Error */
+ 422: {
+ headers: {
+ [name: string]: unknown;
+ };
+ content: {
+ "application/json": components["schemas"]["HTTPValidationError"];
+ };
+ };
+ };
+ };
+ resume_campaign_campaigns__campaign_id__resume_post: {
+ parameters: {
+ query?: never;
+ header?: {
+ "Idempotency-Key"?: string | null;
+ };
+ path: {
+ campaign_id: string;
+ };
+ cookie?: never;
+ };
+ requestBody: {
+ content: {
+ "application/json": components["schemas"]["CampaignControlRequest"];
+ };
+ };
+ responses: {
+ /** @description Successful Response */
+ 200: {
+ headers: {
+ [name: string]: unknown;
+ };
+ content: {
+ "application/json": components["schemas"]["CampaignControlResult"];
+ };
+ };
+ /** @description Validation Error */
+ 422: {
+ headers: {
+ [name: string]: unknown;
+ };
+ content: {
+ "application/json": components["schemas"]["HTTPValidationError"];
+ };
+ };
+ };
+ };
create_profile_cv_import_profiles_post: {
parameters: {
query?: never;
@@ -1738,6 +2321,138 @@ export interface operations {
};
};
};
+ create_profile_electrolysis_import_profiles_post: {
+ parameters: {
+ query?: never;
+ header?: {
+ "Idempotency-Key"?: string | null;
+ };
+ path?: never;
+ cookie?: never;
+ };
+ requestBody: {
+ content: {
+ "application/json": components["schemas"]["ElectrolysisImportProfile-Input"];
+ };
+ };
+ responses: {
+ /** @description Successful Response */
+ 201: {
+ headers: {
+ [name: string]: unknown;
+ };
+ content: {
+ "application/json": components["schemas"]["ElectrolysisProfileView"];
+ };
+ };
+ /** @description Validation Error */
+ 422: {
+ headers: {
+ [name: string]: unknown;
+ };
+ content: {
+ "application/json": components["schemas"]["HTTPValidationError"];
+ };
+ };
+ };
+ };
+ read_profile_electrolysis_import_profiles__profile_id__get: {
+ parameters: {
+ query?: never;
+ header?: never;
+ path: {
+ profile_id: string;
+ };
+ cookie?: never;
+ };
+ requestBody?: never;
+ responses: {
+ /** @description Successful Response */
+ 200: {
+ headers: {
+ [name: string]: unknown;
+ };
+ content: {
+ "application/json": components["schemas"]["ElectrolysisProfileView"];
+ };
+ };
+ /** @description Validation Error */
+ 422: {
+ headers: {
+ [name: string]: unknown;
+ };
+ content: {
+ "application/json": components["schemas"]["HTTPValidationError"];
+ };
+ };
+ };
+ };
+ normalise_electrolysis_normalisations_post: {
+ parameters: {
+ query?: never;
+ header?: {
+ "Idempotency-Key"?: string | null;
+ };
+ path?: never;
+ cookie?: never;
+ };
+ requestBody: {
+ content: {
+ "application/json": components["schemas"]["ElectrolysisNormalisationRequest"];
+ };
+ };
+ responses: {
+ /** @description Successful Response */
+ 201: {
+ headers: {
+ [name: string]: unknown;
+ };
+ content: {
+ "application/json": components["schemas"]["ElectrolysisNormalisationView"];
+ };
+ };
+ /** @description Validation Error */
+ 422: {
+ headers: {
+ [name: string]: unknown;
+ };
+ content: {
+ "application/json": components["schemas"]["HTTPValidationError"];
+ };
+ };
+ };
+ };
+ read_normalisation_electrolysis_normalised_observations__observation_id__get: {
+ parameters: {
+ query?: never;
+ header?: never;
+ path: {
+ observation_id: string;
+ };
+ cookie?: never;
+ };
+ requestBody?: never;
+ responses: {
+ /** @description Successful Response */
+ 200: {
+ headers: {
+ [name: string]: unknown;
+ };
+ content: {
+ "application/json": components["schemas"]["ElectrolysisNormalisationView"];
+ };
+ };
+ /** @description Validation Error */
+ 422: {
+ headers: {
+ [name: string]: unknown;
+ };
+ content: {
+ "application/json": components["schemas"]["HTTPValidationError"];
+ };
+ };
+ };
+ };
get_package_route_experiment_packages__package_id__get: {
parameters: {
query?: never;
diff --git a/pyproject.toml b/pyproject.toml
index 8a9c0e4..a765bd2 100644
--- a/pyproject.toml
+++ b/pyproject.toml
@@ -21,9 +21,10 @@ keywords = [
]
dependencies = [
- "pydantic>=2.7",
+ "pydantic==2.11.9", # 2.12 changes Decimal JSON Schema and breaks the locked OpenAPI contract
"pydantic-settings>=2.3",
- "fastapi>=0.111",
+ "fastapi==0.135.1",
+ "starlette==0.48.0", # FastAPI 0.135.1 schema generation; keep the renderer that wrote the contract
"uvicorn[standard]>=0.30",
"pandas>=2.2",
"pyarrow>=16.0",
@@ -83,7 +84,7 @@ src = ["src", "tests"]
[tool.ruff.lint]
select = ["E", "F", "I", "N", "UP", "B", "SIM", "RUF", "PL", "ASYNC"]
-ignore = ["PLR0913"]
+ignore = ["PLR0913", "PLR0917"]
[tool.ruff.lint.per-file-ignores]
# Alembic writes these. Rewrapping generated DDL would make the file diverge from what the next
diff --git a/scripts/hooks/pre-commit b/scripts/hooks/pre-commit
index c819da6..1bc5285 100644
--- a/scripts/hooks/pre-commit
+++ b/scripts/hooks/pre-commit
@@ -110,10 +110,22 @@ else
fi
# --- artifact validation ----------------------------------------------------------------------------
-if have labbridge && labbridge validate-artifacts --help >/dev/null 2>&1; then
- run "artifact validation" labbridge validate-artifacts
+# Run the checkout's own CLI rather than whatever `labbridge` resolves to on PATH: an editable
+# install can point at a different worktree, which would gate this commit on another tree's bytes.
+# This is the gate that must not be able to pass by not running, so resolve an interpreter under
+# either common name rather than skipping on a platform where only `python3` exists.
+python_bin=""
+if have python; then
+ python_bin=python
+elif have python3; then
+ python_bin=python3
+fi
+if [ -n "$python_bin" ] && [ -d src/labbridge ]; then
+ # `src` first so an editable install pointing at another worktree cannot decide this commit.
+ export PYTHONPATH="src${PYTHONPATH:+:$PYTHONPATH}"
+ run "artifact validation" "$python_bin" -m labbridge.cli validate-artifacts
else
- echo " [skip] artifact validation (validate-artifacts not implemented yet)"
+ echo " [skip] artifact validation (no python interpreter or no src/labbridge in this checkout)"
fi
# --- secret scan on staged content ------------------------------------------------------------------
diff --git a/scripts/reproduce_campaign_reliability.py b/scripts/reproduce_campaign_reliability.py
index dd96152..750f5cd 100644
--- a/scripts/reproduce_campaign_reliability.py
+++ b/scripts/reproduce_campaign_reliability.py
@@ -37,6 +37,7 @@
from labbridge.reliability.backup_restore import verify_backup_restore
from labbridge.reliability.fault_campaign import plan_fault_points
from labbridge.reliability.migration_rehearsal import rehearse_migration
+from labbridge.reliability.producer_identity import require_clean_committed_producer
from labbridge.reliability.release import (
verify_fault_campaign_release,
write_fault_campaign_release,
@@ -90,7 +91,11 @@ def _command_output(argv: list[str]) -> str:
def _environment_manifest(
- *, database_name: str, bucket: str, fixture_manifest_sha256: str
+ *,
+ database_name: str,
+ bucket: str,
+ fixture_manifest_sha256: str,
+ producer: dict[str, object],
) -> dict[str, object]:
versions = {}
for distribution in ("labbridge", "sqlalchemy", "psycopg", "boto3", "alembic"):
@@ -104,8 +109,11 @@ def _environment_manifest(
"python": sys.version,
"python_executable": sys.executable,
"dependency_versions": versions,
- "git_head": _command_output(["git", "rev-parse", "HEAD"]),
- "origin_main": _command_output(["git", "rev-parse", "origin/main"]),
+ "git_head": producer["git_head"],
+ "origin_main": producer["origin_main"],
+ "merge_base_with_origin_main": producer["merge_base_with_origin_main"],
+ "origin_main_contained": producer["origin_main_contained"],
+ "working_tree": producer["working_tree"],
"source_tree_sha256": _source_tree_digest(),
"docker_version": _command_output(["docker", "version", "--format", "{{.Server.Version}}"]),
"compose_images": _command_output(["docker", "compose", "images", "--format", "json"]),
@@ -120,6 +128,7 @@ def _environment_manifest(
async def _run(args: argparse.Namespace) -> list[CampaignExecution]:
+ producer = require_clean_committed_producer(REPO_ROOT, allow_dirty=args.allow_dirty)
os.environ["LABBRIDGE_DB_NAME"] = args.database_name
os.environ["LABBRIDGE_S3_BUCKET"] = args.bucket
_ensure_database(args.database_name)
@@ -193,6 +202,7 @@ async def _run(args: argparse.Namespace) -> list[CampaignExecution]:
database_name=args.database_name,
bucket=args.bucket,
fixture_manifest_sha256=fixture_sha,
+ producer=dict(producer),
)
operational = verify_backup_restore(
source_engine=engine,
@@ -230,6 +240,11 @@ def main() -> int:
parser.add_argument("--database-name", default="labbridge_phase7_fault_campaign")
parser.add_argument("--bucket", default="labbridge-phase7-fault-campaign")
parser.add_argument("--output", type=Path, default=Path("build/phase7-fault-campaign"))
+ parser.add_argument(
+ "--allow-dirty",
+ action="store_true",
+ help="Allow an uncommitted worktree; still records working_tree=dirty in the manifest.",
+ )
args = parser.parse_args()
if args.output.exists() and any(args.output.iterdir()):
raise SystemExit(f"output directory is not empty: {args.output}")
diff --git a/src/labbridge/api/app.py b/src/labbridge/api/app.py
index 9424c7a..baa15ab 100644
--- a/src/labbridge/api/app.py
+++ b/src/labbridge/api/app.py
@@ -36,6 +36,7 @@
from labbridge.application.campaigns import CampaignControlResult, CampaignControlService
from labbridge.application.cv_ingestion import CVIngestionService
+from labbridge.application.electrolysis_ingestion import ElectrolysisIngestionService
from labbridge.application.experiments import ExperimentService
from labbridge.application.source_intake import SourceArtifactService
from labbridge.domain.campaigns import CampaignDeclaration
@@ -50,6 +51,7 @@
)
from labbridge.domain.identity import ADMISSIBLE_PAIRS, DataOrigin, ExecutionMode
from labbridge.infrastructure.cv_wiring import build_cv_service
+from labbridge.infrastructure.electrolysis_wiring import build_electrolysis_service
from labbridge.infrastructure.experiment_wiring import build_experiment_service
from labbridge.infrastructure.persistence.config import DatabaseSettings
from labbridge.infrastructure.persistence.tables import (
@@ -68,6 +70,7 @@
from labbridge.runtime.jobs import enqueue
from .cv import register_cv_routes
+from .electrolysis import register_electrolysis_routes
from .experiments import register_experiment_routes
from .frontend import register_frontend
from .source_artifacts import register_source_routes
@@ -175,6 +178,22 @@ def provide() -> CVIngestionService:
return provide
+def _electrolysis_service_provider(
+ engine_provider: Callable[[], Engine],
+ source_provider: Callable[[], SourceArtifactService],
+ configured: ElectrolysisIngestionService | None,
+) -> Callable[[], ElectrolysisIngestionService]:
+ bound = configured
+
+ def provide() -> ElectrolysisIngestionService:
+ nonlocal bound
+ if bound is None:
+ bound = build_electrolysis_service(source_provider(), engine_provider())
+ return bound
+
+ return provide
+
+
def _experiment_service_provider(
engine_provider: Callable[[], Engine],
source_provider: Callable[[], SourceArtifactService],
@@ -186,7 +205,16 @@ def _experiment_service_provider(
def provide() -> ExperimentService:
nonlocal bound
if bound is None:
- bound = build_experiment_service(source_provider(), cv_provider(), engine_provider())
+ engine = engine_provider()
+ source_service = source_provider()
+ # Both normalisation readers, so POST /experiments resolves an electrolysis
+ # observation instead of falling through to the CV reader and reporting it not found.
+ bound = build_experiment_service(
+ source_service,
+ cv_provider(),
+ engine,
+ electrolysis_service=build_electrolysis_service(source_service, engine),
+ )
return bound
return provide
@@ -250,10 +278,12 @@ def _replay(
def create_app( # noqa: PLR0915 - one explicit registration point for all HTTP adapters
engine: Engine | None = None,
+ *,
source_service: SourceArtifactService | None = None,
cv_service: CVIngestionService | None = None,
experiment_service: ExperimentService | None = None,
frontend_dir: Path | None = None,
+ electrolysis_service: ElectrolysisIngestionService | None = None,
) -> FastAPI:
"""Build the application. The engine is injectable so tests bind their own.
@@ -277,6 +307,10 @@ def _engine() -> Engine:
cv_provider = _cv_service_provider(_engine, source_provider, cv_service)
register_cv_routes(app, cv_provider)
+ electrolysis_provider = _electrolysis_service_provider(
+ _engine, source_provider, electrolysis_service
+ )
+ register_electrolysis_routes(app, electrolysis_provider)
register_experiment_routes(
app,
_experiment_service_provider(
diff --git a/src/labbridge/api/electrolysis.py b/src/labbridge/api/electrolysis.py
new file mode 100644
index 0000000..9e5490b
--- /dev/null
+++ b/src/labbridge/api/electrolysis.py
@@ -0,0 +1,145 @@
+"""FastAPI adapter for explicit galvanostatic-electrolysis ingestion."""
+
+from __future__ import annotations
+
+from collections.abc import Callable
+
+from fastapi import FastAPI, Header, HTTPException, Response, status
+from pydantic import BaseModel, ConfigDict
+
+from labbridge.application.electrolysis_ingestion import (
+ ElectrolysisIngestionError,
+ ElectrolysisIngestionService,
+ ElectrolysisObservationNotFoundError,
+ ElectrolysisProfileNotFoundError,
+ StoredElectrolysisNormalisation,
+ StoredElectrolysisProfile,
+)
+from labbridge.application.source_intake import SourceIntakeError
+from labbridge.domain.electrolysis import ElectrolysisImportProfile
+from labbridge.domain.electrolysis_observations import ElectrolysisNormalisationResult
+from labbridge.domain.idempotency import IdempotencyKeyError, normalise_idempotency_key
+from labbridge.infrastructure.cv_csv import CsvParseError
+
+
+class ElectrolysisNormalisationRequest(BaseModel):
+ model_config = ConfigDict(extra="forbid")
+
+ source_artifact_id: str
+ profile_id: str
+
+
+class ElectrolysisProfileView(BaseModel):
+ profile_id: str
+ profile: ElectrolysisImportProfile
+ replayed: bool
+
+
+class ElectrolysisNormalisationView(BaseModel):
+ result: ElectrolysisNormalisationResult
+ replayed: bool
+
+
+def _idempotency(key: str | None) -> str:
+ try:
+ return normalise_idempotency_key(key)
+ except IdempotencyKeyError as error:
+ raise HTTPException(
+ status_code=status.HTTP_400_BAD_REQUEST,
+ detail={"code": error.code, "message": str(error)},
+ ) from error
+
+
+def _error(error: Exception) -> HTTPException:
+ if isinstance(
+ error,
+ ElectrolysisProfileNotFoundError | ElectrolysisObservationNotFoundError,
+ ):
+ http_status = status.HTTP_404_NOT_FOUND
+ elif isinstance(error, CsvParseError | ValueError):
+ http_status = status.HTTP_422_UNPROCESSABLE_CONTENT
+ else:
+ http_status = status.HTTP_409_CONFLICT
+ return HTTPException(
+ status_code=http_status,
+ detail={
+ "code": getattr(error, "code", "electrolysis_ingestion_error"),
+ "message": str(error),
+ },
+ )
+
+
+def _profile_view(stored: StoredElectrolysisProfile, response: Response) -> ElectrolysisProfileView:
+ if stored.replayed:
+ response.status_code = status.HTTP_200_OK
+ return ElectrolysisProfileView(
+ profile_id=stored.profile_id, profile=stored.profile, replayed=stored.replayed
+ )
+
+
+def _normalisation_view(
+ stored: StoredElectrolysisNormalisation, response: Response
+) -> ElectrolysisNormalisationView:
+ if stored.replayed:
+ response.status_code = status.HTTP_200_OK
+ return ElectrolysisNormalisationView(result=stored.result, replayed=stored.replayed)
+
+
+def register_electrolysis_routes(
+ app: FastAPI, service: Callable[[], ElectrolysisIngestionService]
+) -> None:
+ @app.post("/electrolysis/import-profiles", status_code=status.HTTP_201_CREATED)
+ def create_profile(
+ profile: ElectrolysisImportProfile,
+ response: Response,
+ idempotency_key: str | None = Header(default=None, alias="Idempotency-Key"),
+ ) -> ElectrolysisProfileView:
+ key = _idempotency(idempotency_key)
+ try:
+ stored = service().create_profile(profile, idempotency_key=key)
+ except ElectrolysisIngestionError as error:
+ raise _error(error) from error
+ return _profile_view(stored, response)
+
+ @app.get("/electrolysis/import-profiles/{profile_id}")
+ def read_profile(profile_id: str) -> ElectrolysisProfileView:
+ try:
+ stored = service().get_profile(profile_id)
+ except ElectrolysisIngestionError as error:
+ raise _error(error) from error
+ return ElectrolysisProfileView(
+ profile_id=stored.profile_id, profile=stored.profile, replayed=True
+ )
+
+ @app.post("/electrolysis/normalisations", status_code=status.HTTP_201_CREATED)
+ def normalise(
+ request: ElectrolysisNormalisationRequest,
+ response: Response,
+ idempotency_key: str | None = Header(default=None, alias="Idempotency-Key"),
+ ) -> ElectrolysisNormalisationView:
+ key = _idempotency(idempotency_key)
+ try:
+ stored = service().normalise(
+ request.source_artifact_id,
+ request.profile_id,
+ idempotency_key=key,
+ )
+ except (
+ ElectrolysisIngestionError,
+ SourceIntakeError,
+ CsvParseError,
+ ValueError,
+ ) as error:
+ raise _error(error) from error
+ return _normalisation_view(stored, response)
+
+ @app.get("/electrolysis/normalised-observations/{observation_id}")
+ def read_normalisation(observation_id: str) -> ElectrolysisNormalisationView:
+ try:
+ stored = service().get_normalisation(observation_id)
+ except ElectrolysisIngestionError as error:
+ raise _error(error) from error
+ return ElectrolysisNormalisationView(result=stored.result, replayed=True)
+
+
+__all__ = ["register_electrolysis_routes"]
diff --git a/src/labbridge/application/electrolysis_ingestion.py b/src/labbridge/application/electrolysis_ingestion.py
index 480ec48..5d0266f 100644
--- a/src/labbridge/application/electrolysis_ingestion.py
+++ b/src/labbridge/application/electrolysis_ingestion.py
@@ -255,6 +255,9 @@ class ElectrolysisObservationIntegrityError(ElectrolysisIngestionError):
class ElectrolysisIdempotencyConflictError(ElectrolysisIngestionError):
code = "electrolysis_idempotency_key_reused"
+ def __init__(self, idempotency_key: str) -> None:
+ super().__init__(f"idempotency key `{idempotency_key}` was reused for a different request")
+
class SourceReader(Protocol):
def retrieve(self, source_artifact_id: str) -> RetrievedSource: ...
diff --git a/src/labbridge/cli.py b/src/labbridge/cli.py
index b769eaa..6734e19 100644
--- a/src/labbridge/cli.py
+++ b/src/labbridge/cli.py
@@ -27,6 +27,10 @@
from labbridge import __version__
from labbridge.application.cv_ingestion import CVIngestionError, CVIngestionService
+from labbridge.application.electrolysis_ingestion import (
+ ElectrolysisIngestionError,
+ ElectrolysisIngestionService,
+)
from labbridge.application.experiments import (
ExperimentApplicationError,
ExperimentService,
@@ -39,6 +43,7 @@
)
from labbridge.demo import engine_from_settings, run_demo
from labbridge.domain.cv import CSVFormat, CVImportProfile
+from labbridge.domain.electrolysis import ElectrolysisImportProfile
from labbridge.domain.identity import DataOrigin, ExecutionMode
from labbridge.domain.parser_diagnostics import SourceFormat
from labbridge.environments.her_replay import HerReplayAdapter
@@ -55,6 +60,7 @@
from labbridge.evidence.manifest import ArtifactVerificationError, verify_manifest
from labbridge.infrastructure.cv_csv import CsvParseError
from labbridge.infrastructure.cv_wiring import build_cv_service
+from labbridge.infrastructure.electrolysis_wiring import build_electrolysis_service
from labbridge.infrastructure.experiment_wiring import build_experiment_service
from labbridge.infrastructure.her_ingestion.errors import HerIngestionError
from labbridge.infrastructure.her_ingestion.fetch import (
@@ -89,6 +95,10 @@
DEFAULT_FIXTURE_ROOT: Final = Path("data/her/fixture")
#: Bundles are regenerable from the database, so they live beside the data and stay git-ignored.
DEFAULT_BUNDLE_ROOT: Final = Path("data/bundles")
+#: Released evidence is committed here and is what the bare gate must protect. It is searched
+#: alongside the bundle root so the gate cannot pass by finding nothing in a git-ignored directory.
+DEFAULT_ARTIFACT_ROOT: Final = Path("artifacts")
+DEFAULT_VERIFICATION_ROOTS: Final = (DEFAULT_ARTIFACT_ROOT, DEFAULT_BUNDLE_ROOT)
app = typer.Typer(add_completion=False, no_args_is_help=True, help=__doc__.splitlines()[0])
#: `docs/SPEC.md` §11.2 fixes `labbridge demo her` and `labbridge evidence verify ` as
@@ -99,6 +109,10 @@
cv_app = typer.Typer(
no_args_is_help=True, help="Inspect and normalise explicitly mapped CV source files."
)
+electrolysis_app = typer.Typer(
+ no_args_is_help=True,
+ help="Retain and normalise explicitly mapped galvanostatic electrolysis files.",
+)
experiment_app = typer.Typer(
no_args_is_help=True, help="Version experiments and release Experiment Passports."
)
@@ -109,6 +123,7 @@
app.add_typer(evidence_app, name="evidence")
app.add_typer(source_app, name="source")
app.add_typer(cv_app, name="cv")
+app.add_typer(electrolysis_app, name="electrolysis")
app.add_typer(experiment_app, name="experiment")
app.add_typer(package_app, name="package")
console = Console()
@@ -154,10 +169,22 @@ def _build_cv_service() -> CVIngestionService:
return build_cv_service(_build_source_service())
+def _build_electrolysis_service() -> ElectrolysisIngestionService:
+ return build_electrolysis_service(_build_source_service())
+
+
def _build_experiment_service() -> ExperimentService:
+ engine = create_engine(DatabaseSettings().dsn, future=True)
source_service = _build_source_service()
- cv_service = build_cv_service(source_service)
- return build_experiment_service(source_service, cv_service)
+ cv_service = build_cv_service(source_service, engine)
+ # Both normalisation readers, so `experiment create` resolves an electrolysis observation
+ # instead of falling through to the CV reader and reporting it as not found.
+ return build_experiment_service(
+ source_service,
+ cv_service,
+ engine,
+ electrolysis_service=build_electrolysis_service(source_service, engine),
+ )
def _experiment_failure(error: Exception) -> None:
@@ -174,6 +201,12 @@ def _cv_failure(error: Exception) -> None:
raise typer.Exit(code=1) from error
+def _electrolysis_failure(error: Exception) -> None:
+ code = getattr(error, "code", "electrolysis_ingestion_error")
+ console.print(f"[red]{escape(str(code))}[/red]: {escape(str(error))}")
+ raise typer.Exit(code=1) from error
+
+
@cv_app.command("inspect")
def cv_inspect(
source_artifact_id: Annotated[str, typer.Argument(help="Retained Phase 1 source identity.")],
@@ -307,6 +340,59 @@ def cv_plot(
console.print(plot.observation_id)
+@electrolysis_app.command("profile-create")
+def electrolysis_profile_create(
+ profile_file: Annotated[Path, typer.Argument(help="Versioned JSON import profile.")],
+ json_output: Annotated[
+ bool, typer.Option("--json", help="Emit machine-readable JSON.")
+ ] = False,
+) -> None:
+ """Validate and retain one immutable explicit electrolysis import profile."""
+ try:
+ profile = ElectrolysisImportProfile.model_validate_json(
+ profile_file.read_text(encoding="utf-8")
+ )
+ stored = _build_electrolysis_service().create_profile(profile)
+ except (OSError, ValueError, ElectrolysisIngestionError) as error:
+ _electrolysis_failure(error)
+ payload = {
+ "profile_id": stored.profile_id,
+ "profile": stored.profile.model_dump(mode="json"),
+ "replayed": stored.replayed,
+ }
+ if json_output:
+ typer.echo(json.dumps(payload, sort_keys=True, ensure_ascii=False))
+ else:
+ console.print(stored.profile_id)
+
+
+@electrolysis_app.command("normalise")
+def electrolysis_normalise(
+ source_artifact_id: Annotated[str, typer.Argument(help="Retained source identity.")],
+ profile_id: Annotated[
+ str, typer.Option("--profile-id", help="Explicit electrolysis import profile identity.")
+ ],
+ json_output: Annotated[
+ bool, typer.Option("--json", help="Emit machine-readable JSON.")
+ ] = False,
+) -> None:
+ """Normalise one retained electrolysis source through the shared application service."""
+ try:
+ stored = _build_electrolysis_service().normalise(source_artifact_id, profile_id)
+ except (
+ ElectrolysisIngestionError,
+ SourceIntakeError,
+ CsvParseError,
+ ValueError,
+ ) as error:
+ _electrolysis_failure(error)
+ payload = {"result": stored.result.model_dump(mode="json"), "replayed": stored.replayed}
+ if json_output:
+ typer.echo(json.dumps(payload, sort_keys=True, ensure_ascii=False))
+ else:
+ console.print(stored.result.observation.observation_id)
+
+
@experiment_app.command("create")
def experiment_create(
observation_id: Annotated[str, typer.Argument(help="Retained Phase 2 observation identity.")],
@@ -682,32 +768,44 @@ def validate_artifacts(
typer.Option("--bundle", help="One bundle to verify. Omit to verify every bundle found."),
] = None,
bundle_root: Annotated[
- Path, typer.Option("--bundle-root", help="Where to look when --bundle is omitted.")
- ] = DEFAULT_BUNDLE_ROOT,
+ Path | None,
+ typer.Option(
+ "--bundle-root",
+ help="Search one root instead of the committed artifacts and the local bundle root.",
+ ),
+ ] = None,
) -> None:
"""Recompute every checksum in an evidence bundle and report whether it still matches.
Recomputed from the bytes on disk, never compared against a recorded size: a file edited in
place keeps its size far more often than it keeps its hash.
- With no `--bundle` it verifies every bundle under the root, so the bare command is the gate
- `AI_CONTRACT.md` §10 names. An empty root is reported as such rather than passing silently —
- "nothing to check" and "everything checks out" are different answers.
+ With no `--bundle` it verifies everything under the committed artifact root and the local
+ bundle root, so the bare command is the gate `AI_CONTRACT.md` §10 names. Searching only
+ `data/bundles` would let the gate pass on a clean checkout by finding nothing in a git-ignored
+ directory, leaving the released evidence it exists to protect unchecked. Finding nothing at all
+ exits non-zero: "nothing to check" and "everything checks out" are different answers.
Registered under two names because the documents disagree: `AI_CONTRACT.md` §10 calls the gate
`labbridge validate-artifacts`, while `docs/SPEC.md` §11.2 lists `labbridge evidence verify`.
- Both resolve here rather than one being silently preferred; the contradiction is recorded in
- `docs/AGENT_SYSTEM.md`.
+ Both resolve here rather than one being silently preferred.
"""
object_store = _build_object_store() if mode is VerificationMode.FULL else None
if bundle is not None:
_verify_one(bundle, mode, object_store)
return
- candidates = sorted(p for p in bundle_root.glob("*") if (p / "manifest.json").exists())
+ roots = (bundle_root,) if bundle_root is not None else DEFAULT_VERIFICATION_ROOTS
+ candidates = sorted(
+ directory
+ for root in roots
+ for directory in root.glob("*")
+ if (directory / "manifest.json").exists()
+ )
if not candidates:
- console.print(f"[yellow]no bundle found under {bundle_root}[/yellow] — nothing verified")
- return
+ searched = ", ".join(str(root) for root in roots)
+ console.print(f"[red]no_evidence_found[/red]: nothing to verify under {escape(searched)}")
+ raise typer.Exit(code=1)
for candidate in candidates:
_verify_one(candidate, mode, object_store)
console.print(f"[green]{len(candidates)} bundle(s) verified[/green]")
diff --git a/src/labbridge/evidence/echemdb_cv_artifact.py b/src/labbridge/evidence/echemdb_cv_artifact.py
index 86c8e95..a3d86f5 100644
--- a/src/labbridge/evidence/echemdb_cv_artifact.py
+++ b/src/labbridge/evidence/echemdb_cv_artifact.py
@@ -71,6 +71,15 @@
EchemDB figure type is an explicitly asserted lossy projection; LabBridge `data_origin` and
`execution_mode` remain independently represented in `labbridge-provenance.json`.
+Two boundaries of that companion arrangement are explicit rather than resolved. `datapackage.json`
+declares one resource, `cv.csv`, and does not reference `labbridge-provenance.json`, so a consumer
+reading the package only as Frictionless defines it receives the table without LabBridge origin,
+execution mode, or evidence identities; those are found by reading the companion beside it.
+`cv.csv` itself carries no synthetic marker in its filename or its columns, because its field set
+is fixed by the pinned EchemDB `figureDescription`. Within this package the synthetic origin is
+declared by `source.citationKey`, `source.originalFilename`, `figureDescription.type`, and the
+companion; detached from them the table does not identify itself as synthetic.
+
The capability status is `implemented`; this uncommitted candidate is not evidence of clean-checkout
demonstration, EchemDB ingestion, EchemDB publication, or production deployment.
"""
diff --git a/src/labbridge/evidence/experiment_package.py b/src/labbridge/evidence/experiment_package.py
index fbd3a09..a43512f 100644
--- a/src/labbridge/evidence/experiment_package.py
+++ b/src/labbridge/evidence/experiment_package.py
@@ -801,7 +801,15 @@ def _verify_phase_evidence_identity( # noqa: PLR0912,PLR0915
graph: dict[str, object],
passport: ExperimentPassport,
) -> None:
- if profile.get("technique") == "galvanostatic_electrolysis":
+ # The Passport is the single authority for technique. Branching on the profile instead let an
+ # archive declare `galvanostatic_electrolysis` in its Passport and `cyclic_voltammetry` in its
+ # profile, take the CV branch, and skip every electrolysis-specific semantic check while still
+ # verifying. Disagreement is now a verification failure rather than a silent choice.
+ if profile.get("technique") != passport.technique:
+ raise ExperimentPackageVerificationError(
+ "package_technique_mismatch", "import-profile and Passport techniques differ"
+ )
+ if passport.technique == "galvanostatic_electrolysis":
_verify_electrolysis_evidence_identity(source, observation, profile, graph, passport)
return
try:
diff --git a/src/labbridge/evidence/galvanostatic_electrolysis.py b/src/labbridge/evidence/galvanostatic_electrolysis.py
index c187280..d27b62e 100644
--- a/src/labbridge/evidence/galvanostatic_electrolysis.py
+++ b/src/labbridge/evidence/galvanostatic_electrolysis.py
@@ -35,7 +35,7 @@
"python scripts/reproduce_galvanostatic_electrolysis.py "
"--output build/galvanostatic-electrolysis\n"
"labbridge package verify build/galvanostatic-electrolysis/experiment-package.zip --json\n"
- "labbridge validate-artifacts build/galvanostatic-electrolysis\n"
+ "labbridge validate-artifacts --bundle build/galvanostatic-electrolysis\n"
)
LIMITATIONS: Final = """# Galvanostatic electrolysis package limitations
diff --git a/src/labbridge/evidence/gamry_dta_cv.py b/src/labbridge/evidence/gamry_dta_cv.py
index 5534f43..76c1f7a 100644
--- a/src/labbridge/evidence/gamry_dta_cv.py
+++ b/src/labbridge/evidence/gamry_dta_cv.py
@@ -32,7 +32,7 @@
REPRODUCTION_COMMAND: Final = (
"python scripts/reproduce_gamry_dta_cv.py --output build/gamry-dta-cv\n"
"labbridge package verify build/gamry-dta-cv/experiment-package.zip --json\n"
- "labbridge validate-artifacts build/gamry-dta-cv\n"
+ "labbridge validate-artifacts --bundle build/gamry-dta-cv\n"
)
SUPPORT: Final = """# Supported Gamry DTA CV variant
diff --git a/src/labbridge/evidence/manifest.py b/src/labbridge/evidence/manifest.py
index ce3ff11..76043da 100644
--- a/src/labbridge/evidence/manifest.py
+++ b/src/labbridge/evidence/manifest.py
@@ -41,8 +41,15 @@ def build_manifest(
overlap = reserved.intersection(metadata)
if overlap:
raise ValueError(f"manifest metadata uses reserved keys: {', '.join(sorted(overlap))}")
+ # Sort by filename text. `sorted(Path)` is case-insensitive on Windows and case-sensitive on
+ # POSIX, so the same bytes produced a different `files` array — and `files_digest` — in CI.
members = sorted(
- path for path in destination.iterdir() if path.is_file() and path.name != MANIFEST_FILENAME
+ (
+ path
+ for path in destination.iterdir()
+ if path.is_file() and path.name != MANIFEST_FILENAME
+ ),
+ key=lambda path: (path.name.casefold(), path.name),
)
files = [
{"name": path.name, "sha256": digest(path.read_bytes()), "byte_size": path.stat().st_size}
diff --git a/src/labbridge/reliability/migration_rehearsal.py b/src/labbridge/reliability/migration_rehearsal.py
index 7512251..688d738 100644
--- a/src/labbridge/reliability/migration_rehearsal.py
+++ b/src/labbridge/reliability/migration_rehearsal.py
@@ -1,4 +1,10 @@
-"""Versioned production-like migration rehearsal for the Phase 7 release."""
+"""Versioned production-like migration rehearsal for a release database.
+
+The rehearsal upgrades from the previous tagged schema to the unique current Alembic head.
+It does not pin a historical parent revision: a merge, a later additive migration, or a split
+head must change the outcome. The event-stream contract revision must remain an ancestor of
+that unique head so a graph that drops contract version 2 cannot pass.
+"""
from __future__ import annotations
@@ -10,13 +16,14 @@
from alembic import command
from alembic.config import Config
+from alembic.script import ScriptDirectory
from sqlalchemy import create_engine, func, select
from labbridge.infrastructure.persistence.config import DatabaseSettings
from labbridge.infrastructure.persistence.tables import campaigns
PREVIOUS_REVISION = "74e1b6a09d22"
-EXPECTED_HEAD = "a93b7c1e4d62"
+EVENT_STREAM_CONTRACT_REVISION = "a93b7c1e4d62"
def _config(repo_root: Path) -> Config:
@@ -25,6 +32,22 @@ def _config(repo_root: Path) -> Config:
return config
+def expected_upgrade_revision(repo_root: Path) -> str:
+ """Return the unique current Alembic head that a rehearsal must reach."""
+ script = ScriptDirectory.from_config(_config(repo_root))
+ heads = script.get_heads()
+ if len(heads) != 1:
+ raise RuntimeError(f"migration rehearsal requires a unique Alembic head; found {heads}")
+ head = heads[0]
+ ancestry = {revision.revision for revision in script.walk_revisions("base", head)}
+ if EVENT_STREAM_CONTRACT_REVISION not in ancestry:
+ raise RuntimeError(
+ "migration rehearsal is missing the event-stream contract revision "
+ f"{EVENT_STREAM_CONTRACT_REVISION}"
+ )
+ return head
+
+
def _create_empty_database(name: str) -> None:
admin = create_engine(DatabaseSettings(name="labbridge").dsn, isolation_level="AUTOCOMMIT")
with admin.connect() as connection:
@@ -74,6 +97,7 @@ def rehearse_migration(*, repo_root: Path, database_name: str) -> dict[str, obje
marker_count_before = int(
connection.execute(select(func.count()).select_from(campaigns)).scalar_one()
)
+ expected = expected_upgrade_revision(repo_root)
began_upgrade = time.monotonic()
command.upgrade(config, "head")
duration = time.monotonic() - began_upgrade
@@ -102,8 +126,11 @@ def rehearse_migration(*, repo_root: Path, database_name: str) -> dict[str, obje
os.environ.pop("LABBRIDGE_DB_NAME", None)
else:
os.environ["LABBRIDGE_DB_NAME"] = previous_name
- if revision != EXPECTED_HEAD or "2" not in constraint:
- raise RuntimeError("migration rehearsal did not reach the replay-complete head")
+ if revision != expected or "2" not in constraint:
+ raise RuntimeError(
+ "migration rehearsal did not reach the unique Alembic head "
+ f"{expected}; database revision is {revision}"
+ )
if marker_count_before != marker_count_after:
raise RuntimeError("migration rehearsal did not preserve campaign row counts")
if preserved_contract != 1:
@@ -124,4 +151,9 @@ def rehearse_migration(*, repo_root: Path, database_name: str) -> dict[str, obje
}
-__all__ = ["rehearse_migration"]
+__all__ = [
+ "EVENT_STREAM_CONTRACT_REVISION",
+ "PREVIOUS_REVISION",
+ "expected_upgrade_revision",
+ "rehearse_migration",
+]
diff --git a/src/labbridge/reliability/producer_identity.py b/src/labbridge/reliability/producer_identity.py
new file mode 100644
index 0000000..a5028b5
--- /dev/null
+++ b/src/labbridge/reliability/producer_identity.py
@@ -0,0 +1,98 @@
+"""Fail-closed producer identity for release evidence runs."""
+
+from __future__ import annotations
+
+import os
+import subprocess
+from pathlib import Path
+from typing import TypedDict
+
+_INHERITED_GIT_DIRECTORY_VARS = (
+ "GIT_DIR",
+ "GIT_WORK_TREE",
+ "GIT_INDEX_FILE",
+ "GIT_OBJECT_DIRECTORY",
+ "GIT_ALTERNATE_OBJECT_DIRECTORIES",
+ "GIT_COMMON_DIR",
+ "GIT_PREFIX",
+)
+
+
+def _git_subprocess_env() -> dict[str, str]:
+ """Ignore hook-inherited Git directory variables so cwd is the inspected tree."""
+ env = os.environ.copy()
+ for key in _INHERITED_GIT_DIRECTORY_VARS:
+ env.pop(key, None)
+ return env
+
+
+class ProducerIdentity(TypedDict):
+ git_head: str
+ origin_main: str
+ merge_base_with_origin_main: str
+ origin_main_contained: bool
+ working_tree: str
+
+
+def _git_invocation(repo_root: Path) -> list[str]:
+ """Pin linked worktrees so a bare common dir is not inspected as the producer."""
+ git_meta = repo_root / ".git"
+ if git_meta.is_file():
+ for raw in git_meta.read_text(encoding="utf-8").splitlines():
+ line = raw.strip()
+ if line.lower().startswith("gitdir:"):
+ pointed = Path(line.split(":", 1)[1].strip())
+ if not pointed.is_absolute():
+ pointed = (repo_root / pointed).resolve()
+ return ["git", f"--git-dir={pointed}", f"--work-tree={repo_root}"]
+ return ["git"]
+
+
+def _git(repo_root: Path, *args: str) -> str:
+ completed = subprocess.run(
+ [*_git_invocation(repo_root), *args],
+ cwd=repo_root,
+ env=_git_subprocess_env(),
+ capture_output=True,
+ text=True,
+ check=False,
+ timeout=30,
+ )
+ if completed.returncode != 0:
+ detail = (completed.stderr or completed.stdout).strip() or f"exit {completed.returncode}"
+ raise RuntimeError(f"git {' '.join(args)} failed: {detail}")
+ return completed.stdout.strip()
+
+
+def require_clean_committed_producer(
+ repo_root: Path, *, allow_dirty: bool = False
+) -> ProducerIdentity:
+ """Refuse to start unless HEAD exists and the tree contains origin/main.
+
+ A dirty worktree is refused unless `allow_dirty` is set. That escape hatch still records
+ `working_tree=dirty` so a release artifact cannot pretend it came from a committed producer.
+ """
+ head = _git(repo_root, "rev-parse", "--verify", "HEAD")
+ dirty = bool(_git(repo_root, "status", "--porcelain"))
+ if dirty and not allow_dirty:
+ raise RuntimeError(
+ "producer source tree is not clean; commit or discard local changes before "
+ "the evidence run"
+ )
+ origin_main = _git(repo_root, "rev-parse", "origin/main")
+ merge_base = _git(repo_root, "merge-base", "HEAD", "origin/main")
+ if merge_base != origin_main:
+ raise RuntimeError(
+ "producer HEAD does not contain origin/main; synchronize before generating "
+ "release evidence"
+ )
+ return {
+ "git_head": head,
+ "origin_main": origin_main,
+ "merge_base_with_origin_main": merge_base,
+ "origin_main_contained": True,
+ "working_tree": "dirty" if dirty else "clean",
+ }
+
+
+__all__ = ["ProducerIdentity", "require_clean_committed_producer"]
diff --git a/tests/application/test_electrolysis_service.py b/tests/application/test_electrolysis_service.py
index 44bf129..211b877 100644
--- a/tests/application/test_electrolysis_service.py
+++ b/tests/application/test_electrolysis_service.py
@@ -1,55 +1,19 @@
from __future__ import annotations
-from electrolysis_helpers import electrolysis_profile, electrolysis_source
-from labbridge.application.electrolysis_ingestion import (
- ElectrolysisIngestionService,
- ElectrolysisRecordRepository,
+from electrolysis_helpers import (
+ FixedElectrolysisSourceReader,
+ MemoryElectrolysisRecords,
+ electrolysis_profile,
+ electrolysis_source,
)
-from labbridge.domain.electrolysis import (
- ElectrolysisImportProfile,
- electrolysis_import_profile_id,
-)
-from labbridge.domain.electrolysis_observations import ElectrolysisNormalisationResult
-
-
-class MemoryElectrolysisRecords(ElectrolysisRecordRepository):
- def __init__(self) -> None:
- self.profiles: dict[str, ElectrolysisImportProfile] = {}
- self.results: dict[str, ElectrolysisNormalisationResult] = {}
-
- def put_profile(
- self, item: ElectrolysisImportProfile, *, idempotency_key: str | None = None
- ) -> tuple[str, bool]:
- profile_id = electrolysis_import_profile_id(item)
- replayed = profile_id in self.profiles
- self.profiles.setdefault(profile_id, item)
- return profile_id, replayed
-
- def get_profile(self, profile_id: str) -> ElectrolysisImportProfile | None:
- return self.profiles.get(profile_id)
-
- def put_normalisation(
- self, result: ElectrolysisNormalisationResult, *, idempotency_key: str | None = None
- ) -> bool:
- observation_id = result.observation.observation_id
- replayed = observation_id in self.results
- self.results.setdefault(observation_id, result)
- return replayed
-
- def get_normalisation(self, observation_id: str) -> ElectrolysisNormalisationResult | None:
- return self.results.get(observation_id)
-
-
-class FixedSourceReader:
- def retrieve(self, source_artifact_id: str):
- source = electrolysis_source()
- assert source_artifact_id == source.artifact.source_artifact_id
- return source
+from labbridge.application.electrolysis_ingestion import ElectrolysisIngestionService
def test_service_persists_profile_and_normalisation_idempotently() -> None:
records = MemoryElectrolysisRecords()
- service = ElectrolysisIngestionService(FixedSourceReader(), records, producing_version="0.1.0")
+ service = ElectrolysisIngestionService(
+ FixedElectrolysisSourceReader(), records, producing_version="0.1.0"
+ )
stored_profile = service.create_profile(electrolysis_profile())
first = service.normalise(
diff --git a/tests/electrolysis_helpers.py b/tests/electrolysis_helpers.py
index 5057234..8d4e5df 100644
--- a/tests/electrolysis_helpers.py
+++ b/tests/electrolysis_helpers.py
@@ -4,6 +4,10 @@
from datetime import UTC, datetime
from decimal import Decimal
+from labbridge.application.electrolysis_ingestion import (
+ ElectrolysisIdempotencyConflictError,
+ ElectrolysisRecordRepository,
+)
from labbridge.application.source_intake import RetrievedSource
from labbridge.domain.electrolysis import (
AuxiliaryAnalyticalResult,
@@ -12,7 +16,9 @@
ElectrolysisMetadata,
MetadataValue,
auxiliary_result_id,
+ electrolysis_import_profile_id,
)
+from labbridge.domain.electrolysis_observations import ElectrolysisNormalisationResult
from labbridge.domain.source_artifacts import SourceArtifact, source_artifact_id
ELECTROLYSIS_PAYLOAD = (
@@ -135,3 +141,48 @@ def electrolysis_profile_with_auxiliary(
).model_dump(mode="python")
profile["auxiliary_results"] = (result,)
return ElectrolysisImportProfile.model_validate(profile)
+
+
+class MemoryElectrolysisRecords(ElectrolysisRecordRepository):
+ def __init__(self) -> None:
+ self.profiles: dict[str, ElectrolysisImportProfile] = {}
+ self.results: dict[str, ElectrolysisNormalisationResult] = {}
+ self.idempotency: dict[tuple[str, str], str] = {}
+
+ def _reserve(self, scope: str, key: str | None, identity: str) -> bool:
+ if key is None:
+ return False
+ existing = self.idempotency.get((scope, key))
+ if existing is not None and existing != identity:
+ raise ElectrolysisIdempotencyConflictError(key)
+ self.idempotency[(scope, key)] = identity
+ return existing is not None
+
+ def put_profile(
+ self, item: ElectrolysisImportProfile, *, idempotency_key: str | None = None
+ ) -> tuple[str, bool]:
+ identity = electrolysis_import_profile_id(item)
+ replayed = self._reserve("profile", idempotency_key, identity) or identity in self.profiles
+ self.profiles.setdefault(identity, item)
+ return identity, replayed
+
+ def get_profile(self, profile_id: str) -> ElectrolysisImportProfile | None:
+ return self.profiles.get(profile_id)
+
+ def put_normalisation(
+ self, result: ElectrolysisNormalisationResult, *, idempotency_key: str | None = None
+ ) -> bool:
+ identity = result.observation.observation_id
+ replayed = self._reserve("normalise", idempotency_key, identity) or identity in self.results
+ self.results.setdefault(identity, result)
+ return replayed
+
+ def get_normalisation(self, observation_id: str) -> ElectrolysisNormalisationResult | None:
+ return self.results.get(observation_id)
+
+
+class FixedElectrolysisSourceReader:
+ def retrieve(self, source_artifact_id: str) -> RetrievedSource:
+ retained = electrolysis_source()
+ assert source_artifact_id == retained.artifact.source_artifact_id
+ return retained
diff --git a/tests/evidence/test_cv_ingestion_artifact.py b/tests/evidence/test_cv_ingestion_artifact.py
index 3fbcfb2..6959084 100644
--- a/tests/evidence/test_cv_ingestion_artifact.py
+++ b/tests/evidence/test_cv_ingestion_artifact.py
@@ -5,6 +5,8 @@
from datetime import UTC, datetime
from pathlib import Path
+from scripts.reproduce_cv_ingestion import reproduce
+
from labbridge.application.source_intake import RetrievedSource
from labbridge.domain.cv import CVImportProfile
from labbridge.domain.source_artifacts import SourceArtifact, source_artifact_id
@@ -12,6 +14,7 @@
from labbridge.evidence.manifest import verify_manifest
ROOT = Path(__file__).resolve().parents[2]
+COMMITTED = ROOT / "artifacts/cv-ingestion"
SOURCE = ROOT / "fixtures/source/synthetic-replay-cv-opaque.csv"
PROFILE = ROOT / "fixtures/import-profiles/synthetic-replay-cv-v1.json"
@@ -69,3 +72,39 @@ def test_phase_2_artifact_rebuild_is_byte_identical(tmp_path: Path) -> None:
assert {item.name: item.read_bytes() for item in first.iterdir()} == {
item.name: item.read_bytes() for item in second.iterdir()
}
+
+
+def test_committed_artifact_bytes_verify_against_their_committed_manifest() -> None:
+ """The bytes in the repository, not a fresh rebuild, must satisfy the committed manifest.
+
+ Both earlier tests build into `tmp_path`, so a checkout that rewrote the committed members —
+ line-ending conversion being the obvious way — left the whole offline suite green while
+ `labbridge validate-artifacts --bundle artifacts/cv-ingestion` failed.
+ """
+ manifest = verify_manifest(COMMITTED)
+
+ assert manifest["artifact_kind"] == "generic_cv_ingestion"
+ assert manifest["data_origin"] == "synthetic"
+ for entry in manifest["files"]:
+ assert isinstance(entry, dict)
+ member = COMMITTED / str(entry["name"])
+ payload = member.read_bytes()
+ assert hashlib.sha256(payload).hexdigest() == entry["sha256"], member.name
+ assert len(payload) == entry["byte_size"], member.name
+
+
+def test_committed_source_member_still_matches_the_phase_1_fixture_bytes() -> None:
+ """Content identity has to survive checkout, or the source link is broken where it is read."""
+ committed_source = (COMMITTED / SOURCE.name).read_bytes()
+ manifest = json.loads((COMMITTED / "manifest.json").read_text(encoding="utf-8"))
+
+ assert committed_source == SOURCE.read_bytes()
+ assert hashlib.sha256(committed_source).hexdigest() == manifest["source_sha256"]
+
+
+def test_committed_artifact_is_byte_identical_to_an_offline_rebuild(tmp_path: Path) -> None:
+ reproduce(tmp_path / "rebuilt")
+
+ assert {item.name: item.read_bytes() for item in (tmp_path / "rebuilt").iterdir()} == {
+ item.name: item.read_bytes() for item in COMMITTED.iterdir()
+ }
diff --git a/tests/evidence/test_electrolysis_package.py b/tests/evidence/test_electrolysis_package.py
index 549e597..12b920e 100644
--- a/tests/evidence/test_electrolysis_package.py
+++ b/tests/evidence/test_electrolysis_package.py
@@ -1,6 +1,7 @@
from __future__ import annotations
import io
+import json
import zipfile
from datetime import UTC, datetime
@@ -19,14 +20,19 @@
experiment_from_electrolysis_normalisation,
experiment_from_normalisation,
)
+from labbridge.domain.canonical import content_id
from labbridge.domain.experiments import AssertionValue, make_assertion, validate_experiment
from labbridge.evidence.experiment_package import (
+ MANIFEST_MEMBER,
AuxiliaryPackageSource,
ExperimentPackageVerificationError,
PackageInputs,
+ _member_entry,
+ _zip,
build_experiment_package,
verify_experiment_package,
)
+from labbridge.evidence.manifest import canonical_json, digest
from labbridge.evidence.passport import build_passport
RELEASED_AT = datetime(2026, 8, 13, 12, 0, tzinfo=UTC)
@@ -372,3 +378,82 @@ def test_independent_verifier_accepts_active_unavailable_unsupported_claim() ->
)
assert verify_experiment_package(package.archive_bytes).verified is True
+
+
+def _reforge(archive_bytes: bytes, *, replace: dict[str, bytes]) -> bytes:
+ """Rebuild an archive around changed members with every hash and identity recomputed.
+
+ This is the adversary the member checks cannot catch: entry digests, `members_digest`, and
+ `package_id` are all derived exactly as the builder derives them, so the archive is internally
+ consistent. Only a semantic check can reject it.
+ """
+ with zipfile.ZipFile(io.BytesIO(archive_bytes)) as archive:
+ members = {name: archive.read(name) for name in archive.namelist()}
+ manifest = json.loads(members[MANIFEST_MEMBER])
+ members.update(replace)
+ del members[MANIFEST_MEMBER]
+ entries = [_member_entry(name, data) for name, data in sorted(members.items())]
+ core = {
+ key: value
+ for key, value in manifest.items()
+ if key not in {"package_id", "members", "members_digest"}
+ }
+ core["members"] = entries
+ core["members_digest"] = digest(canonical_json(entries))
+ ordered = {key: core[key] for key in manifest if key in core}
+ ordered["package_id"] = content_id("experiment-package", ordered)
+ members[MANIFEST_MEMBER] = canonical_json(ordered)
+ return _zip(members)
+
+
+def test_a_rehashed_archive_cannot_swap_technique_to_skip_electrolysis_semantics() -> None:
+ """A self-consistent forgery must not reach the CV branch and skip electrolysis checks.
+
+ Branching on the import profile while every other check read the Passport meant a Passport
+ declaring `galvanostatic_electrolysis` was inspected under CV rules, so
+ `_verify_electrolysis_passport_semantics` never ran. The archive was still refused, but by a
+ downstream `package_lineage_open` rather than by the contradiction that caused it. One
+ authoritative technique makes the refusal name the real defect.
+ """
+ inputs = _electrolysis_inputs()
+ package = build_experiment_package(
+ inputs, producing_versions={"labbridge": "0.1.0", "experiment_package": "3"}
+ )
+ assert verify_experiment_package(package.archive_bytes).verified is True
+
+ with zipfile.ZipFile(io.BytesIO(package.archive_bytes)) as archive:
+ profile = json.loads(archive.read("phase2/import-profile.json"))
+ profile["technique"] = "cyclic_voltammetry"
+ forged = _reforge(
+ package.archive_bytes,
+ replace={"phase2/import-profile.json": canonical_json(profile)},
+ )
+
+ with pytest.raises(ExperimentPackageVerificationError) as raised:
+ verify_experiment_package(forged)
+
+ # Not package_identity_mismatch or a member digest failure: the forgery is self-consistent and
+ # defeats every hash check, so this proves the semantic gate is what stops it.
+ assert raised.value.code == "package_technique_mismatch"
+
+
+def test_a_rehashed_cv_archive_cannot_claim_the_electrolysis_profile() -> None:
+ """The mismatch is rejected in both directions, not only for the electrolysis Passport."""
+ inputs = _cv_inputs()
+ package = build_experiment_package(
+ inputs, producing_versions={"labbridge": "0.1.0", "experiment_package": "1"}
+ )
+ assert verify_experiment_package(package.archive_bytes).verified is True
+
+ with zipfile.ZipFile(io.BytesIO(package.archive_bytes)) as archive:
+ profile = json.loads(archive.read("phase2/import-profile.json"))
+ profile["technique"] = "galvanostatic_electrolysis"
+ forged = _reforge(
+ package.archive_bytes,
+ replace={"phase2/import-profile.json": canonical_json(profile)},
+ )
+
+ with pytest.raises(ExperimentPackageVerificationError) as raised:
+ verify_experiment_package(forged)
+
+ assert raised.value.code == "package_technique_mismatch"
diff --git a/tests/evidence/test_manifest.py b/tests/evidence/test_manifest.py
index 62fc26e..2353f1b 100644
--- a/tests/evidence/test_manifest.py
+++ b/tests/evidence/test_manifest.py
@@ -35,6 +35,28 @@ def test_an_untouched_closed_manifest_verifies(released: Path) -> None:
assert verify_manifest(released)["artifact_kind"] == "source_capture"
+def test_manifest_lists_mixed_case_members_in_a_platform_stable_order(tmp_path: Path) -> None:
+ """Path comparison is case-insensitive on Windows and case-sensitive on POSIX.
+
+ Sorting the Path objects themselves therefore emits a different `files` array — and a different
+ `files_digest` — for the same bytes. Order by the filename as text instead.
+ """
+ (tmp_path / "LIMITATIONS.md").write_text("limitations\n", encoding="utf-8", newline="\n")
+ (tmp_path / "cv.csv").write_bytes(b"a,b\n")
+ manifest = build_manifest(
+ tmp_path,
+ metadata={
+ "artifact_kind": "source_capture",
+ "schema_version": "1",
+ "producing_versions": {"labbridge": "0.1.0"},
+ "data_origin": "synthetic",
+ "execution_mode": "replay",
+ },
+ )
+
+ assert [entry["name"] for entry in manifest["files"]] == ["cv.csv", "LIMITATIONS.md"]
+
+
def test_one_changed_byte_fails_verification(released: Path) -> None:
member = released / "payload.bin"
member.write_bytes(member.read_bytes()[:-1] + b"X")
diff --git a/tests/evidence/test_reproduce_commands.py b/tests/evidence/test_reproduce_commands.py
new file mode 100644
index 0000000..9fdda61
--- /dev/null
+++ b/tests/evidence/test_reproduce_commands.py
@@ -0,0 +1,74 @@
+"""Every committed `REPRODUCE.txt` command must be accepted by the CLI it names.
+
+`labbridge validate-artifacts build/` was published in two artifacts for several releases.
+`validate-artifacts` takes no positional argument, so the documented reproduction exited 2. Parsing
+each line against the real Typer application makes that class of drift a test failure.
+"""
+
+from __future__ import annotations
+
+import shlex
+from pathlib import Path
+
+import click
+import pytest
+import typer.main
+
+from labbridge import cli
+
+ROOT = Path(__file__).resolve().parents[2]
+REPRODUCE_FILES = sorted(ROOT.glob("artifacts/*/REPRODUCE.txt"))
+
+
+def _parse(argv: list[str]) -> None:
+ """Resolve and bind a command line without running it.
+
+ Appending `--help` would not work: Click prints help and exits 0 before reporting an extra
+ argument, so a broken command line would look valid. `make_context` binds every parameter and
+ raises `UsageError` instead.
+ """
+ command = typer.main.get_command(cli.app)
+ context = click.Context(command, info_name="labbridge")
+ args = list(argv)
+ # `TyperGroup` does not subclass `click.Group`, so descend on the command mapping instead.
+ while args and not args[0].startswith("-") and hasattr(command, "commands"):
+ name = args[0]
+ subcommand = command.commands.get(name)
+ if subcommand is None:
+ raise click.UsageError(f"no such command: {name}")
+ command = subcommand
+ args = args[1:]
+ context = click.Context(command, parent=context, info_name=name)
+ command.make_context(context.info_name, args, parent=context)
+
+
+def _commands() -> list[tuple[str, str]]:
+ found: list[tuple[str, str]] = []
+ for path in REPRODUCE_FILES:
+ for line in path.read_text(encoding="utf-8").splitlines():
+ stripped = line.strip()
+ if stripped and not stripped.startswith("#"):
+ found.append((path.parent.name, stripped))
+ return found
+
+
+def test_every_artifact_publishes_a_reproduction_command() -> None:
+ assert REPRODUCE_FILES, "no committed artifact publishes a reproduction command"
+ assert _commands()
+
+
+@pytest.mark.parametrize(("artifact", "command"), _commands(), ids=lambda value: str(value)[:60])
+def test_documented_command_is_accepted_by_its_cli(artifact: str, command: str) -> None:
+ argv = shlex.split(command)
+ if argv[0] != "labbridge":
+ # `python scripts/reproduce_*.py` lines: assert the script exists rather than running it.
+ assert argv[0] == "python", f"{artifact}: unexpected program {argv[0]}"
+ assert (ROOT / argv[1]).is_file(), f"{artifact}: {argv[1]} does not exist"
+ return
+
+ try:
+ _parse(argv[1:])
+ except click.UsageError as error:
+ pytest.fail(
+ f"{artifact}: `{command}` is not accepted by the CLI — {error.format_message()}"
+ )
diff --git a/tests/evidence/test_source_capture.py b/tests/evidence/test_source_capture.py
index f3fa17a..2235f9c 100644
--- a/tests/evidence/test_source_capture.py
+++ b/tests/evidence/test_source_capture.py
@@ -62,3 +62,40 @@ def test_rebuilding_source_capture_produces_identical_members(tmp_path: Path) ->
first_members = {path.name: path.read_bytes() for path in first.iterdir()}
second_members = {path.name: path.read_bytes() for path in second.iterdir()}
assert first_members == second_members
+
+
+ROOT = Path(__file__).resolve().parents[2]
+COMMITTED = ROOT / "artifacts/source-capture"
+FIXTURE = ROOT / "fixtures/source/synthetic-replay-cv-opaque.csv"
+
+
+def test_committed_artifact_bytes_verify_against_their_committed_manifest() -> None:
+ """The bytes in the repository must satisfy the committed manifest.
+
+ The tests above build into `tmp_path`, so nothing here checked what a contributor actually
+ checks out. Reproducing this artifact needs PostgreSQL and MinIO, so the offline guarantee is
+ that the committed bytes are internally consistent and still carry the Phase 1 identity.
+ """
+ manifest = verify_manifest(COMMITTED)
+
+ assert manifest["artifact_kind"] == "source_capture"
+ assert manifest["data_origin"] == "synthetic"
+ for entry in manifest["files"]:
+ assert isinstance(entry, dict)
+ member = COMMITTED / str(entry["name"])
+ payload = member.read_bytes()
+ assert hashlib.sha256(payload).hexdigest() == entry["sha256"], member.name
+ assert len(payload) == entry["byte_size"], member.name
+
+
+def test_committed_source_member_still_matches_the_fixture_and_its_recorded_identity() -> None:
+ committed_source = (COMMITTED / FIXTURE.name).read_bytes()
+ record = json.loads((COMMITTED / "source-artifact.json").read_text(encoding="utf-8"))
+ digest = hashlib.sha256(committed_source).hexdigest()
+
+ assert committed_source == FIXTURE.read_bytes()
+ assert digest == record["sha256"]
+ assert len(committed_source) == record["byte_size"]
+ assert record["source_artifact_id"] == source_artifact_id(
+ sha256=digest, byte_size=len(committed_source), media_type=record["media_type"]
+ )
diff --git a/tests/integration/test_electrolysis_http_path.py b/tests/integration/test_electrolysis_http_path.py
new file mode 100644
index 0000000..2400abe
--- /dev/null
+++ b/tests/integration/test_electrolysis_http_path.py
@@ -0,0 +1,110 @@
+"""Operator HTTP adapters must complete the electrolysis file-to-package path."""
+
+from __future__ import annotations
+
+import uuid
+
+import pytest
+from fastapi.testclient import TestClient
+from sqlalchemy import Engine
+
+from electrolysis_helpers import electrolysis_profile
+from labbridge.api import create_app
+from labbridge.evidence.experiment_package import verify_experiment_package
+
+pytestmark = pytest.mark.integration
+
+CREATED = 201
+OK = 200
+
+
+def test_http_adapters_reach_an_independently_verified_electrolysis_package(
+ migrated: Engine,
+) -> None:
+ marker = uuid.uuid4().hex
+ payload = (
+ "elapsed,applied_current,working_potential\n"
+ f"0,10.0,-0.{int(marker[:8], 16):010d}\n"
+ "60,10.0,-0.435\n120,10.0,-0.447\n"
+ ).encode()
+ client = TestClient(create_app(migrated))
+
+ source = client.post(
+ "/source-artifacts",
+ params={
+ "filename": f"synthetic-electrolysis-{marker}.csv",
+ "data_origin": "synthetic",
+ "execution_mode": "replay",
+ },
+ headers={"Idempotency-Key": f"electrolysis-source:{marker}", "Content-Type": "text/csv"},
+ content=payload,
+ )
+ assert source.status_code == CREATED
+ source_id = source.json()["source_artifact_id"]
+
+ profile = client.post(
+ "/electrolysis/import-profiles",
+ json=electrolysis_profile().model_dump(mode="json"),
+ headers={"Idempotency-Key": f"electrolysis-profile:{marker}"},
+ )
+ assert profile.status_code == CREATED, profile.text
+ profile_id = profile.json()["profile_id"]
+
+ normalised = client.post(
+ "/electrolysis/normalisations",
+ json={"source_artifact_id": source_id, "profile_id": profile_id},
+ headers={"Idempotency-Key": f"electrolysis-normalise:{marker}"},
+ )
+ assert normalised.status_code == CREATED, normalised.text
+ observation = normalised.json()["result"]["observation"]
+ assert observation["technique"] == "galvanostatic_electrolysis"
+ assert observation["metadata"]["chemical_analysis"]["state"] == "unavailable"
+ assert observation["metadata"]["cell_geometry"]["state"] == "unknown"
+
+ experiment = client.post(
+ "/experiments",
+ json={
+ "observation_id": observation["observation_id"],
+ "expected_experiment_version": 0,
+ },
+ headers={"Idempotency-Key": f"electrolysis-experiment:{marker}"},
+ )
+ assert experiment.status_code == CREATED, experiment.text
+ body = experiment.json()["experiment"]
+ assert body["technique"] == "galvanostatic_electrolysis"
+ assertions = {item["field_name"]: item for item in body["assertions"]}
+ assert assertions["scan_rate"]["value"]["state"] == "not_applicable"
+ assert assertions["chemical_analysis"]["value"]["state"] == "unavailable"
+ assert "faradaic_efficiency" not in assertions
+ assert "conversion" not in assertions
+ assert "selectivity" not in assertions
+ experiment_id = body["experiment_id"]
+
+ validation = client.post(
+ f"/experiments/{experiment_id}/validations",
+ json={"expected_experiment_version": 1},
+ headers={"Idempotency-Key": f"electrolysis-validation:{marker}"},
+ )
+ assert validation.status_code == CREATED, validation.text
+
+ passport = client.post(
+ f"/experiments/{experiment_id}/passports",
+ json={"expected_experiment_version": 1},
+ headers={"Idempotency-Key": f"electrolysis-passport:{marker}"},
+ )
+ assert passport.status_code == CREATED, passport.text
+ passport_id = passport.json()["passport"]["passport_id"]
+
+ package = client.post(
+ f"/experiments/{experiment_id}/packages",
+ json={"passport_id": passport_id, "expected_experiment_version": 1},
+ headers={"Idempotency-Key": f"electrolysis-package:{marker}"},
+ )
+ assert package.status_code == CREATED, package.text
+ package_id = package.json()["package"]["package_id"]
+ assert package.json()["package"]["schema_version"] == "3"
+
+ download = client.get(f"/experiment-packages/{package_id}/download")
+ assert download.status_code == OK
+ verification = verify_experiment_package(download.content)
+ assert verification.lineage_closed is True
diff --git a/tests/reliability/test_migration_rehearsal.py b/tests/reliability/test_migration_rehearsal.py
new file mode 100644
index 0000000..cdc32d4
--- /dev/null
+++ b/tests/reliability/test_migration_rehearsal.py
@@ -0,0 +1,51 @@
+"""The rehearsal must reach the unique current Alembic head, not a stale parent."""
+
+from __future__ import annotations
+
+from pathlib import Path
+
+import pytest
+from alembic.config import Config
+from alembic.script import ScriptDirectory
+
+from labbridge.reliability.migration_rehearsal import (
+ EVENT_STREAM_CONTRACT_REVISION,
+ PREVIOUS_REVISION,
+ expected_upgrade_revision,
+)
+
+ROOT = Path(__file__).resolve().parents[2]
+
+
+def _script() -> ScriptDirectory:
+ config = Config(str(ROOT / "alembic.ini"))
+ config.set_main_option("script_location", str(ROOT / "migrations"))
+ return ScriptDirectory.from_config(config)
+
+
+def test_rehearsal_targets_the_unique_current_alembic_head() -> None:
+ script = _script()
+ heads = script.get_heads()
+ ancestry = {revision.revision for revision in script.walk_revisions("base", heads[0])}
+
+ assert heads == [expected_upgrade_revision(ROOT)]
+ assert EVENT_STREAM_CONTRACT_REVISION in ancestry
+ assert PREVIOUS_REVISION in ancestry
+ assert expected_upgrade_revision(ROOT) != EVENT_STREAM_CONTRACT_REVISION
+
+
+def test_split_alembic_heads_fail_closed(monkeypatch: pytest.MonkeyPatch) -> None:
+ monkeypatch.setattr(ScriptDirectory, "get_heads", lambda self: ["aaaa1111", "bbbb2222"])
+
+ with pytest.raises(RuntimeError, match="unique Alembic head"):
+ expected_upgrade_revision(ROOT)
+
+
+def test_missing_event_stream_contract_fails_closed(monkeypatch: pytest.MonkeyPatch) -> None:
+ monkeypatch.setattr(
+ "labbridge.reliability.migration_rehearsal.EVENT_STREAM_CONTRACT_REVISION",
+ "missing00000000",
+ )
+
+ with pytest.raises(RuntimeError, match="event-stream contract"):
+ expected_upgrade_revision(ROOT)
diff --git a/tests/reliability/test_producer_identity.py b/tests/reliability/test_producer_identity.py
new file mode 100644
index 0000000..2f33787
--- /dev/null
+++ b/tests/reliability/test_producer_identity.py
@@ -0,0 +1,131 @@
+"""Fault-campaign evidence must start from a clean committed producer tree."""
+
+from __future__ import annotations
+
+import os
+import subprocess
+from pathlib import Path
+
+import pytest
+
+from labbridge.reliability.producer_identity import require_clean_committed_producer
+
+
+def _fixture_git_env() -> dict[str, str]:
+ """Keep fixture repos independent of the hook or worktree that launched pytest."""
+ env = {key: value for key, value in os.environ.items() if not key.startswith("GIT_")}
+ env["GIT_CONFIG_NOSYSTEM"] = "1"
+ env["GIT_CONFIG_GLOBAL"] = os.devnull
+ env["GIT_AUTHOR_NAME"] = "Producer"
+ env["GIT_AUTHOR_EMAIL"] = "producer@example.test"
+ env["GIT_COMMITTER_NAME"] = "Producer"
+ env["GIT_COMMITTER_EMAIL"] = "producer@example.test"
+ return env
+
+
+def _run(repo: Path, *args: str) -> str:
+ completed = subprocess.run(
+ ["git", "-c", "core.hooksPath=", *args],
+ cwd=repo,
+ env=_fixture_git_env(),
+ check=True,
+ capture_output=True,
+ text=True,
+ )
+ return completed.stdout.strip()
+
+
+def _repo(tmp_path: Path) -> Path:
+ repo = tmp_path / "producer"
+ repo.mkdir()
+ _run(repo, "init", "-b", "main")
+ _run(repo, "config", "user.email", "producer@example.test")
+ _run(repo, "config", "user.name", "Producer")
+ (repo / "README").write_text("producer\n", encoding="utf-8")
+ _run(repo, "add", "README")
+ _run(repo, "commit", "-m", "init")
+ head = _run(repo, "rev-parse", "HEAD")
+ _run(repo, "update-ref", "refs/remotes/origin/main", head)
+ return repo
+
+
+def test_clean_tree_records_head_and_origin_main(tmp_path: Path) -> None:
+ repo = _repo(tmp_path)
+ head = _run(repo, "rev-parse", "HEAD")
+
+ identity = require_clean_committed_producer(repo)
+
+ assert identity["git_head"] == head
+ assert identity["origin_main"] == head
+ assert identity["merge_base_with_origin_main"] == head
+ assert identity["origin_main_contained"] is True
+ assert identity["working_tree"] == "clean"
+
+
+def test_dirty_worktree_fails_closed(tmp_path: Path) -> None:
+ repo = _repo(tmp_path)
+ (repo / "scratch.txt").write_text("uncommitted\n", encoding="utf-8")
+
+ with pytest.raises(RuntimeError, match="clean"):
+ require_clean_committed_producer(repo)
+
+
+def test_allow_dirty_records_the_dirty_tree_instead_of_refusing(tmp_path: Path) -> None:
+ repo = _repo(tmp_path)
+ (repo / "scratch.txt").write_text("uncommitted\n", encoding="utf-8")
+ head = _run(repo, "rev-parse", "HEAD")
+
+ identity = require_clean_committed_producer(repo, allow_dirty=True)
+
+ assert identity["git_head"] == head
+ assert identity["working_tree"] == "dirty"
+
+
+def test_inherited_git_dir_does_not_redirect_the_inspected_tree(
+ tmp_path: Path, monkeypatch: pytest.MonkeyPatch
+) -> None:
+ repo = _repo(tmp_path)
+ head = _run(repo, "rev-parse", "HEAD")
+ monkeypatch.setenv("GIT_DIR", str(tmp_path / "missing.git"))
+ monkeypatch.setenv("GIT_INDEX_FILE", str(tmp_path / "missing.index"))
+ monkeypatch.setenv("GIT_WORK_TREE", str(tmp_path / "missing-worktree"))
+
+ identity = require_clean_committed_producer(repo)
+
+ assert identity["git_head"] == head
+ assert identity["working_tree"] == "clean"
+
+
+def test_linked_worktree_of_a_bare_common_dir_is_inspectable(tmp_path: Path) -> None:
+ seed = _repo(tmp_path)
+ bare = tmp_path / "bare.git"
+ _run(seed, "clone", "--bare", str(seed), str(bare))
+ work = tmp_path / "linked"
+ _run(bare, "worktree", "add", str(work), "main")
+ head = _run(work, "rev-parse", "HEAD")
+ _run(work, "update-ref", "refs/remotes/origin/main", head)
+
+ identity = require_clean_committed_producer(work)
+
+ assert (work / ".git").is_file()
+ assert identity["git_head"] == head
+ assert identity["origin_main"] == head
+ assert identity["working_tree"] == "clean"
+
+
+def test_stale_base_that_does_not_contain_origin_main_fails_closed(tmp_path: Path) -> None:
+ repo = _repo(tmp_path)
+ _run(repo, "checkout", "-b", "task")
+ (repo / "README").write_text("task\n", encoding="utf-8")
+ _run(repo, "add", "README")
+ _run(repo, "commit", "-m", "task")
+ _run(repo, "checkout", "main")
+ (repo / "README").write_text("advanced main\n", encoding="utf-8")
+ _run(repo, "add", "README")
+ _run(repo, "commit", "-m", "advance main")
+ advanced = _run(repo, "rev-parse", "HEAD")
+ _run(repo, "update-ref", "refs/remotes/origin/main", advanced)
+ _run(repo, "checkout", "task")
+
+ with pytest.raises(RuntimeError, match="origin/main"):
+ require_clean_committed_producer(repo)
diff --git a/tests/slow/test_phase7_fault_campaign.py b/tests/slow/test_phase7_fault_campaign.py
index b78283b..c49586e 100644
--- a/tests/slow/test_phase7_fault_campaign.py
+++ b/tests/slow/test_phase7_fault_campaign.py
@@ -34,6 +34,7 @@ def test_fault_campaign_crosses_every_process_boundary_and_restores(tmp_path: Pa
bucket,
"--output",
str(output),
+ "--allow-dirty",
],
cwd=REPO_ROOT,
env={**os.environ, "PYTHONPATH": str(REPO_ROOT / "src")},
diff --git a/tests/test_cli_evidence.py b/tests/test_cli_evidence.py
index 2b1e34c..227befa 100644
--- a/tests/test_cli_evidence.py
+++ b/tests/test_cli_evidence.py
@@ -125,6 +125,77 @@ def test_validate_artifacts_verifies_a_closed_result_manifest(tmp_path: Path) ->
assert "status: complete" in result.output
+def _write_closed_artifact(destination: Path, *, kind: str) -> None:
+ destination.mkdir(parents=True)
+ (destination / "result.json").write_text("{}", encoding="utf-8")
+ build_manifest(
+ destination,
+ metadata={
+ "artifact_kind": kind,
+ "schema_version": "1",
+ "producing_versions": {"labbridge": "test"},
+ },
+ )
+
+
+def test_bare_gate_verifies_the_committed_artifact_root(
+ tmp_path: Path, monkeypatch: pytest.MonkeyPatch
+) -> None:
+ monkeypatch.chdir(tmp_path)
+ _write_closed_artifact(Path("artifacts/released-evidence"), kind="released_evidence")
+
+ result = runner.invoke(cli.app, ["validate-artifacts"])
+
+ assert result.exit_code == 0, result.output
+ assert "released_evidence" in result.output
+ assert "1 bundle(s) verified" in result.output
+
+
+def test_bare_gate_fails_on_a_tampered_committed_artifact(
+ tmp_path: Path, monkeypatch: pytest.MonkeyPatch
+) -> None:
+ monkeypatch.chdir(tmp_path)
+ artifact = Path("artifacts/released-evidence")
+ _write_closed_artifact(artifact, kind="released_evidence")
+ (artifact / "result.json").write_text('{"edited": true}', encoding="utf-8")
+
+ result = runner.invoke(cli.app, ["validate-artifacts"])
+
+ assert result.exit_code == 1, result.output
+ assert "artifact_verification_failed" in result.output
+
+
+def test_bare_gate_fails_when_there_is_nothing_to_verify(
+ tmp_path: Path, monkeypatch: pytest.MonkeyPatch
+) -> None:
+ """An empty git-ignored bundle root must not be reported as a passing artifact gate.
+
+ `AI_CONTRACT.md` §10 names the bare command as the artifact gate, and §10 also forbids
+ reporting a gate that did not run as passing. Exiting zero here made the gate unable to fail.
+ """
+ monkeypatch.chdir(tmp_path)
+ Path("data/bundles").mkdir(parents=True)
+
+ result = runner.invoke(cli.app, ["validate-artifacts"])
+
+ assert result.exit_code == 1, result.output
+ assert "no_evidence_found" in result.output
+
+
+def test_explicit_bundle_root_still_narrows_the_search(
+ tmp_path: Path, monkeypatch: pytest.MonkeyPatch
+) -> None:
+ monkeypatch.chdir(tmp_path)
+ _write_closed_artifact(Path("artifacts/released-evidence"), kind="released_evidence")
+ _write_closed_artifact(Path("elsewhere/local-evidence"), kind="local_evidence")
+
+ result = runner.invoke(cli.app, ["validate-artifacts", "--bundle-root", "elsewhere"])
+
+ assert result.exit_code == 0, result.output
+ assert "local_evidence" in result.output
+ assert "released_evidence" not in result.output
+
+
def test_structured_failure_details_escape_rich_markup(
tmp_path: Path, monkeypatch: pytest.MonkeyPatch
) -> None:
diff --git a/tests/test_cli_fetch_her.py b/tests/test_cli_fetch_her.py
index 434b083..2dec22a 100644
--- a/tests/test_cli_fetch_her.py
+++ b/tests/test_cli_fetch_her.py
@@ -8,6 +8,7 @@
from pathlib import Path
import pytest
+import typer.main
from typer.testing import CliRunner
from helpers import SYNTHETIC_DOI, FakeTransport, build_file_entry, build_payload
@@ -33,10 +34,14 @@ def fake_transport(monkeypatch: pytest.MonkeyPatch) -> FakeTransport:
def test_fetch_her_is_registered_and_documents_its_options() -> None:
result = runner.invoke(cli.app, ["fetch-her", "--help"])
-
assert result.exit_code == 0
+
+ # Rich help truncates option names when COLUMNS is 80, which is the GitHub Actions default.
+ # The registration itself is what the command must keep, so inspect the Click parameters.
+ fetch = typer.main.get_command(cli.app).commands["fetch-her"]
+ opts = {flag for param in fetch.params for flag in param.opts}
for option in ("--dry-run", "--file", "--max-bytes", "--allow-large", "--landing-root"):
- assert option in result.output
+ assert option in opts, option
def test_dry_run_exits_zero_and_writes_only_the_inventory(
diff --git a/tests/test_electrolysis_adapter_parity.py b/tests/test_electrolysis_adapter_parity.py
new file mode 100644
index 0000000..bfcd4e4
--- /dev/null
+++ b/tests/test_electrolysis_adapter_parity.py
@@ -0,0 +1,137 @@
+from __future__ import annotations
+
+import json
+from pathlib import Path
+
+from fastapi.testclient import TestClient
+from typer.testing import CliRunner
+
+from electrolysis_helpers import (
+ FixedElectrolysisSourceReader,
+ MemoryElectrolysisRecords,
+ electrolysis_profile,
+ electrolysis_source,
+)
+from labbridge import cli
+from labbridge.api.app import create_app
+from labbridge.application.electrolysis_ingestion import ElectrolysisIngestionService
+
+runner = CliRunner()
+OK = 200
+CREATED = 201
+BAD_REQUEST = 400
+CONFLICT = 409
+NOT_FOUND = 404
+
+
+def _service() -> ElectrolysisIngestionService:
+ return ElectrolysisIngestionService(
+ FixedElectrolysisSourceReader(),
+ MemoryElectrolysisRecords(),
+ producing_version="0.1.0",
+ )
+
+
+def test_api_and_cli_return_the_same_electrolysis_profile_and_observation(
+ tmp_path: Path, monkeypatch
+) -> None: # type: ignore[no-untyped-def]
+ service = _service()
+ client = TestClient(create_app(electrolysis_service=service))
+ profile_path = tmp_path / "profile.json"
+ profile_path.write_text(electrolysis_profile().model_dump_json(indent=2), encoding="utf-8")
+
+ api_profile = client.post(
+ "/electrolysis/import-profiles",
+ json=electrolysis_profile().model_dump(mode="json"),
+ headers={"Idempotency-Key": "electrolysis-profile-1"},
+ )
+ assert api_profile.status_code == CREATED
+ profile_id = api_profile.json()["profile_id"]
+ api_normalised = client.post(
+ "/electrolysis/normalisations",
+ json={
+ "source_artifact_id": electrolysis_source().artifact.source_artifact_id,
+ "profile_id": profile_id,
+ },
+ headers={"Idempotency-Key": "electrolysis-normalise-1"},
+ )
+ assert api_normalised.status_code == CREATED
+ observation = api_normalised.json()["result"]["observation"]
+ observation_id = observation["observation_id"]
+ api_read = client.get(f"/electrolysis/normalised-observations/{observation_id}")
+ assert api_read.status_code == OK
+
+ monkeypatch.setattr(cli, "_build_electrolysis_service", lambda: service)
+ cli_profile = runner.invoke(
+ cli.app, ["electrolysis", "profile-create", str(profile_path), "--json"]
+ )
+ assert cli_profile.exit_code == 0, cli_profile.output
+ cli_normalised = runner.invoke(
+ cli.app,
+ [
+ "electrolysis",
+ "normalise",
+ electrolysis_source().artifact.source_artifact_id,
+ "--profile-id",
+ profile_id,
+ "--json",
+ ],
+ )
+ assert cli_normalised.exit_code == 0, cli_normalised.output
+
+ assert json.loads(cli_normalised.output)["result"] == api_normalised.json()["result"]
+ assert api_read.json()["result"] == api_normalised.json()["result"]
+ assert observation["technique"] == "galvanostatic_electrolysis"
+ assert observation["metadata"]["chemical_analysis"]["state"] == "unavailable"
+ assert "faradaic" not in json.dumps(observation).lower()
+ assert "selectivity" not in json.dumps(observation).lower()
+ assert "yield" not in json.dumps(observation).lower()
+
+
+def test_mutating_electrolysis_endpoints_require_an_idempotency_key() -> None:
+ client = TestClient(create_app(electrolysis_service=_service()))
+
+ profile_response = client.post(
+ "/electrolysis/import-profiles", json=electrolysis_profile().model_dump(mode="json")
+ )
+ normalise_response = client.post(
+ "/electrolysis/normalisations",
+ json={
+ "source_artifact_id": electrolysis_source().artifact.source_artifact_id,
+ "profile_id": "electrolysis-profile:any",
+ },
+ )
+
+ assert profile_response.status_code == BAD_REQUEST
+ assert profile_response.json()["detail"]["code"] == "idempotency_key_required"
+ assert normalise_response.status_code == BAD_REQUEST
+ assert normalise_response.json()["detail"]["code"] == "idempotency_key_required"
+
+
+def test_reusing_an_electrolysis_idempotency_key_with_a_different_profile_is_a_conflict() -> None:
+ client = TestClient(create_app(electrolysis_service=_service()))
+ first = client.post(
+ "/electrolysis/import-profiles",
+ json=electrolysis_profile().model_dump(mode="json"),
+ headers={"Idempotency-Key": "same-key"},
+ )
+ changed = electrolysis_profile().model_copy(update={"missing_value_tokens": ("", "missing")})
+
+ second = client.post(
+ "/electrolysis/import-profiles",
+ json=changed.model_dump(mode="json"),
+ headers={"Idempotency-Key": "same-key"},
+ )
+
+ assert first.status_code == CREATED
+ assert second.status_code == CONFLICT
+ assert second.json()["detail"]["code"] == "electrolysis_idempotency_key_reused"
+
+
+def test_unknown_electrolysis_profile_is_not_found() -> None:
+ client = TestClient(create_app(electrolysis_service=_service()))
+
+ response = client.get("/electrolysis/import-profiles/electrolysis-profile:missing")
+
+ assert response.status_code == NOT_FOUND
+ assert response.json()["detail"]["code"] == "electrolysis_profile_not_found"
diff --git a/tests/test_experiment_service_wiring.py b/tests/test_experiment_service_wiring.py
new file mode 100644
index 0000000..169f104
--- /dev/null
+++ b/tests/test_experiment_service_wiring.py
@@ -0,0 +1,140 @@
+"""The production Experiment service must be built with both normalisation readers.
+
+`tests/test_experiment_adapter_parity.py` monkeypatches `cli._build_experiment_service`, so it
+cannot see which readers that function passes on. Electrolysis observations were unreachable from
+both adapters while every parity test passed. These tests call the real constructors instead.
+"""
+
+from __future__ import annotations
+
+from typing import Any
+
+import pytest
+from sqlalchemy import create_engine
+
+from labbridge import cli
+from labbridge.api import app as api_app
+from labbridge.infrastructure import experiment_wiring
+from labbridge.infrastructure.experiment_wiring import (
+ CombinedNormalisationReader,
+ build_experiment_service,
+)
+from labbridge.infrastructure.objectstore import InMemoryObjectStore
+
+
+class _RecordingReader:
+ def __init__(self, name: str) -> None:
+ self.name = name
+ self.observations: list[str] = []
+ self.profiles: list[str] = []
+
+ def get_normalisation(self, observation_id: str) -> str:
+ self.observations.append(observation_id)
+ return self.name
+
+ def get_profile(self, profile_id: str) -> str:
+ self.profiles.append(profile_id)
+ return self.name
+
+
+def _stub_infrastructure(monkeypatch: pytest.MonkeyPatch) -> None:
+ """Replace only the object store and the concrete services, never the wiring under test."""
+ monkeypatch.setattr(experiment_wiring, "build_source_store", InMemoryObjectStore)
+
+
+def test_wiring_dispatches_electrolysis_observations_to_the_electrolysis_reader(
+ monkeypatch: pytest.MonkeyPatch,
+) -> None:
+ _stub_infrastructure(monkeypatch)
+ cv = _RecordingReader("cv")
+ electrolysis = _RecordingReader("electrolysis")
+
+ service = build_experiment_service(
+ object(), # type: ignore[arg-type]
+ cv, # type: ignore[arg-type]
+ create_engine("sqlite://", future=True),
+ electrolysis_service=electrolysis, # type: ignore[arg-type]
+ )
+ reader = service._normalisations
+
+ assert isinstance(reader, CombinedNormalisationReader)
+ assert reader.get_normalisation("electrolysis-observation:abc") == "electrolysis"
+ assert reader.get_normalisation("cv-observation:abc") == "cv"
+ assert reader.get_profile("electrolysis-profile:abc") == "electrolysis"
+ assert reader.get_profile("cv-profile:abc") == "cv"
+ assert electrolysis.observations == ["electrolysis-observation:abc"]
+ assert cv.observations == ["cv-observation:abc"]
+
+
+def _capture_electrolysis_service(monkeypatch: pytest.MonkeyPatch, module: Any) -> list[object]:
+ captured: list[object] = []
+
+ def record(*args: object, **kwargs: object) -> object:
+ captured.append(kwargs.get("electrolysis_service"))
+ return object()
+
+ monkeypatch.setattr(module, "build_experiment_service", record)
+ monkeypatch.setattr(module, "build_source_service", lambda *a, **k: object())
+ monkeypatch.setattr(module, "build_cv_service", lambda *a, **k: object())
+ monkeypatch.setattr(
+ module, "build_electrolysis_service", lambda *a, **k: "electrolysis-service"
+ )
+ return captured
+
+
+def test_cli_builds_the_experiment_service_with_an_electrolysis_reader(
+ monkeypatch: pytest.MonkeyPatch,
+) -> None:
+ captured = _capture_electrolysis_service(monkeypatch, cli)
+
+ cli._build_experiment_service()
+
+ assert captured == ["electrolysis-service"]
+
+
+def test_http_app_builds_the_experiment_service_with_an_electrolysis_reader(
+ monkeypatch: pytest.MonkeyPatch,
+) -> None:
+ captured = _capture_electrolysis_service(monkeypatch, api_app)
+
+ def unused_provider() -> Any:
+ return object()
+
+ provide = api_app._experiment_service_provider(
+ lambda: create_engine("sqlite://", future=True),
+ unused_provider,
+ unused_provider,
+ None,
+ )
+ provide()
+
+ assert captured == ["electrolysis-service"]
+
+
+def test_cli_builds_the_electrolysis_ingestion_service(
+ monkeypatch: pytest.MonkeyPatch,
+) -> None:
+ captured: list[object] = []
+
+ def record(*args: object, **kwargs: object) -> str:
+ captured.append("electrolysis-service")
+ return "electrolysis-service"
+
+ monkeypatch.setattr(cli, "build_electrolysis_service", record)
+ monkeypatch.setattr(cli, "_build_source_service", lambda *a, **k: object())
+
+ built = cli._build_electrolysis_service()
+
+ assert built == "electrolysis-service"
+ assert captured == ["electrolysis-service"]
+
+
+def test_the_two_ingestion_services_own_disjoint_identity_namespaces() -> None:
+ """The dispatcher is safe only while the prefixes cannot collide."""
+ reader = CombinedNormalisationReader(
+ _RecordingReader("cv"), # type: ignore[arg-type]
+ _RecordingReader("electrolysis"), # type: ignore[arg-type]
+ )
+
+ assert reader.get_normalisation("electrolysis-observation:1") == "electrolysis"
+ assert reader.get_normalisation("observation:1") == "cv"
diff --git a/tests/test_openapi_contract.py b/tests/test_openapi_contract.py
index 3ae1863..275246e 100644
--- a/tests/test_openapi_contract.py
+++ b/tests/test_openapi_contract.py
@@ -82,3 +82,28 @@ def test_openapi_export_is_deterministic_and_current() -> None:
render_openapi = run_path(str(EXPORTER))["render_openapi"]
assert render_openapi() == CONTRACT.read_bytes()
+
+
+def test_contract_exposes_campaign_control_and_electrolysis_ingestion() -> None:
+ paths = _contract()["paths"] # type: ignore[index]
+
+ assert "/campaigns/{campaign_id}/pause" in paths
+ assert "/campaigns/{campaign_id}/resume" in paths
+ assert "/campaigns/{campaign_id}/cancel" in paths
+ assert "/electrolysis/import-profiles" in paths
+ assert "/electrolysis/import-profiles/{profile_id}" in paths
+ assert "/electrolysis/normalisations" in paths
+ assert "/electrolysis/normalised-observations/{observation_id}" in paths
+
+
+def test_generated_typescript_includes_integrated_http_routes() -> None:
+ generated = (ROOT / "frontend" / "src" / "generated" / "api-v1.ts").read_text(encoding="utf-8")
+
+ for path in (
+ "/campaigns/{campaign_id}/pause",
+ "/campaigns/{campaign_id}/resume",
+ "/campaigns/{campaign_id}/cancel",
+ "/electrolysis/import-profiles",
+ "/electrolysis/normalisations",
+ ):
+ assert path in generated, path