@vibgrate/haile 2026.902.2 → 2026.903.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.
Binary file
package/dist/index.d.ts CHANGED
@@ -41,7 +41,7 @@ interface HaileProvider {
41
41
  declare const HAILE_MAGIC = "vg.haile.v1";
42
42
  declare const HAILE_TAXONOMY = "haile.taxonomy.v1";
43
43
  declare const HAILE_IR = "haile.ir.v1";
44
- declare const HAILE_ENGINE_VERSION = "haile-fast/0.1.1";
44
+ declare const HAILE_ENGINE_VERSION = "haile-fast/0.2.0";
45
45
  declare const DEFAULT_PROFILE: HaileProfile;
46
46
  declare const DEFAULT_SYMBOL_CAP = 8000;
47
47
 
package/dist/index.js CHANGED
@@ -1,10 +1,10 @@
1
- import{pathToFileURL as j}from"node:url";import*as u from"node:fs";import*as g from"node:path";var b="vg.haile.v1",_="haile.taxonomy.v1",h="haile.ir.v1",v="haile-fast/0.1.1",w="balanced",H=8e3,k=new Set(["function","method","route","test","component","job"]);function C(n){return k.has(n)}function P(n){switch(n){case"method":return"method";case"route":return"route";case"test":return"test";case"job":return"job";case"component":return"handler";default:return"function"}}function N(n){let r=n.indexOf("("),s=n.lastIndexOf(")");if(r<0||s<=r)return[];let i=n.slice(r+1,s).trim();return!i||i==="void"?[]:i.split(",").map(a=>a.trim()).filter(Boolean).slice(0,16).map(a=>{let e=a.replace(/\b(const|mut|ref|public|private|protected|readonly|final)\b/g,"").trim();if(e.includes(":")){let[l,c]=e.split(":").map(d=>d.trim());return{name:l||"arg",type_name:c||void 0}}let t=e.split(/\s+/);return t.length>=2?{name:t[t.length-1],type_name:t[0]}:{name:e}})}function R(n){let r=n.lastIndexOf("->");if(r>=0)return n.slice(r+2).replace(/[{;].*$/,"").trim()||void 0;let s=n.lastIndexOf(":"),i=n.lastIndexOf(")");if(s>i&&i>=0)return n.slice(s+1).replace(/[{;=>].*$/,"").trim()||void 0}function T(n,r,s){let i=[],a=new Set;for(let e of r){if(e.src!==n||e.kind!=="call"&&e.kind!=="references")continue;let t=s.get(e.dst);if(!(!t||a.has(t))&&(a.add(t),i.push(t),i.length>=24))break}return i}function x(n){let r=n.nodes??[],s=n.edges??[],i=new Map;for(let e of r)i.set(e.id,e.name);let a=[];for(let e of r){if(!C(e.kind))continue;let t=e.signature??"";a.push({node_id:e.id,file_path:e.file,name:e.name,qualified_name:e.qualifiedName||e.name,symbol_kind:P(e.kind),language:e.lang??"",signature:t,calls:T(e.id,s,i),parameters:N(t),return_type:R(t)})}return a.sort((e,t)=>e.node_id<t.node_id?-1:e.node_id>t.node_id?1:0),a}import*as m from"node:fs";import{fileURLToPath as F}from"node:url";var f;function G(){return[new URL("./engine/haile.wasm",import.meta.url),new URL("../engine/haile.wasm",import.meta.url),new URL("../crate/target/wasm32-unknown-unknown/release/vibgrate_haile_kernel.wasm",import.meta.url)].map(n=>F(n))}function A(){if(f!==void 0)return f;f=null;try{let n=G().find(t=>m.existsSync(t));if(!n)return f;let r=new WebAssembly.Module(m.readFileSync(n)),i=new WebAssembly.Instance(r,{}).exports;if(typeof i.vg_alloc!="function"||typeof i.vg_free!="function"||typeof i.vg_version!="function"||typeof i.vg_classify!="function"||!i.memory)return f;let a=t=>{let l=new TextEncoder().encode(t),c=i.vg_alloc(l.length);return new Uint8Array(i.memory.buffer,c,l.length).set(l),{ptr:c,len:l.length}},e=t=>{if(!t)return"";let l=new DataView(i.memory.buffer,t,4).getUint32(0,!0),c=new TextDecoder().decode(new Uint8Array(i.memory.buffer,t+4,l));return i.vg_free(t,4+l),c};return f={version:()=>{try{return e(i.vg_version())||"haile-fast/0.1.1"}catch{return"haile-fast/0.1.1"}},classifyJson:t=>{let l=JSON.stringify({name:t.name??"",path:t.path??"",symbolKind:t.symbolKind??"function",fileKind:t.fileKind??"source",calls:t.calls??[],types:t.types??[],idents:t.idents??[],profile:t.profile??"balanced"}),{ptr:c,len:d}=a(l);try{return e(i.vg_classify(c,d))}finally{i.vg_free(c,d)}}},f}catch{return f=null,f}}function M(){f=void 0}function S(n){return Array.isArray(n)?n.filter(r=>typeof r=="string"):[]}function U(n){if(!n)return null;try{let r=JSON.parse(n);if(!r||typeof r!="object")return null;let s=r.role&&typeof r.role=="object"?r.role:r,i=typeof s.primary=="string"?s.primary:"";if(!i)return null;let a=r.intent&&typeof r.intent=="object"?r.intent:{};return{primary:i,confidence:typeof s.confidence=="number"?s.confidence:0,band:typeof s.band=="string"?s.band:"abstain",alternatives:Array.isArray(s.alternatives)?s.alternatives.filter(e=>typeof e?.role=="string").map(e=>({role:e.role,confidence:typeof e.confidence=="number"?e.confidence:0})):[],purposes:Array.isArray(r.purposes)?r.purposes.filter(e=>typeof e?.purpose=="string").map(e=>({purpose:e.purpose,confidence:typeof e.confidence=="number"?e.confidence:0})):[],intent:{text:typeof a.text=="string"?a.text:"",verbs:S(a.verbs),objects:S(a.objects)},evidence:Array.isArray(r.evidence)?r.evidence.filter(e=>typeof e?.kind=="string"&&typeof e?.signal=="string").map(e=>({kind:e.kind,signal:e.signal,weight:typeof e.weight=="number"?e.weight:0})):[]}}catch{return null}}function I(n){let r=n===void 0?A():n;return r?{version:()=>r.version(),classify:s=>{try{return U(r.classifyJson(s))}catch{return null}}}:null}var D=new Set(["strict","balanced","exploratory"]);function O(n,r){let s=n.indexOf(r);if(!(s<0||s+1>=n.length))return n[s+1]}function W(){return new Promise((n,r)=>{let s=[];process.stdin.on("data",i=>s.push(Buffer.from(i))),process.stdin.on("end",()=>n(Buffer.concat(s).toString("utf8"))),process.stdin.on("error",r)})}async function L(n=process.argv.slice(2),r={}){if(n[0]!=="sidecar")return process.stderr.write(`usage: node index.js sidecar --stdin --out <file> --profile <strict|balanced|exploratory>
1
+ import{pathToFileURL as B}from"node:url";import*as m from"node:fs";import*as y from"node:path";var _="vg.haile.v1",h="haile.taxonomy.v1",v="haile.ir.v1",u="haile-fast/0.2.0",H="balanced",w=8e3,k=new Set(["function","method","route","test","component","job"]);function S(n){return k.has(n)}function C(n){switch(n){case"method":return"method";case"route":return"route";case"test":return"test";case"job":return"job";case"component":return"handler";default:return"function"}}function N(n){let r=n.indexOf("("),s=n.lastIndexOf(")");if(r<0||s<=r)return[];let i=n.slice(r+1,s).trim();return!i||i==="void"?[]:i.split(",").map(o=>o.trim()).filter(Boolean).slice(0,16).map(o=>{let e=o.replace(/\b(const|mut|ref|public|private|protected|readonly|final)\b/g,"").trim();if(e.includes(":")){let[l,c]=e.split(":").map(d=>d.trim());return{name:l||"arg",type_name:c||void 0}}let t=e.split(/\s+/);return t.length>=2?{name:t[t.length-1],type_name:t[0]}:{name:e}})}function R(n){let r=n.lastIndexOf("->");if(r>=0)return n.slice(r+2).replace(/[{;].*$/,"").trim()||void 0;let s=n.lastIndexOf(":"),i=n.lastIndexOf(")");if(s>i&&i>=0)return n.slice(s+1).replace(/[{;=>].*$/,"").trim()||void 0}function G(n,r,s){let i=[],o=new Set;for(let e of r){if(e.src!==n||e.kind!=="call"&&e.kind!=="references")continue;let t=s.get(e.dst);if(!(!t||o.has(t))&&(o.add(t),i.push(t),i.length>=24))break}return i}function x(n){let r=n.nodes??[],s=n.edges??[],i=new Map;for(let e of r)i.set(e.id,e.name);let o=[];for(let e of r){if(!S(e.kind))continue;let t=e.signature??"";o.push({node_id:e.id,file_path:e.file,name:e.name,qualified_name:e.qualifiedName||e.name,symbol_kind:C(e.kind),language:e.lang??"",signature:t,calls:G(e.id,s,i),parameters:N(t),return_type:R(t)})}return o.sort((e,t)=>e.node_id<t.node_id?-1:e.node_id>t.node_id?1:0),o}import*as g from"node:fs";import{fileURLToPath as T}from"node:url";var f;function F(){return[new URL("./engine/haile.wasm",import.meta.url),new URL("../engine/haile.wasm",import.meta.url),new URL("../crate/target/wasm32-unknown-unknown/release/vibgrate_haile_kernel.wasm",import.meta.url)].map(n=>T(n))}function M(n){try{let r=new WebAssembly.Module(n),i=new WebAssembly.Instance(r,{}).exports;if(typeof i.vg_alloc!="function"||typeof i.vg_free!="function"||typeof i.vg_version!="function"||typeof i.vg_classify!="function"||!i.memory)return null;let o=t=>{let l=new TextEncoder().encode(t),c=i.vg_alloc(l.length);return new Uint8Array(i.memory.buffer,c,l.length).set(l),{ptr:c,len:l.length}},e=t=>{if(!t)return"";let l=new DataView(i.memory.buffer,t,4).getUint32(0,!0),c=new TextDecoder().decode(new Uint8Array(i.memory.buffer,t+4,l));return i.vg_free(t,4+l),c};return{version:()=>{try{return e(i.vg_version())||u}catch{return u}},classifyJson:t=>{let l=JSON.stringify({name:t.name??"",path:t.path??"",symbolKind:t.symbolKind??"function",fileKind:t.fileKind??"source",calls:t.calls??[],types:t.types??[],idents:t.idents??[],profile:t.profile??"balanced"}),{ptr:c,len:d}=o(l);try{return e(i.vg_classify(c,d))}finally{i.vg_free(c,d)}}}}catch{return null}}function A(){if(f!==void 0)return f;f=null;try{let n=F().find(r=>g.existsSync(r));return n&&(f=M(g.readFileSync(n))),f}catch{return f=null,f}}function U(){f=void 0}function P(n){return Array.isArray(n)?n.filter(r=>typeof r=="string"):[]}function W(n){if(!n)return null;try{let r=JSON.parse(n);if(!r||typeof r!="object")return null;let s=r.role&&typeof r.role=="object"?r.role:r,i=typeof s.primary=="string"?s.primary:"";if(!i)return null;let o=r.intent&&typeof r.intent=="object"?r.intent:{};return{primary:i,confidence:typeof s.confidence=="number"?s.confidence:0,band:typeof s.band=="string"?s.band:"abstain",alternatives:Array.isArray(s.alternatives)?s.alternatives.filter(e=>typeof e?.role=="string").map(e=>({role:e.role,confidence:typeof e.confidence=="number"?e.confidence:0})):[],purposes:Array.isArray(r.purposes)?r.purposes.filter(e=>typeof e?.purpose=="string").map(e=>({purpose:e.purpose,confidence:typeof e.confidence=="number"?e.confidence:0})):[],intent:{text:typeof o.text=="string"?o.text:"",verbs:P(o.verbs),objects:P(o.objects)},evidence:Array.isArray(r.evidence)?r.evidence.filter(e=>typeof e?.kind=="string"&&typeof e?.signal=="string").map(e=>({kind:e.kind,signal:e.signal,weight:typeof e.weight=="number"?e.weight:0})):[]}}catch{return null}}function I(n){let r=n===void 0?A():n;return r?{version:()=>r.version(),classify:s=>{try{return W(r.classifyJson(s))}catch{return null}}}:null}var D=new Set(["strict","balanced","exploratory"]);function O(n,r){let s=n.indexOf(r);if(!(s<0||s+1>=n.length))return n[s+1]}function j(){return new Promise((n,r)=>{let s=[];process.stdin.on("data",i=>s.push(Buffer.from(i))),process.stdin.on("end",()=>n(Buffer.concat(s).toString("utf8"))),process.stdin.on("error",r)})}async function E(n=process.argv.slice(2),r={}){if(n[0]!=="sidecar")return process.stderr.write(`usage: node index.js sidecar --stdin --out <file> --profile <strict|balanced|exploratory>
2
2
  `),1;if(!n.includes("--stdin"))return process.stderr.write(`sidecar requires --stdin
3
3
  `),1;let s=O(n,"--out");if(!s)return process.stderr.write(`sidecar requires --out <file>
4
- `),1;let i=O(n,"--profile")??w;if(!D.has(i))return process.stderr.write(`invalid --profile ${i}
5
- `),1;let a=i,e=r.provider===void 0?I():r.provider;if(!e)return process.stderr.write(`architecture kernel wasm missing \u2014 refusing to classify
6
- `),1;let t;try{let o=(await(r.readInput??W)()).trim();if(!o)return process.stderr.write(`sidecar stdin was empty
7
- `),1;t=JSON.parse(o)}catch{return process.stderr.write(`sidecar stdin was not valid JSON
8
- `),1}let l=x({nodes:Array.isArray(t.nodes)?t.nodes:[],edges:Array.isArray(t.edges)?t.edges:[]}),c=e.version()||v,d=[],E=!1;for(let o of l){if(d.length>=8e3){E=!0;break}let p=e.classify({name:o.name,path:o.file_path,symbolKind:o.symbol_kind,fileKind:"source",calls:o.calls,types:[...o.parameters.map(y=>y.type_name).filter(y=>!!y),...o.return_type?[o.return_type]:[]],idents:[o.name,...o.calls].slice(0,24),profile:a});p&&d.push({node_id:o.node_id,file_path:o.file_path,name:o.name,qualified_name:o.qualified_name,symbol_kind:o.symbol_kind,role:{primary:p.primary,alternatives:p.alternatives,confidence:p.confidence,band:p.band},purposes:p.purposes,intent:p.intent,evidence:p.evidence})}let K={magic:b,taxonomy:_,ir:h,corpus_hash:t.provenance?.corpusHash??"",engine_version:c,profile:a,symbols:d,...E?{symbols_capped:!0}:{}};try{u.mkdirSync(g.dirname(g.resolve(s)),{recursive:!0});let o=`${s}.${process.pid}.tmp`;u.writeFileSync(o,`${JSON.stringify(K)}
9
- `),u.renameSync(o,s)}catch{return process.stderr.write(`sidecar failed to write ${s}
10
- `),1}return 0}function B(){let n=process.argv[1];if(!n)return!1;try{return import.meta.url===j(n).href}catch{return!1}}B()&&L().then(n=>{process.exit(n)});export{w as DEFAULT_PROFILE,H as DEFAULT_SYMBOL_CAP,v as HAILE_ENGINE_VERSION,h as HAILE_IR,b as HAILE_MAGIC,_ as HAILE_TAXONOMY,x as adaptGraph,I as createHaileProvider,C as isCallableKind,A as loadWasmHaileKernel,M as resetWasmHaileKernelCache,L as runSidecarCli,P as symbolKindOf};
4
+ `),1;let i=O(n,"--profile")??H;if(!D.has(i))return process.stderr.write(`invalid --profile ${i}
5
+ `),1;let o=i,e=r.provider===void 0?I():r.provider;if(!e)return process.stderr.write(`architecture kernel wasm missing \u2014 refusing to classify
6
+ `),1;let t;try{let a=(await(r.readInput??j)()).trim();if(!a)return process.stderr.write(`sidecar stdin was empty
7
+ `),1;t=JSON.parse(a)}catch{return process.stderr.write(`sidecar stdin was not valid JSON
8
+ `),1}let l=x({nodes:Array.isArray(t.nodes)?t.nodes:[],edges:Array.isArray(t.edges)?t.edges:[]}),c=e.version()||u,d=[],L=!1;for(let a of l){if(d.length>=8e3){L=!0;break}let p=e.classify({name:a.name,path:a.file_path,symbolKind:a.symbol_kind,fileKind:"source",calls:a.calls,types:[...a.parameters.map(b=>b.type_name).filter(b=>!!b),...a.return_type?[a.return_type]:[]],idents:[a.name,...a.calls].slice(0,24),profile:o});p&&d.push({node_id:a.node_id,file_path:a.file_path,name:a.name,qualified_name:a.qualified_name,symbol_kind:a.symbol_kind,role:{primary:p.primary,alternatives:p.alternatives,confidence:p.confidence,band:p.band},purposes:p.purposes,intent:p.intent,evidence:p.evidence})}let K={magic:_,taxonomy:h,ir:v,corpus_hash:t.provenance?.corpusHash??"",engine_version:c,profile:o,symbols:d,...L?{symbols_capped:!0}:{}};try{m.mkdirSync(y.dirname(y.resolve(s)),{recursive:!0});let a=`${s}.${process.pid}.tmp`;m.writeFileSync(a,`${JSON.stringify(K)}
9
+ `),m.renameSync(a,s)}catch{return process.stderr.write(`sidecar failed to write ${s}
10
+ `),1}return 0}function q(){let n=process.argv[1];if(!n)return!1;try{return import.meta.url===B(n).href}catch{return!1}}q()&&E().then(n=>{process.exit(n)});export{H as DEFAULT_PROFILE,w as DEFAULT_SYMBOL_CAP,u as HAILE_ENGINE_VERSION,v as HAILE_IR,_ as HAILE_MAGIC,h as HAILE_TAXONOMY,x as adaptGraph,I as createHaileProvider,S as isCallableKind,A as loadWasmHaileKernel,U as resetWasmHaileKernelCache,E as runSidecarCli,C as symbolKindOf};
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@vibgrate/haile",
3
- "version": "2026.902.2",
3
+ "version": "2026.903.1",
4
4
  "description": "Vibgrate HAILE architecture kernel: deterministic callable classification (role, purposes, intent, band) over a vg-graph. Proprietary distribution — compiled WASM engine plus a minified loader; the taxonomy is not included.",
5
5
  "license": "SEE LICENSE IN LICENSE",
6
6
  "type": "module",