@unbrained/pm-cli 2026.9.5 → 2026.9.6
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/.claude-plugin/marketplace.json +2 -2
- package/CHANGELOG.md +32 -2
- package/dist/cli/main.js +10 -8
- package/dist/cli/register-operations.js +13 -8
- package/dist/cli-bundle/bundle-manifest.json +150 -158
- package/dist/cli-bundle/chunks/chunk-AZDFJGH6.js +9 -0
- package/dist/cli-bundle/chunks/{chunk-WWAEGW4V.js → chunk-BAX2BYUW.js} +66 -66
- package/dist/cli-bundle/chunks/{chunk-IBYREGSP.js → chunk-CKOL5U7J.js} +51 -51
- package/dist/cli-bundle/chunks/{chunk-ZRAQS3UA.js → chunk-JT6XF6GE.js} +2 -2
- package/dist/cli-bundle/chunks/{chunk-HUAQITVW.js → chunk-JX4DH4WC.js} +2 -2
- package/dist/cli-bundle/chunks/{chunk-QPZHQY2O.js → chunk-NPN5I67J.js} +2 -2
- package/dist/cli-bundle/chunks/{chunk-66VPKFP2.js → chunk-OF76PSDQ.js} +2 -2
- package/dist/cli-bundle/chunks/chunk-QUWFABDM.js +232 -0
- package/dist/cli-bundle/chunks/{chunk-3HBDTJRK.js → chunk-RWWBOWJ5.js} +2 -2
- package/dist/cli-bundle/chunks/chunk-WGAOYSYH.js +40 -0
- package/dist/cli-bundle/chunks/{chunk-SF6SM6U5.js → chunk-WI2AYPA7.js} +2 -2
- package/dist/cli-bundle/chunks/{register-list-query-AYKGODWT.js → register-list-query-5JL52D33.js} +2 -2
- package/dist/cli-bundle/chunks/{register-mutation-YZYG53SQ.js → register-mutation-ZPG7KMVP.js} +2 -2
- package/dist/cli-bundle/chunks/register-operations-I5W3KMGB.js +2 -0
- package/dist/cli-bundle/chunks/{register-setup-UJCRVGBG.js → register-setup-H4SVAVX7.js} +2 -2
- package/dist/cli-bundle/focused-chunks/{chunk-QL66QNWG.js → chunk-3BZEOXLT.js} +2 -2
- package/dist/cli-bundle/focused-chunks/chunk-AL5ON6K6.js +2 -0
- package/dist/cli-bundle/focused-chunks/chunk-CHC2IDXA.js +6 -0
- package/dist/cli-bundle/focused-chunks/chunk-CK6QFAPZ.js +20 -0
- package/dist/cli-bundle/focused-chunks/{chunk-WOCIPMW7.js → chunk-EZR3GHFE.js} +2 -2
- package/dist/cli-bundle/focused-chunks/chunk-H2WJWK7L.js +56 -0
- package/dist/cli-bundle/focused-chunks/{chunk-3ASU6WGI.js → chunk-LIJIA4TY.js} +2 -2
- package/dist/cli-bundle/focused-chunks/{chunk-H5FOGAVD.js → chunk-M6PBRFSH.js} +2 -2
- package/dist/cli-bundle/focused-chunks/{chunk-B2TTQGFG.js → chunk-NTPY5GSO.js} +2 -2
- package/dist/cli-bundle/focused-chunks/chunk-P5O7MP5Y.js +2 -0
- package/dist/cli-bundle/focused-chunks/chunk-PDMW2E36.js +177 -0
- package/dist/cli-bundle/focused-chunks/{chunk-YEF5PQQ2.js → chunk-PEFABF7E.js} +2 -2
- package/dist/cli-bundle/focused-chunks/{chunk-KWWCBWFO.js → chunk-QTVCLMSZ.js} +2 -2
- package/dist/cli-bundle/focused-chunks/{chunk-4OSHLNUE.js → chunk-QTZRBUYA.js} +2 -2
- package/dist/cli-bundle/focused-chunks/chunk-SGQST3PQ.js +12 -0
- package/dist/cli-bundle/focused-chunks/chunk-UKHASMMP.js +10 -0
- package/dist/cli-bundle/focused-chunks/chunk-ZPEKQHOC.js +2 -0
- package/dist/cli-bundle/main.js +20 -20
- package/dist/cli-bundle/sdk-authoring.js +1 -1
- package/dist/cli-bundle/sdk-contracts.js +2 -2
- package/dist/cli-bundle/sdk-core.js +37 -37
- package/dist/cli-bundle/sdk-governance.js +1 -1
- package/dist/cli-bundle/sdk-graph.js +1 -1
- package/dist/cli-bundle/sdk-merge.js +42 -42
- package/dist/cli-bundle/sdk-query.js +1 -1
- package/dist/cli-bundle/sdk-runtime.js +1 -1
- package/dist/cli-bundle/sdk-testing.js +1 -1
- package/dist/cli-bundle/sdk.js +9 -9
- package/dist/core/extensions/module-graph-snapshot.js +5 -4
- package/dist/core/fs/host-environment-errors.d.ts +27 -0
- package/dist/core/fs/host-environment-errors.js +142 -0
- package/dist/core/output/mutation-projection.js +12 -5
- package/dist/core/store/item-metadata-query-index.js +13 -10
- package/dist/core/store/item-metadata-read-work.d.ts +19 -0
- package/dist/core/store/item-metadata-read-work.js +44 -0
- package/dist/core/store/item-store.js +6 -2
- package/dist/core/validate/fix-planning.d.ts +1 -1
- package/dist/core/validate/fix-planning.js +2 -2
- package/dist/core/validate/missing-link-owners.d.ts +1 -1
- package/dist/core/validate/missing-link-owners.js +5 -3
- package/dist/core/validate/stale-file-classification.d.ts +6 -4
- package/dist/core/validate/stale-file-classification.js +20 -5
- package/dist/mcp/server.js +12 -5
- package/dist/sdk/cli-contracts/flag-contracts.d.ts +2 -0
- package/dist/sdk/cli-contracts/flag-contracts.js +7 -5
- package/dist/sdk/cli-contracts/flag-lexicon-contracts.js +4 -3
- package/dist/sdk/cli-contracts/grammar-contracts.js +11 -2
- package/dist/sdk/cli-contracts/runtime-contracts.js +5 -2
- package/dist/sdk/cli-contracts/schemas/assurance-definition.d.ts +254 -5
- package/dist/sdk/cli-contracts/schemas/assurance-definition.js +52 -2
- package/dist/sdk/cli-contracts/tool-parameter-tables.js +18 -6
- package/dist/sdk/cli-contracts/tool-schema.d.ts +2 -2
- package/dist/sdk/cli-contracts/tool-schema.js +17 -5
- package/dist/sdk/context/usage-ledger.d.ts +41 -0
- package/dist/sdk/context/usage-ledger.js +186 -0
- package/dist/sdk/context-usage.d.ts +18 -9
- package/dist/sdk/context-usage.js +37 -112
- package/dist/sdk/dependency-provenance.d.ts +7 -0
- package/dist/sdk/dependency-provenance.js +14 -4
- package/dist/sdk/duplicates.d.ts +2 -0
- package/dist/sdk/duplicates.js +3 -2
- package/dist/sdk/environment/host-environment-errors.d.ts +5 -27
- package/dist/sdk/environment/host-environment-errors.js +4 -137
- package/dist/sdk/extension/install-runtime.js +9 -6
- package/dist/sdk/extension/install-snapshot.js +7 -6
- package/dist/sdk/generated/generated-error-code-catalog-part-1.js +8 -8
- package/dist/sdk/governance/assurance-action.d.ts +3 -2
- package/dist/sdk/governance/assurance-action.js +23 -11
- package/dist/sdk/governance/assurance-runtime.d.ts +2 -0
- package/dist/sdk/governance/assurance-runtime.js +6 -3
- package/dist/sdk/governance/defect-recurrence-coverage.d.ts +93 -0
- package/dist/sdk/governance/defect-recurrence-coverage.js +189 -0
- package/dist/sdk/governance/defect-recurrence-graph.d.ts +33 -0
- package/dist/sdk/governance/defect-recurrence-graph.js +121 -0
- package/dist/sdk/governance/defect-recurrence.d.ts +8 -0
- package/dist/sdk/governance/defect-recurrence.js +118 -17
- package/dist/sdk/governance/health.d.ts +17 -2
- package/dist/sdk/governance/health.js +31 -10
- package/dist/sdk/governance/linked-file-report.d.ts +41 -0
- package/dist/sdk/governance/linked-file-report.js +72 -0
- package/dist/sdk/governance/validate.d.ts +5 -2
- package/dist/sdk/governance/validate.js +21 -37
- package/dist/sdk/governance.d.ts +2 -0
- package/dist/sdk/governance.js +4 -2
- package/dist/sdk/history-repair.d.ts +7 -0
- package/dist/sdk/history-repair.js +48 -13
- package/dist/sdk/lifecycle/close.d.ts +8 -0
- package/dist/sdk/lifecycle/close.js +16 -8
- package/dist/sdk/lifecycle/create.js +9 -12
- package/dist/sdk/lifecycle/update.js +12 -12
- package/dist/sdk/lifecycle-policy.d.ts +3 -0
- package/dist/sdk/lifecycle-policy.js +2 -2
- package/dist/sdk/merge/abandoned-receipts.d.ts +15 -0
- package/dist/sdk/merge/abandoned-receipts.js +47 -0
- package/dist/sdk/merge/driver.js +4 -2
- package/dist/sdk/merge/index.d.ts +1 -0
- package/dist/sdk/merge/index.js +2 -2
- package/dist/sdk/merge/receipt-operation.d.ts +15 -0
- package/dist/sdk/merge/receipt-operation.js +97 -0
- package/dist/sdk/merge/receipt-schema.d.ts +20 -0
- package/dist/sdk/merge/receipt-schema.js +398 -0
- package/dist/sdk/merge/receipts.d.ts +16 -7
- package/dist/sdk/merge/receipts.js +54 -340
- package/dist/sdk/merge/reconcile.d.ts +2 -0
- package/dist/sdk/merge/reconcile.js +11 -4
- package/dist/sdk/public-surface.json +1 -1
- package/dist/sdk/query/duplicate-candidates.d.ts +7 -0
- package/dist/sdk/query/duplicate-candidates.js +71 -0
- package/dist/sdk/query/get.js +7 -7
- package/dist/sdk/query.d.ts +2 -0
- package/dist/sdk/query.js +4 -2
- package/dist/sdk/read-output-session.js +5 -3
- package/dist/sdk/runtime.js +4 -2
- package/dist/sdk/similarity.d.ts +24 -3
- package/dist/sdk/similarity.js +50 -55
- package/docs/AGENT_GUIDE.md +23 -2
- package/docs/BOUNDED_CONTEXT_READS.md +185 -0
- package/docs/CLOSE_EVIDENCE_RECOVERY.md +35 -0
- package/docs/COMMANDS.md +30 -8
- package/docs/CONTEXT_RELEVANCE.md +16 -4
- package/docs/DEFECT_RECURRENCE.md +80 -6
- package/docs/EXTENSIONS.md +18 -19
- package/docs/MERGE_SAFETY.md +50 -0
- package/docs/OUTPUT_PROJECTION_CONTRACTS.md +66 -0
- package/docs/PR_REVIEW_LOOP.md +18 -3
- package/docs/README.md +18 -1
- package/docs/RELEASING.md +6 -2
- package/docs/SDK_LIFECYCLE.md +27 -0
- package/docs/SDK_RUNTIME_BOUNDARIES.md +11 -0
- package/docs/generated/FLAG_LEXICON_BUDGETS.md +1 -1
- package/marketplace.json +2 -2
- package/package.json +6 -3
- package/packages/pm-beads/package.json +1 -1
- package/packages/pm-calendar/package.json +1 -1
- package/packages/pm-command-kit/package.json +1 -1
- package/packages/pm-digital-twin/package.json +1 -1
- package/packages/pm-governance-audit/README.md +10 -1
- package/packages/pm-governance-audit/extensions/governance-audit/dedupe-audit.ts +50 -65
- package/packages/pm-governance-audit/extensions/governance-audit/index.ts +2 -2
- package/packages/pm-governance-audit/extensions/governance-audit/sdk.ts +1 -0
- package/packages/pm-governance-audit/package.json +1 -1
- package/packages/pm-guide-shell/package.json +1 -1
- package/packages/pm-kanban/package.json +1 -1
- package/packages/pm-lifecycle-hooks/package.json +1 -1
- package/packages/pm-linked-test-adapters/package.json +1 -1
- package/packages/pm-search-advanced/package.json +1 -1
- package/packages/pm-templates/package.json +1 -1
- package/packages/pm-todos/package.json +1 -1
- package/packages/pm-vcs/package.json +1 -1
- package/plugins/pm-claude/.claude-plugin/plugin.json +1 -1
- package/plugins/pm-codex/.codex-plugin/plugin.json +1 -1
- package/dist/cli-bundle/chunks/chunk-LUI4E32I.js +0 -231
- package/dist/cli-bundle/chunks/chunk-SVK5Y64D.js +0 -40
- package/dist/cli-bundle/chunks/chunk-V5GBD5KV.js +0 -9
- package/dist/cli-bundle/chunks/register-operations-KFSCC7QV.js +0 -2
- package/dist/cli-bundle/focused-chunks/chunk-24IG6ONG.js +0 -2
- package/dist/cli-bundle/focused-chunks/chunk-3ITLIBKS.js +0 -56
- package/dist/cli-bundle/focused-chunks/chunk-3NQD5YDG.js +0 -2
- package/dist/cli-bundle/focused-chunks/chunk-65N6JHAN.js +0 -2
- package/dist/cli-bundle/focused-chunks/chunk-GUBM3RGY.js +0 -20
- package/dist/cli-bundle/focused-chunks/chunk-JX3RCVCX.js +0 -2
- package/dist/cli-bundle/focused-chunks/chunk-MV752SUC.js +0 -12
- package/dist/cli-bundle/focused-chunks/chunk-PKIPMCFS.js +0 -6
- package/dist/cli-bundle/focused-chunks/chunk-RJMR2JIF.js +0 -9
- package/dist/cli-bundle/focused-chunks/chunk-WIUPWIZR.js +0 -177
|
@@ -1,9 +0,0 @@
|
|
|
1
|
-
import{$ as w,Gc as ye,Lb as ge,Na as ae,Ta as ce,Yc as he,Zc as we,aa as b,la as L,sb as de,tb as ue,ub as le,vb as fe,wb as me,wc as P,xb as pe,yb as _e}from"./chunk-PKIPMCFS.js";import wt from"node:crypto";import{AsyncLocalStorage as bt}from"node:async_hooks";(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="aacc48ae-e9b2-5c8e-945f-89d05aff48e8")}catch{}})();var ke=new bt,be=1024;function xe(){let e=ke.getStore();if(e===void 0)return;let t=new Date(Date.parse(e.clock)+e.clockReads*e.tickMs).toISOString();return e.clockReads+=1,t}function br(e){let t=ke.getStore();if(t===void 0)return;if(!Number.isSafeInteger(e)||e<0||e>be)throw new Error(`Reproducible token length must be an integer between 0 and ${be}`);let n="";for(;n.length<e;){let r=wt.createHash("sha256").update(`${t.seed}\0${t.tokenReads}`).digest();t.tokenReads+=1;for(let o of r)if(n+=(o%36).toString(36),n.length===e)break}return n}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="fb1102d4-1beb-5de8-87e6-af2efebafe39")}catch{}})();var kt=/^([+-]?)(\d+)([hdwm])$/i,xt=/^[+-]?\d+[hdwm](?:[+-]\d+[hdwm])+$/i,vt=/^(\d{4})(\d{2})(\d{2})$/,Et=/^(\d{4})(\d{2})(\d{2})(?:[T\s]?)(\d{2})(\d{2})(\d{2})?([.,]\d{1,3})?(Z|[+-]\d{2}:?\d{2})?$/i,It=/^(\d{4}-\d{2}-\d{2})[T\s](\d{2})-(\d{2})(?:-(\d{2}))?([.,]\d{1,3})?(Z|[+-]\d{2}:?\d{2})?$/i,At=/^(\d{4}-\d{2}-\d{2})[T\s](\d{2})(\d{2})(\d{2})?([.,]\d{1,3})?(Z|[+-]\d{2}:?\d{2})?$/i,Ct=/^(\d{4})-(\d{2})-(\d{2})T(\d{2}):(\d{2}):(\d{2})(?:\.\d+)?(?:Z|[+-](\d{2}):(\d{2}))$/i;function Ee(){return xe()??new Date().toISOString()}function Ar(e){return Number.isFinite(Date.parse(e))}function St(e){let t=Ct.exec(e);if(!t||!Number.isFinite(Date.parse(e)))return!1;let[,n,r,o,i,s,a,c,d]=t,[f,m,l,u,p,_]=[n,r,o,i,s,a].map(Number);return m>=1&&m<=12&&l>=1&&l<=Y(f,m-1)&&u<=23&&p<=59&&_<=59&&(c===void 0||Number(c)<=23)&&(d===void 0||Number(d)<=59)}function Cr(e){let t=/\.(\d+)(?:Z|[+-]\d{2}:\d{2})$/iu.exec(e)?.[1];return St(e)&&(t===void 0||/^\d{0,3}0*$/u.test(t))}var Tt=1e4,U=new Map;function ve(e){let t=U.get(e);if(t!==void 0)return t;let n=Date.parse(e);return U.size>=Tt&&ge(U),U.set(e,n),n}function O(e,t){let n=ve(e),r=ve(t);return Number.isFinite(n)&&Number.isFinite(r)&&n!==r?n-r:e.localeCompare(t)}function Sr(e,t){return!(t.deadlineBefore&&(!e.deadline||O(e.deadline,t.deadlineBefore)>0)||t.deadlineAfter&&(!e.deadline||O(e.deadline,t.deadlineAfter)<0)||t.updatedAfter&&O(e.updated_at,t.updatedAfter)<0||t.updatedBefore&&O(e.updated_at,t.updatedBefore)>0||t.createdAfter&&O(e.created_at,t.createdAfter)<0||t.createdBefore&&O(e.created_at,t.createdBefore)>0)}function z(e){return e?`.${e.slice(1).padEnd(3,"0").slice(0,3)}`:""}function X(e){if(!e)return"";if(e.toUpperCase()==="Z")return"Z";let t=/^([+-]\d{2})(\d{2})$/.exec(e);return t?`${t[1]}:${t[2]}`:e}function Rt(e,t,n){n&&n!==t&&(e.includes(n)||e.push(n))}function Ot(e){let t=[],n=d=>Rt(t,e,d),r=vt.exec(e);if(r){let[,d,f,m]=r;n(`${d}-${f}-${m}`)}let o=Et.exec(e);if(o){let[,d,f,m,l,u,p,_,h]=o,x=p?`:${p}`:"";n(`${d}-${f}-${m}T${l}:${u}${x}${z(_)}${X(h)}`)}let i=It.exec(e);if(i){let[,d,f,m,l,u,p]=i,_=l?`:${l}`:"";n(`${d}T${f}:${m}${_}${z(u)}${X(p)}`)}let s=At.exec(e);if(s){let[,d,f,m,l,u,p]=s,_=l?`:${l}`:"";n(`${d}T${f}:${m}${_}${z(u)}${X(p)}`)}let a=10,c=e.slice(0,a);if(Mt(c)){let d=a;for(;d<e.length&&Nt(e[d]);)d+=1;d<e.length&&n(`${c}T${e.slice(d)}`)}return t}function Dt(e){let t=Date.parse(e);if(Number.isFinite(t))return t;for(let n of Ot(e)){let r=Date.parse(n);if(Number.isFinite(r))return r}return Number.NaN}function Mt(e){if(e.length!==10)return!1;for(let t=0;t<e.length;t+=1){let n=e[t];if(t===4||t===7){if(n!=="-")return!1;continue}let r=n.charCodeAt(0);if(r<48||r>57)return!1}return!0}function Nt(e){return e?e===" "||e===" "||e===`
|
|
2
|
-
`||e==="\r"||e==="\f"||e==="\v":!1}function Y(e,t){return new Date(Date.UTC(e,t+1,0)).getUTCDate()}var $t=["January","February","March","April","May","June","July","August","September","October","November","December"],Lt=/^(\d{4})-(\d{2})-(\d{2})/,Pt=/^(\d{4})(\d{2})(\d{2})(?:[T ]?\d{2}|$)/;function Ut(e,t,n){let r=Lt.exec(t)??Pt.exec(t);if(!r)return;let o=Number.parseInt(r[1],10),i=Number.parseInt(r[2],10),s=Number.parseInt(r[3],10),a=n?.trim()||"deadline";if(i<1||i>12)throw new b(`Invalid ${a} value "${e}". Month "${r[2]}" is out of range \u2014 use a month between 01 and 12.`,w.USAGE);let c=Y(o,i-1);if(s<1||s>c)throw new b(`Invalid ${a} value "${e}". ${$t[i-1]} ${o} has ${c} days, so day "${r[3]}" does not exist. Use a real YYYY-MM-DD calendar date.`,w.USAGE)}function Bt(e,t){let n=new Date(e.getTime()),r=n.getUTCDate(),o=n.getUTCMonth()+t,i=n.getUTCFullYear()+Math.floor(o/12),s=(o%12+12)%12,a=Math.min(r,Y(i,s));return n.setUTCFullYear(i,s,a),n}function Tr(e,t=new Date,n="deadline"){let r=e.trim();if(r.toLowerCase()==="now")return t.toISOString();let o=kt.exec(r);if(o){let s=o[1]==="-"?-1:1,a=Number.parseInt(o[2],10)*s,c=o[3].toLowerCase();if(c==="m")return Bt(t,a).toISOString();let d=c==="h"?3600*1e3:c==="d"?1440*60*1e3:10080*60*1e3;return new Date(t.getTime()+a*d).toISOString()}Ut(e,r,n);let i=Dt(r);if(!Number.isFinite(i)){let s=n.trim().length>0?n.trim():"deadline",a=xt.test(r)?"Compound relative expressions like +3d+1h are not supported; use a single relative token (for example +3d) or an ISO/date string.":'Use ISO/date string input, "now", or relative +6h/-6h/+1d/-1d/+2w/-2w/+6m/-6m.';throw new b(`Invalid ${s} value "${e}". ${a}`,w.USAGE)}return new Date(i).toISOString()}import{randomUUID as Je}from"node:crypto";import{appendFile as hn,mkdir as wn,readFile as bn,rename as kn,stat as xn,writeFile as vn}from"node:fs/promises";import Ze from"node:path";import{constants as Jt}from"node:fs";import v from"node:fs/promises";import G from"node:path";import{randomUUID as J}from"node:crypto";import{existsSync as Gt}from"node:fs";import{AsyncLocalStorage as Wt}from"node:async_hooks";import A from"node:path";(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="bd9832a9-f6a2-5351-a929-0a0d2766df88")}catch{}})();(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="3239b2c7-3ae3-5d4e-9005-b61000362304")}catch{}})();function Nr(){let e=Promise.resolve(),t=new Set;return{async read(n){let r=e,o,i=new Promise(s=>{o=s});t.add(i),await r;try{return await n()}finally{t.delete(i),o()}},write(n){let o=Promise.all([e,...t]).then(()=>n());return e=o.then(()=>{},()=>{}),o}}}function Ft(){let e=Promise.resolve(),t=0,n=[],r=()=>{if(t!==0)return;let o=n.splice(0);for(let i of o)i()};return{enqueue(o){t++;let i=e.then(()=>o());return e=i.then(()=>{},()=>{}).finally(()=>{t--,r()}),i},idle(){return t===0?Promise.resolve():new Promise(o=>n.push(o))}}}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="38024e6c-c1ef-5c15-8421-ac18d317e330")}catch{}})();var D=null,Ae=null,qt=null,Ht=null,K=null,jt=null,Ce=null,zt=null;var Xt=[],Se=new Wt;function g(){return Se.getStore()}function Xr(e){return Se.run({hooks:null,commands:null,parsers:null,preflight:null,services:null,renderers:null,registrations:null,commandContext:null,commandResult:void 0,affectedItems:[]},e)}var Yt=new Set(["body","comments","dependencies","docs","events","files","learnings","notes","reminders","test_runs","tests"]);function Ie(e){let t=A.resolve(e);for(;;){if(Gt(A.join(t,".git")))return t;let n=A.dirname(t);if(n===t)return;t=n}}function Kt(e){let t=process.env.PM_SOURCE_WORKSPACE_ROOT?.trim()||process.cwd(),n=Ie(t)??A.resolve(t),r=Ie(n);if(!e)return{source_workspace_root:n,...r?{repo_root:r}:{}};let o=A.relative(n,A.resolve(e)),i=o.length>0&&!o.startsWith(`..${A.sep}`)&&o!==".."&&!A.isAbsolute(o);return{source_workspace_root:n,...r?{repo_root:r}:{},...i?{pm_root_rel:o.split(A.sep).join("/")}:{}}}function Yr(e){let t=g();if(t){t.hooks=e;return}D=e}function Kr(e){let t=g();if(t){t.commands=e;return}Ae=e}function Jr(e){let t=g();if(t){t.parsers=e;return}qt=e}function Zr(e){let t=g();if(t){t.preflight=e;return}Ht=e}function Vr(e){let t=g();if(t){t.services=e;return}K=e}function Qr(e){let t=g();if(t){t.renderers=e;return}jt=e}function eo(e){let t=g();if(t){t.registrations=e;return}Ce=e}function to(){let e=g();return e?e.registrations:Ce}function no(e){if(!e)return;let t=g();t?t.affectedItems.push(e):Xt.push(e)}function ro(e,t){if(!e||!e.id)return{};let n={id:e.id,type:e.type,status:e.status};if(!Array.isArray(t))return n;let r=e;for(let o of t){if(typeof o!="string")continue;let i=o.startsWith("unset:")?o.slice(6):o;i==="id"||i==="type"||i==="status"||Yt.has(i)||Object.hasOwn(r,i)&&r[i]!==void 0&&(n[i]=r[i])}return n}async function Te(e){let t=g(),n=t?t.hooks:D;return n?ue(n,e):[]}async function oo(e){let t=g(),n=t?t.hooks:D;n&&await de(n,e)}async function Re(e){let t=g(),n=t?t.hooks:D;return n?le(n,e):[]}function io(){let e=g();return((e?e.hooks:D)?.onRead?.length??0)>0}async function so(e){let t=g(),n=t?t.hooks:D;return n?fe(n,e):[]}async function ao(e){let t=g(),n=t?t.commands:Ae;return n?me(n,{...e,...Kt(e.pm_root)}):{handled:!1,result:null,warnings:[]}}function Oe(e,t){let n=g(),r=n?n.commandContext:zt;return{service:e,command:r?.command,args:r?[...r.args]:[],options:r?.options?{...r.options}:{},global:r?.global?{...r.global}:void 0,pm_root:r?.pm_root,source_workspace_root:r?.source_workspace_root,repo_root:r?.repo_root,pm_root_rel:r?.pm_root_rel,payload:t}}async function B(e,t){let n=g(),r=n?n.services:K;return r?_e(r,Oe(e,t)):{handled:!1,result:t,warnings:[]}}function co(e,t){let n=g(),r=n?n.services:K;return r?pe(r,Oe(e,t)):{handled:!1,result:t,warnings:[]}}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="b21a63b8-9da9-5c7c-b288-3a2dae342bef")}catch{}})();function Zt(e){let t;try{t=JSON.parse(e)}catch{return{info:null,warnings:["lock_info_invalid_json"]}}if(typeof t!="object"||t===null||Array.isArray(t))return{info:null,warnings:["lock_info_invalid_shape"]};let n=t,r=n.id,o=n.pid,i=n.owner,s=n.token,a=n.created_at,c=n.ttl_seconds;return typeof r!="string"||typeof o!="number"||!Number.isFinite(o)||typeof i!="string"||s!==void 0&&(typeof s!="string"||s.trim().length===0)||typeof a!="string"||typeof c!="number"||!Number.isFinite(c)?{info:null,warnings:["lock_info_invalid_shape"]}:{info:{id:r,pid:o,owner:i,...typeof s=="string"?{token:s}:{},created_at:a,ttl_seconds:c},warnings:[]}}async function F(e,t=!0){try{let n=await v.readFile(e,"utf8");return t&&await Re({path:e,scope:"project"}),Zt(n)}catch(n){return L(n)?{info:null,warnings:[]}:{info:null,warnings:["lock_info_read_failed"]}}}function C(e,t){return typeof e=="object"&&e!==null&&"code"in e&&e.code===t}async function Vt(e,t,n=process.platform){if(C(e,"EEXIST"))return!0;if(!C(e,"EPERM")&&!C(e,"EACCES")&&!C(e,"EBUSY"))return!1;try{return await v.lstat(t),!0}catch(r){if(n!=="win32"||!L(r)&&!C(r,"EPERM")&&!C(r,"EACCES")&&!C(r,"EBUSY"))return!1}try{return await v.access(G.dirname(t),Jt.W_OK),!0}catch{return!1}}async function Pe(e,t){await Te({path:e,scope:"project",op:t})}function Qt(e,t,n,r=J()){return{id:e,pid:process.pid,owner:t,token:r,created_at:Ee(),ttl_seconds:n}}async function en(e,t,n,r,o){await v.mkdir(G.dirname(e),{recursive:!0});let i=await v.open(e,"wx");try{await i.writeFile(`${JSON.stringify(Qt(t,n,r,o),null,2)}
|
|
3
|
-
`,"utf8")}finally{await i.close()}await Pe(e,"lock:create")}async function Ue(e,t){try{return await v.unlink(e),await Pe(e,t),!0}catch{return!1}}async function tn(e,t,n,r){let o=Date.now(),i=Fe;for(;;){let s=await Xe(e,t);if(s!==null){try{let d=await F(e,!1);De(d.info,t,n,r)&&await Ue(e,"lock:release")}finally{await s()}return}let a=await F(e,!1);if(!De(a.info,t,n,r))return;let c=Date.now()-o;if(c>=Me)return;await qe(Math.min(i,Me-c)),i=Math.min(i*2,Z)}}function De(e,t,n,r){return e?.id===t&&e.pid===process.pid&&e.owner===n&&e.token===r}function Be(e,t){let n=e?.created_at?Date.parse(e.created_at):Number.NaN;return(Number.isFinite(n)?Date.now()-n:Number.POSITIVE_INFINITY)>t*1e3}function nn(e){return e?.owner?` (owner ${e.owner})`:""}var Fe=25,Z=200,rn=250,on=3,sn=".stale-cleanup",Ge="owner.json",We=1e4,Me=We+Z,an=60*6e4;function Ne(e){if(typeof e=="string"){let t=e.trim();if(!/^\d+$/.test(t))return;let n=Number(t);return Number.isSafeInteger(n)?n:void 0}if(typeof e=="number"&&Number.isFinite(e)&&e>=0)return Math.trunc(e)}function cn(e){let t=process.env.PM_LOCK_WAIT_MS,n=Ne(t);if(n!==void 0)return n;let r=Ne(e);return r!==void 0?r:0}function qe(e){let t=Math.max(1,Math.round(e*(.5+Math.random())));return new Promise(n=>setTimeout(n,t))}function He(e,t,n){let r=n>0?` after waiting ${n}ms`:"";return new b(`Item ${e} is locked${nn(t)}${r}`,w.CONFLICT,{code:"lock_conflict",recovery:{retry_after_ms:rn}})}function dn(e){if(typeof e=="function")return e;if(typeof e=="object"&&e!==null&&"release"in e){let t=e.release;return typeof t=="function"?t:null}return null}function un(e,t,n,r){if(!n&&r){let o=t.warnings.length>0?` (${t.warnings.join(",")})`:"";throw new b(`Item ${e} lock is stale${o}; rerun with --force when supported for this command`,w.CONFLICT)}}function ln(e){let t;try{t=JSON.parse(e)}catch{return null}if(typeof t!="object"||t===null||Array.isArray(t))return null;let n=t,r=n.pid,o=n.token,i=n.process_start_identity;return typeof r!="number"||!Number.isInteger(r)||r<=0||typeof o!="string"||o.length===0||i!==void 0&&(typeof i!="string"||!/^\d+$/u.test(i))?null:{pid:r,token:o,...typeof i=="string"?{process_start_identity:i}:{}}}async function je(e){try{return ln(await v.readFile(G.join(e,Ge),"utf8"))}catch{return null}}function fn(e){if(!Number.isSafeInteger(e)||e<=0)return!1;try{return process.kill(e,0),!0}catch(t){return!C(t,"ESRCH")}}function mn(e){let t=e.lastIndexOf(")");if(t<0)return null;let n=e.slice(t+2).trim().split(/\s+/u)[19];return n!==void 0&&/^\d+$/u.test(n)?n:null}async function ze(e){try{return mn(await v.readFile(`/proc/${e}/stat`,"utf8"))}catch{return null}}async function pn(e=process.pid){let t=await ze(e);return{pid:e,...t===null?{}:{process_start_identity:t}}}async function _n(e,t,n){if(!fn(e.pid))return!1;let r=await ze(e.pid);return e.process_start_identity!==void 0&&r!==null?r===e.process_start_identity:t<=n}async function V(e){try{return await v.rm(e,{recursive:!0,force:!0}),!0}catch{return!1}}async function $e(e,t){let n=await je(e);n===null||n.token!==t||await V(e)}async function Le(e){try{await v.mkdir(e)}catch(n){return C(n,"EEXIST"),null}let t={...await pn(),token:J()};try{await v.writeFile(G.join(e,Ge),`${JSON.stringify(t)}
|
|
4
|
-
`,"utf8")}catch{return await V(e),null}return t}async function gn(e){let t;try{let r=await v.stat(e);if(t=Date.now()-r.mtimeMs,t<=We)return!1}catch(r){return L(r)}let n=await je(e);return n!==null&&await _n(n,t,an)?!1:V(e)}async function Xe(e,t){let n=`${e}${sn}`,r=await Le(n);if(r!==null)return async()=>$e(n,r.token);if(!await gn(n))return null;let o=await Le(n);return o===null?null:async()=>$e(n,o.token)}async function yn(e){let t=await Xe(e.lockPath,e.id);if(t===null)return{lockInfo:e.fallbackLockInfo,shouldRetryCreate:!1,staleRemovalCounted:!1};try{let n=await F(e.lockPath);if(n.info===null&&n.warnings.length===0)return{lockInfo:n,shouldRetryCreate:!0,staleRemovalCounted:!1};if(!Be(n.info,e.ttlSeconds))return{lockInfo:n,shouldRetryCreate:!1,staleRemovalCounted:!1};if(un(e.id,n,e.force,e.forceRequiredForStaleLock),e.staleRemovals>=on)throw He(e.id,n.info,Date.now()-e.startedAtMs);return{lockInfo:n,shouldRetryCreate:await Ue(e.lockPath,"lock:stale_remove"),staleRemovalCounted:!0}}finally{await t()}}async function Ye(e,t,n,r,o=!1,i=!0,s){let a=await B("lock_acquire",{pm_root:e,id:t,ttl_seconds:n,owner:r,force:o,force_required_for_stale_lock:i});if(a.handled){let p=dn(a.result);if(p)return async()=>{await Promise.resolve(p()),await B("lock_release",{pm_root:e,id:t,owner:r})}}let c=ae(e,t),d=cn(s),f=Date.now(),m=0,l=Fe,u=J();for(;;)try{return await en(c,t,r,n,u),async()=>{await tn(c,t,r,u),await B("lock_release",{pm_root:e,id:t,owner:r})}}catch(p){if(!await Vt(p,c))throw new b(`Failed to acquire lock for ${t}: ${ce(p)}`,w.GENERIC_FAILURE);let _=await F(c);if(Be(_.info,n)){let x=await yn({lockPath:c,id:t,ttlSeconds:n,force:o,forceRequiredForStaleLock:i,staleRemovals:m,waitBudgetMs:d,startedAtMs:f,fallbackLockInfo:_});if(_=x.lockInfo,x.staleRemovalCounted&&(m+=1),x.shouldRetryCreate)continue}let h=Date.now()-f;if(d===0||h>=d)throw He(t,_.info,d===0?0:h);await qe(Math.min(l,d-h)),l=Math.min(l*2,Z)}}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="0c0d2e38-0964-5055-b2f5-6ba7602b2f92")}catch{}})();var Ve=2048,Qe=30,et=864e5,En=262144,In="context-usage-ledger",W=Symbol.for("@unbrained/pm-cli/context-usage-serving-receipt");function y(e){return typeof e=="object"&&e!==null&&!Array.isArray(e)?e:null}function Oo(e,t){let n=y(e);n!==null&&t!==null&&(n[W]=t)}function ee(e,t){let n=y(e),r=y(t),o=n?.[W];r!==null&&o!==void 0&&(r[W]=o)}function An(e){return y(e)?.[W]??null}function tt(e){let t=y(e);for(let n of["read_output","context_intent"])if(y(t?.[n])?.result_omitted===!0)return!0;return!1}function S(e,t){typeof t=="string"&&t.trim().length>0&&e.add(t.trim())}function nt(e,t){if(Array.isArray(t))for(let n of t)S(e,y(n)?.id)}function Ke(e,t){if(Array.isArray(t))for(let n of t)S(e,n)}function Cn(e,t){let n=y(e.recommended)===null?[]:[e.recommended];for(let r of["ready","decision_needed","gate_needed","containers","blocked","held_by_others"])Array.isArray(e[r])&&n.push(...e[r]);for(let r of n){let o=y(r);S(t,o?.id);for(let i of Array.isArray(o?.blockers)?o.blockers:[])S(t,y(i)?.id);for(let i of Array.isArray(o?.unblocks)?o.unblocks:[])S(t,i)}}function Sn(e,t){for(let n of["high_level","low_level","blocked_fallback","recently_created","unparented","activity","progress","blockers","staleness"])nt(t,e[n]);for(let n of Array.isArray(e.blockers)?e.blockers:[])S(t,y(n)?.blocked_by);Tn(e,t)}function Tn(e,t){for(let o of Array.isArray(e.hierarchy)?e.hierarchy:[]){let i=y(o);S(t,i?.id),nt(t,i?.children)}for(let o of["files","workload"])for(let i of Array.isArray(e[o])?e[o]:[])Ke(t,y(i)?.items);let n=y(e.agenda);for(let o of Array.isArray(n?.events)?n.events:[])S(t,y(o)?.item_id);let r=y(e.tests);Ke(t,r?.items_failing)}function Rn(e,t){let n=y(e);if(n===null||tt(e))return[];let r=new Set;return t==="next"?Cn(n,r):Sn(n,r),[...r]}async function Do(e){let t=An(e.result);if(t===null)return!1;let n=tt(e.result);return await On({pmRoot:e.pmRoot,receipt:t,deliveredItemIds:Rn(e.result,t.surface),resultOmitted:n}),!0}var E=class extends TypeError{code="context_usage_validation_failed";constructor(t){super(t),this.name="ContextUsageValidationError"}};function rt(e){return Ze.join(e,"runtime","context-usage.jsonl")}function M(e){let t=e.now??new Date().toISOString(),n=Date.parse(t);if(!Number.isFinite(n))throw new E("Context usage now must be a valid timestamp");return{iso:new Date(n).toISOString(),ms:n}}async function Q(e){try{let n=(await bn(rt(e.pmRoot),"utf8")).split(`
|
|
5
|
-
`).filter(Boolean).flatMap(s=>{try{return[JSON.parse(s)]}catch{return[]}}),r=e.maxEvents??Ve,o=e.retentionDays??Qe,i=M(e).ms-o*et;return n.filter(s=>Date.parse(s.at)>=i).slice(-r)}catch{return[]}}async function te(e,t,n){let r=e.maxEvents??Ve,o=e.retentionDays??Qe;if(!Number.isInteger(r)||r<1||!Number.isFinite(o)||o<=0)throw new E("Context usage retention requires positive maxEvents and retentionDays");let i=rt(e.pmRoot),s=Ze.dirname(i),a=await Ye(e.pmRoot,In,30,`context-usage:${process.pid}`,!1,!1,3e3);try{if(await wn(s,{recursive:!0}),n!==void 0&&(await Q(e)).some(m=>m.kind==="delivery"&&m.serve_id===n)||(await hn(i,t.map(m=>`${JSON.stringify(m)}
|
|
6
|
-
`).join(""),"utf8"),!(e.maxEvents!==void 0||e.retentionDays!==void 0)&&(await xn(i)).size<=En))return;let d=await Q(e),f=`${i}.${process.pid}.${Je()}.tmp`;await vn(f,`${d.map(m=>JSON.stringify(m)).join(`
|
|
7
|
-
`)}
|
|
8
|
-
`,"utf8"),await kn(f,i)}finally{await a()}}async function ot(e,t){await te(e,[t])}async function Mo(e){if([process.env.PM_CONTEXT_USAGE_DISABLED==="1",e.enabled===!1].includes(!0))return null;if(!e.author.trim()||e.rows.some(r=>!r.id.trim()||!Number.isInteger(r.rank)||r.rank<1))throw new E("Context usage serving requires an author and valid ranked rows");let t=e.rows.map(r=>({...r,id:r.id.trim()}));if(new Set(t.map(r=>r.id)).size!==t.length)throw new E("Context usage serving requires unique normalized row ids");let n={serve_id:Je(),author:e.author.trim(),surface:e.surface,rows:t};return await ot(e,{kind:"serve",schema_version:2,serve_id:n.serve_id,at:M(e).iso,author:e.author.trim(),surface:e.surface,profile:e.profile.trim()||"balanced",rows:n.rows.map(r=>({...r})),result_omitted:!1,packed_item_ids:n.rows.filter(r=>r.included).map(r=>r.id)}),n}async function On(e){if(e.receipt===null||process.env.PM_CONTEXT_USAGE_DISABLED==="1"||e.enabled===!1)return;let t=new Set(e.receipt.rows.map(o=>o.id)),n=[...new Set(e.deliveredItemIds.map(o=>o.trim()))];if(n.some(o=>o.length===0||!t.has(o))||e.resultOmitted&&n.length>0)throw new E("Context usage delivery requires emitted ranked ids and zero ids for an omitted result");let r={kind:"delivery",schema_version:2,serve_id:e.receipt.serve_id,at:M(e).iso,author:e.receipt.author,surface:e.receipt.surface,result_omitted:e.resultOmitted,delivered_item_ids:n};await te(e,[r],r.serve_id)}async function No(e){if(!(process.env.PM_CONTEXT_USAGE_DISABLED==="1"||e.enabled===!1)){if(!e.author.trim()||!e.itemId.trim()||!e.intent.trim())throw new E("Context usage touch requires author, itemId, and intent");await ot(e,{kind:"touch",at:M(e).iso,author:e.author.trim(),item_id:e.itemId.trim(),intent:e.intent.trim()})}}async function $o(e){if(process.env.PM_CONTEXT_USAGE_DISABLED==="1"||e.enabled===!1||e.itemIds.length===0)return;let t=e.author.trim(),n=e.intent.trim();if(!t||!n)throw new E("Context usage touch requires author and intent");let r=new Set;for(let s of e.itemIds){if(typeof s!="string")throw new E("Context usage touch requires string itemIds");let a=s.trim();if(!a)throw new E("Context usage touch requires non-empty itemId");r.add(a)}let o=M(e).iso,i=[...r].map(s=>({kind:"touch",at:o,author:t,item_id:s,intent:n}));await te(e,i)}function Dn(e,t,n,r){return e.find(({entry:o,time:i})=>o.item_id===t&&i>=n&&i-n<=r)?.time}function Mn(e,t){let n=new Map;for(let r of e)r.kind==="delivery"&&r.schema_version===2&&r.author===t&&!n.has(r.serve_id)&&n.set(r.serve_id,r);return n}async function Lo(e){if(process.env.PM_CONTEXT_USAGE_DISABLED==="1"||e.enabled===!1)return{affinity:{},positive_judgments:0,serving_events:0,untrusted_serving_events:0};let t=await Q(e),n=M(e).ms,r=(e.horizonHours??24)*36e5;if(![Number.isFinite(r),r>0].every(Boolean))throw new E("Context usage horizonHours must be positive");let o=e.author.trim(),i=t.filter(u=>u.kind==="touch").filter(u=>u.author===o).map(u=>({entry:u,time:Date.parse(u.at)})),s=new Map,a=0,c=0,d=0,f=Mn(t,o);t.filter(u=>u.kind==="serve").filter(u=>u.author===o).forEach(u=>{if(![u.schema_version===2,!!u.serve_id].every(Boolean)){c+=1;return}a+=1;let p=Date.parse(u.at),_=f.get(u.serve_id),h=new Set(_?.delivered_item_ids??[]);for(let x of u.rows){if(!h.has(x.id))continue;let se=Dn(i,x.id,p,r);if(se===void 0)continue;d+=1;let ht=Math.max(0,(n-se)/et);s.set(x.id,(s.get(x.id)??0)+Math.exp(-ht/14))}});let m=Math.max(0,...s.values());return{affinity:Object.fromEntries([...s.entries()].map(([u,p])=>[u,m===0?.05:.05+.95*p/m])),positive_judgments:d,serving_events:a,untrusted_serving_events:c}}import{AsyncLocalStorage as Vn}from"node:async_hooks";(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="288a7da9-888b-527d-88fb-4711917cec5b")}catch{}})();var Nn=e=>{let t='"',n=0;for(let r of e){if(r==="\\"){n+=1;continue}t+="\\".repeat(r==='"'?n*2+1:n),t+=r,n=0}return`${t}${"\\".repeat(n*2)}"`},$n=(e,t=process.platform)=>(t==="win32"?/^[A-Za-z0-9._:/\\@=-]+$/:/^[A-Za-z0-9._:/@=-]+$/).test(e)?e:t==="win32"?Nn(e):`"${e.replace(/(["\\$`])/g,"\\$1")}"`,ne=(e,t=process.platform)=>{let n=e.map(r=>$n(r,t)).join(" ");return n.length>0?`pm ${n}`:"pm"};(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="db6180ed-0b18-5bf8-bcc1-24171e2dfdc4")}catch{}})();var ct=new WeakMap;function Go(e,t){ct.set(e,new Set(t))}var it='.row_contract.row_keys[] as $key | getpath($key | split(".")) | if type == "array" then .[] else if type == "object" then to_entries[] else empty end end',Ln={context:{row_keys:["high_level","low_level"],fields:"supported"},get:{row_keys:["children"],fields:"supported"},list:{row_keys:["items"],fields:"supported"},next:{row_keys:["recommended","ready","decision_needed","gate_needed","containers","blocked","held_by_others"],fields:"unsupported"},search:{row_keys:["items"],fields:"supported"},activity:{row_keys:["activity_digest","compact_activity","provenance_activity","activity"],fields:"unsupported"},history:{row_keys:["compact_history","provenance_history","history"],fields:"unsupported"},deps:{row_keys:["graph.nodes","graph.edges","context.nodes","context.edges"],fields:"unsupported"},health:{row_keys:["checks"],fields:"unsupported"},aggregate:{row_keys:["groups"],fields:"unsupported"},duplicates:{row_keys:["clusters"],fields:"unsupported"},stats:{row_keys:["by_type","by_status"],fields:"unsupported"},comments:{row_keys:["comments"],fields:"unsupported"},notes:{row_keys:["notes"],fields:"unsupported"},learnings:{row_keys:["learnings"],fields:"unsupported"},files:{row_keys:["files"],fields:"unsupported"},docs:{row_keys:["docs"],fields:"unsupported"},validate:{row_keys:["checks","warnings"],fields:"unsupported"},contracts:{row_keys:["command_summaries","commands"],fields:"unsupported"}},Pn=[{command:"activity",complete_mode:"full",omissions_by_mode:{digest:[{name:"event_rows",restore_with:"--raw"}],compact:[{name:"provenance",restore_with:"--full"}],provenance:[{name:"patch_and_hashes",restore_with:"--full"}]}},{command:"history",complete_mode:"full",omissions_by_mode:{compact:[{name:"raw_history",restore_with:"--full"}],provenance:[{name:"patch_and_hashes",restore_with:"--full"}]}}];function Wo(e,t,n){if(e&&t)throw new b(`${n} cannot be combined with --full`,w.USAGE)}function I(e,t=new Set){let n=e.filter(r=>!t.has(r.name)).map(r=>({...r}));return{has_omissions:n.length>0,omitted_field_group_count:n.length,omitted_field_groups:n}}function qo(e,t){let n=Pn.find(o=>o.command===e);if(n===void 0)throw new TypeError(`Unknown mode-paired output command: ${e}`);if(t===n.complete_mode)return I([]);let r=n.omissions_by_mode[t];if(r===void 0)throw new TypeError(`Unknown ${e} output mode: ${t}`);return I(r)}var Un=[{name:"hierarchy",restore_with:"--depth standard"},{name:"activity",restore_with:"--depth standard"},{name:"progress",restore_with:"--depth standard"},{name:"blockers",restore_with:"--depth standard"},{name:"recently_created",restore_with:"--depth standard"},{name:"unparented",restore_with:"--depth standard"},{name:"files",restore_with:"--depth deep"},{name:"workload",restore_with:"--depth standard"},{name:"staleness",restore_with:"--depth deep"},{name:"tests",restore_with:"--depth deep"},{name:"workspace_memory",restore_with:"--depth deep"}];function k(e){return typeof e=="object"&&e!==null&&!Array.isArray(e)}var Bn=new Set([void 0,"tabular_when_uniform"]),Fn=new Set(["collection","none"]),Gn=new Set(["supported","unsupported"]);function st(e,t){return Array.isArray(e)&&(t||e.length>0)&&e.every(n=>typeof n=="string"&&n.length>0)&&new Set(e).size===e.length}function Wn(e){return k(e)&&typeof e.command=="string"&&e.command.trim().length>0&&Fn.has(e.row_kind)&&st(e.row_keys,!0)&&(e.continuation_row_keys===void 0||st(e.continuation_row_keys,!1))&&Gn.has(e.fields)&&Bn.has(e.toon_encoding)&&(e.row_kind==="collection"?e.row_keys.length>0&&typeof e.jq_selector=="string"&&e.jq_selector.trim().length>0:e.row_keys.length===0&&e.jq_selector===void 0)}var qn={ancestors:["ids"],descendants:["ids"],predecessors:["ids"],successors:["ids"],paths:["paths"],impact:["affected"],audit:["findings"],communities:["communities"],redundancy:["redundant"],dominators:["bottlenecks"],slack:["rows"],centrality:["rows"],articulation:["articulation_points","bridges"],plan:["steps"]},Hn={context:["sections_included","high_level","low_level"],get:["item"],list:["items","projection"],next:["recommended","ready","decision_needed","gate_needed","containers","blocked","held_by_others"],search:["items","projection"],activity:["activity_digest","compact_activity","provenance_activity","activity"],history:["compact_history","provenance_history","history"],deps:["tree","graph","projection"],health:["checks"],aggregate:["groups"],duplicates:["clusters"],stats:["totals","by_type","by_status"],comments:["comments"],notes:["notes"],learnings:["learnings"],files:["files"],docs:["docs"],validate:["checks","warnings"],contracts:["command_summaries","commands","selected"]};function jn(e,t){let n=e.trim().toLowerCase().split(/\s+/u,1)[0],r=n?.startsWith("list-")?"list":n;if(r==="graph"){let s=typeof t.subcommand=="string"?t.subcommand:"";if(s.length===0)return;let a=qn[s];if(a===void 0)return;let c=a.filter(d=>Array.isArray(t[d])||k(t[d]));return{command:"graph",row_kind:c.length>0?"collection":"none",row_keys:c,fields:"unsupported",...c.length>0?{jq_selector:it}:{},toon_encoding:"tabular_when_uniform"}}let o=Ln[r],i=Hn[r];return o===void 0||i===void 0||!i.some(s=>Object.hasOwn(t,s))?void 0:(()=>{let s=o.row_keys.filter(a=>{let c=a.split(".").reduce((d,f)=>k(d)?d[f]:void 0,t);return Array.isArray(c)||k(c)});return{command:r,row_kind:s.length>0?"collection":"none",row_keys:s,fields:o.fields,...s.length>0?{jq_selector:it}:{},toon_encoding:"tabular_when_uniform"}})()}function zn(e){if(!k(e.projection)||typeof e.projection.mode!="string"||e.projection.mode.trim().length===0)return;let t=e.projection.declared_field_groups,n=e.projection.included_field_groups;if(!Array.isArray(t)||!Array.isArray(n))return;let r=t.filter(s=>k(s)&&typeof s.name=="string"&&s.name.trim().length>0&&typeof s.restore_with=="string"&&s.restore_with.trim().length>0),o=n.filter(s=>typeof s=="string");if(r.length!==t.length||o.length!==n.length)return;let i=new Set(r.map(s=>s.name));if(!(i.size!==r.length||new Set(o).size!==o.length||o.some(s=>!i.has(s))))return I(r,new Set(o))}function Xn(e){if(!Array.isArray(e.sections_included))return;let t=I(Un,new Set(e.sections_included.filter(n=>typeof n=="string")));return k(e.summary)&&e.summary.scope==="matching_items"&&(t.summary_scope="matching_items"),t}function Yn(e){if(!k(e.item))return;let t=e.item,n=["comments","notes","learnings","files","tests","docs","reminders","events"],r=["body","children","claim_state","linked","schedule"],o=ct.get(e),i=a=>n.includes(a)||a==="body"?t:e,s=["body",...n,...r.slice(1)].filter(a=>o===void 0||o.has(a)||Object.hasOwn(i(a),a)).map(a=>({name:a,restore_with:`--fields ${a}`}));return I(s,new Set(s.flatMap(({name:a})=>Object.hasOwn(i(a),a)?[a]:[])))}function at(e){if(k(e.projection))return I([{name:"full_item_fields",restore_with:"--full"}],new Set(e.projection.mode==="full"?["full_item_fields"]:[]))}function Kn(e){if(!k(e.projection))return I([]);if(typeof e.projection.mode=="string")return I([{name:"full_check_details",restore_with:"--full"}],new Set(e.projection.mode==="full"?["full_check_details"]:[]))}function Jn(e){if(!(!k(e.selected)||typeof e.selected.summary!="boolean"))return I([{name:"full_contract_catalog",restore_with:"--full"}],new Set(e.selected.summary?[]:["full_contract_catalog"]))}function Zn(e,t){let n=zn(t);if(n!==void 0)return n;let[r]=e.split(/\s+/u,1);if(r==="context")return Xn(t);if(r==="get")return Yn(t);if(r==="list"||r.startsWith("list-"))return at(t);if(r==="search")return at(t)??I([{name:"projection_metadata",restore_with:"--full"}]);if(r==="health")return Kn(t);if(r==="contracts")return Jn(t)}function dt(e,t){if(e===void 0||!k(t))return t;let n=Zn(e,t),r=t.row_contract,o=Wn(r)?r:jn(e,t),i=o!==void 0?{...t,row_contract:o}:Object.hasOwn(t,"row_contract")?Object.fromEntries(Object.entries(t).filter(([s])=>s!=="row_contract")):t;return k(i.omission_receipt)||n===void 0?i:{...i,omission_receipt:n}}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="d6fc4c70-c955-5fb5-ab4b-5dfa1200d58d")}catch{}})();var lt=Object.freeze([{command:"context",intent:"orient",description:"Bounded active hierarchy, ownership, blockers, and recent progress.",included_field_groups:["summary","focus","hierarchy","blockers","activity"],token_budget:3e3,source:"core"},{command:"context",intent:"handoff",description:"Active ownership, evidence, decisions, and immediate continuation context.",included_field_groups:["summary","focus","in_progress","decisions","activity"],token_budget:2200,source:"core"},{command:"get",intent:"inspect",description:"Standard-depth item metadata, relationships, evidence, and lifecycle state.",included_field_groups:["item","children","claim_state","linked"],token_budget:3200,source:"core"},{command:"list",intent:"triage",description:"A budget-derived page of compact governance, ownership, priority, and blocker rows for triage.",included_field_groups:["identity","governance","ownership","dependencies"],token_budget:3200,source:"core"},{command:"next",intent:"execute",description:"The highest-ranked actionable work with concise ranking evidence.",included_field_groups:["recommended"],token_budget:1200,source:"core"},{command:"search",intent:"discover",description:"A budget-derived page of ranked canonical lineage candidates with compact match evidence.",included_field_groups:["identity","status","lineage","match"],token_budget:1800,source:"core"}]),ft=new Vn;function Qn(){return ft.getStore()??lt}function Qo(e,t){return ft.run(tr(e.workspaceContracts,e.packageContracts),t)}function er(e,t){let n=e.command.trim().toLowerCase(),r=e.intent.trim().toLowerCase(),o=`${n}:${r}`;if(!/^[a-z0-9][a-z0-9-]*$/.test(n)||!/^[a-z0-9][a-z0-9-]*$/.test(r))throw new TypeError(`Invalid context intent command or name: ${o}`);if(e.description.trim().length===0)throw new TypeError(`Context intent ${o} requires a non-empty description`);if(!Number.isSafeInteger(e.token_budget)||e.token_budget<=0)throw new TypeError(`Context intent ${o} requires a positive integer token_budget`);let i=[...new Set(e.included_field_groups.map(s=>s.trim()).filter(Boolean))];if(i.length===0)throw new TypeError(`Context intent ${o} requires included_field_groups`);return{command:n,intent:r,description:e.description.trim(),included_field_groups:i,token_budget:e.token_budget,source:t}}function tr(e=[],t=[]){let n=[{source:"core",contracts:lt,allowOverride:!1},{source:"package",contracts:t,allowOverride:!1},{source:"workspace",contracts:e,allowOverride:!0}],r=new Map,o=new Set;for(let i of n){o.clear();for(let s of i.contracts){let a=er(s,i.source),c=`${a.command}:${a.intent}`;if(o.has(c))throw new TypeError(`Duplicate context intent declaration: ${c}`);if(o.add(c),!i.allowOverride&&r.has(c))throw new TypeError(`Duplicate context intent declaration: ${c}`);r.set(c,a)}}return[...r.values()].sort((i,s)=>i.command.localeCompare(s.command)||i.intent.localeCompare(s.intent))}function mt(e,t,n=Qn(),r=[]){let o=e.trim().toLowerCase(),i=t.trim().toLowerCase(),s=n.find(l=>l.command===o&&l.intent===i);if(s)return{...s,source:s.source??"core"};let a=n.filter(l=>l.command===o).map(l=>l.intent);if(a.length===0)return;let c=a.map(l=>{let u=Array.from({length:i.length+1},(p,_)=>_);for(let p=1;p<=l.length;p+=1){let _=u[0];u[0]=p;for(let h=1;h<=i.length;h+=1){let x=u[h];u[h]=Math.min(u[h]+1,u[h-1]+1,_+(l[p-1]===i[h-1]?0:1)),_=x}}return{candidate:l,distance:u[i.length]}}).sort((l,u)=>l.distance-u.distance||l.candidate.localeCompare(u.candidate))[0].candidate,d=[o,...r,"--for",i],f=[o,...r,"--for",c],m=ne(f);throw new b(`Unknown context intent "${i}" for ${o}. Did you mean "${c}"?`,w.USAGE,{code:"unknown_context_intent",reason:"unknown_intent",field:"for",flag:"--for",value:i,required:`Use a declared ${o} intent.`,why:"Intent names are command-local contracts and cannot be inferred from output section names.",nextSteps:[m],recovery:{recovery_mode:"compact",attempted_command:ne(d),allowed_values:[...a].sort(),suggested_retry:m,suggested_retry_args:f}})}var pt={context:(e,t,n)=>{e.depth===void 0&&(e.depth=t.intent==="handoff"?"deep":"standard"),e.section===void 0&&(e.section=t.intent==="handoff"?["activity","progress","blockers"]:["hierarchy","blockers","activity"]);let r=H(e.tokenBudget,t.token_budget),o=j("context",t.intent,r,n),i=R(e.limit),s=String(i===void 0?o:Math.min(i,o));(e.limit===void 0||i!==void 0)&&(e.limit=s),e.activityLimit===void 0&&(e.activityLimit=s)},get:e=>{e.depth===void 0&&e.fields===void 0&&(e.depth="standard")},list:(e,t,n)=>{e.brief===void 0&&e.compact===void 0&&e.full===void 0&&e.fields===void 0&&(e.fields="id,title,status,type,priority,parent,assignee,risk,blocked_by");let r=H(e.tokenBudget,t.token_budget),o=j("list",t.intent,r,n),i=R(e.limit);(e.limit===void 0||i!==void 0)&&(e.limit=String(i===void 0?o:Math.min(i,o)))},next:e=>{e.readyOnly===void 0&&(e.readyOnly=!0)},search:(e,t,n)=>{e.compact===void 0&&e.full===void 0&&e.fields===void 0&&(e.compact=!0);let r=H(e.tokenBudget,t.token_budget),o=j("search",t.intent,r,n),i=R(e.limit);(e.limit===void 0||i!==void 0)&&(e.limit=String(i===void 0?o:Math.min(i,o)))}};function ei(e,t,n=[]){let r=t.tokenBudget??t.token_budget;if(typeof t.for!="string"){if(r!==void 0&&(e==="get"||e==="list"||e==="search"))throw new b("--token-budget requires a declared context intent selected with --for",w.USAGE,{code:"missing_required_option",field:"for",required:"Select a context intent with --for when setting --token-budget.",why:"A token-budget override has no projection contract to constrain without a selected intent.",nextSteps:["Retry with --for <intent> --token-budget <n>, or omit --token-budget."]});if(t.tokenBudget!==void 0||t.token_budget===void 0)return t;let a={...t,tokenBudget:r};return delete a.token_budget,a}let o=mt(e,t.for,void 0,n),i=R(r)!==void 0,s={...t};return s.tokenBudget===void 0&&r!==void 0&&(s.tokenBudget=r),delete s.token_budget,s.tokenBudget===void 0&&(s.tokenBudget=String(o.token_budget)),pt[e](s,o,i),s}var nr={context:"bounded_sections",get:"standard_item",list:"bounded_fields_and_rows",next:"bounded_ranked_rows",search:"bounded_ranked_rows"},q=256;function re(e){return Array.isArray(e)?e.map(re):e!==null&&typeof e=="object"?Object.fromEntries(Object.entries(e).map(([t,n])=>[t,re(n)])):typeof e=="string"&&e.length>240?`${e.slice(0,240)}\u2026`:e}function R(e){let t=typeof e=="number"?e:typeof e=="string"&&/^\d+$/u.test(e.trim())?Number(e):Number.NaN;return Number.isSafeInteger(t)&&t>0?t:void 0}function H(e,t){let n=R(e);if(n===void 0)return t;if(n<q)throw new b(`Context intent token budget must be at least ${q}`,w.USAGE,{code:"invalid_argument_value",reason:"below_minimum",field:"tokenBudget",required:`Use an integer token budget of at least ${q}.`,why:"Smaller ceilings cannot contain the minimum machine-readable intent receipt.",nextSteps:[`Retry with --token-budget ${q} or omit the override.`]});return n}function j(e,t,n,r){if(e==="get"||e==="next")return;let o=e==="context"&&t==="orient",i=e==="context"?o?1200:800:e==="list"?520:480,s=e==="context"?o?600:500:16,a=Math.max(e==="context"?1:2,Math.floor((n-i)/s));return r?a:Math.min(e==="context"?20:100,a)}function T(e,t){let n=t.estimated_tokens;for(;;){t.estimated_tokens=n;let r=Math.ceil(Buffer.byteLength(JSON.stringify(e),"utf8")/4);if(r===n)return;n=r}}var ut={context:["high_level","low_level","blocked_fallback","recently_created","unparented","hierarchy","activity","blockers"],get:["children"],list:["items"],next:["ready","decision_needed","gate_needed","containers","blocked","held_by_others"],search:["items"]};function _t(e){try{let t=JSON.parse(Buffer.from(e,"base64url").toString("utf8"));return typeof t.fingerprint!="string"||!Number.isSafeInteger(t.after_index)?void 0:{fingerprint:t.fingerprint,after_index:t.after_index,...typeof t.snapshot=="string"?{snapshot:t.snapshot}:{}}}catch{return}}function rr(e){if(e===null||typeof e!="object")return;if(typeof e.id=="string")return e.id;let t=e.item?.id;return typeof t=="string"?t:void 0}function or(e,t,n){let r=!1;for(;;){if(T(e,t),t.estimated_tokens<=t.token_budget||n.length<=1)return r;let o=Buffer.byteLength(JSON.stringify(n),"utf8"),i=(t.estimated_tokens-t.token_budget)*4;n.splice(-Math.min(n.length-1,Math.max(1,Math.ceil(i/Math.max(1,Math.ceil(o/n.length)))))),r=!0}}function ir(e,t,n){let r=e.items,o=typeof e.next_cursor=="string",i=o?e.next_cursor:n.after;if(!Array.isArray(r)||typeof i!="string")return!1;let s=_t(i);if(s===void 0)return!1;let a=r.length,c=[...r],d=!1;for(;;){if(d=or(e,t,r)||d,!d)return!1;let f=rr(r.at(-1));if(f===void 0)return r.splice(0,r.length,...c),T(e,t),!1;if(e.next_cursor=ye(s.fingerprint,f,o?s.after_index-(a-r.length):s.after_index+r.length,s.snapshot),T(e,t),t.estimated_tokens<=t.token_budget||r.length<=1)break}return typeof e.count=="number"&&(e.count=r.length),typeof e.applied_limit=="number"&&(e.applied_limit=r.length),!0}function sr(e,t,n,r){if(e==="list"||e==="search")return ir(t,n,r);if(e!=="next"||typeof t.next_cursor=="string")return!1;let o=!1;for(;;){if(T(t,n),n.estimated_tokens<=n.token_budget)return o;let i=ut[e].map(l=>({key:l,rows:Array.isArray(t[l])?t[l]:[]})).filter(({rows:l})=>l.length>0).sort((l,u)=>u.rows.length-l.rows.length||l.key.localeCompare(u.key))[0];if(i===void 0)return o;let s=ut[e].reduce((l,u)=>l+(Array.isArray(t[u])?t[u].length:0),0);if(s<=1)return o;let a=Math.min(i.rows.length,s-1),c=Buffer.byteLength(JSON.stringify(i.rows),"utf8"),d=Math.max(1,Math.ceil(c/i.rows.length)),f=(n.estimated_tokens-n.token_budget)*4,m=Math.min(a,Math.max(1,Math.ceil(f/d)));i.rows.splice(-m,m),o=!0}}function ar(e,t,n){if(typeof t.for!="string")return n;let r=e.startsWith("list-")?"list":e;if(!(r in pt))return n;let o=r,i=mt(o,t.for),s=H(t.tokenBudget??t.token_budget,i.token_budget),a={command:o,intent:i.intent,source:i.source,included_field_groups:[...i.included_field_groups],token_budget:s,declared_token_budget:i.token_budget,token_budget_override:s-i.token_budget,estimated_tokens:0,within_budget:!0,degradation:nr[o],declaration_feasible:!0,result_omitted:!1},c={...n},d=j(o,i.intent,a.token_budget,R(t.tokenBudget??t.token_budget)!==void 0);if(d!==void 0){let m=R(t.limit),l=m!==void 0&&m<d;a.budget_derived_limit=d,a.binding_constraint=l?"explicit_limit":"token_budget",a.limit_reason=l?"The caller supplied a smaller row limit than the budget-derived ceiling.":"The selected intent token budget constrains the effective row ceiling.",c.budget_derived_limit=d}let f={...c,context_intent:a};return T(f,a),a.estimated_tokens>a.token_budget&&(a.degradation="recursive_budget_compaction",f={...re(c),context_intent:a},T(f,a)),a.estimated_tokens>a.token_budget&&sr(o,f,a,t)&&(a.degradation="budget_row_compaction",T(f,a)),a.declaration_feasible=a.estimated_tokens<=a.declared_token_budget,a.estimated_tokens>a.token_budget&&(a.degradation="budget_receipt_only",a.result_omitted=!0,a.within_budget=!1,f={budget_exceeded:{omitted_result:!0,reason:a.token_budget_override===0?"declared_budget_infeasible":"effective_budget_infeasible",restore_with:dr(e,o,i.intent,a,c)},context_intent:a}),f}function cr(e,t){if(typeof e.after!="string"||e.after.length===0)return t;let n=_t(e.after)?.fingerprint??"opaque_cursor",r={...t};for(let o of["applied_limit","completeness","context_intent","count","filters","has_more","now","omission_receipt","projection","row_contract","sorting","total","truncated"])delete r[o];return r.continuation_contract={fingerprint:n,metadata:"reference",restore_with:"omit --after"},r}function oe(e){return e!==null&&typeof e=="object"&&!Array.isArray(e)}function dr(e,t,n,r,o){let i=t==="get"&&oe(o.item)&&typeof o.item.id=="string"?o.item.id:t==="search"&&typeof o.query=="string"?o.query:void 0,s=i===void 0?"":` '${i.replaceAll("'",`'"'"'`)}'`,a=t==="get"?"":` --limit ${r.budget_derived_limit??1}`;return`pm ${e}${s} --for ${n} --token-budget ${Math.ceil(r.estimated_tokens/100)*100}${a}`}function N(e,t){if(oe(e))return typeof e[t]=="number"?e[t]:void 0}function ur(e,t){let n=e;for(let r=0;r<8;r+=1){let o=N(n.context_intent,"estimated_tokens"),i=N(n.read_output,"estimated_tokens"),s=N(n.read_session,"spent_this_call_tokens");if(oe(n.context_intent)&&T(n,n.context_intent),n=he(n,t),N(n.context_intent,"estimated_tokens")===o&&N(n.read_output,"estimated_tokens")===i&&N(n.read_session,"spent_this_call_tokens")===s)break}return n}function ti(e,t,n){let r=dt(e,n),o=typeof r=="object"&&r!==null&&!Array.isArray(r)?we(e??"",t,cr(t,ar(e??"",t,r))):r;if(ee(n,o),t.outputRowContract===!0||t.output_row_contract===!0||typeof o!="object"||o===null||Array.isArray(o)||!Object.hasOwn(o,"row_contract"))return o;let i=ur(Object.fromEntries(Object.entries(o).filter(([s])=>s!=="row_contract")),t);return ee(o,i),i}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="02baf966-46eb-5e19-b7eb-2f9fe05bb263")}catch{}})();var $=["result_rows","envelope","diagnostics","hints"],lr=/^(?:items|results|rows|ready|blocked|recommended|decision_needed|children|dependencies|events|matches|commands|tools)$/u,fr=/^(?:diagnostics|errors?|warnings?|findings|violations|failures?)$/u,mr=/^(?:hints?|suggestions?|next_steps?|recovery|remediation|examples?)$/u,pr=8;function ie(e){return Buffer.byteLength(e,"utf8")}function gt(e){return ie(JSON.stringify(e)??"null")}function _r(e,t){return fr.test(e)?"diagnostics":mr.test(e)?"hints":lr.test(e)||Array.isArray(t)?"result_rows":"envelope"}function gr(e){let t={result_rows:0,envelope:0,diagnostics:0,hints:0};if(typeof e!="object"||e===null||Array.isArray(e))return t[Array.isArray(e)?"result_rows":"envelope"]=gt(e),t;for(let[n,r]of Object.entries(e))t[_r(n,r)]+=gt({[n]:r});return Object.values(t).every(n=>n===0)&&(t.envelope=1),t}function yr(e,t){let n=$.reduce((s,a)=>s+t[a],0),r=$.map(s=>({section:s,value:e*t[s]/n})),o={result_rows:0,envelope:0,diagnostics:0,hints:0};for(let s of r)o[s.section]=Math.floor(s.value);let i=e-$.reduce((s,a)=>s+o[a],0);for(let s of[...r].sort((a,c)=>c.value-Math.floor(c.value)-(a.value-Math.floor(a.value))||$.indexOf(a.section)-$.indexOf(c.section))){if(i===0)break;o[s.section]+=1,i-=1}return o}function yt(e,t){return typeof e=="object"&&e!==null&&!Array.isArray(e)?{...e,token_accounting:t}:{result:e,token_accounting:t}}function oi(e,t){let n=ie(t(e)),r=yr(n,gr(e)),o=Object.fromEntries($.map(a=>[a,{bytes:r[a],estimated_tokens:P(r[a])}])),i={version:1,measurement_scope:"output_before_token_accounting",estimator:"ceil(utf8_bytes / 4)",total_bytes:n,total_estimated_tokens:P(n),sections:o,accounting_receipt_bytes:0,accounting_receipt_estimated_tokens:0,excluded_fields:["token_accounting"],section_allocation:"proportional_canonical_json"},s=yt(e,i);for(let a=0;a<pr;a+=1){let c=ie(t(s))-n;if(c===i.accounting_receipt_bytes)return s;i={...i,accounting_receipt_bytes:c,accounting_receipt_estimated_tokens:P(c)},s=yt(e,i)}return s}export{$n as a,ne as b,Go as c,Wo as d,qo as e,dt as f,Nr as g,Ft as h,Xr as i,Kt as j,Yr as k,Kr as l,Jr as m,Zr as n,Vr as o,Qr as p,eo as q,to as r,no as s,ro as t,Te as u,oo as v,Re as w,io as x,so as y,ao as z,B as A,co as B,br as C,Ee as D,Ar as E,St as F,Cr as G,O as H,Sr as I,Tr as J,pn as K,_n as L,Ye as M,Oo as N,ee as O,Rn as P,Do as Q,E as R,Mo as S,On as T,No as U,$o as V,Lo as W,lt as X,Qn as Y,Qo as Z,tr as _,mt as $,ei as aa,_t as ba,rr as ca,ar as da,ti as ea,oi as fa};
|
|
9
|
-
//# sourceMappingURL=chunk-RJMR2JIF.js.map
|