Add verified Truthtrance hand inventory questions
Players can ask total-hand and primary-role card-count comparisons using the existing count controls and compound facts. Component presentation shares the same default-role classification, including canonical Richese cards, Ix alternate uses, and Ecaz slot-only specials. Only the respondent receives the verified aggregate answer; current facts do not impose future custody promises. Eight new tests cover all 60 catalog cards, real engine actions, malformed input, private worlds, all four bots, JSON continuation, and a legal custody transfer. Expanded production-room SQLite cases cover restored total/category/compound facts, suspended auction state, and one winning concurrent answer/discard. Independent review's two copy issues were fixed before broad verification. Validation: types, lint and 4,200 offline tests passed; production build passed; 40 HTTP tests passed. One stable broad run (check 123036 ms, build 6505 ms, integration 23467 ms). Browser room LC3E55GY verified combined role counts, total hand size, invalid-input feedback and refresh at 390px phone width. All 33 pre-integration rooms preserved unchanged; HTTP checks added 30 rooms. No complete-mode, full-game or publication gate opened. Private report: 20260913-hand-inventory-final/report.json Source fingerprint: c6a69a9e69941cdd1e5734d92afedbf10d31fda36c91d26ca7e15f4fb7c59b18 Efficiency pilot milestone 3: aggregate counter 58,695,053 to 59,144,653 at completed verification = 449,600 tokens, including context/coordination overhead. Two bounded workhorse-model helpers, reused UI and SQLite fixtures, one browser room. Counter is not monetary cost and this differently sized batch does not establish a savings percentage. Final Git/push overhead follows this sample.
This commit is contained in:
1 parent
32791ed5e2
commit
7454456755
14 files changed
+980
-151
No files matched your search
@@ -2114,6 +2114,66 @@ export const RULE_TOPICS: RuleTopic[] = [
|
||||
},
|
||||
],
|
||||
},
|
||||
{
|
||||
id: 'truthtrance-hand-inventory',
|
||||
title: 'Truthtrance: hand size and primary card roles',
|
||||
category: 'Cards',
|
||||
coverage: 'Partial',
|
||||
summary:
|
||||
'Ask a verified Yes/No question about total hand size or how many held cards have a selected primary role.',
|
||||
steps: [
|
||||
'Declare Truthtrance, choose Verified cards, traitors or spice, then Hand size or primary card role. Select all cards or a primary role, a comparison and a whole count of zero or more. Review the question before asking.',
|
||||
'Count only physical cards currently in the target’s hand, including reserved cards still held there. Decks, discards, separate caches and cards already on the table do not count. Every held physical copy counts once.',
|
||||
'Primary roles are the cards’ default roles. Weirding Way is a weapon; Chemistry is a defense. Alternate battle roles do not change these counts. Worthless cards and Cheap Heroes or Heroines are separate categories. Bene Gesserit and CHOAM powers do not turn held Worthless cards into another category.',
|
||||
'Richese cards use their printed roles: Stone Burner and Mirror Weapon are weapons; Portable Snooper is a defense. Other Special cards belong to the Special category. A classification question does not make an unfinished card effect available.',
|
||||
'Only the target receives the verified answer before answering. Other players see the question and its final aggregate Yes/No answer, without a list of matching cards. An exact comparison answered Yes necessarily confirms that count. AND/OR combinations publish only their combined result.',
|
||||
'These are current facts, not promises to keep cards or to use them in battle. All four AI levels answer from their own verified result. Broader freeform questions and future-action commitments remain unfinished.',
|
||||
],
|
||||
example:
|
||||
'A hand of Weirding Way, Chemistry and Baliset has three cards: one primary weapon, one primary defense and one Worthless card.',
|
||||
related: [
|
||||
'card-truthtrance',
|
||||
'truthtrance-card-count',
|
||||
'truthtrance-spice',
|
||||
'privacy',
|
||||
],
|
||||
checklist: [
|
||||
{
|
||||
area: 'Implementation',
|
||||
status: 'Implemented',
|
||||
detail:
|
||||
'Validated total and primary-role physical hand counts share the component classification and aggregate fact evaluator.',
|
||||
},
|
||||
{
|
||||
area: 'Player controls',
|
||||
status: 'Implemented',
|
||||
detail:
|
||||
'Role selection, comparison, accessible count input, invalid-input feedback and the exact public question preview.',
|
||||
},
|
||||
{
|
||||
area: 'AI',
|
||||
status: 'Partial',
|
||||
detail:
|
||||
'All four profiles truthfully answer; strategic choice of these questions remains uncalibrated.',
|
||||
},
|
||||
{
|
||||
area: 'Documentation',
|
||||
status: 'Implemented',
|
||||
detail:
|
||||
'Explains hand custody, default roles, alternate uses, private aggregation and current-fact lifetime.',
|
||||
},
|
||||
{
|
||||
area: 'Verification',
|
||||
status: 'Partial',
|
||||
detail:
|
||||
'Focused role, engine, privacy, AI, JSON and persisted concurrent-answer checks; no complete mode certificate.',
|
||||
evidence: [
|
||||
'tests/truthtrance-hand-inventory.test.ts',
|
||||
'tests/truthtrance-spice-recovery.test.ts',
|
||||
],
|
||||
},
|
||||
],
|
||||
},
|
||||
{
|
||||
id: 'truthtrance-shipment',
|
||||
title: 'Truthtrance: shipment promises',
|
||||
@@ -2194,6 +2254,7 @@ export const RULE_TOPICS: RuleTopic[] = [
|
||||
'privacy',
|
||||
'truthtrance-spice',
|
||||
'truthtrance-card-count',
|
||||
'truthtrance-hand-inventory',
|
||||
'truthtrance-shipment',
|
||||
],
|
||||
},
|
||||
|
||||
Reference in new issue
Block a user