Skip to content

Agent Release Readiness Ledger

rayswaynl edited this page Jul 1, 2026 · 125 revisions

Agent Release Readiness Ledger

This is the human/MkDocs wrapper for agent-release-readiness.json. The JSON file is the canonical machine-readable ledger for tracked mission fixes, generated-target propagation and Arma 2 OA smoke gates.

Use this before release notes, generated mission propagation or any claim that a source fix is complete outside the Chernarus source mission.

What It Tracks

Section Meaning
toolingGate LoadoutManager root-discovery rule, skip-zip option and current local checkout status.
sourceOnlyFixes Compatibility key for tracked fixes; entries now record source, Vanilla and smoke status independently.
patchReadyNotSourcePatched Playbooks that are ready for implementation but are not current source patches.
releaseGate Minimum validation needed before a lane can be called release-complete.

Current Canonical Flow

Current fetched master for the July 2 PR #122 release pass is origin/master@bd48a6dbe673ae47a88053dafdf948a29cb8dfe0; PR #122 was previously recorded at origin/feat/qol-polish-pack@e47366be8bbfc53ffe667aeec42ec33cf3516c7d, then observed through 722f5d05705b93503d18d079575a5f4815dca8f6, 6176c70aa34ea4040876e7a3e3e329d17cdcff33, 3694c068639db015de52e1f7d9f433859010522c, f5c41461508e117d13d0b6172cbd66698091a8eb, current scanner/tooling head 4c66c3b6b1c20321163e732d6d06f5dacaeb4e5a, and command-center AICOM fallback head 8de3c4a60300568e42f2b7343b4c72a06621e33e. The latest PR #122 mission-content commit remains f5c41461508e117d13d0b6172cbd66698091a8eb; 4c66c3b6 is tooling-only and adds both-terrain RPT-window enforcement plus stronger no-human AICOM telemetry requirements. The reconciled PR #122 wiki drift contributes only still-current guardrails: 21/21 checked AICOM/HC files hash-identical between Chernarus and generated Takistan, and current livehost template resolution unresolved for WASP_Experital_TEST.Chernarus plus [61-2hc]warfarev2_073v48co.takistan, making those livehost RPT windows baseline context only. Treat PR #122 and the command-center fallback as source-backed and runtime/RPT-pending until the exact-build SERVER_DEBUG evidence packet is attached.

  1. Read Source fix propagation queue for the human explanation.
  2. Load agent-release-readiness.json for machine status.
  3. Run LoadoutManager from a checkout where branch-specific root discovery succeeds. Current PR #122 and fetched origin/master@bd48a6dbe673ae47a88053dafdf948a29cb8dfe0 accept either an a2waspwarfare ancestor or the documented repo markers; direct current Miksuu b8389e74 and origin/perf/quick-wins@0076040f still need the ancestor.
  4. Inspect generated diffs.
  5. Record Arma 2 OA smoke in the owning page and machine files.

2026-06-30 Release Command-Center Static Gate

Local branch codex/release-command-center-20260630@465b5afb2a is recorded as release-branch-local, static-verified, package-provenance-verified-local, handoff-packet-ready-local, runtime-rpt-packet-builder-local, runtime-rpt-packet-matrix-local, runtime-run-ledger-local, archive-sha-runtime-gate-local, runtime-source-map-identity-gate-local, runtime-ledger-identity-gate-local, handoff-contract-selftest-local, windowed-rpt-scorer-local, startup-banner-rpt-gate-local, hc-registry-rpt-gate-local, stronger-aicom-rpt-gate-local, per-terrain-runtime-evidence-gate-local, aicom-infantry-fallback-local, takistan-west-fallback-rpt-gate-local, per-terrain-token-summary-local, runtime-packet-manifest-gate-proof-local, runtime-summary-rpt-root-binding-local, summary-release-identity-proof-local, windows-powershell-final-check-local, role-identity-rpt-gate-local, per-role-proof-rpt-gate-local, duplicate-rpt-content-gate-local, publishable-rpt-path-sanitized-local, self-contained-handoff-local, hc-client-pv-guard-local, sqf-count-guard-local, runtime-pending, source-propagated Chernarus+Takistan, and not-deployed.

