Skip to content

Source Fix Propagation Queue

rayswaynl edited this page Jun 13, 2026 · 269 revisions

Source Fix Propagation Queue

This page tracks mission-code fixes that have reached the Chernarus source mission and the maintained generated Vanilla Takistan target, but still need Arma 2 OA smoke before they can be called release-complete. Agents can load the compact mirror in agent-release-readiness.json.

All source paths are relative to the repo root.

Rule

Missions/[55-2hc]warfarev2_073v48co.chernarus is the source mission. Missions_Vanilla/[61-2hc]warfarev2_073v48co.takistan is the maintained generated/copy target. A fix is not release-complete until:

  1. The Chernarus source patch is present.
  2. LoadoutManager propagation has run.
  3. Generated diffs are inspected.
  4. Every claimed mission root has its generated version.sqf present and terrain-correct.
  5. Relevant Arma 2 OA smoke is recorded.

LoadoutManager root discovery is branch-sensitive. Current docs checkout docs/developer-wiki-index 1aa178f8, stable origin/master cf2a6d6a and release a96fdda2 accept either an ancestor named a2waspwarfare or a repo-shaped root containing Missions/[55-2hc]warfarev2_073v48co.chernarus, Tools/LoadoutManager and AGENTS.md (Tools/LoadoutManager/FileManagement/FileManager.cs:153,158,166,176,186-188 on docs checkout; :165,170-176 on stable/release). Current Miksuu b8389e74 and origin/perf/quick-wins 0076040f still require an ancestor folder named a2waspwarfare (FileManager.cs:145,150-152). Packaging can be skipped for propagation-only runs with A2WASP_SKIP_ZIP=1; see Tools/build workflow.

Generated input gate: version.sqf is required boot input, not tracked source. It is ignored by .gitignore, included by description.ext:39 and initJIPCompatible.sqf:4, and consumed by Rsc/Header.hpp:5,9,21. Before calling any propagated fix release-ready, verify source Chernarus and maintained Vanilla Takistan both have generated version.sqf files with the expected WF_MAXPLAYERS, WF_MISSIONNAME, WF_RESPAWNDELAY, map flags and release/debug defines. The compact agent-readable rule lives in agent-release-readiness.json under versionSqfGeneratedInput.

Current Branch Scope (2026-06-13)

Use this table before treating any queue row as current-branch truth. The docs checkout and stable/release now carry the same propagated fix families, but commander-built ARTY uses different implementation shapes.

Ref Source-backed notes Practical route
Docs checkout docs/developer-wiki-index 1aa178f8 Chernarus and maintained Vanilla carry paratrooper registration (Init_PublicVariables.sqf:39), single client Skill_Init plus apply (Init_Client.sqf:547,571), two guarded FPS publishers (serverFpsGUI.sqf:1, monitorServerFPS.sqf:1), typed supply command-center scan (supplyMissionStarted.sqf:25,28), player-list indexing (playerObjectsList.sqf:17) and commander-team ARTY gunner handoff (Construction_StationaryDefense.sqf:91-93). Treat as the historical propagation-run/source-docs shape. Keep branch-drift checks in this page before promoting to stable/release language.
Stable origin/master cf2a6d6a Chernarus and maintained Vanilla carry paratrooper registration (Init_PublicVariables.sqf:34), single client Skill_Init plus apply (Init_Client.sqf:564,587), one guarded FPS publisher (serverFpsGUI.sqf:4; old monitorServerFPS.sqf absent), heli-aware typed supply command-center scan (supplyMissionStarted.sqf:53,59,81), player-list indexing (playerObjectsList.sqf:18) and marker-based commander ARTY discovery (Construction_StationaryDefense.sqf:133-135; Common_GetTeamArtillery.sqf:46-78). Treat stable as carrying the propagated families, but smoke the stable implementation shape, especially FPS single-publisher and marker-based commander ARTY.
Release origin/release/2026-06-feature-bundle a96fdda2 Release matches the stable shape above in both maintained roots, with client skill line drift (Init_Client.sqf:563,586) and the same guarded FPS, heli-aware supply scan, player-list indexing and marker-based commander ARTY anchors. Use release smoke wording, not docs-checkout handoff wording, for commander ARTY.
Miksuu b8389e74 and origin/perf/quick-wins 0076040f This pass only rechecked LoadoutManager root discovery: both still require an ancestor named a2waspwarfare (FileManager.cs:145,150-152). Recheck each gameplay row on these refs before claiming parity.

Latest Propagation Run

Checked on 2026-06-02 in a checkout where LoadoutManager could resolve its root, with packaging skipped through A2WASP_SKIP_ZIP=1. Codex ran:

$env:A2WASP_SKIP_ZIP = "1"
dotnet run --project Tools\LoadoutManager\LoadoutManager.csproj

