@maka/maka-cli 5.88.0 → 5.89.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (29) hide show
  1. package/bundle/typescript/package.json +1 -4
  2. package/bundle/typescript/src/commands/game/sideQuest/commands/move.d.ts +29 -5
  3. package/bundle/typescript/src/commands/game/sideQuest/commands/move.js +82 -8
  4. package/bundle/typescript/src/commands/game/sideQuest/commands/move.js.map +1 -1
  5. package/bundle/typescript/src/commands/game/sideQuest/game.d.ts +71 -1
  6. package/bundle/typescript/src/commands/game/sideQuest/game.js +88 -16
  7. package/bundle/typescript/src/commands/game/sideQuest/game.js.map +1 -1
  8. package/bundle/typescript/src/commands/game/sideQuest/headless.js +34 -0
  9. package/bundle/typescript/src/commands/game/sideQuest/headless.js.map +1 -1
  10. package/bundle/typescript/src/commands/game/sideQuest/models/player.d.ts +46 -0
  11. package/bundle/typescript/src/commands/game/sideQuest/models/player.js +81 -1
  12. package/bundle/typescript/src/commands/game/sideQuest/models/player.js.map +1 -1
  13. package/bundle/typescript/src/commands/game/sideQuest/utilities/backlog-vocab.js +8 -0
  14. package/bundle/typescript/src/commands/game/sideQuest/utilities/backlog-vocab.js.map +1 -1
  15. package/bundle/typescript/src/commands/game/sideQuest/utilities/bystander.js +2 -12
  16. package/bundle/typescript/src/commands/game/sideQuest/utilities/bystander.js.map +1 -1
  17. package/bundle/typescript/src/commands/game/sideQuest/utilities/combat-exchange.js +13 -0
  18. package/bundle/typescript/src/commands/game/sideQuest/utilities/combat-exchange.js.map +1 -1
  19. package/bundle/typescript/src/commands/game/sideQuest/utilities/ephemeral.d.ts +73 -0
  20. package/bundle/typescript/src/commands/game/sideQuest/utilities/ephemeral.js +210 -1
  21. package/bundle/typescript/src/commands/game/sideQuest/utilities/ephemeral.js.map +1 -1
  22. package/bundle/typescript/src/commands/game/sideQuest/utilities/shared-run.js +20 -1
  23. package/bundle/typescript/src/commands/game/sideQuest/utilities/shared-run.js.map +1 -1
  24. package/bundle/typescript/src/commands/game/sideQuest/utilities/sin.d.ts +19 -2
  25. package/bundle/typescript/src/commands/game/sideQuest/utilities/sin.js +29 -6
  26. package/bundle/typescript/src/commands/game/sideQuest/utilities/sin.js.map +1 -1
  27. package/bundle/typescript/src/commands/game/sideQuest/utilities/street-gang.js +2 -14
  28. package/bundle/typescript/src/commands/game/sideQuest/utilities/street-gang.js.map +1 -1
  29. package/package.json +1 -4
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@maka/maka-cli",
3
- "version": "5.88.0",
3
+ "version": "5.89.0",
4
4
  "type": "module",
5
5
  "summary": "A command line tool for scaffolding Meteor 2.x applications using either React.",
6
6
  "description": "A command line tool for scaffolding Meteor 2.x applications using React.",