What is safe to say now:

  • The branch has a generated release RPT marker shape: WASPRELEASE|v1|candidate=release-command-center-20260630|git=<short-head>|terrain=<terrain>.
  • The remote HC registry guard on origin/feat/qol-polish-pack@722f5d057, the PR #122 scanner gate at 6176c70aa34ea4040876e7a3e3e329d17cdcff33, the release/static head 94c6ab30a220337a04280ddf9967b9da801bf4c6, PR #122 HC/client PV guard head 3694c068639db015de52e1f7d9f433859010522c, PR #122 count-guard head f5c41461508e117d13d0b6172cbd66698091a8eb, PR #122 scanner/tooling head 4c66c3b6b1c20321163e732d6d06f5dacaeb4e5a, and command-center AICOM fallback head 8de3c4a60 were reviewed on 2026-07-01. The release branch did not raw-cherry-pick the older Tools/Monitor scanner because the current release scorer/log schema differs; it adapted the HC evidence, startup-banner, both-terrain and stronger AICOM telemetry ideas into Tools/PrTestHarness, adapted the later PV handler guards, cherry-picked the count guard parenthesization directly into both maintained terrains, and cherry-picked 8de3c4a60 as local b4df22ede for the starved-infantry fallback. The reconciled remote wiki commit also preserved the PR #122 21/21 AICOM/HC Chernarus/generated-Takistan parity note and the unresolved livehost-template caveat.
  • Tools/LoadoutManager generated the ignored Chernarus and Takistan version.sqf files with terrain-specific marker values after the 465b5afb2a commit.
  • initJIPCompatible.sqf logs the marker plus a MISSINIT terrain/session line.
  • Client/Functions/Client_FNC_Special.sqf guards upgrade-completion cache clears when WFBE_Client_Logic is nil or objNull, and LoadoutManager propagated that source change to maintained Vanilla Takistan.
  • Client_HandlePVF.sqf, HandleSpecial.sqf, and LocalizeMessage.sqf guard HC/client-only PV dispatch surfaces from non-array parameter count, missing WFBE_CL_FNC_EndGame, and missing GroupChatMessage errors in both maintained terrains.
  • Thirty maintained mission files now parenthesize SQF count guard comparisons in both Chernarus and Takistan, reducing ambiguity and potential runtime RPT noise in client, common, server patrol/delegation, and NEURO paths.
  • Tools/PrTestHarness/Rpt/New-WaspRuntimeRptPacket.ps1 now builds the runtime packet from a private runtime-rpt-source-map.json: it copies the exact ten source RPTs, writes release-run-ledger.json, emits redaction-safe runtime-rpt-packet-manifest.json, and can immediately validate the packet. Source-map release.candidate, release.git and release.archiveSha256 values must match supplied expected release identity flags when present.
  • Tools/PrTestHarness/Rpt/Test-WaspRuntimeRptPacket.ps1 is the first runtime evidence gate. It requires exactly ten role files, chernarus/{server,HC1,HC2,start-client,late-JIP}.rpt and takistan/{server,HC1,HC2,start-client,late-JIP}.rpt, checks terrain markers/world names, server role identity and per-role proof, rejects extra/missing RPTs, duplicate copied paths, duplicate copied/source RPT content hashes, and validates a release-run-ledger.json run ledger with per-terrain launch times, command lines, PIDs, exact roleProof/client joinPhase, original source RPT paths, source LastWriteTime/SHA256, copied packet paths/SHA256, non-empty matching release.candidate/release.git when expected and, when -ExpectedArchiveSha256 is supplied, the approved _MISSIONS.7z SHA256. Source RPT LastWriteTime must be after launch, copied/source SHA256 values must match, server.rpt must report isServer=true/isDedicated=true, HC files must contain HC-local startup proof, player-client files must contain client-local startup proof, and -RequireSourceRptExists re-reads the source RPTs before passing. Public checker output uses RPT-root-relative copied labels plus path/content hashes and hashes original source RPT paths and duplicate command lines instead of emitting them.
  • Tools/PrTestHarness/Rpt/Test-WaspReleaseRptEvidence.ps1 scores current-mission RPT windows and gates generic stop-condition errors without emitting raw RPT lines; the 465b5afb2a scorer also requires at least two non-zero-owner CIV HCSIDE|v1|connect|... rows, fails on connect-skip or non-CIV HC connect rows, fails if any scored file lacks the startup ## Mission Name banner, requires every scored RPT to resolve to exactly one runtime terrain, and adds per-terrain-runtime-evidence so Chernarus and Takistan each need the core AICOM, JIP, HC, town-cleanup, WDDM/static/artillery and supply evidence families. It also hardens the no-human AICOM gate to require AICOMSTAT event proof, TEAM_FOUNDED, CMDRSTAT plus at least one autonomous action/progress token such as ASSAULT_DISPATCH, COMBATSTAT, FRONT, POSTURE or SNAP, and the current Takistan WEST founding candidate must pass the dedicated takistan-west-aicom-infantry-fallback gate by showing AICOMGATE|WEST|infFallback| in Takistan per-terrain evidence. A human-driven AICOM|ORDER line alone does not satisfy that gate. The scorer and Tools/Monitor/Get-WindowedRpt.ps1 keep the startup banner immediately above the latest MISSINIT, so the WASPRELEASE marker remains inside the current scored window.
  • Tools/PrTestHarness/Rpt/New-WaspReleaseRptSummary.ps1 writes redaction-safe JSON and Markdown summaries from release RPT scorer output without raw RPT lines or absolute RPT paths; the Markdown now includes aggregate and per-terrain selected token counts. For release handoff, it is run with -RuntimePacketManifestPath, -ExpectedCandidate, -ExpectedGit, -ExpectedArchiveSha256 and -RequireRuntimePacketManifest; the summary cannot pass unless runtime-rpt-packet-manifest.json matches the package handoff release tuple, uses schema a2waspwarfare-runtime-rpt-packet-builder-v1, records validation.requested=true, records validation.overall=pass, records all required packet-validator gates with status=pass, and lists the exact ten copied runtime RPT files while binding the manifest rptRootHash and copied file copiedPathHash/copiedRptSha256 values to the single scored RPT directory.
  • Tools/PrTestHarness/Package/Test-WaspReleasePackage.ps1 writes redaction-safe JSON and Markdown package provenance for _MISSIONS.7z: archive roots, required files, generated markers and per-required-file hashes.
  • Tools/PrTestHarness/Release/New-WaspReleaseHandoff.ps1 writes redaction-safe JSON and Markdown release handoff packets with exact runtime markers, a private source-map template, the runtime run-ledger template, builder/scorer commands, deploy approval checks and rollback checks; it also copies release-package-manifest.json plus sibling release-package-manifest.md into the handoff folder, re-hashes the local archive and fails handoff readiness if the archive path, length, SHA256 or release git no longer matches the package manifest and current HEAD. Test-WaspReleaseHandoff.SelfTest.ps1 now covers those pending gates, copied package artifacts, release-bound commands and ten-record templates without touching runtime data.
  • Local static/package gates passed: LoadoutManager RELEASE packaging, package provenance validation, release handoff packet generation with runtime-rpt-source-map.template.json, runtime packet builder self-test, runtime packet matrix synthetic pass/fail fixtures, duplicate RPT content, role-identity and per-role-proof failure fixtures, source-map release identity drift failure fixture, blank run-ledger candidate/git/archive identity fixtures, archive-SHA/source-freshness/hash run-ledger pass/fail fixtures, duplicate-process redaction fixture, scorer windowing smoke, startup-banner scorer pass/fail fixtures, HC registry scorer synthetic fixtures, stronger no-human AICOM scorer pass/fail fixtures, per-terrain runtime evidence self-test, summary release-identity proof pass/fail fixtures, runtime packet manifest gate-proof plus summary root-binding pass/fail fixtures, AICOM infantry fallback source integration in both maintained terrains, runtime run-ledger validator synthetic pass/fail fixtures, handoff contract self-test, publishable summary/handoff path-sanitization checks and git diff --check; Run-WaspFinalCheck.ps1 completed under Windows PowerShell 5.1 with the known A2 OA command-dialect smoke warning and BugHunt HIGH clean. The local package manifest for 465b5afb2a recorded _MISSIONS.7z as 1,882 entries, 7,165,242 bytes, SHA256 1E4C45CC1A22E1973A9D4B3C80C5B08117D60881B27E1F02726F67EA6A78ABD6, with only Chernarus and Takistan mission folders at archive root.