Result: generation/copy completed for Chernarus and Takistan, _MISSIONS.7z packaging was intentionally skipped, and the maintained Vanilla Takistan diffs carried the source fixes checked in that lane. Current branch refresh: as of 2026-06-13, docs checkout 1aa178f8, stable origin/master cf2a6d6a and release a96fdda2 all carry the propagated fix families, but stable/release use a single FPS publisher and marker-based commander ARTY discovery while the docs checkout still carries the older two-FPS-publisher plus commander-team gunner handoff shape. The run printed The specified content was not found in the file. once per terrain from BaseTerrain.ReplaceGUIMenuHelp; this is a non-fatal help-menu text replacement warning because Client/GUI/GUI_Menu_Help.sqf is skip-listed and terrain-specific.

Fix Rechecked evidence Result
Paratrooper marker revival Source and Vanilla Common/Init/Init_PublicVariables.sqf:39 include HandleParatrooperMarkerCreation. Chernarus carries it, Vanilla carries it, smoke pending.
Client skill init idempotency Source and Vanilla Client/Init/Init_Client.sqf now run one Skill_Init.sqf compile and then WFBE_SK_FNC_Apply; the duplicate post-apply compile is removed. Chernarus carries it, Vanilla carries it, smoke pending.
Hosted server FPS loop sleep Source and Vanilla serverFpsGUI.sqf:1 and monitorServerFPS.sqf:1 exit on !isDedicated. Chernarus carries it, Vanilla carries it, smoke pending.
Supply mission scan narrowing Docs checkout 1aa178f8 Chernarus and Vanilla use the typed ["Base_WarfareBUAVterminal"] scan at supplyMissionStarted.sqf:28; stable origin/master cf2a6d6a and release a96fdda2 use the heli-aware typed scan at supplyMissionStarted.sqf:59 in both maintained roots, with the terminal post-filter at :53 and nearby-player scan at :81. Treat this as branch-present but smoke-pending; truck/heli command-center smoke remains required before release-ready wording.
Supply player-object list indexing Source and Vanilla playerObjectsList.sqf:17 initialize _i = 0 before the WFBE_SE_PLAYERLIST loop. Chernarus carries it, Vanilla carries it, smoke pending.

Follow-up source check on 2026-06-05 added one later source-only fix to the queue: commander-built artillery ownership. It was not part of the 2026-06-02 LoadoutManager run above. Current docs checkout 1aa178f8 Chernarus and maintained Vanilla carry the commander-team gunner handoff at Construction_StationaryDefense.sqf:91-93; stable origin/master cf2a6d6a and release a96fdda2 instead carry marker-based discovery in both maintained roots by setting WFBE_CommanderArtillery* object variables at Construction_StationaryDefense.sqf:133-135 and scanning same-side marked artillery inside HQ/base-area radius from Common_GetTeamArtillery.sqf:46-78.

Branch Implementation Caveat (2026-06-13 Refresh)

The rows below are a branch-shape map, not a smoke sign-off. Keep exact refs in any claim because docs checkout 1aa178f8 and stable/release now differ on FPS publisher count and commander-built ARTY implementation.

Lane Docs checkout 1aa178f8 Stable origin/master cf2a6d6a / release a96fdda2 Practical rule
Paratrooper marker revival Chernarus/Vanilla register HandleParatrooperMarkerCreation at Common/Init/Init_PublicVariables.sqf:39. Chernarus/Vanilla register it at Common/Init/Init_PublicVariables.sqf:34. Branch-present in checked maintained roots; Arma marker smoke is still required.
Client skill init idempotency One Skill_Init.sqf call at Client/Init/Init_Client.sqf:547, followed by WFBE_SK_FNC_Apply at :571. Stable has Skill_Init / apply at :564,587; release at :563,586. Branch-present in checked maintained roots; Soldier/non-Soldier/respawn smoke is still required.
Hosted server FPS loop sleep serverFpsGUI.sqf:1 and monitorServerFPS.sqf:1 both exit on !isDedicated. serverFpsGUI.sqf:4 exits on !isDedicated; old Server/Module/serverFPS/monitorServerFPS.sqf is absent. Smoke dedicated publish and hosted/listen no-spin against the target branch's publisher shape.
Supply mission scan narrowing Typed terminal scan at supplyMissionStarted.sqf:28, plus terminal post-filter at :25 and nearby-player scan at :44. Heli-aware typed terminal scan at supplyMissionStarted.sqf:59, plus terminal post-filter at :53 and nearby-player scan at :81. Smoke truck and heli command-center completion plus unrelated-object non-completion before release-ready wording.
Supply player-object list indexing _i = 0 before the WFBE_SE_PLAYERLIST loop at playerObjectsList.sqf:17. _i = 0 at playerObjectsList.sqf:18. Branch-present in checked maintained roots; reconnect/JIP lookup smoke remains pending.
Commander-built artillery ownership Commander-team gunner handoff at Construction_StationaryDefense.sqf:91-93; Common_GetTeamArtillery.sqf:10-30 discovers team vehicles only. Non-repair-truck ARTY defenses set WFBE_CommanderArtillery* at Construction_StationaryDefense.sqf:133-135; Common_GetTeamArtillery.sqf:46-78 scans marked same-side artillery in HQ/base-area radius. Treat docs checkout and stable/release as separate source-backed implementations; smoke the exact target branch shape.

