@sharpee/world-model 0.9.113 → 1.0.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 (80) hide show
  1. package/entities/entity-types.d.ts +2 -0
  2. package/entities/entity-types.d.ts.map +1 -1
  3. package/entities/entity-types.js +3 -0
  4. package/entities/entity-types.js.map +1 -1
  5. package/entities/index.d.ts +2 -0
  6. package/entities/index.d.ts.map +1 -1
  7. package/entities/index.js +3 -1
  8. package/entities/index.js.map +1 -1
  9. package/entities/wall-entity.d.ts +112 -0
  10. package/entities/wall-entity.d.ts.map +1 -0
  11. package/entities/wall-entity.js +50 -0
  12. package/entities/wall-entity.js.map +1 -0
  13. package/index.d.ts +3 -0
  14. package/index.d.ts.map +1 -1
  15. package/index.js +3 -0
  16. package/index.js.map +1 -1
  17. package/package.json +3 -3
  18. package/traits/acoustic/acousticDampenerTrait.d.ts +61 -0
  19. package/traits/acoustic/acousticDampenerTrait.d.ts.map +1 -0
  20. package/traits/acoustic/acousticDampenerTrait.js +38 -0
  21. package/traits/acoustic/acousticDampenerTrait.js.map +1 -0
  22. package/traits/acoustic/acousticTrait.d.ts +64 -0
  23. package/traits/acoustic/acousticTrait.d.ts.map +1 -0
  24. package/traits/acoustic/acousticTrait.js +47 -0
  25. package/traits/acoustic/acousticTrait.js.map +1 -0
  26. package/traits/acoustic/index.d.ts +3 -0
  27. package/traits/acoustic/index.d.ts.map +1 -0
  28. package/traits/acoustic/index.js +10 -0
  29. package/traits/acoustic/index.js.map +1 -0
  30. package/traits/implementations.d.ts.map +1 -1
  31. package/traits/implementations.js +8 -0
  32. package/traits/implementations.js.map +1 -1
  33. package/traits/index.d.ts +3 -0
  34. package/traits/index.d.ts.map +1 -1
  35. package/traits/index.js +5 -0
  36. package/traits/index.js.map +1 -1
  37. package/traits/listener/index.d.ts +2 -0
  38. package/traits/listener/index.d.ts.map +1 -0
  39. package/traits/listener/index.js +7 -0
  40. package/traits/listener/index.js.map +1 -0
  41. package/traits/listener/listenerTrait.d.ts +40 -0
  42. package/traits/listener/listenerTrait.d.ts.map +1 -0
  43. package/traits/listener/listenerTrait.js +23 -0
  44. package/traits/listener/listenerTrait.js.map +1 -0
  45. package/traits/obstructor-protocol.d.ts +96 -0
  46. package/traits/obstructor-protocol.d.ts.map +1 -0
  47. package/traits/obstructor-protocol.js +77 -0
  48. package/traits/obstructor-protocol.js.map +1 -0
  49. package/traits/room/roomTrait.d.ts +7 -0
  50. package/traits/room/roomTrait.d.ts.map +1 -1
  51. package/traits/room/roomTrait.js +2 -0
  52. package/traits/room/roomTrait.js.map +1 -1
  53. package/traits/story-info/storyInfoTrait.d.ts +6 -0
  54. package/traits/story-info/storyInfoTrait.d.ts.map +1 -1
  55. package/traits/story-info/storyInfoTrait.js +6 -0
  56. package/traits/story-info/storyInfoTrait.js.map +1 -1
  57. package/traits/trait-types.d.ts +3 -0
  58. package/traits/trait-types.d.ts.map +1 -1
  59. package/traits/trait-types.js +8 -0
  60. package/traits/trait-types.js.map +1 -1
  61. package/world/AuthorModel.d.ts +3 -0
  62. package/world/AuthorModel.d.ts.map +1 -1
  63. package/world/AuthorModel.js +7 -0
  64. package/world/AuthorModel.js.map +1 -1
  65. package/world/WorldModel.d.ts +23 -0
  66. package/world/WorldModel.d.ts.map +1 -1
  67. package/world/WorldModel.js +36 -0
  68. package/world/WorldModel.js.map +1 -1
  69. package/world/index.d.ts +4 -0
  70. package/world/index.d.ts.map +1 -1
  71. package/world/index.js +7 -1
  72. package/world/index.js.map +1 -1
  73. package/world/wall-creation.d.ts +38 -0
  74. package/world/wall-creation.d.ts.map +1 -0
  75. package/world/wall-creation.js +98 -0
  76. package/world/wall-creation.js.map +1 -0
  77. package/world/wall-validation.d.ts +45 -0
  78. package/world/wall-validation.d.ts.map +1 -0
  79. package/world/wall-validation.js +98 -0
  80. package/world/wall-validation.js.map +1 -0
