@plurnk/plurnk-contracts 1.5.0 → 1.6.1
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.
- package/README.md +9 -5
- package/SPEC.md +331 -233
- package/dist/plurnk.gemma.gbnf +160 -0
- package/dist/plurnk.qwen.gbnf +149 -0
- package/dist/schema/ClientStatement.json +7 -1
- package/dist/schema/EntryReadResult.json +3 -11
- package/dist/schema/PlurnkStatement.json +56 -11
- package/dist/schema/ProposalProjection.json +1 -1
- package/dist/schema/ProviderAccounting.json +30 -0
- package/dist/schema/ProviderCost.json +6 -15
- package/dist/schema/ProviderRequestAccounting.json +17 -0
- package/dist/schema/ProviderUsage.json +40 -0
- package/dist/schema/ResourceSelection.json +1 -1
- package/dist/schema/TextLineMarker.json +21 -0
- package/dist/src/AstBuilder.d.ts.map +1 -1
- package/dist/src/AstBuilder.js +108 -20
- package/dist/src/AstBuilder.js.map +1 -1
- package/dist/src/PlurnkErrorStrategy.d.ts +1 -0
- package/dist/src/PlurnkErrorStrategy.d.ts.map +1 -1
- package/dist/src/PlurnkErrorStrategy.js +42 -19
- package/dist/src/PlurnkErrorStrategy.js.map +1 -1
- package/dist/src/PlurnkParser.d.ts.map +1 -1
- package/dist/src/PlurnkParser.js +22 -145
- package/dist/src/PlurnkParser.js.map +1 -1
- package/dist/src/TagSignal.d.ts +15 -0
- package/dist/src/TagSignal.d.ts.map +1 -0
- package/dist/src/TagSignal.js +48 -0
- package/dist/src/TagSignal.js.map +1 -0
- package/dist/src/Validator.d.ts +1 -0
- package/dist/src/Validator.d.ts.map +1 -1
- package/dist/src/Validator.js +7 -0
- package/dist/src/Validator.js.map +1 -1
- package/dist/src/generated/plurnkLexer.d.ts +99 -64
- package/dist/src/generated/plurnkLexer.d.ts.map +1 -1
- package/dist/src/generated/plurnkLexer.js +879 -526
- package/dist/src/generated/plurnkLexer.js.map +1 -1
- package/dist/src/generated/plurnkParser.d.ts +99 -109
- package/dist/src/generated/plurnkParser.d.ts.map +1 -1
- package/dist/src/generated/plurnkParser.js +943 -1070
- package/dist/src/generated/plurnkParser.js.map +1 -1
- package/dist/src/generated/plurnkParserVisitor.d.ts +19 -5
- package/dist/src/generated/plurnkParserVisitor.d.ts.map +1 -1
- package/dist/src/generated/plurnkParserVisitor.js +16 -4
- package/dist/src/generated/plurnkParserVisitor.js.map +1 -1
- package/dist/src/index.d.ts +2 -0
- package/dist/src/index.d.ts.map +1 -1
- package/dist/src/index.js +1 -0
- package/dist/src/index.js.map +1 -1
- package/dist/src/types.d.ts +1 -1
- package/dist/src/types.d.ts.map +1 -1
- package/dist/src/types.generated.d.ts +80 -23
- package/dist/src/types.generated.d.ts.map +1 -1
- package/dist/src/types.js +1 -1
- package/dist/src/types.js.map +1 -1
- package/package.json +3 -2
- package/plurnk.md +140 -96
- package/dist/plurnk.gbnf +0 -394
package/README.md
CHANGED
|
@@ -23,7 +23,7 @@ Requires Node.js 26 or newer.
|
|
|
23
23
|
| Shared wire shapes | `schema/*.json` |
|
|
24
24
|
| JavaScript and TypeScript API | `@plurnk/plurnk-contracts` |
|
|
25
25
|
| Published JSON Schemas | `@plurnk/plurnk-contracts/schema/*.json` |
|
|
26
|
-
| Optional local-model
|
|
26
|
+
| Optional local-model rails | `@plurnk/plurnk-contracts/plurnk.{gemma,qwen}.gbnf` |
|
|
27
27
|
|
|
28
28
|
JSON Schema owns shared wire shapes, generated TypeScript projects those
|
|
29
29
|
shapes, ANTLR owns accepted model-language syntax, and GBNF is a bounded
|
|
@@ -93,13 +93,17 @@ when the result contains an error or unparsed tail.
|
|
|
93
93
|
|
|
94
94
|
```ts
|
|
95
95
|
const railUrl = import.meta.resolve(
|
|
96
|
-
"@plurnk/plurnk-contracts/plurnk.gbnf",
|
|
96
|
+
"@plurnk/plurnk-contracts/plurnk.qwen.gbnf",
|
|
97
97
|
);
|
|
98
98
|
```
|
|
99
99
|
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
100
|
+
Choose `gemma` when the model generates its complete
|
|
101
|
+
`<|channel>thought … <channel|>` enclosure, or `qwen` when the chat template
|
|
102
|
+
supplies `<think>\n` before sampled token zero. The latter artifact is named
|
|
103
|
+
`qwen` because that prefill is Qwen's template protocol, not a general property
|
|
104
|
+
of think tags. Both constrain the same PLURNK
|
|
105
|
+
turn after reasoning. They are not second parsers and do not guarantee
|
|
106
|
+
semantically valid output. See SPEC {§gbnf-turn-shape} and
|
|
103
107
|
{§gbnf-reasoning-boundary}.
|
|
104
108
|
|
|
105
109
|
## Development
|