What is not proven yet:

  • Runtime AICOM, HC delegation, JIP, town cleanup, WDDM/static defense, artillery, and supply behavior.
  • Server deployment, rollback proof and dedicated-server runtime proof.
  • cmdcon30 WEST AI-commander founding resolution.

Release gate: collect a fresh, sanitized Chernarus and Takistan dedicated-server evidence packet, validate the exact role matrix first, then run the token scorer before stronger wording:

& .\Tools\PrTestHarness\Rpt\New-WaspRuntimeRptPacket.ps1 `
  -SourceMapPath "<private-runtime-rpt-source-map.json>" `
  -OutDirectory "<release-candidate-rpts>" `
  -ExpectedCandidate release-command-center-20260630 `
  -ExpectedGit 465b5afb2a `
  -ExpectedArchiveSha256 1E4C45CC1A22E1973A9D4B3C80C5B08117D60881B27E1F02726F67EA6A78ABD6 `
  -Validate -RequireSourceRptExists -Force

& .\Tools\PrTestHarness\Rpt\Test-WaspRuntimeRptPacket.ps1 `
  -RptRoot "<release-candidate-rpts>" `
  -ExpectedCandidate release-command-center-20260630 `
  -ExpectedGit 465b5afb2a `
  -ExpectedArchiveSha256 1E4C45CC1A22E1973A9D4B3C80C5B08117D60881B27E1F02726F67EA6A78ABD6 `
  -RunLedgerPath "<release-candidate-rpts>\release-run-ledger.json" `
  -RequireSourceRptExists