@@ -109,10 +109,7 @@
109
109
  "overrides": {
110
110
  "glob": "^13.0.0",
111
111
  "@maka/meteor-sdk": {
112
- "ws": "7.5.11",
113
- "underscore": "1.13.8",
114
112
  "@babel/runtime": "7.26.10",
115
- "tar-fs": "2.1.4",
116
113
  "tmp": "0.2.7",
117
114
  "got": "11.8.5"
118
115
  },
@@ -4,11 +4,16 @@ import { Command, ICommand } from './command.js';
4
4
  * the CURRENT room to one of its "at" spots (see utilities/spots.ts;
5
5
  * player request: rooms felt like everything stood at your elbow). The
6
6
  * three verbs are SR5e's movement modes (p.161-162); out of combat all
7
- * three are free narration and differ only in flavor. In combat the
8
- * mode is the tactical choice -- walk exposed but steady, run harder to
9
- * hit but -2 on your next action, sprint an Athletics test to cross
10
- * clean (Phase 2; v1 refuses spot moves mid-exchange like go.ts does
11
- * room moves).
7
+ * three are free narration and differ only in flavor.
8
+ *
9
+ * IN COMBAT THEY COST GROUND (2QpCcKFKCynk9jYoX, second half of the
10
+ * coordinates ruling: the gap closes "either immediately out of combat,
11
+ * or with actions in combat"). A Combat Turn carries a budget -- Walk
12
+ * Rate Agility x 2 m, Run Rate Agility x 4 m, both whole-turn totals
13
+ * (p.161) -- crossing spends from it, exceeding the Walk Rate makes you
14
+ * RUNNING at -2 dice for the rest of the turn (p.162), and "sprint"
15
+ * rolls the Complex Action that buys more ground. See spendMovement.
16
+ * This replaced a flat refusal to move mid-exchange at all.
12
17
  *
13
18
  * "move" and "approach" alias walk. A Direction argument is a STEP
14
19
  * across this room's grid ("move south 2"), never a room change -- on a
@@ -77,6 +82,25 @@ export declare class MoveCommand extends Command implements ICommand {
77
82
  * off the place you now stand beside.
78
83
  */
79
84
  private stepAcross;
85
+ /**
86
+ * IS THIS ACTOR IN A COMBAT TURN AT ALL?
87
+ *
88
+ * `inExchange` is only true while an exchange is being resolved, so it
89
+ * cannot answer "am I in a fight" between commands. `lastExchangeAt`
90
+ * can, and it is the predicate resolvePartingShot already uses for
91
+ * "engaged" -- reusing it keeps one definition of being in a fight
92
+ * rather than minting a second that can drift from it.
93
+ */
94
+ private static readonly FIGHT_WINDOW_MS;
95
+ private inCombatTurn;
96
+ /**
97
+ * Bills a crossing against the Combat Turn's movement rate, or returns
98
+ * the refusal when there is not enough left (SR5 p.161-162).
99
+ *
100
+ * Returns undefined -- meaning "go ahead" -- whenever this is not a
101
+ * combat turn, which is every ordinary walk across a bar.
102
+ */
103
+ private spendMovement;
80
104
  /** Closes the last few paces to someone already at your own spot --
81
105
  * you end up beside them rather than merely in the same zone. */
82
106
  private crossToActor;
@@ -2,26 +2,32 @@ import { Command } from './command.js';
2
2
  import { hint } from '../utilities/hints.js';
3
3
  import { GoCommand } from './go.js';
4
4
  import { NPC } from '../models/npc.js';
5
+ import { Player } from '../models/player.js';
5
6
  import { Door } from '../models/door.js';
6
7
  import { fuzzyPickName } from '../utilities/fuzzy-match.js';
7
- import { heldBy, holding } from '../utilities/grapple.js';
8
+ import { heldBy, holding, physicalLimit } from '../utilities/grapple.js';
8
9
  import { spotsActive, resolveSpot, spotOf, describeSpotRoster, OPEN_FLOOR, pathBetweenSpots, spotDistanceMeters, spotClimbSteps, blockingRegion, terrainRefusal, reseatOpenFloor, routeForMove, stepFrom, spotForCell, actorCell, standingRoomNear, furnitureCells, approachCellFor, } from '../utilities/spots.js';
9
10
  // fallDamageDVMeters, not fallDamageDV: a climb that fell short drops
10
11
  // you from where you GOT to, which is a distance in metres, not a whole
11
12
  // storey. The storey-based wrapper still exists for callers that really
12
13
  // do fall a level.
13
- import { fallDamageDVMeters, climbHitsFor, climbMetersFrom, climbSurfaceModifier, METERS_PER_CELL, METERS_PER_LEVEL, key } from '../utilities/room-grid.js';
14
+ import { fallDamageDVMeters, climbHitsFor, climbMetersFrom, climbSurfaceModifier, METERS_PER_CELL, METERS_PER_LEVEL, key, distanceMeters } from '../utilities/room-grid.js';
14
15
  import { rollPool, formatRoll } from '../utilities/dice.js';
15
16
  /**
16
17
  * "walk to <spot>" / "run to <spot>" / "sprint to <spot>" -- crossing
17
18
  * the CURRENT room to one of its "at" spots (see utilities/spots.ts;
18
19
  * player request: rooms felt like everything stood at your elbow). The
19
20
  * three verbs are SR5e's movement modes (p.161-162); out of combat all
20
- * three are free narration and differ only in flavor. In combat the
21
- * mode is the tactical choice -- walk exposed but steady, run harder to
22
- * hit but -2 on your next action, sprint an Athletics test to cross
23
- * clean (Phase 2; v1 refuses spot moves mid-exchange like go.ts does
24
- * room moves).
21
+ * three are free narration and differ only in flavor.
22
+ *
23
+ * IN COMBAT THEY COST GROUND (2QpCcKFKCynk9jYoX, second half of the
24
+ * coordinates ruling: the gap closes "either immediately out of combat,
25
+ * or with actions in combat"). A Combat Turn carries a budget -- Walk
26
+ * Rate Agility x 2 m, Run Rate Agility x 4 m, both whole-turn totals
27
+ * (p.161) -- crossing spends from it, exceeding the Walk Rate makes you
28
+ * RUNNING at -2 dice for the rest of the turn (p.162), and "sprint"
29
+ * rolls the Complex Action that buys more ground. See spendMovement.
30
+ * This replaced a flat refusal to move mid-exchange at all.
25
31
  *
26
32
  * "move" and "approach" alias walk. A Direction argument is a STEP
27
33
  * across this room's grid ("move south 2"), never a room change -- on a
@@ -687,6 +693,66 @@ export class MoveCommand extends Command {
687
693
  : `the ${actor.atSpot}`;
688
694
  return `You step ${taken * 1} ${taken === 1 ? 'pace' : 'paces'} ${direction}${shortNote}. You're at ${place} now.`;
689
695
  }
696
+ /**
697
+ * IS THIS ACTOR IN A COMBAT TURN AT ALL?
698
+ *
699
+ * `inExchange` is only true while an exchange is being resolved, so it
700
+ * cannot answer "am I in a fight" between commands. `lastExchangeAt`
701
+ * can, and it is the predicate resolvePartingShot already uses for
702
+ * "engaged" -- reusing it keeps one definition of being in a fight
703
+ * rather than minting a second that can drift from it.
704
+ */
705
+ static FIGHT_WINDOW_MS = 60_000;
706
+ inCombatTurn(actor) {
707
+ return !!actor.combatOpponent && Date.now() - actor.lastExchangeAt < MoveCommand.FIGHT_WINDOW_MS;
708
+ }
709
+ /**
710
+ * Bills a crossing against the Combat Turn's movement rate, or returns
711
+ * the refusal when there is not enough left (SR5 p.161-162).
712
+ *
713
+ * Returns undefined -- meaning "go ahead" -- whenever this is not a
714
+ * combat turn, which is every ordinary walk across a bar.
715
+ */
716
+ spendMovement(actor, to) {
717
+ if (!this.inCombatTurn(actor))
718
+ return undefined;
719
+ const room = actor.currentLocation;
720
+ const from = actorCell(room, actor);
721
+ if (!from)
722
+ return undefined;
723
+ const cost = distanceMeters(from, to);
724
+ if (cost <= 0)
725
+ return undefined;
726
+ // THE SPRINT ACTION (p.162), and this is where the engine's existing
727
+ // "sprint to <x>" verb finally means something mechanical. Canon
728
+ // makes it a Complex Action -- Running + Strength [Physical], each
729
+ // hit buying more ground -- so it is rolled when the player asks for
730
+ // it, not applied automatically to cover a shortfall.
731
+ //
732
+ // ATHLETICS, NOT RUNNING: this engine's skill list has no Running
733
+ // (nor Gymnastics); it collapses both into `athletics`, which
734
+ // resolvePartingShot already rolls for exactly this -- breaking away
735
+ // at a dead run. Mapping canon's skill onto the one this game has is
736
+ // better than inventing a skill nobody can raise.
737
+ if (this.mode() === 'sprint' && actor.sprintMetersThisTurn === 0) {
738
+ const skill = actor.skillRating('athletics');
739
+ const roll = rollPool(Math.max(1, skill + actor.strength + actor.qualityBonus('athletics') + actor.augBonus('athletics') + actor.woundModifier), physicalLimit(actor));
740
+ const bought = roll.hits * Player.SPRINT_METERS_PER_HIT;
741
+ actor.sprintMetersThisTurn = bought;
742
+ this.logger.meta(`Sprint (Athletics + Strength [Physical]): ${formatRoll(roll)} -- +${bought} m this turn`);
743
+ }
744
+ if (cost > actor.movementLeftMeters) {
745
+ const left = actor.movementLeftMeters;
746
+ // Name the numbers. A refusal that says only "you can't" in a
747
+ // system the player cannot see is the kind of wall that gets
748
+ // reported as a bug.
749
+ return left <= 0
750
+ ? `You've already covered your ground this turn (${actor.runRateMeters} m at a dead run). Nothing left in the legs until the next exchange.`
751
+ : `That's ${cost.toFixed(1)} m and you have ${left.toFixed(1)} m left this turn (Run Rate ${actor.runRateMeters} m).${hint(` ("sprint" buys more ground -- Athletics + Strength, ${Player.SPRINT_METERS_PER_HIT} m a hit.)`)}`;
752
+ }
753
+ actor.movedMetersThisTurn += cost;
754
+ return undefined;
755
+ }
690
756
  /** Closes the last few paces to someone already at your own spot --
691
757
  * you end up beside them rather than merely in the same zone. */
692
758
  crossToActor(target) {
@@ -700,12 +766,20 @@ export class MoveCommand extends Command {
700
766
  if (!cell || (actor.atCell && actor.atCell.x === cell.x && actor.atCell.y === cell.y && actor.atCell.z === cell.z)) {
701
767
  return `You're already standing with ${target.name}.`;
702
768
  }
769
+ // GROUND COSTS IN A FIGHT (2QpCcKFKCynk9jYoX, second half of the
770
+ // ruling: the gap closes "either immediately out of combat, or with
771
+ // actions in combat"). Out of a fight this whole block is skipped
772
+ // and you simply walk -- that is the "immediately" half.
773
+ const spend = this.spendMovement(actor, cell);
774
+ if (spend)
775
+ return spend;
703
776
  actor.atCell = cell;
704
777
  actor.atSpot = spotForCell(room, cell);
705
778
  actor.performAction('steps up beside', target.name);
706
779
  this.scene.updateStatus();
707
780
  this.scene.updateExits(room);
708
- return `You close the last few paces and stand with ${target.name}.`;
781
+ const pace = actor.isRunningThisTurn ? ` You're running now -- everything else this turn is at -2.` : '';
782
+ return `You close the last few paces and stand with ${target.name}.${pace}`;
709
783
  }
710
784
  /**
711
785
  * "move to north door" / "move to the east exit" / "move to door".
@@ -1 +1 @@
1
- {"version":3,"file":"move.js","sourceRoot":"","sources":["../../../../../../../src/commands/game/sideQuest/commands/move.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"move.js","sourceRoot":"","sources":["../../../../../../../src/commands/game/sideQuest/commands/move.ts"],"names":[],"mappings":"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"}
@@ -293,6 +293,35 @@ export default class Game {
293
293
  * off the job). The hosting server writes their snapshot back and
294
294
  * marks them 'left'. */
295
295
  onPlayerExtracted?: (player: Player) => void;
296
+ /**
297
+ * Shared-run hook: THE SCENE UNDERNEATH EVERYONE JUST CHANGED.
298
+ *
299
+ * `repaintForScene` is how this Game tells its own UI that the world
300
+ * moved. On a hosted table there IS no UI here -- `_mapBox` is
301
+ * undefined on the server, so `updateExits` (and with it both map
302
+ * panels) is a NO-OP, measured rather than assumed: a real headless
303
+ * boot emits map/room/status 1,1,1 and calling updateExits +
304
+ * updateStatus by hand leaves it at 1,1,1, while one `command` takes
305
+ * it to 2,2,2.
306
+ *
307
+ * So every rider's panels move only when headless.ts's pushMap /
308
+ * pushStatus run, and those run from `command`, `addPlayer` and boot
309
+ * -- nowhere else. A scene swap that does not happen inside somebody's
310
+ * command therefore changes the server's truth and sends NOTHING, and
311
+ * `draftNextSceneInBackground` is exactly that shape: fire-and-forget
312
+ * over 20-40 seconds, long after the command that started it returned
313
+ * and pushed the OLD scene.
314
+ *
315
+ * This hook is the missing wire, same shape as onPlayerDeath /
316
+ * onPlayerExtracted above and installed in the same place.
317
+ *
318
+ * HARDENING, NOT A BUG FIX. The inert joint is proven; the swap
319
+ * arriving outside a command is READ IN THE SOURCE AND NOT EXECUTED
320
+ * (continueToNextScene is gated on job completion, so the harness
321
+ * cannot drive it end to end). Nothing here is offered as the cause of
322
+ * a live report.
323
+ */
324
+ onSceneChanged?: () => void;
296
325
  /**
297
326
  * The per-player band (shared runs -- scene.players.length > 1):
298
327
  * resolves the FALLEN player's own contract, bills THAT player
@@ -346,6 +375,13 @@ export default class Game {
346
375
  * already answered upstream.
347
376
  */
348
377
  ephemerals: import('./utilities/ephemeral.js').EphemeralRegistry;
378
+ /**
379
+ * Every ephemeral name this session has ever issued. Session-only like
380
+ * the registry above, but CUMULATIVE where that one is a census -- see
381
+ * IEphemeralHost.spentNames for why a name outliving its body is the
382
+ * whole point.
383
+ */
384
+ spentNames: Set<string>;
349
385
  /** Corners that have already had their encounter -- once each, and
350
386
  * never saved, on the same session-only model as sweptRooms. */
351
387
  gangedRooms: Set<string>;
@@ -1013,7 +1049,27 @@ export default class Game {
1013
1049
  * and a fight does not travel. */
1014
1050
  private settleTravelState;
1015
1051
  /** The panel refresh both errand legs need. */
1016
- private refreshHubUi;
1052
+ /**
1053
+ * REPAINT EVERYTHING FOR THE SCENE YOU ARE NOW STANDING IN.
1054
+ *
1055
+ * These same four calls, in this same order, were written out three
1056
+ * times -- here (as refreshHubUi), at the end of returnToHub, and at
1057
+ * the end of activateRunScene. Three copies of one rule is how a
1058
+ * fourth arrival gets two of them and reads as done, and it is the
1059
+ * shape that has already cost this file twice.
1060
+ *
1061
+ * Public because a shared run's homecoming has to reach it: the ride
1062
+ * home used to repaint the STATUS box alone, so a runner arrived back
1063
+ * at the hub with the RUN's map still drawn beside the log -- the
1064
+ * exact mirror of the hub's map surviving into a run, which is the bug
1065
+ * blankRunPanels was added to end (575fc700). One boundary, repainted
1066
+ * in one direction only, is a half-swept family.
1067
+ *
1068
+ * ORDER IS LOAD-BEARING at the shared-run call sites: updateExits
1069
+ * early-returns while `remoteSession` is set, so this must be called
1070
+ * AFTER SharedRunSession.finish() clears it, never before.
1071
+ */
1072
+ repaintForScene(): void;
1017
1073
  private returnToHub;
1018
1074
  /**
1019
1075
  * KNIGHT ERRANT CHECKPOINT (SINs & getting caught, ruling 2026-08-24;
@@ -1289,6 +1345,20 @@ export default class Game {
1289
1345
  * utilities/ic.ts decides whether anything happens at all
1290
1346
  * (hostIsHunting); this only carries the result to the panes.
1291
1347
  */
1348
+ /**
1349
+ * THE EPHEMERAL TURN, appended the same way the host's is.
1350
+ *
1351
+ * One player action is one beat for every passing face in the room --
1352
+ * the same engine mapping withICTurn makes below, and hung off the
1353
+ * same single dispatch for the same reason: a mob closes on you while
1354
+ * you look, talk, or check your gear, not only while you walk. Hooking
1355
+ * one verb is the "fixed one verb, left its siblings" shape CLAUDE.md
1356
+ * warns about.
1357
+ *
1358
+ * utilities/ephemeral.ts decides what each kind does with its beat;
1359
+ * this only carries the narration back. Only a mob ever produces any.
1360
+ */
1361
+ private withEphemeralTurn;
1292
1362
  private withICTurn;
1293
1363
  /**
1294
1364
  * The help taxonomy: every entry is [primary, ...aliases], grouped the
@@ -14,6 +14,7 @@ import { pushSave, burnCloudSaveFor } from './utilities/cloud-saves.js';
14
14
  import { DOCWAGON_TIERS, RESUSC_FEE, DEATH_COMP } from './utilities/docwagon.js';
15
15
  import { isFence, LIFESTYLE_TIERS } from './utilities/commerce.js';
16
16
  import { bestFakeSin, wandRead, processArrest } from './utilities/sin.js';
17
+ import { tickEphemerals } from './utilities/ephemeral.js';
17
18
  import { renderMapViewport, mapCaption } from './utilities/map-view.js';
18
19
  import { tallestRoomRows } from './utilities/room-grid.js';
19
20
  import { renderRoomLayoutCompact, crewOfTable, roomCaption } from './utilities/room-view.js';
@@ -825,6 +826,35 @@ export default class Game {
825
826
  * off the job). The hosting server writes their snapshot back and
826
827
  * marks them 'left'. */
827
828
  onPlayerExtracted;
829
+ /**
830
+ * Shared-run hook: THE SCENE UNDERNEATH EVERYONE JUST CHANGED.
831
+ *
832
+ * `repaintForScene` is how this Game tells its own UI that the world
833
+ * moved. On a hosted table there IS no UI here -- `_mapBox` is
834
+ * undefined on the server, so `updateExits` (and with it both map
835
+ * panels) is a NO-OP, measured rather than assumed: a real headless
836
+ * boot emits map/room/status 1,1,1 and calling updateExits +
837
+ * updateStatus by hand leaves it at 1,1,1, while one `command` takes
838
+ * it to 2,2,2.
839
+ *
840
+ * So every rider's panels move only when headless.ts's pushMap /
841
+ * pushStatus run, and those run from `command`, `addPlayer` and boot
842
+ * -- nowhere else. A scene swap that does not happen inside somebody's
843
+ * command therefore changes the server's truth and sends NOTHING, and
844
+ * `draftNextSceneInBackground` is exactly that shape: fire-and-forget
845
+ * over 20-40 seconds, long after the command that started it returned
846
+ * and pushed the OLD scene.
847
+ *
848
+ * This hook is the missing wire, same shape as onPlayerDeath /
849
+ * onPlayerExtracted above and installed in the same place.
850
+ *
851
+ * HARDENING, NOT A BUG FIX. The inert joint is proven; the swap
852
+ * arriving outside a command is READ IN THE SOURCE AND NOT EXECUTED
853
+ * (continueToNextScene is gated on job completion, so the harness
854
+ * cannot drive it end to end). Nothing here is offered as the cause of
855
+ * a live report.
856
+ */
857
+ onSceneChanged;
828
858
  /**
829
859
  * The per-player band (shared runs -- scene.players.length > 1):
830
860
  * resolves the FALLEN player's own contract, bills THAT player
@@ -1017,6 +1047,13 @@ export default class Game {
1017
1047
  * already answered upstream.
1018
1048
  */
1019
1049
  ephemerals = new Map();
1050
+ /**
1051
+ * Every ephemeral name this session has ever issued. Session-only like
1052
+ * the registry above, but CUMULATIVE where that one is a census -- see
1053
+ * IEphemeralHost.spentNames for why a name outliving its body is the
1054
+ * whole point.
1055
+ */
1056
+ spentNames = new Set();
1020
1057
  /** Corners that have already had their encounter -- once each, and
1021
1058
  * never saved, on the same session-only model as sweptRooms. */
1022
1059
  gangedRooms = new Set();
@@ -2831,10 +2868,7 @@ ${client.name} won't be remembering anything. Dead Johnsons pay nothing -- and t
2831
2868
  this.pendingRunAccepted = save.game.pendingRun.accepted ?? false;
2832
2869
  }
2833
2870
  this.player.currentLocation = this._homeRoom;
2834
- this.updateEquipment(this.player.equipment);
2835
- this.updateInventory(this.player.inventory, capitalCase(this.scene.getCurrencyType()));
2836
- this.updateExits(this.player.currentLocation);
2837
- this.updateStatus();
2871
+ this.repaintForScene();
2838
2872
  this.refreshLogLabel();
2839
2873
  Logger.getInstance().write(`Resumed save for ${save.playerName} (saved ${save.savedAt}, reason ${save.reason}).`);
2840
2874
  }
@@ -3109,7 +3143,7 @@ ${client.name} won't be remembering anything. Dead Johnsons pay nothing -- and t
3109
3143
  this.player.currentLocation = this._homeRoom;
3110
3144
  this.player.cameFrom = undefined;
3111
3145
  const arrivalLines = this.unfoldCompanionsOnArrival();
3112
- this.refreshHubUi();
3146
+ this.repaintForScene();
3113
3147
  return [...foldLines, ...arrivalLines].join('\n');
3114
3148
  }
3115
3149
  /** Back to the job you left standing. */
@@ -3128,7 +3162,7 @@ ${client.name} won't be remembering anything. Dead Johnsons pay nothing -- and t
3128
3162
  this.player.cameFrom = undefined;
3129
3163
  this._openRun = undefined;
3130
3164
  const arrivalLines = this.unfoldCompanionsOnArrival();
3131
- this.refreshHubUi();
3165
+ this.repaintForScene();
3132
3166
  return [...foldLines, ...arrivalLines].join('\n');
3133
3167
  }
3134
3168
  /** Cross-plane and combat state that must not ride in a cab, shared
@@ -3158,11 +3192,34 @@ ${client.name} won't be remembering anything. Dead Johnsons pay nothing -- and t
3158
3192
  this.autoFight.cancelPending();
3159
3193
  }
3160
3194
  /** The panel refresh both errand legs need. */
3161
- refreshHubUi() {
3195
+ /**
3196
+ * REPAINT EVERYTHING FOR THE SCENE YOU ARE NOW STANDING IN.
3197
+ *
3198
+ * These same four calls, in this same order, were written out three
3199
+ * times -- here (as refreshHubUi), at the end of returnToHub, and at
3200
+ * the end of activateRunScene. Three copies of one rule is how a
3201
+ * fourth arrival gets two of them and reads as done, and it is the
3202
+ * shape that has already cost this file twice.
3203
+ *
3204
+ * Public because a shared run's homecoming has to reach it: the ride
3205
+ * home used to repaint the STATUS box alone, so a runner arrived back
3206
+ * at the hub with the RUN's map still drawn beside the log -- the
3207
+ * exact mirror of the hub's map surviving into a run, which is the bug
3208
+ * blankRunPanels was added to end (575fc700). One boundary, repainted
3209
+ * in one direction only, is a half-swept family.
3210
+ *
3211
+ * ORDER IS LOAD-BEARING at the shared-run call sites: updateExits
3212
+ * early-returns while `remoteSession` is set, so this must be called
3213
+ * AFTER SharedRunSession.finish() clears it, never before.
3214
+ */
3215
+ repaintForScene() {
3162
3216
  this.updateEquipment(this.player.equipment);
3163
3217
  this.updateInventory(this.player.inventory, capitalCase(this.scene.getCurrencyType()));
3164
3218
  this.updateExits(this.player.currentLocation);
3165
3219
  this.updateStatus();
3220
+ // Local UI is repainted above; a hosted table has none, and learns
3221
+ // the scene moved from here. See onSceneChanged.
3222
+ this.onSceneChanged?.();
3166
3223
  }
3167
3224
  returnToHub() {
3168
3225
  const hub = this._hubScene;
@@ -3278,10 +3335,7 @@ ${client.name} won't be remembering anything. Dead Johnsons pay nothing -- and t
3278
3335
  const restocked = this.restockVendorShelves();
3279
3336
  const restockLine = restocked > 0 ? `\nThe district has restocked around you -- the wok steams, the bar's shelf is full, the market stalls are loud again.` : '';
3280
3337
  this.advanceGig();
3281
- this.updateEquipment(this.player.equipment);
3282
- this.updateInventory(this.player.inventory, capitalCase(this.scene.getCurrencyType()));
3283
- this.updateExits(this.player.currentLocation);
3284
- this.updateStatus();
3338
+ this.repaintForScene();
3285
3339
  this.refreshLogLabel();
3286
3340
  Logger.getInstance().write(`Returned to hub "${this._hubName}". Lifestyle ${this.lifestyleTier}: ${paid} paid, ${this.rentDebt} owed. Restocked ${restocked}. Rumor: ${this.activeRumor ?? '(none)'}`);
3287
3341
  // Drones spin back up beside the cot.
@@ -3657,10 +3711,7 @@ ${client.name} won't be remembering anything. Dead Johnsons pay nothing -- and t
3657
3711
  this.player.currentLocation = this._homeRoom;
3658
3712
  }
3659
3713
  }
3660
- this.updateEquipment(this.player.equipment);
3661
- this.updateInventory(this.player.inventory, capitalCase(this.scene.getCurrencyType()));
3662
- this.updateExits(this.player.currentLocation);
3663
- this.updateStatus();
3714
+ this.repaintForScene();
3664
3715
  // Fresh streets, no trail yet (see Player.cameFrom / the HUD crumb).
3665
3716
  this.player.cameFrom = undefined;
3666
3717
  // Deployed drones spin back up at the curb -- BEFORE appearance
@@ -4947,7 +4998,7 @@ ${client.name} won't be remembering anything. Dead Johnsons pay nothing -- and t
4947
4998
  const command = CommandFactory.createCommand(verb, context);
4948
4999
  if (command) {
4949
5000
  const result = await command.execute(args);
4950
- return out(this.withICTurn(actor, result));
5001
+ return out(this.withEphemeralTurn(actor, this.withICTurn(actor, result)));
4951
5002
  }
4952
5003
  // Typo tolerance: two straight sessions bounced on slips like "searh"
4953
5004
  // and "maop". Reuse the same fuzzy matcher item/NPC names go through
@@ -4993,6 +5044,27 @@ ${client.name} won't be remembering anything. Dead Johnsons pay nothing -- and t
4993
5044
  * utilities/ic.ts decides whether anything happens at all
4994
5045
  * (hostIsHunting); this only carries the result to the panes.
4995
5046
  */
5047
+ /**
5048
+ * THE EPHEMERAL TURN, appended the same way the host's is.
5049
+ *
5050
+ * One player action is one beat for every passing face in the room --
5051
+ * the same engine mapping withICTurn makes below, and hung off the
5052
+ * same single dispatch for the same reason: a mob closes on you while
5053
+ * you look, talk, or check your gear, not only while you walk. Hooking
5054
+ * one verb is the "fixed one verb, left its siblings" shape CLAUDE.md
5055
+ * warns about.
5056
+ *
5057
+ * utilities/ephemeral.ts decides what each kind does with its beat;
5058
+ * this only carries the narration back. Only a mob ever produces any.
5059
+ */
5060
+ withEphemeralTurn(actor, result) {
5061
+ if (result === null)
5062
+ return null;
5063
+ if (actor !== this.player || this.ephemerals.size === 0)
5064
+ return result;
5065
+ const lines = tickEphemerals(this, actor);
5066
+ return lines.length === 0 ? result : `${result}\n\n${lines.join('\n')}`;
5067
+ }
4996
5068
  withICTurn(actor, result) {
4997
5069
  if (result === null)
4998
5070
  return null;