Current Propagated Fix Queue

Lane Source status Vanilla status Smoke status Evidence Next action
Paratrooper marker revival Chernarus registers HandleParatrooperMarkerCreation in the client PV list. Vanilla Init_PublicVariables.sqf now registers the handler too. Pending Arma smoke. Source/Vanilla Common/Init/Init_PublicVariables.sqf:39; sender Server/Support/Support_Paratroopers.sqf:117. Smoke a paratrooper support drop and confirm the client marker appears.
Client skill init idempotency Chernarus runs Skill_Init.sqf once, then calls WFBE_SK_FNC_Apply. Vanilla duplicate compile removed. Pending Arma smoke. Source/Vanilla Client/Init/Init_Client.sqf:547,571; skill cap mutation Client/Module/Skill/Skill_Init.sqf:49. Smoke Soldier/non-Soldier AI cap and respawn skill reapply.
Hosted server FPS loop sleep Chernarus FPS publishers exit immediately on !isDedicated. Vanilla FPS publishers have the same early exit. Pending dedicated/hosted smoke. Source/Vanilla Server/GUI/serverFpsGUI.sqf:1; source/Vanilla Server/Module/serverFPS/monitorServerFPS.sqf:1. Smoke dedicated FPS publish and hosted/listen no-spin behavior.
Supply mission scan narrowing Docs checkout 1aa178f8 Chernarus has the typed terminal scan at supplyMissionStarted.sqf:28; stable origin/master cf2a6d6a and release a96fdda2 use the heli-aware typed scan at :59. Maintained Vanilla matches the named branch shapes. Branch-present in checked docs/stable/release roots; truck/heli smoke pending. Docs checkout Chernarus/Vanilla Server/Module/supplyMission/supplyMissionStarted.sqf:25,28,44; stable/release Chernarus/Vanilla :53,59,81; broad nearby-player 8m scan remains intentional. Smoke truck and heli delivery near command centers and no completion near unrelated nearby objects on the target branch.
Supply player-object list indexing Chernarus initializes _i = 0 before the WFBE_SE_PLAYERLIST loop so reconnecting UIDs replace their real row. Vanilla has the same counter placement. Pending reconnect/supply smoke. Source/Vanilla Server/Module/supplyMission/playerObjectsList.sqf:17-29; consumers supplyMissionStarted.sqf:57+ and supplyMissionActive.sqf:51+. Smoke reconnect/JIP player-object replacement and supply mission completion lookup.
Commander-built artillery ownership Docs checkout 1aa178f8 Chernarus routes manned artillery-class base-area defense gunners to the current commander team when one exists; stable origin/master cf2a6d6a and release a96fdda2 use marker-based commander ARTY discovery instead. Maintained Vanilla matches the named branch shapes. Pending commander ARTY smoke for both implementation shapes. Docs checkout Chernarus/Vanilla Server/Construction/Construction_StationaryDefense.sqf:91-93; tactical discovery Common/Functions/Common_GetTeamArtillery.sqf:10-30; stable/release Chernarus/Vanilla Construction_StationaryDefense.sqf:133-135 and Common_GetTeamArtillery.sqf:46-78; tactical UI Client/GUI/GUI_Menu_Tactical.sqf:544,565,594. Smoke commander-built manned ARTY inside the HQ/base circle, Tactical fire-mission listing, ammo loading, direct fire, non-artillery DefenseTeam behavior and HC static-defense fallback. On stable/release, include the marker-based discovery path and repair-truck-built artillery exclusion.
Patrols v2 current-master route Current origin/master cf2a6d6a Chernarus retires old town-based patrol gating and adds the Patrols side-upgrade driver, runner, marker loop and && patrol-worker loop. Maintained Vanilla Takistan has the same Patrols v2 source shape. Pending Arma patrol/HC/marker smoke. Source/Vanilla server_town_ai.sqf:44,220; server_side_patrols.sqf:24-58; Common_RunSidePatrol.sqf:53-83; Server_HandleSpecial.sqf:215-242; Client/FSM/updatepatrolmarkers.sqf:18-58; server_patrols.sqf:26. Smoke Patrols upgrade levels 1/2/3, HC delegate-sidepatrol, friendly-only markers, patrol death, side-slot/cooldown release and Buy Units/RHUD AI-cap text.

Patch-Ready But Not In Current Code

These have source-backed playbooks but are not current code fixes yet. Do not mix them into a propagation run unless the code owner explicitly claims the patch.

Branch-head note: rows below preserve their last lane-specific matrix until the linked owner page is refreshed. If a row still cites 89ae9dad or 7ff18c49, treat that as historical checked-ref evidence, not as a 2026-06-13 current-head claim.

