@graffiticode/l0175 0.2.0 → 0.3.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 (78) hide show
  1. package/dist/compiler.d.ts.map +1 -1
  2. package/dist/compiler.js +50 -124
  3. package/dist/compiler.js.map +1 -1
  4. package/dist/embedding.d.ts +1 -0
  5. package/dist/embedding.d.ts.map +1 -1
  6. package/dist/embedding.js +35 -2
  7. package/dist/embedding.js.map +1 -1
  8. package/dist/index.d.ts +4 -0
  9. package/dist/index.d.ts.map +1 -1
  10. package/dist/index.js +2 -0
  11. package/dist/index.js.map +1 -1
  12. package/dist/lexicon.d.ts +7 -0
  13. package/dist/lexicon.d.ts.map +1 -1
  14. package/dist/lexicon.js +12 -4
  15. package/dist/lexicon.js.map +1 -1
  16. package/dist/static/instructions.md +187 -10
  17. package/dist/static/language-info.json +3 -3
  18. package/dist/static/lexicon.json +98 -0
  19. package/dist/static/scope.json +1 -1
  20. package/dist/static/spec.html +2 -1
  21. package/dist/static/stems.md +14 -0
  22. package/dist/static/targets.json +209 -0
  23. package/dist/static/template.gc +7 -67
  24. package/dist/static/unparse-hints.json +3 -0
  25. package/dist/static/usage-guide.md +22 -2
  26. package/dist/targets.d.ts +25 -0
  27. package/dist/targets.d.ts.map +1 -0
  28. package/dist/targets.js +169 -0
  29. package/dist/targets.js.map +1 -0
  30. package/dist/verify-example.d.ts +27 -0
  31. package/dist/verify-example.d.ts.map +1 -0
  32. package/dist/verify-example.js +82 -0
  33. package/dist/verify-example.js.map +1 -0
  34. package/package.json +1 -1
  35. package/spec/docs.md +5 -2
  36. package/spec/examples/c1-t10-tm1-multiplechoice.expect.json +1 -0
  37. package/spec/examples/c1-t10-tm1-multiplechoice.gc +15 -0
  38. package/spec/examples/c1-t10-tm2-multiselect.expect.json +1 -0
  39. package/spec/examples/c1-t10-tm2-multiselect.gc +15 -0
  40. package/spec/examples/c1-t10-tm3-hottext.expect.json +1 -0
  41. package/spec/examples/c1-t10-tm3-hottext.gc +13 -0
  42. package/spec/examples/c1-t11-tm1-ebsr.expect.json +4 -0
  43. package/spec/examples/c1-t11-tm1-ebsr.gc +30 -0
  44. package/spec/examples/c1-t11-tm2-hottext.expect.json +4 -0
  45. package/spec/examples/c1-t11-tm2-hottext.gc +30 -0
  46. package/spec/examples/c1-t11-tm3-shorttext.expect.json +4 -0
  47. package/spec/examples/c1-t11-tm3-shorttext.gc +30 -0
  48. package/spec/examples/c1-t4-tm1-ebsr.expect.json +4 -0
  49. package/spec/examples/c1-t4-tm1-ebsr.gc +30 -0
  50. package/spec/examples/c1-t4-tm2-hottext.expect.json +4 -0
  51. package/spec/examples/c1-t4-tm2-hottext.gc +30 -0
  52. package/spec/examples/c1-t4-tm3-shorttext.expect.json +4 -0
  53. package/spec/examples/c1-t4-tm3-shorttext.gc +30 -0
  54. package/spec/examples/c1-t8-tm1-multiplechoice.expect.json +1 -0
  55. package/spec/examples/c1-t8-tm1-multiplechoice.gc +25 -0
  56. package/spec/examples/c1-t8-tm2-multiselect.expect.json +1 -0
  57. package/spec/examples/c1-t8-tm2-multiselect.gc +25 -0
  58. package/spec/examples/c1-t8-tm3-hottext.expect.json +1 -0
  59. package/spec/examples/c1-t8-tm3-hottext.gc +25 -0
  60. package/spec/examples/c1-t9-tm1-multiplechoice.expect.json +1 -0
  61. package/spec/examples/c1-t9-tm1-multiplechoice.gc +23 -0
  62. package/spec/examples/c1-t9-tm2-multiselect.expect.json +1 -0
  63. package/spec/examples/c1-t9-tm2-multiselect.gc +24 -0
  64. package/spec/examples/c1-t9-tm3-ebsr.expect.json +10 -0
  65. package/spec/examples/c1-t9-tm3-ebsr.gc +30 -0
  66. package/spec/examples/c1-t9-tm4-hottext.expect.json +10 -0
  67. package/spec/examples/c1-t9-tm4-hottext.gc +20 -0
  68. package/spec/examples/c1-t9-tm5-shorttext.expect.json +10 -0
  69. package/spec/examples/c1-t9-tm5-shorttext.gc +20 -0
  70. package/spec/examples.md +55 -11
  71. package/spec/instructions.md +187 -10
  72. package/spec/language-info.json +2 -2
  73. package/spec/rag-examples-design.md +74 -0
  74. package/spec/scope.json +1 -1
  75. package/spec/spec.md +9 -1
  76. package/spec/stems.md +14 -0
  77. package/spec/template.gc +7 -67
  78. package/spec/usage-guide.md +22 -2
package/dist/embedding.js CHANGED
@@ -1,6 +1,10 @@
1
1
  // SPDX-License-Identifier: MIT
2
2
  // RAG embedding helpers for L0175.
3
3
  //
4
+ // Imports the pure per-target data (no compiler) to resolve a (target, item type) pair to its
5
+ // task-model NUMBER, so the design signature carries a `task-model:<n>` facet a number-phrased
6
+ // query ("task model 3") can match.
7
+ //
4
8
  // Why this exists: L0175 training examples (and live generation requests) embed the reading
5
9
  // passage inside the natural-language prompt. When that prompt is fed to an embedding model the
6
10
  // passage prose dominates the vector, so retrieval matches on passage topic ("tide pool",
@@ -19,6 +23,7 @@
19
23
  // `compiler.compile`) plus the raw prompt, and has no parser/compiler dependency of its own. The
20
24
  // caller composes the program (the console already parses L0175; the core tests use the parser
21
25
  // harness) and hands the composed data in.
26
+ import { taskModelNumber } from "./targets.js";
22
27
  // ---- Small utilities -------------------------------------------------------------------------
23
28
  const collapseWs = (s) => s.replace(/\s+/g, " ").trim();
