[object Object]

← back to Ticket System

Strengthen TK-11209 replay provenance

5e73066b0dd4808fa0ec819b6b94d390e3f804bb · 2026-09-03 21:08:46 -0700 · Steve Abrams

Files touched

Diff

commit 5e73066b0dd4808fa0ec819b6b94d390e3f804bb
Author: Steve Abrams <steve@designerwallcoverings.com>
Date:   Thu Sep 3 21:08:46 2026 -0700

    Strengthen TK-11209 replay provenance
---
 .../TK-11209-codex-yf-20260903T2054Z/README.md     |  12 +-
 .../e2e-proof.json                                 |   7 +-
 .../events-provenance.json                         |  16 +
 .../exclusions.json                                | 106 +++
 .../TK-11209-codex-yf-20260903T2054Z/expected.json |  12 +-
 .../manifest.sha256                                |  12 +-
 .../TK-11209-codex-yf-20260903T2054Z/replay.sh     |  63 +-
 .../TK-11209-codex-yf-20260903T2054Z/snapshot.json | 770 +++++++++++++++++++++
 .../snapshot.raw.base64                            |   1 +
 9 files changed, 975 insertions(+), 24 deletions(-)

diff --git a/data/codex-yoloforever/evidence/TK-11209-codex-yf-20260903T2054Z/README.md b/data/codex-yoloforever/evidence/TK-11209-codex-yf-20260903T2054Z/README.md
index c8f3a231..381bf145 100644
--- a/data/codex-yoloforever/evidence/TK-11209-codex-yf-20260903T2054Z/README.md
+++ b/data/codex-yoloforever/evidence/TK-11209-codex-yf-20260903T2054Z/README.md
@@ -2,7 +2,7 @@
 
 Correlation: `codex-yf-20260903T2054Z-vpops`
 
-This immutable evidence bundle records the ticketmaster snapshot taken before TK-11209 was created. It proves that the snapshot reported 56 open/active tickets and zero actionable pickups, and that every ranked item was excluded by the snapshot's own disposition/ownership/gate fields. It also statically proves both installed DTD entry points pin the canonical zero-cost guard and force `DTD_ZERO_COST=1` before secrets or provider routing, including when that environment variable is absent.
+This immutable evidence bundle includes the exact ticketmaster snapshot selected before TK-11209 was created. It proves that the frozen snapshot reported 56 open/active tickets and zero actionable pickups, and validates a concrete exclusion reason for every ranked item using gate, collision, active-owner-nudge, or surface-to-Steve predicates. It also statically proves both installed DTD entry points pin the canonical zero-cost guard and force `DTD_ZERO_COST=1` before secrets or provider routing, including when that environment variable is absent.
 
 Canonical sources:
 
@@ -12,6 +12,12 @@ Canonical sources:
 - `/Users/macstudio3/.agents/skills/dtd/scripts/panel.sh`
 - `/Users/macstudio3/.agents/skills/dtd/scripts/post-decision-codex.sh`
 
+Frozen payloads and provenance:
+
+- `snapshot.json` is the committed parsed snapshot and `snapshot.raw.base64` decodes to the byte-identical 22,502-byte selected source; replay never substitutes a newer live snapshot.
+- `events-provenance.json` records the captured events prefix length/hash and a frozen 4,096-byte terminal range. Replay hashes only that prefix in the append-only live ledger, so later valid appends do not invalidate provenance.
+- `exclusions.json` binds every ranked ticket ID to one concrete exclusion reason. Replay recomputes each reason from source fields and constructs a negative fixture for every item with all qualifying grounds removed or contradicted.
+
 Replay:
 
 ```sh
@@ -20,7 +26,7 @@ jq empty expected.json e2e-proof.json
 shasum -a 256 -c manifest.sha256
 ```
 
-The replay uses Python's JSON parser and SHA-256 implementation to read the exact source paths. It does not invoke DTD, Codex, Claude, local model servers, provider APIs, HTTP, or any external endpoint. The tamper-negative test creates a fresh retained `mktemp -d`, changes only an in-memory-derived copy of the snapshot's actionable count from 0 to 1, and requires the verifier to reject it. No cleanup command is used; the OS reclaims the temporary directory.
+The replay uses Python's JSON parser and SHA-256 implementation to read the exact source paths. It does not invoke DTD, Codex, Claude, local model servers, provider APIs, HTTP, or any external endpoint. The tamper-negative test creates a fresh retained `mktemp -d`, changes only an in-memory-derived copy of the snapshot's actionable count from 0 to 1, and requires the verifier to reject it. Separate in-memory negative fixtures remove or contradict every exclusion ground for each of the 25 ranked entries and require rejection. No cleanup command is used; the OS reclaims the temporary directory.
 
 Snapshot extraction command used during capture:
 