$expectedReleaseMarkers = @(
  "WASPRELEASE|v1|candidate=release-command-center-20260630|git=465b5afb2a|terrain=chernarus",
  "WASPRELEASE|v1|candidate=release-command-center-20260630|git=465b5afb2a|terrain=takistan"
)

& .\Tools\PrTestHarness\Rpt\Test-WaspReleaseRptEvidence.ps1 `
  -RptDirectory "<release-candidate-rpts>" -Recurse `
  -ExpectedMarker $expectedReleaseMarkers

For a wiki/release-safe packet, run the summary wrapper after collecting the same fresh RPTs:

& .\Tools\PrTestHarness\Rpt\New-WaspReleaseRptSummary.ps1 `
  -RptDirectory "<release-candidate-rpts>" -Recurse `
  -ExpectedMarker $expectedReleaseMarkers `
  -RuntimePacketManifestPath "<release-candidate-rpts>\runtime-rpt-packet-manifest.json" `
  -ExpectedCandidate release-command-center-20260630 `
  -ExpectedGit 465b5afb2a `
  -ExpectedArchiveSha256 1E4C45CC1A22E1973A9D4B3C80C5B08117D60881B27E1F02726F67EA6A78ABD6 `
  -RequireRuntimePacketManifest `
  -OutDirectory "<release-candidate-rpts>\summary" -Force

Continue Reading

Previous: Source fix propagation queue | Next: Testing workflow

Main map: Home | Machine ledger: agent-release-readiness.json | Progress: Progress dashboard

Sidebar

Clone this wiki locally