24
29
  function toItems(data) {
@@ -101,6 +106,7 @@ export function buildSignatureTags(data, opts = {}) {
101
106
  const items = toItems(data);
102
107
  const tags = new Set();
103
108
  const itemTypes = [];
109
+ const taskModels = [];
104
110
  const dimensions = [];
105
111
  const standards = [];
106
112
  const doks = [];
@@ -116,6 +122,13 @@ export function buildSignatureTags(data, opts = {}) {
116
122
  tags.add(`target:${item.target}`);
117
123
  target = target || item.target;
118
124
  }
125
+ if (item.target && item.type) {
126
+ const n = taskModelNumber(item.target, item.type);
127
+ if (n) {
128
+ tags.add(`task-model:${n}`);
129
+ taskModels.push(n);
130
+ }
131
+ }
119
132
  const ptype = item.passage && item.passage.type;
120
133
  if (ptype) {
121
134
  tags.add(`type:${ptype}`);
@@ -147,6 +160,7 @@ export function buildSignatureTags(data, opts = {}) {
147
160
  target,
148
161
  passageType,
149
162
  itemTypes: uniq(itemTypes),
163
+ taskModels: uniq(taskModels),
150
164
  dimensions: uniq(dimensions),
151
165
  standards: uniq(standards),
152
166
  doks: uniq(doks),
@@ -184,8 +198,8 @@ export function extractQueryFacets(prompt) {
184
198
  const facets = {};
185
199
  if (!prompt)
186
200
  return facets;
187
- // Explicit target wins over prose cues.
188
- const explicitTarget = prompt.match(/\bc1-t(4|11)\b/i);
201
+ // Explicit target wins over prose cues. Only c1-t4 is literary; every other target is informational.
202
+ const explicitTarget = prompt.match(/\bc1-t(4|8|9|10|11)\b/i);
189
203
  if (explicitTarget) {
190
204
  facets.target = `c1-t${explicitTarget[1]}`;
191
205
  facets.passageType = explicitTarget[1] === "4" ? "literary" : "informational";
@@ -205,6 +219,18 @@ export function extractQueryFacets(prompt) {
205
219
  const itemTypes = ITEM_TYPE_CUES.filter(([re]) => re.test(prompt)).map(([, t]) => t);
206
220
  if (itemTypes.length)
207
221
  facets.itemTypes = itemTypes;
222
+ // Task model: an explicit number in the prompt ("task model 3", "TM3") wins; otherwise derive it
223
+ // from the target + item type. The number is per-target, so it only disambiguates alongside the
224
+ // target facet — which is exactly the c1-t9-tm3-means-EBSR case.
225
+ const explicitTm = prompt.match(/\b(?:tm|task[-\s]?model)\s*[-:]?\s*(\d)\b/i);
226
+ if (explicitTm) {
227
+ facets.taskModels = [explicitTm[1]];
228
+ }
229
+ else if (facets.target && itemTypes.length) {
230
+ const tms = uniq(itemTypes.map((t) => taskModelNumber(facets.target, t)).filter(Boolean));
231
+ if (tms.length)
232
+ facets.taskModels = tms;
233
+ }
208
234
  const stds = uniq((prompt.match(/\br[li]-\d\b/gi) || []).map((s) => s.toLowerCase()));
209
235
  if (stds.length)
210
236
  facets.standards = stds;
@@ -244,6 +270,13 @@ export function buildSignatureFromSource(code) {
244
270
  itemTypes.forEach((t) => tags.add(`item:${t}`));
245
271
  if (itemTypes.length)
246
272
  facets.itemTypes = itemTypes;
273
+ // Task-model numbers, derived from target + item type (per-target, so the target is required).
274
+ if (target) {
275
+ const taskModels = uniq(itemTypes.map((t) => taskModelNumber(target, t)).filter(Boolean));
276
+ taskModels.forEach((n) => tags.add(`task-model:${n}`));
277
+ if (taskModels.length)
278
+ facets.taskModels = taskModels;
279
+ }
247
280
  const dimensions = uniq(matchAll(code, /\bdimension\s+([a-z][a-z0-9-]*)/g));
248
281
  dimensions.forEach((d) => tags.add(`dimension:${d}`));
249
282
  if (dimensions.length)
@@ -1 +1 @@
1
- {"version":3,"file":"embedding.js","sourceRoot":"","sources":["../src/embedding.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"embedding.js","sourceRoot":"","sources":["../src/embedding.ts"],"names":[],"mappings":"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"}
package/dist/index.d.ts CHANGED
@@ -2,6 +2,10 @@ export { Checker, Transformer, compiler } from "./compiler.js";
2
2
  export { lexicon } from "./lexicon.js";
3
3
  export { stripReadingPassage, buildSignatureTags, buildSignatureFromSource, extractQueryFacets, buildEmbeddingArtifacts, } from "./embedding.js";
4
4
  export type { PassageRef, DesignFacets, SignatureResult, EmbeddingArtifacts, } from "./embedding.js";
5
+ export { verifyExample } from "./verify-example.js";
6
+ export type { ExampleExpectation, VerifyResult } from "./verify-example.js";
7
+ export { TARGETS_DATA, STANDARD_FAMILIES, taskModelNumber } from "./targets.js";
8
+ export type { TargetData, StandardFamily } from "./targets.js";
5
9
  export { Compiler, Renderer, Visitor } from "@graffiticode/l0000";
6
10
  export type { ASTNode, NodePool, CompileError, Resume, CompileOptions, LexiconEntry, Lexicon, CompilerConfig, } from "@graffiticode/l0000";
7
11
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,OAAO,EAAE,WAAW,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AAC/D,OAAO,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AACvC,OAAO,EACL,mBAAmB,EACnB,kBAAkB,EAClB,wBAAwB,EACxB,kBAAkB,EAClB,uBAAuB,GACxB,MAAM,gBAAgB,CAAC;AACxB,YAAY,EACV,UAAU,EACV,YAAY,EACZ,eAAe,EACf,kBAAkB,GACnB,MAAM,gBAAgB,CAAC;AAGxB,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,OAAO,EAAE,MAAM,qBAAqB,CAAC;AAClE,YAAY,EACV,OAAO,EACP,QAAQ,EACR,YAAY,EACZ,MAAM,EACN,cAAc,EACd,YAAY,EACZ,OAAO,EACP,cAAc,GACf,MAAM,qBAAqB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,OAAO,EAAE,WAAW,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AAC/D,OAAO,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AACvC,OAAO,EACL,mBAAmB,EACnB,kBAAkB,EAClB,wBAAwB,EACxB,kBAAkB,EAClB,uBAAuB,GACxB,MAAM,gBAAgB,CAAC;AACxB,YAAY,EACV,UAAU,EACV,YAAY,EACZ,eAAe,EACf,kBAAkB,GACnB,MAAM,gBAAgB,CAAC;AACxB,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AACpD,YAAY,EAAE,kBAAkB,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AAC5E,OAAO,EAAE,YAAY,EAAE,iBAAiB,EAAE,eAAe,EAAE,MAAM,cAAc,CAAC;AAChF,YAAY,EAAE,UAAU,EAAE,cAAc,EAAE,MAAM,cAAc,CAAC;AAG/D,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,OAAO,EAAE,MAAM,qBAAqB,CAAC;AAClE,YAAY,EACV,OAAO,EACP,QAAQ,EACR,YAAY,EACZ,MAAM,EACN,cAAc,EACd,YAAY,EACZ,OAAO,EACP,cAAc,GACf,MAAM,qBAAqB,CAAC"}
package/dist/index.js CHANGED
@@ -3,6 +3,8 @@
3
3
  export { Checker, Transformer, compiler } from "./compiler.js";
4
4
  export { lexicon } from "./lexicon.js";
5
5
  export { stripReadingPassage, buildSignatureTags, buildSignatureFromSource, extractQueryFacets, buildEmbeddingArtifacts, } from "./embedding.js";
6
+ export { verifyExample } from "./verify-example.js";
7
+ export { TARGETS_DATA, STANDARD_FAMILIES, taskModelNumber } from "./targets.js";
6
8
  // Re-export the base machinery + inheritance contract from the parent language.
7
9
  export { Compiler, Renderer, Visitor } from "@graffiticode/l0000";
8
10
  //# sourceMappingURL=index.js.map
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,+BAA+B;AAC/B,+EAA+E;AAC/E,OAAO,EAAE,OAAO,EAAE,WAAW,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AAC/D,OAAO,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AACvC,OAAO,EACL,mBAAmB,EACnB,kBAAkB,EAClB,wBAAwB,EACxB,kBAAkB,EAClB,uBAAuB,GACxB,MAAM,gBAAgB,CAAC;AAQxB,gFAAgF;AAChF,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,OAAO,EAAE,MAAM,qBAAqB,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,+BAA+B;AAC/B,+EAA+E;AAC/E,OAAO,EAAE,OAAO,EAAE,WAAW,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AAC/D,OAAO,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AACvC,OAAO,EACL,mBAAmB,EACnB,kBAAkB,EAClB,wBAAwB,EACxB,kBAAkB,EAClB,uBAAuB,GACxB,MAAM,gBAAgB,CAAC;AAOxB,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AAEpD,OAAO,EAAE,YAAY,EAAE,iBAAiB,EAAE,eAAe,EAAE,MAAM,cAAc,CAAC;AAGhF,gFAAgF;AAChF,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,OAAO,EAAE,MAAM,qBAAqB,CAAC"}
package/dist/lexicon.d.ts CHANGED
@@ -83,6 +83,13 @@ export declare const lexicon: {
83
83
  length: number;
84
84
  arity: number;
85
85
  };
86
+ "task-model": {
87
+ tk: number;
88
+ name: string;
89
+ cls: string;
90
+ length: number;
91
+ arity: number;
92
+ };
86
93
  subject: {
87
94
  tk: number;
88
95
  name: string;
@@ -1 +1 @@
1
- {"version":3,"file":"lexicon.d.ts","sourceRoot":"","sources":["../src/lexicon.ts"],"names":[],"mappings":"AA2GA,eAAO,MAAM,OAAO;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAAsC,CAAC"}
1
+ {"version":3,"file":"lexicon.d.ts","sourceRoot":"","sources":["../src/lexicon.ts"],"names":[],"mappings":"AAmHA,eAAO,MAAM,OAAO;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAAsC,CAAC"}
package/dist/lexicon.js CHANGED
@@ -24,6 +24,8 @@ const ENUM_VALUES = [
24
24
  "ebsr", "hot-text", "short-text",
25
25
  // single-part item types (Multiple Choice / Multi-Select) — used by T9 and the later T8/T10
26
26
  "multiple-choice", "multi-select",
27
+ // task-model numbers (per-target; resolved to an item type by the compiler via targets.ts)
28
+ "tm1", "tm2", "tm3", "tm4", "tm5",
27
29
  // learning targets (the top-level `target` selector)
28
30
  "c1-t4", "c1-t11", "c1-t9", "c1-t8", "c1-t10",
29
31
  // T4 (literary) dimensions
@@ -44,10 +46,15 @@ const ENUM_VALUES = [
44
46
  "too-narrow", "too-broad", "insignificant",
45
47
  // Word Meanings (T10) distractor taxonomy
46
48
  "other-meaning", "misinterprets", "wrong-context",
47
- // standards: RL (T4) + RI (T11/T9/T8/T10) + L (T10)
48
- "rl-1", "rl-3", "rl-6", "rl-9",
49
- "ri-1", "ri-2", "ri-3", "ri-4", "ri-6", "ri-7", "ri-8", "ri-9",
50
- "l-4", "l-4a", "l-4b", "l-4c", "l-5c",
49
+ // standards: the full CCSS Grade-5 RL / RI / L families are registered so any plausible CCSS
50
+ // code parses; each target profile (compiler.ts) restricts which are VALID for that target.
51
+ // RL (literary; rl-8 is "not applicable to literature", rl-10 is range-of-reading)
52
+ "rl-1", "rl-2", "rl-3", "rl-4", "rl-5", "rl-6", "rl-7", "rl-9",
53
+ // RI (informational)
54
+ "ri-1", "ri-2", "ri-3", "ri-4", "ri-5", "ri-6", "ri-7", "ri-8", "ri-9",
55
+ // L (vocabulary — T10 word meanings): the L.4 (determine meaning) and L.5 (word relationships /
56
+ // figurative language) families with their sub-strategy codes
57
+ "l-4", "l-4a", "l-4b", "l-4c", "l-5", "l-5a", "l-5b", "l-5c",
51
58
  "r-dok1", "r-dok2", "r-dok3",
52
59
  "inference", "conclusion", "author-intent",
53
60
  ];
@@ -66,6 +73,7 @@ const additions = {
66
73
  quote: fn2("QUOTE"), // optional evidence text override
67
74
  supports: fn2("SUPPORTS"), // evidence -> claim id list
68
75
  type: fn2("TYPE"), // passage type OR item type (contextual)
76
+ "task-model": fn2("TASK_MODEL"), // outcome task model (tm1..tm5); resolved to item type per target
69
77
  subject: fn2("SUBJECT"),
70
78
  standard: fn2("STANDARD"),
71
79
  focus: fn2("FOCUS"), // optional forced correct-claim id
@@ -1 +1 @@
1
- {"version":3,"file":"lexicon.js","sourceRoot":"","sources":["../src/lexicon.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"lexicon.js","sourceRoot":"","sources":["../src/lexicon.ts"],"names":[],"mappings":"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"}
@@ -204,7 +204,11 @@ Always declare a top-level `target` (the SBAC learning target the program compos
204
204
 
205
205
  - **`c1-t4`** — Target 4: Reasoning & Evidence over **literary** texts (RL standards). Dimensions:
206
206
  `character`, `setting`, `event`, `point-of-view`, `theme`, `topic`, `narrators-feelings`,
207
- `character-relationship`. Standards: `rl-1` (always) + `rl-3` / `rl-6` / `rl-9`.
207
+ `character-relationship`. Companion standards by dimension: `character` / `character-relationship`
208
+ / `setting` / `event` → `rl-3`; `point-of-view` / `narrators-feelings` → `rl-6`; **`theme` /
209
+ `topic` → `rl-2`** (the CCSS theme standard — **not** `rl-9`). `rl-1` (cite evidence) is always
210
+ added. You normally **omit** `standard` and let the dimension pick its companion; the full
211
+ Grade-5 **RL** strand (`rl-1`–`rl-7`, `rl-9`) is accepted if you author one explicitly.
208
212
  - **`c1-t11`** — Target 11: Reasoning & Evidence over **informational** texts (RI standards).
209
213
  Dimensions: `relationships-interactions`, `author-use-of-information`, `point-of-view`,
210
214
  `purpose`, `authors-opinion`. Standards: `ri-1` (always) + `ri-3` / `ri-6` / `ri-7` / `ri-8` / `ri-9`.
@@ -305,8 +309,11 @@ Quote free text (`text`, `rationale`, `subject`, passage heading) and id labels
305
309
  (required — the id of the supported correct claim; on `multi-select` a **list** of ids = the
306
310
  correct set), `stem` (required — the Part A / single-question stem / short-text prompt, authored
307
311
  from `stems.md`), and on EBSR `stem-b` (required — the Part B stem). Optional: `subject`,
308
- `standard`, `dok`, and `rubric` (short-text only a list of `band score <n> descriptor "…"`
309
- elements; defaults to a 0/1/2 rubric if omitted).
312
+ `standard`, `dok`, `task-model` (`tm1`..`tm5`the per-target task model; the compiler resolves
313
+ it to the item type for the program's `target` and hard-errors if it disagrees with `type`, so it
314
+ both documents and guards intent — see "Task models are per-target" below), and `rubric`
315
+ (short-text only — a list of `band score <n> descriptor "…"` elements; defaults to a 0/1/2 rubric
316
+ if omitted).
310
317
  - **band** — a rubric row: `band score 2 descriptor "…" {}`. Used only inside an outcome's `rubric`.
311
318
  - **word** / **meaning** (**target `c1-t10` only**) — a top-level `words` list of `word`s; each
312
319
  `word` has `id`, `text` (the targeted word/phrase), optional `line`/`quote` (its context), and a
@@ -328,14 +335,56 @@ Quote free text (`text`, `rationale`, `subject`, passage heading) and id labels
328
335
  in the focus word's paragraph are warned and dropped.
329
336
  - A top-level **`title`** attribute (before `passage`) names the assessment; it is echoed on the output.
330
337
 
331
- ## Stems (Appropriate Stems, SBAC G5 · C1 · T4)
338
+ ## Stems (Appropriate Stems)
332
339
 
333
340
  **You author the stem; the compiler does not generate it. Use the guideline's Appropriate-Stem
334
- templates verbatim — do not invent phrasings.** For each item, open the catalog in **`stems.md`**,
335
- pick the one template that matches the item type (EBSR Task Model 1, Hot Text Task Model 2,
336
- Short Text Task Model 3) and the task (inference vs. conclusion vs. author-intent; plain
337
- subject vs. narrator's-feelings vs. relationship), and fill its bracketed `[...]` slot. Author
338
- `stem` (Part A / short-text prompt) and, on EBSR, `stem-b` (Part B). Common Part A choices:
341
+ templates verbatim — do not invent phrasings.** `stems.md` has a **section per target** (T4, T11,
342
+ T9, T8, T10), each with its own task models open the section for the `target` you picked. For
343
+ each item, pick the one template that matches the item type and the task, and fill its bracketed
344
+ `[...]` slot. Author `stem` (Part A / single-question / short-text prompt) and, on EBSR, `stem-b`
345
+ (Part B).
346
+
347
+ ### Task models are per-target — a number alone is meaningless
348
+
349
+ ⚠ **Task-model numbers are PER-TARGET and COLLIDE across targets.** The same number maps to a
350
+ different item type depending on the `target`. Look at `tm3` alone:
351
+
352
+ | Number | `c1-t4` / `c1-t11` | `c1-t9` | `c1-t8` / `c1-t10` |
353
+ |--------|--------------------|---------|--------------------|
354
+ | **tm3** | short-text | **ebsr (two-part)** | hot-text |
355
+
356
+ So "task model 3" cannot be resolved without first knowing the target. **Do not assume the
357
+ Reasoning & Evidence (T4/T11) numbering applies elsewhere** — under `c1-t9`, Task Model 3 is EBSR,
358
+ Task Model 4 is Hot Text, Task Model 5 is Short Text.
359
+
360
+ The full per-target task-model → item-type mapping (the compiler enforces exactly this):
361
+
362
+ <!-- GENERATED:task-models START (from targets.json — regenerated by tools/build-static.js; do not edit by hand) -->
363
+ | Target | tm1 | tm2 | tm3 | tm4 | tm5 |
364
+ |--------|-----|-----|-----|-----|-----|
365
+ | `c1-t4` — Grade 5 · Claim 1 · Target 4 (Reasoning & Evidence) | ebsr | hot-text | short-text | — | — |
366
+ | `c1-t11` — Grade 5 · Claim 1 · Target 11 (Reasoning & Evidence) | ebsr | hot-text | short-text | — | — |
367
+ | `c1-t9` — Grade 5 · Claim 1 · Target 9 (Central Ideas) | multiple-choice | multi-select | ebsr | hot-text | short-text |
368
+ | `c1-t8` — Grade 5 · Claim 1 · Target 8 (Key Details) | multiple-choice | multi-select | hot-text | — | — |
369
+ | `c1-t10` — Grade 5 · Claim 1 · Target 10 (Word Meanings) | multiple-choice | multi-select | hot-text | — | — |
370
+ <!-- GENERATED:task-models END -->
371
+
372
+ **Normalization rule (required).** When a request names a task model by number ("TM3", "task
373
+ model 3"), **resolve it against the row for the program's `target`** in the table above — never the
374
+ T4/T11 default. Before composing, echo the resolution, e.g. `target c1-t9, TM3 → ebsr`, and author
375
+ that item type.
376
+
377
+ **Belt-and-suspenders:** you may author the resolved number directly on the outcome as
378
+ `task-model tm3`. The compiler resolves it against the target's table and **hard-errors on a
379
+ mismatch** with `type` (or supplies `type` when you omit it) — so `outcome … task-model tm3 type
380
+ ebsr` on `c1-t9` is self-checking, and `task-model tm3 type short-text` is rejected.
381
+
382
+ The task-model mapping and Part-A choices below are the **Reasoning & Evidence (T4/T11)** catalog
383
+ (EBSR → Task Model 1, Hot Text → Task Model 2, Short Text → Task Model 3; task = inference vs.
384
+ conclusion vs. author-intent; plain subject vs. narrator's-feelings vs. relationship). **T9, T8,
385
+ and T10 use different task models and stems** — see their `stems.md` sections (e.g. T9 "Which
386
+ sentence best shows the main idea…", T8 states the inference then "Which detail … best supports
387
+ this conclusion?", T10 "What does the word … most likely mean?"). Common R&E Part A choices:
339
388
 
340
389
  - inference — "Which of these inferences about [...] is supported by the passage?"
341
390
  - conclusion — "Which of these conclusions about [...] is supported by the passage?"
@@ -372,6 +421,15 @@ outright is literal recall and out of scope.
372
421
 
373
422
  ## Authoring guidance
374
423
 
424
+ The distractor-pool, error-type-coverage, and EBSR Part-B rules below are the **Reasoning &
425
+ Evidence (T4/T11)** contract — they apply wherever wrong answers are authored as `distractor`
426
+ claims. The other targets author their wrong answers differently (see Step 0): **T9** uses
427
+ `distractor` claims too but with the significance taxonomy (`too-narrow` / `too-broad` /
428
+ `misreads-detail` / `insignificant`); **T8** has **no distractor claims** — its foils are
429
+ non-supporting `source`s (`supports-wrong-claim` / `irrelevant`); **T10** authors distractor
430
+ `meaning`s, not claims. The grade-level, length-balance, and stem-wording rules apply to **all**
431
+ targets.
432
+
375
433
  - For each EBSR/Hot-Text outcome, author **at least 5 viable distractor claims that `targets`
376
434
  it**, covering all three error types (`misreads-detail`, `erroneous-inference`,
377
435
  `faulty-reasoning`) — with ≥2 alternatives in at least two of the types. An item draws only 3
@@ -468,7 +526,7 @@ outright is literal recall and out of scope.
468
526
  - `dimension` (**c1-t9**): `central-idea`, `key-detail`, `summary` · (**c1-t8**): `supporting-evidence` · (**c1-t10**): `word-meaning`
469
527
  - claim `status`: `supported`, `distractor` · source `status`: `directly-supports`, `supports-wrong-claim`, `irrelevant` · meaning `status` (c1-t10): `correct`, `distractor`
470
528
  - `error-type` (**c1-t4 / c1-t11**): `misreads-detail`, `erroneous-inference`, `faulty-reasoning` · (**c1-t9**): `too-narrow`, `too-broad`, `misreads-detail`, `insignificant` · (**c1-t8**): none — wrong answers are non-supporting `source`s · (**c1-t10**): `other-meaning`, `misinterprets`, `wrong-context`
471
- - `standard` (**c1-t4**): `rl-1`, `rl-3`, `rl-6`, `rl-9` · (**c1-t11**): `ri-1`, `ri-3`, `ri-6`, `ri-7`, `ri-8`, `ri-9` · (**c1-t9**): `ri-1`, `ri-2` · (**c1-t8**): `ri-1`, `ri-7` · (**c1-t10**): `ri-4`, `l-4`, `l-4a`, `l-4b`, `l-4c`, `l-5c`
529
+ - `standard` — primary companions (normally inferred from the dimension; author one only to override): (**c1-t4**) `rl-1` + `rl-2` (theme/topic) / `rl-3` / `rl-6` · (**c1-t11**) `ri-1` + `ri-3` / `ri-6` / `ri-7` / `ri-8` · (**c1-t9**) `ri-1` + `ri-2` · (**c1-t8**) `ri-1` + `ri-7` · (**c1-t10**) `ri-4` + `l-4` / `l-4a` / `l-4b` / `l-4c` / `l-5c`. The **full CCSS Grade-5 strand for the target's text type is accepted**: any `rl-1`–`rl-7` / `rl-9` on a literary target (c1-t4), any `ri-1`–`ri-9` on an informational target (c1-t11/t9/t8/t10), plus the `l-4` / `l-5` families on c1-t10. (`rl-2` is the theme standard — valid; there is no `rl-8`.)
472
530
  - `dok`: `r-dok1`, `r-dok2`, `r-dok3` (R&E items are `r-dok3`; T9 selected-response is `r-dok2`, its written summary `r-dok3`; T8 & T10 are `r-dok2`)
473
531
 
474
532
  ## What composition does
@@ -525,3 +583,122 @@ outcomes [
525
583
  ]
526
584
  {}..
527
585
  ```
586
+
587
+ (For **Target 11**, the same R&E shape over an *informational* passage: `target c1-t11`,
588
+ `type informational`, an RI dimension like `relationships-interactions`, `standard ri-1` + `ri-3`,
589
+ and the T11 stems from `stems.md`.)
590
+
591
+ ## Example (Target 9 — Central Ideas, multiple-choice)
592
+
593
+ The OPTIONS are still `claim`s, but the skill is the **main idea** (not infer-and-justify) and the
594
+ distractors are the **significance** taxonomy — usually true statements that just aren't central.
595
+ DOK is `r-dok2`; the standards are `ri-1` + `ri-2`. (No EBSR Part B here; on T9 EBSR/Hot-Text the
596
+ correct claim's `directly-supports` sources are the supporting selection.)
597
+
598
+ ```
599
+ target c1-t9
600
+ passage "Honeybees"
601
+ type informational
602
+ lines [
603
+ "Honeybees live together in large groups called colonies. Worker bees gather nectar and build the hive. The queen bee lays all the eggs. By working together, the colony survives and grows."
604
+ ]
605
+ claims [
606
+ claim id "c1" status supported dimension central-idea subject "the colony" standard ri-2
607
+ text "Honeybees survive by living and working together, each bee with its own job."
608
+ cites ["e1"] {}
609
+ /* T9 distractors are usually TRUE statements that simply aren't the central idea */
610
+ claim id "d1" status distractor error-type too-narrow targets ["q1"]
611
+ text "The queen bee lays all the eggs."
612
+ rationale "A true supporting detail, not the central idea." cites ["e1"] {}
613
+ claim id "d2" status distractor error-type too-broad targets ["q1"]
614
+ text "Insects are the most important animals on Earth."
615
+ rationale "An overgeneralization beyond the passage." cites ["e1"] {}
616
+ claim id "d3" status distractor error-type misreads-detail targets ["q1"]
617
+ text "Each bee in the colony does every job by itself."
618
+ rationale "Misreads the division of labor." cites ["e1"] {}
619
+ ]
620
+ evidence [ source id "e1" line 1 status directly-supports supports ["c1"] {} ]
621
+ outcomes [
622
+ outcome id "q1" type multiple-choice dimension central-idea subject "the colony" standard ri-2 focus "c1"
623
+ stem "Which sentence best shows the main idea of the passage?" {}
624
+ ]
625
+ {}..
626
+ ```
627
+
628
+ ## Example (Target 8 — Key Details, evidence selection)
629
+
630
+ The inference is **GIVEN in the stem**; the OPTIONS are passage `source`s, not claims. Author ONE
631
+ supported `claim` (the given inference, named by `focus`), state it in the `stem`, and author the
632
+ `source`s as the choices: `directly-supports` = correct evidence (give each a `quote`),
633
+ `irrelevant`/`supports-wrong-claim` = foils. **No distractor claims.** Standards `ri-1` + `ri-7`,
634
+ DOK `r-dok2`.
635
+
636
+ ```
637
+ target c1-t8
638
+ passage "Aqueducts"
639
+ type informational
640
+ lines [
641
+ "Roman aqueducts carried water across long distances. They used gentle slopes so water flowed by gravity. Arches held the channels high above valleys. Cities far from rivers could finally get fresh water."
642
+ ]
643
+ claims [
644
+ claim id "c1" status supported dimension supporting-evidence subject "the aqueducts"
645
+ text "Roman aqueducts let cities far from rivers get fresh water." cites ["e1" "e2"] {}
646
+ ]
647
+ evidence [
648
+ source id "e1" line 1 quote "Cities far from rivers could finally get fresh water." status directly-supports supports ["c1"] {}
649
+ source id "e2" line 1 quote "Roman aqueducts carried water across long distances." status directly-supports supports ["c1"] {}
650
+ source id "e3" line 1 quote "They used gentle slopes so water flowed by gravity." status irrelevant supports [] {}
651
+ source id "e4" line 1 quote "Arches held the channels high above valleys." status irrelevant supports [] {}
652
+ source id "e5" line 1 quote "Roman builders also paved long, straight roads." status irrelevant supports [] {}
653
+ ]
654
+ outcomes [
655
+ outcome id "q1" type multiple-choice dimension supporting-evidence subject "the aqueducts" standard ri-7 focus "c1"
656
+ stem "Roman aqueducts let far-off cities get fresh water. Which detail from the passage best supports this conclusion?" {}
657
+ ]
658
+ {}..
659
+ ```
660
+
661
+ ## Example (Target 10 — Word Meanings)
662
+
663
+ The OPTIONS are **meanings** of a targeted `word`, authored in a top-level `words` list — not
664
+ claims. One `status correct` meaning + `status distractor` meanings (each a T10 `error-type` +
665
+ `rationale`). The outcome's `focus` names the `word`; state the word + its sentence in the `stem`.
666
+ Standard `ri-4` + an L-4 strategy code, DOK `r-dok2`.
667
+
668
+ ```
669
+ target c1-t10
670
+ passage "Aqueducts"
671
+ type informational
672
+ lines [
673
+ "Roman engineers built aqueducts. The aqueduct carried water across long distances."
674
+ ]
675
+ words [
676
+ word id "w1" text "aqueduct" line 1 quote "The aqueduct carried water across long distances."
677
+ meanings [
678
+ meaning id "m1" status correct text "a channel built to carry water" {}
679
+ meaning id "m2" status distractor error-type other-meaning text "a boat that carries cargo"
680
+ rationale "Another meaning that ignores the context." {}
681
+ meaning id "m3" status distractor error-type misinterprets text "a tall stone tower"
682
+ rationale "Misreads the sentence." {}
683
+ meaning id "m4" status distractor error-type wrong-context text "a kind of road"
684
+ rationale "Uses the wrong context." {}
685
+ ] {}
686
+ ]
687
+ outcomes [
688
+ outcome id "q1" type multiple-choice dimension word-meaning subject "aqueduct" standard l-4a focus "w1"
689
+ stem "Read the sentence: \"The aqueduct carried water across long distances.\" What does the word aqueduct most likely mean?" {}
690
+ ]
691
+ {}..
692
+ ```
693
+
694
+ For a **click-the-word** (`hot-text`) T10 item, drop the `meanings` and instead list the clickable
695
+ candidates as bare `word`s in the same paragraph — the correct one is the outcome's `focus`, the
696
+ rest are distractor candidate words; put only the instruction + definition in the `stem`:
697
+
698
+ ```
699
+ words [ word id "w1" text "aqueduct" line 1 {} word id "w2" text "engineers" {} word id "w3" text "water" {} ]
700
+ outcomes [
701
+ outcome id "q1" type hot-text dimension word-meaning subject "aqueduct" standard l-4c focus "w1"
702
+ stem "Read the paragraph below. Click the word that means a channel that carries water." {}
703
+ ]
704
+ ```
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "revised": "2026-06-24",
3
3
  "id": "0175",
4
- "description": "Composes 5th-grade English Language Arts assessment items (Smarter Balanced · Grade 5 · Claim 1) for multiple learning targets — DIFFERENT reading skills: c1-t4 (Reasoning & Evidence, literary, RL) and c1-t11 (Reasoning & Evidence, informational, RI) ask students to infer/conclude and justify with evidence; c1-t9 (Central Ideas, informational, RI-1/RI-2) asks them to determine the main idea, the key details that build it, or summarize; c1-t8 (Key Details, informational, RI-1/RI-7) GIVES the inference in the stem and asks them to select the supporting evidence (the options are passage sources, not statements; item types multiple-choice/multi-select/single-part-hot-text); c1-t10 (Word Meanings, informational, RI-4/L-4) asks for the meaning of a targeted word/phrase in context (the options are MEANINGS, authored as a `word` with candidate `meaning`s — not claims; item types multiple-choice/multi-select, plus a click-the-word hot-text — for that, author the candidate `word`s as a top-level `words` list: the correct one is the outcome's `focus` (give it the `line` of its paragraph) and the others are distractor candidate words; ALL candidates must be words that appear in that one paragraph (they need only `text` — no `meanings`). The compiler shows the whole paragraph and makes the authored candidate words clickable, with the focus word correct (if you author only the correct word, every content word in the paragraph becomes a choice). The `stem` is only the instruction + the definition (e.g. 'Read the paragraph below. Click the word that means …') — never paste the paragraph into the stem). Every program declares a top-level `target` selecting the dimension/standard/error-type/DOK/stem vocabulary. Item-first: a program authors the questions (outcomes) first — each with a unique id, a focus correct claim (a list on multi-select), and a stem from the target's guideline catalog — then supported and distractor claims (each distractor targets the question(s) it foils) and evidence sources for one passage. Item types: ebsr (two-part), hot-text, short-text, multiple-choice (one correct), multi-select (exact correct set). T9 distractors are a significance taxonomy (too-narrow/too-broad/misreads-detail/insignificant) — usually true statements that just aren't central — vs R&E's reasoning-error taxonomy. Supply the passage text already split into paragraphs (keep the paragraph breaks). The compiler takes each outcome's focus and the foils that target it and assembles the item; it selects and validates authored content, it does not generate content or stems. Author the passage and all question text at the target reading level (Grade 5; overridable with a top-level `grade <n>`); the compiler estimates the passage's reading level and warns when it runs above the target grade.",
4
+ "description": "Composes 5th-grade English Language Arts assessment items (Smarter Balanced · Grade 5 · Claim 1) for multiple learning targets — DIFFERENT reading skills: c1-t4 (Reasoning & Evidence, literary, RL) and c1-t11 (Reasoning & Evidence, informational, RI) ask students to infer/conclude and justify with evidence; c1-t9 (Central Ideas, informational, RI-1/RI-2) asks them to determine the main idea, the key details that build it, or summarize; c1-t8 (Key Details, informational, RI-1/RI-7) GIVES the inference in the stem and asks them to select the supporting evidence (the options are passage sources, not statements; item types multiple-choice/multi-select/single-part-hot-text); c1-t10 (Word Meanings, informational, RI-4/L-4) asks for the meaning of a targeted word/phrase in context (the options are MEANINGS, authored as a `word` with candidate `meaning`s — not claims; item types multiple-choice/multi-select, plus a click-the-word hot-text — for that, author the candidate `word`s as a top-level `words` list: the correct one is the outcome's `focus` (give it the `line` of its paragraph) and the others are distractor candidate words; ALL candidates must be words that appear in that one paragraph (they need only `text` — no `meanings`). The compiler shows the whole paragraph and makes the authored candidate words clickable, with the focus word correct (if you author only the correct word, every content word in the paragraph becomes a choice). The `stem` is only the instruction + the definition (e.g. 'Read the paragraph below. Click the word that means …') — never paste the paragraph into the stem). Every program declares a top-level `target` selecting the dimension/standard/error-type/DOK/stem vocabulary. Item-first: a program authors the questions (outcomes) first — each with a unique id, a focus correct claim (a list on multi-select), and a stem from the target's guideline catalog — then supported and distractor claims (each distractor targets the question(s) it foils) and evidence sources for one passage. Item types: ebsr (two-part), hot-text, short-text, multiple-choice (one correct), multi-select (exact correct set); the allowed set is per-target. Task-model NUMBERS are per-target and collide (tm3 = short-text in c1-t4/c1-t11, ebsr in c1-t9, hot-text in c1-t8/c1-t10), so name the item type, or resolve a number against the program's target — never assume the Reasoning & Evidence numbering carries to T9/T8/T10 (see the per-target task-model table in the usage guide). T9 distractors are a significance taxonomy (too-narrow/too-broad/misreads-detail/insignificant) — usually true statements that just aren't central — vs R&E's reasoning-error taxonomy. Supply the passage text already split into paragraphs (keep the paragraph breaks). The compiler takes each outcome's focus and the foils that target it and assembles the item; it selects and validates authored content, it does not generate content or stems. Author the passage and all question text at the target reading level (Grade 5; overridable with a top-level `grade <n>`); the compiler estimates the passage's reading level and warns when it runs above the target grade.",
5
5
  "supported_item_types": [
6
6
  "ebsr",
7
7
  "hot-text",
@@ -78,8 +78,8 @@
78
78
  {
79
79
  "prompt": "Make a click-the-word item: in the paragraph about the city's water supply, the target word is 'aqueduct' (it means a system of pipes/canals that carries water). Stem: 'Read the paragraph below. Click the word that means a system of pipes or canals that carries water.'",
80
80
  "produces": "hot-text",
81
- "notes": "T10 Task Model 3 (click-the-word): target c1-t10, type hot-text, dimension word-meaning, standard ri-4 + l-4a. Author the focus `word` (e.g. { id \"w1\" text \"aqueduct\" line <paragraph #> }) as the outcome's `focus`, then the DISTRACTOR CANDIDATE WORDS either way: (a) as more single-word `word`s in the `words` list, OR (b) as the focus word's distractor `meanings` whose `text` IS the candidate word — a single word, with error-type + rationale (e.g. text \"causeways\", text \"canals\"). For hot-text the meaning text must be the literal word to click, NOT a definition. ALL candidates must be words that appear in the focus word's paragraph. The compiler shows the whole paragraph (from the focus word's `line`) and makes the candidate words clickable, focus correct. Do NOT put the paragraph in the stem; the stem is only the instruction + definition. (If you author only the focus word with a real multi-word definition, the compiler can't find candidates and falls back to making EVERY content word clickable — avoid that by listing the candidate words.)"
81
+ "notes": "T10's click-the-word hot-text (its Task Model 3 — task-model numbers are per-target, so this 3 is specific to c1-t10 and is NOT the same item type as tm3 in other targets): target c1-t10, type hot-text, dimension word-meaning, standard ri-4 + l-4a. Author the focus `word` (e.g. { id \"w1\" text \"aqueduct\" line <paragraph #> }) as the outcome's `focus`, then the DISTRACTOR CANDIDATE WORDS either way: (a) as more single-word `word`s in the `words` list, OR (b) as the focus word's distractor `meanings` whose `text` IS the candidate word — a single word, with error-type + rationale (e.g. text \"causeways\", text \"canals\"). For hot-text the meaning text must be the literal word to click, NOT a definition. ALL candidates must be words that appear in the focus word's paragraph. The compiler shows the whole paragraph (from the focus word's `line`) and makes the candidate words clickable, focus correct. Do NOT put the paragraph in the stem; the stem is only the instruction + definition. (If you author only the focus word with a real multi-word definition, the compiler can't find candidates and falls back to making EVERY content word clickable — avoid that by listing the candidate words.)"
82
82
  }
83
83
  ],
84
- "authoring_guide": "L0175 is a content-composition language for 5th-grade English Language Arts assessment items (Smarter Balanced spec ELA · Grade 5 · Claim 1 · Reasoning & Evidence). One language serves **multiple learning targets**; **every program first declares a top-level `target`**: `c1-t4` (Target 4 — *literary* texts, RL standards, dimensions like character/theme/point-of-view) or `c1-t11` (Target 11 — *informational* texts, RI standards, dimensions like relationships-interactions/author-use-of-information/point-of-view/purpose). Choose the target from the request (literary vs. informational text and the skill assessed); the dimensions, standards, and stem catalog (`stems.md`) are then scoped to that target, and mixing targets' vocabularies is a compile error. It is **item-first**: after picking the target you compose the questions (`outcome`s) first — each with a unique `id`, a `focus` naming its correct claim, and an explicit `stem` (and `stem-b` on EBSR) instantiated from the guideline's Appropriate-Stem catalog (`stems.md`) — then author the supported `claim`s and a *superset* of distractor `claim`s, each tagging the question(s) it foils via `targets`, plus evidence `source`s. The compiler then *composes* each outcome deterministically: it takes the correct claim from `focus`, draws that question's foils ONLY from the distractors that `targets` it, uses the authored stem, and assembles a finished item in one of three task models: `ebsr` (two-part evidence-based selected response), `hot-text` (select-text), or `short-text` (constructed response). One passage + superset can yield several items, each with its own bound foil set. The compiler performs no generation and no stem synthesis — it selects, validates against the guideline, and warns when a question's pool falls short. Distractors are tagged by the SBAC error taxonomy (Part A: `misreads-detail`, `erroneous-inference`, `faulty-reasoning`; Part B: `supports-wrong-claim`, `irrelevant`), each carrying a rationale; composition picks foils for error-type coverage and couples Part B evidence to the claims it plausibly supports. **For each EBSR/Hot-Text question author at least 5 viable distractors that `targets` it (aim for 5–8, over-generating since some are filtered as near-duplicates or accidentally correct) — covering all three error types with ≥2 alternatives in at least two of them, and giving each a `plausibility` score (0–1). An item draws only 3 foils, so a richer targeted pool yields stronger items; fewer than 3 targeting a question is a hard error, fewer than 5 a warning. Likewise, for EBSR Part B author at least 5 non-supporting evidence lines (`supports-wrong-claim` + `irrelevant`) so the compiler can choose the most tempting 3 foil options. No-giveaway rule: at least one of those `supports-wrong-claim` lines must list BOTH the correct claim's id AND a distractor's id in its `supports` (a line that seems to support the right answer but actually backs a misreading) — otherwise the correct evidence line stands alone, Part B telegraphs Part A, and the compiler warns \"possible A↔B giveaway.\" Do not make every wrong-claim line point only at distractors.**\n\n**Targets are different skills — pick the one the request assesses.** Beyond the two Reasoning &\nEvidence targets above (`c1-t4` literary, `c1-t11` informational — infer/conclude and justify with\nevidence), L0175 also composes **`c1-t9` — Central Ideas** (informational): a *different* skill —\nsynthesize and condense (the main/central idea, the key details that build it, and summary), NOT\ninference. Use `c1-t9` when the request is about the **main idea**, **most important details**, or a\n**summary**; dimensions `central-idea`/`key-detail`/`summary`, standards `ri-1`+`ri-2`, DOK 2 (3 for\nthe written summary). Its distractors are a **significance** taxonomy — usually *true* statements\nthat simply aren't central: `too-narrow` (a supporting detail mistaken for the main idea),\n`too-broad` (an overgeneralization/off-topic), `misreads-detail`, `insignificant` (a minor detail\nthat doesn't belong in a summary). T9 item types are `multiple-choice` (pick the central idea),\n`multi-select` (choose the two sentences that belong in a summary — `focus` is a **list**), `ebsr`\n(central idea → supporting detail), `short-text` (summary), and single-part `hot-text` (click the\nsentence(s) that show the main idea — the `focus` claim's directly-supporting `source`s are the\ncorrect selection). Two new item types — `multiple-choice` (4 options, one correct) and\n`multi-select` (5–6 options, an exact correct set) — are single-part: author the `stem` and a\n`focus`, no Part B.\n\nL0175 also composes **`c1-t8` — Key Details** (informational): the inference/conclusion is **GIVEN\nin the stem** and the student selects the supporting **evidence** (the answer is *evidence*, not a\nchosen statement). Use `c1-t8` when the request **states an idea and asks which detail/sentence\nsupports it**; dimension `supporting-evidence`, standards `ri-1`+`ri-7`, DOK 1–2, item types\n`multiple-choice`, `multi-select`, and **single-part `hot-text`** (no Part A). Author ONE supported\n`claim` = the given inference (its `focus`), state it in the `stem`, and author `source`s as the\noptions: `directly-supports` = correct evidence (with a `quote`), `supports-wrong-claim`/`irrelevant`\n= distractor evidence. No distractor claims.\n\nL0175 also composes **`c1-t10` — Word Meanings** (informational): the question asks for the\n**meaning of a targeted word/phrase in context**, so the answer choices are **meanings**, authored\nas a dedicated `word`/`meaning` structure (not claims). Use `c1-t10` when the request asks **what a\nword/phrase means**; dimension `word-meaning`, standards `ri-4` + the L-4 family (`l-4a` context /\n`l-4b` roots & affixes / `l-5c` word relationships / `l-4c` reference), DOK 1–2, item types\n`multiple-choice`, `multi-select`, and `hot-text` (click the word matching a given definition — the correct word is `focus` with its paragraph's `line`; author the distractor candidate words either as more single-word `word`s OR as the focus word's distractor `meanings` whose `text` is the candidate word itself (a single word, not a definition), ALL appearing in that one paragraph. The compiler shows the paragraph and makes the candidate words clickable, focus correct; if no candidate words are found it falls back to making every content word a choice. The `stem` is only the instruction + definition — never paste the paragraph into the stem). Author a top-level\n`words` list: a `word` (the targeted word, `line`/`quote` for context) with `meanings` — one (MC) or\n≥2 (Multi-Select) `status correct` meanings + `status distractor` meanings (each with a T10\n`error-type` — `other-meaning`/`misinterprets`/`wrong-context` — and a `rationale`). The outcome's\n`focus` names the word; state the word and its context sentence in the `stem`.\n\n**Write at the target grade level.** The grade is the guideline's grade (the target's — Grade 5 for `c1-t4`/`c1-t11`) unless the user's prompt asks for a different grade, in which case author a top-level `grade <n>`. Match the passage AND all question text to that grade: short, mostly simple/compound sentences; concrete, high-frequency vocabulary; an inference drawn from **specific details in the text**, not college-style literary or rhetorical analysis. DOK 3 means strategic reasoning *within* grade-level text — not harder text. The compiler estimates the passage's reading level and warns when it runs above the target grade. See **Grade-appropriate reading level** below.\n\n**Supply the passage already split into paragraphs.** When a request includes or describes the passage text, break it into its paragraphs and keep those breaks — each paragraph becomes one numbered `lines` entry and the rendered passage preserves that paragraph structure. The code generator maintains the paragraphs you provide; it does not re-flow a wall of text into one block or re-chunk it. Separate paragraphs with a blank line (or clearly mark each one) so they survive into the final passage. **Keep paragraphs even for Hot Text** — the compiler segments each paragraph into sentences and makes each one individually selectable in Part B, so the passage keeps its paragraph layout; do not author the passage as one-sentence lines.\n\nWhen composing a request, declare the `target`, then author the passage and outcomes (with their stems) first, then the inference graph (supported claims, then the targeted distractors), then the evidence. The program is one flat builder chain: top-level forms (`target`, `passage`, `type`, `lines`, `claims`, `evidence`, `outcomes`) thread a single continuation and the whole program ends with one `{}..`. Inside the `claims`/`evidence`/`outcomes` lists, each element (`claim`/`source`/`outcome`) is its own attribute chain terminated by its own `{}`. Attribute values that are free text (`text`, `rationale`, `subject`, `stem`, the passage heading) or id labels (`id`, `focus`, `cites`, `supports`, `targets`) are quoted strings; closed-enum values (`target`, `type`, `status`, `dimension`, `error-type`, `standard`, `dok`) are bare kebab-case identifiers (e.g. `c1-t11`, `ebsr`, `directly-supports`, `ri-1`).\n\nIn scope: SBAC Grade 5 · Claim 1 for targets **T4** (Reasoning & Evidence, literary, RL), **T11** (Reasoning & Evidence, informational, RI), **T9** (Central Ideas, informational, RI-1/RI-2), **T8** (Key Details, informational, RI-1/RI-7 — given-inference → evidence selection), and **T10** (Word Meanings, informational, RI-4/L-4 — meaning of a targeted word, authored as `word`/`meaning`); a single passage; the per-target dimensions and distractor taxonomy; item types `ebsr`, `hot-text`, `short-text`, `multiple-choice`, `multi-select` (allowed set varies by target); DOK r-dok1..r-dok3. Out of scope: other claims/grades or Claim-1 targets beyond T4/T11/T9/T8/T10; multi-word-phrase candidates in T10 click-the-word; dual-text stimuli; compile-time LLM generation; auto-scoring of short text; cross-language composition."
84
+ "authoring_guide": "L0175 is a content-composition language for 5th-grade English Language Arts assessment items (Smarter Balanced spec ELA · Grade 5 · Claim 1 · Reasoning & Evidence). One language serves **multiple learning targets**; **every program first declares a top-level `target`**: `c1-t4` (Target 4 — *literary* texts, RL standards, dimensions like character/theme/point-of-view) or `c1-t11` (Target 11 — *informational* texts, RI standards, dimensions like relationships-interactions/author-use-of-information/point-of-view/purpose). Choose the target from the request (literary vs. informational text and the skill assessed); the dimensions, standards, and stem catalog (`stems.md`) are then scoped to that target, and mixing targets' vocabularies is a compile error. It is **item-first**: after picking the target you compose the questions (`outcome`s) first — each with a unique `id`, a `focus` naming its correct claim, and an explicit `stem` (and `stem-b` on EBSR) instantiated from the guideline's Appropriate-Stem catalog (`stems.md`) — then author the supported `claim`s and a *superset* of distractor `claim`s, each tagging the question(s) it foils via `targets`, plus evidence `source`s. The compiler then *composes* each outcome deterministically: it takes the correct claim from `focus`, draws that question's foils ONLY from the distractors that `targets` it, uses the authored stem, and assembles a finished item in the task model named by its item type — for Reasoning & Evidence (T4/T11): `ebsr` (two-part evidence-based selected response), `hot-text` (select-text), or `short-text` (constructed response); other targets also offer `multiple-choice`/`multi-select` (the allowed set and the per-target task-model numbering are in *Vocabulary Cues*). One passage + superset can yield several items, each with its own bound foil set. The compiler performs no generation and no stem synthesis — it selects, validates against the guideline, and warns when a question's pool falls short. Distractors are tagged by the SBAC error taxonomy (Part A: `misreads-detail`, `erroneous-inference`, `faulty-reasoning`; Part B: `supports-wrong-claim`, `irrelevant`), each carrying a rationale; composition picks foils for error-type coverage and couples Part B evidence to the claims it plausibly supports. **For each EBSR/Hot-Text question author at least 5 viable distractors that `targets` it (aim for 5–8, over-generating since some are filtered as near-duplicates or accidentally correct) — covering all three error types with ≥2 alternatives in at least two of them, and giving each a `plausibility` score (0–1). An item draws only 3 foils, so a richer targeted pool yields stronger items; fewer than 3 targeting a question is a hard error, fewer than 5 a warning. Likewise, for EBSR Part B author at least 5 non-supporting evidence lines (`supports-wrong-claim` + `irrelevant`) so the compiler can choose the most tempting 3 foil options. No-giveaway rule: at least one of those `supports-wrong-claim` lines must list BOTH the correct claim's id AND a distractor's id in its `supports` (a line that seems to support the right answer but actually backs a misreading) — otherwise the correct evidence line stands alone, Part B telegraphs Part A, and the compiler warns \"possible A↔B giveaway.\" Do not make every wrong-claim line point only at distractors.**\n\n**Name the item type; task-model NUMBERS are per-target and collide.** Phrase a request by item\ntype (`ebsr` / `hot-text` / `short-text` / `multiple-choice` / `multi-select`) — that is unambiguous.\nTask-model *numbers* (TM1…TM5) are numbered **per target**, so the same number means different things\nin different targets: `tm3` is **short-text** in `c1-t4`/`c1-t11`, **`ebsr`** in `c1-t9`, and\n**`hot-text`** in `c1-t8`/`c1-t10`. A bare \"task model 3\" is therefore meaningless without its\ntarget — never assume the Reasoning & Evidence (T4/T11) numbering carries over to T9/T8/T10. When a\nrequest names a task model by number, resolve it against the **program's target** (see the per-target\ntask-model table in *Vocabulary Cues*) and state the item type, e.g. for `c1-t9` \"task model 3 → EBSR\".\n\n**Targets are different skills — pick the one the request assesses.** Beyond the two Reasoning &\nEvidence targets above (`c1-t4` literary, `c1-t11` informational — infer/conclude and justify with\nevidence), L0175 also composes **`c1-t9` — Central Ideas** (informational): a *different* skill —\nsynthesize and condense (the main/central idea, the key details that build it, and summary), NOT\ninference. Use `c1-t9` when the request is about the **main idea**, **most important details**, or a\n**summary**; dimensions `central-idea`/`key-detail`/`summary`, standards `ri-1`+`ri-2`, DOK 2 (3 for\nthe written summary). Its distractors are a **significance** taxonomy — usually *true* statements\nthat simply aren't central: `too-narrow` (a supporting detail mistaken for the main idea),\n`too-broad` (an overgeneralization/off-topic), `misreads-detail`, `insignificant` (a minor detail\nthat doesn't belong in a summary). T9 item types are `multiple-choice` (pick the central idea),\n`multi-select` (choose the two sentences that belong in a summary — `focus` is a **list**), `ebsr`\n(central idea → supporting detail), `short-text` (summary), and single-part `hot-text` (click the\nsentence(s) that show the main idea — the `focus` claim's directly-supporting `source`s are the\ncorrect selection). Two new item types — `multiple-choice` (4 options, one correct) and\n`multi-select` (5–6 options, an exact correct set) — are single-part: author the `stem` and a\n`focus`, no Part B.\n\nL0175 also composes **`c1-t8` — Key Details** (informational): the inference/conclusion is **GIVEN\nin the stem** and the student selects the supporting **evidence** (the answer is *evidence*, not a\nchosen statement). Use `c1-t8` when the request **states an idea and asks which detail/sentence\nsupports it**; dimension `supporting-evidence`, standards `ri-1`+`ri-7`, DOK 1–2, item types\n`multiple-choice`, `multi-select`, and **single-part `hot-text`** (no Part A). Author ONE supported\n`claim` = the given inference (its `focus`), state it in the `stem`, and author `source`s as the\noptions: `directly-supports` = correct evidence (with a `quote`), `supports-wrong-claim`/`irrelevant`\n= distractor evidence. No distractor claims.\n\nL0175 also composes **`c1-t10` — Word Meanings** (informational): the question asks for the\n**meaning of a targeted word/phrase in context**, so the answer choices are **meanings**, authored\nas a dedicated `word`/`meaning` structure (not claims). Use `c1-t10` when the request asks **what a\nword/phrase means**; dimension `word-meaning`, standards `ri-4` + the L-4 family (`l-4a` context /\n`l-4b` roots & affixes / `l-5c` word relationships / `l-4c` reference), DOK 1–2, item types\n`multiple-choice`, `multi-select`, and `hot-text` (click the word matching a given definition — the correct word is `focus` with its paragraph's `line`; author the distractor candidate words either as more single-word `word`s OR as the focus word's distractor `meanings` whose `text` is the candidate word itself (a single word, not a definition), ALL appearing in that one paragraph. The compiler shows the paragraph and makes the candidate words clickable, focus correct; if no candidate words are found it falls back to making every content word a choice. The `stem` is only the instruction + definition — never paste the paragraph into the stem). Author a top-level\n`words` list: a `word` (the targeted word, `line`/`quote` for context) with `meanings` — one (MC) or\n≥2 (Multi-Select) `status correct` meanings + `status distractor` meanings (each with a T10\n`error-type` — `other-meaning`/`misinterprets`/`wrong-context` — and a `rationale`). The outcome's\n`focus` names the word; state the word and its context sentence in the `stem`.\n\n**Write at the target grade level.** The grade is the guideline's grade (the target's — Grade 5 for `c1-t4`/`c1-t11`) unless the user's prompt asks for a different grade, in which case author a top-level `grade <n>`. Match the passage AND all question text to that grade: short, mostly simple/compound sentences; concrete, high-frequency vocabulary; an inference drawn from **specific details in the text**, not college-style literary or rhetorical analysis. DOK 3 means strategic reasoning *within* grade-level text — not harder text. The compiler estimates the passage's reading level and warns when it runs above the target grade. See **Grade-appropriate reading level** below.\n\n**Supply the passage already split into paragraphs.** When a request includes or describes the passage text, break it into its paragraphs and keep those breaks — each paragraph becomes one numbered `lines` entry and the rendered passage preserves that paragraph structure. The code generator maintains the paragraphs you provide; it does not re-flow a wall of text into one block or re-chunk it. Separate paragraphs with a blank line (or clearly mark each one) so they survive into the final passage. **Keep paragraphs even for Hot Text** — the compiler segments each paragraph into sentences and makes each one individually selectable in Part B, so the passage keeps its paragraph layout; do not author the passage as one-sentence lines.\n\nWhen composing a request, declare the `target`, then author the passage and outcomes (with their stems) first, then the inference graph (supported claims, then the targeted distractors), then the evidence. The program is one flat builder chain: top-level forms (`target`, `passage`, `type`, `lines`, `claims`, `evidence`, `outcomes`) thread a single continuation and the whole program ends with one `{}..`. Inside the `claims`/`evidence`/`outcomes` lists, each element (`claim`/`source`/`outcome`) is its own attribute chain terminated by its own `{}`. Attribute values that are free text (`text`, `rationale`, `subject`, `stem`, the passage heading) or id labels (`id`, `focus`, `cites`, `supports`, `targets`) are quoted strings; closed-enum values (`target`, `type`, `status`, `dimension`, `error-type`, `standard`, `dok`) are bare kebab-case identifiers (e.g. `c1-t11`, `ebsr`, `directly-supports`, `ri-1`).\n\nIn scope: SBAC Grade 5 · Claim 1 for targets **T4** (Reasoning & Evidence, literary, RL), **T11** (Reasoning & Evidence, informational, RI), **T9** (Central Ideas, informational, RI-1/RI-2), **T8** (Key Details, informational, RI-1/RI-7 — given-inference → evidence selection), and **T10** (Word Meanings, informational, RI-4/L-4 — meaning of a targeted word, authored as `word`/`meaning`); a single passage; the per-target dimensions and distractor taxonomy; item types `ebsr`, `hot-text`, `short-text`, `multiple-choice`, `multi-select` (allowed set varies by target); DOK r-dok1..r-dok3. Out of scope: other claims/grades or Claim-1 targets beyond T4/T11/T9/T8/T10; multi-word-phrase candidates in T10 click-the-word; dual-text stimuli; compile-time LLM generation; auto-scoring of short text; cross-language composition."
85
85
  }