@kernlang/core 3.4.3 → 3.4.4

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.
@@ -81,6 +81,19 @@ export interface EntrypointPayload {
81
81
  * warnings on opaque handlers.
82
82
  */
83
83
  bodyFieldsResolved?: boolean;
84
+ /**
85
+ * Coarse type tag per `bodyFields` entry — server-side mirror of
86
+ * `EffectPayload.sentFieldTypes`. Same tag union: `'string' | 'number' |
87
+ * 'boolean' | 'null' | 'object' | 'array' | 'unknown'`. Populated only
88
+ * when `bodyFieldsResolved === true`.
89
+ *
90
+ * Keys are a subset of `bodyFields`. When the handler reads `req.body`
91
+ * with no usable type information (the default Express `any`), every
92
+ * entry is `'unknown'`. The `body-shape-drift` rule's type-aware step
93
+ * skips any pair where either side is `'unknown'` to keep precision
94
+ * high — type-mismatch findings only fire when both ends are typed.
95
+ */
96
+ bodyFieldTypes?: Readonly<Record<string, 'string' | 'number' | 'boolean' | 'null' | 'object' | 'array' | 'unknown'>>;
84
97
  /**
85
98
  * For server route entrypoints only — HTTP error status codes the handler can
86
99
  * explicitly return/raise. Mappers only populate high-signal statuses such as
@@ -1 +1 @@
1
- {"version":3,"file":"concepts.js","sourceRoot":"","sources":["../src/concepts.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AA2WH,4EAA4E;AAE5E,MAAM,UAAU,SAAS,CAAC,QAAgB,EAAE,IAAY,EAAE,MAAc;IACtE,OAAO,GAAG,QAAQ,IAAI,IAAI,IAAI,MAAM,EAAE,CAAC;AACzC,CAAC;AAED,MAAM,UAAU,WAAW,CACzB,IAAY,EACZ,SAAiB,EACjB,QAAgB,EAChB,OAAgB,EAChB,MAAe;IAEf,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE,QAAQ,EAAE,OAAO,EAAE,OAAO,IAAI,SAAS,EAAE,MAAM,EAAE,MAAM,IAAI,QAAQ,EAAE,CAAC;AAClG,CAAC"}
1
+ {"version":3,"file":"concepts.js","sourceRoot":"","sources":["../src/concepts.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAwXH,4EAA4E;AAE5E,MAAM,UAAU,SAAS,CAAC,QAAgB,EAAE,IAAY,EAAE,MAAc;IACtE,OAAO,GAAG,QAAQ,IAAI,IAAI,IAAI,MAAM,EAAE,CAAC;AACzC,CAAC;AAED,MAAM,UAAU,WAAW,CACzB,IAAY,EACZ,SAAiB,EACjB,QAAgB,EAChB,OAAgB,EAChB,MAAe;IAEf,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE,QAAQ,EAAE,OAAO,EAAE,OAAO,IAAI,SAAS,EAAE,MAAM,EAAE,MAAM,IAAI,QAAQ,EAAE,CAAC;AAClG,CAAC"}
package/dist/spec.d.ts CHANGED
@@ -9,7 +9,7 @@
9
9
  * Meta: theme nodes ($ref), pseudo-selectors (:press, :hover)
10
10
  * Targets: Next.js, React+Tailwind, React Native, Express
11
11
  */
12
- export declare const KERN_VERSION = "3.4.3";
12
+ export declare const KERN_VERSION = "3.4.4";
13
13
  export declare const IR_GRAMMAR = "\ndocument = node+\nnode = indent type (SP prop)* (SP style)? (SP themeref)* NL child*\nchild = node\nindent = \" \"*\ntype = ident\nprop = ident \"=\" value\nvalue = quoted | bare\nquoted = '\"' [^\"]* '\"'\nbare = [^\\s{$]+\nstyle = \"{\" spair (\",\" spair)* \"}\"\nspair = sident \":\" svalue | \":\" pseudo \":\" sident \":\" svalue\npseudo = \"press\" | \"hover\" | \"active\" | \"focus\"\nsident = shorthand | ident\nsvalue = [^,}]+\nthemeref = \"$\" ident\nident = [A-Za-z_][A-Za-z0-9_-]*\nSP = \" \"+\nNL = \"\\n\" | EOF\n";
14
14
  export declare const NODE_TYPES: readonly ["screen", "page", "row", "col", "card", "grid", "scroll", "text", "image", "progress", "divider", "codeblock", "section", "form", "button", "input", "textarea", "slider", "toggle", "modal", "list", "item", "tabs", "tab", "header", "link", "theme", "doc", "server", "route", "middleware", "handler", "schema", "stream", "spawn", "timer", "on", "env", "websocket", "params", "auth", "validate", "respond", "trigger", "cli", "command", "arg", "flag", "import", "separator", "table", "thead", "tbody", "tr", "th", "td", "scoreboard", "metric", "spinner", "box", "gradient", "state", "animation", "repl", "guard", "parallel", "dispatch", "then", "each", "let", "local", "return", "throw", "if", "layout", "loading", "metadata", "generateMetadata", "notFound", "redirect", "fetch", "type", "interface", "field", "fn", "const", "destructure", "binding", "element", "mapLit", "mapEntry", "setLit", "setItem", "enum", "member", "union", "variant", "indexer", "overload", "service", "class", "method", "getter", "setter", "singleton", "constructor", "signal", "cleanup", "machine", "transition", "error", "module", "export", "use", "from", "config", "store", "test", "describe", "it", "event", "hook", "provider", "effect", "logic", "memo", "callback", "ref", "context", "prop", "returns", "render", "input-area", "output-area", "text-input", "select-input", "multi-select", "confirm-input", "password-input", "status-message", "alert", "ordered-list", "unordered-list", "focus", "app-exit", "static-log", "newline", "layout-row", "layout-col", "layout-stack", "spacer", "screen-embed", "alternate-screen", "scroll-box", "model", "column", "relation", "repository", "dependency", "inject", "cache", "entry", "invalidate", "conditional", "else", "elseif", "component", "select", "option", "group", "icon", "svg", "template", "slot", "body", "derive", "fmt", "set", "async", "try", "step", "catch", "filter", "find", "some", "every", "findIndex", "reduce", "map", "flatMap", "flat", "slice", "at", "sort", "reverse", "join", "includes", "indexOf", "lastIndexOf", "concat", "forEach", "compact", "pluck", "unique", "uniqueBy", "groupBy", "partition", "indexBy", "countBy", "chunk", "zip", "range", "take", "drop", "min", "max", "minBy", "maxBy", "sum", "sumBy", "avg", "intersect", "findLast", "findLastIndex", "transform", "action", "actionRegistry", "assume", "invariant", "branch", "path", "resolve", "candidate", "discriminator", "collect", "pattern", "apply", "expect", "recover", "strategy", "reason", "evidence", "needs", "rule", "message", "mcp", "tool", "resource", "prompt", "param", "description", "sampling", "elicitation"];
15
15
  export type IRNodeType = (typeof NODE_TYPES)[number];
package/dist/spec.js CHANGED
@@ -9,7 +9,7 @@
9
9
  * Meta: theme nodes ($ref), pseudo-selectors (:press, :hover)
10
10
  * Targets: Next.js, React+Tailwind, React Native, Express
11
11
  */
12
- export const KERN_VERSION = '3.4.3';
12
+ export const KERN_VERSION = '3.4.4';
13
13
  // ── Grammar ─────────────────────────────────────────────────────────────
14
14
  export const IR_GRAMMAR = `
15
15
  document = node+
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@kernlang/core",
3
- "version": "3.4.3",
3
+ "version": "3.4.4",
4
4
  "description": "Kern core — parser, types, spec, config, style engines, codegen",
5
5
  "type": "module",
6
6
  "main": "./dist/index.js",