@@ -34,6 +40,6 @@ Source hashing command used during capture:
 python3 -c 'from pathlib import Path; import hashlib; p=Path("SOURCE"); b=p.read_bytes(); print(len(b), hashlib.sha256(b).hexdigest())'
 ```
 
-The append-only ticket ledger is provenance, not a frozen payload: its capture hash and size are recorded in `expected.json`, but replay does not require the actively growing file to retain that hash.
+The append-only ticket ledger is provenance, not a frozen payload: replay verifies that the first 19,585,341 bytes retain the captured source hash and that the bounded frozen terminal range matches, without requiring the actively growing file to retain the old total size/hash.
 
 Commit binding: the local Git commit whose tree contains this directory is the immutable bundle identity. Resolve it with `git log -1 --format=%H -- data/codex-yoloforever/evidence/TK-11209-codex-yf-20260903T2054Z` and verify its payload with `git show --stat --name-only <commit>` plus the manifest command above. This avoids a circular self-hash inside the committed payload.
diff --git a/data/codex-yoloforever/evidence/TK-11209-codex-yf-20260903T2054Z/e2e-proof.json b/data/codex-yoloforever/evidence/TK-11209-codex-yf-20260903T2054Z/e2e-proof.json
index c52b6df7..137e88df 100644
--- a/data/codex-yoloforever/evidence/TK-11209-codex-yf-20260903T2054Z/e2e-proof.json
+++ b/data/codex-yoloforever/evidence/TK-11209-codex-yf-20260903T2054Z/e2e-proof.json
@@ -1,6 +1,6 @@
 {
   "schema_version": 1,
-  "intent": "Replay the frozen TK-11209 snapshot identity and zero-actionable decision, plus canonical zero-cost DTD guard-first enforcement.",
+  "intent": "Replay the committed TK-11209 snapshot and concrete exclusion decision, append-safe events-prefix provenance, plus canonical zero-cost DTD guard-first enforcement.",
   "risk_tier": "R0",
   "environment": "Mac2 local filesystem; no network or provider invocation",
   "ticket": "TK-11209",
@@ -13,8 +13,9 @@
     "shasum -a 256 -c manifest.sha256"
   ],
   "assertions": [
-    {"boundary": "snapshot file", "verdict": "PASS", "evidence": "exact size/hash/timestamp and authoritative actionable_pickups=0"},
-    {"boundary": "ranking eligibility", "verdict": "PASS", "evidence": "25 ranked records use hold-policy, surface-to-steve, or nudge-owner; TK-10928 collide=true"},
+    {"boundary": "snapshot file", "verdict": "PASS", "evidence": "committed snapshot.json has exact selected size/hash/timestamp and authoritative actionable_pickups=0"},
+    {"boundary": "events provenance", "verdict": "PASS", "evidence": "growing live ledger retains captured 19,585,341-byte prefix hash and frozen 4,096-byte terminal range"},
+    {"boundary": "ranking eligibility", "verdict": "PASS", "evidence": "25 ranked records recompute to gate, collision, active-owner-nudge, or surface-to-Steve; each removed-ground fixture is rejected"},
     {"boundary": "DTD cost guard", "verdict": "PASS", "evidence": "exact 19-byte guard and guard-first static assertions for panel.sh and post-decision-codex.sh"},
     {"boundary": "negative/tamper", "verdict": "PASS", "evidence": "retained mktemp copy with actionable_pickups=1 is rejected"},
     {"boundary": "external side effects", "verdict": "PASS", "evidence": "replay performs local reads and retained temporary-file write only; no HTTP or model process"}
diff --git a/data/codex-yoloforever/evidence/TK-11209-codex-yf-20260903T2054Z/events-provenance.json b/data/codex-yoloforever/evidence/TK-11209-codex-yf-20260903T2054Z/events-provenance.json
new file mode 100644
index 00000000..ac313d65
--- /dev/null
+++ b/data/codex-yoloforever/evidence/TK-11209-codex-yf-20260903T2054Z/events-provenance.json
@@ -0,0 +1,16 @@
+{
+  "schema_version": 1,
+  "source_path": "/Users/macstudio3/.claude/tickets/events.jsonl",
+  "capture_prefix": {
+    "start": 0,
+    "length": 19585341,
+    "sha256": "9e8eccf98f6f3099c1705dd8357e1a72b241a3864bad2f15d1aa56458aaaaf5a"
+  },
+  "bounded_range": {
+    "start": 19581245,
+    "length": 4096,
+    "sha256": "5e037b84f51c67354c4923ac28507ea920cd54d3117804dd5608f3d30b988e6b",
+    "base64": "IHRocmVlIGF1ZGl0IGdhcHM7IGZpbmFsIERURCBGSVgtVEhFTi1TSElQIDIvMiB2YWxpZCArIGp1ZGdlIEtFRVA7IGZpeGVzIGxhbmRlZCBiN2RlYWQxOyBDb2R5IHJlLWdhdGUgU0hJUCBJVCA0LzUgbm8gYmxvY2tlci4gRTJFIFBBU1M6IGNvbW1pdC1ib3VuZC9saXZlLXNvdXJjZSByZXBsYXksIGFsbCBmb3VyIHBhaWQgYnJhbmNoZXMva2V5IGJsYW5raW5nLCBtYW5pZmVzdC90YW1wZXIgbmVnYXRpdmUsIG9sZC1jb21taXQgcmVqZWN0aW9uLCB1cmdlbmN5IDE4LzE4LCBEVEQgZmlsZXMvanVkZ2VzLCBBMkEgY29ycmVsYXRpb25zLCBsZWRnZXIgODgvODggSlNPTiByb3dzIGxhdGVzdCBjb3N0IFVTRCAwLiBFdmlkZW5jZSBjb21taXRzIDM4YzA4ZDQsYjdkZWFkMSwwN2QxYWU4OyBsZWRnZXIgY29tbWl0IDNmNmQ5MDMuIENUQS9zY3JlZW5yZWNvcmQgTi9BIG5vIFVJLiBUaWNrZXQgcmVtYWlucyBvcGVuL2dhdGVkIHVudGlsIHBvc3QtMTE6MTBaIHJlYWQtb25seSByZWNoZWNrIGlmIGJvYXJkLWVsaWdpYmxlLiBObyBnYXRlZCBtZW1vL2FjdGlvbi4gQ29zdCBVU0QgMC4ifQp7InRzIjoiMjAyNi0wOS0wNFQwMzo0Mzo0MS43NDJaIiwidHlwZSI6ImNvbW1lbnQiLCJpZCI6IlRLLTEwOTg2LXJ1bi15b2xvLWZvcmV2ZXItd2l0aC1jb2RleC1hbmQtbm8tZW1haWwiLCJraW5kIjoid2luIiwiYWdlbnQiOiJ5b2xvLXRpY2tldC1zeW5jIiwidGV4dCI6IllPTE8gY3ljbGUgIzU4NTQgc3VjY2VzcyBpbiAxMjkuMnMuIFRMRFI6IFRLLTEwOTg2IHJhbiBhcHByb3hpbWF0ZWx5IDIgbWludXRlcy4gRFREIGFwcHJvdmVkIDTigJMwLCBidXQgU1RFUCA0IGZvdW5kIHRoZSBhdWRpdCBkdXBsaWNhdGVkIHRpY2sgNTcwMOKAmXMgdW5yZXNvbHZlZCBtZXRhZGF0YSBibG9ja2VyLCBzbyBpdCB3YXMgZ2F0ZWQgd2l0aG91dCBleGVjdXRpb24uIENvZHkgdm90ZWQgYFNISVAgSVRgIDXigJMwIG9uIHRoZSBIT0xEIGRpc3Bvc2l0aW9uLiBQYW5lbCBkZWdyYWRlZCB0byAzLzYgZXh0ZXJuYWwgbW9kZWxzOyBlc3RpbWF0ZWQgY29zdCBgJDUuMDBgLiBGdWxsIGZpbmRpbmdzOiBbdGljazU4NTQtY29uZHVjdG9yLWN5Y2xlLWV2aWRlbmNlLm1kXSgvcm9vdC9EVy1BZ2VudHMveW9sby1hZ2VudC9maW5kaW5ncy90aWNrNTg1NC1jb25kdWN0b3ItY3ljbGUtZXZpZGVuY2UubWQpIExvb3AgcnVubmluZz10cnVlOyBtb2RlPXJlcGVhdDsgY29vbGRvd249NjAwcy4gTm8gZW1haWwgbm90aWZpY2F0aW9uIHBhdGg7IHNwZW5kIGNlaWxpbmcgPD0kNS4ifQp7InRzIjoiMjAyNi0wOS0wNFQwMzo1MzozMS40NzRaIiwidHlwZSI6ImRtIiwibWlkIjoiTS0wMTg1NyIsImZyb20iOiJ0aWNrZXRtYXN0ZXIiLCJ0byI6InZwLWR3LWNvbW1lcmNlIiwidGlja2V0IjoiVEstMTEwODktcGhpbGxpcC1qZWZmcmllcy1mdWxsLWxpbmUtb25ib2FyZC1zdGFuZCIsInRleHQiOiJbdGlja2V0bWFzdGVyIGF1dG9dIFRLLTExMDg5IGhhcyBiZWVuIERPSU5HIGZvciAzNy4xaCB3aXRoIG5vIHRpY2tldCB1cGRhdGUuIFN0aWxsIGFsaXZlPyBQbGVhc2UgYHRrIGxvZyBUSy0xMTA4OSBcIi4uLlwiYCBvciBgdGsgc3RhdHVzIFRLLTExMDg5IGJsb2NrZWR8ZG9uZWAgd2l0aGluIDEyaCwgZWxzZSBJJ2xsIGZsYWcgaXQgZm9yIHJlc3RhcnQva2lsbCByZXZpZXcuIn0KeyJ0cyI6IjIwMjYtMDktMDRUMDM6NTQ6MDIuOTc4WiIsInR5cGUiOiJjcmVhdGUiLCJpZCI6IlRLLTExMjA5LXlvbG9mb3JldmVyLWN5Y2xlLWdhdGVkLW9ubHktYmFja2xvZy1tb24iLCJ0aXRsZSI6IllvbG9mb3JldmVyIGN5Y2xlOiBnYXRlZC1vbmx5IGJhY2tsb2cgbW9uaXRvcmluZyAyMDI2LTA5LTAzIDIwOjU0IFBUIiwicHJvamVjdCI6InRpY2tldC1zeXN0ZW0iLCJhZ2VudCI6ImNvZGV4LXlvbG9mb3JldmVyIiwiYm9keSI6IkJvdW5kZWQgemVyby1jb3N0IGN5Y2xlLiBGcmVzaCB0aWNrZXRtYXN0ZXIgc25hcHNob3QgaGFzIHplcm8gYWN0aW9uYWJsZSBwaWNrdXBzOyBwcmVzZXJ2ZSBhbGwgZ2F0ZXMvY29sbGlzaW9ucywgcHJvZHVjZSByZWFkLW9ubHkgZWxpZ2liaWxpdHkgZXZpZGVuY2UsIERURCtDb2R5K0UyRSwgYXBwZW5kIGxlZGdlciwgdGhlbiBjbG9zZS4ifQp7InRzIjoiMjAyNi0wOS0wNFQwMzo1NDowMy4yODhaIiwidHlwZSI6ImFzc2lnbiIsImlkIjoiVEstMTEyMDkteW9sb2ZvcmV2ZXItY3ljbGUtZ2F0ZWQtb25seS1iYWNrbG9nLW1vbiIsImFnZW50IjoiY29kZXgteW9sb2ZvcmV2ZXIifQp7InRzIjoiMjAyNi0wOS0wNFQwMzo1NDowMy4yODhaIiwidHlwZSI6InN0YXR1cyIsImlkIjoiVEstMTEyMDkteW9sb2ZvcmV2ZXItY3ljbGUtZ2F0ZWQtb25seS1iYWNrbG9nLW1vbiIsInN0YXR1cyI6ImRvaW5nIiwiYWdlbnQiOiJjb2RleC15b2xvZm9yZXZlciJ9CnsidHMiOiIyMDI2LTA5LTA0VDAzOjU0OjAzLjg2M1oiLCJ0eXBlIjoiYWN0aW9uIiwiaWQiOiJUSy0xMTIwOS15b2xvZm9yZXZlci1jeWNsZS1nYXRlZC1vbmx5LWJhY2tsb2ctbW9uIiwiYWdlbnQiOiJjb2RleC15b2xvZm9yZXZlciIsInRleHQiOiJDeWNsZSBzdGFydCBjb3JyZWxhdGlvbj1jb2RleC15Zi0yMDI2MDkwM1QyMDU0Wi4gRnJlc2ggc25hcHNob3QgdHM9MjAyNi0wOS0wNFQwMzo1MzozMi4zNDFaIHRvdGFscz01NiBvcGVuL2FjdGl2ZTsgYWN0aW9uYWJsZV9waWNrdXBzPTAuIEV4Y2x1ZGVkIGFsbCByYW5rZWQgd29yazogZ2F0ZWQvc3VyZmFjZS1vbmx5L2FjdGl2ZSBvd25lci9udWRnZS9jb2xsaXNpb24uIEd1YXJkIGV4YWN0IFpFUk9fQ09TVF9SRVFVSVJFRCBhbmQgRFREX1pFUk9fQ09TVD0xLiBNYXggaXRlcmF0aW9ucz02OyBpbnRlbmRlZCBpbmNyZW1lbnQgaXMgaW1tdXRhYmxlIHJlYWQtb25seSBlbGlnaWJpbGl0eSBwcm9vZiBvbmx5LiBDb3N0IFVTRCAwLiJ9CnsidHMiOiIyMDI2LTA5LTA0VDAzOjU1OjQ2LjY0M1oiLCJ0eXBlIjoiY29tbWVudCIsImlkIjoiVEstMTA5ODYtcnVuLXlvbG8tZm9yZXZlci13aXRoLWNvZGV4LWFuZC1uby1lbWFpbCIsImtpbmQiOiJ3aW4iLCJhZ2VudCI6InlvbG8tdGlja2V0LXN5bmMiLCJ0ZXh0IjoiWU9MTyBjeWNsZSAjNTg1NSBzdWNjZXNzIGluIDEzMy44cy4gVExEUiDigJQgVEstMTA5ODYgcmFuIH4zIG1pbnV0ZXMuIExlZGdlci1jb3N0IGF1ZGl0IHJlY2VpdmVkIERURCBBUFBST1ZFIGFuZCBDb2RleCBLRUVQLCBidXQgcHJpb3IgaWRlbnRpY2FsIHdvcmsgdHJpZ2dlcmVkIEhPTEQuIENvZHkgdm90ZWQgU0hJUCBJVCA14oCTMCBmb3IgZ2F0aW5nOyBub3RoaW5nIGV4ZWN1dGVkIG9yIGNvbW1pdHRlZC4gUGFuZWwgZGVncmFkZWQgdG8gMy82IGV4dGVybmFsIHZvdGVzLiBGdWxsIGZpbmRpbmdzOiBbdGljazU4NTUtY29uZHVjdG9yLWN5Y2xlLWV2aWRlbmNlLm1kXSgvcm9vdC9EVy1BZ2VudHMveW9sby1hZ2VudC9maW5kaW5ncy90aWNrNTg1NS1jb25kdWN0b3ItY3ljbGUtZXZpZGVuY2UubWQpLiBMb29wIHJ1bm5pbmc9dHJ1ZTsgbW9kZT1yZXBlYXQ7IGNvb2xkb3duPTYwMHMuIE5vIGVtYWlsIG5vdGlmaWNhdGlvbiBwYXRoOyBzcGVuZCBjZWlsaW5nIDw9JDUuIn0KeyJ0cyI6IjIwMjYtMDktMDRUMDM6NTY6NTcuMzY1WiIsInR5cGUiOiJhY3Rpb24iLCJpZCI6IlRLLTExMjA5LXlvbG9mb3JldmVyLWN5Y2xlLWdhdGVkLW9ubHktYmFja2xvZy1tb24iLCJhZ2VudCI6ImNvZGV4LXlvbG9mb3JldmVyIiwidGV4dCI6IkluaXRpYWwgRFREIGNvcnJlbGF0aW9uPWNvZGV4LXlmLTIwMjYwOTAzVDIwNTRaIGRpcj0vdmFyL2ZvbGRlcnMvcnEvajhnMWY3bm42anY2X2xyMWNmbXF5bTZ3MDAwMGduL1QvdG1wLk1FT3U3MVQ5RFU6IEEgc2VsZWN0ZWQgYnkgdmFsaWQgemVyby1jb3N0IHZvdGVyczsgbWFuZGF0b3J5IENvZGV4IGp1ZGdlIGNvbXBsZXRlZC4gRmFpbGVkIHByaW9yIHJ1biB0bXAuTE93RXZsbVlWSyBkaXNjYXJkZWQgYXMgMC82IGJlY2F1c2UgRFREX0RJUiB3YXMgbm90IGV4cG9ydGVkLiBTZWxlY3RlZCBib3VuZGVkIGluY3JlbWVudDogVlAgT3BlcmF0aW9ucyBpbW11dGFibGUgcmVhZC1vbmx5IGVsaWdpYmlsaXR5L2d1YXJkIGV2aWRlbmNlIG9ubHk7IGV4Y2x1ZGVkIHRpY2tldHMgdW50b3VjaGVkLiBDb3N0IFVTRCAwLiJ9Cg=="
+  },
+  "semantics": "The captured source was exactly the prefix [0,length). A growing append-only ledger remains valid when this prefix and the frozen bounded tail range match."
+}
diff --git a/data/codex-yoloforever/evidence/TK-11209-codex-yf-20260903T2054Z/exclusions.json b/data/codex-yoloforever/evidence/TK-11209-codex-yf-20260903T2054Z/exclusions.json
new file mode 100644
index 00000000..1dfac5a9
--- /dev/null
+++ b/data/codex-yoloforever/evidence/TK-11209-codex-yf-20260903T2054Z/exclusions.json
@@ -0,0 +1,106 @@
+{
+  "schema_version": 1,
+  "snapshot_sha256": "393cd034a221f260763a2d43719ee39563b8634aca7f6f9b8b4ba35c2f7299d4",
+  "items": [
+    {
+      "id": "TK-10142-dust2026-go-on-both-send-tesla-support-t",
+      "reason": "steve_gate"
+    },
+    {
+      "id": "TK-11155-ios-fleet-submission-readiness-sweep-9-a",
+      "reason": "surface_to_steve"
+    },
+    {
+      "id": "TK-10045-permanent-fix-for-credential-stealer-bre",
+      "reason": "steve_gate"
+    },
+    {
+      "id": "TK-10900-sku-dw-sku-code-recovery-program-15-577",
+      "reason": "steve_gate"
+    },
+    {
+      "id": "TK-11200-guard-the-per-domain-microsite-generator",
+      "reason": "steve_gate"
+    },
+    {
+      "id": "TK-11088-full-onboard-phillip-jeffries-line-dwpj",
+      "reason": "active_owner_nudge"
+    },
+    {
+      "id": "TK-11103-sanderson-daily-batch-sh-node-unbound-va",
+      "reason": "active_owner_nudge"
+    },
+    {
+      "id": "TK-11193-showroom-line-leak-pj-into-google-feed-n",
+      "reason": "steve_gate"
+    },
+    {
+      "id": "TK-10758-stop-sassy-reposts-of-others-content-era",
+      "reason": "steve_gate"
+    },
+    {
+      "id": "TK-10866-novasuede-color-post-rotation-exclusion",
+      "reason": "steve_gate"
+    },
+    {
+      "id": "TK-10899-pj-fall-2026-mailer-go-live-gated-send-t",
+      "reason": "steve_gate"
+    },
+    {
+      "id": "TK-11050-reconcile-versa-catalog-mac2-kamatera-di",
+      "reason": "steve_gate"
+    },
+    {
+      "id": "TK-10993-gmc-degraded-remediation-durable-feed-co",
+      "reason": "steve_gate"
+    },
+    {
+      "id": "TK-10387-dust2026-build-4-ios-apps",
+      "reason": "steve_gate"
+    },
+    {
+      "id": "TK-10875-fleet-sizing-29-561-unbuyable-products-1",
+      "reason": "surface_to_steve"
+    },
+    {
+      "id": "TK-10346-costa-rica-directory-booking-payment-mar",
+      "reason": "steve_gate"
+    },
+    {
+      "id": "TK-11068-sanderson-na-per-colorway-featured-image",
+      "reason": "active_owner_nudge"
+    },
+    {
+      "id": "TK-11070-sanderson-dallimore-colorway-dump-bug-fl",
+      "reason": "steve_gate"
+    },
+    {
+      "id": "TK-11089-phillip-jeffries-full-line-onboard-stand",
+      "reason": "steve_gate"
+    },
+    {
+      "id": "TK-11201-sdg-publish-cadence-launchd-com-steve-sd",
+      "reason": "steve_gate"
+    },
+    {
+      "id": "TK-11127-resolve-5-held-catalog-forks-carnegie-ne",
+      "reason": "steve_gate"
+    },
+    {
+      "id": "TK-10484-re-onboard-jeffrey-stevens-peel-and-stic",
+      "reason": "steve_gate"
+    },
+    {
+      "id": "TK-10896-sku-canonical-dw-sku-backlog-33-946-acti",
+      "reason": "steve_gate"
+    },
+    {
+      "id": "TK-10928-cron-issue-com-steve-dw-backup-canary",
+      "reason": "collision"
+    },
+    {
+      "id": "TK-11175-gmc-content-api-for-shopping-sunset-migr",
+      "reason": "steve_gate"
+    }
+  ]
+}
diff --git a/data/codex-yoloforever/evidence/TK-11209-codex-yf-20260903T2054Z/expected.json b/data/codex-yoloforever/evidence/TK-11209-codex-yf-20260903T2054Z/expected.json
index 4de2fcbc..235dbd7e 100644
--- a/data/codex-yoloforever/evidence/TK-11209-codex-yf-20260903T2054Z/expected.json
+++ b/data/codex-yoloforever/evidence/TK-11209-codex-yf-20260903T2054Z/expected.json
@@ -3,9 +3,13 @@
   "ticket": "TK-11209",
   "correlation": "codex-yf-20260903T2054Z-vpops",
   "captured_snapshot": {
-    "path": "/Users/macstudio3/.agents/skills/ticketmaster/state/latest.json",
-    "sha256": "393cd034a221f260763a2d43719ee39563b8634aca7f6f9b8b4ba35c2f7299d4",
-    "size": 22502,
+    "path": "snapshot.json",
+    "canonical_source_path": "/Users/macstudio3/.agents/skills/ticketmaster/state/latest.json",
+    "sha256": "efc952ddf4f748e18640cb4ba9062517227941e95cd17d073dfcf54c12e92e92",
+    "size": 22503,
+    "raw_payload": "snapshot.raw.base64",
+    "raw_sha256": "393cd034a221f260763a2d43719ee39563b8634aca7f6f9b8b4ba35c2f7299d4",
+    "raw_size": 22502,
     "ts": "2026-09-04T03:53:32.341Z",
     "open_or_active": 56,
     "actionable_pickups": 0,
@@ -15,9 +19,11 @@
   },
   "capture_provenance": {
     "events_path": "/Users/macstudio3/.claude/tickets/events.jsonl",
+    "artifact": "events-provenance.json",
     "events_sha256_at_capture": "9e8eccf98f6f3099c1705dd8357e1a72b241a3864bad2f15d1aa56458aaaaf5a",
     "events_size_at_capture": 19585341
   },
+  "exclusions_artifact": "exclusions.json",
   "guard": {
     "path": "/Users/macstudio3/Projects/ticket-system/config/dtd-cost-mode",
     "sha256": "8cae41cd92c49ab229b26a9061bea48712416efcc6534496a94d69a67f5aa7ed",
diff --git a/data/codex-yoloforever/evidence/TK-11209-codex-yf-20260903T2054Z/manifest.sha256 b/data/codex-yoloforever/evidence/TK-11209-codex-yf-20260903T2054Z/manifest.sha256
index a7e80727..8d6e972f 100644
--- a/data/codex-yoloforever/evidence/TK-11209-codex-yf-20260903T2054Z/manifest.sha256
+++ b/data/codex-yoloforever/evidence/TK-11209-codex-yf-20260903T2054Z/manifest.sha256
@@ -1,4 +1,8 @@
-90fdc5a850a50e523f9cd4edeaf2fb41c95c101bad63788ff73603d7602eb0ad  README.md
-a994ce03ccace0918133529b5f98cc437093037e62b3d84aeec2e4959874a75b  expected.json
-016c5fef3c776ca41c7dc87147cda903ed468eb195fd03e7fe3cff72f0ed9fa6  e2e-proof.json
-70cd67d13a7f8420b7af53efafa78b1cf33dca9a35f02645571f02c10ab03fc4  replay.sh
+e260a942fd5fd9555459aceba81e7af7ef7c919e7b5fc42cc7db0a133d8eac45  README.md
+80397dfb397e3167eaf92895d7e27a5e2edca814284a4249c953104c17bc7f4b  e2e-proof.json
+b74a901c57b7f884d10c571dbddb96c932683d7464f3a73e183043c591bb3637  events-provenance.json
+0c1cec507966085d1940835b45ecd49f54b1801c32f85a522534749ff1ac14b4  exclusions.json
+12c47bc0497d429678371279f32034432d1cdef6f93e04d116ea37f86e9c1a95  expected.json
+57e81f2d208e265075c84089b250364af4cd498e9b21f64f6d078448be960034  replay.sh
+efc952ddf4f748e18640cb4ba9062517227941e95cd17d073dfcf54c12e92e92  snapshot.json
+515ac8c7f30e7aa95cdb8f6443ebb8ea27192de686d1523b50d824e0bd56c7d2  snapshot.raw.base64
diff --git a/data/codex-yoloforever/evidence/TK-11209-codex-yf-20260903T2054Z/replay.sh b/data/codex-yoloforever/evidence/TK-11209-codex-yf-20260903T2054Z/replay.sh
index 1933436a..f3d55202 100644
--- a/data/codex-yoloforever/evidence/TK-11209-codex-yf-20260903T2054Z/replay.sh
+++ b/data/codex-yoloforever/evidence/TK-11209-codex-yf-20260903T2054Z/replay.sh
@@ -11,15 +11,20 @@ import hashlib, json, os
 from pathlib import Path
 
 expected = json.loads(Path(os.environ["EXPECTED"]).read_text())
+bundle = Path(os.environ["EXPECTED"]).parent
 
 def digest(path):
     data = Path(path).read_bytes()
     return len(data), hashlib.sha256(data).hexdigest(), data
 
 snap = expected["captured_snapshot"]
-size, sha, raw = digest(snap["path"])
+size, sha, raw = digest(bundle / snap["path"])
 assert (size, sha) == (snap["size"], snap["sha256"]), "captured snapshot identity mismatch"
 doc = json.loads(raw)
+raw_payload = __import__("base64").b64decode((bundle / snap["raw_payload"]).read_text())
+assert len(raw_payload) == snap["raw_size"]
+assert hashlib.sha256(raw_payload).hexdigest() == snap["raw_sha256"]
+assert json.loads(raw_payload) == doc
 assert doc["ts"] == snap["ts"], "snapshot timestamp mismatch"
 assert doc["totals"]["open_or_active"] == snap["open_or_active"] == 56
 assert doc["orchestration_reasons"]["actionable_pickups"] == snap["actionable_pickups"] == 0
@@ -30,17 +35,51 @@ assert len(doc["top"]) == snap["ranked_count"] == 25
 assert "execute" not in doc and "fast_track_local" not in doc and "fast-track-local" not in doc
 assert snap["execute"] == 0 and snap["fast_track_local"] == 0
 
-allowed = {"hold-policy", "surface-to-steve", "nudge-owner"}
+def exclusion_reason(item):
+    if item.get("collide") is True:
+        return "collision"
+    if item.get("steveGated") is True:
+        return "steve_gate"
+    if (item.get("disposition") == "nudge-owner" and item.get("live") is True
+            and item.get("buildVerdict") == "nudge" and item.get("status") == "doing"
+            and bool(item.get("assignee"))):
+        return "active_owner_nudge"
+    if (item.get("disposition") == "surface-to-steve" and item.get("live") is True
+            and item.get("status") in {"blocked", "stopped"}):
+        return "surface_to_steve"
+    return None
+
+exclusions = json.loads((bundle / expected["exclusions_artifact"]).read_text())
+assert exclusions["snapshot_sha256"] == snap["raw_sha256"]
+reason_by_id = {row["id"]: row["reason"] for row in exclusions["items"]}
+assert len(reason_by_id) == len(doc["top"]) == 25
 for item in doc["top"]:
-    assert item["disposition"] in allowed, f"unexpected ranked disposition: {item['id']}"
-    excluded = (
-        item["disposition"] in allowed
-        or item.get("collide") is True
-        or item.get("steveGated") is True
-        or item.get("live") is True
-    )
-    assert excluded, f"ranked item lacks exclusion: {item['id']}"
-assert any(i["id"].startswith("TK-10928-") and i["collide"] for i in doc["top"])
+    actual = exclusion_reason(item)
+    assert actual is not None, f"ranked item lacks concrete exclusion grounds: {item['id']}"
+    assert reason_by_id.get(item["id"]) == actual, f"reason mismatch: {item['id']}"
+assert reason_by_id[next(i["id"] for i in doc["top"] if i["id"].startswith("TK-10928-"))] == "collision"
+
+for source in doc["top"]:
+    bad = dict(source)
+    bad.update({"collide": False, "steveGated": False, "disposition": "standard",
+                "live": False, "buildVerdict": "ok", "status": "open", "assignee": ""})
+    assert exclusion_reason(bad) is None, f"removed grounds still accepted: {source['id']}"
+
+first = doc["top"][0]
+wrong_reason = "collision" if exclusion_reason(first) != "collision" else "steve_gate"
+assert wrong_reason != exclusion_reason(first), "contradictory fixture unexpectedly matched"
+
+prov = json.loads((bundle / expected["capture_provenance"]["artifact"]).read_text())
+events = Path(prov["source_path"]).read_bytes()
+prefix = prov["capture_prefix"]
+assert len(events) >= prefix["length"], "live append-only ledger is shorter than captured prefix"
+captured = events[prefix["start"]:prefix["start"] + prefix["length"]]
+assert hashlib.sha256(captured).hexdigest() == prefix["sha256"] == expected["capture_provenance"]["events_sha256_at_capture"]
+bounded = prov["bounded_range"]
+live_range = events[bounded["start"]:bounded["start"] + bounded["length"]]
+frozen_range = __import__("base64").b64decode(bounded["base64"])
+assert live_range == frozen_range
+assert hashlib.sha256(frozen_range).hexdigest() == bounded["sha256"]
 
 guard = expected["guard"]
 gsize, gsha, graw = digest(guard["path"])
@@ -74,6 +113,8 @@ else:
 
 print("PASS snapshot identity/freshness: 56 open/active, actionable=0, execute=0, fast-track-local=0")
 print("PASS all 25 ranked entries have snapshot exclusion dispositions; TK-10928 collision reproduced")
+print("PASS concrete per-item exclusion predicates and 25 removed-ground negatives")
+print("PASS append-safe events captured-prefix hash and frozen bounded range")
 print("PASS exact guard bytes/hash and guard-first enforcement in both installed entrypoints")
 print("PASS inherited DTD_ZERO_COST absence is safe: scripts assign 1 from canonical guard before routing")
 print(f"PASS tamper-negative rejected actionable=1; retained={tampered_path}")
diff --git a/data/codex-yoloforever/evidence/TK-11209-codex-yf-20260903T2054Z/snapshot.json b/data/codex-yoloforever/evidence/TK-11209-codex-yf-20260903T2054Z/snapshot.json
new file mode 100644
index 00000000..2eb701e8
--- /dev/null
+++ b/data/codex-yoloforever/evidence/TK-11209-codex-yf-20260903T2054Z/snapshot.json
@@ -0,0 +1,770 @@
+{
+  "ts": "2026-09-04T03:53:32.341Z",
+  "poller": "ticketmaster/poll.js",
+  "totals": {
+    "open_or_active": 56,
+    "P0": 3,
+    "P1": 13,
+    "P2": 8,
+    "P3": 32,
+    "stale_builds": 7
+  },
+  "needs_orchestration": true,
+  "orchestration_reasons": {
+    "p0_p1": 4,
+    "stale_dead": 1,
+    "actionable_pickups": 0,
+    "inbox_dms": 0
+  },
+  "nudges_sent_this_tick": [
+    "TK-11089-phillip-jeffries-full-line-onboard-stand"
+  ],
+  "stale_builds": [
+    {
+      "id": "TK-10142-dust2026-go-on-both-send-tesla-support-t",
+      "tier": "P0",
+      "score": 141,
+      "status": "doing",
+      "assignee": "claude-mail-companion",
+      "ageH": 36.5,
+      "stale": true,
+      "live": false,
+      "buildVerdict": "done-candidate",
+      "buildReason": "no live worker + owner idle 36h ⇒ recommend done-candidate",
+      "disposition": "hold-policy",
+      "collide": false,
+      "steveGated": true,
+      "approvalLane": "hold-policy",
+      "approvalReasons": [
+        "email",
+        "external-action",
+        "blocker:steve-gated"
+      ],
+      "why": [
+        "P0-keyword",
+        "stale-build-36h"
+      ],
+      "title": "Dust2026 'go on both': send Tesla support ticket + activate Smartcar garage on chargeandexplore"
+    },
+    {
+      "id": "TK-10900-sku-dw-sku-code-recovery-program-15-577",
+      "tier": "P1",
+      "score": 96,
+      "status": "doing",
+      "assignee": "vp-dw-commerce",
+      "ageH": 32.2,
+      "stale": true,
+      "live": true,
+      "buildVerdict": "nudge",
+      "buildReason": "alive (owner active/worker up) but no ticket update in 32h — ask owner to update or dispose",
+      "disposition": "hold-policy",
+      "collide": false,
+      "steveGated": true,
+      "approvalLane": "hold-policy",
+      "approvalReasons": [
+        "external-action",
+        "blocker:steve-gated"
+      ],
+      "why": [
+        "P1-keyword",
+        "stale-build-32h"
+      ],
+      "title": "SKU dw_sku code-RECOVERY program (15,577 blank, NO minting) — re-scrape/link/dedup"
+    },
+    {
+      "id": "TK-11088-full-onboard-phillip-jeffries-line-dwpj",
+      "tier": "P1",
+      "score": 66,
+      "status": "doing",
+      "assignee": "vp-dw-commerce",
+      "ageH": 35.6,
+      "stale": true,
+      "live": true,
+      "buildVerdict": "nudge",
+      "buildReason": "alive (owner active/worker up) but no ticket update in 36h — ask owner to update or dispose",
+      "disposition": "nudge-owner",
+      "collide": false,
+      "steveGated": false,
+      "approvalLane": "standard",
+      "approvalReasons": [],
+      "why": [
+        "P2-keyword",
+        "stale-build-36h"
+      ],
+      "title": "Full onboard Phillip Jeffries line (DWPJ) — reconcile full PJ website catalog vs ~1046 live, backfill desc+specs, logo-as-image, draft-ready"
+    },
+    {
+      "id": "TK-11103-sanderson-daily-batch-sh-node-unbound-va",
+      "tier": "P1",
+      "score": 66,
+      "status": "doing",
+      "assignee": "vp-dw-commerce",
+      "ageH": 35.3,
+      "stale": true,
+      "live": true,
+      "buildVerdict": "nudge",
+      "buildReason": "alive (owner active/worker up) but no ticket update in 35h — ask owner to update or dispose",
+      "disposition": "nudge-owner",
+      "collide": false,
+      "steveGated": false,
+      "approvalLane": "standard",
+      "approvalReasons": [],
+      "why": [
+        "P2-keyword",
+        "stale-build-35h"
+      ],
+      "title": "Sanderson daily-batch.sh NODE unbound var (line 14) — fix + verify autopilot advances"
+    },
+    {
+      "id": "TK-11068-sanderson-na-per-colorway-featured-image",
+      "tier": "P2",
+      "score": 41,
+      "status": "doing",
+      "assignee": "vp-dw-commerce",
+      "ageH": 58.4,
+      "stale": true,
+      "live": true,
+      "buildVerdict": "nudge",
+      "buildReason": "alive (owner active/worker up) but no ticket update in 58h — ask owner to update or dispose",
+      "disposition": "nudge-owner",
+      "collide": false,
+      "steveGated": false,
+      "approvalLane": "standard",
+      "approvalReasons": [],
+      "why": [
+        "stale-build-58h"
+      ],
+      "title": "Sanderson NA per-colorway featured-image fix (Cycle 2)"
+    },
+    {
+      "id": "TK-11070-sanderson-dallimore-colorway-dump-bug-fl",
+      "tier": "P2",
+      "score": 41,
+      "status": "doing",
+      "assignee": "vp-dw-commerce",
+      "ageH": 50.3,
+      "stale": true,
+      "live": true,
+      "buildVerdict": "nudge",
+      "buildReason": "alive (owner active/worker up) but no ticket update in 50h — ask owner to update or dispose",
+      "disposition": "hold-policy",
+      "collide": false,
+      "steveGated": true,
+      "approvalLane": "hold-policy",
+      "approvalReasons": [
+        "external-action"
+      ],
+      "why": [
+        "stale-build-50h"
+      ],
+      "title": "Sanderson Dallimore colorway-dump bug + fleet blast radius (TK-11065 class)"
+    },
+    {
+      "id": "TK-11089-phillip-jeffries-full-line-onboard-stand",
+      "tier": "P2",
+      "score": 41,
+      "status": "doing",
+      "assignee": "vp-dw-commerce",
+      "ageH": 37.1,
+      "stale": true,
+      "live": true,
+      "buildVerdict": "nudge",
+      "buildReason": "alive (owner active/worker up) but no ticket update in 37h — ask owner to update or dispose",
+      "disposition": "hold-policy",
+      "collide": false,
+      "steveGated": true,
+      "approvalLane": "hold-policy",
+      "approvalReasons": [
+        "external-action"
+      ],
+      "why": [
+        "stale-build-37h"
+      ],
+      "title": "Phillip Jeffries full-line onboard + standardization (logo-featured, images-to-dw_unified-for-social, showroom CTA, quote-only, auto-activate complete)"
+    }
+  ],
+  "top": [
+    {
+      "id": "TK-10142-dust2026-go-on-both-send-tesla-support-t",
+      "tier": "P0",
+      "score": 141,
+      "status": "doing",
+      "assignee": "claude-mail-companion",
+      "ageH": 36.5,
+      "stale": true,
+      "live": false,
+      "buildVerdict": "done-candidate",
+      "buildReason": "no live worker + owner idle 36h ⇒ recommend done-candidate",
+      "disposition": "hold-policy",
+      "collide": false,
+      "steveGated": true,
+      "approvalLane": "hold-policy",
+      "approvalReasons": [
+        "email",
+        "external-action",
+        "blocker:steve-gated"
+      ],
+      "why": [
+        "P0-keyword",
+        "stale-build-36h"
+      ],
+      "title": "Dust2026 'go on both': send Tesla support ticket + activate Smartcar garage on chargeandexplore"
+    },
+    {
+      "id": "TK-11155-ios-fleet-submission-readiness-sweep-9-a",
+      "tier": "P0",
+      "score": 103,
+      "status": "blocked",
+      "assignee": "claude-run-11155",
+      "ageH": 3,
+      "stale": false,
+      "live": true,
+      "buildVerdict": "ok",
+      "buildReason": "",
+      "disposition": "surface-to-steve",
+      "collide": false,
+      "steveGated": false,
+      "approvalLane": "standard",
+      "approvalReasons": [],
+      "why": [
+        "P0-keyword"
+      ],
+      "title": "iOS fleet submission-readiness sweep (9 apps)"
+    },
+    {
+      "id": "TK-10045-permanent-fix-for-credential-stealer-bre",
+      "tier": "P0",
+      "score": 100,
+      "status": "stopped",
+      "assignee": "claude-run-10045",
+      "ageH": 80.5,
+      "stale": false,
+      "live": false,
+      "buildVerdict": "ok",
+      "buildReason": "",
+      "disposition": "hold-policy",
+      "collide": false,
+      "steveGated": true,
+      "approvalLane": "hold-policy",
+      "approvalReasons": [
+        "blocker:steve-gated"
+      ],
+      "why": [
+        "P0-keyword"
+      ],
+      "title": "Permanent fix for credential-stealer breach class (RCE + secret blast-radius + egress detection)"
+    },
+    {
+      "id": "TK-10900-sku-dw-sku-code-recovery-program-15-577",
+      "tier": "P1",
+      "score": 96,
+      "status": "doing",
+      "assignee": "vp-dw-commerce",
+      "ageH": 32.2,
+      "stale": true,
+      "live": true,
+      "buildVerdict": "nudge",
+      "buildReason": "alive (owner active/worker up) but no ticket update in 32h — ask owner to update or dispose",
+      "disposition": "hold-policy",
+      "collide": false,
+      "steveGated": true,
+      "approvalLane": "hold-policy",
+      "approvalReasons": [
+        "external-action",
+        "blocker:steve-gated"
+      ],
+      "why": [
+        "P1-keyword",
+        "stale-build-32h"
+      ],
+      "title": "SKU dw_sku code-RECOVERY program (15,577 blank, NO minting) — re-scrape/link/dedup"
+    },
+    {
+      "id": "TK-11200-guard-the-per-domain-microsite-generator",
+      "tier": "P1",
+      "score": 68,
+      "status": "open",
+      "assignee": "vp-dw-commerce",
+      "ageH": 7.6,
+      "stale": false,
+      "live": true,
+      "buildVerdict": "ok",
+      "buildReason": "",
+      "disposition": "hold-policy",
+      "collide": false,
+      "steveGated": true,
+      "approvalLane": "hold-policy",
+      "approvalReasons": [
+        "external-action"
+      ],
+      "why": [
+        "P1-keyword",
+        "open"
+      ],
+      "title": "Guard the per-domain microsite generator with isShowroomVendor (PJ/showroom suppression on the ~209 /var/www fleet)"
+    },
+    {
+      "id": "TK-11088-full-onboard-phillip-jeffries-line-dwpj",
+      "tier": "P1",
+      "score": 66,
+      "status": "doing",
+      "assignee": "vp-dw-commerce",
+      "ageH": 35.6,
+      "stale": true,
+      "live": true,
+      "buildVerdict": "nudge",
+      "buildReason": "alive (owner active/worker up) but no ticket update in 36h — ask owner to update or dispose",
+      "disposition": "nudge-owner",
+      "collide": false,
+      "steveGated": false,
+      "approvalLane": "standard",
+      "approvalReasons": [],
+      "why": [
+        "P2-keyword",
+        "stale-build-36h"
+      ],
+      "title": "Full onboard Phillip Jeffries line (DWPJ) — reconcile full PJ website catalog vs ~1046 live, backfill desc+specs, logo-as-image, draft-ready"
+    },
+    {
+      "id": "TK-11103-sanderson-daily-batch-sh-node-unbound-va",
+      "tier": "P1",
+      "score": 66,
+      "status": "doing",
+      "assignee": "vp-dw-commerce",
+      "ageH": 35.3,
+      "stale": true,
+      "live": true,
+      "buildVerdict": "nudge",
+      "buildReason": "alive (owner active/worker up) but no ticket update in 35h — ask owner to update or dispose",
+      "disposition": "nudge-owner",
+      "collide": false,
+      "steveGated": false,
+      "approvalLane": "standard",
+      "approvalReasons": [],
+      "why": [
+        "P2-keyword",
+        "stale-build-35h"
+      ],
+      "title": "Sanderson daily-batch.sh NODE unbound var (line 14) — fix + verify autopilot advances"
+    },
+    {
+      "id": "TK-11193-showroom-line-leak-pj-into-google-feed-n",
+      "tier": "P1",
+      "score": 61,
+      "status": "doing",
+      "assignee": "showroom-line-steward",
+      "ageH": 8.1,
+      "stale": false,
+      "live": true,
+      "buildVerdict": "ok",
+      "buildReason": "",
+      "disposition": "hold-policy",
+      "collide": false,
+      "steveGated": true,
+      "approvalLane": "hold-policy",
+      "approvalReasons": [
+        "external-action"
+      ],
+      "why": [
+        "P1-keyword"
+      ],
+      "title": "Showroom-line leak: PJ into google-feed + new-arrivals + trending + grids — confirm live + draft gated enforcement"
+    },
+    {
+      "id": "TK-10758-stop-sassy-reposts-of-others-content-era",
+      "tier": "P1",
+      "score": 58,
+      "status": "blocked",
+      "assignee": "claude-run-10573",
+      "ageH": 82.5,
+      "stale": false,
+      "live": false,
+      "buildVerdict": "ok",
+      "buildReason": "",
+      "disposition": "hold-policy",
+      "collide": false,
+      "steveGated": true,
+      "approvalLane": "hold-policy",
+      "approvalReasons": [
+        "external-action",
+        "blocker:steve-gated"
+      ],
+      "why": [
+        "P1-keyword"
+      ],
+      "title": "Stop sassy reposts of others' content + erase existing ones across all IG accts"
+    },
+    {
+      "id": "TK-10866-novasuede-color-post-rotation-exclusion",
+      "tier": "P1",
+      "score": 58,
+      "status": "blocked",
+      "assignee": "vp-dw-marketing",
+      "ageH": 82.5,
+      "stale": false,
+      "live": false,
+      "buildVerdict": "ok",
+      "buildReason": "",
+      "disposition": "hold-policy",
+      "collide": false,
+      "steveGated": true,
+      "approvalLane": "hold-policy",
+      "approvalReasons": [
+        "external-action",
+        "blocker:steve-gated"
+      ],
+      "why": [
+        "P1-keyword"
+      ],
+      "title": "Novasuede color-post: rotation exclusion (drop designerwallcoverings), SKU-swatch creative, cleanup jewelry/room photos"
+    },
+    {
+      "id": "TK-10899-pj-fall-2026-mailer-go-live-gated-send-t",
+      "tier": "P1",
+      "score": 58,
+      "status": "blocked",
+      "assignee": "approval-officer",
+      "ageH": 82.5,
+      "stale": false,
+      "live": false,
+      "buildVerdict": "ok",
+      "buildReason": "",
+      "disposition": "hold-policy",
+      "collide": false,
+      "steveGated": true,
+      "approvalLane": "hold-policy",
+      "approvalReasons": [
+        "email",
+        "external-action",
+        "blocker:steve-gated"
+      ],
+      "why": [
+        "P1-keyword"
+      ],
+      "title": "PJ Fall 2026 mailer go-live — GATED (send-to-list), HELD for Steve"
+    },
+    {
+      "id": "TK-11050-reconcile-versa-catalog-mac2-kamatera-di",
+      "tier": "P1",
+      "score": 58,
+      "status": "blocked",
+      "assignee": "claude-run-11050",
+      "ageH": 9,
+      "stale": false,
+      "live": false,
+      "buildVerdict": "ok",
+      "buildReason": "",
+      "disposition": "hold-policy",
+      "collide": false,
+      "steveGated": true,
+      "approvalLane": "hold-policy",
+      "approvalReasons": [
+        "external-action"
+      ],
+      "why": [
+        "P1-keyword"
+      ],
+      "title": "Reconcile versa_catalog Mac2<->Kamatera divergence (1745 vs 2423, REVIEW-flagged)"
+    },
+    {
+      "id": "TK-10993-gmc-degraded-remediation-durable-feed-co",
+      "tier": "P1",
+      "score": 58,
+      "status": "blocked",
+      "assignee": "claude-run-10993",
+      "ageH": 0.8,
+      "stale": false,
+      "live": true,
+      "buildVerdict": "ok",
+      "buildReason": "",
+      "disposition": "hold-policy",
+      "collide": false,
+      "steveGated": true,
+      "approvalLane": "hold-policy",
+      "approvalReasons": [
+        "external-action",
+        "blocker:steve-gated"
+      ],
+      "why": [
+        "P1-keyword"
+      ],
+      "title": "GMC DEGRADED remediation — durable feed-config fix + consolidate approval memos"
+    },
+    {
+      "id": "TK-10387-dust2026-build-4-ios-apps",
+      "tier": "P1",
+      "score": 58,
+      "status": "blocked",
+      "assignee": "claude-run-10387",
+      "ageH": 0.5,
+      "stale": false,
+      "live": true,
+      "buildVerdict": "ok",
+      "buildReason": "",
+      "disposition": "hold-policy",
+      "collide": false,
+      "steveGated": true,
+      "approvalLane": "hold-policy",
+      "approvalReasons": [
+        "external-action",
+        "blocker:steve-gated"
+      ],
+      "why": [
+        "P1-keyword"
+      ],
+      "title": "dust2026: build 4 iOS apps"
+    },
+    {
+      "id": "TK-10875-fleet-sizing-29-561-unbuyable-products-1",
+      "tier": "P1",
+      "score": 55,
+      "status": "stopped",
+      "assignee": "vp-dw-commerce",
+      "ageH": 82.5,
+      "stale": false,
+      "live": true,
+      "buildVerdict": "ok",
+      "buildReason": "",
+      "disposition": "surface-to-steve",
+      "collide": false,
+      "steveGated": false,
+      "approvalLane": "standard",
+      "approvalReasons": [],
+      "why": [
+        "P1-keyword"
+      ],
+      "title": "Fleet sizing: 29,561 unbuyable products (~17,400 genuine revenue hole) — classify cost-availability + pilot sellable-variant recovery"
+    },
+    {
+      "id": "TK-10346-costa-rica-directory-booking-payment-mar",
+      "tier": "P1",
+      "score": 55,
+      "status": "stopped",
+      "assignee": "cra-app",
+      "ageH": 80.5,
+      "stale": false,
+      "live": false,
+      "buildVerdict": "ok",
+      "buildReason": "",
+      "disposition": "hold-policy",
+      "collide": false,
+      "steveGated": true,
+      "approvalLane": "hold-policy",
+      "approvalReasons": [
+        "blocker:steve-gated"
+      ],
+      "why": [
+        "P1-keyword"
+      ],
+      "title": "Costa Rica: directory→booking→payment marketplace app (Expo + Tilopay/SINPE + Plaid + WhatsApp Cloud API)"
+    },
+    {
+      "id": "TK-11068-sanderson-na-per-colorway-featured-image",
+      "tier": "P2",
+      "score": 41,
+      "status": "doing",
+      "assignee": "vp-dw-commerce",
+      "ageH": 58.4,
+      "stale": true,
+      "live": true,
+      "buildVerdict": "nudge",
+      "buildReason": "alive (owner active/worker up) but no ticket update in 58h — ask owner to update or dispose",
+      "disposition": "nudge-owner",
+      "collide": false,
+      "steveGated": false,
+      "approvalLane": "standard",
+      "approvalReasons": [],
+      "why": [
+        "stale-build-58h"
+      ],
+      "title": "Sanderson NA per-colorway featured-image fix (Cycle 2)"
+    },
+    {
+      "id": "TK-11070-sanderson-dallimore-colorway-dump-bug-fl",
+      "tier": "P2",
+      "score": 41,
+      "status": "doing",
+      "assignee": "vp-dw-commerce",
+      "ageH": 50.3,
+      "stale": true,
+      "live": true,
+      "buildVerdict": "nudge",
+      "buildReason": "alive (owner active/worker up) but no ticket update in 50h — ask owner to update or dispose",
+      "disposition": "hold-policy",
+      "collide": false,
+      "steveGated": true,
+      "approvalLane": "hold-policy",
+      "approvalReasons": [
+        "external-action"
+      ],
+      "why": [
+        "stale-build-50h"
+      ],
+      "title": "Sanderson Dallimore colorway-dump bug + fleet blast radius (TK-11065 class)"
+    },
+    {
+      "id": "TK-11089-phillip-jeffries-full-line-onboard-stand",
+      "tier": "P2",
+      "score": 41,
+      "status": "doing",
+      "assignee": "vp-dw-commerce",
+      "ageH": 37.1,
+      "stale": true,
+      "live": true,
+      "buildVerdict": "nudge",
+      "buildReason": "alive (owner active/worker up) but no ticket update in 37h — ask owner to update or dispose",
+      "disposition": "hold-policy",
+      "collide": false,
+      "steveGated": true,
+      "approvalLane": "hold-policy",
+      "approvalReasons": [
+        "external-action"
+      ],
+      "why": [
+        "stale-build-37h"
+      ],
+      "title": "Phillip Jeffries full-line onboard + standardization (logo-featured, images-to-dw_unified-for-social, showroom CTA, quote-only, auto-activate complete)"
+    },
+    {
+      "id": "TK-11201-sdg-publish-cadence-launchd-com-steve-sd",
+      "tier": "P2",
+      "score": 38,
+      "status": "open",
+      "assignee": "vp-dw-commerce",
+      "ageH": 7.6,
+      "stale": false,
+      "live": true,
+      "buildVerdict": "ok",
+      "buildReason": "",
+      "disposition": "hold-policy",
+      "collide": false,
+      "steveGated": true,
+      "approvalLane": "hold-policy",
+      "approvalReasons": [
+        "external-action"
+      ],
+      "why": [
+        "P2-keyword",
+        "open"
+      ],
+      "title": "SDG publish cadence (launchd com.steve.sdg-publish-cadence) — track the daily 04:30 auto-drain of the SHZ backlog"
+    },
+    {
+      "id": "TK-11127-resolve-5-held-catalog-forks-carnegie-ne",
+      "tier": "P2",
+      "score": 28,
+      "status": "blocked",
+      "assignee": "claude-run-11050",
+      "ageH": 28.5,
+      "stale": false,
+      "live": false,
+      "buildVerdict": "ok",
+      "buildReason": "",
+      "disposition": "hold-policy",
+      "collide": false,
+      "steveGated": true,
+      "approvalLane": "hold-policy",
+      "approvalReasons": [
+        "blocker:steve-gated"
+      ],
+      "why": [
+        "P2-keyword"
+      ],
+      "title": "Resolve 5 held catalog forks (Carnegie/Newwall/PhilRomano/Harlequin/Novasuede) — per-vendor keep-rule + canonical direction"
+    },
+    {
+      "id": "TK-10484-re-onboard-jeffrey-stevens-peel-and-stic",
+      "tier": "P2",
+      "score": 25,
+      "status": "stopped",
+      "assignee": "jstevens-reonboard",
+      "ageH": 78.4,
+      "stale": false,
+      "live": false,
+      "buildVerdict": "ok",
+      "buildReason": "",
+      "disposition": "hold-policy",
+      "collide": false,
+      "steveGated": true,
+      "approvalLane": "hold-policy",
+      "approvalReasons": [
+        "blocker:steve-gated"
+      ],
+      "why": [
+        "P2-keyword"
+      ],
+      "title": "Re-onboard Jeffrey Stevens peel-and-stick + interlocking floor-tile line (5 DWAA warm-start)"
+    },
+    {
+      "id": "TK-10896-sku-canonical-dw-sku-backlog-33-946-acti",
+      "tier": "P2",
+      "score": 25,
+      "status": "stopped",
+      "assignee": "vp-dw-commerce",
+      "ageH": 50.3,
+      "stale": false,
+      "live": true,
+      "buildVerdict": "ok",
+      "buildReason": "",
+      "disposition": "hold-policy",
+      "collide": false,
+      "steveGated": true,
+      "approvalLane": "hold-policy",
+      "approvalReasons": [
+        "external-action",
+        "blocker:steve-gated"
+      ],
+      "why": [
+        "P2-keyword"
+      ],
+      "title": "SKU canonical-dw_sku backlog (33,946 active-blank) — 4-phase plan"
+    },
+    {
+      "id": "TK-10928-cron-issue-com-steve-dw-backup-canary",
+      "tier": "P2",
+      "score": 25,
+      "status": "open",
+      "assignee": "codex-yoloforever",
+      "ageH": 0.2,
+      "stale": false,
+      "live": true,
+      "buildVerdict": "ok",
+      "buildReason": "",
+      "disposition": "hold-policy",
+      "collide": true,
+      "steveGated": true,
+      "approvalLane": "hold-policy",
+      "approvalReasons": [
+        "external-action",
+        "blocker:steve-gated"
+      ],
+      "why": [
+        "open"
+      ],
+      "title": "Cron issue: com.steve.dw-backup-canary"
+    },
+    {
+      "id": "TK-11175-gmc-content-api-for-shopping-sunset-migr",
+      "tier": "P3",
+      "score": 13,
+      "status": "open",
+      "assignee": "claude-yoloforever",
+      "ageH": 11.8,
+      "stale": false,
+      "live": true,
+      "buildVerdict": "ok",
+      "buildReason": "",
+      "disposition": "hold-policy",
+      "collide": false,
+      "steveGated": true,
+      "approvalLane": "hold-policy",
+      "approvalReasons": [
+        "external-action"
+      ],
+      "why": [
+        "open"
+      ],
+      "title": "GMC Content API for Shopping SUNSET — migrate google-merchant-agent delete/feed tooling to Merchant API"
+    }
+  ]
+}
diff --git a/data/codex-yoloforever/evidence/TK-11209-codex-yf-20260903T2054Z/snapshot.raw.base64 b/data/codex-yoloforever/evidence/TK-11209-codex-yf-20260903T2054Z/snapshot.raw.base64
new file mode 100644
index 00000000..a3f3b075
--- /dev/null
+++ b/data/codex-yoloforever/evidence/TK-11209-codex-yf-20260903T2054Z/snapshot.raw.base64
@@ -0,0 +1 @@
+ewogICJ0cyI6ICIyMDI2LTA5LTA0VDAzOjUzOjMyLjM0MVoiLAogICJwb2xsZXIiOiAidGlja2V0bWFzdGVyL3BvbGwuanMiLAogICJ0b3RhbHMiOiB7CiAgICAib3Blbl9vcl9hY3RpdmUiOiA1NiwKICAgICJQMCI6IDMsCiAgICAiUDEiOiAxMywKICAgICJQMiI6IDgsCiAgICAiUDMiOiAzMiwKICAgICJzdGFsZV9idWlsZHMiOiA3CiAgfSwKICAibmVlZHNfb3JjaGVzdHJhdGlvbiI6IHRydWUsCiAgIm9yY2hlc3RyYXRpb25fcmVhc29ucyI6IHsKICAgICJwMF9wMSI6IDQsCiAgICAic3RhbGVfZGVhZCI6IDEsCiAgICAiYWN0aW9uYWJsZV9waWNrdXBzIjogMCwKICAgICJpbmJveF9kbXMiOiAwCiAgfSwKICAibnVkZ2VzX3NlbnRfdGhpc190aWNrIjogWwogICAgIlRLLTExMDg5LXBoaWxsaXAtamVmZnJpZXMtZnVsbC1saW5lLW9uYm9hcmQtc3RhbmQiCiAgXSwKICAic3RhbGVfYnVpbGRzIjogWwogICAgewogICAgICAiaWQiOiAiVEstMTAxNDItZHVzdDIwMjYtZ28tb24tYm90aC1zZW5kLXRlc2xhLXN1cHBvcnQtdCIsCiAgICAgICJ0aWVyIjogIlAwIiwKICAgICAgInNjb3JlIjogMTQxLAogICAgICAic3RhdHVzIjogImRvaW5nIiwKICAgICAgImFzc2lnbmVlIjogImNsYXVkZS1tYWlsLWNvbXBhbmlvbiIsCiAgICAgICJhZ2VIIjogMzYuNSwKICAgICAgInN0YWxlIjogdHJ1ZSwKICAgICAgImxpdmUiOiBmYWxzZSwKICAgICAgImJ1aWxkVmVyZGljdCI6ICJkb25lLWNhbmRpZGF0ZSIsCiAgICAgICJidWlsZFJlYXNvbiI6ICJubyBsaXZlIHdvcmtlciArIG93bmVyIGlkbGUgMzZoIOKHkiByZWNvbW1lbmQgZG9uZS1jYW5kaWRhdGUiLAogICAgICAiZGlzcG9zaXRpb24iOiAiaG9sZC1wb2xpY3kiLAogICAgICAiY29sbGlkZSI6IGZhbHNlLAogICAgICAic3RldmVHYXRlZCI6IHRydWUsCiAgICAgICJhcHByb3ZhbExhbmUiOiAiaG9sZC1wb2xpY3kiLAogICAgICAiYXBwcm92YWxSZWFzb25zIjogWwogICAgICAgICJlbWFpbCIsCiAgICAgICAgImV4dGVybmFsLWFjdGlvbiIsCiAgICAgICAgImJsb2NrZXI6c3RldmUtZ2F0ZWQiCiAgICAgIF0sCiAgICAgICJ3aHkiOiBbCiAgICAgICAgIlAwLWtleXdvcmQiLAogICAgICAgICJzdGFsZS1idWlsZC0zNmgiCiAgICAgIF0sCiAgICAgICJ0aXRsZSI6ICJEdXN0MjAyNiAnZ28gb24gYm90aCc6IHNlbmQgVGVzbGEgc3VwcG9ydCB0aWNrZXQgKyBhY3RpdmF0ZSBTbWFydGNhciBnYXJhZ2Ugb24gY2hhcmdlYW5kZXhwbG9yZSIKICAgIH0sCiAgICB7CiAgICAgICJpZCI6ICJUSy0xMDkwMC1za3UtZHctc2t1LWNvZGUtcmVjb3ZlcnktcHJvZ3JhbS0xNS01NzciLAogICAgICAidGllciI6ICJQMSIsCiAgICAgICJzY29yZSI6IDk2LAogICAgICAic3RhdHVzIjogImRvaW5nIiwKICAgICAgImFzc2lnbmVlIjogInZwLWR3LWNvbW1lcmNlIiwKICAgICAgImFnZUgiOiAzMi4yLAogICAgICAic3RhbGUiOiB0cnVlLAogICAgICAibGl2ZSI6IHRydWUsCiAgICAgICJidWlsZFZlcmRpY3QiOiAibnVkZ2UiLAogICAgICAiYnVpbGRSZWFzb24iOiAiYWxpdmUgKG93bmVyIGFjdGl2ZS93b3JrZXIgdXApIGJ1dCBubyB0aWNrZXQgdXBkYXRlIGluIDMyaCDigJQgYXNrIG93bmVyIHRvIHVwZGF0ZSBvciBkaXNwb3NlIiwKICAgICAgImRpc3Bvc2l0aW9uIjogImhvbGQtcG9saWN5IiwKICAgICAgImNvbGxpZGUiOiBmYWxzZSwKICAgICAgInN0ZXZlR2F0ZWQiOiB0cnVlLAogICAgICAiYXBwcm92YWxMYW5lIjogImhvbGQtcG9saWN5IiwKICAgICAgImFwcHJvdmFsUmVhc29ucyI6IFsKICAgICAgICAiZXh0ZXJuYWwtYWN0aW9uIiwKICAgICAgICAiYmxvY2tlcjpzdGV2ZS1nYXRlZCIKICAgICAgXSwKICAgICAgIndoeSI6IFsKICAgICAgICAiUDEta2V5d29yZCIsCiAgICAgICAgInN0YWxlLWJ1aWxkLTMyaCIKICAgICAgXSwKICAgICAgInRpdGxlIjogIlNLVSBkd19za3UgY29kZS1SRUNPVkVSWSBwcm9ncmFtICgxNSw1NzcgYmxhbmssIE5PIG1pbnRpbmcpIOKAlCByZS1zY3JhcGUvbGluay9kZWR1cCIKICAgIH0sCiAgICB7CiAgICAgICJpZCI6ICJUSy0xMTA4OC1mdWxsLW9uYm9hcmQtcGhpbGxpcC1qZWZmcmllcy1saW5lLWR3cGoiLAogICAgICAidGllciI6ICJQMSIsCiAgICAgICJzY29yZSI6IDY2LAogICAgICAic3RhdHVzIjogImRvaW5nIiwKICAgICAgImFzc2lnbmVlIjogInZwLWR3LWNvbW1lcmNlIiwKICAgICAgImFnZUgiOiAzNS42LAogICAgICAic3RhbGUiOiB0cnVlLAogICAgICAibGl2ZSI6IHRydWUsCiAgICAgICJidWlsZFZlcmRpY3QiOiAibnVkZ2UiLAogICAgICAiYnVpbGRSZWFzb24iOiAiYWxpdmUgKG93bmVyIGFjdGl2ZS93b3JrZXIgdXApIGJ1dCBubyB0aWNrZXQgdXBkYXRlIGluIDM2aCDigJQgYXNrIG93bmVyIHRvIHVwZGF0ZSBvciBkaXNwb3NlIiwKICAgICAgImRpc3Bvc2l0aW9uIjogIm51ZGdlLW93bmVyIiwKICAgICAgImNvbGxpZGUiOiBmYWxzZSwKICAgICAgInN0ZXZlR2F0ZWQiOiBmYWxzZSwKICAgICAgImFwcHJvdmFsTGFuZSI6ICJzdGFuZGFyZCIsCiAgICAgICJhcHByb3ZhbFJlYXNvbnMiOiBbXSwKICAgICAgIndoeSI6IFsKICAgICAgICAiUDIta2V5d29yZCIsCiAgICAgICAgInN0YWxlLWJ1aWxkLTM2aCIKICAgICAgXSwKICAgICAgInRpdGxlIjogIkZ1bGwgb25ib2FyZCBQaGlsbGlwIEplZmZyaWVzIGxpbmUgKERXUEopIOKAlCByZWNvbmNpbGUgZnVsbCBQSiB3ZWJzaXRlIGNhdGFsb2cgdnMgfjEwNDYgbGl2ZSwgYmFja2ZpbGwgZGVzYytzcGVjcywgbG9nby1hcy1pbWFnZSwgZHJhZnQtcmVhZHkiCiAgICB9LAogICAgewogICAgICAiaWQiOiAiVEstMTExMDMtc2FuZGVyc29uLWRhaWx5LWJhdGNoLXNoLW5vZGUtdW5ib3VuZC12YSIsCiAgICAgICJ0aWVyIjogIlAxIiwKICAgICAgInNjb3JlIjogNjYsCiAgICAgICJzdGF0dXMiOiAiZG9pbmciLAogICAgICAiYXNzaWduZWUiOiAidnAtZHctY29tbWVyY2UiLAogICAgICAiYWdlSCI6IDM1LjMsCiAgICAgICJzdGFsZSI6IHRydWUsCiAgICAgICJsaXZlIjogdHJ1ZSwKICAgICAgImJ1aWxkVmVyZGljdCI6ICJudWRnZSIsCiAgICAgICJidWlsZFJlYXNvbiI6ICJhbGl2ZSAob3duZXIgYWN0aXZlL3dvcmtlciB1cCkgYnV0IG5vIHRpY2tldCB1cGRhdGUgaW4gMzVoIOKAlCBhc2sgb3duZXIgdG8gdXBkYXRlIG9yIGRpc3Bvc2UiLAogICAgICAiZGlzcG9zaXRpb24iOiAibnVkZ2Utb3duZXIiLAogICAgICAiY29sbGlkZSI6IGZhbHNlLAogICAgICAic3RldmVHYXRlZCI6IGZhbHNlLAogICAgICAiYXBwcm92YWxMYW5lIjogInN0YW5kYXJkIiwKICAgICAgImFwcHJvdmFsUmVhc29ucyI6IFtdLAogICAgICAid2h5IjogWwogICAgICAgICJQMi1rZXl3b3JkIiwKICAgICAgICAic3RhbGUtYnVpbGQtMzVoIgogICAgICBdLAogICAgICAidGl0bGUiOiAiU2FuZGVyc29uIGRhaWx5LWJhdGNoLnNoIE5PREUgdW5ib3VuZCB2YXIgKGxpbmUgMTQpIOKAlCBmaXggKyB2ZXJpZnkgYXV0b3BpbG90IGFkdmFuY2VzIgogICAgfSwKICAgIHsKICAgICAgImlkIjogIlRLLTExMDY4LXNhbmRlcnNvbi1uYS1wZXItY29sb3J3YXktZmVhdHVyZWQtaW1hZ2UiLAogICAgICAidGllciI6ICJQMiIsCiAgICAgICJzY29yZSI6IDQxLAogICAgICAic3RhdHVzIjogImRvaW5nIiwKICAgICAgImFzc2lnbmVlIjogInZwLWR3LWNvbW1lcmNlIiwKICAgICAgImFnZUgiOiA1OC40LAogICAgICAic3RhbGUiOiB0cnVlLAogICAgICAibGl2ZSI6IHRydWUsCiAgICAgICJidWlsZFZlcmRpY3QiOiAibnVkZ2UiLAogICAgICAiYnVpbGRSZWFzb24iOiAiYWxpdmUgKG93bmVyIGFjdGl2ZS93b3JrZXIgdXApIGJ1dCBubyB0aWNrZXQgdXBkYXRlIGluIDU4aCDigJQgYXNrIG93bmVyIHRvIHVwZGF0ZSBvciBkaXNwb3NlIiwKICAgICAgImRpc3Bvc2l0aW9uIjogIm51ZGdlLW93bmVyIiwKICAgICAgImNvbGxpZGUiOiBmYWxzZSwKICAgICAgInN0ZXZlR2F0ZWQiOiBmYWxzZSwKICAgICAgImFwcHJvdmFsTGFuZSI6ICJzdGFuZGFyZCIsCiAgICAgICJhcHByb3ZhbFJlYXNvbnMiOiBbXSwKICAgICAgIndoeSI6IFsKICAgICAgICAic3RhbGUtYnVpbGQtNThoIgogICAgICBdLAogICAgICAidGl0bGUiOiAiU2FuZGVyc29uIE5BIHBlci1jb2xvcndheSBmZWF0dXJlZC1pbWFnZSBmaXggKEN5Y2xlIDIpIgogICAgfSwKICAgIHsKICAgICAgImlkIjogIlRLLTExMDcwLXNhbmRlcnNvbi1kYWxsaW1vcmUtY29sb3J3YXktZHVtcC1idWctZmwiLAogICAgICAidGllciI6ICJQMiIsCiAgICAgICJzY29yZSI6IDQxLAogICAgICAic3RhdHVzIjogImRvaW5nIiwKICAgICAgImFzc2lnbmVlIjogInZwLWR3LWNvbW1lcmNlIiwKICAgICAgImFnZUgiOiA1MC4zLAogICAgICAic3RhbGUiOiB0cnVlLAogICAgICAibGl2ZSI6IHRydWUsCiAgICAgICJidWlsZFZlcmRpY3QiOiAibnVkZ2UiLAogICAgICAiYnVpbGRSZWFzb24iOiAiYWxpdmUgKG93bmVyIGFjdGl2ZS93b3JrZXIgdXApIGJ1dCBubyB0aWNrZXQgdXBkYXRlIGluIDUwaCDigJQgYXNrIG93bmVyIHRvIHVwZGF0ZSBvciBkaXNwb3NlIiwKICAgICAgImRpc3Bvc2l0aW9uIjogImhvbGQtcG9saWN5IiwKICAgICAgImNvbGxpZGUiOiBmYWxzZSwKICAgICAgInN0ZXZlR2F0ZWQiOiB0cnVlLAogICAgICAiYXBwcm92YWxMYW5lIjogImhvbGQtcG9saWN5IiwKICAgICAgImFwcHJvdmFsUmVhc29ucyI6IFsKICAgICAgICAiZXh0ZXJuYWwtYWN0aW9uIgogICAgICBdLAogICAgICAid2h5IjogWwogICAgICAgICJzdGFsZS1idWlsZC01MGgiCiAgICAgIF0sCiAgICAgICJ0aXRsZSI6ICJTYW5kZXJzb24gRGFsbGltb3JlIGNvbG9yd2F5LWR1bXAgYnVnICsgZmxlZXQgYmxhc3QgcmFkaXVzIChUSy0xMTA2NSBjbGFzcykiCiAgICB9LAogICAgewogICAgICAiaWQiOiAiVEstMTEwODktcGhpbGxpcC1qZWZmcmllcy1mdWxsLWxpbmUtb25ib2FyZC1zdGFuZCIsCiAgICAgICJ0aWVyIjogIlAyIiwKICAgICAgInNjb3JlIjogNDEsCiAgICAgICJzdGF0dXMiOiAiZG9pbmciLAogICAgICAiYXNzaWduZWUiOiAidnAtZHctY29tbWVyY2UiLAogICAgICAiYWdlSCI6IDM3LjEsCiAgICAgICJzdGFsZSI6IHRydWUsCiAgICAgICJsaXZlIjogdHJ1ZSwKICAgICAgImJ1aWxkVmVyZGljdCI6ICJudWRnZSIsCiAgICAgICJidWlsZFJlYXNvbiI6ICJhbGl2ZSAob3duZXIgYWN0aXZlL3dvcmtlciB1cCkgYnV0IG5vIHRpY2tldCB1cGRhdGUgaW4gMzdoIOKAlCBhc2sgb3duZXIgdG8gdXBkYXRlIG9yIGRpc3Bvc2UiLAogICAgICAiZGlzcG9zaXRpb24iOiAiaG9sZC1wb2xpY3kiLAogICAgICAiY29sbGlkZSI6IGZhbHNlLAogICAgICAic3RldmVHYXRlZCI6IHRydWUsCiAgICAgICJhcHByb3ZhbExhbmUiOiAiaG9sZC1wb2xpY3kiLAogICAgICAiYXBwcm92YWxSZWFzb25zIjogWwogICAgICAgICJleHRlcm5hbC1hY3Rpb24iCiAgICAgIF0sCiAgICAgICJ3aHkiOiBbCiAgICAgICAgInN0YWxlLWJ1aWxkLTM3aCIKICAgICAgXSwKICAgICAgInRpdGxlIjogIlBoaWxsaXAgSmVmZnJpZXMgZnVsbC1saW5lIG9uYm9hcmQgKyBzdGFuZGFyZGl6YXRpb24gKGxvZ28tZmVhdHVyZWQsIGltYWdlcy10by1kd191bmlmaWVkLWZvci1zb2NpYWwsIHNob3dyb29tIENUQSwgcXVvdGUtb25seSwgYXV0by1hY3RpdmF0ZSBjb21wbGV0ZSkiCiAgICB9CiAgXSwKICAidG9wIjogWwogICAgewogICAgICAiaWQiOiAiVEstMTAxNDItZHVzdDIwMjYtZ28tb24tYm90aC1zZW5kLXRlc2xhLXN1cHBvcnQtdCIsCiAgICAgICJ0aWVyIjogIlAwIiwKICAgICAgInNjb3JlIjogMTQxLAogICAgICAic3RhdHVzIjogImRvaW5nIiwKICAgICAgImFzc2lnbmVlIjogImNsYXVkZS1tYWlsLWNvbXBhbmlvbiIsCiAgICAgICJhZ2VIIjogMzYuNSwKICAgICAgInN0YWxlIjogdHJ1ZSwKICAgICAgImxpdmUiOiBmYWxzZSwKICAgICAgImJ1aWxkVmVyZGljdCI6ICJkb25lLWNhbmRpZGF0ZSIsCiAgICAgICJidWlsZFJlYXNvbiI6ICJubyBsaXZlIHdvcmtlciArIG93bmVyIGlkbGUgMzZoIOKHkiByZWNvbW1lbmQgZG9uZS1jYW5kaWRhdGUiLAogICAgICAiZGlzcG9zaXRpb24iOiAiaG9sZC1wb2xpY3kiLAogICAgICAiY29sbGlkZSI6IGZhbHNlLAogICAgICAic3RldmVHYXRlZCI6IHRydWUsCiAgICAgICJhcHByb3ZhbExhbmUiOiAiaG9sZC1wb2xpY3kiLAogICAgICAiYXBwcm92YWxSZWFzb25zIjogWwogICAgICAgICJlbWFpbCIsCiAgICAgICAgImV4dGVybmFsLWFjdGlvbiIsCiAgICAgICAgImJsb2NrZXI6c3RldmUtZ2F0ZWQiCiAgICAgIF0sCiAgICAgICJ3aHkiOiBbCiAgICAgICAgIlAwLWtleXdvcmQiLAogICAgICAgICJzdGFsZS1idWlsZC0zNmgiCiAgICAgIF0sCiAgICAgICJ0aXRsZSI6ICJEdXN0MjAyNiAnZ28gb24gYm90aCc6IHNlbmQgVGVzbGEgc3VwcG9ydCB0aWNrZXQgKyBhY3RpdmF0ZSBTbWFydGNhciBnYXJhZ2Ugb24gY2hhcmdlYW5kZXhwbG9yZSIKICAgIH0sCiAgICB7CiAgICAgICJpZCI6ICJUSy0xMTE1NS1pb3MtZmxlZXQtc3VibWlzc2lvbi1yZWFkaW5lc3Mtc3dlZXAtOS1hIiwKICAgICAgInRpZXIiOiAiUDAiLAogICAgICAic2NvcmUiOiAxMDMsCiAgICAgICJzdGF0dXMiOiAiYmxvY2tlZCIsCiAgICAgICJhc3NpZ25lZSI6ICJjbGF1ZGUtcnVuLTExMTU1IiwKICAgICAgImFnZUgiOiAzLAogICAgICAic3RhbGUiOiBmYWxzZSwKICAgICAgImxpdmUiOiB0cnVlLAogICAgICAiYnVpbGRWZXJkaWN0IjogIm9rIiwKICAgICAgImJ1aWxkUmVhc29uIjogIiIsCiAgICAgICJkaXNwb3NpdGlvbiI6ICJzdXJmYWNlLXRvLXN0ZXZlIiwKICAgICAgImNvbGxpZGUiOiBmYWxzZSwKICAgICAgInN0ZXZlR2F0ZWQiOiBmYWxzZSwKICAgICAgImFwcHJvdmFsTGFuZSI6ICJzdGFuZGFyZCIsCiAgICAgICJhcHByb3ZhbFJlYXNvbnMiOiBbXSwKICAgICAgIndoeSI6IFsKICAgICAgICAiUDAta2V5d29yZCIKICAgICAgXSwKICAgICAgInRpdGxlIjogImlPUyBmbGVldCBzdWJtaXNzaW9uLXJlYWRpbmVzcyBzd2VlcCAoOSBhcHBzKSIKICAgIH0sCiAgICB7CiAgICAgICJpZCI6ICJUSy0xMDA0NS1wZXJtYW5lbnQtZml4LWZvci1jcmVkZW50aWFsLXN0ZWFsZXItYnJlIiwKICAgICAgInRpZXIiOiAiUDAiLAogICAgICAic2NvcmUiOiAxMDAsCiAgICAgICJzdGF0dXMiOiAic3RvcHBlZCIsCiAgICAgICJhc3NpZ25lZSI6ICJjbGF1ZGUtcnVuLTEwMDQ1IiwKICAgICAgImFnZUgiOiA4MC41LAogICAgICAic3RhbGUiOiBmYWxzZSwKICAgICAgImxpdmUiOiBmYWxzZSwKICAgICAgImJ1aWxkVmVyZGljdCI6ICJvayIsCiAgICAgICJidWlsZFJlYXNvbiI6ICIiLAogICAgICAiZGlzcG9zaXRpb24iOiAiaG9sZC1wb2xpY3kiLAogICAgICAiY29sbGlkZSI6IGZhbHNlLAogICAgICAic3RldmVHYXRlZCI6IHRydWUsCiAgICAgICJhcHByb3ZhbExhbmUiOiAiaG9sZC1wb2xpY3kiLAogICAgICAiYXBwcm92YWxSZWFzb25zIjogWwogICAgICAgICJibG9ja2VyOnN0ZXZlLWdhdGVkIgogICAgICBdLAogICAgICAid2h5IjogWwogICAgICAgICJQMC1rZXl3b3JkIgogICAgICBdLAogICAgICAidGl0bGUiOiAiUGVybWFuZW50IGZpeCBmb3IgY3JlZGVudGlhbC1zdGVhbGVyIGJyZWFjaCBjbGFzcyAoUkNFICsgc2VjcmV0IGJsYXN0LXJhZGl1cyArIGVncmVzcyBkZXRlY3Rpb24pIgogICAgfSwKICAgIHsKICAgICAgImlkIjogIlRLLTEwOTAwLXNrdS1kdy1za3UtY29kZS1yZWNvdmVyeS1wcm9ncmFtLTE1LTU3NyIsCiAgICAgICJ0aWVyIjogIlAxIiwKICAgICAgInNjb3JlIjogOTYsCiAgICAgICJzdGF0dXMiOiAiZG9pbmciLAogICAgICAiYXNzaWduZWUiOiAidnAtZHctY29tbWVyY2UiLAogICAgICAiYWdlSCI6IDMyLjIsCiAgICAgICJzdGFsZSI6IHRydWUsCiAgICAgICJsaXZlIjogdHJ1ZSwKICAgICAgImJ1aWxkVmVyZGljdCI6ICJudWRnZSIsCiAgICAgICJidWlsZFJlYXNvbiI6ICJhbGl2ZSAob3duZXIgYWN0aXZlL3dvcmtlciB1cCkgYnV0IG5vIHRpY2tldCB1cGRhdGUgaW4gMzJoIOKAlCBhc2sgb3duZXIgdG8gdXBkYXRlIG9yIGRpc3Bvc2UiLAogICAgICAiZGlzcG9zaXRpb24iOiAiaG9sZC1wb2xpY3kiLAogICAgICAiY29sbGlkZSI6IGZhbHNlLAogICAgICAic3RldmVHYXRlZCI6IHRydWUsCiAgICAgICJhcHByb3ZhbExhbmUiOiAiaG9sZC1wb2xpY3kiLAogICAgICAiYXBwcm92YWxSZWFzb25zIjogWwogICAgICAgICJleHRlcm5hbC1hY3Rpb24iLAogICAgICAgICJibG9ja2VyOnN0ZXZlLWdhdGVkIgogICAgICBdLAogICAgICAid2h5IjogWwogICAgICAgICJQMS1rZXl3b3JkIiwKICAgICAgICAic3RhbGUtYnVpbGQtMzJoIgogICAgICBdLAogICAgICAidGl0bGUiOiAiU0tVIGR3X3NrdSBjb2RlLVJFQ09WRVJZIHByb2dyYW0gKDE1LDU3NyBibGFuaywgTk8gbWludGluZykg4oCUIHJlLXNjcmFwZS9saW5rL2RlZHVwIgogICAgfSwKICAgIHsKICAgICAgImlkIjogIlRLLTExMjAwLWd1YXJkLXRoZS1wZXItZG9tYWluLW1pY3Jvc2l0ZS1nZW5lcmF0b3IiLAogICAgICAidGllciI6ICJQMSIsCiAgICAgICJzY29yZSI6IDY4LAogICAgICAic3RhdHVzIjogIm9wZW4iLAogICAgICAiYXNzaWduZWUiOiAidnAtZHctY29tbWVyY2UiLAogICAgICAiYWdlSCI6IDcuNiwKICAgICAgInN0YWxlIjogZmFsc2UsCiAgICAgICJsaXZlIjogdHJ1ZSwKICAgICAgImJ1aWxkVmVyZGljdCI6ICJvayIsCiAgICAgICJidWlsZFJlYXNvbiI6ICIiLAogICAgICAiZGlzcG9zaXRpb24iOiAiaG9sZC1wb2xpY3kiLAogICAgICAiY29sbGlkZSI6IGZhbHNlLAogICAgICAic3RldmVHYXRlZCI6IHRydWUsCiAgICAgICJhcHByb3ZhbExhbmUiOiAiaG9sZC1wb2xpY3kiLAogICAgICAiYXBwcm92YWxSZWFzb25zIjogWwogICAgICAgICJleHRlcm5hbC1hY3Rpb24iCiAgICAgIF0sCiAgICAgICJ3aHkiOiBbCiAgICAgICAgIlAxLWtleXdvcmQiLAogICAgICAgICJvcGVuIgogICAgICBdLAogICAgICAidGl0bGUiOiAiR3VhcmQgdGhlIHBlci1kb21haW4gbWljcm9zaXRlIGdlbmVyYXRvciB3aXRoIGlzU2hvd3Jvb21WZW5kb3IgKFBKL3Nob3dyb29tIHN1cHByZXNzaW9uIG9uIHRoZSB+MjA5IC92YXIvd3d3IGZsZWV0KSIKICAgIH0sCiAgICB7CiAgICAgICJpZCI6ICJUSy0xMTA4OC1mdWxsLW9uYm9hcmQtcGhpbGxpcC1qZWZmcmllcy1saW5lLWR3cGoiLAogICAgICAidGllciI6ICJQMSIsCiAgICAgICJzY29yZSI6IDY2LAogICAgICAic3RhdHVzIjogImRvaW5nIiwKICAgICAgImFzc2lnbmVlIjogInZwLWR3LWNvbW1lcmNlIiwKICAgICAgImFnZUgiOiAzNS42LAogICAgICAic3RhbGUiOiB0cnVlLAogICAgICAibGl2ZSI6IHRydWUsCiAgICAgICJidWlsZFZlcmRpY3QiOiAibnVkZ2UiLAogICAgICAiYnVpbGRSZWFzb24iOiAiYWxpdmUgKG93bmVyIGFjdGl2ZS93b3JrZXIgdXApIGJ1dCBubyB0aWNrZXQgdXBkYXRlIGluIDM2aCDigJQgYXNrIG93bmVyIHRvIHVwZGF0ZSBvciBkaXNwb3NlIiwKICAgICAgImRpc3Bvc2l0aW9uIjogIm51ZGdlLW93bmVyIiwKICAgICAgImNvbGxpZGUiOiBmYWxzZSwKICAgICAgInN0ZXZlR2F0ZWQiOiBmYWxzZSwKICAgICAgImFwcHJvdmFsTGFuZSI6ICJzdGFuZGFyZCIsCiAgICAgICJhcHByb3ZhbFJlYXNvbnMiOiBbXSwKICAgICAgIndoeSI6IFsKICAgICAgICAiUDIta2V5d29yZCIsCiAgICAgICAgInN0YWxlLWJ1aWxkLTM2aCIKICAgICAgXSwKICAgICAgInRpdGxlIjogIkZ1bGwgb25ib2FyZCBQaGlsbGlwIEplZmZyaWVzIGxpbmUgKERXUEopIOKAlCByZWNvbmNpbGUgZnVsbCBQSiB3ZWJzaXRlIGNhdGFsb2cgdnMgfjEwNDYgbGl2ZSwgYmFja2ZpbGwgZGVzYytzcGVjcywgbG9nby1hcy1pbWFnZSwgZHJhZnQtcmVhZHkiCiAgICB9LAogICAgewogICAgICAiaWQiOiAiVEstMTExMDMtc2FuZGVyc29uLWRhaWx5LWJhdGNoLXNoLW5vZGUtdW5ib3VuZC12YSIsCiAgICAgICJ0aWVyIjogIlAxIiwKICAgICAgInNjb3JlIjogNjYsCiAgICAgICJzdGF0dXMiOiAiZG9pbmciLAogICAgICAiYXNzaWduZWUiOiAidnAtZHctY29tbWVyY2UiLAogICAgICAiYWdlSCI6IDM1LjMsCiAgICAgICJzdGFsZSI6IHRydWUsCiAgICAgICJsaXZlIjogdHJ1ZSwKICAgICAgImJ1aWxkVmVyZGljdCI6ICJudWRnZSIsCiAgICAgICJidWlsZFJlYXNvbiI6ICJhbGl2ZSAob3duZXIgYWN0aXZlL3dvcmtlciB1cCkgYnV0IG5vIHRpY2tldCB1cGRhdGUgaW4gMzVoIOKAlCBhc2sgb3duZXIgdG8gdXBkYXRlIG9yIGRpc3Bvc2UiLAogICAgICAiZGlzcG9zaXRpb24iOiAibnVkZ2Utb3duZXIiLAogICAgICAiY29sbGlkZSI6IGZhbHNlLAogICAgICAic3RldmVHYXRlZCI6IGZhbHNlLAogICAgICAiYXBwcm92YWxMYW5lIjogInN0YW5kYXJkIiwKICAgICAgImFwcHJvdmFsUmVhc29ucyI6IFtdLAogICAgICAid2h5IjogWwogICAgICAgICJQMi1rZXl3b3JkIiwKICAgICAgICAic3RhbGUtYnVpbGQtMzVoIgogICAgICBdLAogICAgICAidGl0bGUiOiAiU2FuZGVyc29uIGRhaWx5LWJhdGNoLnNoIE5PREUgdW5ib3VuZCB2YXIgKGxpbmUgMTQpIOKAlCBmaXggKyB2ZXJpZnkgYXV0b3BpbG90IGFkdmFuY2VzIgogICAgfSwKICAgIHsKICAgICAgImlkIjogIlRLLTExMTkzLXNob3dyb29tLWxpbmUtbGVhay1wai1pbnRvLWdvb2dsZS1mZWVkLW4iLAogICAgICAidGllciI6ICJQMSIsCiAgICAgICJzY29yZSI6IDYxLAogICAgICAic3RhdHVzIjogImRvaW5nIiwKICAgICAgImFzc2lnbmVlIjogInNob3dyb29tLWxpbmUtc3Rld2FyZCIsCiAgICAgICJhZ2VIIjogOC4xLAogICAgICAic3RhbGUiOiBmYWxzZSwKICAgICAgImxpdmUiOiB0cnVlLAogICAgICAiYnVpbGRWZXJkaWN0IjogIm9rIiwKICAgICAgImJ1aWxkUmVhc29uIjogIiIsCiAgICAgICJkaXNwb3NpdGlvbiI6ICJob2xkLXBvbGljeSIsCiAgICAgICJjb2xsaWRlIjogZmFsc2UsCiAgICAgICJzdGV2ZUdhdGVkIjogdHJ1ZSwKICAgICAgImFwcHJvdmFsTGFuZSI6ICJob2xkLXBvbGljeSIsCiAgICAgICJhcHByb3ZhbFJlYXNvbnMiOiBbCiAgICAgICAgImV4dGVybmFsLWFjdGlvbiIKICAgICAgXSwKICAgICAgIndoeSI6IFsKICAgICAgICAiUDEta2V5d29yZCIKICAgICAgXSwKICAgICAgInRpdGxlIjogIlNob3dyb29tLWxpbmUgbGVhazogUEogaW50byBnb29nbGUtZmVlZCArIG5ldy1hcnJpdmFscyArIHRyZW5kaW5nICsgZ3JpZHMg4oCUIGNvbmZpcm0gbGl2ZSArIGRyYWZ0IGdhdGVkIGVuZm9yY2VtZW50IgogICAgfSwKICAgIHsKICAgICAgImlkIjogIlRLLTEwNzU4LXN0b3Atc2Fzc3ktcmVwb3N0cy1vZi1vdGhlcnMtY29udGVudC1lcmEiLAogICAgICAidGllciI6ICJQMSIsCiAgICAgICJzY29yZSI6IDU4LAogICAgICAic3RhdHVzIjogImJsb2NrZWQiLAogICAgICAiYXNzaWduZWUiOiAiY2xhdWRlLXJ1bi0xMDU3MyIsCiAgICAgICJhZ2VIIjogODIuNSwKICAgICAgInN0YWxlIjogZmFsc2UsCiAgICAgICJsaXZlIjogZmFsc2UsCiAgICAgICJidWlsZFZlcmRpY3QiOiAib2siLAogICAgICAiYnVpbGRSZWFzb24iOiAiIiwKICAgICAgImRpc3Bvc2l0aW9uIjogImhvbGQtcG9saWN5IiwKICAgICAgImNvbGxpZGUiOiBmYWxzZSwKICAgICAgInN0ZXZlR2F0ZWQiOiB0cnVlLAogICAgICAiYXBwcm92YWxMYW5lIjogImhvbGQtcG9saWN5IiwKICAgICAgImFwcHJvdmFsUmVhc29ucyI6IFsKICAgICAgICAiZXh0ZXJuYWwtYWN0aW9uIiwKICAgICAgICAiYmxvY2tlcjpzdGV2ZS1nYXRlZCIKICAgICAgXSwKICAgICAgIndoeSI6IFsKICAgICAgICAiUDEta2V5d29yZCIKICAgICAgXSwKICAgICAgInRpdGxlIjogIlN0b3Agc2Fzc3kgcmVwb3N0cyBvZiBvdGhlcnMnIGNvbnRlbnQgKyBlcmFzZSBleGlzdGluZyBvbmVzIGFjcm9zcyBhbGwgSUcgYWNjdHMiCiAgICB9LAogICAgewogICAgICAiaWQiOiAiVEstMTA4NjYtbm92YXN1ZWRlLWNvbG9yLXBvc3Qtcm90YXRpb24tZXhjbHVzaW9uIiwKICAgICAgInRpZXIiOiAiUDEiLAogICAgICAic2NvcmUiOiA1OCwKICAgICAgInN0YXR1cyI6ICJibG9ja2VkIiwKICAgICAgImFzc2lnbmVlIjogInZwLWR3LW1hcmtldGluZyIsCiAgICAgICJhZ2VIIjogODIuNSwKICAgICAgInN0YWxlIjogZmFsc2UsCiAgICAgICJsaXZlIjogZmFsc2UsCiAgICAgICJidWlsZFZlcmRpY3QiOiAib2siLAogICAgICAiYnVpbGRSZWFzb24iOiAiIiwKICAgICAgImRpc3Bvc2l0aW9uIjogImhvbGQtcG9saWN5IiwKICAgICAgImNvbGxpZGUiOiBmYWxzZSwKICAgICAgInN0ZXZlR2F0ZWQiOiB0cnVlLAogICAgICAiYXBwcm92YWxMYW5lIjogImhvbGQtcG9saWN5IiwKICAgICAgImFwcHJvdmFsUmVhc29ucyI6IFsKICAgICAgICAiZXh0ZXJuYWwtYWN0aW9uIiwKICAgICAgICAiYmxvY2tlcjpzdGV2ZS1nYXRlZCIKICAgICAgXSwKICAgICAgIndoeSI6IFsKICAgICAgICAiUDEta2V5d29yZCIKICAgICAgXSwKICAgICAgInRpdGxlIjogIk5vdmFzdWVkZSBjb2xvci1wb3N0OiByb3RhdGlvbiBleGNsdXNpb24gKGRyb3AgZGVzaWduZXJ3YWxsY292ZXJpbmdzKSwgU0tVLXN3YXRjaCBjcmVhdGl2ZSwgY2xlYW51cCBqZXdlbHJ5L3Jvb20gcGhvdG9zIgogICAgfSwKICAgIHsKICAgICAgImlkIjogIlRLLTEwODk5LXBqLWZhbGwtMjAyNi1tYWlsZXItZ28tbGl2ZS1nYXRlZC1zZW5kLXQiLAogICAgICAidGllciI6ICJQMSIsCiAgICAgICJzY29yZSI6IDU4LAogICAgICAic3RhdHVzIjogImJsb2NrZWQiLAogICAgICAiYXNzaWduZWUiOiAiYXBwcm92YWwtb2ZmaWNlciIsCiAgICAgICJhZ2VIIjogODIuNSwKICAgICAgInN0YWxlIjogZmFsc2UsCiAgICAgICJsaXZlIjogZmFsc2UsCiAgICAgICJidWlsZFZlcmRpY3QiOiAib2siLAogICAgICAiYnVpbGRSZWFzb24iOiAiIiwKICAgICAgImRpc3Bvc2l0aW9uIjogImhvbGQtcG9saWN5IiwKICAgICAgImNvbGxpZGUiOiBmYWxzZSwKICAgICAgInN0ZXZlR2F0ZWQiOiB0cnVlLAogICAgICAiYXBwcm92YWxMYW5lIjogImhvbGQtcG9saWN5IiwKICAgICAgImFwcHJvdmFsUmVhc29ucyI6IFsKICAgICAgICAiZW1haWwiLAogICAgICAgICJleHRlcm5hbC1hY3Rpb24iLAogICAgICAgICJibG9ja2VyOnN0ZXZlLWdhdGVkIgogICAgICBdLAogICAgICAid2h5IjogWwogICAgICAgICJQMS1rZXl3b3JkIgogICAgICBdLAogICAgICAidGl0bGUiOiAiUEogRmFsbCAyMDI2IG1haWxlciBnby1saXZlIOKAlCBHQVRFRCAoc2VuZC10by1saXN0KSwgSEVMRCBmb3IgU3RldmUiCiAgICB9LAogICAgewogICAgICAiaWQiOiAiVEstMTEwNTAtcmVjb25jaWxlLXZlcnNhLWNhdGFsb2ctbWFjMi1rYW1hdGVyYS1kaSIsCiAgICAgICJ0aWVyIjogIlAxIiwKICAgICAgInNjb3JlIjogNTgsCiAgICAgICJzdGF0dXMiOiAiYmxvY2tlZCIsCiAgICAgICJhc3NpZ25lZSI6ICJjbGF1ZGUtcnVuLTExMDUwIiwKICAgICAgImFnZUgiOiA5LAogICAgICAic3RhbGUiOiBmYWxzZSwKICAgICAgImxpdmUiOiBmYWxzZSwKICAgICAgImJ1aWxkVmVyZGljdCI6ICJvayIsCiAgICAgICJidWlsZFJlYXNvbiI6ICIiLAogICAgICAiZGlzcG9zaXRpb24iOiAiaG9sZC1wb2xpY3kiLAogICAgICAiY29sbGlkZSI6IGZhbHNlLAogICAgICAic3RldmVHYXRlZCI6IHRydWUsCiAgICAgICJhcHByb3ZhbExhbmUiOiAiaG9sZC1wb2xpY3kiLAogICAgICAiYXBwcm92YWxSZWFzb25zIjogWwogICAgICAgICJleHRlcm5hbC1hY3Rpb24iCiAgICAgIF0sCiAgICAgICJ3aHkiOiBbCiAgICAgICAgIlAxLWtleXdvcmQiCiAgICAgIF0sCiAgICAgICJ0aXRsZSI6ICJSZWNvbmNpbGUgdmVyc2FfY2F0YWxvZyBNYWMyPC0+S2FtYXRlcmEgZGl2ZXJnZW5jZSAoMTc0NSB2cyAyNDIzLCBSRVZJRVctZmxhZ2dlZCkiCiAgICB9LAogICAgewogICAgICAiaWQiOiAiVEstMTA5OTMtZ21jLWRlZ3JhZGVkLXJlbWVkaWF0aW9uLWR1cmFibGUtZmVlZC1jbyIsCiAgICAgICJ0aWVyIjogIlAxIiwKICAgICAgInNjb3JlIjogNTgsCiAgICAgICJzdGF0dXMiOiAiYmxvY2tlZCIsCiAgICAgICJhc3NpZ25lZSI6ICJjbGF1ZGUtcnVuLTEwOTkzIiwKICAgICAgImFnZUgiOiAwLjgsCiAgICAgICJzdGFsZSI6IGZhbHNlLAogICAgICAibGl2ZSI6IHRydWUsCiAgICAgICJidWlsZFZlcmRpY3QiOiAib2siLAogICAgICAiYnVpbGRSZWFzb24iOiAiIiwKICAgICAgImRpc3Bvc2l0aW9uIjogImhvbGQtcG9saWN5IiwKICAgICAgImNvbGxpZGUiOiBmYWxzZSwKICAgICAgInN0ZXZlR2F0ZWQiOiB0cnVlLAogICAgICAiYXBwcm92YWxMYW5lIjogImhvbGQtcG9saWN5IiwKICAgICAgImFwcHJvdmFsUmVhc29ucyI6IFsKICAgICAgICAiZXh0ZXJuYWwtYWN0aW9uIiwKICAgICAgICAiYmxvY2tlcjpzdGV2ZS1nYXRlZCIKICAgICAgXSwKICAgICAgIndoeSI6IFsKICAgICAgICAiUDEta2V5d29yZCIKICAgICAgXSwKICAgICAgInRpdGxlIjogIkdNQyBERUdSQURFRCByZW1lZGlhdGlvbiDigJQgZHVyYWJsZSBmZWVkLWNvbmZpZyBmaXggKyBjb25zb2xpZGF0ZSBhcHByb3ZhbCBtZW1vcyIKICAgIH0sCiAgICB7CiAgICAgICJpZCI6ICJUSy0xMDM4Ny1kdXN0MjAyNi1idWlsZC00LWlvcy1hcHBzIiwKICAgICAgInRpZXIiOiAiUDEiLAogICAgICAic2NvcmUiOiA1OCwKICAgICAgInN0YXR1cyI6ICJibG9ja2VkIiwKICAgICAgImFzc2lnbmVlIjogImNsYXVkZS1ydW4tMTAzODciLAogICAgICAiYWdlSCI6IDAuNSwKICAgICAgInN0YWxlIjogZmFsc2UsCiAgICAgICJsaXZlIjogdHJ1ZSwKICAgICAgImJ1aWxkVmVyZGljdCI6ICJvayIsCiAgICAgICJidWlsZFJlYXNvbiI6ICIiLAogICAgICAiZGlzcG9zaXRpb24iOiAiaG9sZC1wb2xpY3kiLAogICAgICAiY29sbGlkZSI6IGZhbHNlLAogICAgICAic3RldmVHYXRlZCI6IHRydWUsCiAgICAgICJhcHByb3ZhbExhbmUiOiAiaG9sZC1wb2xpY3kiLAogICAgICAiYXBwcm92YWxSZWFzb25zIjogWwogICAgICAgICJleHRlcm5hbC1hY3Rpb24iLAogICAgICAgICJibG9ja2VyOnN0ZXZlLWdhdGVkIgogICAgICBdLAogICAgICAid2h5IjogWwogICAgICAgICJQMS1rZXl3b3JkIgogICAgICBdLAogICAgICAidGl0bGUiOiAiZHVzdDIwMjY6IGJ1aWxkIDQgaU9TIGFwcHMiCiAgICB9LAogICAgewogICAgICAiaWQiOiAiVEstMTA4NzUtZmxlZXQtc2l6aW5nLTI5LTU2MS11bmJ1eWFibGUtcHJvZHVjdHMtMSIsCiAgICAgICJ0aWVyIjogIlAxIiwKICAgICAgInNjb3JlIjogNTUsCiAgICAgICJzdGF0dXMiOiAic3RvcHBlZCIsCiAgICAgICJhc3NpZ25lZSI6ICJ2cC1kdy1jb21tZXJjZSIsCiAgICAgICJhZ2VIIjogODIuNSwKICAgICAgInN0YWxlIjogZmFsc2UsCiAgICAgICJsaXZlIjogdHJ1ZSwKICAgICAgImJ1aWxkVmVyZGljdCI6ICJvayIsCiAgICAgICJidWlsZFJlYXNvbiI6ICIiLAogICAgICAiZGlzcG9zaXRpb24iOiAic3VyZmFjZS10by1zdGV2ZSIsCiAgICAgICJjb2xsaWRlIjogZmFsc2UsCiAgICAgICJzdGV2ZUdhdGVkIjogZmFsc2UsCiAgICAgICJhcHByb3ZhbExhbmUiOiAic3RhbmRhcmQiLAogICAgICAiYXBwcm92YWxSZWFzb25zIjogW10sCiAgICAgICJ3aHkiOiBbCiAgICAgICAgIlAxLWtleXdvcmQiCiAgICAgIF0sCiAgICAgICJ0aXRsZSI6ICJGbGVldCBzaXppbmc6IDI5LDU2MSB1bmJ1eWFibGUgcHJvZHVjdHMgKH4xNyw0MDAgZ2VudWluZSByZXZlbnVlIGhvbGUpIOKAlCBjbGFzc2lmeSBjb3N0LWF2YWlsYWJpbGl0eSArIHBpbG90IHNlbGxhYmxlLXZhcmlhbnQgcmVjb3ZlcnkiCiAgICB9LAogICAgewogICAgICAiaWQiOiAiVEstMTAzNDYtY29zdGEtcmljYS1kaXJlY3RvcnktYm9va2luZy1wYXltZW50LW1hciIsCiAgICAgICJ0aWVyIjogIlAxIiwKICAgICAgInNjb3JlIjogNTUsCiAgICAgICJzdGF0dXMiOiAic3RvcHBlZCIsCiAgICAgICJhc3NpZ25lZSI6ICJjcmEtYXBwIiwKICAgICAgImFnZUgiOiA4MC41LAogICAgICAic3RhbGUiOiBmYWxzZSwKICAgICAgImxpdmUiOiBmYWxzZSwKICAgICAgImJ1aWxkVmVyZGljdCI6ICJvayIsCiAgICAgICJidWlsZFJlYXNvbiI6ICIiLAogICAgICAiZGlzcG9zaXRpb24iOiAiaG9sZC1wb2xpY3kiLAogICAgICAiY29sbGlkZSI6IGZhbHNlLAogICAgICAic3RldmVHYXRlZCI6IHRydWUsCiAgICAgICJhcHByb3ZhbExhbmUiOiAiaG9sZC1wb2xpY3kiLAogICAgICAiYXBwcm92YWxSZWFzb25zIjogWwogICAgICAgICJibG9ja2VyOnN0ZXZlLWdhdGVkIgogICAgICBdLAogICAgICAid2h5IjogWwogICAgICAgICJQMS1rZXl3b3JkIgogICAgICBdLAogICAgICAidGl0bGUiOiAiQ29zdGEgUmljYTogZGlyZWN0b3J54oaSYm9va2luZ+KGknBheW1lbnQgbWFya2V0cGxhY2UgYXBwIChFeHBvICsgVGlsb3BheS9TSU5QRSArIFBsYWlkICsgV2hhdHNBcHAgQ2xvdWQgQVBJKSIKICAgIH0sCiAgICB7CiAgICAgICJpZCI6ICJUSy0xMTA2OC1zYW5kZXJzb24tbmEtcGVyLWNvbG9yd2F5LWZlYXR1cmVkLWltYWdlIiwKICAgICAgInRpZXIiOiAiUDIiLAogICAgICAic2NvcmUiOiA0MSwKICAgICAgInN0YXR1cyI6ICJkb2luZyIsCiAgICAgICJhc3NpZ25lZSI6ICJ2cC1kdy1jb21tZXJjZSIsCiAgICAgICJhZ2VIIjogNTguNCwKICAgICAgInN0YWxlIjogdHJ1ZSwKICAgICAgImxpdmUiOiB0cnVlLAogICAgICAiYnVpbGRWZXJkaWN0IjogIm51ZGdlIiwKICAgICAgImJ1aWxkUmVhc29uIjogImFsaXZlIChvd25lciBhY3RpdmUvd29ya2VyIHVwKSBidXQgbm8gdGlja2V0IHVwZGF0ZSBpbiA1OGgg4oCUIGFzayBvd25lciB0byB1cGRhdGUgb3IgZGlzcG9zZSIsCiAgICAgICJkaXNwb3NpdGlvbiI6ICJudWRnZS1vd25lciIsCiAgICAgICJjb2xsaWRlIjogZmFsc2UsCiAgICAgICJzdGV2ZUdhdGVkIjogZmFsc2UsCiAgICAgICJhcHByb3ZhbExhbmUiOiAic3RhbmRhcmQiLAogICAgICAiYXBwcm92YWxSZWFzb25zIjogW10sCiAgICAgICJ3aHkiOiBbCiAgICAgICAgInN0YWxlLWJ1aWxkLTU4aCIKICAgICAgXSwKICAgICAgInRpdGxlIjogIlNhbmRlcnNvbiBOQSBwZXItY29sb3J3YXkgZmVhdHVyZWQtaW1hZ2UgZml4IChDeWNsZSAyKSIKICAgIH0sCiAgICB7CiAgICAgICJpZCI6ICJUSy0xMTA3MC1zYW5kZXJzb24tZGFsbGltb3JlLWNvbG9yd2F5LWR1bXAtYnVnLWZsIiwKICAgICAgInRpZXIiOiAiUDIiLAogICAgICAic2NvcmUiOiA0MSwKICAgICAgInN0YXR1cyI6ICJkb2luZyIsCiAgICAgICJhc3NpZ25lZSI6ICJ2cC1kdy1jb21tZXJjZSIsCiAgICAgICJhZ2VIIjogNTAuMywKICAgICAgInN0YWxlIjogdHJ1ZSwKICAgICAgImxpdmUiOiB0cnVlLAogICAgICAiYnVpbGRWZXJkaWN0IjogIm51ZGdlIiwKICAgICAgImJ1aWxkUmVhc29uIjogImFsaXZlIChvd25lciBhY3RpdmUvd29ya2VyIHVwKSBidXQgbm8gdGlja2V0IHVwZGF0ZSBpbiA1MGgg4oCUIGFzayBvd25lciB0byB1cGRhdGUgb3IgZGlzcG9zZSIsCiAgICAgICJkaXNwb3NpdGlvbiI6ICJob2xkLXBvbGljeSIsCiAgICAgICJjb2xsaWRlIjogZmFsc2UsCiAgICAgICJzdGV2ZUdhdGVkIjogdHJ1ZSwKICAgICAgImFwcHJvdmFsTGFuZSI6ICJob2xkLXBvbGljeSIsCiAgICAgICJhcHByb3ZhbFJlYXNvbnMiOiBbCiAgICAgICAgImV4dGVybmFsLWFjdGlvbiIKICAgICAgXSwKICAgICAgIndoeSI6IFsKICAgICAgICAic3RhbGUtYnVpbGQtNTBoIgogICAgICBdLAogICAgICAidGl0bGUiOiAiU2FuZGVyc29uIERhbGxpbW9yZSBjb2xvcndheS1kdW1wIGJ1ZyArIGZsZWV0IGJsYXN0IHJhZGl1cyAoVEstMTEwNjUgY2xhc3MpIgogICAgfSwKICAgIHsKICAgICAgImlkIjogIlRLLTExMDg5LXBoaWxsaXAtamVmZnJpZXMtZnVsbC1saW5lLW9uYm9hcmQtc3RhbmQiLAogICAgICAidGllciI6ICJQMiIsCiAgICAgICJzY29yZSI6IDQxLAogICAgICAic3RhdHVzIjogImRvaW5nIiwKICAgICAgImFzc2lnbmVlIjogInZwLWR3LWNvbW1lcmNlIiwKICAgICAgImFnZUgiOiAzNy4xLAogICAgICAic3RhbGUiOiB0cnVlLAogICAgICAibGl2ZSI6IHRydWUsCiAgICAgICJidWlsZFZlcmRpY3QiOiAibnVkZ2UiLAogICAgICAiYnVpbGRSZWFzb24iOiAiYWxpdmUgKG93bmVyIGFjdGl2ZS93b3JrZXIgdXApIGJ1dCBubyB0aWNrZXQgdXBkYXRlIGluIDM3aCDigJQgYXNrIG93bmVyIHRvIHVwZGF0ZSBvciBkaXNwb3NlIiwKICAgICAgImRpc3Bvc2l0aW9uIjogImhvbGQtcG9saWN5IiwKICAgICAgImNvbGxpZGUiOiBmYWxzZSwKICAgICAgInN0ZXZlR2F0ZWQiOiB0cnVlLAogICAgICAiYXBwcm92YWxMYW5lIjogImhvbGQtcG9saWN5IiwKICAgICAgImFwcHJvdmFsUmVhc29ucyI6IFsKICAgICAgICAiZXh0ZXJuYWwtYWN0aW9uIgogICAgICBdLAogICAgICAid2h5IjogWwogICAgICAgICJzdGFsZS1idWlsZC0zN2giCiAgICAgIF0sCiAgICAgICJ0aXRsZSI6ICJQaGlsbGlwIEplZmZyaWVzIGZ1bGwtbGluZSBvbmJvYXJkICsgc3RhbmRhcmRpemF0aW9uIChsb2dvLWZlYXR1cmVkLCBpbWFnZXMtdG8tZHdfdW5pZmllZC1mb3Itc29jaWFsLCBzaG93cm9vbSBDVEEsIHF1b3RlLW9ubHksIGF1dG8tYWN0aXZhdGUgY29tcGxldGUpIgogICAgfSwKICAgIHsKICAgICAgImlkIjogIlRLLTExMjAxLXNkZy1wdWJsaXNoLWNhZGVuY2UtbGF1bmNoZC1jb20tc3RldmUtc2QiLAogICAgICAidGllciI6ICJQMiIsCiAgICAgICJzY29yZSI6IDM4LAogICAgICAic3RhdHVzIjogIm9wZW4iLAogICAgICAiYXNzaWduZWUiOiAidnAtZHctY29tbWVyY2UiLAogICAgICAiYWdlSCI6IDcuNiwKICAgICAgInN0YWxlIjogZmFsc2UsCiAgICAgICJsaXZlIjogdHJ1ZSwKICAgICAgImJ1aWxkVmVyZGljdCI6ICJvayIsCiAgICAgICJidWlsZFJlYXNvbiI6ICIiLAogICAgICAiZGlzcG9zaXRpb24iOiAiaG9sZC1wb2xpY3kiLAogICAgICAiY29sbGlkZSI6IGZhbHNlLAogICAgICAic3RldmVHYXRlZCI6IHRydWUsCiAgICAgICJhcHByb3ZhbExhbmUiOiAiaG9sZC1wb2xpY3kiLAogICAgICAiYXBwcm92YWxSZWFzb25zIjogWwogICAgICAgICJleHRlcm5hbC1hY3Rpb24iCiAgICAgIF0sCiAgICAgICJ3aHkiOiBbCiAgICAgICAgIlAyLWtleXdvcmQiLAogICAgICAgICJvcGVuIgogICAgICBdLAogICAgICAidGl0bGUiOiAiU0RHIHB1Ymxpc2ggY2FkZW5jZSAobGF1bmNoZCBjb20uc3RldmUuc2RnLXB1Ymxpc2gtY2FkZW5jZSkg4oCUIHRyYWNrIHRoZSBkYWlseSAwNDozMCBhdXRvLWRyYWluIG9mIHRoZSBTSFogYmFja2xvZyIKICAgIH0sCiAgICB7CiAgICAgICJpZCI6ICJUSy0xMTEyNy1yZXNvbHZlLTUtaGVsZC1jYXRhbG9nLWZvcmtzLWNhcm5lZ2llLW5lIiwKICAgICAgInRpZXIiOiAiUDIiLAogICAgICAic2NvcmUiOiAyOCwKICAgICAgInN0YXR1cyI6ICJibG9ja2VkIiwKICAgICAgImFzc2lnbmVlIjogImNsYXVkZS1ydW4tMTEwNTAiLAogICAgICAiYWdlSCI6IDI4LjUsCiAgICAgICJzdGFsZSI6IGZhbHNlLAogICAgICAibGl2ZSI6IGZhbHNlLAogICAgICAiYnVpbGRWZXJkaWN0IjogIm9rIiwKICAgICAgImJ1aWxkUmVhc29uIjogIiIsCiAgICAgICJkaXNwb3NpdGlvbiI6ICJob2xkLXBvbGljeSIsCiAgICAgICJjb2xsaWRlIjogZmFsc2UsCiAgICAgICJzdGV2ZUdhdGVkIjogdHJ1ZSwKICAgICAgImFwcHJvdmFsTGFuZSI6ICJob2xkLXBvbGljeSIsCiAgICAgICJhcHByb3ZhbFJlYXNvbnMiOiBbCiAgICAgICAgImJsb2NrZXI6c3RldmUtZ2F0ZWQiCiAgICAgIF0sCiAgICAgICJ3aHkiOiBbCiAgICAgICAgIlAyLWtleXdvcmQiCiAgICAgIF0sCiAgICAgICJ0aXRsZSI6ICJSZXNvbHZlIDUgaGVsZCBjYXRhbG9nIGZvcmtzIChDYXJuZWdpZS9OZXd3YWxsL1BoaWxSb21hbm8vSGFybGVxdWluL05vdmFzdWVkZSkg4oCUIHBlci12ZW5kb3Iga2VlcC1ydWxlICsgY2Fub25pY2FsIGRpcmVjdGlvbiIKICAgIH0sCiAgICB7CiAgICAgICJpZCI6ICJUSy0xMDQ4NC1yZS1vbmJvYXJkLWplZmZyZXktc3RldmVucy1wZWVsLWFuZC1zdGljIiwKICAgICAgInRpZXIiOiAiUDIiLAogICAgICAic2NvcmUiOiAyNSwKICAgICAgInN0YXR1cyI6ICJzdG9wcGVkIiwKICAgICAgImFzc2lnbmVlIjogImpzdGV2ZW5zLXJlb25ib2FyZCIsCiAgICAgICJhZ2VIIjogNzguNCwKICAgICAgInN0YWxlIjogZmFsc2UsCiAgICAgICJsaXZlIjogZmFsc2UsCiAgICAgICJidWlsZFZlcmRpY3QiOiAib2siLAogICAgICAiYnVpbGRSZWFzb24iOiAiIiwKICAgICAgImRpc3Bvc2l0aW9uIjogImhvbGQtcG9saWN5IiwKICAgICAgImNvbGxpZGUiOiBmYWxzZSwKICAgICAgInN0ZXZlR2F0ZWQiOiB0cnVlLAogICAgICAiYXBwcm92YWxMYW5lIjogImhvbGQtcG9saWN5IiwKICAgICAgImFwcHJvdmFsUmVhc29ucyI6IFsKICAgICAgICAiYmxvY2tlcjpzdGV2ZS1nYXRlZCIKICAgICAgXSwKICAgICAgIndoeSI6IFsKICAgICAgICAiUDIta2V5d29yZCIKICAgICAgXSwKICAgICAgInRpdGxlIjogIlJlLW9uYm9hcmQgSmVmZnJleSBTdGV2ZW5zIHBlZWwtYW5kLXN0aWNrICsgaW50ZXJsb2NraW5nIGZsb29yLXRpbGUgbGluZSAoNSBEV0FBIHdhcm0tc3RhcnQpIgogICAgfSwKICAgIHsKICAgICAgImlkIjogIlRLLTEwODk2LXNrdS1jYW5vbmljYWwtZHctc2t1LWJhY2tsb2ctMzMtOTQ2LWFjdGkiLAogICAgICAidGllciI6ICJQMiIsCiAgICAgICJzY29yZSI6IDI1LAogICAgICAic3RhdHVzIjogInN0b3BwZWQiLAogICAgICAiYXNzaWduZWUiOiAidnAtZHctY29tbWVyY2UiLAogICAgICAiYWdlSCI6IDUwLjMsCiAgICAgICJzdGFsZSI6IGZhbHNlLAogICAgICAibGl2ZSI6IHRydWUsCiAgICAgICJidWlsZFZlcmRpY3QiOiAib2siLAogICAgICAiYnVpbGRSZWFzb24iOiAiIiwKICAgICAgImRpc3Bvc2l0aW9uIjogImhvbGQtcG9saWN5IiwKICAgICAgImNvbGxpZGUiOiBmYWxzZSwKICAgICAgInN0ZXZlR2F0ZWQiOiB0cnVlLAogICAgICAiYXBwcm92YWxMYW5lIjogImhvbGQtcG9saWN5IiwKICAgICAgImFwcHJvdmFsUmVhc29ucyI6IFsKICAgICAgICAiZXh0ZXJuYWwtYWN0aW9uIiwKICAgICAgICAiYmxvY2tlcjpzdGV2ZS1nYXRlZCIKICAgICAgXSwKICAgICAgIndoeSI6IFsKICAgICAgICAiUDIta2V5d29yZCIKICAgICAgXSwKICAgICAgInRpdGxlIjogIlNLVSBjYW5vbmljYWwtZHdfc2t1IGJhY2tsb2cgKDMzLDk0NiBhY3RpdmUtYmxhbmspIOKAlCA0LXBoYXNlIHBsYW4iCiAgICB9LAogICAgewogICAgICAiaWQiOiAiVEstMTA5MjgtY3Jvbi1pc3N1ZS1jb20tc3RldmUtZHctYmFja3VwLWNhbmFyeSIsCiAgICAgICJ0aWVyIjogIlAyIiwKICAgICAgInNjb3JlIjogMjUsCiAgICAgICJzdGF0dXMiOiAib3BlbiIsCiAgICAgICJhc3NpZ25lZSI6ICJjb2RleC15b2xvZm9yZXZlciIsCiAgICAgICJhZ2VIIjogMC4yLAogICAgICAic3RhbGUiOiBmYWxzZSwKICAgICAgImxpdmUiOiB0cnVlLAogICAgICAiYnVpbGRWZXJkaWN0IjogIm9rIiwKICAgICAgImJ1aWxkUmVhc29uIjogIiIsCiAgICAgICJkaXNwb3NpdGlvbiI6ICJob2xkLXBvbGljeSIsCiAgICAgICJjb2xsaWRlIjogdHJ1ZSwKICAgICAgInN0ZXZlR2F0ZWQiOiB0cnVlLAogICAgICAiYXBwcm92YWxMYW5lIjogImhvbGQtcG9saWN5IiwKICAgICAgImFwcHJvdmFsUmVhc29ucyI6IFsKICAgICAgICAiZXh0ZXJuYWwtYWN0aW9uIiwKICAgICAgICAiYmxvY2tlcjpzdGV2ZS1nYXRlZCIKICAgICAgXSwKICAgICAgIndoeSI6IFsKICAgICAgICAib3BlbiIKICAgICAgXSwKICAgICAgInRpdGxlIjogIkNyb24gaXNzdWU6IGNvbS5zdGV2ZS5kdy1iYWNrdXAtY2FuYXJ5IgogICAgfSwKICAgIHsKICAgICAgImlkIjogIlRLLTExMTc1LWdtYy1jb250ZW50LWFwaS1mb3Itc2hvcHBpbmctc3Vuc2V0LW1pZ3IiLAogICAgICAidGllciI6ICJQMyIsCiAgICAgICJzY29yZSI6IDEzLAogICAgICAic3RhdHVzIjogIm9wZW4iLAogICAgICAiYXNzaWduZWUiOiAiY2xhdWRlLXlvbG9mb3JldmVyIiwKICAgICAgImFnZUgiOiAxMS44LAogICAgICAic3RhbGUiOiBmYWxzZSwKICAgICAgImxpdmUiOiB0cnVlLAogICAgICAiYnVpbGRWZXJkaWN0IjogIm9rIiwKICAgICAgImJ1aWxkUmVhc29uIjogIiIsCiAgICAgICJkaXNwb3NpdGlvbiI6ICJob2xkLXBvbGljeSIsCiAgICAgICJjb2xsaWRlIjogZmFsc2UsCiAgICAgICJzdGV2ZUdhdGVkIjogdHJ1ZSwKICAgICAgImFwcHJvdmFsTGFuZSI6ICJob2xkLXBvbGljeSIsCiAgICAgICJhcHByb3ZhbFJlYXNvbnMiOiBbCiAgICAgICAgImV4dGVybmFsLWFjdGlvbiIKICAgICAgXSwKICAgICAgIndoeSI6IFsKICAgICAgICAib3BlbiIKICAgICAgXSwKICAgICAgInRpdGxlIjogIkdNQyBDb250ZW50IEFQSSBmb3IgU2hvcHBpbmcgU1VOU0VUIOKAlCBtaWdyYXRlIGdvb2dsZS1tZXJjaGFudC1hZ2VudCBkZWxldGUvZmVlZCB0b29saW5nIHRvIE1lcmNoYW50IEFQSSIKICAgIH0KICBdCn0=

← c2718a80 Add TK-11209 zero-actionable evidence bundle  ·  back to Ticket System  ·  Log TK-11209 zero-action cycle 9f40c479 →