@my-swu/simulator-client / AiDecisionDiagnostic
Interface: AiDecisionDiagnostic
Defined in: packages/ts-sdk/src/generated/types/common.ts:366
One AI decision's search-budget diagnostics, safe for durable storage.
Example:
import type { AiDecisionDiagnostic } from '@my-swu/simulator-client'
const aiDecisionDiagnostic: AiDecisionDiagnostic = {
"seat": "one",
"difficulty": "easy",
"snapshotRevision": 0,
"eventsApplied": 0,
"searchMode": "mcts",
"commandKind": 'example',
"queueMs": 0,
"elapsedMs": 0,
"iterationsDone": 0,
"iterationsBudget": 0,
"minIterations": 0,
"workersRequested": 0,
"workersCompleted": 0,
"schedulerIdle": false,
"legalCount": 0,
"timeLimited": false,
"hardFloorOverrun": false,
"starved": false,
"starvationFallback": false,
}
console.log(aiDecisionDiagnostic)Properties
abilityId?
Example:
import type { AiDecisionDiagnostic } from '@my-swu/simulator-client'
const aiDecisionDiagnostic: AiDecisionDiagnostic = {
"seat": "one",
"difficulty": "easy",
"snapshotRevision": 0,
"eventsApplied": 0,
"searchMode": "mcts",
"commandKind": 'example',
"queueMs": 0,
"elapsedMs": 0,
"iterationsDone": 0,
"iterationsBudget": 0,
"minIterations": 0,
"workersRequested": 0,
"workersCompleted": 0,
"schedulerIdle": false,
"legalCount": 0,
"timeLimited": false,
"hardFloorOverrun": false,
"starved": false,
"starvationFallback": false,
}
const { abilityId } = aiDecisionDiagnostic
console.log(abilityId)
optionalabilityId?:number|null
Defined in: packages/ts-sdk/src/generated/types/common.ts:370
Pending ability the chosen command answered, when applicable.
commandKind
Example:
import type { AiDecisionDiagnostic } from '@my-swu/simulator-client'
const aiDecisionDiagnostic: AiDecisionDiagnostic = {
"seat": "one",
"difficulty": "easy",
"snapshotRevision": 0,
"eventsApplied": 0,
"searchMode": "mcts",
"commandKind": 'example',
"queueMs": 0,
"elapsedMs": 0,
"iterationsDone": 0,
"iterationsBudget": 0,
"minIterations": 0,
"workersRequested": 0,
"workersCompleted": 0,
"schedulerIdle": false,
"legalCount": 0,
"timeLimited": false,
"hardFloorOverrun": false,
"starved": false,
"starvationFallback": false,
}
const { commandKind } = aiDecisionDiagnostic
console.log(commandKind)commandKind:
string
Defined in: packages/ts-sdk/src/generated/types/common.ts:374
Privacy-safe chosen-command shape: snake_case command kind only.
difficulty
Example:
import type { AiDecisionDiagnostic } from '@my-swu/simulator-client'
const aiDecisionDiagnostic: AiDecisionDiagnostic = {
"seat": "one",
"difficulty": "easy",
"snapshotRevision": 0,
"eventsApplied": 0,
"searchMode": "mcts",
"commandKind": 'example',
"queueMs": 0,
"elapsedMs": 0,
"iterationsDone": 0,
"iterationsBudget": 0,
"minIterations": 0,
"workersRequested": 0,
"workersCompleted": 0,
"schedulerIdle": false,
"legalCount": 0,
"timeLimited": false,
"hardFloorOverrun": false,
"starved": false,
"starvationFallback": false,
}
const { difficulty } = aiDecisionDiagnostic
console.log(difficulty)difficulty:
AiDifficulty
Defined in: packages/ts-sdk/src/generated/types/common.ts:375
elapsedMs
Example:
import type { AiDecisionDiagnostic } from '@my-swu/simulator-client'
const aiDecisionDiagnostic: AiDecisionDiagnostic = {
"seat": "one",
"difficulty": "easy",
"snapshotRevision": 0,
"eventsApplied": 0,
"searchMode": "mcts",
"commandKind": 'example',
"queueMs": 0,
"elapsedMs": 0,
"iterationsDone": 0,
"iterationsBudget": 0,
"minIterations": 0,
"workersRequested": 0,
"workersCompleted": 0,
"schedulerIdle": false,
"legalCount": 0,
"timeLimited": false,
"hardFloorOverrun": false,
"starved": false,
"starvationFallback": false,
}
const { elapsedMs } = aiDecisionDiagnostic
console.log(elapsedMs)elapsedMs:
number
Defined in: packages/ts-sdk/src/generated/types/common.ts:376
eventsApplied
Example:
import type { AiDecisionDiagnostic } from '@my-swu/simulator-client'
const aiDecisionDiagnostic: AiDecisionDiagnostic = {
"seat": "one",
"difficulty": "easy",
"snapshotRevision": 0,
"eventsApplied": 0,
"searchMode": "mcts",
"commandKind": 'example',
"queueMs": 0,
"elapsedMs": 0,
"iterationsDone": 0,
"iterationsBudget": 0,
"minIterations": 0,
"workersRequested": 0,
"workersCompleted": 0,
"schedulerIdle": false,
"legalCount": 0,
"timeLimited": false,
"hardFloorOverrun": false,
"starved": false,
"starvationFallback": false,
}
const { eventsApplied } = aiDecisionDiagnostic
console.log(eventsApplied)eventsApplied:
number
Defined in: packages/ts-sdk/src/generated/types/common.ts:380
Engine event counter of the searched state; exact cross-check key.
frameIndex?
Example:
import type { AiDecisionDiagnostic } from '@my-swu/simulator-client'
const aiDecisionDiagnostic: AiDecisionDiagnostic = {
"seat": "one",
"difficulty": "easy",
"snapshotRevision": 0,
"eventsApplied": 0,
"searchMode": "mcts",
"commandKind": 'example',
"queueMs": 0,
"elapsedMs": 0,
"iterationsDone": 0,
"iterationsBudget": 0,
"minIterations": 0,
"workersRequested": 0,
"workersCompleted": 0,
"schedulerIdle": false,
"legalCount": 0,
"timeLimited": false,
"hardFloorOverrun": false,
"starved": false,
"starvationFallback": false,
}
const { frameIndex } = aiDecisionDiagnostic
console.log(frameIndex)
optionalframeIndex?:number|null
Defined in: packages/ts-sdk/src/generated/types/common.ts:385
Index of the replay frame this decision was made on (the state BEFORE the chosen command applied). None when no frame was recorded yet.
hardFloorOverrun
Example:
import type { AiDecisionDiagnostic } from '@my-swu/simulator-client'
const aiDecisionDiagnostic: AiDecisionDiagnostic = {
"seat": "one",
"difficulty": "easy",
"snapshotRevision": 0,
"eventsApplied": 0,
"searchMode": "mcts",
"commandKind": 'example',
"queueMs": 0,
"elapsedMs": 0,
"iterationsDone": 0,
"iterationsBudget": 0,
"minIterations": 0,
"workersRequested": 0,
"workersCompleted": 0,
"schedulerIdle": false,
"legalCount": 0,
"timeLimited": false,
"hardFloorOverrun": false,
"starved": false,
"starvationFallback": false,
}
const { hardFloorOverrun } = aiDecisionDiagnostic
console.log(hardFloorOverrun)hardFloorOverrun:
boolean
Defined in: packages/ts-sdk/src/generated/types/common.ts:389
Whether the minimum-iteration floor pushed past the wall-clock budget.
iterationCeiling?
Example:
import type { AiDecisionDiagnostic } from '@my-swu/simulator-client'
const aiDecisionDiagnostic: AiDecisionDiagnostic = {
"seat": "one",
"difficulty": "easy",
"snapshotRevision": 0,
"eventsApplied": 0,
"searchMode": "mcts",
"commandKind": 'example',
"queueMs": 0,
"elapsedMs": 0,
"iterationsDone": 0,
"iterationsBudget": 0,
"minIterations": 0,
"workersRequested": 0,
"workersCompleted": 0,
"schedulerIdle": false,
"legalCount": 0,
"timeLimited": false,
"hardFloorOverrun": false,
"starved": false,
"starvationFallback": false,
}
const { iterationCeiling } = aiDecisionDiagnostic
console.log(iterationCeiling)
optionaliterationCeiling?:number|null
Defined in: packages/ts-sdk/src/generated/types/common.ts:393
Idle-stretch ceiling granted for this decision, when one was.
iterationsBudget
Example:
import type { AiDecisionDiagnostic } from '@my-swu/simulator-client'
const aiDecisionDiagnostic: AiDecisionDiagnostic = {
"seat": "one",
"difficulty": "easy",
"snapshotRevision": 0,
"eventsApplied": 0,
"searchMode": "mcts",
"commandKind": 'example',
"queueMs": 0,
"elapsedMs": 0,
"iterationsDone": 0,
"iterationsBudget": 0,
"minIterations": 0,
"workersRequested": 0,
"workersCompleted": 0,
"schedulerIdle": false,
"legalCount": 0,
"timeLimited": false,
"hardFloorOverrun": false,
"starved": false,
"starvationFallback": false,
}
const { iterationsBudget } = aiDecisionDiagnostic
console.log(iterationsBudget)iterationsBudget:
number
Defined in: packages/ts-sdk/src/generated/types/common.ts:394
iterationsDone
Example:
import type { AiDecisionDiagnostic } from '@my-swu/simulator-client'
const aiDecisionDiagnostic: AiDecisionDiagnostic = {
"seat": "one",
"difficulty": "easy",
"snapshotRevision": 0,
"eventsApplied": 0,
"searchMode": "mcts",
"commandKind": 'example',
"queueMs": 0,
"elapsedMs": 0,
"iterationsDone": 0,
"iterationsBudget": 0,
"minIterations": 0,
"workersRequested": 0,
"workersCompleted": 0,
"schedulerIdle": false,
"legalCount": 0,
"timeLimited": false,
"hardFloorOverrun": false,
"starved": false,
"starvationFallback": false,
}
const { iterationsDone } = aiDecisionDiagnostic
console.log(iterationsDone)iterationsDone:
number
Defined in: packages/ts-sdk/src/generated/types/common.ts:395
legalCount
Example:
import type { AiDecisionDiagnostic } from '@my-swu/simulator-client'
const aiDecisionDiagnostic: AiDecisionDiagnostic = {
"seat": "one",
"difficulty": "easy",
"snapshotRevision": 0,
"eventsApplied": 0,
"searchMode": "mcts",
"commandKind": 'example',
"queueMs": 0,
"elapsedMs": 0,
"iterationsDone": 0,
"iterationsBudget": 0,
"minIterations": 0,
"workersRequested": 0,
"workersCompleted": 0,
"schedulerIdle": false,
"legalCount": 0,
"timeLimited": false,
"hardFloorOverrun": false,
"starved": false,
"starvationFallback": false,
}
const { legalCount } = aiDecisionDiagnostic
console.log(legalCount)legalCount:
number
Defined in: packages/ts-sdk/src/generated/types/common.ts:396
minIterations
Example:
import type { AiDecisionDiagnostic } from '@my-swu/simulator-client'
const aiDecisionDiagnostic: AiDecisionDiagnostic = {
"seat": "one",
"difficulty": "easy",
"snapshotRevision": 0,
"eventsApplied": 0,
"searchMode": "mcts",
"commandKind": 'example',
"queueMs": 0,
"elapsedMs": 0,
"iterationsDone": 0,
"iterationsBudget": 0,
"minIterations": 0,
"workersRequested": 0,
"workersCompleted": 0,
"schedulerIdle": false,
"legalCount": 0,
"timeLimited": false,
"hardFloorOverrun": false,
"starved": false,
"starvationFallback": false,
}
const { minIterations } = aiDecisionDiagnostic
console.log(minIterations)minIterations:
number
Defined in: packages/ts-sdk/src/generated/types/common.ts:400
Requested minimum iterations; unified search keeps its deadline authoritative.
queueMs
Example:
import type { AiDecisionDiagnostic } from '@my-swu/simulator-client'
const aiDecisionDiagnostic: AiDecisionDiagnostic = {
"seat": "one",
"difficulty": "easy",
"snapshotRevision": 0,
"eventsApplied": 0,
"searchMode": "mcts",
"commandKind": 'example',
"queueMs": 0,
"elapsedMs": 0,
"iterationsDone": 0,
"iterationsBudget": 0,
"minIterations": 0,
"workersRequested": 0,
"workersCompleted": 0,
"schedulerIdle": false,
"legalCount": 0,
"timeLimited": false,
"hardFloorOverrun": false,
"starved": false,
"starvationFallback": false,
}
const { queueMs } = aiDecisionDiagnostic
console.log(queueMs)queueMs:
number
Defined in: packages/ts-sdk/src/generated/types/common.ts:404
Time spent waiting for scheduler admission before the search started.
schedulerIdle
Example:
import type { AiDecisionDiagnostic } from '@my-swu/simulator-client'
const aiDecisionDiagnostic: AiDecisionDiagnostic = {
"seat": "one",
"difficulty": "easy",
"snapshotRevision": 0,
"eventsApplied": 0,
"searchMode": "mcts",
"commandKind": 'example',
"queueMs": 0,
"elapsedMs": 0,
"iterationsDone": 0,
"iterationsBudget": 0,
"minIterations": 0,
"workersRequested": 0,
"workersCompleted": 0,
"schedulerIdle": false,
"legalCount": 0,
"timeLimited": false,
"hardFloorOverrun": false,
"starved": false,
"starvationFallback": false,
}
const { schedulerIdle } = aiDecisionDiagnostic
console.log(schedulerIdle)schedulerIdle:
boolean
Defined in: packages/ts-sdk/src/generated/types/common.ts:408
Whether the AI scheduler was idle when this decision was admitted.
searchDiagnostics?
Example:
import type { AiDecisionDiagnostic } from '@my-swu/simulator-client'
const aiDecisionDiagnostic: AiDecisionDiagnostic = {
"seat": "one",
"difficulty": "easy",
"snapshotRevision": 0,
"eventsApplied": 0,
"searchMode": "mcts",
"commandKind": 'example',
"queueMs": 0,
"elapsedMs": 0,
"iterationsDone": 0,
"iterationsBudget": 0,
"minIterations": 0,
"workersRequested": 0,
"workersCompleted": 0,
"schedulerIdle": false,
"legalCount": 0,
"timeLimited": false,
"hardFloorOverrun": false,
"starved": false,
"starvationFallback": false,
}
const { searchDiagnostics } = aiDecisionDiagnostic
console.log(searchDiagnostics)
optionalsearchDiagnostics?:AiSearchDiagnostic|null
Defined in: packages/ts-sdk/src/generated/types/common.ts:412
Optional privacy-safe backend accounting, absent in older records.
searchMode
Example:
import type { AiDecisionDiagnostic } from '@my-swu/simulator-client'
const aiDecisionDiagnostic: AiDecisionDiagnostic = {
"seat": "one",
"difficulty": "easy",
"snapshotRevision": 0,
"eventsApplied": 0,
"searchMode": "mcts",
"commandKind": 'example',
"queueMs": 0,
"elapsedMs": 0,
"iterationsDone": 0,
"iterationsBudget": 0,
"minIterations": 0,
"workersRequested": 0,
"workersCompleted": 0,
"schedulerIdle": false,
"legalCount": 0,
"timeLimited": false,
"hardFloorOverrun": false,
"starved": false,
"starvationFallback": false,
}
const { searchMode } = aiDecisionDiagnostic
console.log(searchMode)searchMode:
AiDecisionSearchMode
Defined in: packages/ts-sdk/src/generated/types/common.ts:413
seat
Example:
import type { AiDecisionDiagnostic } from '@my-swu/simulator-client'
const aiDecisionDiagnostic: AiDecisionDiagnostic = {
"seat": "one",
"difficulty": "easy",
"snapshotRevision": 0,
"eventsApplied": 0,
"searchMode": "mcts",
"commandKind": 'example',
"queueMs": 0,
"elapsedMs": 0,
"iterationsDone": 0,
"iterationsBudget": 0,
"minIterations": 0,
"workersRequested": 0,
"workersCompleted": 0,
"schedulerIdle": false,
"legalCount": 0,
"timeLimited": false,
"hardFloorOverrun": false,
"starved": false,
"starvationFallback": false,
}
const { seat: aiDecisionDiagnosticSeat } = aiDecisionDiagnostic
console.log(aiDecisionDiagnosticSeat)seat:
Seat
Defined in: packages/ts-sdk/src/generated/types/common.ts:414
snapshotRevision
Example:
import type { AiDecisionDiagnostic } from '@my-swu/simulator-client'
const aiDecisionDiagnostic: AiDecisionDiagnostic = {
"seat": "one",
"difficulty": "easy",
"snapshotRevision": 0,
"eventsApplied": 0,
"searchMode": "mcts",
"commandKind": 'example',
"queueMs": 0,
"elapsedMs": 0,
"iterationsDone": 0,
"iterationsBudget": 0,
"minIterations": 0,
"workersRequested": 0,
"workersCompleted": 0,
"schedulerIdle": false,
"legalCount": 0,
"timeLimited": false,
"hardFloorOverrun": false,
"starved": false,
"starvationFallback": false,
}
const { snapshotRevision } = aiDecisionDiagnostic
console.log(snapshotRevision)snapshotRevision:
number
Defined in: packages/ts-sdk/src/generated/types/common.ts:419
Gameplay snapshot marker the searched state carried. An undo between search and record makes this disagree with the frame at frame_index.
sourceCardId?
Example:
import type { AiDecisionDiagnostic } from '@my-swu/simulator-client'
const aiDecisionDiagnostic: AiDecisionDiagnostic = {
"seat": "one",
"difficulty": "easy",
"snapshotRevision": 0,
"eventsApplied": 0,
"searchMode": "mcts",
"commandKind": 'example',
"queueMs": 0,
"elapsedMs": 0,
"iterationsDone": 0,
"iterationsBudget": 0,
"minIterations": 0,
"workersRequested": 0,
"workersCompleted": 0,
"schedulerIdle": false,
"legalCount": 0,
"timeLimited": false,
"hardFloorOverrun": false,
"starved": false,
"starvationFallback": false,
}
const { sourceCardId } = aiDecisionDiagnostic
console.log(sourceCardId)
optionalsourceCardId?:number|null
Defined in: packages/ts-sdk/src/generated/types/common.ts:423
Public source card of that pending ability, when applicable.
starvationFallback
Example:
import type { AiDecisionDiagnostic } from '@my-swu/simulator-client'
const aiDecisionDiagnostic: AiDecisionDiagnostic = {
"seat": "one",
"difficulty": "easy",
"snapshotRevision": 0,
"eventsApplied": 0,
"searchMode": "mcts",
"commandKind": 'example',
"queueMs": 0,
"elapsedMs": 0,
"iterationsDone": 0,
"iterationsBudget": 0,
"minIterations": 0,
"workersRequested": 0,
"workersCompleted": 0,
"schedulerIdle": false,
"legalCount": 0,
"timeLimited": false,
"hardFloorOverrun": false,
"starved": false,
"starvationFallback": false,
}
const { starvationFallback } = aiDecisionDiagnostic
console.log(starvationFallback)starvationFallback:
boolean
Defined in: packages/ts-sdk/src/generated/types/common.ts:428
The starved-search guard discarded the search result entirely and answered from a one-ply heuristic ranking instead.
starved
Example:
import type { AiDecisionDiagnostic } from '@my-swu/simulator-client'
const aiDecisionDiagnostic: AiDecisionDiagnostic = {
"seat": "one",
"difficulty": "easy",
"snapshotRevision": 0,
"eventsApplied": 0,
"searchMode": "mcts",
"commandKind": 'example',
"queueMs": 0,
"elapsedMs": 0,
"iterationsDone": 0,
"iterationsBudget": 0,
"minIterations": 0,
"workersRequested": 0,
"workersCompleted": 0,
"schedulerIdle": false,
"legalCount": 0,
"timeLimited": false,
"hardFloorOverrun": false,
"starved": false,
"starvationFallback": false,
}
const { starved } = aiDecisionDiagnostic
console.log(starved)starved:
boolean
Defined in: packages/ts-sdk/src/generated/types/common.ts:433
Real search stopped below its applicable floor, or at the floor when time-limited. Intentional fast paths and setup evaluation are excluded.
timeBudgetMs?
Example:
import type { AiDecisionDiagnostic } from '@my-swu/simulator-client'
const aiDecisionDiagnostic: AiDecisionDiagnostic = {
"seat": "one",
"difficulty": "easy",
"snapshotRevision": 0,
"eventsApplied": 0,
"searchMode": "mcts",
"commandKind": 'example',
"queueMs": 0,
"elapsedMs": 0,
"iterationsDone": 0,
"iterationsBudget": 0,
"minIterations": 0,
"workersRequested": 0,
"workersCompleted": 0,
"schedulerIdle": false,
"legalCount": 0,
"timeLimited": false,
"hardFloorOverrun": false,
"starved": false,
"starvationFallback": false,
}
const { timeBudgetMs } = aiDecisionDiagnostic
console.log(timeBudgetMs)
optionaltimeBudgetMs?:number|null
Defined in: packages/ts-sdk/src/generated/types/common.ts:434
timeLimited
Example:
import type { AiDecisionDiagnostic } from '@my-swu/simulator-client'
const aiDecisionDiagnostic: AiDecisionDiagnostic = {
"seat": "one",
"difficulty": "easy",
"snapshotRevision": 0,
"eventsApplied": 0,
"searchMode": "mcts",
"commandKind": 'example',
"queueMs": 0,
"elapsedMs": 0,
"iterationsDone": 0,
"iterationsBudget": 0,
"minIterations": 0,
"workersRequested": 0,
"workersCompleted": 0,
"schedulerIdle": false,
"legalCount": 0,
"timeLimited": false,
"hardFloorOverrun": false,
"starved": false,
"starvationFallback": false,
}
const { timeLimited } = aiDecisionDiagnostic
console.log(timeLimited)timeLimited:
boolean
Defined in: packages/ts-sdk/src/generated/types/common.ts:438
Whether the wall clock cut the search before its iteration budget.
workersCompleted
Example:
import type { AiDecisionDiagnostic } from '@my-swu/simulator-client'
const aiDecisionDiagnostic: AiDecisionDiagnostic = {
"seat": "one",
"difficulty": "easy",
"snapshotRevision": 0,
"eventsApplied": 0,
"searchMode": "mcts",
"commandKind": 'example',
"queueMs": 0,
"elapsedMs": 0,
"iterationsDone": 0,
"iterationsBudget": 0,
"minIterations": 0,
"workersRequested": 0,
"workersCompleted": 0,
"schedulerIdle": false,
"legalCount": 0,
"timeLimited": false,
"hardFloorOverrun": false,
"starved": false,
"starvationFallback": false,
}
const { workersCompleted } = aiDecisionDiagnostic
console.log(workersCompleted)workersCompleted:
number
Defined in: packages/ts-sdk/src/generated/types/common.ts:439
workersRequested
Example:
import type { AiDecisionDiagnostic } from '@my-swu/simulator-client'
const aiDecisionDiagnostic: AiDecisionDiagnostic = {
"seat": "one",
"difficulty": "easy",
"snapshotRevision": 0,
"eventsApplied": 0,
"searchMode": "mcts",
"commandKind": 'example',
"queueMs": 0,
"elapsedMs": 0,
"iterationsDone": 0,
"iterationsBudget": 0,
"minIterations": 0,
"workersRequested": 0,
"workersCompleted": 0,
"schedulerIdle": false,
"legalCount": 0,
"timeLimited": false,
"hardFloorOverrun": false,
"starved": false,
"starvationFallback": false,
}
const { workersRequested } = aiDecisionDiagnostic
console.log(workersRequested)workersRequested:
number
Defined in: packages/ts-sdk/src/generated/types/common.ts:440