Lane Status Canonical page Why separate
PVF dispatcher lookup hardening P0 patch-ready; current origin/master / local master cf2a6d6a, Miksuu upstream b8389e74, origin/perf/quick-wins 0076040f and release a96fdda2 all still dispatch registered PVF messages with Spawn (Call Compile _script) in both maintained roots. Current master and release add adjacent HC client filtering only, shifting client compile to Client_HandlePVF.sqf:32; Miksuu/perf keep :22; server compile remains Server_HandlePVF.sqf:14 everywhere checked. PVF dispatch implementation Patch Init_PublicVariables.sqf, Server_HandlePVF.sqf and Client_HandlePVF.sqf together with allowlisted missionNamespace getVariable lookup, then propagate maintained Vanilla and smoke RequestJoin/RequestVehicleLock/client messages plus forged unregistered handler rejection. Keep legitimate-handler payload validation and direct PV channels separate.
Factory queue counter/token cleanup Patch-ready, current code still carries both the queue-counter leak and low-entropy token; branch matrix refreshed 2026-06-05. Factory queue cleanup perf/quick-wins and release Chernarus patch only the crewless queue-counter leak; the FIFO token and maintained Vanilla propagation remain open.
SEND_MESSAGE direct compile removal P0 patch-ready direct-PV RCE; current origin/master / local master cf2a6d6a, Miksuu upstream b8389e74, origin/perf/quick-wins 0076040f and release a96fdda2 all keep the direct event handler plus receiver/helper call compile route in both maintained roots (updateclient.sqf:12, Client_onEventHandler_SEND_MESSAGE.sqf:27, Common_SendMessage.sqf:26,38). Public variable channel index Dispatcher allowlisting does not close this direct channel. Patch receiver/helper/callers to structured localization keys/args, propagate maintained Vanilla, then smoke localized artillery/ICBM/side messages and a forged payload treated as data.
Attack-wave direct-PV authority (ATTACK_WAVE_INIT / ATTACK_WAVE_DETAILS) P1 patch-ready direct-PV authority gap; current source/Vanilla, stable origin/master cf2a6d6a, Miksuu upstream b8389e74, origin/perf/quick-wins 0076040f, release a96fdda2, origin/feat/ai-commander c20ce153 and historical upstream/AttackWave 994150da all keep client _supply / _side trust in ATTACK_WAVE_INIT plus trusted ATTACK_WAVE_DETAILS. Attack-wave authority playbook Keep separate from generic PVF dispatcher lookup, SEND_MESSAGE and side-supply clamp work. Treat ATTACK_WAVE_INIT as a request, re-derive side/supply server-side, guard forged detail payloads, propagate maintained Vanilla and smoke valid activation, forged _supply >= 70000, wrong-side payloads, duplicate active waves and JIP replay.
HQ-kill score double-award Patch-ready scoring integrity bug; current source/Vanilla, stable origin/master cf2a6d6a, Miksuu upstream b8389e74, origin/perf/quick-wins 0076040f and release a96fdda2 all keep generic HQ building score plus a second HQ bounty score in Server_OnHQKilled.sqf. Current/release roots use :23,52,80,83,86; Miksuu/perf use :23,47,75,78,81; the building-score coefficient remains 3 in checked roots. Commander/HQ lifecycle Keep one non-teamkill HQ score award and make friendly/teamkill HQ kills score zero. Propagate maintained Vanilla and smoke enemy HQ kill, friendly HQ teamkill and DR-20 idempotency/replayed-HQ-kill interactions.
Factory destroyed-purchase refund contract Branch-split after owner refresh: docs checkout 8d611092, Miksuu b8389e74, perf/quick-wins 0076040f and origin/feat/buymenu-easa-qol a66d4691 still leave the dead/null factory abort as queue cleanup without refund; stable origin/master cf2a6d6a and release a96fdda2 pass _currentCost into BuildUnit and refund Client_BuildUnit.sqf:212-216 in both maintained roots. Factory and purchase systems Keep separate from DR-33 queue-token cleanup: preserve/port the stable/release refund payload as needed, and smoke factory death, buyer disconnect, empty/crewless abort and normal completion. Player purchase authority remains client-local.
Side-supply clamp and temp-channel validation Patch-ready, current source/Vanilla, stable origin/master 89ae9dad, current Miksuu upstream 89ae9dad and release 7ff18c49 all still carry the overspend-as-credit floor plus payload-side trust; perf/quick-wins fixes only the Chernarus arithmetic floor. Economy authority first cut Port or recreate the arithmetic floor-to-zero fix in current source, add west/east side/channel/amount validation, propagate maintained Vanilla, and keep broader DR-44 spend authority/server-ledger work separate.
Side-supply reason string off-by-one Patch-ready low-risk diagnostics cleanup; current source/Vanilla, stable origin/master 89ae9dad, Miksuu upstream 89ae9dad, perf/quick-wins 0076040f and release 7ff18c49 all still carry the helper guard that drops 3-argument caller reasons while preserving 4-argument supply-completion reasons. Economy authority first cut Fix _reason parsing with the side-supply clamp pass because the same helper is being edited, but keep it scoped as logging/audit cleanup rather than authority closure.
Resource income payout/display drift Patch-ready economy correctness review; current source/Vanilla, stable origin/master 89ae9dad, current Miksuu upstream 89ae9dad, perf/quick-wins 0076040f and release 7ff18c49 all still keep the resource-loop cap guard over side supply, player paychecks and AI commander funds, plus the income-system 4 server/client multiplier mismatch. Economy, towns and supply Decide cap-guard intent, then align source Chernarus and maintained Vanilla server payout, AI commander funds and Client_GetIncome/RHUD/menu display math. Smoke capped and uncapped income ticks before changing balance wording.
AI commander upgrade debit/cost lookup Patch-ready AI/economy cleanup; branch check 2026-06-13 shows docs checkout e785f1e9, Miksuu b8389e74 and perf/quick-wins 0076040f still validate [supply, funds] but debit funds/supply swapped at Server_AI_Com_Upgrade.sqf:47,50. Stable origin/master cf2a6d6a, release a96fdda2 and origin/feat/upgrade-queue-stacking b061c905 fix debit order in both maintained roots but keep raw cost lookup at :27; origin/feat/ai-commander c20ce153 also fixes cost-level lookup only in Chernarus. AI commander autonomy audit, Upgrades and research Port or recreate the release debit-order fix where still open, decide whether to take the feat/ai-commander cost-index correction, propagate maintained Vanilla and smoke AI upgrade affordability/debit before enabling an AI commander upgrade scheduler.
AI supply-truck safe-disable Current source Chernarus, maintained Vanilla and origin/master / local master cf2a6d6a now carry the safe-disable shape in both maintained roots: Init_Server.sqf:37 keeps UpdateSupplyTruck commented, :383-384 initializes wfbe_ai_supplytrucks and logs that legacy logistics are disabled, and AI_UpdateSupplyTruck.sqf:17 still points at missing Server\FSM\supplytruck.fsm but is not spawned by current master. Release a96fdda2 matches this. Miksuu upstream b8389e74 and perf/quick-wins 0076040f still raw-spawn the missing worker; feat/ai-commander c20ce153 guards only Chernarus while Vanilla remains raw. AI commander autonomy audit Current master safety cleanup is source-present. Keep it during branch merges/rebases, optionally port the same warning/disable to raw-spawn branches, or intentionally revive logistics with a real server-owned loop/FSM. Keep separate from broader AI commander supervisor work and player-run supply helicopters.
Town AI vehicle despawn safety Patch-ready player-safety cleanup; branch check 2026-06-13 shows docs checkout b9e80da0 Chernarus/Vanilla deletes inactive tracked town-AI vehicles with alive _x plus !(isPlayer leader group _x) at server_town_ai.sqf:214, stable origin/master cf2a6d6a at :207, Miksuu b8389e74 at :195, perf/quick-wins 0076040f at :219 and release a96fdda2 at :200, all without a player crew check. No checked ref contains Server_CleanupExpiredTownDefenseAssets.sqf; older 89ae9dad helper evidence is historical. Town AI vehicle despawn safety Add a full player-occupancy guard before deleting wfbe_active_vehicles, preserve empty AI-only cleanup, propagate maintained Vanilla and smoke occupied driver/gunner/cargo/turret cases plus empty AI vehicle cleanup. Treat any future persistent town-defense cleanup helper as a separate re-audit surface.
Commander reassignment call shape Patch-ready branch split; branch check 2026-06-14 shows docs checkout e2c9f6ed Chernarus/Vanilla still use _side = _this at Server_AssignNewCommander.sqf:3, while stable origin/master cf2a6d6a, Miksuu b8389e74, perf/quick-wins 0076040f, release a96fdda2 and feat/ai-commander c20ce153 fix helper unpacking at Server_AssignNewCommander.sqf:4-5 in both maintained roots. All checked roots still keep duplicate new-commander-assigned senders and visible-name UI selection. Commander reassignment call shape, Commander vote/reassignment Port or recreate the helper unpacking fix where still open, choose one notification owner, switch UI selection to row value/team identity, propagate maintained Vanilla and smoke one-message reassignment plus duplicate/similar leader names.
Construction small-site logic cleanup Patch-ready; docs checkout 1aa178f8, stable origin/master cf2a6d6a, Miksuu b8389e74, perf 0076040f and release a96fdda2 all still carry SmallSite add/add while MediumSite removes in both maintained roots. Construction logic list cleanup Needs the one-line SmallSite add-to-remove edit, then Vanilla propagation and construction smoke.
Auto-wall toggle scope cleanup Docs-ready workflow/authority cleanup; docs checkout 1aa178f8, stable origin/master cf2a6d6a, Miksuu b8389e74, perf 0076040f and release a96fdda2 all keep User14 toggling one global isAutoWallConstructingEnabled value that later SmallSite/MediumSite workers consume. Stable/release initialize it to true and add an AARadar exclusion but not side/requester scoping. Construction and CoIn systems atlas Decide global-vs-side/requester policy, then either label the match-wide behavior or key/validate the state and smoke two players/sides toggling before small and medium construction.
RHUD/endgame title display handle split Patch-ready; current source/Vanilla, stable/upstream and release all still share currentCutDisplay between OptionsAvailable/RHUD/action icons and EndOfGameStats. UI IDD collision repair Needs a title display-variable split or RHUD/action-icon endgame gate before propagation; keep separate from broader UI IDD cleanup and smoke RHUD/action icons/endgame stat bars together.
Clickable text soundPush config Patch-ready; docs/source HEAD f7bc72a8, current origin/master cf2a6d6a, Miksuu upstream/master b8389e74, origin/perf/quick-wins 0076040f, release a96fdda2 and UI theme branches all still carry malformed RscClickableText.soundPush[] = {, 0.2, 1}; at Rsc/Ressources.hpp:556 in both maintained roots; :92 shows valid {"", 0.2, 1} precedent. Current master/release now have 14 derived RscClickableText controls per maintained root, while docs/source/upstream/perf/theme branches have 17. Client UI systems atlas Needs one base-class config edit in source Chernarus, maintained Vanilla propagation, then Arma 2 OA dialog smoke across representative RscClickableText inheritors before release wording.
Empty supply-truck cleanup timeout Docs-ready logistics/cleanup owner decision; current source/Vanilla, current origin/master / local master 89ae9dad, Miksuu upstream 89ae9dad, perf/quick-wins 0076040f and release 7ff18c49 all hard-code _delay = 86400 for supply-truck classes in Server_HandleEmptyVehicle.sqf:23 while the collector only hands empty vehicles to the handler at emptyvehiclescollector.sqf:17. The 2cdf5fb8..89ae9dad diff does not touch the checked empty-vehicle cleanup files. Marker cleanup/restoration atlas Decide keep-and-label versus shorter/parameterized timeout, then patch source Chernarus plus maintained Vanilla if changing behavior. Smoke ordinary empty vehicles, ambulance/repair double-timeout vehicles, supply trucks used for supply/logistics and long-match object counts.
Gear template profile filter Patch-ready; current source/Vanilla, current origin/master / local master 89ae9dad, Miksuu 89ae9dad, perf/quick-wins 0076040f and release 7ff18c49 all still carry undefined _u_upgrade save filtering plus the six-field profile import guard in both maintained roots. The checked gear profile/template files did not change from historical stable 2cdf5fb8 to current 89ae9dad. Gear template profile filter Needs save-filter replacement in Client_UI_Gear_SaveTemplateProfile.sqf plus an Init_ProfileGear.sqf import guard/default before propagation.
Gear template creation/display/save gate alignment Owner-decision consistency work; current source/Vanilla, current origin/master / local master 89ae9dad, Miksuu upstream 89ae9dad, perf/quick-wins 0076040f and release 7ff18c49 all keep the AddTemplate Barracks-or-Gear creation gate, Gear-only FillTemplates display gate and undefined save-filter _u_upgrade. The checked gear template/profile files did not change from historical stable 2cdf5fb8 to current 89ae9dad. Gear template profile filter Decide whether templates are intentionally unlocked by either Barracks/Gear lane or should be Gear-only across creation, display and profile save. Keep separate from gear authority hardening; patch source Chernarus plus maintained Vanilla only after the owner decision.
Vehicle cargo equip loop bounds Patch-ready; current source/Vanilla, current origin/master / local master 89ae9dad, Miksuu 89ae9dad and release 7ff18c49 still carry the five inclusive cargo loops. The checked cargo helper files did not change from historical stable 2cdf5fb8 to current 89ae9dad. perf/quick-wins 0076040f fixes Chernarus only, while perf Vanilla still needs propagation. Vehicle cargo equip loop bounds Needs five loop-bound edits in current source Common_EquipVehicle.sqf and Common_EquipBackpack.sqf, then maintained Vanilla propagation and cargo smoke.
Buy-menu price/key alignment Partially fixed on stable/release after owner refresh: docs checkout 8d611092, Miksuu b8389e74 and perf/quick-wins 0076040f still carry selected-detail price drift, stale UNIT_COST_MODIFIER reset behavior and the driver-default profile key split. Stable origin/master cf2a6d6a and release a96fdda2 fix selected-detail display and mirror both driver keys in both maintained roots; origin/feat/buymenu-easa-qol a66d4691 fixes selected-detail display in Chernarus only. No checked ref resets UNIT_COST_MODIFIER to 1 for level 0. Factory and purchase systems atlas Needs one shared price/reset path for unit-cost level 0/1/2; then decide whether dual-key mirroring is the intended driver-default compatibility policy and smoke Buy Units UI/economy paths.
Visible parameter runtime-consumer cleanup Docs-ready parameter cleanup; current source/Vanilla, stable, Miksuu upstream and release all keep WFBE_C_AI_MAX visible/defaulted without an active maintained-root runtime reader, and keep WFBE_C_UNITS_CLEAN_TIMEOUT visible/defaulted while live cleanup uses bodies/empty timeout variables. Mission parameters Decide whether to wire, hide, rename or label each parameter historical; apply consistently to source Chernarus plus maintained Vanilla, then smoke host parameter display, player AI cap UI/RHUD, corpse cleanup and empty-vehicle cleanup.
Salvage payout casing and loop/authority cleanup Patch-ready; docs checkout 1aa178f8, stable origin/master cf2a6d6a, Miksuu b8389e74, origin/perf/quick-wins 0076040f, release a96fdda2 and historical Miksuu salvage branches all still carry lowercase ChangePlayerfunds, the salvage-truck ` ` loop and client-local deletion/reward shape.
Service menu affordability guards Patch-ready, current code still carries the defect; branch matrix refreshed 2026-06-07. Current stable origin/master / local master / Miksuu 89ae9dad still improves button-enable order but leaves client-side action debit risks, and the checked service/EASA files did not change from historical stable 2cdf5fb8 to current 89ae9dad. Service menu affordability guards Current docs/source and maintained Vanilla need action-time price/funds/context guards. Release 7ff18c49 partially guards rearm/refuel in both maintained roots, but repair/heal action-time affordability/context and EASA exact-funds/client-debit behavior remain open.
RequestSpecial upgrade-sync tuple cleanup Patch-ready consistency cleanup; branch check 2026-06-13 shows docs checkout e785f1e9, stable origin/master cf2a6d6a, Miksuu b8389e74, perf/quick-wins 0076040f, release a96fdda2 and origin/feat/upgrade-queue-stacking b061c905 all keep the mixed _args / _this parser at Server_HandleSpecial.sqf:67-73, while _args = _this means current behavior is equivalent. Caller line drift: docs checkout GUI_UpgradeMenu.sqf:171, stable/upgrade-queue :268, Miksuu/perf :241, release :254. Support specials atlas, Upgrades and research Normalize Server_HandleSpecial.sqf:67-73 to one tuple source, keep RequestUpgrade authority migration separate, propagate maintained Vanilla and smoke upgrade completion/non-server timer sync plus malformed payload rejection.
Vote/help/main-menu UI cleanup Patch-ready; current source/Vanilla, stable, Miksuu upstream, perf/quick-wins and release all keep inclusive vote refresh loops, vote row-color offset, mismatched help load/unload namespace state and GPS zoom router cases without audited button emitters. Client UI systems atlas Fix vote loops and row coloring, clean the help onLoad/onUnload namespace contract, decide remove-vs-revive for GPS 17/18, propagate maintained Vanilla and smoke vote refresh, help open/close and main-menu HUD/GPS behavior.
Fast travel fee UX Docs-ready owner-decision cleanup; current source/Vanilla, current origin/master / local master 89ae9dad, Miksuu upstream 89ae9dad, perf/quick-wins and release all keep the same Tactical fee-mode TODO, unaffordable-destination hiding, marker-only price text and local travel debit. The checked Tactical menu/constants files did not change from historical stable 2cdf5fb8 to current 89ae9dad. Client UI systems atlas Decide hide-vs-disabled/prompt policy, add a final local funds/context recheck if paid mode stays, propagate maintained Vanilla and smoke modes 0/1/2, insufficient/exact/sufficient funds, HQ/town/command-center starts and group/vehicle travel.
Camp flag texture drift Branch-split. Stable origin/master cf2a6d6a and release a96fdda2 already fix independent camp-capture flags in both maintained roots; docs checkout 3eefcb00 and Miksuu b8389e74 still use the old owner, and perf/quick-wins 0076040f fixes Chernarus only. Repair-side flag refresh remains open in every checked ref. Towns, camps and capture atlas Preserve stable/release server_town_camp.sqf:83-86; patch old-owner lines where still targeted (server_town_camp.sqf:135 on docs/perf, :89 on Miksuu); add setFlagTexture to repair-camp around docs Server_HandleSpecial.sqf:165,168, stable :305,308, Miksuu/release :263,266 and perf :243,246. Smoke independent capture and camp repair.
Camp count helper fallback semantics Patch-ready caller-semantics cleanup; docs checkout 3eefcb00, stable origin/master cf2a6d6a, Miksuu b8389e74, perf/quick-wins 0076040f and release a96fdda2 all keep zero-camp helpers returning 1 at Common_GetTotalCamps.sqf:10 and Common_GetTotalCampsOnSide.sqf:16, feeding capture mode 2, threeway respawn and depot-buy gates. Towns, camps and capture atlas Decide real-count versus safe-denominator semantics, then split helpers or add caller-specific zero-camp guards. Branch-line drift is documented on the owner page; smoke capture mode 2, threeway defender respawn and depot infantry buys on zero, partial and all-camp towns.
WASP marker wait cleanup Opportunity/source implementation still needed; branch check 2026-06-06 confirms current source/Vanilla, current origin/master / local master 89ae9dad, current Miksuu 89ae9dad, perf/quick-wins 0076040f and release 7ff18c49 all keep the display-54 input-lock busy wait while the display-12 sibling is already throttled. The 2cdf5fb8..89ae9dad diff does not touch the checked WASP helper/client-init files. WASP marker wait cleanup Replace the display-54 wait with a throttled waitUntil/sleep shape, preserve key handler wiring and final input unlock, propagate maintained Vanilla, then smoke map-marker double-click naming, Enter prefixing, Escape cleanup and timeout/no-dialog input re-enable.

