@plurnk/plurnk-contracts 1.14.2 → 1.16.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 (46) hide show
  1. package/SPEC.md +106 -123
  2. package/dist/plurnk.gemma.gbnf +62 -87
  3. package/dist/plurnk.qwen.gbnf +62 -87
  4. package/dist/schema/ClientStatement.json +114 -40
  5. package/dist/schema/PlurnkStatement.json +29 -199
  6. package/dist/schema/RangeExtent.json +1 -1
  7. package/dist/src/AstBuilder.d.ts +2 -2
  8. package/dist/src/AstBuilder.d.ts.map +1 -1
  9. package/dist/src/AstBuilder.js +68 -146
  10. package/dist/src/AstBuilder.js.map +1 -1
  11. package/dist/src/PlurnkErrorStrategy.d.ts +0 -1
  12. package/dist/src/PlurnkErrorStrategy.d.ts.map +1 -1
  13. package/dist/src/PlurnkErrorStrategy.js +72 -61
  14. package/dist/src/PlurnkErrorStrategy.js.map +1 -1
  15. package/dist/src/PlurnkParser.d.ts +1 -2
  16. package/dist/src/PlurnkParser.d.ts.map +1 -1
  17. package/dist/src/PlurnkParser.js +15 -104
  18. package/dist/src/PlurnkParser.js.map +1 -1
  19. package/dist/src/generated/plurnkLexer.d.ts +42 -69
  20. package/dist/src/generated/plurnkLexer.d.ts.map +1 -1
  21. package/dist/src/generated/plurnkLexer.js +495 -647
  22. package/dist/src/generated/plurnkLexer.js.map +1 -1
  23. package/dist/src/generated/plurnkParser.d.ts +76 -215
  24. package/dist/src/generated/plurnkParser.d.ts.map +1 -1
  25. package/dist/src/generated/plurnkParser.js +643 -1829
  26. package/dist/src/generated/plurnkParser.js.map +1 -1
  27. package/dist/src/generated/plurnkParserVisitor.d.ts +3 -87
  28. package/dist/src/generated/plurnkParserVisitor.d.ts.map +1 -1
  29. package/dist/src/generated/plurnkParserVisitor.js +2 -74
  30. package/dist/src/generated/plurnkParserVisitor.js.map +1 -1
  31. package/dist/src/index.d.ts +0 -2
  32. package/dist/src/index.d.ts.map +1 -1
  33. package/dist/src/index.js +0 -1
  34. package/dist/src/index.js.map +1 -1
  35. package/dist/src/types.d.ts +1 -1
  36. package/dist/src/types.d.ts.map +1 -1
  37. package/dist/src/types.generated.d.ts +18 -50
  38. package/dist/src/types.generated.d.ts.map +1 -1
  39. package/dist/src/types.js +1 -1
  40. package/dist/src/types.js.map +1 -1
  41. package/package.json +1 -1
  42. package/plurnk.md +67 -73
  43. package/dist/src/TagSignal.d.ts +0 -15
  44. package/dist/src/TagSignal.d.ts.map +0 -1
  45. package/dist/src/TagSignal.js +0 -53
  46. package/dist/src/TagSignal.js.map +0 -1
@@ -2,76 +2,70 @@
2
2
  # @plurnk-response-root root-gemma
3
3
  root ::= root-gemma
