Recheck storage slots after spawn preload and streaming handoff
This commit is contained in:
@@ -1,5 +1,57 @@
|
||||
# Mission preparation presentation
|
||||
|
||||
## Storage slots and post-preload check (0.0.8 candidate)
|
||||
|
||||
The user tested published 0.0.7 on RKS #2 and still opened an empty prison crate
|
||||
before its pistol appeared. The actual client log at 17:34 on September 20
|
||||
confirms the update from 0.0.6 to 0.0.7. It acknowledged 50 objects and 28 items
|
||||
at 17:34:35.261, then opened inventory at 17:34:40.453. The server acknowledged
|
||||
the same snapshot and began preload at 15:34:35 UTC. This was a failed retest,
|
||||
not an outdated package. The previous local tests did not establish the reported
|
||||
dedicated-client behavior.
|
||||
|
||||
Two gaps are addressed in this candidate. Manager `GetItems` membership alone
|
||||
does not check the actual storage slot or the `BaseInventoryStorageComponent.GetAll`
|
||||
list used by vanilla `SCR_InventoryStorageBaseUI`. The client now requires an
|
||||
item's parent slot, reverse slot lookup, slot occupant and storage enumeration
|
||||
to agree as well as membership in the expected manager.
|
||||
|
||||
The initial acknowledgement now only allows native asset preload. After preload
|
||||
completes, the server restores normal streaming for the snapshot and reinstates
|
||||
the spawn-position observer. It requests a second, token-bound acknowledgement.
|
||||
The client retains the manifest and requires all objects and storage links to
|
||||
remain present for one continuous second under normal streaming. A missing item
|
||||
resets this interval. Only this final acknowledgement allows assignment; timeout
|
||||
also covers this stage. Snapshot changes invalidate both acknowledgements and
|
||||
require another preload. Cleanup transfers the observer to the controlled actor
|
||||
or removes it if the admission failed.
|
||||
|
||||
Regression adapters cover stale/premature final replies, final-stage timeout,
|
||||
missing slot/storage/UI enumeration despite manager membership, and disappearance
|
||||
after preload resetting the final check. These changes close identified gaps;
|
||||
the logs do not prove which gap caused the user's empty crate. Dedicated
|
||||
fresh-join and late-join acceptance remain pending.
|
||||
|
||||
The 17:41 local Workbench run compiled the candidate. Initial storage readiness
|
||||
was acknowledged at 17:42:50.749, native preload completed and the final check
|
||||
started at 17:42:51.758, and final storage readiness was acknowledged at
|
||||
17:42:52.891. The prisoner-admission assertion followed at 17:42:53.381. The
|
||||
full victory fixture later failed in vanilla `SCR_AIGetSuppressionVolumePosition`
|
||||
(`No suppression volume provided!`); that failure is retained, and is not a
|
||||
successful full-mission verdict. Cleanup and unchanged addon sources were
|
||||
confirmed. Raw results are in
|
||||
`/tmp/erri-spawn-slots-20260920/logs/logs_2026-09-20_17-41-56`.
|
||||
|
||||
All repository checks passed. The focused native `core/prisoner-kit` fixture
|
||||
then completed 171 assertions without script/runtime failures. Both readiness
|
||||
acknowledgements preceded admission; the fixture checked native clothing,
|
||||
equipment and physical stock transfers. Cleanup and unchanged source were
|
||||
confirmed. The four external RHS/WCS localization errors remain in its strict
|
||||
native verdict. Results are in
|
||||
`/tmp/erri-spawn-slots-kit-20260920/logs/logs_2026-09-20_17-44-35`.
|
||||
This is local Workbench evidence, not a successful RKS #2 retest. Publishing and
|
||||
updating the server/client to 0.0.8 remain necessary for dedicated validation.
|
||||
|
||||
## Client inventory readiness (0.0.7 candidate)
|
||||
|
||||
The user reported arriving before loot was available with 0.0.6. The client's
|
||||
|
||||
Reference in New Issue
Block a user