@polycode-projects/the-mechanical-code-talker 2.6.1 → 2.7.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 (56) hide show
  1. package/corpus/LICENSES.json +14 -0
  2. package/corpus/child/LICENSE-NOTICE +43 -0
  3. package/corpus/child/README.md +79 -0
  4. package/corpus/child/index.json.gz +0 -0
  5. package/corpus/child/manifest.json +313 -0
  6. package/corpus/child/shards/child-00.jsonl.gz +0 -0
  7. package/corpus/child/shards/child-01.jsonl.gz +0 -0
  8. package/corpus/child/shards/child-02.jsonl.gz +0 -0
  9. package/corpus/child/shards/child-03.jsonl.gz +0 -0
  10. package/corpus/child/shards/child-04.jsonl.gz +0 -0
  11. package/corpus/child/shards/child-05.jsonl.gz +0 -0
  12. package/corpus/child/shards/child-06.jsonl.gz +0 -0
  13. package/corpus/child/shards/child-07.jsonl.gz +0 -0
  14. package/corpus/child/shards/child-08.jsonl.gz +0 -0
  15. package/corpus/child/shards/child-09.jsonl.gz +0 -0
  16. package/corpus/child/shards/child-0a.jsonl.gz +0 -0
  17. package/corpus/child/shards/child-0b.jsonl.gz +0 -0
  18. package/corpus/child/shards/child-0c.jsonl.gz +0 -0
  19. package/corpus/child/shards/child-0d.jsonl.gz +0 -0
  20. package/corpus/child/shards/child-0e.jsonl.gz +0 -0
  21. package/corpus/child/shards/child-0f.jsonl.gz +0 -0
  22. package/corpus/child/shards/child-10.jsonl.gz +0 -0
  23. package/corpus/child/shards/child-11.jsonl.gz +0 -0
  24. package/corpus/child/shards/child-12.jsonl.gz +0 -0
  25. package/corpus/child/shards/child-13.jsonl.gz +0 -0
  26. package/corpus/child/shards/child-14.jsonl.gz +0 -0
  27. package/corpus/child/shards/child-15.jsonl.gz +0 -0
  28. package/corpus/child/shards/child-16.jsonl.gz +0 -0
  29. package/corpus/child/shards/child-17.jsonl.gz +0 -0
  30. package/corpus/child/shards/child-18.jsonl.gz +0 -0
  31. package/corpus/child/shards/child-19.jsonl.gz +0 -0
  32. package/corpus/child/shards/child-1a.jsonl.gz +0 -0
  33. package/corpus/child/shards/child-1b.jsonl.gz +0 -0
  34. package/corpus/child/shards/child-1c.jsonl.gz +0 -0
  35. package/corpus/child/shards/child-1d.jsonl.gz +0 -0
  36. package/corpus/child/shards/child-1e.jsonl.gz +0 -0
  37. package/corpus/child/shards/child-1f.jsonl.gz +0 -0
  38. package/corpus/conceptnet/child-seed.mjs +169 -0
  39. package/corpus/conceptnet/filter-dump.mjs +69 -48
  40. package/corpus/worlds/README.md +26 -0
  41. package/corpus/worlds/index.json.gz +0 -0
  42. package/corpus/worlds/manifest.json +33 -0
  43. package/corpus/worlds/shards/ashcombe-hall.jsonl.gz +0 -0
  44. package/corpus/worlds/src/ashcombe-hall.jsonl +64 -0
  45. package/package.json +4 -1
  46. package/src/adapters/corpus/child-pack.mjs +115 -0
  47. package/src/adapters/corpus/conceptnet-map.toml +7 -0
  48. package/src/adapters/corpus/worlds-pack.mjs +122 -0
  49. package/src/domain/child-pack.mjs +79 -0
  50. package/src/domain/grammar/ace.mjs +77 -0
  51. package/src/domain/grammar/lexicon-core.json +6 -0
  52. package/src/domain/memory/trust.mjs +8 -0
  53. package/src/domain/worlds-pack.mjs +71 -0
  54. package/src/services/adventure.mjs +669 -0
  55. package/src/services/chat.mjs +26 -0
  56. package/src/surfaces/web/memory-ask-browser.bundle.js +521 -39
@@ -50,6 +50,7 @@ import { REFERENCE_PACK_NAME, cleanMissReferenceTerm, renderReferenceAnswer, ref
50
50
  import { getReferencePackProvider } from "../adapters/corpus/reference-pack.mjs";
51
51
  import { dialogueActForLane } from "../domain/dialogue-acts.mjs";
52
52
  import { relatedForTerm } from "../domain/skos-view.mjs";
53
+ import { adventureTurn } from "./adventure.mjs";
53
54
 
54
55
  // Composition: the chat surface supplies the domain parser's default lemma/POS
55
56
  // adapter (the browser bundle's ask-nlp stub carries no factory, so this is a
@@ -12162,6 +12163,9 @@ function guessNumberTurn(line, { planHolder, env }) {
12162
12163
  return null;
12163
12164
  }
12164
12165
  if (!opening) return null;
12166
+ if (state?.adventure) {
12167
+ return { text: 'we\'re mid-adventure — say "stop playing" to end it before a number game.', lane: "game-inform", note: "GAME — an opening arrived mid-adventure; the slot holds one thing at a time" };
12168
+ }
12165
12169
  const planActive = state && !state.done
12166
12170
  && ((Array.isArray(state.goals) && state.goals.length) || (Array.isArray(state.actions) && state.actions.length));
12167
12171
  if (planActive) {
@@ -12515,6 +12519,28 @@ export async function runTurn(input, { config, source = defaultSource, graph = n
12515
12519
  }
12516
12520
  }
12517
12521
 
12522
+ // THE ADVENTURE — world-loading openers ("play ashcombe hall", "start the
12523
+ // adventure"), the stop command, and (once a world is live) the game's own
12524
+ // turns. Ordered AFTER the guess-number lane so that lane keeps every
12525
+ // guessing-game opener it already owns, and before the conversational
12526
+ // layer for the same reason the game lane is: an opening line would
12527
+ // otherwise read as a declarative or an orientation ask.
12528
+ {
12529
+ const advTurn = await adventureTurn(workingLine, {
12530
+ planHolder, memoryDir, sessionId, env, lexicon, graph, cache: factRowsCache, isPlanFrameLine,
12531
+ });
12532
+ if (advTurn) {
12533
+ note(trace, `lane: ${advTurn.note}`);
12534
+ if (advTurn.goal) note(trace, `goal: ${advTurn.goal}`);
12535
+ const result = plainTurn(workingLine, advTurn.text, { via: "game", focus });
12536
+ if (advTurn.goal) result.goal = advTurn.goal;
12537
+ result.lane = advTurn.lane;
12538
+ const rec = withLast(result, advTurn.goal ?? "play the adventure");
12539
+ rec.planState = planHolder.state;
12540
+ return rec;
12541
+ }
12542
+ }
12543
+
12518
12544
  // Conversational layer next (greetings, thanks, help, bye, why/say-more) — these
12519
12545
  // resolve no entity and carry their own preserved `last`. Bypasses withLast (a
12520
12546
  // conversational turn is never finish()'d / never becomes a new `last`), so the