4
4
  section-body-b0 ::= ("#" section-body-b1 | [ PLANFIDRETCOYMVSXBWK] section-body-b0 | [^\x00-\x08\x0B-\x0C\x0E-\x1F\x7F# PLANFIDRETCOYMVSXBWK] section-body-b0)?
5
- section-body-b1 ::= ("#" section-body-b6 | " " section-body-b2 | [PLANFIDRETCOYMVSXBWK] section-body-b0 | [^\x00-\x08\x0B-\x0C\x0E-\x1F\x7F# PLANFIDRETCOYMVSXBWK] section-body-b0)?
6
- section-body-b2 ::= ("#" section-body-b1 | [ LANFIDRETCOYMVSXBWK] section-body-b0 | "P" section-body-b3 | [^\x00-\x08\x0B-\x0C\x0E-\x1F\x7F# PLANFIDRETCOYMVSXBWK] section-body-b0)?
7
- section-body-b3 ::= ("#" section-body-b1 | [ PANFIDRETCOYMVSXBWK] section-body-b0 | "L" section-body-b4 | [^\x00-\x08\x0B-\x0C\x0E-\x1F\x7F# PLANFIDRETCOYMVSXBWK] section-body-b0)?
8
- section-body-b4 ::= ("#" section-body-b1 | [ PLNFIDRETCOYMVSXBWK] section-body-b0 | "A" section-body-b5 | [^\x00-\x08\x0B-\x0C\x0E-\x1F\x7F# PLANFIDRETCOYMVSXBWK] section-body-b0)?
9
- section-body-b5 ::= ("#" section-body-b1 | [ PLAFIDRETCOYMVSXBWK] section-body-b0 | [^\x00-\x08\x0B-\x0C\x0E-\x1F\x7F# PLANFIDRETCOYMVSXBWK] section-body-b0)?
10
- section-body-b6 ::= ("#" section-body-b6 | " " section-body-b7 | [PLANFIDRETCOYMVSXBWK] section-body-b0 | [^\x00-\x08\x0B-\x0C\x0E-\x1F\x7F# PLANFIDRETCOYMVSXBWK] section-body-b0)?
11
- section-body-b7 ::= ("#" section-body-b1 | [ LANIDTYVX] section-body-b0 | "P" section-body-b3 | "F" section-body-b8 | "R" section-body-b11 | "E" section-body-b14 | "C" section-body-b17 | "O" section-body-b23 | "M" section-body-b20 | "S" section-body-b28 | "B" section-body-b33 | "W" section-body-b36 | "K" section-body-b40 | [^\x00-\x08\x0B-\x0C\x0E-\x1F\x7F# PLANFIDRETCOYMVSXBWK] section-body-b0)?
12
- section-body-b8 ::= ("#" section-body-b1 | [ PLANFDRETCYMVSXBWK] section-body-b0 | "I" section-body-b9 | "O" section-body-b26 | [^\x00-\x08\x0B-\x0C\x0E-\x1F\x7F# PLANFIDRETCOYMVSXBWK] section-body-b0)?
13
- section-body-b9 ::= ("#" section-body-b1 | [ PLAFIDRETCOYMVSXBWK] section-body-b0 | "N" section-body-b10 | [^\x00-\x08\x0B-\x0C\x0E-\x1F\x7F# PLANFIDRETCOYMVSXBWK] section-body-b0)?
14
- section-body-b10 ::= ("#" section-body-b1 | [ PLANFIRETCOYMVSXBWK] section-body-b0 | [^\x00-\x08\x0B-\x0C\x0E-\x1F\x7F# PLANFIDRETCOYMVSXBWK] section-body-b0)?
15
- section-body-b11 ::= ("#" section-body-b1 | [ PLANFIDRTCOYMVSXBWK] section-body-b0 | "E" section-body-b12 | [^\x00-\x08\x0B-\x0C\x0E-\x1F\x7F# PLANFIDRETCOYMVSXBWK] section-body-b0)?
16
- section-body-b12 ::= ("#" section-body-b1 | [ PLNFIDRETCOYMVSXBWK] section-body-b0 | "A" section-body-b13 | [^\x00-\x08\x0B-\x0C\x0E-\x1F\x7F# PLANFIDRETCOYMVSXBWK] section-body-b0)?
17
- section-body-b13 ::= ("#" section-body-b1 | [ PLANFIRETCOYMVSXBWK] section-body-b0 | [^\x00-\x08\x0B-\x0C\x0E-\x1F\x7F# PLANFIDRETCOYMVSXBWK] section-body-b0)?
18
- section-body-b14 ::= ("#" section-body-b1 | [ PLANFIRETCOYMVSBWK] section-body-b0 | "D" section-body-b15 | "X" section-body-b31 | [^\x00-\x08\x0B-\x0C\x0E-\x1F\x7F# PLANFIDRETCOYMVSXBWK] section-body-b0)?
19
- section-body-b15 ::= ("#" section-body-b1 | [ PLANFDRETCOYMVSXBWK] section-body-b0 | "I" section-body-b16 | [^\x00-\x08\x0B-\x0C\x0E-\x1F\x7F# PLANFIDRETCOYMVSXBWK] section-body-b0)?
20
- section-body-b16 ::= ("#" section-body-b1 | [ PLANFIDRECOYMVSXBWK] section-body-b0 | [^\x00-\x08\x0B-\x0C\x0E-\x1F\x7F# PLANFIDRETCOYMVSXBWK] section-body-b0)?
21
- section-body-b17 ::= ("#" section-body-b1 | [ PLANFIDRETCYMVSXBWK] section-body-b0 | "O" section-body-b18 | [^\x00-\x08\x0B-\x0C\x0E-\x1F\x7F# PLANFIDRETCOYMVSXBWK] section-body-b0)?
22
- section-body-b18 ::= ("#" section-body-b1 | [ LANFIDRETCOYMVSXBWK] section-body-b0 | "P" section-body-b19 | [^\x00-\x08\x0B-\x0C\x0E-\x1F\x7F# PLANFIDRETCOYMVSXBWK] section-body-b0)?
23
- section-body-b19 ::= ("#" section-body-b1 | [ PLANFIDRETCOMVSXBWK] section-body-b0 | [^\x00-\x08\x0B-\x0C\x0E-\x1F\x7F# PLANFIDRETCOYMVSXBWK] section-body-b0)?
24
- section-body-b20 ::= ("#" section-body-b1 | [ PLANFIDRETCYMVSXBWK] section-body-b0 | "O" section-body-b21 | [^\x00-\x08\x0B-\x0C\x0E-\x1F\x7F# PLANFIDRETCOYMVSXBWK] section-body-b0)?
25
- section-body-b21 ::= ("#" section-body-b1 | [ PLANFIDRETCOYMSXBWK] section-body-b0 | "V" section-body-b22 | [^\x00-\x08\x0B-\x0C\x0E-\x1F\x7F# PLANFIDRETCOYMVSXBWK] section-body-b0)?
26
- section-body-b22 ::= ("#" section-body-b1 | [ PLANFIDRTCOYMVSXBWK] section-body-b0 | [^\x00-\x08\x0B-\x0C\x0E-\x1F\x7F# PLANFIDRETCOYMVSXBWK] section-body-b0)?
27
- section-body-b23 ::= ("#" section-body-b1 | [ LANFIDRETCOYMVSXBWK] section-body-b0 | "P" section-body-b24 | [^\x00-\x08\x0B-\x0C\x0E-\x1F\x7F# PLANFIDRETCOYMVSXBWK] section-body-b0)?
5
+ section-body-b1 ::= ("#" section-body-b2 | [ PLANFIDRETCOYMVSXBWK] section-body-b0 | [^\x00-\x08\x0B-\x0C\x0E-\x1F\x7F# PLANFIDRETCOYMVSXBWK] section-body-b0)?
6
+ section-body-b2 ::= ("#" section-body-b7 | " " section-body-b3 | [PLANFIDRETCOYMVSXBWK] section-body-b0 | [^\x00-\x08\x0B-\x0C\x0E-\x1F\x7F# PLANFIDRETCOYMVSXBWK] section-body-b0)?
7
+ section-body-b3 ::= ("#" section-body-b1 | [ LANFIDRETCOYMVSXBWK] section-body-b0 | "P" section-body-b4 | [^\x00-\x08\x0B-\x0C\x0E-\x1F\x7F# PLANFIDRETCOYMVSXBWK] section-body-b0)?
8
+ section-body-b4 ::= ("#" section-body-b1 | [ PANFIDRETCOYMVSXBWK] section-body-b0 | "L" section-body-b5 | [^\x00-\x08\x0B-\x0C\x0E-\x1F\x7F# PLANFIDRETCOYMVSXBWK] section-body-b0)?
9
+ section-body-b5 ::= ("#" section-body-b1 | [ PLNFIDRETCOYMVSXBWK] section-body-b0 | "A" section-body-b6 | [^\x00-\x08\x0B-\x0C\x0E-\x1F\x7F# PLANFIDRETCOYMVSXBWK] section-body-b0)?
10
+ section-body-b6 ::= ("#" section-body-b1 | [ PLAFIDRETCOYMVSXBWK] section-body-b0 | [^\x00-\x08\x0B-\x0C\x0E-\x1F\x7F# PLANFIDRETCOYMVSXBWK] section-body-b0)?
11
+ section-body-b7 ::= ("#" section-body-b7 | " " section-body-b8 | [PLANFIDRETCOYMVSXBWK] section-body-b0 | [^\x00-\x08\x0B-\x0C\x0E-\x1F\x7F# PLANFIDRETCOYMVSXBWK] section-body-b0)?
12
+ section-body-b8 ::= ("#" section-body-b1 | [ LANIDTOYVX] section-body-b0 | "P" section-body-b4 | "F" section-body-b9 | "R" section-body-b12 | "E" section-body-b15 | "C" section-body-b18 | "M" section-body-b21 | "S" section-body-b24 | "B" section-body-b29 | "W" section-body-b32 | "K" section-body-b37 | [^\x00-\x08\x0B-\x0C\x0E-\x1F\x7F# PLANFIDRETCOYMVSXBWK] section-body-b0)?
13
+ section-body-b9 ::= ("#" section-body-b1 | [ PLANFDRETCYMVSXBWK] section-body-b0 | "I" section-body-b10 | "O" section-body-b35 | [^\x00-\x08\x0B-\x0C\x0E-\x1F\x7F# PLANFIDRETCOYMVSXBWK] section-body-b0)?
14
+ section-body-b10 ::= ("#" section-body-b1 | [ PLAFIDRETCOYMVSXBWK] section-body-b0 | "N" section-body-b11 | [^\x00-\x08\x0B-\x0C\x0E-\x1F\x7F# PLANFIDRETCOYMVSXBWK] section-body-b0)?
15
+ section-body-b11 ::= ("#" section-body-b1 | [ PLANFIRETCOYMVSXBWK] section-body-b0 | [^\x00-\x08\x0B-\x0C\x0E-\x1F\x7F# PLANFIDRETCOYMVSXBWK] section-body-b0)?
16
+ section-body-b12 ::= ("#" section-body-b1 | [ PLANFIDRTCOYMVSXBWK] section-body-b0 | "E" section-body-b13 | [^\x00-\x08\x0B-\x0C\x0E-\x1F\x7F# PLANFIDRETCOYMVSXBWK] section-body-b0)?
17
+ section-body-b13 ::= ("#" section-body-b1 | [ PLNFIDRETCOYMVSXBWK] section-body-b0 | "A" section-body-b14 | [^\x00-\x08\x0B-\x0C\x0E-\x1F\x7F# PLANFIDRETCOYMVSXBWK] section-body-b0)?
18
+ section-body-b14 ::= ("#" section-body-b1 | [ PLANFIRETCOYMVSXBWK] section-body-b0 | [^\x00-\x08\x0B-\x0C\x0E-\x1F\x7F# PLANFIDRETCOYMVSXBWK] section-body-b0)?
19
+ section-body-b15 ::= ("#" section-body-b1 | [ PLANFIRETCOYMVSBWK] section-body-b0 | "D" section-body-b16 | "X" section-body-b27 | [^\x00-\x08\x0B-\x0C\x0E-\x1F\x7F# PLANFIDRETCOYMVSXBWK] section-body-b0)?
20
+ section-body-b16 ::= ("#" section-body-b1 | [ PLANFDRETCOYMVSXBWK] section-body-b0 | "I" section-body-b17 | [^\x00-\x08\x0B-\x0C\x0E-\x1F\x7F# PLANFIDRETCOYMVSXBWK] section-body-b0)?
21
+ section-body-b17 ::= ("#" section-body-b1 | [ PLANFIDRECOYMVSXBWK] section-body-b0 | [^\x00-\x08\x0B-\x0C\x0E-\x1F\x7F# PLANFIDRETCOYMVSXBWK] section-body-b0)?
22
+ section-body-b18 ::= ("#" section-body-b1 | [ PLANFIDRETCYMVSXBWK] section-body-b0 | "O" section-body-b19 | [^\x00-\x08\x0B-\x0C\x0E-\x1F\x7F# PLANFIDRETCOYMVSXBWK] section-body-b0)?
23
+ section-body-b19 ::= ("#" section-body-b1 | [ LANFIDRETCOYMVSXBWK] section-body-b0 | "P" section-body-b20 | [^\x00-\x08\x0B-\x0C\x0E-\x1F\x7F# PLANFIDRETCOYMVSXBWK] section-body-b0)?
24
+ section-body-b20 ::= ("#" section-body-b1 | [ PLANFIDRETCOMVSXBWK] section-body-b0 | [^\x00-\x08\x0B-\x0C\x0E-\x1F\x7F# PLANFIDRETCOYMVSXBWK] section-body-b0)?
25
+ section-body-b21 ::= ("#" section-body-b1 | [ PLANFIDRETCYMVSXBWK] section-body-b0 | "O" section-body-b22 | [^\x00-\x08\x0B-\x0C\x0E-\x1F\x7F# PLANFIDRETCOYMVSXBWK] section-body-b0)?
26
+ section-body-b22 ::= ("#" section-body-b1 | [ PLANFIDRETCOYMSXBWK] section-body-b0 | "V" section-body-b23 | [^\x00-\x08\x0B-\x0C\x0E-\x1F\x7F# PLANFIDRETCOYMVSXBWK] section-body-b0)?
27
+ section-body-b23 ::= ("#" section-body-b1 | [ PLANFIDRTCOYMVSXBWK] section-body-b0 | [^\x00-\x08\x0B-\x0C\x0E-\x1F\x7F# PLANFIDRETCOYMVSXBWK] section-body-b0)?
28
28
  section-body-b24 ::= ("#" section-body-b1 | [ PLANFIDRTCOYMVSXBWK] section-body-b0 | "E" section-body-b25 | [^\x00-\x08\x0B-\x0C\x0E-\x1F\x7F# PLANFIDRETCOYMVSXBWK] section-body-b0)?
29
- section-body-b25 ::= ("#" section-body-b1 | [ PLAFIDRETCOYMVSXBWK] section-body-b0 | [^\x00-\x08\x0B-\x0C\x0E-\x1F\x7F# PLANFIDRETCOYMVSXBWK] section-body-b0)?
30
- section-body-b26 ::= ("#" section-body-b1 | [ PANFIDETCOYMVSXBWK] section-body-b0 | "L" section-body-b27 | "R" section-body-b39 | [^\x00-\x08\x0B-\x0C\x0E-\x1F\x7F# PLANFIDRETCOYMVSXBWK] section-body-b0)?
31
- section-body-b27 ::= ("#" section-body-b1 | [ PLANFIRETCOYMVSXBWK] section-body-b0 | [^\x00-\x08\x0B-\x0C\x0E-\x1F\x7F# PLANFIDRETCOYMVSXBWK] section-body-b0)?
32
- section-body-b28 ::= ("#" section-body-b1 | [ PLANFIDRTCOYMVSXBWK] section-body-b0 | "E" section-body-b29 | [^\x00-\x08\x0B-\x0C\x0E-\x1F\x7F# PLANFIDRETCOYMVSXBWK] section-body-b0)?
33
- section-body-b29 ::= ("#" section-body-b1 | [ PLAFIDRETCOYMVSXBWK] section-body-b0 | "N" section-body-b30 | [^\x00-\x08\x0B-\x0C\x0E-\x1F\x7F# PLANFIDRETCOYMVSXBWK] section-body-b0)?
34
- section-body-b30 ::= ("#" section-body-b1 | [ PLANFIRETCOYMVSXBWK] section-body-b0 | [^\x00-\x08\x0B-\x0C\x0E-\x1F\x7F# PLANFIDRETCOYMVSXBWK] section-body-b0)?
35
- section-body-b31 ::= ("#" section-body-b1 | [ PLANFIDRTCOYMVSXBWK] section-body-b0 | "E" section-body-b32 | [^\x00-\x08\x0B-\x0C\x0E-\x1F\x7F# PLANFIDRETCOYMVSXBWK] section-body-b0)?
36
- section-body-b32 ::= ("#" section-body-b1 | [ PLANFIDRETOYMVSXBWK] section-body-b0 | [^\x00-\x08\x0B-\x0C\x0E-\x1F\x7F# PLANFIDRETCOYMVSXBWK] section-body-b0)?
37
- section-body-b33 ::= ("#" section-body-b1 | [ PLNFIDRETCOYMVSXBWK] section-body-b0 | "A" section-body-b34 | [^\x00-\x08\x0B-\x0C\x0E-\x1F\x7F# PLANFIDRETCOYMVSXBWK] section-body-b0)?
38
- section-body-b34 ::= ("#" section-body-b1 | [ PLANFIDETCOYMVSXBWK] section-body-b0 | "R" section-body-b35 | [^\x00-\x08\x0B-\x0C\x0E-\x1F\x7F# PLANFIDRETCOYMVSXBWK] section-body-b0)?
39
- section-body-b35 ::= ("#" section-body-b1 | [ PLANFIDRTCOYMVSXBWK] section-body-b0 | [^\x00-\x08\x0B-\x0C\x0E-\x1F\x7F# PLANFIDRETCOYMVSXBWK] section-body-b0)?
40
- section-body-b36 ::= ("#" section-body-b1 | [ PLANFIDRETCYMVSXBWK] section-body-b0 | "O" section-body-b37 | [^\x00-\x08\x0B-\x0C\x0E-\x1F\x7F# PLANFIDRETCOYMVSXBWK] section-body-b0)?
41
- section-body-b37 ::= ("#" section-body-b1 | [ PLANFIDETCOYMVSXBWK] section-body-b0 | "R" section-body-b38 | [^\x00-\x08\x0B-\x0C\x0E-\x1F\x7F# PLANFIDRETCOYMVSXBWK] section-body-b0)?
42
- section-body-b38 ::= ("#" section-body-b1 | [ PLANFIDRETCOYMVSXBW] section-body-b0 | [^\x00-\x08\x0B-\x0C\x0E-\x1F\x7F# PLANFIDRETCOYMVSXBWK] section-body-b0)?
43
- section-body-b39 ::= ("#" section-body-b1 | [ PLANFIDRETCOYMVSXBW] section-body-b0 | [^\x00-\x08\x0B-\x0C\x0E-\x1F\x7F# PLANFIDRETCOYMVSXBWK] section-body-b0)?
44
- section-body-b40 ::= ("#" section-body-b1 | [ PLANFDRETCOYMVSXBWK] section-body-b0 | "I" section-body-b41 | [^\x00-\x08\x0B-\x0C\x0E-\x1F\x7F# PLANFIDRETCOYMVSXBWK] section-body-b0)?
45
- section-body-b41 ::= ("#" section-body-b1 | [ PANFIDRETCOYMVSXBWK] section-body-b0 | "L" section-body-b42 | [^\x00-\x08\x0B-\x0C\x0E-\x1F\x7F# PLANFIDRETCOYMVSXBWK] section-body-b0)?
46
- section-body-b42 ::= ("#" section-body-b1 | [ PANFIDRETCOYMVSXBWK] section-body-b0 | [^\x00-\x08\x0B-\x0C\x0E-\x1F\x7F# PLANFIDRETCOYMVSXBWK] section-body-b0)?
29
+ section-body-b25 ::= ("#" section-body-b1 | [ PLAFIDRETCOYMVSXBWK] section-body-b0 | "N" section-body-b26 | [^\x00-\x08\x0B-\x0C\x0E-\x1F\x7F# PLANFIDRETCOYMVSXBWK] section-body-b0)?
30
+ section-body-b26 ::= ("#" section-body-b1 | [ PLANFIRETCOYMVSXBWK] section-body-b0 | [^\x00-\x08\x0B-\x0C\x0E-\x1F\x7F# PLANFIDRETCOYMVSXBWK] section-body-b0)?
31
+ section-body-b27 ::= ("#" section-body-b1 | [ PLANFIDRTCOYMVSXBWK] section-body-b0 | "E" section-body-b28 | [^\x00-\x08\x0B-\x0C\x0E-\x1F\x7F# PLANFIDRETCOYMVSXBWK] section-body-b0)?
32
+ section-body-b28 ::= ("#" section-body-b1 | [ PLANFIDRETOYMVSXBWK] section-body-b0 | [^\x00-\x08\x0B-\x0C\x0E-\x1F\x7F# PLANFIDRETCOYMVSXBWK] section-body-b0)?
33
+ section-body-b29 ::= ("#" section-body-b1 | [ PLNFIDRETCOYMVSXBWK] section-body-b0 | "A" section-body-b30 | [^\x00-\x08\x0B-\x0C\x0E-\x1F\x7F# PLANFIDRETCOYMVSXBWK] section-body-b0)?
34
+ section-body-b30 ::= ("#" section-body-b1 | [ PLANFIDETCOYMVSXBWK] section-body-b0 | "R" section-body-b31 | [^\x00-\x08\x0B-\x0C\x0E-\x1F\x7F# PLANFIDRETCOYMVSXBWK] section-body-b0)?
35
+ section-body-b31 ::= ("#" section-body-b1 | [ PLANFIDRTCOYMVSXBWK] section-body-b0 | [^\x00-\x08\x0B-\x0C\x0E-\x1F\x7F# PLANFIDRETCOYMVSXBWK] section-body-b0)?
36
+ section-body-b32 ::= ("#" section-body-b1 | [ PLANFIDRETCYMVSXBWK] section-body-b0 | "O" section-body-b33 | [^\x00-\x08\x0B-\x0C\x0E-\x1F\x7F# PLANFIDRETCOYMVSXBWK] section-body-b0)?
37
+ section-body-b33 ::= ("#" section-body-b1 | [ PLANFIDETCOYMVSXBWK] section-body-b0 | "R" section-body-b34 | [^\x00-\x08\x0B-\x0C\x0E-\x1F\x7F# PLANFIDRETCOYMVSXBWK] section-body-b0)?
38
+ section-body-b34 ::= ("#" section-body-b1 | [ PLANFIDRETCOYMVSXBW] section-body-b0 | [^\x00-\x08\x0B-\x0C\x0E-\x1F\x7F# PLANFIDRETCOYMVSXBWK] section-body-b0)?
39
+ section-body-b35 ::= ("#" section-body-b1 | [ PLANFIDETCOYMVSXBWK] section-body-b0 | "R" section-body-b36 | [^\x00-\x08\x0B-\x0C\x0E-\x1F\x7F# PLANFIDRETCOYMVSXBWK] section-body-b0)?
40
+ section-body-b36 ::= ("#" section-body-b1 | [ PLANFIDRETCOYMVSXBW] section-body-b0 | [^\x00-\x08\x0B-\x0C\x0E-\x1F\x7F# PLANFIDRETCOYMVSXBWK] section-body-b0)?
41
+ section-body-b37 ::= ("#" section-body-b1 | [ PLANFDRETCOYMVSXBWK] section-body-b0 | "I" section-body-b38 | [^\x00-\x08\x0B-\x0C\x0E-\x1F\x7F# PLANFIDRETCOYMVSXBWK] section-body-b0)?
42
+ section-body-b38 ::= ("#" section-body-b1 | [ PANFIDRETCOYMVSXBWK] section-body-b0 | "L" section-body-b39 | [^\x00-\x08\x0B-\x0C\x0E-\x1F\x7F# PLANFIDRETCOYMVSXBWK] section-body-b0)?
43
+ section-body-b39 ::= ("#" section-body-b1 | [ PANFIDRETCOYMVSXBWK] section-body-b0 | [^\x00-\x08\x0B-\x0C\x0E-\x1F\x7F# PLANFIDRETCOYMVSXBWK] section-body-b0)?
47
44
  section-body-ne ::= "#" section-body-b1 | [ PLANFIDRETCOYMVSXBWK] section-body-b0 | [^\x00-\x08\x0B-\x0C\x0E-\x1F\x7F# PLANFIDRETCOYMVSXBWK] section-body-b0
48
45
  annotation-body-b0 ::= ("-" annotation-body-b1 | ">" annotation-body-b0 | [^\x00-\x08\x0B-\x0C\x0E-\x1F\x7F\n\r>-] annotation-body-b0)?
49
46
  annotation-body-b1 ::= ("-" annotation-body-b2 | ">" annotation-body-b0 | [^\x00-\x08\x0B-\x0C\x0E-\x1F\x7F\n\r>-] annotation-body-b0)?
50
47
  annotation-body-b2 ::= ("-" annotation-body-b2 | [^\x00-\x08\x0B-\x0C\x0E-\x1F\x7F\n\r>-] annotation-body-b0)?
51
48
  annotation-body-ne ::= "-" annotation-body-b1 | ">" annotation-body-b0 | [^\x00-\x08\x0B-\x0C\x0E-\x1F\x7F\n\r>-] annotation-body-b0
52
49
  pattern-body-ne ::= [^\x00-\x08\x0B-\x0C\x0E-\x1F\x7F\n\r:#] [^\x00-\x08\x0B-\x0C\x0E-\x1F\x7F\n\r]*
53
- log-selection ::= (curation-tags-slot log-target-slot? | log-target-slot)?
54
- plan ::= "# PLAN0" annotation-slot? "\n" section-body-ne "\n"
55
- find ::= "## FIND0" add-tags-slot? target-slot line-slot? annotation-slot? "\n" | "## FIND0" add-tags-slot? target-slot line-slot? annotation-slot? "\n" pattern-body-ne "\n"
56
- read ::= "## READ0" add-tags-slot? target-slot text-line-slot? annotation-slot? "\n" | "## READ0" add-tags-slot? target-slot text-line-slot? annotation-slot? "\n" pattern-body-ne "\n"
57
- edit ::= "## EDIT0" add-tags-slot? target-slot text-line-slot? annotation-slot? "\n" | "## EDIT0" add-tags-slot? target-slot text-line-slot? annotation-slot? "\n" section-body-ne "\n"
58
- copy ::= "## COPY0" add-tags-slot? target-slot text-line-slot? target-slot text-line-slot? annotation-slot? "\n"
59
- move ::= "## MOVE0" add-tags-slot? target-slot text-line-slot? target-slot text-line-slot? annotation-slot? "\n"
60
- open ::= "## OPEN0" log-selection text-line-slot? annotation-slot? "\n" | "## OPEN0" log-selection text-line-slot? annotation-slot? "\n" pattern-body-ne "\n"
61
- fold ::= "## FOLD0" log-selection text-line-slot? annotation-slot? "\n" | "## FOLD0" log-selection text-line-slot? annotation-slot? "\n" pattern-body-ne "\n"
62
- exec ::= "## EXEC0" exec-slot? target-slot? line-slot? annotation-slot? "\n" | "## EXEC0" exec-slot? target-slot? line-slot? annotation-slot? "\n" section-body-ne "\n"
63
- bare ::= "## BARE0" add-tags-slot? annotation-slot? "\n" section-body-ne "\n"
64
- work ::= "## WORK0" branch-slot? target-slot annotation-slot? "\n" section-body-ne "\n"
65
- fork ::= "## FORK0" branch-slot? target-slot annotation-slot? "\n" section-body-ne "\n"
66
- kill ::= "## KILL0" kill-slot? target-slot annotation-slot? "\n"
67
- send-mid ::= "## SEND0" status-mid-slot target-slot? annotation-slot? "\n" | "## SEND0" status-mid-slot target-slot? annotation-slot? "\n" section-body-ne "\n" | "## SEND0" target-slot? annotation-slot? "\n" | "## SEND0" target-slot? annotation-slot? "\n" section-body-ne "\n"
68
- send-102 ::= "## SEND0 [102]" target-slot? annotation-slot? "\n" section-body-ne
69
- send-200 ::= "## SEND0 [200]" target-slot? annotation-slot? "\n" section-body-ne
70
- send-202 ::= "## SEND0 [202]" target-slot? park-slot? annotation-slot? "\n" section-body-ne
71
- send-499 ::= "## SEND0 [499]" target-slot? annotation-slot? "\n" section-body-ne
50
+ plan ::= "## PLAN0" annotation-slot? "\n" section-body-ne "\n"
51
+ find ::= "### FIND0" target-slot line-slot? annotation-slot? "\n" | "### FIND0" target-slot line-slot? annotation-slot? "\n" pattern-body-ne "\n"
52
+ read ::= "### READ0" target-slot text-line-slot? annotation-slot? "\n" | "### READ0" target-slot text-line-slot? annotation-slot? "\n" pattern-body-ne "\n"
53
+ edit ::= "### EDIT0" target-slot text-line-slot? annotation-slot? "\n" | "### EDIT0" target-slot text-line-slot? annotation-slot? "\n" section-body-ne "\n"
54
+ copy ::= "### COPY0" target-slot text-line-slot? target-slot text-line-slot? annotation-slot? "\n"
55
+ move ::= "### MOVE0" target-slot text-line-slot? target-slot text-line-slot? annotation-slot? "\n"
56
+ exec ::= "### EXEC0" executor-slot? exec-program? line-slot? annotation-slot? "\n" | "### EXEC0" executor-slot? exec-program? line-slot? annotation-slot? "\n" section-body-ne "\n"
57
+ bare ::= "### BARE0" annotation-slot? "\n" section-body-ne "\n"
58
+ work ::= "### WORK0" target-slot annotation-slot? "\n" section-body-ne "\n"
59
+ fork ::= "### FORK0" target-slot annotation-slot? "\n" section-body-ne "\n"
60
+ kill ::= "### KILL0" target-slot text-line-slot? annotation-slot? "\n" | "### KILL0" target-slot text-line-slot? annotation-slot? "\n" pattern-body-ne "\n"
61
+ send-mid ::= "### SEND0" recipient-slot annotation-slot? "\n" | "### SEND0" recipient-slot annotation-slot? "\n" section-body-ne "\n" | "### SEND0" annotation-slot? "\n" | "### SEND0" annotation-slot? "\n" section-body-ne "\n"
62
+ send-102 ::= "### SEND0 (NEXT)" annotation-slot? "\n" section-body-ne
63
+ send-200 ::= "### SEND0 (TERM)" annotation-slot? "\n" section-body-ne
64
+ send-202 ::= "### SEND0 (WAIT)" park-slot? annotation-slot? "\n" section-body-ne
65
+ send-499 ::= "### SEND0 (FAIL)" annotation-slot? "\n" section-body-ne
72
66
  send-final-any ::= send-102 | send-200 | send-202 | send-499
73
67
  send-final-first ::= send-200 | send-202 | send-499
74
- op-statement ::= find | read | edit | copy | move | open | fold | exec | bare | work | fork | kill
68
+ op-statement ::= find | read | edit | copy | move | exec | bare | work | fork | kill
75
69
  tail-0 ::= send-mid tail-1 | op-statement tail-1 | send-final-first
76
70
  tail-1 ::= send-mid tail-2 | op-statement tail-2 | send-final-any
77
71
  tail-2 ::= send-mid tail-3 | op-statement tail-3 | send-final-any
@@ -116,37 +110,20 @@ rz-chan-b24 ::= ("<" rz-chan-b1 | "|" rz-chan-b25 | [chanel>toug\n] rz-chan-b0 |
116
110
  rz-chan-b25 ::= ("<" rz-chan-b1 | [|chaneltoug\n] rz-chan-b0 | [^\x00-\x08\x0B-\x0C\x0E-\x1F\x7F<|chanel>toug\n] rz-chan-b0)?
117
111
  rz-chan-first ::= [0-9A-Za-z]
118
112
  channel ::= "<|channel>thought\n" rz-chan-first rz-chan-b0 "<channel|>"
119
- turn ::= plan tail-0
120
- framed-turn ::= turn | "```plurnk\n" turn "\n```"
113
+ turn ::= plan tail-0 | tail-0
114
+ framed-turn ::= turn | "```example\n" turn "\n```" | "```plurnk\n" turn "\n```"
121
115
  root-gemma ::= channel sep framed-turn
122
- add-tags-slot ::= " " add-tags
123
- curation-tags-slot ::= " " curation-tags
124
- log-target-slot ::= " (log:" target-atom+ ")"
125
116
  target-slot ::= " " target metadata-slot*
117
+ recipient-slot ::= " (" scheme "://" target-inner ")" metadata-slot*
118
+ scheme ::= [a-z] [a-z0-9+.-]*
119
+ executor-name ::= [0-9A-Za-z_.+-] [0-9A-Za-z_.+-]*
120
+ executor-slot ::= " [" executor-name "]"
121
+ exec-program ::= target-slot | metadata-slot metadata-slot*
126
122
  metadata-slot ::= " {" [^\x00-\x08\x0B-\x0C\x0E-\x1F\x7F\n\r{}]* "}"
127
123
  line-slot ::= " " line
128
124
  text-line-slot ::= " " text-line
129
- exec-slot ::= " " exec-sig
130
- branch-slot ::= " " branch
131
- kill-slot ::= " " kill-sig
132
- status-mid-slot ::= " [" status-mid "]"
133
125
  park-slot ::= " " park
134
126
  annotation-slot ::= " <!-- " annotation-body-ne " -->"
135
- status-mid ::= [05-9] [0-9] [0-9] | "1" status-mid-1 | "2" status-mid-2 | "3" status-mid-3 | "4" status-mid-4
136
- status-mid-1 ::= "0" [0-13-9] | [1-9] [0-9]
137
- status-mid-2 ::= "0" [13-9] | [1-9] [0-9]
138
- status-mid-3 ::= "0" [0-9] | [1-9] [0-9]
139
- status-mid-4 ::= "9" [0-8] | [0-8] [0-9]
140
- add-tags ::= "[" add-tag add-tag-rest* "]"
141
- curation-tags ::= "[" curation-term curation-term-rest* "]"
142
- branch ::= "[" [A-Za-z0-9_./-]+ "]"
143
- tag ::= [A-Za-z0-9_.] [A-Za-z0-9_.+-]*
144
- add-tag ::= "+" tag
145
- remove-tag ::= "-" tag
146
- signed-tag ::= add-tag | remove-tag
147
- curation-term ::= tag | signed-tag
148
- add-tag-rest ::= "," add-tag
149
- curation-term-rest ::= "," curation-term
150
127
  target ::= "(" target-inner ")"
151
128
  target-inner ::= target-atom+
152
129
  target-atom ::= [^\x00-\x08\x0B-\x0C\x0E-\x1F\x7F\\()<\r\n] | target-escape
@@ -162,5 +139,3 @@ frac ::= "." [0-9]+
162
139
  park ::= "<" park-t park-poll? ">"
163
140
  park-t ::= "-1" | [0-9]+
164
141
  park-poll ::= "," [0-9]+
165
- exec-sig ::= "[" [a-z] [a-z0-9_-]* "]"
166
- kill-sig ::= "[" [0-9] [0-9]? "]"
@@ -2,76 +2,70 @@
2
2
  # @plurnk-response-root root-qwen-response
3
3
  root ::= root-qwen
4
4
  section-body-b0 ::= ("#" section-body-b1 | [ PLANFIDRETCOYMVSXBWK] section-body-b0 | [^\x00-\x08\x0B-\x0C\x0E-\x1F\x7F# PLANFIDRETCOYMVSXBWK] section-body-b0)?
5
- section-body-b1 ::= ("#" section-body-b6 | " " section-body-b2 | [PLANFIDRETCOYMVSXBWK] section-body-b0 | [^\x00-\x08\x0B-\x0C\x0E-\x1F\x7F# PLANFIDRETCOYMVSXBWK] section-body-b0)?
6
- section-body-b2 ::= ("#" section-body-b1 | [ LANFIDRETCOYMVSXBWK] section-body-b0 | "P" section-body-b3 | [^\x00-\x08\x0B-\x0C\x0E-\x1F\x7F# PLANFIDRETCOYMVSXBWK] section-body-b0)?
7
- section-body-b3 ::= ("#" section-body-b1 | [ PANFIDRETCOYMVSXBWK] section-body-b0 | "L" section-body-b4 | [^\x00-\x08\x0B-\x0C\x0E-\x1F\x7F# PLANFIDRETCOYMVSXBWK] section-body-b0)?
8
- section-body-b4 ::= ("#" section-body-b1 | [ PLNFIDRETCOYMVSXBWK] section-body-b0 | "A" section-body-b5 | [^\x00-\x08\x0B-\x0C\x0E-\x1F\x7F# PLANFIDRETCOYMVSXBWK] section-body-b0)?
9
- section-body-b5 ::= ("#" section-body-b1 | [ PLAFIDRETCOYMVSXBWK] section-body-b0 | [^\x00-\x08\x0B-\x0C\x0E-\x1F\x7F# PLANFIDRETCOYMVSXBWK] section-body-b0)?
10
- section-body-b6 ::= ("#" section-body-b6 | " " section-body-b7 | [PLANFIDRETCOYMVSXBWK] section-body-b0 | [^\x00-\x08\x0B-\x0C\x0E-\x1F\x7F# PLANFIDRETCOYMVSXBWK] section-body-b0)?
11
- section-body-b7 ::= ("#" section-body-b1 | [ LANIDTYVX] section-body-b0 | "P" section-body-b3 | "F" section-body-b8 | "R" section-body-b11 | "E" section-body-b14 | "C" section-body-b17 | "O" section-body-b23 | "M" section-body-b20 | "S" section-body-b28 | "B" section-body-b33 | "W" section-body-b36 | "K" section-body-b40 | [^\x00-\x08\x0B-\x0C\x0E-\x1F\x7F# PLANFIDRETCOYMVSXBWK] section-body-b0)?
12
- section-body-b8 ::= ("#" section-body-b1 | [ PLANFDRETCYMVSXBWK] section-body-b0 | "I" section-body-b9 | "O" section-body-b26 | [^\x00-\x08\x0B-\x0C\x0E-\x1F\x7F# PLANFIDRETCOYMVSXBWK] section-body-b0)?
13
- section-body-b9 ::= ("#" section-body-b1 | [ PLAFIDRETCOYMVSXBWK] section-body-b0 | "N" section-body-b10 | [^\x00-\x08\x0B-\x0C\x0E-\x1F\x7F# PLANFIDRETCOYMVSXBWK] section-body-b0)?
14
- section-body-b10 ::= ("#" section-body-b1 | [ PLANFIRETCOYMVSXBWK] section-body-b0 | [^\x00-\x08\x0B-\x0C\x0E-\x1F\x7F# PLANFIDRETCOYMVSXBWK] section-body-b0)?
15
- section-body-b11 ::= ("#" section-body-b1 | [ PLANFIDRTCOYMVSXBWK] section-body-b0 | "E" section-body-b12 | [^\x00-\x08\x0B-\x0C\x0E-\x1F\x7F# PLANFIDRETCOYMVSXBWK] section-body-b0)?
16
- section-body-b12 ::= ("#" section-body-b1 | [ PLNFIDRETCOYMVSXBWK] section-body-b0 | "A" section-body-b13 | [^\x00-\x08\x0B-\x0C\x0E-\x1F\x7F# PLANFIDRETCOYMVSXBWK] section-body-b0)?
17
- section-body-b13 ::= ("#" section-body-b1 | [ PLANFIRETCOYMVSXBWK] section-body-b0 | [^\x00-\x08\x0B-\x0C\x0E-\x1F\x7F# PLANFIDRETCOYMVSXBWK] section-body-b0)?
18
- section-body-b14 ::= ("#" section-body-b1 | [ PLANFIRETCOYMVSBWK] section-body-b0 | "D" section-body-b15 | "X" section-body-b31 | [^\x00-\x08\x0B-\x0C\x0E-\x1F\x7F# PLANFIDRETCOYMVSXBWK] section-body-b0)?
19
- section-body-b15 ::= ("#" section-body-b1 | [ PLANFDRETCOYMVSXBWK] section-body-b0 | "I" section-body-b16 | [^\x00-\x08\x0B-\x0C\x0E-\x1F\x7F# PLANFIDRETCOYMVSXBWK] section-body-b0)?
20
- section-body-b16 ::= ("#" section-body-b1 | [ PLANFIDRECOYMVSXBWK] section-body-b0 | [^\x00-\x08\x0B-\x0C\x0E-\x1F\x7F# PLANFIDRETCOYMVSXBWK] section-body-b0)?
21
- section-body-b17 ::= ("#" section-body-b1 | [ PLANFIDRETCYMVSXBWK] section-body-b0 | "O" section-body-b18 | [^\x00-\x08\x0B-\x0C\x0E-\x1F\x7F# PLANFIDRETCOYMVSXBWK] section-body-b0)?
22
- section-body-b18 ::= ("#" section-body-b1 | [ LANFIDRETCOYMVSXBWK] section-body-b0 | "P" section-body-b19 | [^\x00-\x08\x0B-\x0C\x0E-\x1F\x7F# PLANFIDRETCOYMVSXBWK] section-body-b0)?
23
- section-body-b19 ::= ("#" section-body-b1 | [ PLANFIDRETCOMVSXBWK] section-body-b0 | [^\x00-\x08\x0B-\x0C\x0E-\x1F\x7F# PLANFIDRETCOYMVSXBWK] section-body-b0)?
24
- section-body-b20 ::= ("#" section-body-b1 | [ PLANFIDRETCYMVSXBWK] section-body-b0 | "O" section-body-b21 | [^\x00-\x08\x0B-\x0C\x0E-\x1F\x7F# PLANFIDRETCOYMVSXBWK] section-body-b0)?
25
- section-body-b21 ::= ("#" section-body-b1 | [ PLANFIDRETCOYMSXBWK] section-body-b0 | "V" section-body-b22 | [^\x00-\x08\x0B-\x0C\x0E-\x1F\x7F# PLANFIDRETCOYMVSXBWK] section-body-b0)?
26
- section-body-b22 ::= ("#" section-body-b1 | [ PLANFIDRTCOYMVSXBWK] section-body-b0 | [^\x00-\x08\x0B-\x0C\x0E-\x1F\x7F# PLANFIDRETCOYMVSXBWK] section-body-b0)?
27
- section-body-b23 ::= ("#" section-body-b1 | [ LANFIDRETCOYMVSXBWK] section-body-b0 | "P" section-body-b24 | [^\x00-\x08\x0B-\x0C\x0E-\x1F\x7F# PLANFIDRETCOYMVSXBWK] section-body-b0)?
5
+ section-body-b1 ::= ("#" section-body-b2 | [ PLANFIDRETCOYMVSXBWK] section-body-b0 | [^\x00-\x08\x0B-\x0C\x0E-\x1F\x7F# PLANFIDRETCOYMVSXBWK] section-body-b0)?
6
+ section-body-b2 ::= ("#" section-body-b7 | " " section-body-b3 | [PLANFIDRETCOYMVSXBWK] section-body-b0 | [^\x00-\x08\x0B-\x0C\x0E-\x1F\x7F# PLANFIDRETCOYMVSXBWK] section-body-b0)?
7
+ section-body-b3 ::= ("#" section-body-b1 | [ LANFIDRETCOYMVSXBWK] section-body-b0 | "P" section-body-b4 | [^\x00-\x08\x0B-\x0C\x0E-\x1F\x7F# PLANFIDRETCOYMVSXBWK] section-body-b0)?
8
+ section-body-b4 ::= ("#" section-body-b1 | [ PANFIDRETCOYMVSXBWK] section-body-b0 | "L" section-body-b5 | [^\x00-\x08\x0B-\x0C\x0E-\x1F\x7F# PLANFIDRETCOYMVSXBWK] section-body-b0)?
9
+ section-body-b5 ::= ("#" section-body-b1 | [ PLNFIDRETCOYMVSXBWK] section-body-b0 | "A" section-body-b6 | [^\x00-\x08\x0B-\x0C\x0E-\x1F\x7F# PLANFIDRETCOYMVSXBWK] section-body-b0)?
10
+ section-body-b6 ::= ("#" section-body-b1 | [ PLAFIDRETCOYMVSXBWK] section-body-b0 | [^\x00-\x08\x0B-\x0C\x0E-\x1F\x7F# PLANFIDRETCOYMVSXBWK] section-body-b0)?
11
+ section-body-b7 ::= ("#" section-body-b7 | " " section-body-b8 | [PLANFIDRETCOYMVSXBWK] section-body-b0 | [^\x00-\x08\x0B-\x0C\x0E-\x1F\x7F# PLANFIDRETCOYMVSXBWK] section-body-b0)?
12
+ section-body-b8 ::= ("#" section-body-b1 | [ LANIDTOYVX] section-body-b0 | "P" section-body-b4 | "F" section-body-b9 | "R" section-body-b12 | "E" section-body-b15 | "C" section-body-b18 | "M" section-body-b21 | "S" section-body-b24 | "B" section-body-b29 | "W" section-body-b32 | "K" section-body-b37 | [^\x00-\x08\x0B-\x0C\x0E-\x1F\x7F# PLANFIDRETCOYMVSXBWK] section-body-b0)?
13
+ section-body-b9 ::= ("#" section-body-b1 | [ PLANFDRETCYMVSXBWK] section-body-b0 | "I" section-body-b10 | "O" section-body-b35 | [^\x00-\x08\x0B-\x0C\x0E-\x1F\x7F# PLANFIDRETCOYMVSXBWK] section-body-b0)?
14
+ section-body-b10 ::= ("#" section-body-b1 | [ PLAFIDRETCOYMVSXBWK] section-body-b0 | "N" section-body-b11 | [^\x00-\x08\x0B-\x0C\x0E-\x1F\x7F# PLANFIDRETCOYMVSXBWK] section-body-b0)?
15
+ section-body-b11 ::= ("#" section-body-b1 | [ PLANFIRETCOYMVSXBWK] section-body-b0 | [^\x00-\x08\x0B-\x0C\x0E-\x1F\x7F# PLANFIDRETCOYMVSXBWK] section-body-b0)?
16
+ section-body-b12 ::= ("#" section-body-b1 | [ PLANFIDRTCOYMVSXBWK] section-body-b0 | "E" section-body-b13 | [^\x00-\x08\x0B-\x0C\x0E-\x1F\x7F# PLANFIDRETCOYMVSXBWK] section-body-b0)?
17
+ section-body-b13 ::= ("#" section-body-b1 | [ PLNFIDRETCOYMVSXBWK] section-body-b0 | "A" section-body-b14 | [^\x00-\x08\x0B-\x0C\x0E-\x1F\x7F# PLANFIDRETCOYMVSXBWK] section-body-b0)?
18
+ section-body-b14 ::= ("#" section-body-b1 | [ PLANFIRETCOYMVSXBWK] section-body-b0 | [^\x00-\x08\x0B-\x0C\x0E-\x1F\x7F# PLANFIDRETCOYMVSXBWK] section-body-b0)?
19
+ section-body-b15 ::= ("#" section-body-b1 | [ PLANFIRETCOYMVSBWK] section-body-b0 | "D" section-body-b16 | "X" section-body-b27 | [^\x00-\x08\x0B-\x0C\x0E-\x1F\x7F# PLANFIDRETCOYMVSXBWK] section-body-b0)?
20
+ section-body-b16 ::= ("#" section-body-b1 | [ PLANFDRETCOYMVSXBWK] section-body-b0 | "I" section-body-b17 | [^\x00-\x08\x0B-\x0C\x0E-\x1F\x7F# PLANFIDRETCOYMVSXBWK] section-body-b0)?
21
+ section-body-b17 ::= ("#" section-body-b1 | [ PLANFIDRECOYMVSXBWK] section-body-b0 | [^\x00-\x08\x0B-\x0C\x0E-\x1F\x7F# PLANFIDRETCOYMVSXBWK] section-body-b0)?
22
+ section-body-b18 ::= ("#" section-body-b1 | [ PLANFIDRETCYMVSXBWK] section-body-b0 | "O" section-body-b19 | [^\x00-\x08\x0B-\x0C\x0E-\x1F\x7F# PLANFIDRETCOYMVSXBWK] section-body-b0)?
23
+ section-body-b19 ::= ("#" section-body-b1 | [ LANFIDRETCOYMVSXBWK] section-body-b0 | "P" section-body-b20 | [^\x00-\x08\x0B-\x0C\x0E-\x1F\x7F# PLANFIDRETCOYMVSXBWK] section-body-b0)?
24
+ section-body-b20 ::= ("#" section-body-b1 | [ PLANFIDRETCOMVSXBWK] section-body-b0 | [^\x00-\x08\x0B-\x0C\x0E-\x1F\x7F# PLANFIDRETCOYMVSXBWK] section-body-b0)?
25
+ section-body-b21 ::= ("#" section-body-b1 | [ PLANFIDRETCYMVSXBWK] section-body-b0 | "O" section-body-b22 | [^\x00-\x08\x0B-\x0C\x0E-\x1F\x7F# PLANFIDRETCOYMVSXBWK] section-body-b0)?
26
+ section-body-b22 ::= ("#" section-body-b1 | [ PLANFIDRETCOYMSXBWK] section-body-b0 | "V" section-body-b23 | [^\x00-\x08\x0B-\x0C\x0E-\x1F\x7F# PLANFIDRETCOYMVSXBWK] section-body-b0)?
27
+ section-body-b23 ::= ("#" section-body-b1 | [ PLANFIDRTCOYMVSXBWK] section-body-b0 | [^\x00-\x08\x0B-\x0C\x0E-\x1F\x7F# PLANFIDRETCOYMVSXBWK] section-body-b0)?
28
28
  section-body-b24 ::= ("#" section-body-b1 | [ PLANFIDRTCOYMVSXBWK] section-body-b0 | "E" section-body-b25 | [^\x00-\x08\x0B-\x0C\x0E-\x1F\x7F# PLANFIDRETCOYMVSXBWK] section-body-b0)?
29
- section-body-b25 ::= ("#" section-body-b1 | [ PLAFIDRETCOYMVSXBWK] section-body-b0 | [^\x00-\x08\x0B-\x0C\x0E-\x1F\x7F# PLANFIDRETCOYMVSXBWK] section-body-b0)?
30
- section-body-b26 ::= ("#" section-body-b1 | [ PANFIDETCOYMVSXBWK] section-body-b0 | "L" section-body-b27 | "R" section-body-b39 | [^\x00-\x08\x0B-\x0C\x0E-\x1F\x7F# PLANFIDRETCOYMVSXBWK] section-body-b0)?
31
- section-body-b27 ::= ("#" section-body-b1 | [ PLANFIRETCOYMVSXBWK] section-body-b0 | [^\x00-\x08\x0B-\x0C\x0E-\x1F\x7F# PLANFIDRETCOYMVSXBWK] section-body-b0)?
32
- section-body-b28 ::= ("#" section-body-b1 | [ PLANFIDRTCOYMVSXBWK] section-body-b0 | "E" section-body-b29 | [^\x00-\x08\x0B-\x0C\x0E-\x1F\x7F# PLANFIDRETCOYMVSXBWK] section-body-b0)?
33
- section-body-b29 ::= ("#" section-body-b1 | [ PLAFIDRETCOYMVSXBWK] section-body-b0 | "N" section-body-b30 | [^\x00-\x08\x0B-\x0C\x0E-\x1F\x7F# PLANFIDRETCOYMVSXBWK] section-body-b0)?
34
- section-body-b30 ::= ("#" section-body-b1 | [ PLANFIRETCOYMVSXBWK] section-body-b0 | [^\x00-\x08\x0B-\x0C\x0E-\x1F\x7F# PLANFIDRETCOYMVSXBWK] section-body-b0)?
35
- section-body-b31 ::= ("#" section-body-b1 | [ PLANFIDRTCOYMVSXBWK] section-body-b0 | "E" section-body-b32 | [^\x00-\x08\x0B-\x0C\x0E-\x1F\x7F# PLANFIDRETCOYMVSXBWK] section-body-b0)?
36
- section-body-b32 ::= ("#" section-body-b1 | [ PLANFIDRETOYMVSXBWK] section-body-b0 | [^\x00-\x08\x0B-\x0C\x0E-\x1F\x7F# PLANFIDRETCOYMVSXBWK] section-body-b0)?
37
- section-body-b33 ::= ("#" section-body-b1 | [ PLNFIDRETCOYMVSXBWK] section-body-b0 | "A" section-body-b34 | [^\x00-\x08\x0B-\x0C\x0E-\x1F\x7F# PLANFIDRETCOYMVSXBWK] section-body-b0)?
38
- section-body-b34 ::= ("#" section-body-b1 | [ PLANFIDETCOYMVSXBWK] section-body-b0 | "R" section-body-b35 | [^\x00-\x08\x0B-\x0C\x0E-\x1F\x7F# PLANFIDRETCOYMVSXBWK] section-body-b0)?
39
- section-body-b35 ::= ("#" section-body-b1 | [ PLANFIDRTCOYMVSXBWK] section-body-b0 | [^\x00-\x08\x0B-\x0C\x0E-\x1F\x7F# PLANFIDRETCOYMVSXBWK] section-body-b0)?
40
- section-body-b36 ::= ("#" section-body-b1 | [ PLANFIDRETCYMVSXBWK] section-body-b0 | "O" section-body-b37 | [^\x00-\x08\x0B-\x0C\x0E-\x1F\x7F# PLANFIDRETCOYMVSXBWK] section-body-b0)?
41
- section-body-b37 ::= ("#" section-body-b1 | [ PLANFIDETCOYMVSXBWK] section-body-b0 | "R" section-body-b38 | [^\x00-\x08\x0B-\x0C\x0E-\x1F\x7F# PLANFIDRETCOYMVSXBWK] section-body-b0)?
42
- section-body-b38 ::= ("#" section-body-b1 | [ PLANFIDRETCOYMVSXBW] section-body-b0 | [^\x00-\x08\x0B-\x0C\x0E-\x1F\x7F# PLANFIDRETCOYMVSXBWK] section-body-b0)?
43
- section-body-b39 ::= ("#" section-body-b1 | [ PLANFIDRETCOYMVSXBW] section-body-b0 | [^\x00-\x08\x0B-\x0C\x0E-\x1F\x7F# PLANFIDRETCOYMVSXBWK] section-body-b0)?
44
- section-body-b40 ::= ("#" section-body-b1 | [ PLANFDRETCOYMVSXBWK] section-body-b0 | "I" section-body-b41 | [^\x00-\x08\x0B-\x0C\x0E-\x1F\x7F# PLANFIDRETCOYMVSXBWK] section-body-b0)?
45
- section-body-b41 ::= ("#" section-body-b1 | [ PANFIDRETCOYMVSXBWK] section-body-b0 | "L" section-body-b42 | [^\x00-\x08\x0B-\x0C\x0E-\x1F\x7F# PLANFIDRETCOYMVSXBWK] section-body-b0)?
46
- section-body-b42 ::= ("#" section-body-b1 | [ PANFIDRETCOYMVSXBWK] section-body-b0 | [^\x00-\x08\x0B-\x0C\x0E-\x1F\x7F# PLANFIDRETCOYMVSXBWK] section-body-b0)?
29
+ section-body-b25 ::= ("#" section-body-b1 | [ PLAFIDRETCOYMVSXBWK] section-body-b0 | "N" section-body-b26 | [^\x00-\x08\x0B-\x0C\x0E-\x1F\x7F# PLANFIDRETCOYMVSXBWK] section-body-b0)?
30
+ section-body-b26 ::= ("#" section-body-b1 | [ PLANFIRETCOYMVSXBWK] section-body-b0 | [^\x00-\x08\x0B-\x0C\x0E-\x1F\x7F# PLANFIDRETCOYMVSXBWK] section-body-b0)?
31
+ section-body-b27 ::= ("#" section-body-b1 | [ PLANFIDRTCOYMVSXBWK] section-body-b0 | "E" section-body-b28 | [^\x00-\x08\x0B-\x0C\x0E-\x1F\x7F# PLANFIDRETCOYMVSXBWK] section-body-b0)?
32
+ section-body-b28 ::= ("#" section-body-b1 | [ PLANFIDRETOYMVSXBWK] section-body-b0 | [^\x00-\x08\x0B-\x0C\x0E-\x1F\x7F# PLANFIDRETCOYMVSXBWK] section-body-b0)?
33
+ section-body-b29 ::= ("#" section-body-b1 | [ PLNFIDRETCOYMVSXBWK] section-body-b0 | "A" section-body-b30 | [^\x00-\x08\x0B-\x0C\x0E-\x1F\x7F# PLANFIDRETCOYMVSXBWK] section-body-b0)?
34
+ section-body-b30 ::= ("#" section-body-b1 | [ PLANFIDETCOYMVSXBWK] section-body-b0 | "R" section-body-b31 | [^\x00-\x08\x0B-\x0C\x0E-\x1F\x7F# PLANFIDRETCOYMVSXBWK] section-body-b0)?
35
+ section-body-b31 ::= ("#" section-body-b1 | [ PLANFIDRTCOYMVSXBWK] section-body-b0 | [^\x00-\x08\x0B-\x0C\x0E-\x1F\x7F# PLANFIDRETCOYMVSXBWK] section-body-b0)?
36
+ section-body-b32 ::= ("#" section-body-b1 | [ PLANFIDRETCYMVSXBWK] section-body-b0 | "O" section-body-b33 | [^\x00-\x08\x0B-\x0C\x0E-\x1F\x7F# PLANFIDRETCOYMVSXBWK] section-body-b0)?
37
+ section-body-b33 ::= ("#" section-body-b1 | [ PLANFIDETCOYMVSXBWK] section-body-b0 | "R" section-body-b34 | [^\x00-\x08\x0B-\x0C\x0E-\x1F\x7F# PLANFIDRETCOYMVSXBWK] section-body-b0)?
38
+ section-body-b34 ::= ("#" section-body-b1 | [ PLANFIDRETCOYMVSXBW] section-body-b0 | [^\x00-\x08\x0B-\x0C\x0E-\x1F\x7F# PLANFIDRETCOYMVSXBWK] section-body-b0)?
39
+ section-body-b35 ::= ("#" section-body-b1 | [ PLANFIDETCOYMVSXBWK] section-body-b0 | "R" section-body-b36 | [^\x00-\x08\x0B-\x0C\x0E-\x1F\x7F# PLANFIDRETCOYMVSXBWK] section-body-b0)?
40
+ section-body-b36 ::= ("#" section-body-b1 | [ PLANFIDRETCOYMVSXBW] section-body-b0 | [^\x00-\x08\x0B-\x0C\x0E-\x1F\x7F# PLANFIDRETCOYMVSXBWK] section-body-b0)?
41
+ section-body-b37 ::= ("#" section-body-b1 | [ PLANFDRETCOYMVSXBWK] section-body-b0 | "I" section-body-b38 | [^\x00-\x08\x0B-\x0C\x0E-\x1F\x7F# PLANFIDRETCOYMVSXBWK] section-body-b0)?
42
+ section-body-b38 ::= ("#" section-body-b1 | [ PANFIDRETCOYMVSXBWK] section-body-b0 | "L" section-body-b39 | [^\x00-\x08\x0B-\x0C\x0E-\x1F\x7F# PLANFIDRETCOYMVSXBWK] section-body-b0)?
43
+ section-body-b39 ::= ("#" section-body-b1 | [ PANFIDRETCOYMVSXBWK] section-body-b0 | [^\x00-\x08\x0B-\x0C\x0E-\x1F\x7F# PLANFIDRETCOYMVSXBWK] section-body-b0)?
47
44
  section-body-ne ::= "#" section-body-b1 | [ PLANFIDRETCOYMVSXBWK] section-body-b0 | [^\x00-\x08\x0B-\x0C\x0E-\x1F\x7F# PLANFIDRETCOYMVSXBWK] section-body-b0
48
45
  annotation-body-b0 ::= ("-" annotation-body-b1 | ">" annotation-body-b0 | [^\x00-\x08\x0B-\x0C\x0E-\x1F\x7F\n\r>-] annotation-body-b0)?
49
46
  annotation-body-b1 ::= ("-" annotation-body-b2 | ">" annotation-body-b0 | [^\x00-\x08\x0B-\x0C\x0E-\x1F\x7F\n\r>-] annotation-body-b0)?
50
47
  annotation-body-b2 ::= ("-" annotation-body-b2 | [^\x00-\x08\x0B-\x0C\x0E-\x1F\x7F\n\r>-] annotation-body-b0)?
51
48
  annotation-body-ne ::= "-" annotation-body-b1 | ">" annotation-body-b0 | [^\x00-\x08\x0B-\x0C\x0E-\x1F\x7F\n\r>-] annotation-body-b0
52
49
  pattern-body-ne ::= [^\x00-\x08\x0B-\x0C\x0E-\x1F\x7F\n\r:#] [^\x00-\x08\x0B-\x0C\x0E-\x1F\x7F\n\r]*
53
- log-selection ::= (curation-tags-slot log-target-slot? | log-target-slot)?
54
- plan ::= "# PLAN0" annotation-slot? "\n" section-body-ne "\n"
55
- find ::= "## FIND0" add-tags-slot? target-slot line-slot? annotation-slot? "\n" | "## FIND0" add-tags-slot? target-slot line-slot? annotation-slot? "\n" pattern-body-ne "\n"
56
- read ::= "## READ0" add-tags-slot? target-slot text-line-slot? annotation-slot? "\n" | "## READ0" add-tags-slot? target-slot text-line-slot? annotation-slot? "\n" pattern-body-ne "\n"
57
- edit ::= "## EDIT0" add-tags-slot? target-slot text-line-slot? annotation-slot? "\n" | "## EDIT0" add-tags-slot? target-slot text-line-slot? annotation-slot? "\n" section-body-ne "\n"
58
- copy ::= "## COPY0" add-tags-slot? target-slot text-line-slot? target-slot text-line-slot? annotation-slot? "\n"
59
- move ::= "## MOVE0" add-tags-slot? target-slot text-line-slot? target-slot text-line-slot? annotation-slot? "\n"
60
- open ::= "## OPEN0" log-selection text-line-slot? annotation-slot? "\n" | "## OPEN0" log-selection text-line-slot? annotation-slot? "\n" pattern-body-ne "\n"
61
- fold ::= "## FOLD0" log-selection text-line-slot? annotation-slot? "\n" | "## FOLD0" log-selection text-line-slot? annotation-slot? "\n" pattern-body-ne "\n"
62
- exec ::= "## EXEC0" exec-slot? target-slot? line-slot? annotation-slot? "\n" | "## EXEC0" exec-slot? target-slot? line-slot? annotation-slot? "\n" section-body-ne "\n"
63
- bare ::= "## BARE0" add-tags-slot? annotation-slot? "\n" section-body-ne "\n"
64
- work ::= "## WORK0" branch-slot? target-slot annotation-slot? "\n" section-body-ne "\n"
65
- fork ::= "## FORK0" branch-slot? target-slot annotation-slot? "\n" section-body-ne "\n"
66
- kill ::= "## KILL0" kill-slot? target-slot annotation-slot? "\n"
67
- send-mid ::= "## SEND0" status-mid-slot target-slot? annotation-slot? "\n" | "## SEND0" status-mid-slot target-slot? annotation-slot? "\n" section-body-ne "\n" | "## SEND0" target-slot? annotation-slot? "\n" | "## SEND0" target-slot? annotation-slot? "\n" section-body-ne "\n"
68
- send-102 ::= "## SEND0 [102]" target-slot? annotation-slot? "\n" section-body-ne
69
- send-200 ::= "## SEND0 [200]" target-slot? annotation-slot? "\n" section-body-ne
70
- send-202 ::= "## SEND0 [202]" target-slot? park-slot? annotation-slot? "\n" section-body-ne
71
- send-499 ::= "## SEND0 [499]" target-slot? annotation-slot? "\n" section-body-ne
50
+ plan ::= "## PLAN0" annotation-slot? "\n" section-body-ne "\n"
51
+ find ::= "### FIND0" target-slot line-slot? annotation-slot? "\n" | "### FIND0" target-slot line-slot? annotation-slot? "\n" pattern-body-ne "\n"
52
+ read ::= "### READ0" target-slot text-line-slot? annotation-slot? "\n" | "### READ0" target-slot text-line-slot? annotation-slot? "\n" pattern-body-ne "\n"
53
+ edit ::= "### EDIT0" target-slot text-line-slot? annotation-slot? "\n" | "### EDIT0" target-slot text-line-slot? annotation-slot? "\n" section-body-ne "\n"
54
+ copy ::= "### COPY0" target-slot text-line-slot? target-slot text-line-slot? annotation-slot? "\n"
55
+ move ::= "### MOVE0" target-slot text-line-slot? target-slot text-line-slot? annotation-slot? "\n"
56
+ exec ::= "### EXEC0" executor-slot? exec-program? line-slot? annotation-slot? "\n" | "### EXEC0" executor-slot? exec-program? line-slot? annotation-slot? "\n" section-body-ne "\n"
57
+ bare ::= "### BARE0" annotation-slot? "\n" section-body-ne "\n"
58
+ work ::= "### WORK0" target-slot annotation-slot? "\n" section-body-ne "\n"
59
+ fork ::= "### FORK0" target-slot annotation-slot? "\n" section-body-ne "\n"
60
+ kill ::= "### KILL0" target-slot text-line-slot? annotation-slot? "\n" | "### KILL0" target-slot text-line-slot? annotation-slot? "\n" pattern-body-ne "\n"
61
+ send-mid ::= "### SEND0" recipient-slot annotation-slot? "\n" | "### SEND0" recipient-slot annotation-slot? "\n" section-body-ne "\n" | "### SEND0" annotation-slot? "\n" | "### SEND0" annotation-slot? "\n" section-body-ne "\n"
62
+ send-102 ::= "### SEND0 (NEXT)" annotation-slot? "\n" section-body-ne
63
+ send-200 ::= "### SEND0 (TERM)" annotation-slot? "\n" section-body-ne
64
+ send-202 ::= "### SEND0 (WAIT)" park-slot? annotation-slot? "\n" section-body-ne
65
+ send-499 ::= "### SEND0 (FAIL)" annotation-slot? "\n" section-body-ne
72
66
  send-final-any ::= send-102 | send-200 | send-202 | send-499
73
67
  send-final-first ::= send-200 | send-202 | send-499
74
- op-statement ::= find | read | edit | copy | move | open | fold | exec | bare | work | fork | kill
68
+ op-statement ::= find | read | edit | copy | move | exec | bare | work | fork | kill
75
69
  tail-0 ::= send-mid tail-1 | op-statement tail-1 | send-final-first
76
70
  tail-1 ::= send-mid tail-2 | op-statement tail-2 | send-final-any
77
71
  tail-2 ::= send-mid tail-3 | op-statement tail-3 | send-final-any
@@ -104,38 +98,21 @@ rz-think-b12 ::= ("<" rz-think-b1 | [thin>\n/] rz-think-b0 | "k" rz-think-b13 |
104
98
  rz-think-b13 ::= ("<" rz-think-b1 | [think\n/] rz-think-b0 | [^\x00-\x08\x0B-\x0C\x0E-\x1F\x7F<think>\n/] rz-think-b0)?
105
99
  rz-think-first ::= [0-9A-Za-z]
106
100
  qwen-tail ::= rz-think-first rz-think-b0 "</think>"
107
- turn ::= plan tail-0
108
- framed-turn ::= turn | "```plurnk\n" turn "\n```"
101
+ turn ::= plan tail-0 | tail-0
102
+ framed-turn ::= turn | "```example\n" turn "\n```" | "```plurnk\n" turn "\n```"
109
103
  root-qwen ::= qwen-tail sep framed-turn
110
104
  root-qwen-response ::= "<think>\n" root-qwen
111
- add-tags-slot ::= " " add-tags
112
- curation-tags-slot ::= " " curation-tags
113
- log-target-slot ::= " (log:" target-atom+ ")"
114
105
  target-slot ::= " " target metadata-slot*
106
+ recipient-slot ::= " (" scheme "://" target-inner ")" metadata-slot*
107
+ scheme ::= [a-z] [a-z0-9+.-]*
108
+ executor-name ::= [0-9A-Za-z_.+-] [0-9A-Za-z_.+-]*
109
+ executor-slot ::= " [" executor-name "]"
110
+ exec-program ::= target-slot | metadata-slot metadata-slot*
115
111
  metadata-slot ::= " {" [^\x00-\x08\x0B-\x0C\x0E-\x1F\x7F\n\r{}]* "}"
116
112
  line-slot ::= " " line
117
113
  text-line-slot ::= " " text-line
118
- exec-slot ::= " " exec-sig
119
- branch-slot ::= " " branch
120
- kill-slot ::= " " kill-sig
121
- status-mid-slot ::= " [" status-mid "]"
122
114
  park-slot ::= " " park
123
115
  annotation-slot ::= " <!-- " annotation-body-ne " -->"
124
- status-mid ::= [05-9] [0-9] [0-9] | "1" status-mid-1 | "2" status-mid-2 | "3" status-mid-3 | "4" status-mid-4
125
- status-mid-1 ::= "0" [0-13-9] | [1-9] [0-9]
126
- status-mid-2 ::= "0" [13-9] | [1-9] [0-9]
127
- status-mid-3 ::= "0" [0-9] | [1-9] [0-9]
128
- status-mid-4 ::= "9" [0-8] | [0-8] [0-9]
129
- add-tags ::= "[" add-tag add-tag-rest* "]"
130
- curation-tags ::= "[" curation-term curation-term-rest* "]"
131
- branch ::= "[" [A-Za-z0-9_./-]+ "]"
132
- tag ::= [A-Za-z0-9_.] [A-Za-z0-9_.+-]*
133
- add-tag ::= "+" tag
134
- remove-tag ::= "-" tag
135
- signed-tag ::= add-tag | remove-tag
136
- curation-term ::= tag | signed-tag
137
- add-tag-rest ::= "," add-tag
138
- curation-term-rest ::= "," curation-term
139
116
  target ::= "(" target-inner ")"
140
117
  target-inner ::= target-atom+
141
118
  target-atom ::= [^\x00-\x08\x0B-\x0C\x0E-\x1F\x7F\\()<\r\n] | target-escape
@@ -151,5 +128,3 @@ frac ::= "." [0-9]+
151
128
  park ::= "<" park-t park-poll? ">"
152
129
  park-t ::= "-1" | [0-9]+
153
130
  park-poll ::= "," [0-9]+
154
- exec-sig ::= "[" [a-z] [a-z0-9_-]* "]"
155
- kill-sig ::= "[" [0-9] [0-9]? "]"