@reddb-io/red-skills 3.4.3 → 3.5.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.
- package/dist/brain.bundle.min.mjs +1 -1
- package/dist/castle-mcp.bundle.min.mjs +387 -387
- package/dist/code-nav.bundle.min.mjs +1 -1
- package/dist/dev.bundle.min.mjs +645 -645
- package/dist/memory.bundle.min.mjs +1 -1
- package/dist/redskilled.bundle.min.mjs +89 -79
- package/dist/rsp.bundle.min.mjs +1 -1
- package/package.json +1 -1
package/dist/rsp.bundle.min.mjs
CHANGED
|
@@ -37,7 +37,7 @@ var JE=Object.create;var ya=Object.defineProperty;var KE=Object.getOwnPropertyDe
|
|
|
37
37
|
`;return _+=v,a+=1,c+=1,u+=v.length,_},declareLane(E,h){if(p)throw j(0,"TOONL encoder is closed");let _=xk(h),T=Ha(Q,_),v=k(E);return Mp(v.fields,_)?"":(v.fields=_,Fp(E,T))},pushTagged(E,h){if(p)throw j(0,"TOONL encoder is closed");let _=k(E),T=Up(jp(h),_.fieldsByShape),v=Ha(Q,T),G=T.map(J=>Ee(h[J],Q)),B="";return Mp(_.fields,T)||(_.fields=T,B+=Fp(E,v)),`${B}${E}:${G.join(Q)}
|
|
38
38
|
`},end(){return p?"":(p=!0,g())}}}var Hp,qp,Wp,mN,fN,Jp=y(()=>{kt();jn();fr();Hp=[Q,"|"," "],qp=8,Wp=/^[A-Za-z0-9_-]+$/,mN=new TextEncoder,fN=new TextDecoder});var W=y(()=>{op();kt();jn();jn();Gp();Jp()});function Pk(e){return e==="no-op"?0:e==="usage"?2:1}function V(e){return Buffer.from(`${$(qa(e))}
|
|
39
39
|
`)}function qa(e){let t={command:e.command,category:e.category,exit_code:e.exitCode??Pk(e.category),error:e.error,help:[e.help]};return e.validFlags&&e.validFlags.length>0&&(t.valid_flags=[...e.validFlags]),e.diagnostics&&(t.diagnostics=Ik(e.diagnostics,3)),t}function Je(e,t,r){let s=([r,t].find(i=>i.trim())??"").trim(),o=s.toLowerCase();return/\bgh\b/.test(e)&&np(s)?{command:e,category:"transient",error:Un(s)||"GitHub API rate limit exceeded",help:rp,diagnostics:s}:/\bgh\b/.test(e)&&(o.includes("gh_token")||o.includes("not logged in")||o.includes("authentication"))?{command:e,category:"real-error",error:Un(s)||"GitHub authentication failed",help:"gh auth login",diagnostics:s}:o.includes("not a git repository")?{command:e,category:"real-error",error:Un(s)||"not a git repository",help:"git status",diagnostics:s}:o.includes("repository not found")||o.includes("could not resolve host")?{command:e,category:"real-error",error:Un(s)||"repository is unavailable",help:e.startsWith("gh ")?"gh repo view":"git remote -v",diagnostics:s}:{command:e,category:"real-error",error:Un(s)||"command failed",help:`${e} --help`,diagnostics:s}}function Kp(e,t,r,n){return V({command:e,category:"usage",error:`unknown flag: ${t}`,help:n,validFlags:r})}function Un(e){return e.split(/\r?\n/,1)[0]?.trim()??""}function Ik(e,t){return e.split(/\r?\n/).slice(0,t).join(`
|
|
40
|
-
`).trim()}var ut=y(()=>{"use strict";sp();W()});function lo(e){let t={app:e,version:Hk(Kr("__RED_BUILD_VERSION__",()=>"3.
|
|
40
|
+
`).trim()}var ut=y(()=>{"use strict";sp();W()});function lo(e){let t={app:e,version:Hk(Kr("__RED_BUILD_VERSION__",()=>"3.5.0")??"0.0.0-dev"),gitSha:Kr("__RED_BUILD_GIT_SHA__",()=>"3c5ba3b29fbb0cb6fce9861916068b75b69a8d31")??"unknown",buildTime:Kr("__RED_BUILD_TIME__",()=>"2026-08-04T22:19:55Z")??"unknown",bundleAsset:Kr("__RED_BUNDLE_ASSET__",()=>"rsp.bundle.min.mjs")??"unknown"},r=Kr("__REDDB_SDK_VERSION__",()=>"1.23.1"),n=Kr("__REDDB_BINARY_TAG__",()=>"v1.23.1");return r&&(t.reddbSdkVersion=r),n&&(t.reddbBinaryTag=n),t}function Hk(e){return e.startsWith("v")?e.slice(1):e}function nm(e){return`${e.app} ${e.version} ${e.gitSha}`}function Kr(e,t){try{let r=t();return typeof r=="string"&&r.length>0?r:void 0}catch{return process.env[e.replace(/^__|__$/g,"")]}}var Va=y(()=>{});import{isAbsolute as qk,join as St,resolve as Ja}from"node:path";function Jk(e){if(!e)throw new Error("root is required");return e.replace(/\/$/,"")}function om(e){return St(Jk(e),sm)}function im(e){return St(om(e),"state")}function am(e){return St(om(e),"tmp")}function ne(e){return St(im(e),"rsp")}function Kk(e){return St(im(e),"red-skills.rdb")}function zk(e){return St(am(e),"red-skills.rdb")}function lm(e,t){let r=Kk(e);if(t(r))return r;let n=zk(e);if(t(n))throw Yk();return r}function Yk(){return new Error("Legacy shared store found at .red/tmp/red-skills.rdb. Run `rsp setup` to migrate it to .red/state/red-skills.rdb before using rsp, memory, or brain.")}function dm(e){return St(am(e),"waits")}function pm(e){let t=e.overrideEnvVars??Ka;for(let n of t){let s=e.env[n];if(s)return qk(s)?s:Ja(e.startDir,s)}let r=Ja(e.startDir);for(;;){if(e.exists(St(r,sm)))return r;let n=St(r,".."),s=Ja(n);if(s===r)break;r=s}return e.startDir}var sm,Wk,Vk,Ka,cm,um,$e=y(()=>{sm=".red",Wk="MEMORY_ROOT",Vk="RED_BRAIN_ROOT",Ka=[Wk,Vk];cm=".red/state/red-skills.rdb";um=".red/tmp/red-skills.rdb"});function se(e){return $(e,{keyedMapCollapse:!0})}var Qk,Xk,YN,Tt=y(()=>{W();$e();Qk=[{id:"memory.config",plugin:"memory",legacyPath:".red/memory/config.json",toonPath:".red/memory/config.toon",kind:"toon"}],Xk=[{id:"dev.afk-history",plugin:"dev",legacyPath:".red/state/afk-history.jsonl",toonPath:".red/state/castle/history.toonl",kind:"toonl"},{id:"dev.agent-log",plugin:"dev",legacyPath:".red/tmp/agent.log.toonl",toonPath:".red/tmp/agent.log.toonl",kind:"toonl"},{id:"dev.supervisor-firehose",plugin:"dev",legacyPath:".red/tmp/afk-supervisor.log.toonl",toonPath:".red/tmp/supervisors/default/supervisor.log.toonl",kind:"toonl",migration:"sniff-read"},{id:"dev.code-understanding-bench-runs",plugin:"dev",legacyPath:".red/tmp/bench/code-understanding/runs.jsonl",toonPath:".red/tmp/bench/code-understanding/runs.toonl",kind:"toonl"},{id:"dev.attempt-state",plugin:"dev",legacyPath:".red/tmp/{workers,go-workers,scout-workers}/*/*/afk.state.toon",toonPath:".red/tmp/{workers,go-workers,scout-workers}/*/*/afk.state.toon",kind:"toon"},{id:"dev.statusline-count-cache",plugin:"dev",legacyPath:".red/tmp/statusline-cache.json",toonPath:".red/state/statusline/statusline-cache.toon",kind:"toon"},{id:"dev.statusline-repo-cache",plugin:"dev",legacyPath:".red/tmp/statusline-repo-cache.json",toonPath:".red/state/statusline/statusline-repo-cache.toon",kind:"toon"},{id:"dev.rsp-resident-registry",plugin:"dev",legacyPath:".red/state/rsp/rsp-resident.pid.json",toonPath:".red/state/rsp/rsp-resident.pid.json",kind:"toon"},{id:"dev.rsp-status-summary",plugin:"dev",legacyPath:".red/state/rsp/rsp-status-summary.json",toonPath:".red/state/rsp/rsp-status-summary.json",kind:"toon"},{id:"dev.rsp-wait-registry",plugin:"dev",legacyPath:".red/tmp/waits/*.json",toonPath:".red/tmp/waits/*.json",kind:"toon"}],YN=[...Qk,...Xk]});function Hn(e){let{values:t,rest:r}=dr(e,{query:mm.query},fm);return{argv:r,query:t.query?.trim()||void 0}}function gm(e){let{values:t,rest:r}=dr(e,mm,fm);return{argv:r,query:t.query?.trim()||void 0,full:t.full===!0}}function Zk(e,t){if(!t)return!0;let r=za(e).toLowerCase();return t.toLowerCase().split(/\s+/).filter(Boolean).every(n=>r.includes(n))}function Re(e,t){return t?e.filter(r=>Zk(r,t)):[...e]}function vt(e,t){return Ya(e,t,{includeLegacyHelp:!0})}function Ya(e,t,r={}){let n=t.filter(Boolean);return n.length===0?e:{...e,...r.includeLegacyHelp?{help:n}:{},next_steps:n}}function za(e){return Array.isArray(e)?e.map(za).join(" "):typeof e=="object"&&e!==null?Object.values(e).map(za).join(" "):String(e??"")}var mm,fm,qn=y(()=>{"use strict";Ra();mm={query:{kind:"value",coerce:e=>e},full:{kind:"boolean"}},fm={stopAtSeparator:!1}});var wo={};K(wo,{DEFAULT_RSP_MAX_OVERHEAD_MS:()=>po,DEFAULT_RSP_MAX_SELF_STATE_BYTES:()=>mo,DEFAULT_RSP_OVERHEAD_CEILING:()=>Ke,DEFAULT_RSP_OVERHEAD_CONSECUTIVE_BREACHES:()=>go,DEFAULT_RSP_OVERHEAD_COOLDOWN_MS:()=>ho,DEFAULT_RSP_OVERHEAD_NET_LOSS_FLOOR_BYTES:()=>fo,RSP_OVERHEAD_FAMILIES:()=>iS,RSP_OVERHEAD_LEDGER_FILE:()=>bm,RSP_OVERHEAD_SCHEMA_VERSION:()=>wm,classifyOverheadSample:()=>Za,noteChildProcessMs:()=>Em,noteSelfStateBytesRead:()=>Jn,overheadCounters:()=>Kn,overheadFamilyDisabled:()=>tc,overheadHealth:()=>Wt,overheadLedgerPath:()=>ec,overheadMsOf:()=>_m,overheadTelemetryFields:()=>yo,readOverheadLedger:()=>Wn,readSelfStateFile:()=>bo,readSelfStateFileSync:()=>uS,recordOverheadSample:()=>Vn,resetOverheadCounters:()=>cS,resetOverheadLedger:()=>aS,startChildProcessTimer:()=>ke});import{existsSync as eS,mkdirSync as tS,readFileSync as hm,renameSync as rS,writeFileSync as nS}from"node:fs";import{readFile as sS}from"node:fs/promises";import{dirname as oS,join as ym}from"node:path";function _m(e){let t=e.wrapperMs-e.childMs;return Number.isFinite(t)?Math.max(0,Xa(t)):0}function Za(e,t=Ke){let r=_m(e),n=[];return r>t.maxOverheadMs&&n.push("wall-clock-ceiling"),e.selfStateBytesRead>t.maxSelfStateBytes&&n.push("self-state-byte-ceiling"),e.selfStateBytesRead>t.netLossFloorBytes&&e.selfStateBytesRead>e.bytesSaved&&n.push("overhead-exceeds-savings"),{overhead_ms:r,breached:n.length>0,reasons:n}}function yo(e,t=Ke){let r=Za(e,t);return{wrapper_ms:Xa(e.wrapperMs),overhead_ms:r.overhead_ms,child_ms:Xa(Math.max(0,e.childMs)),self_state_bytes_read:Math.max(0,Math.trunc(e.selfStateBytesRead)),bytes_saved:Math.max(0,Math.trunc(e.bytesSaved)),overhead_breached:r.breached,overhead_breach_reasons:r.reasons.join(",")}}function ec(e){return ym(ne(e),bm)}function Wn(e){try{let t=hm(ec(e),"utf8"),r=mS(t);if(fS(r))return r}catch{}return{version:1,families:{}}}function Vn(e,t,r=Ke,n=Date.now()){let s=Wn(e),o=Za(t,r),i=s.families[t.family]??pS(t.family,n),a=sc(i,n)?Rm(i):i,c=o.breached?a.consecutive_breaches+1:0,u={...a,family:t.family,invocations:a.invocations+1,breaches:a.breaches+(o.breached?1:0),consecutive_breaches:c,breached:o.breached,reasons:o.reasons,last_overhead_ms:o.overhead_ms,last_self_state_bytes_read:Math.max(0,Math.trunc(t.selfStateBytesRead)),last_bytes_saved:Math.max(0,Math.trunc(t.bytesSaved)),updated_at:new Date(n).toISOString()};return o.breached?c>=r.consecutiveBreaches&&(u.disabled=!0,u.disabled_at=new Date(n).toISOString(),u.disabled_until=new Date(n+r.cooldownMs).toISOString(),u.disabled_reason=lS(t.family,c,o,r)):(u.disabled=!1,u.disabled_at=null,u.disabled_until=null,u.disabled_reason=null),s.families[t.family]=u,km(e,s),u}function tc(e,t,r=Date.now()){let n=Wn(e).families[t];return!n?.disabled||sc(n,r)?null:n}function aS(e,t){let r=Wn(e);return t?delete r.families[t]:r.families={},km(e,r),r}function Wt(e,t=Ke,r=Date.now()){let n=Object.values(Wn(e).families).map(a=>sc(a,r)?Rm(a):a).sort((a,c)=>a.family.localeCompare(c.family)),s=n.filter(a=>a.disabled),o=n.filter(a=>a.consecutive_breaches>0),i=s.length>0||o.length>0?"red":"green";return{schema_version:wm,verdict:i,summary:dS(i,s,o),ceiling:t,breaching_families:o,disabled_families:s,families:n}}function Jn(e){Number.isFinite(e)&&e>0&&(rc+=e)}function Em(e){Number.isFinite(e)&&e>0&&(nc+=e)}function Kn(){return{selfStateBytesRead:rc,childMs:nc}}function cS(){rc=0,nc=0}function ke(){let e=process.hrtime.bigint(),t=!1;return()=>{t||(t=!0,Em(Number(process.hrtime.bigint()-e)/1e6))}}async function bo(e){let t=await sS(e,"utf8");return Jn(Buffer.byteLength(t)),t}function uS(e){let t=hm(e,"utf8");return Jn(Buffer.byteLength(t)),t}function lS(e,t,r,n){let s=r.reasons.map(o=>o==="wall-clock-ceiling"?`added ${r.overhead_ms}ms > ${n.maxOverheadMs}ms`:o==="self-state-byte-ceiling"?`self-state read > ${n.maxSelfStateBytes}B`:"self-state read exceeded bytes saved").join("; ");return`rsp ${e} exceeded its overhead ceiling on ${t} consecutive invocations (${s}); wrapper self-disabled, commands pass through raw`}function dS(e,t,r){if(e==="green")return"every wrapper family is inside its overhead ceiling";let n=[];return t.length>0&&n.push(`self-disabled: ${t.map(s=>`${s.family} (${s.reasons.join(",")||"ceiling"})`).join(", ")}`),r.length>0&&n.push(`breaching: ${r.map(s=>`${s.family} x${s.consecutive_breaches}`).join(", ")}`),n.join("; ")}function sc(e,t){if(!e.disabled||!e.disabled_until)return!1;let r=Date.parse(e.disabled_until);return Number.isFinite(r)&&r<=t}function Rm(e){return{...e,disabled:!1,disabled_at:null,disabled_until:null,disabled_reason:null,consecutive_breaches:0,breached:!1,reasons:[]}}function pS(e,t){return{family:e,invocations:0,breaches:0,consecutive_breaches:0,breached:!1,reasons:[],disabled:!1,disabled_at:null,disabled_until:null,disabled_reason:null,last_overhead_ms:0,last_self_state_bytes_read:0,last_bytes_saved:0,updated_at:new Date(t).toISOString()}}function km(e,t){try{let r=ec(e);if(!eS(ym(e,".red")))return;tS(oS(r),{recursive:!0});let n=`${r}.${process.pid}.tmp`;nS(n,`${$(t)}
|
|
41
41
|
`,{encoding:"utf8",mode:384}),rS(n,r)}catch{}}function mS(e){try{return JSON.parse(e)}catch{return H(e)}}function fS(e){return!Qa(e)||e.version!==1||!Qa(e.families)?!1:Object.values(e.families).every(gS)}function gS(e){return Qa(e)&&typeof e.family=="string"&&typeof e.consecutive_breaches=="number"&&typeof e.disabled=="boolean"}function Qa(e){return typeof e=="object"&&e!==null&&!Array.isArray(e)}function Xa(e){return Number.isFinite(e)?Math.round(e*1e3)/1e3:0}var bm,wm,po,mo,fo,go,ho,iS,Ke,rc,nc,oe=y(()=>{"use strict";$e();W();bm="overhead-budget.toon",wm="red.rsp.overhead.v1",po=250,mo=1024*1024,fo=64*1024,go=3,ho=6*60*60*1e3,iS=["git","gh","gh-api-json","vitest","cargo","cat","exec","proxy"],Ke={maxOverheadMs:po,maxSelfStateBytes:mo,netLossFloorBytes:fo,consecutiveBreaches:go,cooldownMs:ho};rc=0,nc=0});function vm(e){return e.trimStart().startsWith("{")?"json":"toon"}function ic(e){let t=0;for(;e[t]===`
|
|
42
42
|
`||e[t]==="\r";)t+=1;let r=e.slice(t);if(r==="")return null;let n=vm(r);if(n==="json"){let o=r.indexOf(`
|
|
43
43
|
`);return o<0?null:{frame:r.slice(0,o),dialect:n,rest:r.slice(o+1)}}let s=r.indexOf(`
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@reddb-io/red-skills",
|
|
3
|
-
"version": "3.
|
|
3
|
+
"version": "3.5.0",
|
|
4
4
|
"description": "RedSkills plugin runtime bundles (dev, code-nav, memory, brain) distributed over npm — the v2 client transport (ADR 0091). Carries the platform-independent JS bundles inside the tarball plus thin bin shims; no postinstall download.",
|
|
5
5
|
"license": "Apache-2.0",
|
|
6
6
|
"type": "module",
|