@@ -1 +1 @@
1
- {"version":3,"file":"implementations.js","sourceRoot":"","sources":["../../../../../../../repos/sharpee/packages/world-model/src/traits/implementations.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"implementations.js","sourceRoot":"","sources":["../../../../../../../repos/sharpee/packages/world-model/src/traits/implementations.ts"],"names":[],"mappings":"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"}
package/traits/index.d.ts CHANGED
@@ -37,6 +37,9 @@ export * from './open-inventory';
37
37
  export * from './character-model';
38
38
  export * from './concealment';
39
39
  export * from './story-info';
40
+ export * from './obstructor-protocol';
41
+ export * from './acoustic';
42
+ export * from './listener';
40
43
  export * from './register-all';
41
44
  export * from './all-traits';
42
45
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../repos/sharpee/packages/world-model/src/traits/index.ts"],"names":[],"mappings":"AAIA,cAAc,SAAS,CAAC;AACxB,cAAc,eAAe,CAAC;AAC9B,cAAc,mBAAmB,CAAC;AAGlC,cAAc,YAAY,CAAC;AAC3B,cAAc,aAAa,CAAC;AAC5B,cAAc,QAAQ,CAAC;AACvB,cAAc,YAAY,CAAC;AAC3B,cAAc,YAAY,CAAC;AAC3B,cAAc,YAAY,CAAC;AAC3B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,QAAQ,CAAC;AACvB,cAAc,aAAa,CAAC;AAC5B,cAAc,WAAW,CAAC;AAC1B,cAAc,aAAa,CAAC;AAC5B,cAAc,cAAc,CAAC;AAC7B,cAAc,YAAY,CAAC;AAC3B,cAAc,YAAY,CAAC;AAC3B,cAAc,UAAU,CAAC;AACzB,cAAc,QAAQ,CAAC;AACvB,cAAc,UAAU,CAAC;AACzB,cAAc,SAAS,CAAC;AACxB,cAAc,SAAS,CAAC;AAGxB,cAAc,YAAY,CAAC;AAC3B,cAAc,YAAY,CAAC;AAC3B,cAAc,YAAY,CAAC;AAC3B,cAAc,UAAU,CAAC;AACzB,cAAc,oBAAoB,CAAC;AAGnC,cAAc,UAAU,CAAC;AACzB,cAAc,aAAa,CAAC;AAC5B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,aAAa,CAAC;AAC5B,cAAc,YAAY,CAAC;AAG3B,cAAc,WAAW,CAAC;AAC1B,cAAc,aAAa,CAAC;AAG5B,cAAc,OAAO,CAAC;AACtB,cAAc,kBAAkB,CAAC;AAGjC,cAAc,mBAAmB,CAAC;AAGlC,cAAc,eAAe,CAAC;AAG9B,cAAc,cAAc,CAAC;AAG7B,cAAc,gBAAgB,CAAC;AAG/B,cAAc,cAAc,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../repos/sharpee/packages/world-model/src/traits/index.ts"],"names":[],"mappings":"AAIA,cAAc,SAAS,CAAC;AACxB,cAAc,eAAe,CAAC;AAC9B,cAAc,mBAAmB,CAAC;AAGlC,cAAc,YAAY,CAAC;AAC3B,cAAc,aAAa,CAAC;AAC5B,cAAc,QAAQ,CAAC;AACvB,cAAc,YAAY,CAAC;AAC3B,cAAc,YAAY,CAAC;AAC3B,cAAc,YAAY,CAAC;AAC3B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,QAAQ,CAAC;AACvB,cAAc,aAAa,CAAC;AAC5B,cAAc,WAAW,CAAC;AAC1B,cAAc,aAAa,CAAC;AAC5B,cAAc,cAAc,CAAC;AAC7B,cAAc,YAAY,CAAC;AAC3B,cAAc,YAAY,CAAC;AAC3B,cAAc,UAAU,CAAC;AACzB,cAAc,QAAQ,CAAC;AACvB,cAAc,UAAU,CAAC;AACzB,cAAc,SAAS,CAAC;AACxB,cAAc,SAAS,CAAC;AAGxB,cAAc,YAAY,CAAC;AAC3B,cAAc,YAAY,CAAC;AAC3B,cAAc,YAAY,CAAC;AAC3B,cAAc,UAAU,CAAC;AACzB,cAAc,oBAAoB,CAAC;AAGnC,cAAc,UAAU,CAAC;AACzB,cAAc,aAAa,CAAC;AAC5B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,aAAa,CAAC;AAC5B,cAAc,YAAY,CAAC;AAG3B,cAAc,WAAW,CAAC;AAC1B,cAAc,aAAa,CAAC;AAG5B,cAAc,OAAO,CAAC;AACtB,cAAc,kBAAkB,CAAC;AAGjC,cAAc,mBAAmB,CAAC;AAGlC,cAAc,eAAe,CAAC;AAG9B,cAAc,cAAc,CAAC;AAG7B,cAAc,uBAAuB,CAAC;AAGtC,cAAc,YAAY,CAAC;AAC3B,cAAc,YAAY,CAAC;AAG3B,cAAc,gBAAgB,CAAC;AAG/B,cAAc,cAAc,CAAC"}
package/traits/index.js CHANGED
@@ -64,6 +64,11 @@ __exportStar(require("./character-model"), exports);
64
64
  __exportStar(require("./concealment"), exports);
65
65
  // System traits
66
66
  __exportStar(require("./story-info"), exports);
67
+ // Wall obstructor protocol (ADR-173 Phase 5)
68
+ __exportStar(require("./obstructor-protocol"), exports);
69
+ // Spatial sound traits (ADR-172 Phase 2)
70
+ __exportStar(require("./acoustic"), exports);
71
+ __exportStar(require("./listener"), exports);
67
72
  // Register function
68
73
  __exportStar(require("./register-all"), exports);
69
74
  // All traits in one import
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../../../repos/sharpee/packages/world-model/src/traits/index.ts"],"names":[],"mappings":";AAAA,2CAA2C;AAC3C,sCAAsC;;;;;;;;;;;;;;;;AAEtC,mBAAmB;AACnB,0CAAwB;AACxB,gDAA8B;AAC9B,oDAAkC;AAElC,kEAAkE;AAClE,6CAA2B;AAC3B,8CAA4B;AAC5B,yCAAuB;AACvB,6CAA2B;AAC3B,6CAA2B;AAC3B,6CAA2B;AAC3B,iDAA+B;AAC/B,yCAAuB;AACvB,8CAA4B;AAC5B,4CAA0B;AAC1B,8CAA4B;AAC5B,+CAA6B;AAC7B,6CAA2B;AAC3B,6CAA2B;AAC3B,2CAAyB;AACzB,yCAAuB;AACvB,2CAAyB;AACzB,0CAAwB;AACxB,0CAAwB;AAExB,sBAAsB;AACtB,6CAA2B;AAC3B,6CAA2B;AAC3B,6CAA2B;AAC3B,2CAAyB;AACzB,qDAAmC;AAEnC,gBAAgB;AAChB,2CAAyB;AACzB,8CAA4B;AAC5B,iDAA+B;AAC/B,8CAA4B;AAC5B,6CAA2B;AAE3B,mBAAmB;AACnB,4CAA0B;AAC1B,8CAA4B;AAE5B,aAAa;AACb,wCAAsB;AACtB,mDAAiC;AAEjC,4BAA4B;AAC5B,oDAAkC;AAElC,+BAA+B;AAC/B,gDAA8B;AAE9B,gBAAgB;AAChB,+CAA6B;AAE7B,oBAAoB;AACpB,iDAA+B;AAE/B,2BAA2B;AAC3B,+CAA6B"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../../../repos/sharpee/packages/world-model/src/traits/index.ts"],"names":[],"mappings":";AAAA,2CAA2C;AAC3C,sCAAsC;;;;;;;;;;;;;;;;AAEtC,mBAAmB;AACnB,0CAAwB;AACxB,gDAA8B;AAC9B,oDAAkC;AAElC,kEAAkE;AAClE,6CAA2B;AAC3B,8CAA4B;AAC5B,yCAAuB;AACvB,6CAA2B;AAC3B,6CAA2B;AAC3B,6CAA2B;AAC3B,iDAA+B;AAC/B,yCAAuB;AACvB,8CAA4B;AAC5B,4CAA0B;AAC1B,8CAA4B;AAC5B,+CAA6B;AAC7B,6CAA2B;AAC3B,6CAA2B;AAC3B,2CAAyB;AACzB,yCAAuB;AACvB,2CAAyB;AACzB,0CAAwB;AACxB,0CAAwB;AAExB,sBAAsB;AACtB,6CAA2B;AAC3B,6CAA2B;AAC3B,6CAA2B;AAC3B,2CAAyB;AACzB,qDAAmC;AAEnC,gBAAgB;AAChB,2CAAyB;AACzB,8CAA4B;AAC5B,iDAA+B;AAC/B,8CAA4B;AAC5B,6CAA2B;AAE3B,mBAAmB;AACnB,4CAA0B;AAC1B,8CAA4B;AAE5B,aAAa;AACb,wCAAsB;AACtB,mDAAiC;AAEjC,4BAA4B;AAC5B,oDAAkC;AAElC,+BAA+B;AAC/B,gDAA8B;AAE9B,gBAAgB;AAChB,+CAA6B;AAE7B,6CAA6C;AAC7C,wDAAsC;AAEtC,yCAAyC;AACzC,6CAA2B;AAC3B,6CAA2B;AAE3B,oBAAoB;AACpB,iDAA+B;AAE/B,2BAA2B;AAC3B,+CAA6B"}
@@ -0,0 +1,2 @@
1
+ export { ListenerTrait } from './listenerTrait';
2
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../../repos/sharpee/packages/world-model/src/traits/listener/index.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC"}
@@ -0,0 +1,7 @@
1
+ "use strict";
2
+ // packages/world-model/src/traits/listener/index.ts
3
+ Object.defineProperty(exports, "__esModule", { value: true });
4
+ exports.ListenerTrait = void 0;
5
+ var listenerTrait_1 = require("./listenerTrait");
6
+ Object.defineProperty(exports, "ListenerTrait", { enumerable: true, get: function () { return listenerTrait_1.ListenerTrait; } });
7
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../../../../repos/sharpee/packages/world-model/src/traits/listener/index.ts"],"names":[],"mappings":";AAAA,oDAAoD;;;AAEpD,iDAAgD;AAAvC,8GAAA,aAAa,OAAA"}
@@ -0,0 +1,40 @@
1
+ /**
2
+ * Listener trait — marks an entity as eligible to receive
3
+ * `AudibilityEvent`s from the propagation function (ADR-172).
4
+ *
5
+ * Per ADR-172 §Multi-listener dispatch:
6
+ * - The **player** gets this trait automatically during engine
7
+ * initialization (Phase 4 wires this); story authors do not add it
8
+ * manually.
9
+ * - **NPCs** opt in by attaching the trait (used by L2+ for NPC
10
+ * reactivity — e.g., an NPC hears a scream and runs toward it).
11
+ * - **Devices** may also be Listeners (an intercom microphone, a
12
+ * phone receiver, a recorder); see ADR-172 §Active acoustic
13
+ * devices (deferred composition pattern).
14
+ *
15
+ * Phase 2 ships the trait as a presence flag — no data fields. Future
16
+ * fields (per-listener sensitivity, deafness, kind filters) require a
17
+ * future ADR.
18
+ *
19
+ * Owner context: `@sharpee/world-model` — sensory primitives.
20
+ *
21
+ * @see ADR-172 — Spatial Sound Propagation
22
+ */
23
+ import { ITrait } from '../trait';
24
+ /**
25
+ * Listener trait — presence flag. Entities carrying it are enumerated
26
+ * by the propagation function and receive `AudibilityEvent`s.
27
+ *
28
+ * @example
29
+ * // Engine player init (Phase 4) attaches automatically:
30
+ * player.add(new ListenerTrait());
31
+ *
32
+ * // Story-side NPC opt-in:
33
+ * const guard = author.createEntity('guard', EntityType.ACTOR);
34
+ * guard.add(new ListenerTrait());
35
+ */
36
+ export declare class ListenerTrait implements ITrait {
37
+ static readonly type: "if.trait.listener";
38
+ readonly type: "if.trait.listener";
39
+ }
40
+ //# sourceMappingURL=listenerTrait.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"listenerTrait.d.ts","sourceRoot":"","sources":["../../../../../../../repos/sharpee/packages/world-model/src/traits/listener/listenerTrait.ts"],"names":[],"mappings":"AAEA;;;;;;;;;;;;;;;;;;;;;GAqBG;AAEH,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAGlC;;;;;;;;;;;GAWG;AACH,qBAAa,aAAc,YAAW,MAAM;IAC1C,MAAM,CAAC,QAAQ,CAAC,IAAI,sBAAsB;IAC1C,QAAQ,CAAC,IAAI,sBAAsB;CACpC"}
@@ -0,0 +1,23 @@
1
+ "use strict";
2
+ // packages/world-model/src/traits/listener/listenerTrait.ts
3
+ Object.defineProperty(exports, "__esModule", { value: true });
4
+ exports.ListenerTrait = void 0;
5
+ const trait_types_1 = require("../trait-types");
6
+ /**
7
+ * Listener trait — presence flag. Entities carrying it are enumerated
8
+ * by the propagation function and receive `AudibilityEvent`s.
9
+ *
10
+ * @example
11
+ * // Engine player init (Phase 4) attaches automatically:
12
+ * player.add(new ListenerTrait());
13
+ *
14
+ * // Story-side NPC opt-in:
15
+ * const guard = author.createEntity('guard', EntityType.ACTOR);
16
+ * guard.add(new ListenerTrait());
17
+ */
18
+ class ListenerTrait {
19
+ static type = trait_types_1.TraitType.LISTENER;
20
+ type = trait_types_1.TraitType.LISTENER;
21
+ }
22
+ exports.ListenerTrait = ListenerTrait;
23
+ //# sourceMappingURL=listenerTrait.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"listenerTrait.js","sourceRoot":"","sources":["../../../../../../../../repos/sharpee/packages/world-model/src/traits/listener/listenerTrait.ts"],"names":[],"mappings":";AAAA,4DAA4D;;;AA0B5D,gDAA2C;AAE3C;;;;;;;;;;;GAWG;AACH,MAAa,aAAa;IACxB,MAAM,CAAU,IAAI,GAAG,uBAAS,CAAC,QAAQ,CAAC;IACjC,IAAI,GAAG,uBAAS,CAAC,QAAQ,CAAC;;AAFrC,sCAGC"}
@@ -0,0 +1,96 @@
1
+ /**
2
+ * Generalized obstructor-protocol query helpers (ADR-173).
3
+ *
4
+ * A wall side may declare an `obstructedBy` reference to another entity in
5
+ * the same room. That obstructor's *own traits* declare the capabilities it
6
+ * modifies — `AcousticDampenerTrait` for sound (ADR-172), future
7
+ * `BreachBlockerTrait` for breaching, future `VisualConduitTrait` for
8
+ * line-of-sight, and so on. The wall is the aggregator: capability consumers
9
+ * call into this module to ask "is there a contribution from this side's
10
+ * obstructor for this capability?", and the wall walks both sides for the
11
+ * cross-side sum AC-9 + AC-10 in ADR-173 require.
12
+ *
13
+ * Per ADR-173 §"obstruction is automatically lifted when the obstructor
14
+ * moves", the obstructor's *current* location is re-checked at query time —
15
+ * the wall does not store an obstruction flag. Move the bookcase aside and
16
+ * the obstruction lifts without explicit event handling. Authors who want
17
+ * custom side-effects on movement use ADR-052 event handlers in the usual
18
+ * way; the default protocol behavior is purely query-time.
19
+ *
20
+ * Public interface: `getCurrentObstructor`, `findTraitOnObstructor`,
21
+ * `findTraitsOnObstructors`. The latter two implement the obstructor-trait
22
+ * protocol; the first is the underlying location-aware lookup useful for
23
+ * non-trait queries (e.g. a future BREACH action rendering "the bookcase
24
+ * blocks your access" without consulting any trait).
25
+ *
26
+ * Owner context: `@sharpee/world-model` — wall / spatial primitives.
27
+ */
28
+ import type { EntityId } from "../../core/index";
29
+ import type { IFEntity } from '../entities/if-entity';
30
+ import type { WallEntity } from '../entities/wall-entity';
31
+ import type { ITrait } from './trait';
32
+ /**
33
+ * Narrow world-model surface required to evaluate obstructors. Implemented
34
+ * by `WorldModel`; passed in by callers so the helper has no implicit
35
+ * dependency on the full world API.
36
+ */
37
+ export interface IObstructorQueryWorld {
38
+ getEntity(id: string): IFEntity | undefined;
39
+ getLocation(id: string): string | undefined;
40
+ }
41
+ /**
42
+ * Returns the entity currently obstructing a wall side, or undefined when
43
+ * no obstructor is in effect.
44
+ *
45
+ * Returns undefined when:
46
+ * - the side has no `obstructedBy` declared
47
+ * - the obstructor entity no longer exists in the world
48
+ * - the obstructor is not currently located in the side's room (it was
49
+ * moved aside, taken into inventory, etc.)
50
+ *
51
+ * The runtime location check is the load-bearing semantics: ADR-173 keeps
52
+ * obstruction state implicit so that PUSH BOOKCASE / TAKE TAPESTRY lift
53
+ * obstruction without further bookkeeping.
54
+ */
55
+ export declare function getCurrentObstructor(wall: WallEntity, side: EntityId, world: IObstructorQueryWorld): IFEntity | undefined;
56
+ /**
57
+ * Returns the capability-specific trait carried by the given side's current
58
+ * obstructor, or undefined if no contribution applies.
59
+ *
60
+ * Returns undefined when:
61
+ * - no obstructor is currently present on this side
62
+ * (per `getCurrentObstructor`)
63
+ * - the obstructor lacks the requested trait
64
+ *
65
+ * AC-10 (ADR-173): an obstructor lacking the trait contributes zero to that
66
+ * capability — callers that sum contributions treat undefined as 0.
67
+ */
68
+ export declare function findTraitOnObstructor<T extends ITrait>(wall: WallEntity, side: EntityId, traitType: string, world: IObstructorQueryWorld): T | undefined;
69
+ /**
70
+ * Result of a cross-side obstructor-trait scan: one entry per side that has
71
+ * a current obstructor carrying the requested trait. The `side` field is
72
+ * the room id of the obstructed side (i.e. the room the obstructor sits
73
+ * in); the `obstructor` is the resolved entity; `trait` is the matching
74
+ * trait instance.
75
+ */
76
+ export interface IObstructorTraitMatch<T extends ITrait> {
77
+ side: EntityId;
78
+ obstructor: IFEntity;
79
+ trait: T;
80
+ }
81
+ /**
82
+ * Walks both sides of the wall and returns the matching capability-specific
83
+ * trait for each side that has one.
84
+ *
85
+ * Returns an empty array when neither side has an obstructor with the
86
+ * requested trait — the AC-10 zero-contribution case for the cross-side
87
+ * aggregation pattern.
88
+ *
89
+ * This is the helper ADR-172's acoustic-cost formula consults to sum
90
+ * `AcousticDampenerTrait.acousticCostModifier` across both sides
91
+ * (AC-9 in ADR-173, AC-7 in ADR-172). Future capabilities follow the same
92
+ * shape — pass the trait type the capability declares, sum contributions
93
+ * the way that capability cares about.
94
+ */
95
+ export declare function findTraitsOnObstructors<T extends ITrait>(wall: WallEntity, traitType: string, world: IObstructorQueryWorld): IObstructorTraitMatch<T>[];
96
+ //# sourceMappingURL=obstructor-protocol.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"obstructor-protocol.d.ts","sourceRoot":"","sources":["../../../../../../repos/sharpee/packages/world-model/src/traits/obstructor-protocol.ts"],"names":[],"mappings":"AAEA;;;;;;;;;;;;;;;;;;;;;;;;;;GA0BG;AAEH,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AAC9C,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AACtD,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAC;AAC1D,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,SAAS,CAAC;AAEtC;;;;GAIG;AACH,MAAM,WAAW,qBAAqB;IACpC,SAAS,CAAC,EAAE,EAAE,MAAM,GAAG,QAAQ,GAAG,SAAS,CAAC;IAC5C,WAAW,CAAC,EAAE,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAAC;CAC7C;AAED;;;;;;;;;;;;;GAaG;AACH,wBAAgB,oBAAoB,CAClC,IAAI,EAAE,UAAU,EAChB,IAAI,EAAE,QAAQ,EACd,KAAK,EAAE,qBAAqB,GAC3B,QAAQ,GAAG,SAAS,CAUtB;AAED;;;;;;;;;;;GAWG;AACH,wBAAgB,qBAAqB,CAAC,CAAC,SAAS,MAAM,EACpD,IAAI,EAAE,UAAU,EAChB,IAAI,EAAE,QAAQ,EACd,SAAS,EAAE,MAAM,EACjB,KAAK,EAAE,qBAAqB,GAC3B,CAAC,GAAG,SAAS,CAIf;AAED;;;;;;GAMG;AACH,MAAM,WAAW,qBAAqB,CAAC,CAAC,SAAS,MAAM;IACrD,IAAI,EAAE,QAAQ,CAAC;IACf,UAAU,EAAE,QAAQ,CAAC;IACrB,KAAK,EAAE,CAAC,CAAC;CACV;AAED;;;;;;;;;;;;;GAaG;AACH,wBAAgB,uBAAuB,CAAC,CAAC,SAAS,MAAM,EACtD,IAAI,EAAE,UAAU,EAChB,SAAS,EAAE,MAAM,EACjB,KAAK,EAAE,qBAAqB,GAC3B,qBAAqB,CAAC,CAAC,CAAC,EAAE,CAU5B"}
@@ -0,0 +1,77 @@
1
+ "use strict";
2
+ // packages/world-model/src/traits/obstructor-protocol.ts
3
+ Object.defineProperty(exports, "__esModule", { value: true });
4
+ exports.getCurrentObstructor = getCurrentObstructor;
5
+ exports.findTraitOnObstructor = findTraitOnObstructor;
6
+ exports.findTraitsOnObstructors = findTraitsOnObstructors;
7
+ /**
8
+ * Returns the entity currently obstructing a wall side, or undefined when
9
+ * no obstructor is in effect.
10
+ *
11
+ * Returns undefined when:
12
+ * - the side has no `obstructedBy` declared
13
+ * - the obstructor entity no longer exists in the world
14
+ * - the obstructor is not currently located in the side's room (it was
15
+ * moved aside, taken into inventory, etc.)
16
+ *
17
+ * The runtime location check is the load-bearing semantics: ADR-173 keeps
18
+ * obstruction state implicit so that PUSH BOOKCASE / TAKE TAPESTRY lift
19
+ * obstruction without further bookkeeping.
20
+ */
21
+ function getCurrentObstructor(wall, side, world) {
22
+ const sideData = wall.getSide(side);
23
+ if (!sideData?.obstructedBy)
24
+ return undefined;
25
+ const obstructor = world.getEntity(sideData.obstructedBy);
26
+ if (!obstructor)
27
+ return undefined;
28
+ if (world.getLocation(obstructor.id) !== side)
29
+ return undefined;
30
+ return obstructor;
31
+ }
32
+ /**
33
+ * Returns the capability-specific trait carried by the given side's current
34
+ * obstructor, or undefined if no contribution applies.
35
+ *
36
+ * Returns undefined when:
37
+ * - no obstructor is currently present on this side
38
+ * (per `getCurrentObstructor`)
39
+ * - the obstructor lacks the requested trait
40
+ *
41
+ * AC-10 (ADR-173): an obstructor lacking the trait contributes zero to that
42
+ * capability — callers that sum contributions treat undefined as 0.
43
+ */
44
+ function findTraitOnObstructor(wall, side, traitType, world) {
45
+ const obstructor = getCurrentObstructor(wall, side, world);
46
+ if (!obstructor)
47
+ return undefined;
48
+ return obstructor.get(traitType);
49
+ }
50
+ /**
51
+ * Walks both sides of the wall and returns the matching capability-specific
52
+ * trait for each side that has one.
53
+ *
54
+ * Returns an empty array when neither side has an obstructor with the
55
+ * requested trait — the AC-10 zero-contribution case for the cross-side
56
+ * aggregation pattern.
57
+ *
58
+ * This is the helper ADR-172's acoustic-cost formula consults to sum
59
+ * `AcousticDampenerTrait.acousticCostModifier` across both sides
60
+ * (AC-9 in ADR-173, AC-7 in ADR-172). Future capabilities follow the same
61
+ * shape — pass the trait type the capability declares, sum contributions
62
+ * the way that capability cares about.
63
+ */
64
+ function findTraitsOnObstructors(wall, traitType, world) {
65
+ const matches = [];
66
+ for (const side of wall.between) {
67
+ const obstructor = getCurrentObstructor(wall, side, world);
68
+ if (!obstructor)
69
+ continue;
70
+ const trait = obstructor.get(traitType);
71
+ if (!trait)
72
+ continue;
73
+ matches.push({ side, obstructor, trait });
74
+ }
75
+ return matches;
76
+ }
77
+ //# sourceMappingURL=obstructor-protocol.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"obstructor-protocol.js","sourceRoot":"","sources":["../../../../../../../repos/sharpee/packages/world-model/src/traits/obstructor-protocol.ts"],"names":[],"mappings":";AAAA,yDAAyD;;AA2DzD,oDAcC;AAcD,sDASC;AA6BD,0DAcC;AA9FD;;;;;;;;;;;;;GAaG;AACH,SAAgB,oBAAoB,CAClC,IAAgB,EAChB,IAAc,EACd,KAA4B;IAE5B,MAAM,QAAQ,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;IACpC,IAAI,CAAC,QAAQ,EAAE,YAAY;QAAE,OAAO,SAAS,CAAC;IAE9C,MAAM,UAAU,GAAG,KAAK,CAAC,SAAS,CAAC,QAAQ,CAAC,YAAY,CAAC,CAAC;IAC1D,IAAI,CAAC,UAAU;QAAE,OAAO,SAAS,CAAC;IAElC,IAAI,KAAK,CAAC,WAAW,CAAC,UAAU,CAAC,EAAE,CAAC,KAAK,IAAI;QAAE,OAAO,SAAS,CAAC;IAEhE,OAAO,UAAU,CAAC;AACpB,CAAC;AAED;;;;;;;;;;;GAWG;AACH,SAAgB,qBAAqB,CACnC,IAAgB,EAChB,IAAc,EACd,SAAiB,EACjB,KAA4B;IAE5B,MAAM,UAAU,GAAG,oBAAoB,CAAC,IAAI,EAAE,IAAI,EAAE,KAAK,CAAC,CAAC;IAC3D,IAAI,CAAC,UAAU;QAAE,OAAO,SAAS,CAAC;IAClC,OAAO,UAAU,CAAC,GAAG,CAAI,SAAS,CAAC,CAAC;AACtC,CAAC;AAeD;;;;;;;;;;;;;GAaG;AACH,SAAgB,uBAAuB,CACrC,IAAgB,EAChB,SAAiB,EACjB,KAA4B;IAE5B,MAAM,OAAO,GAA+B,EAAE,CAAC;IAC/C,KAAK,MAAM,IAAI,IAAI,IAAI,CAAC,OAAO,EAAE,CAAC;QAChC,MAAM,UAAU,GAAG,oBAAoB,CAAC,IAAI,EAAE,IAAI,EAAE,KAAK,CAAC,CAAC;QAC3D,IAAI,CAAC,UAAU;YAAE,SAAS;QAC1B,MAAM,KAAK,GAAG,UAAU,CAAC,GAAG,CAAI,SAAS,CAAC,CAAC;QAC3C,IAAI,CAAC,KAAK;YAAE,SAAS;QACrB,OAAO,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,UAAU,EAAE,KAAK,EAAE,CAAC,CAAC;IAC5C,CAAC;IACD,OAAO,OAAO,CAAC;AACjB,CAAC"}
@@ -48,6 +48,12 @@ export interface IRoomData {
48
48
  ambientSmell?: string;
49
49
  /** ID of the region entity this room belongs to (ADR-149) */
50
50
  regionId?: string;
51
+ /**
52
+ * Wall entities this room borders (ADR-173).
53
+ * Maintained automatically by `WorldModel.createWall` —
54
+ * authors do not append directly.
55
+ */
56
+ walls?: string[];
51
57
  /** Tags for categorizing rooms */
52
58
  tags?: string[];
53
59
  /** Capacity constraints for the room (optional) */
@@ -86,6 +92,7 @@ export declare class RoomTrait implements ITrait, IRoomData {
86
92
  ambientSound?: string;
87
93
  ambientSmell?: string;
88
94
  regionId?: string;
95
+ walls: string[];
89
96
  tags: string[];
90
97
  capacity?: {
91
98
  maxWeight?: number;
@@ -1 +1 @@
1
- {"version":3,"file":"roomTrait.d.ts","sourceRoot":"","sources":["../../../../../../../repos/sharpee/packages/world-model/src/traits/room/roomTrait.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"roomTrait.d.ts","sourceRoot":"","sources":["../../../../../../../repos/sharpee/packages/world-model/src/traits/room/roomTrait.ts"],"names":[],"mappings":"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"}
@@ -26,6 +26,7 @@ class RoomTrait {
26
26
  ambientSound;
27
27
  ambientSmell;
28
28
  regionId;
29
+ walls;
29
30
  tags;
30
31
  // Container functionality
31
32
  capacity;
@@ -48,6 +49,7 @@ class RoomTrait {
48
49
  this.ambientSound = data.ambientSound;
49
50
  this.ambientSmell = data.ambientSmell;
50
51
  this.regionId = data.regionId;
52
+ this.walls = data.walls ?? [];
51
53
  this.tags = data.tags ?? [];
52
54
  // Container properties
53
55
  this.capacity = data.capacity;
@@ -1 +1 @@
1
- {"version":3,"file":"roomTrait.js","sourceRoot":"","sources":["../../../../../../../../repos/sharpee/packages/world-model/src/traits/room/roomTrait.ts"],"names":[],"mappings":";AAAA,oDAAoD;;;AAGpD,gDAA2C;AAyF3C;;;;;;GAMG;AACH,MAAa,SAAS;IACpB,MAAM,CAAU,IAAI,GAAG,uBAAS,CAAC,IAAI,CAAC;IAC7B,IAAI,GAAG,uBAAS,CAAC,IAAI,CAAC;IAE/B,sBAAsB;IACtB,OAAO,CAAU;IACjB,KAAK,CAA4C;IACjD,YAAY,CAA0C;IACtD,OAAO,CAAU;IACjB,MAAM,CAAU;IAChB,UAAU,CAAU;IACpB,aAAa,CAAU;IACvB,kBAAkB,CAAU;IAC5B,oBAAoB,CAAU;IAC9B,YAAY,CAAU;IACtB,YAAY,CAAU;IACtB,QAAQ,CAAU;IAClB,IAAI,CAAW;IAEf,0BAA0B;IAC1B,QAAQ,CAIN;IACF,YAAY,CAAY;IACxB,aAAa,CAAY;IAEzB,gEAAgE;IACvD,aAAa,GAAY,IAAI,CAAC;IAC9B,SAAS,GAAY,IAAI,CAAC;IAEnC,YAAY,OAAkB,EAAE;QAC9B,4CAA4C;QAC5C,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,OAAO,IAAI,KAAK,CAAC;QACrC,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,KAAK,IAAI,EAA+C,CAAC;QAC3E,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC,YAAY,CAAC;QACtC,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,OAAO,IAAI,KAAK,CAAC;QACrC,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,MAAM,IAAI,KAAK,CAAC,CAAE,iBAAiB;QACtD,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC,UAAU,IAAI,KAAK,CAAC;QAC3C,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC,aAAa,IAAI,KAAK,CAAC;QACjD,IAAI,CAAC,kBAAkB,GAAG,IAAI,CAAC,kBAAkB,CAAC;QAClD,IAAI,CAAC,oBAAoB,GAAG,IAAI,CAAC,oBAAoB,CAAC;QACtD,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC,YAAY,CAAC;QACtC,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC,YAAY,CAAC;QACtC,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC;QAC9B,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,IAAI,IAAI,EAAE,CAAC;QAE5B,uBAAuB;QACvB,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC;QAC9B,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC,YAAY,CAAC;QACtC,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC,aAAa,CAAC;IAC1C,CAAC;;AApDH,8BAqDC"}
1
+ {"version":3,"file":"roomTrait.js","sourceRoot":"","sources":["../../../../../../../../repos/sharpee/packages/world-model/src/traits/room/roomTrait.ts"],"names":[],"mappings":";AAAA,oDAAoD;;;AAGpD,gDAA2C;AAgG3C;;;;;;GAMG;AACH,MAAa,SAAS;IACpB,MAAM,CAAU,IAAI,GAAG,uBAAS,CAAC,IAAI,CAAC;IAC7B,IAAI,GAAG,uBAAS,CAAC,IAAI,CAAC;IAE/B,sBAAsB;IACtB,OAAO,CAAU;IACjB,KAAK,CAA4C;IACjD,YAAY,CAA0C;IACtD,OAAO,CAAU;IACjB,MAAM,CAAU;IAChB,UAAU,CAAU;IACpB,aAAa,CAAU;IACvB,kBAAkB,CAAU;IAC5B,oBAAoB,CAAU;IAC9B,YAAY,CAAU;IACtB,YAAY,CAAU;IACtB,QAAQ,CAAU;IAClB,KAAK,CAAW;IAChB,IAAI,CAAW;IAEf,0BAA0B;IAC1B,QAAQ,CAIN;IACF,YAAY,CAAY;IACxB,aAAa,CAAY;IAEzB,gEAAgE;IACvD,aAAa,GAAY,IAAI,CAAC;IAC9B,SAAS,GAAY,IAAI,CAAC;IAEnC,YAAY,OAAkB,EAAE;QAC9B,4CAA4C;QAC5C,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,OAAO,IAAI,KAAK,CAAC;QACrC,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,KAAK,IAAI,EAA+C,CAAC;QAC3E,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC,YAAY,CAAC;QACtC,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,OAAO,IAAI,KAAK,CAAC;QACrC,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,MAAM,IAAI,KAAK,CAAC,CAAE,iBAAiB;QACtD,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC,UAAU,IAAI,KAAK,CAAC;QAC3C,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC,aAAa,IAAI,KAAK,CAAC;QACjD,IAAI,CAAC,kBAAkB,GAAG,IAAI,CAAC,kBAAkB,CAAC;QAClD,IAAI,CAAC,oBAAoB,GAAG,IAAI,CAAC,oBAAoB,CAAC;QACtD,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC,YAAY,CAAC;QACtC,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC,YAAY,CAAC;QACtC,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC;QAC9B,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,KAAK,IAAI,EAAE,CAAC;QAC9B,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,IAAI,IAAI,EAAE,CAAC;QAE5B,uBAAuB;QACvB,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC;QAC9B,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC,YAAY,CAAC;QACtC,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC,aAAa,CAAC;IAC1C,CAAC;;AAtDH,8BAuDC"}
@@ -17,6 +17,12 @@ export declare class StoryInfoTrait implements ITrait {
17
17
  engineVersion?: string;
18
18
  clientVersion?: string;
19
19
  portedBy?: string;
20
+ /**
21
+ * Distinct credit lines for the banner's `author-list` section.
22
+ * One block per entry. When unset, the banner falls back to a
23
+ * single `By {author}` line.
24
+ */
25
+ credits?: string[];
20
26
  constructor(data?: Partial<StoryInfoTrait>);
21
27
  }
22
28
  //# sourceMappingURL=storyInfoTrait.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"storyInfoTrait.d.ts","sourceRoot":"","sources":["../../../../../../../repos/sharpee/packages/world-model/src/traits/story-info/storyInfoTrait.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAElC;;;;;;GAMG;AACH,qBAAa,cAAe,YAAW,MAAM;IAC3C,MAAM,CAAC,QAAQ,CAAC,IAAI,EAAG,WAAW,CAAU;IAC5C,QAAQ,CAAC,IAAI,EAAG,WAAW,CAAU;IAErC,KAAK,SAAM;IACX,MAAM,SAAM;IACZ,OAAO,SAAM;IACb,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,EAAE,MAAM,CAAC;gBAEN,IAAI,CAAC,EAAE,OAAO,CAAC,cAAc,CAAC;CAK3C"}
1
+ {"version":3,"file":"storyInfoTrait.d.ts","sourceRoot":"","sources":["../../../../../../../repos/sharpee/packages/world-model/src/traits/story-info/storyInfoTrait.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAElC;;;;;;GAMG;AACH,qBAAa,cAAe,YAAW,MAAM;IAC3C,MAAM,CAAC,QAAQ,CAAC,IAAI,EAAG,WAAW,CAAU;IAC5C,QAAQ,CAAC,IAAI,EAAG,WAAW,CAAU;IAErC,KAAK,SAAM;IACX,MAAM,SAAM;IACZ,OAAO,SAAM;IACb,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB;;;;OAIG;IACH,OAAO,CAAC,EAAE,MAAM,EAAE,CAAC;gBAEP,IAAI,CAAC,EAAE,OAAO,CAAC,cAAc,CAAC;CAK3C"}
@@ -20,6 +20,12 @@ class StoryInfoTrait {
20
20
  engineVersion;
21
21
  clientVersion;
22
22
  portedBy;
23
+ /**
24
+ * Distinct credit lines for the banner's `author-list` section.
25
+ * One block per entry. When unset, the banner falls back to a
26
+ * single `By {author}` line.
27
+ */
28
+ credits;
23
29
  constructor(data) {
24
30
  if (data) {
25
31
  Object.assign(this, data);
@@ -1 +1 @@
1
- {"version":3,"file":"storyInfoTrait.js","sourceRoot":"","sources":["../../../../../../../../repos/sharpee/packages/world-model/src/traits/story-info/storyInfoTrait.ts"],"names":[],"mappings":";AAAA,+DAA+D;;;AAI/D;;;;;;GAMG;AACH,MAAa,cAAc;IACzB,MAAM,CAAU,IAAI,GAAG,WAAoB,CAAC;IACnC,IAAI,GAAG,WAAoB,CAAC;IAErC,KAAK,GAAG,EAAE,CAAC;IACX,MAAM,GAAG,EAAE,CAAC;IACZ,OAAO,GAAG,EAAE,CAAC;IACb,WAAW,CAAU;IACrB,SAAS,CAAU;IACnB,aAAa,CAAU;IACvB,aAAa,CAAU;IACvB,QAAQ,CAAU;IAElB,YAAY,IAA8B;QACxC,IAAI,IAAI,EAAE,CAAC;YACT,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;QAC5B,CAAC;IACH,CAAC;;AAjBH,wCAkBC"}
1
+ {"version":3,"file":"storyInfoTrait.js","sourceRoot":"","sources":["../../../../../../../../repos/sharpee/packages/world-model/src/traits/story-info/storyInfoTrait.ts"],"names":[],"mappings":";AAAA,+DAA+D;;;AAI/D;;;;;;GAMG;AACH,MAAa,cAAc;IACzB,MAAM,CAAU,IAAI,GAAG,WAAoB,CAAC;IACnC,IAAI,GAAG,WAAoB,CAAC;IAErC,KAAK,GAAG,EAAE,CAAC;IACX,MAAM,GAAG,EAAE,CAAC;IACZ,OAAO,GAAG,EAAE,CAAC;IACb,WAAW,CAAU;IACrB,SAAS,CAAU;IACnB,aAAa,CAAU;IACvB,aAAa,CAAU;IACvB,QAAQ,CAAU;IAClB;;;;OAIG;IACH,OAAO,CAAY;IAEnB,YAAY,IAA8B;QACxC,IAAI,IAAI,EAAE,CAAC;YACT,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;QAC5B,CAAC;IACH,CAAC;;AAvBH,wCAwBC"}
@@ -43,6 +43,9 @@ export declare const TraitType: {
43
43
  readonly ENTERABLE: "enterable";
44
44
  readonly CONCEALMENT: "if.trait.concealment";
45
45
  readonly CONCEALED_STATE: "if.trait.concealed_state";
46
+ readonly ACOUSTIC: "if.trait.acoustic";
47
+ readonly ACOUSTIC_DAMPENER: "if.trait.acoustic_dampener";
48
+ readonly LISTENER: "if.trait.listener";
46
49
  readonly STORY_INFO: "storyInfo";
47
50
  };
48
51
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"trait-types.d.ts","sourceRoot":"","sources":["../../../../../../repos/sharpee/packages/world-model/src/traits/trait-types.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH;;GAEG;AACH,eAAO,MAAM,SAAS;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA+DZ,CAAC;AAEX;;GAEG;AACH,MAAM,MAAM,SAAS,GAAG,OAAO,SAAS,CAAC,MAAM,OAAO,SAAS,CAAC,CAAC;AAEjE;;GAEG;AACH,eAAO,MAAM,aAAa;;;;CAIhB,CAAC;AAEX;;GAEG;AACH,MAAM,MAAM,aAAa,GAAG,OAAO,aAAa,CAAC,MAAM,OAAO,aAAa,CAAC,CAAC;AAE7E;;GAEG;AACH,eAAO,MAAM,gBAAgB,EAAE,MAAM,CAAC,SAAS,EAAE,aAAa,CA6D7D,CAAC;AAEF;;GAEG;AACH,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,IAAI,SAAS,CAEhE;AAED;;GAEG;AACH,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,SAAS,GAAG,aAAa,CAE/D;AAED;;GAEG;AACH,wBAAgB,mBAAmB,CAAC,QAAQ,EAAE,aAAa,GAAG,SAAS,EAAE,CAIxE;AAED;;GAEG;AACH,wBAAgB,gBAAgB,IAAI,SAAS,EAAE,CAE9C;AAED;;GAEG;AACH,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,QAAQ,GAAE,aAAsC,GAAG,IAAI,CAMrH"}
1
+ {"version":3,"file":"trait-types.d.ts","sourceRoot":"","sources":["../../../../../../repos/sharpee/packages/world-model/src/traits/trait-types.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH;;GAEG;AACH,eAAO,MAAM,SAAS;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAoEZ,CAAC;AAEX;;GAEG;AACH,MAAM,MAAM,SAAS,GAAG,OAAO,SAAS,CAAC,MAAM,OAAO,SAAS,CAAC,CAAC;AAEjE;;GAEG;AACH,eAAO,MAAM,aAAa;;;;CAIhB,CAAC;AAEX;;GAEG;AACH,MAAM,MAAM,aAAa,GAAG,OAAO,aAAa,CAAC,MAAM,OAAO,aAAa,CAAC,CAAC;AAE7E;;GAEG;AACH,eAAO,MAAM,gBAAgB,EAAE,MAAM,CAAC,SAAS,EAAE,aAAa,CAkE7D,CAAC;AAEF;;GAEG;AACH,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,IAAI,SAAS,CAEhE;AAED;;GAEG;AACH,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,SAAS,GAAG,aAAa,CAE/D;AAED;;GAEG;AACH,wBAAgB,mBAAmB,CAAC,QAAQ,EAAE,aAAa,GAAG,SAAS,EAAE,CAIxE;AAED;;GAEG;AACH,wBAAgB,gBAAgB,IAAI,SAAS,EAAE,CAE9C;AAED;;GAEG;AACH,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,QAAQ,GAAE,aAAsC,GAAG,IAAI,CAMrH"}
@@ -63,6 +63,10 @@ exports.TraitType = {
63
63
  // Concealment traits (ADR-148)
64
64
  CONCEALMENT: 'if.trait.concealment',
65
65
  CONCEALED_STATE: 'if.trait.concealed_state',
66
+ // Acoustic / sound traits (ADR-172)
67
+ ACOUSTIC: 'if.trait.acoustic',
68
+ ACOUSTIC_DAMPENER: 'if.trait.acoustic_dampener',
69
+ LISTENER: 'if.trait.listener',
66
70
  // System traits
67
71
  STORY_INFO: 'storyInfo'
68
72
  };
@@ -125,6 +129,10 @@ exports.TRAIT_CATEGORIES = {
125
129
  // Concealment traits (ADR-148)
126
130
  [exports.TraitType.CONCEALMENT]: exports.TraitCategory.INTERACTIVE,
127
131
  [exports.TraitType.CONCEALED_STATE]: exports.TraitCategory.INTERACTIVE,
132
+ // Acoustic / sound traits (ADR-172)
133
+ [exports.TraitType.ACOUSTIC]: exports.TraitCategory.STANDARD,
134
+ [exports.TraitType.ACOUSTIC_DAMPENER]: exports.TraitCategory.STANDARD,
135
+ [exports.TraitType.LISTENER]: exports.TraitCategory.STANDARD,
128
136
  // System traits
129
137
  [exports.TraitType.STORY_INFO]: exports.TraitCategory.STANDARD
130
138
  };
@@ -1 +1 @@
1
- {"version":3,"file":"trait-types.js","sourceRoot":"","sources":["../../../../../../../repos/sharpee/packages/world-model/src/traits/trait-types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"trait-types.js","sourceRoot":"","sources":["../../../../../../../repos/sharpee/packages/world-model/src/traits/trait-types.ts"],"names":[],"mappings":"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"}
@@ -9,6 +9,7 @@
9
9
  * containers, etc.).
10
10
  */
11
11
  import { IFEntity } from '../entities/if-entity';
12
+ import { WallEntity, IWallSpec, IWallsSpec } from '../entities/wall-entity';
12
13
  import { TraitType } from '../traits/trait-types';
13
14
  import { SpatialIndex } from './SpatialIndex';
14
15
  import { ITrait } from '../traits/trait';
@@ -120,6 +121,8 @@ export declare class AuthorModel implements IWorldModel {
120
121
  isLocked?: boolean;
121
122
  keyId?: string;
122
123
  }): IFEntity;
124
+ createWall(spec: IWallSpec): WallEntity;
125
+ createWalls(spec: IWallsSpec): WallEntity[];
123
126
  createRegion(id: string, options: RegionOptions): IFEntity;
124
127
  assignRoom(roomId: string, regionId: string): void;
125
128
  isInRegion(entityId: string, regionId: string): boolean;
@@ -1 +1 @@
1
- {"version":3,"file":"AuthorModel.d.ts","sourceRoot":"","sources":["../../../../../../repos/sharpee/packages/world-model/src/world/AuthorModel.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"AuthorModel.d.ts","sourceRoot":"","sources":["../../../../../../repos/sharpee/packages/world-model/src/world/AuthorModel.ts"],"names":[],"mappings":"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"}
@@ -182,6 +182,13 @@ class AuthorModel {
182
182
  createDoor(displayName, opts) {
183
183
  return this.worldModel.createDoor(displayName, opts);
184
184
  }
185
+ // Wall Adjacency (ADR-173)
186
+ createWall(spec) {
187
+ return this.worldModel.createWall(spec);
188
+ }
189
+ createWalls(spec) {
190
+ return this.worldModel.createWalls(spec);
191
+ }
185
192
  // Region Management (ADR-149)
186
193
  createRegion(id, options) {
187
194
  return this.worldModel.createRegion(id, options);