@volter/twin-standard 1.0.159 → 1.0.160

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 (52) hide show
  1. package/dist/src/check-sources.js +2 -2
  2. package/dist/src/clients/resend.first-use.json +2 -2
  3. package/dist/src/conformance.d.ts +1 -4
  4. package/dist/src/conformance.js +4 -19
  5. package/dist/src/create-pack.d.ts +1 -1
  6. package/dist/src/create-pack.js +13 -12
  7. package/dist/src/derive.js +3 -3
  8. package/dist/src/index.d.ts +1 -1
  9. package/dist/src/index.js +1 -1
  10. package/dist/src/pack-facts.d.ts +3 -0
  11. package/dist/src/pack-facts.js +36 -1
  12. package/dist/src/protocol-3.js +5 -5
  13. package/dist/src/spec-ir-client.js +1 -1
  14. package/dist/src/spec-ir-commands.js +1 -1
  15. package/dist/src/spec-ir-lines.js +1 -1
  16. package/dist/src/spec-ir-proto.d.ts +1 -1
  17. package/dist/src/spec-patches.js +2 -2
  18. package/dist/src/tools/judge-brief.js +1 -2
  19. package/dist/src/tools/life-coverage.js +2 -2
  20. package/dist/src/tools/packs-root.js +3 -3
  21. package/dist/src/tools/score-pack.js +1 -2
  22. package/dist/src/tools/vendor-examples.js +4 -5
  23. package/dist/src/verdict.js +1 -1
  24. package/dist/src/walk/behavior-journey.js +18 -1
  25. package/dist/src/walk/journey-kit.d.ts +2 -2
  26. package/dist/src/walk/serve-pack.js +6 -0
  27. package/dist/src/walk/shape.d.ts +1 -1
  28. package/dist/src/walk/shape.js +1 -1
  29. package/package.json +6 -4
  30. package/src/check-sources.ts +2 -2
  31. package/src/clients/resend.first-use.json +2 -2
  32. package/src/conformance.ts +4 -19
  33. package/src/create-pack.ts +13 -12
  34. package/src/derive.ts +3 -3
  35. package/src/index.ts +1 -1
  36. package/src/pack-facts.ts +25 -2
  37. package/src/protocol-3.ts +5 -5
  38. package/src/spec-ir-client.ts +1 -1
  39. package/src/spec-ir-commands.ts +1 -1
  40. package/src/spec-ir-lines.ts +1 -1
  41. package/src/spec-ir-proto.ts +1 -1
  42. package/src/spec-patches.ts +2 -2
  43. package/src/tools/judge-brief.ts +1 -2
  44. package/src/tools/life-coverage.ts +2 -2
  45. package/src/tools/packs-root.ts +3 -3
  46. package/src/tools/score-pack.ts +1 -2
  47. package/src/tools/vendor-examples.ts +4 -5
  48. package/src/verdict.ts +1 -1
  49. package/src/walk/behavior-journey.ts +14 -1
  50. package/src/walk/journey-kit.ts +2 -2
  51. package/src/walk/serve-pack.ts +5 -0
  52. package/src/walk/shape.ts +1 -1
@@ -134,7 +134,7 @@ export type JourneyStep = {
134
134
  * whose values the wire encodes (a psdb result's rows, base64 values sliced by per-column lengths) is asserted by
135
135
  * what it holds. Captures read the answer as it came. */
136
136
  view?: string;
137
- /** This step sends a vendor's published example, `<operation>#<title>` (scripts/vendor-examples.ts): its answer
137
+ /** This step sends a vendor's published example, `<operation>#<title>` (tools/vendor-examples.ts): its answer
138
138
  * must hold every key path of the example's answer with the same JSON type. */
139
139
  example?: string;
140
140
  /** Caller-chosen values of the example's named placeholders, compared literally; captures may fill them.
@@ -145,7 +145,7 @@ export type JourneyStep = {
145
145
  exampleDiffers?: Record<string, string>;
146
146
  /** A published body field this step leaves out (a dot path; `a[].b` in each item) → why: a rendered value naming an
147
147
  * object the World does not hold (a Git repository behind an integration). Only a field the request schema does not
148
- * require may be left out (scripts/vendor-examples.ts). */
148
+ * require may be left out (tools/vendor-examples.ts). */
149
149
  unsent?: Record<string, string>;
150
150
  /** answer paths whose value equals something the setup sent without the setup deciding it (a default the vendor applies
151
151
  * that coincides), each with the reason: `vendor-examples.ts --sweep` does not ask them asserted, and the judge reads the reason */
@@ -34,6 +34,11 @@ async function serve(pack: string, options: { root?: string; scenarioPath?: stri
34
34
  catch (cleanup) { throw new AggregateError([error, cleanup], 'Pack startup and backing retirement failed'); }
35
35
  throw error;
36
36
  }
37
+ // a raw-TCP pack's HTTP control seam is the side port its descriptor declares for HTTP (a mail relay's policy door),
38
+ // where the pack's factory names it by that side port's option
39
+ const declared = descriptor?.transport === 'raw-tcp' ? descriptor.sidePorts?.find((side) => (side.scheme ?? 'http') === 'http') : undefined;
40
+ const control = declared ? (server as unknown as Record<string, unknown>)[declared.option] : undefined;
41
+ if (server.inspectPort === undefined && typeof control === 'number') server = { ...server, inspectPort: control };
37
42
  if (!database) return server;
38
43
  const backing = database;
39
44
  let stopping: Promise<void> | undefined;
package/src/walk/shape.ts CHANGED
@@ -284,7 +284,7 @@ export type LineShape = {
284
284
  check: (conn: LineConnection, line: string | null, codes: number[]) => string[];
285
285
  };
286
286
 
287
- /** The SHAPE of a line protocol (scripts/derive-pack.ts from an RFC's command-reply table): each reply a
287
+ /** The SHAPE of a line protocol (the derivation, from an RFC's command-reply table): each reply a
288
288
  * code the spec allows the command it answers, or one any command may answer. A line after an
289
289
  * intermediate reply (DATA's payload, a SASL response) is answered as that command's `then`. */
290
290
  export function lineShape(pkg: string): LineShape | undefined {