Propagation Procedure

  1. Start from a clean or intentionally understood worktree.
  2. For propagation-only runs, set A2WASP_SKIP_ZIP=1.
  3. Run dotnet run --project Tools\LoadoutManager\LoadoutManager.csproj from the repo root, or dotnet run from Tools/LoadoutManager.
  4. Inspect Missions_Vanilla/[61-2hc]warfarev2_073v48co.takistan diffs for the intended source fixes.
  5. Treat The specified content was not found in the file. from ReplaceGUIMenuHelp as a non-fatal warning unless a future diff shows help-menu title replacement was expected for that terrain.
  6. Verify generated version.sqf exists and matches the intended target root before pack/test/release claims; use agent-release-readiness.json versionSqfGeneratedInput as the machine checklist.
  7. Do not claim Modded_Missions/* propagation; current tooling does not actively maintain those folders. A 2026-06-03 scout confirmed all tracked modded folders lack generated version.sqf, several lack core bootstrap files, and 18 Napf/Eden/Lingor files contain unresolved conflict markers.
  8. Run or record the relevant smoke from Testing workflow, especially the propagated fix smoke pack.
  9. Update this page, Progress dashboard, agent-release-readiness.json, agent-feature-status.jsonl, agent-hardening-backlog.jsonl and agent-knowledge.jsonl.

Validation Matrix

Fix Minimum smoke
Paratrooper marker revival Trigger paratrooper support; marker is created on the requesting client and no unregistered-client-PVF error appears. See the dedicated smoke row in Testing workflow.
Client skill init idempotency Soldier class receives one AI-cap boost, non-Soldier keeps configured cap, and respawn still reapplies skill effects. See the hosted/respawn row in Testing workflow.
Hosted server FPS loop sleep Dedicated server still publishes SERVER_FPS_GUI / WFBE_VAR_SERVER_FPS; hosted/listen run does not spin the FPS publisher loops. See the dedicated/hosted row in Testing workflow.
Supply mission scan narrowing Supply truck/heli completes at a real command center; unrelated nearby objects do not complete the mission; JIP cooldown behavior remains unchanged. See the supply scan row in Testing workflow.
Supply player-object list indexing A reconnecting/JIP player with an existing UID updates the matching WFBE_SE_PLAYERLIST row, not row 0, and supply completion still finds the correct nearby player object. See the reconnect row in Testing workflow.
Commander-built artillery ownership Commander-built manned artillery inside the HQ/base circle appears in the commander's Tactical fire-mission path, ammo loading still targets the gun, direct fire still works, non-artillery statics remain on the base-area DefenseTeam, and HC static-defense delegation does not break commander-team discoverability. On stable origin/master cf2a6d6a and release a96fdda2, the expected source shape is marker-based discovery through WFBE_CommanderArtillery* rather than the docs-checkout gunner handoff, so smoke the marker path and repair-truck exclusion explicitly. See the commander artillery row in Testing workflow.

Agent Index Facts

[
  {"fact":"loadoutmanager_root_discovery","source":"Tools/LoadoutManager/FileManagement/FileManager.cs","summary":"Branch-sensitive: docs checkout 1aa178f8, stable origin/master cf2a6d6a and release a96fdda2 accept either an ancestor named a2waspwarfare or a repo-shaped root containing Missions/[55-2hc]warfarev2_073v48co.chernarus, Tools/LoadoutManager and AGENTS.md; Miksuu b8389e74 and perf/quick-wins 0076040f still require an ancestor named a2waspwarfare."},
  {"fact":"loadoutmanager_skip_zip","source":"Tools/LoadoutManager/ZipManager.cs","summary":"Set A2WASP_SKIP_ZIP to 1, true or yes to run generation/copy without packaging _MISSIONS.7z."},
  {"fact":"version_sqf_generated_input_gate","source":"agent-release-readiness.json#versionSqfGeneratedInput","summary":"version.sqf is ignored/generated but required by description.ext, initJIPCompatible.sqf and Rsc/Header.hpp; verify per-target generated files before pack, smoke or release claims."},
  {"fact":"docs_source_propagated_fixes","source":"Current Branch Scope (2026-06-13)","summary":"Docs checkout 1aa178f8 carries paratrooper marker registration, duplicate Skill_Init removal, two hosted-FPS loop exits, typed supply command-center scan, supply player-object indexing and commander-team ARTY gunner handoff in Chernarus source and maintained Vanilla Takistan. Stable origin/master cf2a6d6a and release a96fdda2 carry the same propagated families but use one guarded FPS publisher plus heli-aware supply scan and marker-based commander ARTY discovery in both maintained roots. Arma smoke remains pending."},
  {"fact":"latest_propagation_run","source":"Source-Fix-Propagation-Queue.md#latest-propagation-run","summary":"2026-06-02 LoadoutManager run completed generation/copy for Chernarus and Takistan with A2WASP_SKIP_ZIP=1; all five tracked fixes propagated, Arma smoke remains pending."}
]

Continue Reading

Previous: Testing workflow | Next: Tools/build workflow

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

Sidebar

Clone this wiki locally