test: Campaign LA finish LA2 probe and idle gates
Prove idle play remains passive and live until cancellation, then converges through one truthful status teardown. Keep probe mode string-only so numeric enum aliases cannot expand the pinned v1 contract, and record the Windows/WSL gates.
This commit is contained in:
parent
c601942467
commit
000ea979d5
5 changed files with 243 additions and 38 deletions
|
|
@ -167,9 +167,11 @@ internal sealed class HeadlessBotPolicyDescriptor
|
|||
/// The pinned launch-contract schema defines exactly two states for a
|
||||
/// session — ABSENT (mapped to <see langword="null"/>, meaning "play") or
|
||||
/// the literal string <c>"probe"</c> — so <see cref="Probe"/> is the only
|
||||
/// member; there is no explicit "play" spelling.
|
||||
/// member; there is no explicit "play" spelling. This deliberately uses
|
||||
/// <see cref="HeadlessConfigurationLoader"/>'s global camel-case,
|
||||
/// string-only enum converter; a per-enum converter with its default options
|
||||
/// would accidentally accept numeric <c>0</c> as a second probe spelling.
|
||||
/// </summary>
|
||||
[JsonConverter(typeof(JsonStringEnumConverter<HeadlessSessionMode>))]
|
||||
internal enum HeadlessSessionMode
|
||||
{
|
||||
Probe,
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue