@etiquekit/etq 1.0.12 → 1.0.14
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/AGENTS.md +19 -26
- package/LICENSE +2 -3
- package/NOTICE +6 -4
- package/QuickStart.md +35 -47
- package/README.md +54 -54
- package/bin/etiquette +1 -5
- package/bin/etiquette-core +1 -5
- package/docs/ARCHITECTURE.md +5 -5
- package/docs/CODEX_CLIENT_COMPATIBILITY.md +1 -1
- package/docs/CONCEPTS.md +7 -23
- package/docs/CONCEPT_STATUS.md +66 -0
- package/docs/CORE_PROFILE.md +3 -5
- package/docs/LANE_PROVISIONING.md +7 -2
- package/docs/README.md +4 -4
- package/docs/RELEASE_SURFACE_AUDIT.md +8 -7
- package/docs/SEAT_DISCIPLINE.md +55 -91
- package/docs/SEAT_PROVISIONING.md +19 -22
- package/docs/TEAM_HANDOFF.md +21 -21
- package/docs/WORKTREE_QOL.md +7 -6
- package/docs/contracts/ledger-entry/README.md +11 -11
- package/docs/contracts/ledger-entry/ledger-entry.v0.2.md +3 -3
- package/docs/contracts/ledger-entry/ledger-entry.v0.md +8 -8
- package/package.json +9 -9
- package/packages/control/src/authority/lease.ts +261 -0
- package/packages/control/src/authority/node-delegation.ts +257 -0
- package/packages/control/src/authority/rig-conductor.ts +632 -0
- package/packages/control/src/cli/argv.ts +155 -0
- package/packages/control/src/cli/commands/console.ts +200 -0
- package/packages/control/src/cli/commands/dispatch-core.ts +89 -0
- package/packages/control/src/cli/commands/dispatch.ts +279 -0
- package/packages/control/src/cli/commands/harness.ts +89 -0
- package/packages/control/src/cli/commands/hook.ts +50 -0
- package/packages/control/src/cli/commands/ledger.ts +91 -0
- package/packages/control/src/cli/commands/local-workflow.ts +4690 -0
- package/packages/control/src/cli/commands/memory.ts +445 -0
- package/packages/control/src/cli/commands/release.ts +108 -0
- package/packages/control/src/cli/commands/rubric.ts +103 -0
- package/packages/control/src/cli/commands/seat.ts +179 -0
- package/packages/control/src/cli/commands/session.ts +127 -0
- package/packages/control/src/cli/commands/supervision.ts +246 -0
- package/packages/control/src/cli/commands/sync.ts +119 -0
- package/packages/control/src/cli/commands/workflow.ts +86 -0
- package/packages/control/src/cli/commands/workspace.ts +50 -0
- package/packages/control/src/cli/core-usage.ts +34 -0
- package/packages/control/src/cli/prompt.ts +67 -0
- package/packages/control/src/cli/supervision-deps.ts +44 -0
- package/packages/control/src/cli/usage.ts +241 -0
- package/packages/control/src/cli.ts +207 -0
- package/packages/control/src/core-cli.ts +50 -0
- package/packages/control/src/dispatch/decision.ts +202 -0
- package/packages/control/src/dispatch/projection.ts +293 -0
- package/packages/control/src/dispatch/record.ts +153 -0
- package/packages/control/src/engagement/project.ts +170 -0
- package/packages/control/src/fs.ts +19 -0
- package/packages/control/src/harness/pruning.ts +406 -0
- package/packages/control/src/hooks/dispatcher.ts +117 -0
- package/packages/control/src/hooks/outbox.ts +86 -0
- package/packages/control/src/hooks/sanitize.ts +6 -0
- package/packages/control/src/hooks/types.ts +34 -0
- package/packages/control/src/index.ts +384 -0
- package/packages/control/src/ledger/entry.ts +303 -0
- package/packages/control/src/ledger/indexer.ts +542 -0
- package/packages/control/src/memory/context.ts +149 -0
- package/packages/control/src/memory/drain-import.ts +207 -0
- package/packages/control/src/memory/indexer.ts +284 -0
- package/packages/control/src/memory/query.ts +75 -0
- package/packages/control/src/memory/sanitize.ts +50 -0
- package/packages/control/src/memory/sharded-drain-import.ts +212 -0
- package/packages/control/src/memory/status.ts +211 -0
- package/packages/control/src/memory/store-lifecycle.ts +509 -0
- package/packages/control/src/memory/store.ts +284 -0
- package/packages/control/src/memory/types.ts +146 -0
- package/packages/control/src/parity/surfaces.ts +748 -0
- package/packages/control/src/project.ts +141 -0
- package/packages/control/src/projection/local-ledger-view.ts +373 -0
- package/packages/control/src/projection/return-enforcement.ts +48 -0
- package/packages/control/src/projection/timeline-preview.ts +539 -0
- package/packages/control/src/projection/timeline.ts +708 -0
- package/packages/control/src/release/readiness.ts +842 -0
- package/packages/control/src/rubric/loader.ts +326 -0
- package/packages/control/src/rubric/promotion.ts +54 -0
- package/packages/control/src/rubric/runner.ts +159 -0
- package/packages/control/src/rubric/types.ts +158 -0
- package/packages/control/src/seat/owner-card.ts +388 -0
- package/packages/control/src/seat/readiness.ts +834 -0
- package/packages/control/src/session/runbook.ts +431 -0
- package/packages/control/src/shared/sanitize.ts +49 -0
- package/packages/control/src/supervision/action-classes.ts +192 -0
- package/packages/control/src/supervision/command-apply.ts +378 -0
- package/packages/control/src/supervision/errors.ts +14 -0
- package/packages/control/src/supervision/event-replay.ts +155 -0
- package/packages/control/src/supervision/events.ts +109 -0
- package/packages/control/src/supervision/index.ts +16 -0
- package/packages/control/src/supervision/manifest.ts +127 -0
- package/packages/control/src/supervision/paths.ts +49 -0
- package/packages/control/src/supervision/projection-adapter.ts +274 -0
- package/packages/control/src/supervision/projection.ts +75 -0
- package/packages/control/src/supervision/rebuild.ts +99 -0
- package/packages/control/src/supervision/session-open.ts +131 -0
- package/packages/control/src/supervision/session-read.ts +99 -0
- package/packages/control/src/supervision/sqlite-impl.ts +71 -0
- package/packages/control/src/supervision/sqlite.ts +121 -0
- package/packages/control/src/supervision/store-rows.ts +371 -0
- package/packages/control/src/supervision/turn-close.ts +154 -0
- package/packages/control/src/supervision/turn-open.ts +284 -0
- package/packages/control/src/sync/event-log-merge-driver.ts +263 -0
- package/packages/control/src/sync/join-plan.ts +375 -0
- package/packages/control/src/sync/outbox.ts +492 -0
- package/packages/control/src/workflow/evaluator.ts +140 -0
- package/packages/control/src/workflow/loader.ts +200 -0
- package/packages/control/src/workflow/types.ts +90 -0
- package/packages/control/src/workspace/authority.ts +499 -0
- package/packages/protocol/src/guards.ts +119 -0
- package/packages/protocol/src/huddle-board.ts +198 -0
- package/packages/protocol/src/huddle.ts +295 -0
- package/packages/protocol/src/incident.ts +251 -0
- package/packages/protocol/src/index.ts +8 -0
- package/packages/protocol/src/interfaces.ts +107 -0
- package/packages/protocol/src/packet-profile.ts +195 -0
- package/packages/protocol/src/state.ts +81 -0
- package/packages/protocol/src/types.ts +434 -0
- package/release/lineage.v0.json +15 -0
- package/scripts/release-candidate-verify.sh +175 -0
- package/scripts/release-checksum.sh +25 -0
- package/scripts/release-pack-canary.sh +97 -0
- package/scripts/release-scan.sh +249 -0
- package/scripts/release-sign.sh +34 -0
- package/templates/etiquette-vanilla-v0/README.md +2 -3
- package/templates/etiquette-vanilla-v0/source/control-seat/README.md +0 -6
- package/templates/etiquette-vanilla-v0/source/control-seat/bin/seat-doctor +0 -5
- package/templates/etiquette-vanilla-v0/validate-vanilla.sh +0 -5
- package/templates/seat-packs-v0/README.md +3 -2
- package/templates/seat-packs-v0/source/claude-code-seat/README.md +3 -29
- package/templates/seat-packs-v0/source/codex-seat/README.md +3 -17
- package/templates/seat-packs-v0/source/gemini-seat/README.md +3 -23
- package/templates/seat-packs-v0/source/ollama-seat/README.md +3 -3
- package/templates/seat-packs-v0/source/openrouter-seat/README.md +3 -3
- package/docs/AGENT_SPAWNING.md +0 -78
- package/docs/INTEGRATION_UI.md +0 -215
- package/docs/OPERATOR_PLAYBOOK.md +0 -77
- package/docs/TAG_ROUTE.md +0 -95
- package/lib/etiquette-core.js +0 -315
- package/lib/etiquette.js +0 -1160
- package/templates/DISPATCH_PREMISES.md +0 -39
- package/templates/etiquette-vanilla-v0/source/control-seat/bin/access-assurance-check +0 -55
- package/templates/etiquette-vanilla-v0/source/control-seat/docs/work/access/ACCESS-ASSURANCE.md +0 -39
- package/templates/etiquette-vanilla-v0/source/control-seat/docs/work/access/workspace-secure-profile.v0.json +0 -53
- package/templates/hosted-receiver/README.md +0 -41
- package/templates/hosted-receiver/w1-github-webhook-receiver.mjs +0 -129
package/lib/etiquette.js
DELETED
|
@@ -1,1160 +0,0 @@
|
|
|
1
|
-
#!/usr/bin/env bun
|
|
2
|
-
// @bun
|
|
3
|
-
var Lz=Object.defineProperty;var P=(r,n)=>()=>(n||r((n={exports:{}}).exports,n),n.exports);var zz=(r)=>r;function Sz(r,n){this[r]=zz.bind(null,n)}var kn=(r,n)=>{for(var t in n)Lz(r,t,{get:n[t],enumerable:!0,configurable:!0,set:Sz.bind(n,t)})};var N=(r,n)=>()=>(r&&(n=r(r=0)),n);var Kc=import.meta.require;var vg,Yg,r_,s0,Hg,Bg;var ac=N(()=>{vg=["done","blocked","handed_off","stopped","timed_out"],Yg=["status","pause","resume","stop","approve_next_turn","redirect_owner","request_summary","mark_blocked","escalate_to_human"],r_=["coordination_only","read_only_local","bounded_verification","bounded_product_mutation","human_only"],s0=["inspect_repo","run_verify","write_projection","append_evidence","write_product_files","launch_runtime_target"],Hg=["on_state_change","on_command_only"],Bg=["codex","claude-code","human-mobile","human-desktop","other"]});var Qg=N(()=>{ac()});var rO=N(()=>{ac();Qg()});function U(r,n,t){function e(u,o){if(!u._zod)Object.defineProperty(u,"_zod",{value:{def:o,constr:c,traits:new Set},enumerable:!1});if(u._zod.traits.has(r))return;u._zod.traits.add(r),n(u,o);let $=c.prototype,g=Object.keys($);for(let d=0;d<g.length;d++){let f=g[d];if(!(f in u))u[f]=$[f].bind(u)}}let i=t?.Parent??Object;class _ extends i{}Object.defineProperty(_,"name",{value:r});function c(u){var o;let $=t?.Parent?new _:this;e($,u),(o=$._zod).deferred??(o.deferred=[]);for(let g of $._zod.deferred)g();return $}return Object.defineProperty(c,"init",{value:e}),Object.defineProperty(c,Symbol.hasInstance,{value:(u)=>{if(t?.Parent&&u instanceof t.Parent)return!0;return u?._zod?.traits?.has(r)}}),Object.defineProperty(c,"name",{value:r}),c}function fr(r){if(r)Object.assign(n_,r);return n_}var Kg,ag,Xn,Qt,n_;var ji=N(()=>{Kg=Object.freeze({status:"aborted"});ag=Symbol("zod_brand");Xn=class Xn extends Error{constructor(){super("Encountered Promise during synchronous parse. Use .parseAsync() instead.")}};Qt=class Qt extends Error{constructor(r){super(`Encountered unidirectional transform during encode: ${r}`);this.name="ZodEncodeError"}};n_={}});var W={};kn(W,{unwrapMessage:()=>t_,uint8ArrayToHex:()=>tS,uint8ArrayToBase64url:()=>rS,uint8ArrayToBase64:()=>iO,stringifyPrimitive:()=>z,slugify:()=>xg,shallowClone:()=>sg,safeExtend:()=>az,required:()=>xz,randomString:()=>lz,propertyKeyTypes:()=>__,promiseAllObject:()=>Fz,primitiveTypes:()=>rd,prefixIssues:()=>tn,pick:()=>Bz,partial:()=>Cz,parsedType:()=>S,optionalKeys:()=>nd,omit:()=>Qz,objectClone:()=>Xz,numKeys:()=>vz,nullish:()=>bt,normalizeParams:()=>E,mergeDefs:()=>it,merge:()=>Zz,jsonStringifyReplacer:()=>Ji,joinValues:()=>h,issue:()=>Mi,isPlainObject:()=>mt,isObject:()=>Kt,hexToUint8Array:()=>nS,getSizableOrigin:()=>c_,getParsedType:()=>Yz,getLengthableOrigin:()=>u_,getEnumValues:()=>i_,getElementAtPath:()=>Vz,floatSafeRemainder:()=>Cg,finalizeIssue:()=>Qr,extend:()=>Kz,escapeRegex:()=>bn,esc:()=>Zc,defineLazy:()=>K,createTransparentProxy:()=>Hz,cloneDef:()=>Gz,clone:()=>Gr,cleanRegex:()=>e_,cleanEnum:()=>pz,captureStackTrace:()=>Cc,cached:()=>Ai,base64urlToUint8Array:()=>sz,base64ToUint8Array:()=>tO,assignProp:()=>wt,assertNotEqual:()=>Az,assertNever:()=>Pz,assertIs:()=>Mz,assertEqual:()=>Jz,assert:()=>kz,allowsEval:()=>pg,aborted:()=>It,NUMBER_FORMAT_RANGES:()=>td,Class:()=>eO,BIGINT_FORMAT_RANGES:()=>id});function Jz(r){return r}function Az(r){return r}function Mz(r){}function Pz(r){throw Error("Unexpected value in exhaustive check")}function kz(r){}function i_(r){let n=Object.values(r).filter((e)=>typeof e==="number");return Object.entries(r).filter(([e,i])=>n.indexOf(+e)===-1).map(([e,i])=>i)}function h(r,n="|"){return r.map((t)=>z(t)).join(n)}function Ji(r,n){if(typeof n==="bigint")return n.toString();return n}function Ai(r){return{get value(){{let t=r();return Object.defineProperty(this,"value",{value:t}),t}throw Error("cached value already set")}}}function bt(r){return r===null||r===void 0}function e_(r){let n=r.startsWith("^")?1:0,t=r.endsWith("$")?r.length-1:r.length;return r.slice(n,t)}function Cg(r,n){let t=(r.toString().split(".")[1]||"").length,e=n.toString(),i=(e.split(".")[1]||"").length;if(i===0&&/\d?e-\d?/.test(e)){let o=e.match(/\d?e-(\d?)/);if(o?.[1])i=Number.parseInt(o[1])}let _=t>i?t:i,c=Number.parseInt(r.toFixed(_).replace(".","")),u=Number.parseInt(n.toFixed(_).replace(".",""));return c%u/10**_}function K(r,n,t){let e=void 0;Object.defineProperty(r,n,{get(){if(e===nO)return;if(e===void 0)e=nO,e=t();return e},set(i){Object.defineProperty(r,n,{value:i})},configurable:!0})}function Xz(r){return Object.create(Object.getPrototypeOf(r),Object.getOwnPropertyDescriptors(r))}function wt(r,n,t){Object.defineProperty(r,n,{value:t,writable:!0,enumerable:!0,configurable:!0})}function it(...r){let n={};for(let t of r){let e=Object.getOwnPropertyDescriptors(t);Object.assign(n,e)}return Object.defineProperties({},n)}function Gz(r){return it(r._zod.def)}function Vz(r,n){if(!n)return r;return n.reduce((t,e)=>t?.[e],r)}function Fz(r){let n=Object.keys(r),t=n.map((e)=>r[e]);return Promise.all(t).then((e)=>{let i={};for(let _=0;_<n.length;_++)i[n[_]]=e[_];return i})}function lz(r=10){let t="";for(let e=0;e<r;e++)t+="abcdefghijklmnopqrstuvwxyz"[Math.floor(Math.random()*26)];return t}function Zc(r){return JSON.stringify(r)}function xg(r){return r.toLowerCase().trim().replace(/[^\w\s-]/g,"").replace(/[\s_-]+/g,"-").replace(/^-+|-+$/g,"")}function Kt(r){return typeof r==="object"&&r!==null&&!Array.isArray(r)}function mt(r){if(Kt(r)===!1)return!1;let n=r.constructor;if(n===void 0)return!0;if(typeof n!=="function")return!0;let t=n.prototype;if(Kt(t)===!1)return!1;if(Object.prototype.hasOwnProperty.call(t,"isPrototypeOf")===!1)return!1;return!0}function sg(r){if(mt(r))return{...r};if(Array.isArray(r))return[...r];return r}function vz(r){let n=0;for(let t in r)if(Object.prototype.hasOwnProperty.call(r,t))n++;return n}function bn(r){return r.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}function Gr(r,n,t){let e=new r._zod.constr(n??r._zod.def);if(!n||t?.parent)e._zod.parent=r;return e}function E(r){let n=r;if(!n)return{};if(typeof n==="string")return{error:()=>n};if(n?.message!==void 0){if(n?.error!==void 0)throw Error("Cannot specify both `message` and `error` params");n.error=n.message}if(delete n.message,typeof n.error==="string")return{...n,error:()=>n.error};return n}function Hz(r){let n;return new Proxy({},{get(t,e,i){return n??(n=r()),Reflect.get(n,e,i)},set(t,e,i,_){return n??(n=r()),Reflect.set(n,e,i,_)},has(t,e){return n??(n=r()),Reflect.has(n,e)},deleteProperty(t,e){return n??(n=r()),Reflect.deleteProperty(n,e)},ownKeys(t){return n??(n=r()),Reflect.ownKeys(n)},getOwnPropertyDescriptor(t,e){return n??(n=r()),Reflect.getOwnPropertyDescriptor(n,e)},defineProperty(t,e,i){return n??(n=r()),Reflect.defineProperty(n,e,i)}})}function z(r){if(typeof r==="bigint")return r.toString()+"n";if(typeof r==="string")return`"${r}"`;return`${r}`}function nd(r){return Object.keys(r).filter((n)=>{return r[n]._zod.optin==="optional"&&r[n]._zod.optout==="optional"})}function Bz(r,n){let t=r._zod.def,e=t.checks;if(e&&e.length>0)throw Error(".pick() cannot be used on object schemas containing refinements");let _=it(r._zod.def,{get shape(){let c={};for(let u in n){if(!(u in t.shape))throw Error(`Unrecognized key: "${u}"`);if(!n[u])continue;c[u]=t.shape[u]}return wt(this,"shape",c),c},checks:[]});return Gr(r,_)}function Qz(r,n){let t=r._zod.def,e=t.checks;if(e&&e.length>0)throw Error(".omit() cannot be used on object schemas containing refinements");let _=it(r._zod.def,{get shape(){let c={...r._zod.def.shape};for(let u in n){if(!(u in t.shape))throw Error(`Unrecognized key: "${u}"`);if(!n[u])continue;delete c[u]}return wt(this,"shape",c),c},checks:[]});return Gr(r,_)}function Kz(r,n){if(!mt(n))throw Error("Invalid input to extend: expected a plain object");let t=r._zod.def.checks;if(t&&t.length>0){let _=r._zod.def.shape;for(let c in n)if(Object.getOwnPropertyDescriptor(_,c)!==void 0)throw Error("Cannot overwrite keys on object schemas containing refinements. Use `.safeExtend()` instead.")}let i=it(r._zod.def,{get shape(){let _={...r._zod.def.shape,...n};return wt(this,"shape",_),_}});return Gr(r,i)}function az(r,n){if(!mt(n))throw Error("Invalid input to safeExtend: expected a plain object");let t=it(r._zod.def,{get shape(){let e={...r._zod.def.shape,...n};return wt(this,"shape",e),e}});return Gr(r,t)}function Zz(r,n){let t=it(r._zod.def,{get shape(){let e={...r._zod.def.shape,...n._zod.def.shape};return wt(this,"shape",e),e},get catchall(){return n._zod.def.catchall},checks:[]});return Gr(r,t)}function Cz(r,n,t){let i=n._zod.def.checks;if(i&&i.length>0)throw Error(".partial() cannot be used on object schemas containing refinements");let c=it(n._zod.def,{get shape(){let u=n._zod.def.shape,o={...u};if(t)for(let $ in t){if(!($ in u))throw Error(`Unrecognized key: "${$}"`);if(!t[$])continue;o[$]=r?new r({type:"optional",innerType:u[$]}):u[$]}else for(let $ in u)o[$]=r?new r({type:"optional",innerType:u[$]}):u[$];return wt(this,"shape",o),o},checks:[]});return Gr(n,c)}function xz(r,n,t){let e=it(n._zod.def,{get shape(){let i=n._zod.def.shape,_={...i};if(t)for(let c in t){if(!(c in _))throw Error(`Unrecognized key: "${c}"`);if(!t[c])continue;_[c]=new r({type:"nonoptional",innerType:i[c]})}else for(let c in i)_[c]=new r({type:"nonoptional",innerType:i[c]});return wt(this,"shape",_),_}});return Gr(n,e)}function It(r,n=0){if(r.aborted===!0)return!0;for(let t=n;t<r.issues.length;t++)if(r.issues[t]?.continue!==!0)return!0;return!1}function tn(r,n){return n.map((t)=>{var e;return(e=t).path??(e.path=[]),t.path.unshift(r),t})}function t_(r){return typeof r==="string"?r:r?.message}function Qr(r,n,t){let e={...r,path:r.path??[]};if(!r.message){let i=t_(r.inst?._zod.def?.error?.(r))??t_(n?.error?.(r))??t_(t.customError?.(r))??t_(t.localeError?.(r))??"Invalid input";e.message=i}if(delete e.inst,delete e.continue,!n?.reportInput)delete e.input;return e}function c_(r){if(r instanceof Set)return"set";if(r instanceof Map)return"map";if(r instanceof File)return"file";return"unknown"}function u_(r){if(Array.isArray(r))return"array";if(typeof r==="string")return"string";return"unknown"}function S(r){let n=typeof r;switch(n){case"number":return Number.isNaN(r)?"nan":"number";case"object":{if(r===null)return"null";if(Array.isArray(r))return"array";let t=r;if(t&&Object.getPrototypeOf(t)!==Object.prototype&&"constructor"in t&&t.constructor)return t.constructor.name}}return n}function Mi(...r){let[n,t,e]=r;if(typeof n==="string")return{message:n,code:"custom",input:t,inst:e};return{...n}}function pz(r){return Object.entries(r).filter(([n,t])=>{return Number.isNaN(Number.parseInt(n,10))}).map((n)=>n[1])}function tO(r){let n=atob(r),t=new Uint8Array(n.length);for(let e=0;e<n.length;e++)t[e]=n.charCodeAt(e);return t}function iO(r){let n="";for(let t=0;t<r.length;t++)n+=String.fromCharCode(r[t]);return btoa(n)}function sz(r){let n=r.replace(/-/g,"+").replace(/_/g,"/"),t="=".repeat((4-n.length%4)%4);return tO(n+t)}function rS(r){return iO(r).replace(/\+/g,"-").replace(/\//g,"_").replace(/=/g,"")}function nS(r){let n=r.replace(/^0x/,"");if(n.length%2!==0)throw Error("Invalid hex string length");let t=new Uint8Array(n.length/2);for(let e=0;e<n.length;e+=2)t[e/2]=Number.parseInt(n.slice(e,e+2),16);return t}function tS(r){return Array.from(r).map((n)=>n.toString(16).padStart(2,"0")).join("")}class eO{constructor(...r){}}var nO,Cc,pg,Yz=(r)=>{let n=typeof r;switch(n){case"undefined":return"undefined";case"string":return"string";case"number":return Number.isNaN(r)?"nan":"number";case"boolean":return"boolean";case"function":return"function";case"bigint":return"bigint";case"symbol":return"symbol";case"object":if(Array.isArray(r))return"array";if(r===null)return"null";if(r.then&&typeof r.then==="function"&&r.catch&&typeof r.catch==="function")return"promise";if(typeof Map<"u"&&r instanceof Map)return"map";if(typeof Set<"u"&&r instanceof Set)return"set";if(typeof Date<"u"&&r instanceof Date)return"date";if(typeof File<"u"&&r instanceof File)return"file";return"object";default:throw Error(`Unknown data type: ${n}`)}},__,rd,td,id;var G=N(()=>{nO=Symbol("evaluating");Cc="captureStackTrace"in Error?Error.captureStackTrace:(...r)=>{};pg=Ai(()=>{if(typeof navigator<"u"&&navigator?.userAgent?.includes("Cloudflare"))return!1;try{return new Function(""),!0}catch(r){return!1}});__=new Set(["string","number","symbol"]),rd=new Set(["string","number","bigint","boolean","symbol","undefined"]);td={safeint:[Number.MIN_SAFE_INTEGER,Number.MAX_SAFE_INTEGER],int32:[-2147483648,2147483647],uint32:[0,4294967295],float32:[-340282346638528860000000000000000000000,340282346638528860000000000000000000000],float64:[-Number.MAX_VALUE,Number.MAX_VALUE]},id={int64:[BigInt("-9223372036854775808"),BigInt("9223372036854775807")],uint64:[BigInt(0),BigInt("18446744073709551615")]}});function $_(r,n=(t)=>t.message){let t={},e=[];for(let i of r.issues)if(i.path.length>0)t[i.path[0]]=t[i.path[0]]||[],t[i.path[0]].push(n(i));else e.push(n(i));return{formErrors:e,fieldErrors:t}}function g_(r,n=(t)=>t.message){let t={_errors:[]},e=(i)=>{for(let _ of i.issues)if(_.code==="invalid_union"&&_.errors.length)_.errors.map((c)=>e({issues:c}));else if(_.code==="invalid_key")e({issues:_.issues});else if(_.code==="invalid_element")e({issues:_.issues});else if(_.path.length===0)t._errors.push(n(_));else{let c=t,u=0;while(u<_.path.length){let o=_.path[u];if(u!==_.path.length-1)c[o]=c[o]||{_errors:[]};else c[o]=c[o]||{_errors:[]},c[o]._errors.push(n(_));c=c[o],u++}}};return e(r),t}function ed(r,n=(t)=>t.message){let t={errors:[]},e=(i,_=[])=>{var c,u;for(let o of i.issues)if(o.code==="invalid_union"&&o.errors.length)o.errors.map(($)=>e({issues:$},o.path));else if(o.code==="invalid_key")e({issues:o.issues},o.path);else if(o.code==="invalid_element")e({issues:o.issues},o.path);else{let $=[..._,...o.path];if($.length===0){t.errors.push(n(o));continue}let g=t,d=0;while(d<$.length){let f=$[d],b=d===$.length-1;if(typeof f==="string")g.properties??(g.properties={}),(c=g.properties)[f]??(c[f]={errors:[]}),g=g.properties[f];else g.items??(g.items=[]),(u=g.items)[f]??(u[f]={errors:[]}),g=g.items[f];if(b)g.errors.push(n(o));d++}}};return e(r),t}function cO(r){let n=[],t=r.map((e)=>typeof e==="object"?e.key:e);for(let e of t)if(typeof e==="number")n.push(`[${e}]`);else if(typeof e==="symbol")n.push(`[${JSON.stringify(String(e))}]`);else if(/[^\w$]/.test(e))n.push(`[${JSON.stringify(e)}]`);else{if(n.length)n.push(".");n.push(e)}return n.join("")}function _d(r){let n=[],t=[...r.issues].sort((e,i)=>(e.path??[]).length-(i.path??[]).length);for(let e of t)if(n.push(`\u2716 ${e.message}`),e.path?.length)n.push(` \u2192 at ${cO(e.path)}`);return n.join(`
|
|
4
|
-
`)}var _O=(r,n)=>{r.name="$ZodError",Object.defineProperty(r,"_zod",{value:r._zod,enumerable:!1}),Object.defineProperty(r,"issues",{value:n,enumerable:!1}),r.message=JSON.stringify(n,Ji,2),Object.defineProperty(r,"toString",{value:()=>r.message,enumerable:!1})},o_,Kr;var cd=N(()=>{ji();G();o_=U("$ZodError",_O),Kr=U("$ZodError",_O,{Parent:Error})});var Pi=(r)=>(n,t,e,i)=>{let _=e?Object.assign(e,{async:!1}):{async:!1},c=n._zod.run({value:t,issues:[]},_);if(c instanceof Promise)throw new Xn;if(c.issues.length){let u=new(i?.Err??r)(c.issues.map((o)=>Qr(o,_,fr())));throw Cc(u,i?.callee),u}return c.value},xc,ki=(r)=>async(n,t,e,i)=>{let _=e?Object.assign(e,{async:!0}):{async:!0},c=n._zod.run({value:t,issues:[]},_);if(c instanceof Promise)c=await c;if(c.issues.length){let u=new(i?.Err??r)(c.issues.map((o)=>Qr(o,_,fr())));throw Cc(u,i?.callee),u}return c.value},pc,Xi=(r)=>(n,t,e)=>{let i=e?{...e,async:!1}:{async:!1},_=n._zod.run({value:t,issues:[]},i);if(_ instanceof Promise)throw new Xn;return _.issues.length?{success:!1,error:new(r??o_)(_.issues.map((c)=>Qr(c,i,fr())))}:{success:!0,data:_.value}},ud,Gi=(r)=>async(n,t,e)=>{let i=e?Object.assign(e,{async:!0}):{async:!0},_=n._zod.run({value:t,issues:[]},i);if(_ instanceof Promise)_=await _;return _.issues.length?{success:!1,error:new r(_.issues.map((c)=>Qr(c,i,fr())))}:{success:!0,data:_.value}},od,sc=(r)=>(n,t,e)=>{let i=e?Object.assign(e,{direction:"backward"}):{direction:"backward"};return Pi(r)(n,t,i)},eS,ru=(r)=>(n,t,e)=>{return Pi(r)(n,t,e)},_S,nu=(r)=>async(n,t,e)=>{let i=e?Object.assign(e,{direction:"backward"}):{direction:"backward"};return ki(r)(n,t,i)},cS,tu=(r)=>async(n,t,e)=>{return ki(r)(n,t,e)},uS,iu=(r)=>(n,t,e)=>{let i=e?Object.assign(e,{direction:"backward"}):{direction:"backward"};return Xi(r)(n,t,i)},oS,eu=(r)=>(n,t,e)=>{return Xi(r)(n,t,e)},$S,_u=(r)=>async(n,t,e)=>{let i=e?Object.assign(e,{direction:"backward"}):{direction:"backward"};return Gi(r)(n,t,i)},gS,cu=(r)=>async(n,t,e)=>{return Gi(r)(n,t,e)},dS;var $d=N(()=>{ji();cd();G();xc=Pi(Kr),pc=ki(Kr),ud=Xi(Kr),od=Gi(Kr),eS=sc(Kr),_S=ru(Kr),cS=nu(Kr),uS=tu(Kr),oS=iu(Kr),$S=eu(Kr),gS=_u(Kr),dS=cu(Kr)});var wn={};kn(wn,{xid:()=>bd,uuid7:()=>mS,uuid6:()=>wS,uuid4:()=>bS,uuid:()=>at,uppercase:()=>Xd,unicodeEmail:()=>uO,undefined:()=>Pd,ulid:()=>fd,time:()=>Sd,string:()=>Ed,sha512_hex:()=>kS,sha512_base64url:()=>GS,sha512_base64:()=>XS,sha384_hex:()=>AS,sha384_base64url:()=>PS,sha384_base64:()=>MS,sha256_hex:()=>ES,sha256_base64url:()=>JS,sha256_base64:()=>jS,sha1_hex:()=>zS,sha1_base64url:()=>WS,sha1_base64:()=>SS,rfc5322Email:()=>OS,number:()=>d_,null:()=>Md,nanoid:()=>md,md5_hex:()=>TS,md5_base64url:()=>LS,md5_base64:()=>NS,mac:()=>yd,lowercase:()=>kd,ksuid:()=>wd,ipv6:()=>Dd,ipv4:()=>Rd,integer:()=>Jd,idnEmail:()=>US,html5Email:()=>IS,hostname:()=>DS,hex:()=>qS,guid:()=>Od,extendedDuration:()=>fS,emoji:()=>hd,email:()=>Ud,e164:()=>Ld,duration:()=>Id,domain:()=>yS,datetime:()=>Wd,date:()=>zd,cuid2:()=>dd,cuid:()=>gd,cidrv6:()=>Td,cidrv4:()=>qd,browserEmail:()=>hS,boolean:()=>Ad,bigint:()=>jd,base64url:()=>uu,base64:()=>Nd});function hd(){return new RegExp(RS,"u")}function $O(r){return typeof r.precision==="number"?r.precision===-1?"(?:[01]\\d|2[0-3]):[0-5]\\d":r.precision===0?"(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d":`(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d\\.\\d{${r.precision}}`:"(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?"}function Sd(r){return new RegExp(`^${$O(r)}$`)}function Wd(r){let n=$O({precision:r.precision}),t=["Z"];if(r.local)t.push("");if(r.offset)t.push("([+-](?:[01]\\d|2[0-3]):[0-5]\\d)");let e=`${n}(?:${t.join("|")})`;return new RegExp(`^${oO}T(?:${e})$`)}function f_(r,n){return new RegExp(`^[A-Za-z0-9+/]{${r}}${n}$`)}function b_(r){return new RegExp(`^[A-Za-z0-9_-]{${r}}$`)}var gd,dd,fd,bd,wd,md,Id,fS,Od,at=(r)=>{if(!r)return/^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$/;return new RegExp(`^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-${r}[0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12})$`)},bS,wS,mS,Ud,IS,OS,uO,US,hS,RS="^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$",Rd,Dd,yd=(r)=>{let n=bn(r??":");return new RegExp(`^(?:[0-9A-F]{2}${n}){5}[0-9A-F]{2}$|^(?:[0-9a-f]{2}${n}){5}[0-9a-f]{2}$`)},qd,Td,Nd,uu,DS,yS,Ld,oO="(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))",zd,Ed=(r)=>{let n=r?`[\\s\\S]{${r?.minimum??0},${r?.maximum??""}}`:"[\\s\\S]*";return new RegExp(`^${n}$`)},jd,Jd,d_,Ad,Md,Pd,kd,Xd,qS,TS,NS,LS,zS,SS,WS,ES,jS,JS,AS,MS,PS,kS,XS,GS;var ou=N(()=>{G();gd=/^[cC][^\s-]{8,}$/,dd=/^[0-9a-z]+$/,fd=/^[0-9A-HJKMNP-TV-Za-hjkmnp-tv-z]{26}$/,bd=/^[0-9a-vA-V]{20}$/,wd=/^[A-Za-z0-9]{27}$/,md=/^[a-zA-Z0-9_-]{21}$/,Id=/^P(?:(\d+W)|(?!.*W)(?=\d|T\d)(\d+Y)?(\d+M)?(\d+D)?(T(?=\d)(\d+H)?(\d+M)?(\d+([.,]\d+)?S)?)?)$/,fS=/^[-+]?P(?!$)(?:(?:[-+]?\d+Y)|(?:[-+]?\d+[.,]\d+Y$))?(?:(?:[-+]?\d+M)|(?:[-+]?\d+[.,]\d+M$))?(?:(?:[-+]?\d+W)|(?:[-+]?\d+[.,]\d+W$))?(?:(?:[-+]?\d+D)|(?:[-+]?\d+[.,]\d+D$))?(?:T(?=[\d+-])(?:(?:[-+]?\d+H)|(?:[-+]?\d+[.,]\d+H$))?(?:(?:[-+]?\d+M)|(?:[-+]?\d+[.,]\d+M$))?(?:[-+]?\d+(?:[.,]\d+)?S)?)??$/,Od=/^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12})$/,bS=at(4),wS=at(6),mS=at(7),Ud=/^(?!\.)(?!.*\.\.)([A-Za-z0-9_'+\-\.]*)[A-Za-z0-9_+-]@([A-Za-z0-9][A-Za-z0-9\-]*\.)+[A-Za-z]{2,}$/,IS=/^[a-zA-Z0-9.!#$%&'*+/=?^_`{|}~-]+@[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\.[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?)*$/,OS=/^(([^<>()\[\]\\.,;:\s@"]+(\.[^<>()\[\]\\.,;:\s@"]+)*)|(".+"))@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}])|(([a-zA-Z\-0-9]+\.)+[a-zA-Z]{2,}))$/,uO=/^[^\s@"]{1,64}@[^\s@]{1,255}$/u,US=uO,hS=/^[a-zA-Z0-9.!#$%&'*+/=?^_`{|}~-]+@[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\.[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?)*$/;Rd=/^(?:(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])$/,Dd=/^(([0-9a-fA-F]{1,4}:){7}[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,7}:|([0-9a-fA-F]{1,4}:){1,6}:[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,5}(:[0-9a-fA-F]{1,4}){1,2}|([0-9a-fA-F]{1,4}:){1,4}(:[0-9a-fA-F]{1,4}){1,3}|([0-9a-fA-F]{1,4}:){1,3}(:[0-9a-fA-F]{1,4}){1,4}|([0-9a-fA-F]{1,4}:){1,2}(:[0-9a-fA-F]{1,4}){1,5}|[0-9a-fA-F]{1,4}:((:[0-9a-fA-F]{1,4}){1,6})|:((:[0-9a-fA-F]{1,4}){1,7}|:))$/,qd=/^((25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}(25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\/([0-9]|[1-2][0-9]|3[0-2])$/,Td=/^(([0-9a-fA-F]{1,4}:){7}[0-9a-fA-F]{1,4}|::|([0-9a-fA-F]{1,4})?::([0-9a-fA-F]{1,4}:?){0,6})\/(12[0-8]|1[01][0-9]|[1-9]?[0-9])$/,Nd=/^$|^(?:[0-9a-zA-Z+/]{4})*(?:(?:[0-9a-zA-Z+/]{2}==)|(?:[0-9a-zA-Z+/]{3}=))?$/,uu=/^[A-Za-z0-9_-]*$/,DS=/^(?=.{1,253}\.?$)[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\.[a-zA-Z0-9](?:[-0-9a-zA-Z]{0,61}[0-9a-zA-Z])?)*\.?$/,yS=/^([a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?\.)+[a-zA-Z]{2,}$/,Ld=/^\+[1-9]\d{6,14}$/,zd=new RegExp(`^${oO}$`);jd=/^-?\d+n?$/,Jd=/^-?\d+$/,d_=/^-?\d+(?:\.\d+)?$/,Ad=/^(?:true|false)$/i,Md=/^null$/i,Pd=/^undefined$/i,kd=/^[^A-Z]*$/,Xd=/^[^a-z]*$/,qS=/^[0-9a-fA-F]*$/;TS=/^[0-9a-fA-F]{32}$/,NS=f_(22,"=="),LS=b_(22),zS=/^[0-9a-fA-F]{40}$/,SS=f_(27,"="),WS=b_(27),ES=/^[0-9a-fA-F]{64}$/,jS=f_(43,"="),JS=b_(43),AS=/^[0-9a-fA-F]{96}$/,MS=f_(64,""),PS=b_(64),kS=/^[0-9a-fA-F]{128}$/,XS=f_(86,"=="),GS=b_(86)});function gO(r,n,t){if(r.issues.length)n.issues.push(...tn(t,r.issues))}var ir,dO,$u,gu,Gd,Vd,Fd,ld,vd,Yd,Hd,Bd,Qd,Vi,Kd,ad,Zd,Cd,xd,pd,sd,rf,nf;var du=N(()=>{ji();ou();G();ir=U("$ZodCheck",(r,n)=>{var t;r._zod??(r._zod={}),r._zod.def=n,(t=r._zod).onattach??(t.onattach=[])}),dO={number:"number",bigint:"bigint",object:"date"},$u=U("$ZodCheckLessThan",(r,n)=>{ir.init(r,n);let t=dO[typeof n.value];r._zod.onattach.push((e)=>{let i=e._zod.bag,_=(n.inclusive?i.maximum:i.exclusiveMaximum)??Number.POSITIVE_INFINITY;if(n.value<_)if(n.inclusive)i.maximum=n.value;else i.exclusiveMaximum=n.value}),r._zod.check=(e)=>{if(n.inclusive?e.value<=n.value:e.value<n.value)return;e.issues.push({origin:t,code:"too_big",maximum:typeof n.value==="object"?n.value.getTime():n.value,input:e.value,inclusive:n.inclusive,inst:r,continue:!n.abort})}}),gu=U("$ZodCheckGreaterThan",(r,n)=>{ir.init(r,n);let t=dO[typeof n.value];r._zod.onattach.push((e)=>{let i=e._zod.bag,_=(n.inclusive?i.minimum:i.exclusiveMinimum)??Number.NEGATIVE_INFINITY;if(n.value>_)if(n.inclusive)i.minimum=n.value;else i.exclusiveMinimum=n.value}),r._zod.check=(e)=>{if(n.inclusive?e.value>=n.value:e.value>n.value)return;e.issues.push({origin:t,code:"too_small",minimum:typeof n.value==="object"?n.value.getTime():n.value,input:e.value,inclusive:n.inclusive,inst:r,continue:!n.abort})}}),Gd=U("$ZodCheckMultipleOf",(r,n)=>{ir.init(r,n),r._zod.onattach.push((t)=>{var e;(e=t._zod.bag).multipleOf??(e.multipleOf=n.value)}),r._zod.check=(t)=>{if(typeof t.value!==typeof n.value)throw Error("Cannot mix number and bigint in multiple_of check.");if(typeof t.value==="bigint"?t.value%n.value===BigInt(0):Cg(t.value,n.value)===0)return;t.issues.push({origin:typeof t.value,code:"not_multiple_of",divisor:n.value,input:t.value,inst:r,continue:!n.abort})}}),Vd=U("$ZodCheckNumberFormat",(r,n)=>{ir.init(r,n),n.format=n.format||"float64";let t=n.format?.includes("int"),e=t?"int":"number",[i,_]=td[n.format];r._zod.onattach.push((c)=>{let u=c._zod.bag;if(u.format=n.format,u.minimum=i,u.maximum=_,t)u.pattern=Jd}),r._zod.check=(c)=>{let u=c.value;if(t){if(!Number.isInteger(u)){c.issues.push({expected:e,format:n.format,code:"invalid_type",continue:!1,input:u,inst:r});return}if(!Number.isSafeInteger(u)){if(u>0)c.issues.push({input:u,code:"too_big",maximum:Number.MAX_SAFE_INTEGER,note:"Integers must be within the safe integer range.",inst:r,origin:e,inclusive:!0,continue:!n.abort});else c.issues.push({input:u,code:"too_small",minimum:Number.MIN_SAFE_INTEGER,note:"Integers must be within the safe integer range.",inst:r,origin:e,inclusive:!0,continue:!n.abort});return}}if(u<i)c.issues.push({origin:"number",input:u,code:"too_small",minimum:i,inclusive:!0,inst:r,continue:!n.abort});if(u>_)c.issues.push({origin:"number",input:u,code:"too_big",maximum:_,inclusive:!0,inst:r,continue:!n.abort})}}),Fd=U("$ZodCheckBigIntFormat",(r,n)=>{ir.init(r,n);let[t,e]=id[n.format];r._zod.onattach.push((i)=>{let _=i._zod.bag;_.format=n.format,_.minimum=t,_.maximum=e}),r._zod.check=(i)=>{let _=i.value;if(_<t)i.issues.push({origin:"bigint",input:_,code:"too_small",minimum:t,inclusive:!0,inst:r,continue:!n.abort});if(_>e)i.issues.push({origin:"bigint",input:_,code:"too_big",maximum:e,inclusive:!0,inst:r,continue:!n.abort})}}),ld=U("$ZodCheckMaxSize",(r,n)=>{var t;ir.init(r,n),(t=r._zod.def).when??(t.when=(e)=>{let i=e.value;return!bt(i)&&i.size!==void 0}),r._zod.onattach.push((e)=>{let i=e._zod.bag.maximum??Number.POSITIVE_INFINITY;if(n.maximum<i)e._zod.bag.maximum=n.maximum}),r._zod.check=(e)=>{let i=e.value;if(i.size<=n.maximum)return;e.issues.push({origin:c_(i),code:"too_big",maximum:n.maximum,inclusive:!0,input:i,inst:r,continue:!n.abort})}}),vd=U("$ZodCheckMinSize",(r,n)=>{var t;ir.init(r,n),(t=r._zod.def).when??(t.when=(e)=>{let i=e.value;return!bt(i)&&i.size!==void 0}),r._zod.onattach.push((e)=>{let i=e._zod.bag.minimum??Number.NEGATIVE_INFINITY;if(n.minimum>i)e._zod.bag.minimum=n.minimum}),r._zod.check=(e)=>{let i=e.value;if(i.size>=n.minimum)return;e.issues.push({origin:c_(i),code:"too_small",minimum:n.minimum,inclusive:!0,input:i,inst:r,continue:!n.abort})}}),Yd=U("$ZodCheckSizeEquals",(r,n)=>{var t;ir.init(r,n),(t=r._zod.def).when??(t.when=(e)=>{let i=e.value;return!bt(i)&&i.size!==void 0}),r._zod.onattach.push((e)=>{let i=e._zod.bag;i.minimum=n.size,i.maximum=n.size,i.size=n.size}),r._zod.check=(e)=>{let i=e.value,_=i.size;if(_===n.size)return;let c=_>n.size;e.issues.push({origin:c_(i),...c?{code:"too_big",maximum:n.size}:{code:"too_small",minimum:n.size},inclusive:!0,exact:!0,input:e.value,inst:r,continue:!n.abort})}}),Hd=U("$ZodCheckMaxLength",(r,n)=>{var t;ir.init(r,n),(t=r._zod.def).when??(t.when=(e)=>{let i=e.value;return!bt(i)&&i.length!==void 0}),r._zod.onattach.push((e)=>{let i=e._zod.bag.maximum??Number.POSITIVE_INFINITY;if(n.maximum<i)e._zod.bag.maximum=n.maximum}),r._zod.check=(e)=>{let i=e.value;if(i.length<=n.maximum)return;let c=u_(i);e.issues.push({origin:c,code:"too_big",maximum:n.maximum,inclusive:!0,input:i,inst:r,continue:!n.abort})}}),Bd=U("$ZodCheckMinLength",(r,n)=>{var t;ir.init(r,n),(t=r._zod.def).when??(t.when=(e)=>{let i=e.value;return!bt(i)&&i.length!==void 0}),r._zod.onattach.push((e)=>{let i=e._zod.bag.minimum??Number.NEGATIVE_INFINITY;if(n.minimum>i)e._zod.bag.minimum=n.minimum}),r._zod.check=(e)=>{let i=e.value;if(i.length>=n.minimum)return;let c=u_(i);e.issues.push({origin:c,code:"too_small",minimum:n.minimum,inclusive:!0,input:i,inst:r,continue:!n.abort})}}),Qd=U("$ZodCheckLengthEquals",(r,n)=>{var t;ir.init(r,n),(t=r._zod.def).when??(t.when=(e)=>{let i=e.value;return!bt(i)&&i.length!==void 0}),r._zod.onattach.push((e)=>{let i=e._zod.bag;i.minimum=n.length,i.maximum=n.length,i.length=n.length}),r._zod.check=(e)=>{let i=e.value,_=i.length;if(_===n.length)return;let c=u_(i),u=_>n.length;e.issues.push({origin:c,...u?{code:"too_big",maximum:n.length}:{code:"too_small",minimum:n.length},inclusive:!0,exact:!0,input:e.value,inst:r,continue:!n.abort})}}),Vi=U("$ZodCheckStringFormat",(r,n)=>{var t,e;if(ir.init(r,n),r._zod.onattach.push((i)=>{let _=i._zod.bag;if(_.format=n.format,n.pattern)_.patterns??(_.patterns=new Set),_.patterns.add(n.pattern)}),n.pattern)(t=r._zod).check??(t.check=(i)=>{if(n.pattern.lastIndex=0,n.pattern.test(i.value))return;i.issues.push({origin:"string",code:"invalid_format",format:n.format,input:i.value,...n.pattern?{pattern:n.pattern.toString()}:{},inst:r,continue:!n.abort})});else(e=r._zod).check??(e.check=()=>{})}),Kd=U("$ZodCheckRegex",(r,n)=>{Vi.init(r,n),r._zod.check=(t)=>{if(n.pattern.lastIndex=0,n.pattern.test(t.value))return;t.issues.push({origin:"string",code:"invalid_format",format:"regex",input:t.value,pattern:n.pattern.toString(),inst:r,continue:!n.abort})}}),ad=U("$ZodCheckLowerCase",(r,n)=>{n.pattern??(n.pattern=kd),Vi.init(r,n)}),Zd=U("$ZodCheckUpperCase",(r,n)=>{n.pattern??(n.pattern=Xd),Vi.init(r,n)}),Cd=U("$ZodCheckIncludes",(r,n)=>{ir.init(r,n);let t=bn(n.includes),e=new RegExp(typeof n.position==="number"?`^.{${n.position}}${t}`:t);n.pattern=e,r._zod.onattach.push((i)=>{let _=i._zod.bag;_.patterns??(_.patterns=new Set),_.patterns.add(e)}),r._zod.check=(i)=>{if(i.value.includes(n.includes,n.position))return;i.issues.push({origin:"string",code:"invalid_format",format:"includes",includes:n.includes,input:i.value,inst:r,continue:!n.abort})}}),xd=U("$ZodCheckStartsWith",(r,n)=>{ir.init(r,n);let t=new RegExp(`^${bn(n.prefix)}.*`);n.pattern??(n.pattern=t),r._zod.onattach.push((e)=>{let i=e._zod.bag;i.patterns??(i.patterns=new Set),i.patterns.add(t)}),r._zod.check=(e)=>{if(e.value.startsWith(n.prefix))return;e.issues.push({origin:"string",code:"invalid_format",format:"starts_with",prefix:n.prefix,input:e.value,inst:r,continue:!n.abort})}}),pd=U("$ZodCheckEndsWith",(r,n)=>{ir.init(r,n);let t=new RegExp(`.*${bn(n.suffix)}$`);n.pattern??(n.pattern=t),r._zod.onattach.push((e)=>{let i=e._zod.bag;i.patterns??(i.patterns=new Set),i.patterns.add(t)}),r._zod.check=(e)=>{if(e.value.endsWith(n.suffix))return;e.issues.push({origin:"string",code:"invalid_format",format:"ends_with",suffix:n.suffix,input:e.value,inst:r,continue:!n.abort})}});sd=U("$ZodCheckProperty",(r,n)=>{ir.init(r,n),r._zod.check=(t)=>{let e=n.schema._zod.run({value:t.value[n.property],issues:[]},{});if(e instanceof Promise)return e.then((i)=>gO(i,t,n.property));gO(e,t,n.property);return}}),rf=U("$ZodCheckMimeType",(r,n)=>{ir.init(r,n);let t=new Set(n.mime);r._zod.onattach.push((e)=>{e._zod.bag.mime=n.mime}),r._zod.check=(e)=>{if(t.has(e.value.type))return;e.issues.push({code:"invalid_value",values:n.mime,input:e.value.type,inst:r,continue:!n.abort})}}),nf=U("$ZodCheckOverwrite",(r,n)=>{ir.init(r,n),r._zod.check=(t)=>{t.value=n.tx(t.value)}})});class fu{constructor(r=[]){if(this.content=[],this.indent=0,this)this.args=r}indented(r){this.indent+=1,r(this),this.indent-=1}write(r){if(typeof r==="function"){r(this,{execution:"sync"}),r(this,{execution:"async"});return}let t=r.split(`
|
|
5
|
-
`).filter((_)=>_),e=Math.min(...t.map((_)=>_.length-_.trimStart().length)),i=t.map((_)=>_.slice(e)).map((_)=>" ".repeat(this.indent*2)+_);for(let _ of i)this.content.push(_)}compile(){let r=Function,n=this?.args,e=[...(this?.content??[""]).map((i)=>` ${i}`)];return new r(...n,e.join(`
|
|
6
|
-
`))}}var tf;var ef=N(()=>{tf={major:4,minor:3,patch:6}});function Lf(r){if(r==="")return!0;if(r.length%4!==0)return!1;try{return atob(r),!0}catch{return!1}}function TO(r){if(!uu.test(r))return!1;let n=r.replace(/[-_]/g,(e)=>e==="-"?"+":"/"),t=n.padEnd(Math.ceil(n.length/4)*4,"=");return Lf(t)}function NO(r,n=null){try{let t=r.split(".");if(t.length!==3)return!1;let[e]=t;if(!e)return!1;let i=JSON.parse(atob(e));if("typ"in i&&i?.typ!=="JWT")return!1;if(!i.alg)return!1;if(n&&(!("alg"in i)||i.alg!==n))return!1;return!0}catch{return!1}}function bO(r,n,t){if(r.issues.length)n.issues.push(...tn(t,r.issues));n.value[t]=r.value}function Ou(r,n,t,e,i){if(r.issues.length){if(i&&!(t in e))return;n.issues.push(...tn(t,r.issues))}if(r.value===void 0){if(t in e)n.value[t]=void 0}else n.value[t]=r.value}function LO(r){let n=Object.keys(r.shape);for(let e of n)if(!r.shape?.[e]?._zod?.traits?.has("$ZodType"))throw Error(`Invalid element at key "${e}": expected a Zod schema`);let t=nd(r.shape);return{...r,keys:n,keySet:new Set(n),numKeys:n.length,optionalKeys:new Set(t)}}function zO(r,n,t,e,i,_){let c=[],u=i.keySet,o=i.catchall._zod,$=o.def.type,g=o.optout==="optional";for(let d in n){if(u.has(d))continue;if($==="never"){c.push(d);continue}let f=o.run({value:n[d],issues:[]},e);if(f instanceof Promise)r.push(f.then((b)=>Ou(b,t,d,n,g)));else Ou(f,t,d,n,g)}if(c.length)t.issues.push({code:"unrecognized_keys",keys:c,input:n,inst:_});if(!r.length)return t;return Promise.all(r).then(()=>{return t})}function wO(r,n,t,e){for(let _ of r)if(_.issues.length===0)return n.value=_.value,n;let i=r.filter((_)=>!It(_));if(i.length===1)return n.value=i[0].value,i[0];return n.issues.push({code:"invalid_union",input:n.value,inst:t,errors:r.map((_)=>_.issues.map((c)=>Qr(c,e,fr())))}),n}function mO(r,n,t,e){let i=r.filter((_)=>_.issues.length===0);if(i.length===1)return n.value=i[0].value,n;if(i.length===0)n.issues.push({code:"invalid_union",input:n.value,inst:t,errors:r.map((_)=>_.issues.map((c)=>Qr(c,e,fr())))});else n.issues.push({code:"invalid_union",input:n.value,inst:t,errors:[],inclusive:!1});return n}function _f(r,n){if(r===n)return{valid:!0,data:r};if(r instanceof Date&&n instanceof Date&&+r===+n)return{valid:!0,data:r};if(mt(r)&&mt(n)){let t=Object.keys(n),e=Object.keys(r).filter((_)=>t.indexOf(_)!==-1),i={...r,...n};for(let _ of e){let c=_f(r[_],n[_]);if(!c.valid)return{valid:!1,mergeErrorPath:[_,...c.mergeErrorPath]};i[_]=c.data}return{valid:!0,data:i}}if(Array.isArray(r)&&Array.isArray(n)){if(r.length!==n.length)return{valid:!1,mergeErrorPath:[]};let t=[];for(let e=0;e<r.length;e++){let i=r[e],_=n[e],c=_f(i,_);if(!c.valid)return{valid:!1,mergeErrorPath:[e,...c.mergeErrorPath]};t.push(c.data)}return{valid:!0,data:t}}return{valid:!1,mergeErrorPath:[]}}function IO(r,n,t){let e=new Map,i;for(let u of n.issues)if(u.code==="unrecognized_keys"){i??(i=u);for(let o of u.keys){if(!e.has(o))e.set(o,{});e.get(o).l=!0}}else r.issues.push(u);for(let u of t.issues)if(u.code==="unrecognized_keys")for(let o of u.keys){if(!e.has(o))e.set(o,{});e.get(o).r=!0}else r.issues.push(u);let _=[...e].filter(([,u])=>u.l&&u.r).map(([u])=>u);if(_.length&&i)r.issues.push({...i,keys:_});if(It(r))return r;let c=_f(n.value,t.value);if(!c.valid)throw Error(`Unmergable intersection. Error path: ${JSON.stringify(c.mergeErrorPath)}`);return r.value=c.data,r}function bu(r,n,t){if(r.issues.length)n.issues.push(...tn(t,r.issues));n.value[t]=r.value}function OO(r,n,t,e,i,_,c){if(r.issues.length)if(__.has(typeof e))t.issues.push(...tn(e,r.issues));else t.issues.push({code:"invalid_key",origin:"map",input:i,inst:_,issues:r.issues.map((u)=>Qr(u,c,fr()))});if(n.issues.length)if(__.has(typeof e))t.issues.push(...tn(e,n.issues));else t.issues.push({origin:"map",code:"invalid_element",input:i,inst:_,key:e,issues:n.issues.map((u)=>Qr(u,c,fr()))});t.value.set(r.value,n.value)}function UO(r,n){if(r.issues.length)n.issues.push(...r.issues);n.value.add(r.value)}function hO(r,n){if(r.issues.length&&n===void 0)return{issues:[],value:void 0};return r}function RO(r,n){if(r.value===void 0)r.value=n.defaultValue;return r}function DO(r,n){if(!r.issues.length&&r.value===void 0)r.issues.push({code:"invalid_type",expected:"nonoptional",input:r.value,inst:n});return r}function wu(r,n,t){if(r.issues.length)return r.aborted=!0,r;return n._zod.run({value:r.value,issues:r.issues},t)}function mu(r,n,t){if(r.issues.length)return r.aborted=!0,r;if((t.direction||"forward")==="forward"){let i=n.transform(r.value,r);if(i instanceof Promise)return i.then((_)=>Iu(r,_,n.out,t));return Iu(r,i,n.out,t)}else{let i=n.reverseTransform(r.value,r);if(i instanceof Promise)return i.then((_)=>Iu(r,_,n.in,t));return Iu(r,i,n.in,t)}}function Iu(r,n,t,e){if(r.issues.length)return r.aborted=!0,r;return t._zod.run({value:n,issues:r.issues},e)}function yO(r){return r.value=Object.freeze(r.value),r}function qO(r,n,t,e){if(!r){let i={code:"custom",input:t,inst:e,path:[...e._zod.def.path??[]],continue:!e._zod.def.abort};if(e._zod.def.params)i.params=e._zod.def.params;n.issues.push(Mi(i))}}var v,Zt,rr,cf,uf,of,$f,gf,df,ff,bf,wf,mf,If,Of,Uf,hf,Rf,Df,yf,qf,Tf,Nf,zf,Sf,Wf,Ef,jf,Uu,Jf,w_,hu,Af,Mf,Pf,kf,Xf,Gf,Vf,Ff,lf,vf,SO,Yf,m_,Hf,Bf,Qf,Ru,Kf,af,Zf,Cf,xf,pf,sf,Du,rb,nb,tb,ib,eb,_b,cb,ub,ob,I_,$b,gb,db,fb,bb,wb;var mb=N(()=>{du();ji();$d();ou();G();ef();G();v=U("$ZodType",(r,n)=>{var t;r??(r={}),r._zod.def=n,r._zod.bag=r._zod.bag||{},r._zod.version=tf;let e=[...r._zod.def.checks??[]];if(r._zod.traits.has("$ZodCheck"))e.unshift(r);for(let i of e)for(let _ of i._zod.onattach)_(r);if(e.length===0)(t=r._zod).deferred??(t.deferred=[]),r._zod.deferred?.push(()=>{r._zod.run=r._zod.parse});else{let i=(c,u,o)=>{let $=It(c),g;for(let d of u){if(d._zod.def.when){if(!d._zod.def.when(c))continue}else if($)continue;let f=c.issues.length,b=d._zod.check(c);if(b instanceof Promise&&o?.async===!1)throw new Xn;if(g||b instanceof Promise)g=(g??Promise.resolve()).then(async()=>{if(await b,c.issues.length===f)return;if(!$)$=It(c,f)});else{if(c.issues.length===f)continue;if(!$)$=It(c,f)}}if(g)return g.then(()=>{return c});return c},_=(c,u,o)=>{if(It(c))return c.aborted=!0,c;let $=i(u,e,o);if($ instanceof Promise){if(o.async===!1)throw new Xn;return $.then((g)=>r._zod.parse(g,o))}return r._zod.parse($,o)};r._zod.run=(c,u)=>{if(u.skipChecks)return r._zod.parse(c,u);if(u.direction==="backward"){let $=r._zod.parse({value:c.value,issues:[]},{...u,skipChecks:!0});if($ instanceof Promise)return $.then((g)=>{return _(g,c,u)});return _($,c,u)}let o=r._zod.parse(c,u);if(o instanceof Promise){if(u.async===!1)throw new Xn;return o.then(($)=>i($,e,u))}return i(o,e,u)}}K(r,"~standard",()=>({validate:(i)=>{try{let _=ud(r,i);return _.success?{value:_.data}:{issues:_.error?.issues}}catch(_){return od(r,i).then((c)=>c.success?{value:c.data}:{issues:c.error?.issues})}},vendor:"zod",version:1}))}),Zt=U("$ZodString",(r,n)=>{v.init(r,n),r._zod.pattern=[...r?._zod.bag?.patterns??[]].pop()??Ed(r._zod.bag),r._zod.parse=(t,e)=>{if(n.coerce)try{t.value=String(t.value)}catch(i){}if(typeof t.value==="string")return t;return t.issues.push({expected:"string",code:"invalid_type",input:t.value,inst:r}),t}}),rr=U("$ZodStringFormat",(r,n)=>{Vi.init(r,n),Zt.init(r,n)}),cf=U("$ZodGUID",(r,n)=>{n.pattern??(n.pattern=Od),rr.init(r,n)}),uf=U("$ZodUUID",(r,n)=>{if(n.version){let e={v1:1,v2:2,v3:3,v4:4,v5:5,v6:6,v7:7,v8:8}[n.version];if(e===void 0)throw Error(`Invalid UUID version: "${n.version}"`);n.pattern??(n.pattern=at(e))}else n.pattern??(n.pattern=at());rr.init(r,n)}),of=U("$ZodEmail",(r,n)=>{n.pattern??(n.pattern=Ud),rr.init(r,n)}),$f=U("$ZodURL",(r,n)=>{rr.init(r,n),r._zod.check=(t)=>{try{let e=t.value.trim(),i=new URL(e);if(n.hostname){if(n.hostname.lastIndex=0,!n.hostname.test(i.hostname))t.issues.push({code:"invalid_format",format:"url",note:"Invalid hostname",pattern:n.hostname.source,input:t.value,inst:r,continue:!n.abort})}if(n.protocol){if(n.protocol.lastIndex=0,!n.protocol.test(i.protocol.endsWith(":")?i.protocol.slice(0,-1):i.protocol))t.issues.push({code:"invalid_format",format:"url",note:"Invalid protocol",pattern:n.protocol.source,input:t.value,inst:r,continue:!n.abort})}if(n.normalize)t.value=i.href;else t.value=e;return}catch(e){t.issues.push({code:"invalid_format",format:"url",input:t.value,inst:r,continue:!n.abort})}}}),gf=U("$ZodEmoji",(r,n)=>{n.pattern??(n.pattern=hd()),rr.init(r,n)}),df=U("$ZodNanoID",(r,n)=>{n.pattern??(n.pattern=md),rr.init(r,n)}),ff=U("$ZodCUID",(r,n)=>{n.pattern??(n.pattern=gd),rr.init(r,n)}),bf=U("$ZodCUID2",(r,n)=>{n.pattern??(n.pattern=dd),rr.init(r,n)}),wf=U("$ZodULID",(r,n)=>{n.pattern??(n.pattern=fd),rr.init(r,n)}),mf=U("$ZodXID",(r,n)=>{n.pattern??(n.pattern=bd),rr.init(r,n)}),If=U("$ZodKSUID",(r,n)=>{n.pattern??(n.pattern=wd),rr.init(r,n)}),Of=U("$ZodISODateTime",(r,n)=>{n.pattern??(n.pattern=Wd(n)),rr.init(r,n)}),Uf=U("$ZodISODate",(r,n)=>{n.pattern??(n.pattern=zd),rr.init(r,n)}),hf=U("$ZodISOTime",(r,n)=>{n.pattern??(n.pattern=Sd(n)),rr.init(r,n)}),Rf=U("$ZodISODuration",(r,n)=>{n.pattern??(n.pattern=Id),rr.init(r,n)}),Df=U("$ZodIPv4",(r,n)=>{n.pattern??(n.pattern=Rd),rr.init(r,n),r._zod.bag.format="ipv4"}),yf=U("$ZodIPv6",(r,n)=>{n.pattern??(n.pattern=Dd),rr.init(r,n),r._zod.bag.format="ipv6",r._zod.check=(t)=>{try{new URL(`http://[${t.value}]`)}catch{t.issues.push({code:"invalid_format",format:"ipv6",input:t.value,inst:r,continue:!n.abort})}}}),qf=U("$ZodMAC",(r,n)=>{n.pattern??(n.pattern=yd(n.delimiter)),rr.init(r,n),r._zod.bag.format="mac"}),Tf=U("$ZodCIDRv4",(r,n)=>{n.pattern??(n.pattern=qd),rr.init(r,n)}),Nf=U("$ZodCIDRv6",(r,n)=>{n.pattern??(n.pattern=Td),rr.init(r,n),r._zod.check=(t)=>{let e=t.value.split("/");try{if(e.length!==2)throw Error();let[i,_]=e;if(!_)throw Error();let c=Number(_);if(`${c}`!==_)throw Error();if(c<0||c>128)throw Error();new URL(`http://[${i}]`)}catch{t.issues.push({code:"invalid_format",format:"cidrv6",input:t.value,inst:r,continue:!n.abort})}}});zf=U("$ZodBase64",(r,n)=>{n.pattern??(n.pattern=Nd),rr.init(r,n),r._zod.bag.contentEncoding="base64",r._zod.check=(t)=>{if(Lf(t.value))return;t.issues.push({code:"invalid_format",format:"base64",input:t.value,inst:r,continue:!n.abort})}});Sf=U("$ZodBase64URL",(r,n)=>{n.pattern??(n.pattern=uu),rr.init(r,n),r._zod.bag.contentEncoding="base64url",r._zod.check=(t)=>{if(TO(t.value))return;t.issues.push({code:"invalid_format",format:"base64url",input:t.value,inst:r,continue:!n.abort})}}),Wf=U("$ZodE164",(r,n)=>{n.pattern??(n.pattern=Ld),rr.init(r,n)});Ef=U("$ZodJWT",(r,n)=>{rr.init(r,n),r._zod.check=(t)=>{if(NO(t.value,n.alg))return;t.issues.push({code:"invalid_format",format:"jwt",input:t.value,inst:r,continue:!n.abort})}}),jf=U("$ZodCustomStringFormat",(r,n)=>{rr.init(r,n),r._zod.check=(t)=>{if(n.fn(t.value))return;t.issues.push({code:"invalid_format",format:n.format,input:t.value,inst:r,continue:!n.abort})}}),Uu=U("$ZodNumber",(r,n)=>{v.init(r,n),r._zod.pattern=r._zod.bag.pattern??d_,r._zod.parse=(t,e)=>{if(n.coerce)try{t.value=Number(t.value)}catch(c){}let i=t.value;if(typeof i==="number"&&!Number.isNaN(i)&&Number.isFinite(i))return t;let _=typeof i==="number"?Number.isNaN(i)?"NaN":!Number.isFinite(i)?"Infinity":void 0:void 0;return t.issues.push({expected:"number",code:"invalid_type",input:i,inst:r,..._?{received:_}:{}}),t}}),Jf=U("$ZodNumberFormat",(r,n)=>{Vd.init(r,n),Uu.init(r,n)}),w_=U("$ZodBoolean",(r,n)=>{v.init(r,n),r._zod.pattern=Ad,r._zod.parse=(t,e)=>{if(n.coerce)try{t.value=Boolean(t.value)}catch(_){}let i=t.value;if(typeof i==="boolean")return t;return t.issues.push({expected:"boolean",code:"invalid_type",input:i,inst:r}),t}}),hu=U("$ZodBigInt",(r,n)=>{v.init(r,n),r._zod.pattern=jd,r._zod.parse=(t,e)=>{if(n.coerce)try{t.value=BigInt(t.value)}catch(i){}if(typeof t.value==="bigint")return t;return t.issues.push({expected:"bigint",code:"invalid_type",input:t.value,inst:r}),t}}),Af=U("$ZodBigIntFormat",(r,n)=>{Fd.init(r,n),hu.init(r,n)}),Mf=U("$ZodSymbol",(r,n)=>{v.init(r,n),r._zod.parse=(t,e)=>{let i=t.value;if(typeof i==="symbol")return t;return t.issues.push({expected:"symbol",code:"invalid_type",input:i,inst:r}),t}}),Pf=U("$ZodUndefined",(r,n)=>{v.init(r,n),r._zod.pattern=Pd,r._zod.values=new Set([void 0]),r._zod.optin="optional",r._zod.optout="optional",r._zod.parse=(t,e)=>{let i=t.value;if(typeof i>"u")return t;return t.issues.push({expected:"undefined",code:"invalid_type",input:i,inst:r}),t}}),kf=U("$ZodNull",(r,n)=>{v.init(r,n),r._zod.pattern=Md,r._zod.values=new Set([null]),r._zod.parse=(t,e)=>{let i=t.value;if(i===null)return t;return t.issues.push({expected:"null",code:"invalid_type",input:i,inst:r}),t}}),Xf=U("$ZodAny",(r,n)=>{v.init(r,n),r._zod.parse=(t)=>t}),Gf=U("$ZodUnknown",(r,n)=>{v.init(r,n),r._zod.parse=(t)=>t}),Vf=U("$ZodNever",(r,n)=>{v.init(r,n),r._zod.parse=(t,e)=>{return t.issues.push({expected:"never",code:"invalid_type",input:t.value,inst:r}),t}}),Ff=U("$ZodVoid",(r,n)=>{v.init(r,n),r._zod.parse=(t,e)=>{let i=t.value;if(typeof i>"u")return t;return t.issues.push({expected:"void",code:"invalid_type",input:i,inst:r}),t}}),lf=U("$ZodDate",(r,n)=>{v.init(r,n),r._zod.parse=(t,e)=>{if(n.coerce)try{t.value=new Date(t.value)}catch(u){}let i=t.value,_=i instanceof Date;if(_&&!Number.isNaN(i.getTime()))return t;return t.issues.push({expected:"date",code:"invalid_type",input:i,..._?{received:"Invalid Date"}:{},inst:r}),t}});vf=U("$ZodArray",(r,n)=>{v.init(r,n),r._zod.parse=(t,e)=>{let i=t.value;if(!Array.isArray(i))return t.issues.push({expected:"array",code:"invalid_type",input:i,inst:r}),t;t.value=Array(i.length);let _=[];for(let c=0;c<i.length;c++){let u=i[c],o=n.element._zod.run({value:u,issues:[]},e);if(o instanceof Promise)_.push(o.then(($)=>bO($,t,c)));else bO(o,t,c)}if(_.length)return Promise.all(_).then(()=>t);return t}});SO=U("$ZodObject",(r,n)=>{if(v.init(r,n),!Object.getOwnPropertyDescriptor(n,"shape")?.get){let u=n.shape;Object.defineProperty(n,"shape",{get:()=>{let o={...u};return Object.defineProperty(n,"shape",{value:o}),o}})}let e=Ai(()=>LO(n));K(r._zod,"propValues",()=>{let u=n.shape,o={};for(let $ in u){let g=u[$]._zod;if(g.values){o[$]??(o[$]=new Set);for(let d of g.values)o[$].add(d)}}return o});let i=Kt,_=n.catchall,c;r._zod.parse=(u,o)=>{c??(c=e.value);let $=u.value;if(!i($))return u.issues.push({expected:"object",code:"invalid_type",input:$,inst:r}),u;u.value={};let g=[],d=c.shape;for(let f of c.keys){let b=d[f],m=b._zod.optout==="optional",w=b._zod.run({value:$[f],issues:[]},o);if(w instanceof Promise)g.push(w.then((O)=>Ou(O,u,f,$,m)));else Ou(w,u,f,$,m)}if(!_)return g.length?Promise.all(g).then(()=>u):u;return zO(g,$,u,o,e.value,r)}}),Yf=U("$ZodObjectJIT",(r,n)=>{SO.init(r,n);let t=r._zod.parse,e=Ai(()=>LO(n)),i=(f)=>{let b=new fu(["shape","payload","ctx"]),m=e.value,w=(R)=>{let j=Zc(R);return`shape[${j}]._zod.run({ value: input[${j}], issues: [] }, ctx)`};b.write("const input = payload.value;");let O=Object.create(null),q=0;for(let R of m.keys)O[R]=`key_${q++}`;b.write("const newResult = {};");for(let R of m.keys){let j=O[R],J=Zc(R),Q=f[R]?._zod?.optout==="optional";if(b.write(`const ${j} = ${w(R)};`),Q)b.write(`
|
|
7
|
-
if (${j}.issues.length) {
|
|
8
|
-
if (${J} in input) {
|
|
9
|
-
payload.issues = payload.issues.concat(${j}.issues.map(iss => ({
|
|
10
|
-
...iss,
|
|
11
|
-
path: iss.path ? [${J}, ...iss.path] : [${J}]
|
|
12
|
-
})));
|
|
13
|
-
}
|
|
14
|
-
}
|
|
15
|
-
|
|
16
|
-
if (${j}.value === undefined) {
|
|
17
|
-
if (${J} in input) {
|
|
18
|
-
newResult[${J}] = undefined;
|
|
19
|
-
}
|
|
20
|
-
} else {
|
|
21
|
-
newResult[${J}] = ${j}.value;
|
|
22
|
-
}
|
|
23
|
-
|
|
24
|
-
`);else b.write(`
|
|
25
|
-
if (${j}.issues.length) {
|
|
26
|
-
payload.issues = payload.issues.concat(${j}.issues.map(iss => ({
|
|
27
|
-
...iss,
|
|
28
|
-
path: iss.path ? [${J}, ...iss.path] : [${J}]
|
|
29
|
-
})));
|
|
30
|
-
}
|
|
31
|
-
|
|
32
|
-
if (${j}.value === undefined) {
|
|
33
|
-
if (${J} in input) {
|
|
34
|
-
newResult[${J}] = undefined;
|
|
35
|
-
}
|
|
36
|
-
} else {
|
|
37
|
-
newResult[${J}] = ${j}.value;
|
|
38
|
-
}
|
|
39
|
-
|
|
40
|
-
`)}b.write("payload.value = newResult;"),b.write("return payload;");let T=b.compile();return(R,j)=>T(f,R,j)},_,c=Kt,u=!n_.jitless,$=u&&pg.value,g=n.catchall,d;r._zod.parse=(f,b)=>{d??(d=e.value);let m=f.value;if(!c(m))return f.issues.push({expected:"object",code:"invalid_type",input:m,inst:r}),f;if(u&&$&&b?.async===!1&&b.jitless!==!0){if(!_)_=i(n.shape);if(f=_(f,b),!g)return f;return zO([],m,f,b,d,r)}return t(f,b)}});m_=U("$ZodUnion",(r,n)=>{v.init(r,n),K(r._zod,"optin",()=>n.options.some((i)=>i._zod.optin==="optional")?"optional":void 0),K(r._zod,"optout",()=>n.options.some((i)=>i._zod.optout==="optional")?"optional":void 0),K(r._zod,"values",()=>{if(n.options.every((i)=>i._zod.values))return new Set(n.options.flatMap((i)=>Array.from(i._zod.values)));return}),K(r._zod,"pattern",()=>{if(n.options.every((i)=>i._zod.pattern)){let i=n.options.map((_)=>_._zod.pattern);return new RegExp(`^(${i.map((_)=>e_(_.source)).join("|")})$`)}return});let t=n.options.length===1,e=n.options[0]._zod.run;r._zod.parse=(i,_)=>{if(t)return e(i,_);let c=!1,u=[];for(let o of n.options){let $=o._zod.run({value:i.value,issues:[]},_);if($ instanceof Promise)u.push($),c=!0;else{if($.issues.length===0)return $;u.push($)}}if(!c)return wO(u,i,r,_);return Promise.all(u).then((o)=>{return wO(o,i,r,_)})}});Hf=U("$ZodXor",(r,n)=>{m_.init(r,n),n.inclusive=!1;let t=n.options.length===1,e=n.options[0]._zod.run;r._zod.parse=(i,_)=>{if(t)return e(i,_);let c=!1,u=[];for(let o of n.options){let $=o._zod.run({value:i.value,issues:[]},_);if($ instanceof Promise)u.push($),c=!0;else u.push($)}if(!c)return mO(u,i,r,_);return Promise.all(u).then((o)=>{return mO(o,i,r,_)})}}),Bf=U("$ZodDiscriminatedUnion",(r,n)=>{n.inclusive=!1,m_.init(r,n);let t=r._zod.parse;K(r._zod,"propValues",()=>{let i={};for(let _ of n.options){let c=_._zod.propValues;if(!c||Object.keys(c).length===0)throw Error(`Invalid discriminated union option at index "${n.options.indexOf(_)}"`);for(let[u,o]of Object.entries(c)){if(!i[u])i[u]=new Set;for(let $ of o)i[u].add($)}}return i});let e=Ai(()=>{let i=n.options,_=new Map;for(let c of i){let u=c._zod.propValues?.[n.discriminator];if(!u||u.size===0)throw Error(`Invalid discriminated union option at index "${n.options.indexOf(c)}"`);for(let o of u){if(_.has(o))throw Error(`Duplicate discriminator value "${String(o)}"`);_.set(o,c)}}return _});r._zod.parse=(i,_)=>{let c=i.value;if(!Kt(c))return i.issues.push({code:"invalid_type",expected:"object",input:c,inst:r}),i;let u=e.value.get(c?.[n.discriminator]);if(u)return u._zod.run(i,_);if(n.unionFallback)return t(i,_);return i.issues.push({code:"invalid_union",errors:[],note:"No matching discriminator",discriminator:n.discriminator,input:c,path:[n.discriminator],inst:r}),i}}),Qf=U("$ZodIntersection",(r,n)=>{v.init(r,n),r._zod.parse=(t,e)=>{let i=t.value,_=n.left._zod.run({value:i,issues:[]},e),c=n.right._zod.run({value:i,issues:[]},e);if(_ instanceof Promise||c instanceof Promise)return Promise.all([_,c]).then(([o,$])=>{return IO(t,o,$)});return IO(t,_,c)}});Ru=U("$ZodTuple",(r,n)=>{v.init(r,n);let t=n.items;r._zod.parse=(e,i)=>{let _=e.value;if(!Array.isArray(_))return e.issues.push({input:_,inst:r,expected:"tuple",code:"invalid_type"}),e;e.value=[];let c=[],u=[...t].reverse().findIndex((g)=>g._zod.optin!=="optional"),o=u===-1?0:t.length-u;if(!n.rest){let g=_.length>t.length,d=_.length<o-1;if(g||d)return e.issues.push({...g?{code:"too_big",maximum:t.length,inclusive:!0}:{code:"too_small",minimum:t.length},input:_,inst:r,origin:"array"}),e}let $=-1;for(let g of t){if($++,$>=_.length){if($>=o)continue}let d=g._zod.run({value:_[$],issues:[]},i);if(d instanceof Promise)c.push(d.then((f)=>bu(f,e,$)));else bu(d,e,$)}if(n.rest){let g=_.slice(t.length);for(let d of g){$++;let f=n.rest._zod.run({value:d,issues:[]},i);if(f instanceof Promise)c.push(f.then((b)=>bu(b,e,$)));else bu(f,e,$)}}if(c.length)return Promise.all(c).then(()=>e);return e}});Kf=U("$ZodRecord",(r,n)=>{v.init(r,n),r._zod.parse=(t,e)=>{let i=t.value;if(!mt(i))return t.issues.push({expected:"record",code:"invalid_type",input:i,inst:r}),t;let _=[],c=n.keyType._zod.values;if(c){t.value={};let u=new Set;for(let $ of c)if(typeof $==="string"||typeof $==="number"||typeof $==="symbol"){u.add(typeof $==="number"?$.toString():$);let g=n.valueType._zod.run({value:i[$],issues:[]},e);if(g instanceof Promise)_.push(g.then((d)=>{if(d.issues.length)t.issues.push(...tn($,d.issues));t.value[$]=d.value}));else{if(g.issues.length)t.issues.push(...tn($,g.issues));t.value[$]=g.value}}let o;for(let $ in i)if(!u.has($))o=o??[],o.push($);if(o&&o.length>0)t.issues.push({code:"unrecognized_keys",input:i,inst:r,keys:o})}else{t.value={};for(let u of Reflect.ownKeys(i)){if(u==="__proto__")continue;let o=n.keyType._zod.run({value:u,issues:[]},e);if(o instanceof Promise)throw Error("Async schemas not supported in object keys currently");if(typeof u==="string"&&d_.test(u)&&o.issues.length){let d=n.keyType._zod.run({value:Number(u),issues:[]},e);if(d instanceof Promise)throw Error("Async schemas not supported in object keys currently");if(d.issues.length===0)o=d}if(o.issues.length){if(n.mode==="loose")t.value[u]=i[u];else t.issues.push({code:"invalid_key",origin:"record",issues:o.issues.map((d)=>Qr(d,e,fr())),input:u,path:[u],inst:r});continue}let g=n.valueType._zod.run({value:i[u],issues:[]},e);if(g instanceof Promise)_.push(g.then((d)=>{if(d.issues.length)t.issues.push(...tn(u,d.issues));t.value[o.value]=d.value}));else{if(g.issues.length)t.issues.push(...tn(u,g.issues));t.value[o.value]=g.value}}}if(_.length)return Promise.all(_).then(()=>t);return t}}),af=U("$ZodMap",(r,n)=>{v.init(r,n),r._zod.parse=(t,e)=>{let i=t.value;if(!(i instanceof Map))return t.issues.push({expected:"map",code:"invalid_type",input:i,inst:r}),t;let _=[];t.value=new Map;for(let[c,u]of i){let o=n.keyType._zod.run({value:c,issues:[]},e),$=n.valueType._zod.run({value:u,issues:[]},e);if(o instanceof Promise||$ instanceof Promise)_.push(Promise.all([o,$]).then(([g,d])=>{OO(g,d,t,c,i,r,e)}));else OO(o,$,t,c,i,r,e)}if(_.length)return Promise.all(_).then(()=>t);return t}});Zf=U("$ZodSet",(r,n)=>{v.init(r,n),r._zod.parse=(t,e)=>{let i=t.value;if(!(i instanceof Set))return t.issues.push({input:i,inst:r,expected:"set",code:"invalid_type"}),t;let _=[];t.value=new Set;for(let c of i){let u=n.valueType._zod.run({value:c,issues:[]},e);if(u instanceof Promise)_.push(u.then((o)=>UO(o,t)));else UO(u,t)}if(_.length)return Promise.all(_).then(()=>t);return t}});Cf=U("$ZodEnum",(r,n)=>{v.init(r,n);let t=i_(n.entries),e=new Set(t);r._zod.values=e,r._zod.pattern=new RegExp(`^(${t.filter((i)=>__.has(typeof i)).map((i)=>typeof i==="string"?bn(i):i.toString()).join("|")})$`),r._zod.parse=(i,_)=>{let c=i.value;if(e.has(c))return i;return i.issues.push({code:"invalid_value",values:t,input:c,inst:r}),i}}),xf=U("$ZodLiteral",(r,n)=>{if(v.init(r,n),n.values.length===0)throw Error("Cannot create literal schema with no valid values");let t=new Set(n.values);r._zod.values=t,r._zod.pattern=new RegExp(`^(${n.values.map((e)=>typeof e==="string"?bn(e):e?bn(e.toString()):String(e)).join("|")})$`),r._zod.parse=(e,i)=>{let _=e.value;if(t.has(_))return e;return e.issues.push({code:"invalid_value",values:n.values,input:_,inst:r}),e}}),pf=U("$ZodFile",(r,n)=>{v.init(r,n),r._zod.parse=(t,e)=>{let i=t.value;if(i instanceof File)return t;return t.issues.push({expected:"file",code:"invalid_type",input:i,inst:r}),t}}),sf=U("$ZodTransform",(r,n)=>{v.init(r,n),r._zod.parse=(t,e)=>{if(e.direction==="backward")throw new Qt(r.constructor.name);let i=n.transform(t.value,t);if(e.async)return(i instanceof Promise?i:Promise.resolve(i)).then((c)=>{return t.value=c,t});if(i instanceof Promise)throw new Xn;return t.value=i,t}});Du=U("$ZodOptional",(r,n)=>{v.init(r,n),r._zod.optin="optional",r._zod.optout="optional",K(r._zod,"values",()=>{return n.innerType._zod.values?new Set([...n.innerType._zod.values,void 0]):void 0}),K(r._zod,"pattern",()=>{let t=n.innerType._zod.pattern;return t?new RegExp(`^(${e_(t.source)})?$`):void 0}),r._zod.parse=(t,e)=>{if(n.innerType._zod.optin==="optional"){let i=n.innerType._zod.run(t,e);if(i instanceof Promise)return i.then((_)=>hO(_,t.value));return hO(i,t.value)}if(t.value===void 0)return t;return n.innerType._zod.run(t,e)}}),rb=U("$ZodExactOptional",(r,n)=>{Du.init(r,n),K(r._zod,"values",()=>n.innerType._zod.values),K(r._zod,"pattern",()=>n.innerType._zod.pattern),r._zod.parse=(t,e)=>{return n.innerType._zod.run(t,e)}}),nb=U("$ZodNullable",(r,n)=>{v.init(r,n),K(r._zod,"optin",()=>n.innerType._zod.optin),K(r._zod,"optout",()=>n.innerType._zod.optout),K(r._zod,"pattern",()=>{let t=n.innerType._zod.pattern;return t?new RegExp(`^(${e_(t.source)}|null)$`):void 0}),K(r._zod,"values",()=>{return n.innerType._zod.values?new Set([...n.innerType._zod.values,null]):void 0}),r._zod.parse=(t,e)=>{if(t.value===null)return t;return n.innerType._zod.run(t,e)}}),tb=U("$ZodDefault",(r,n)=>{v.init(r,n),r._zod.optin="optional",K(r._zod,"values",()=>n.innerType._zod.values),r._zod.parse=(t,e)=>{if(e.direction==="backward")return n.innerType._zod.run(t,e);if(t.value===void 0)return t.value=n.defaultValue,t;let i=n.innerType._zod.run(t,e);if(i instanceof Promise)return i.then((_)=>RO(_,n));return RO(i,n)}});ib=U("$ZodPrefault",(r,n)=>{v.init(r,n),r._zod.optin="optional",K(r._zod,"values",()=>n.innerType._zod.values),r._zod.parse=(t,e)=>{if(e.direction==="backward")return n.innerType._zod.run(t,e);if(t.value===void 0)t.value=n.defaultValue;return n.innerType._zod.run(t,e)}}),eb=U("$ZodNonOptional",(r,n)=>{v.init(r,n),K(r._zod,"values",()=>{let t=n.innerType._zod.values;return t?new Set([...t].filter((e)=>e!==void 0)):void 0}),r._zod.parse=(t,e)=>{let i=n.innerType._zod.run(t,e);if(i instanceof Promise)return i.then((_)=>DO(_,r));return DO(i,r)}});_b=U("$ZodSuccess",(r,n)=>{v.init(r,n),r._zod.parse=(t,e)=>{if(e.direction==="backward")throw new Qt("ZodSuccess");let i=n.innerType._zod.run(t,e);if(i instanceof Promise)return i.then((_)=>{return t.value=_.issues.length===0,t});return t.value=i.issues.length===0,t}}),cb=U("$ZodCatch",(r,n)=>{v.init(r,n),K(r._zod,"optin",()=>n.innerType._zod.optin),K(r._zod,"optout",()=>n.innerType._zod.optout),K(r._zod,"values",()=>n.innerType._zod.values),r._zod.parse=(t,e)=>{if(e.direction==="backward")return n.innerType._zod.run(t,e);let i=n.innerType._zod.run(t,e);if(i instanceof Promise)return i.then((_)=>{if(t.value=_.value,_.issues.length)t.value=n.catchValue({...t,error:{issues:_.issues.map((c)=>Qr(c,e,fr()))},input:t.value}),t.issues=[];return t});if(t.value=i.value,i.issues.length)t.value=n.catchValue({...t,error:{issues:i.issues.map((_)=>Qr(_,e,fr()))},input:t.value}),t.issues=[];return t}}),ub=U("$ZodNaN",(r,n)=>{v.init(r,n),r._zod.parse=(t,e)=>{if(typeof t.value!=="number"||!Number.isNaN(t.value))return t.issues.push({input:t.value,inst:r,expected:"nan",code:"invalid_type"}),t;return t}}),ob=U("$ZodPipe",(r,n)=>{v.init(r,n),K(r._zod,"values",()=>n.in._zod.values),K(r._zod,"optin",()=>n.in._zod.optin),K(r._zod,"optout",()=>n.out._zod.optout),K(r._zod,"propValues",()=>n.in._zod.propValues),r._zod.parse=(t,e)=>{if(e.direction==="backward"){let _=n.out._zod.run(t,e);if(_ instanceof Promise)return _.then((c)=>wu(c,n.in,e));return wu(_,n.in,e)}let i=n.in._zod.run(t,e);if(i instanceof Promise)return i.then((_)=>wu(_,n.out,e));return wu(i,n.out,e)}});I_=U("$ZodCodec",(r,n)=>{v.init(r,n),K(r._zod,"values",()=>n.in._zod.values),K(r._zod,"optin",()=>n.in._zod.optin),K(r._zod,"optout",()=>n.out._zod.optout),K(r._zod,"propValues",()=>n.in._zod.propValues),r._zod.parse=(t,e)=>{if((e.direction||"forward")==="forward"){let _=n.in._zod.run(t,e);if(_ instanceof Promise)return _.then((c)=>mu(c,n,e));return mu(_,n,e)}else{let _=n.out._zod.run(t,e);if(_ instanceof Promise)return _.then((c)=>mu(c,n,e));return mu(_,n,e)}}});$b=U("$ZodReadonly",(r,n)=>{v.init(r,n),K(r._zod,"propValues",()=>n.innerType._zod.propValues),K(r._zod,"values",()=>n.innerType._zod.values),K(r._zod,"optin",()=>n.innerType?._zod?.optin),K(r._zod,"optout",()=>n.innerType?._zod?.optout),r._zod.parse=(t,e)=>{if(e.direction==="backward")return n.innerType._zod.run(t,e);let i=n.innerType._zod.run(t,e);if(i instanceof Promise)return i.then(yO);return yO(i)}});gb=U("$ZodTemplateLiteral",(r,n)=>{v.init(r,n);let t=[];for(let e of n.parts)if(typeof e==="object"&&e!==null){if(!e._zod.pattern)throw Error(`Invalid template literal part, no pattern found: ${[...e._zod.traits].shift()}`);let i=e._zod.pattern instanceof RegExp?e._zod.pattern.source:e._zod.pattern;if(!i)throw Error(`Invalid template literal part: ${e._zod.traits}`);let _=i.startsWith("^")?1:0,c=i.endsWith("$")?i.length-1:i.length;t.push(i.slice(_,c))}else if(e===null||rd.has(typeof e))t.push(bn(`${e}`));else throw Error(`Invalid template literal part: ${e}`);r._zod.pattern=new RegExp(`^${t.join("")}$`),r._zod.parse=(e,i)=>{if(typeof e.value!=="string")return e.issues.push({input:e.value,inst:r,expected:"string",code:"invalid_type"}),e;if(r._zod.pattern.lastIndex=0,!r._zod.pattern.test(e.value))return e.issues.push({input:e.value,inst:r,code:"invalid_format",format:n.format??"template_literal",pattern:r._zod.pattern.source}),e;return e}}),db=U("$ZodFunction",(r,n)=>{return v.init(r,n),r._def=n,r._zod.def=n,r.implement=(t)=>{if(typeof t!=="function")throw Error("implement() must be called with a function");return function(...e){let i=r._def.input?xc(r._def.input,e):e,_=Reflect.apply(t,this,i);if(r._def.output)return xc(r._def.output,_);return _}},r.implementAsync=(t)=>{if(typeof t!=="function")throw Error("implementAsync() must be called with a function");return async function(...e){let i=r._def.input?await pc(r._def.input,e):e,_=await Reflect.apply(t,this,i);if(r._def.output)return await pc(r._def.output,_);return _}},r._zod.parse=(t,e)=>{if(typeof t.value!=="function")return t.issues.push({code:"invalid_type",expected:"function",input:t.value,inst:r}),t;if(r._def.output&&r._def.output._zod.def.type==="promise")t.value=r.implementAsync(t.value);else t.value=r.implement(t.value);return t},r.input=(...t)=>{let e=r.constructor;if(Array.isArray(t[0]))return new e({type:"function",input:new Ru({type:"tuple",items:t[0],rest:t[1]}),output:r._def.output});return new e({type:"function",input:t[0],output:r._def.output})},r.output=(t)=>{return new r.constructor({type:"function",input:r._def.input,output:t})},r}),fb=U("$ZodPromise",(r,n)=>{v.init(r,n),r._zod.parse=(t,e)=>{return Promise.resolve(t.value).then((i)=>n.innerType._zod.run({value:i,issues:[]},e))}}),bb=U("$ZodLazy",(r,n)=>{v.init(r,n),K(r._zod,"innerType",()=>n.getter()),K(r._zod,"pattern",()=>r._zod.innerType?._zod?.pattern),K(r._zod,"propValues",()=>r._zod.innerType?._zod?.propValues),K(r._zod,"optin",()=>r._zod.innerType?._zod?.optin??void 0),K(r._zod,"optout",()=>r._zod.innerType?._zod?.optout??void 0),r._zod.parse=(t,e)=>{return r._zod.innerType._zod.run(t,e)}}),wb=U("$ZodCustom",(r,n)=>{ir.init(r,n),v.init(r,n),r._zod.parse=(t,e)=>{return t},r._zod.check=(t)=>{let e=t.value,i=n.fn(e);if(i instanceof Promise)return i.then((_)=>qO(_,t,e,r));qO(i,t,e,r);return}})});function Ib(){return{localeError:FS()}}var FS=()=>{let r={string:{unit:"\u062D\u0631\u0641",verb:"\u0623\u0646 \u064A\u062D\u0648\u064A"},file:{unit:"\u0628\u0627\u064A\u062A",verb:"\u0623\u0646 \u064A\u062D\u0648\u064A"},array:{unit:"\u0639\u0646\u0635\u0631",verb:"\u0623\u0646 \u064A\u062D\u0648\u064A"},set:{unit:"\u0639\u0646\u0635\u0631",verb:"\u0623\u0646 \u064A\u062D\u0648\u064A"}};function n(i){return r[i]??null}let t={regex:"\u0645\u062F\u062E\u0644",email:"\u0628\u0631\u064A\u062F \u0625\u0644\u0643\u062A\u0631\u0648\u0646\u064A",url:"\u0631\u0627\u0628\u0637",emoji:"\u0625\u064A\u0645\u0648\u062C\u064A",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"\u062A\u0627\u0631\u064A\u062E \u0648\u0648\u0642\u062A \u0628\u0645\u0639\u064A\u0627\u0631 ISO",date:"\u062A\u0627\u0631\u064A\u062E \u0628\u0645\u0639\u064A\u0627\u0631 ISO",time:"\u0648\u0642\u062A \u0628\u0645\u0639\u064A\u0627\u0631 ISO",duration:"\u0645\u062F\u0629 \u0628\u0645\u0639\u064A\u0627\u0631 ISO",ipv4:"\u0639\u0646\u0648\u0627\u0646 IPv4",ipv6:"\u0639\u0646\u0648\u0627\u0646 IPv6",cidrv4:"\u0645\u062F\u0649 \u0639\u0646\u0627\u0648\u064A\u0646 \u0628\u0635\u064A\u063A\u0629 IPv4",cidrv6:"\u0645\u062F\u0649 \u0639\u0646\u0627\u0648\u064A\u0646 \u0628\u0635\u064A\u063A\u0629 IPv6",base64:"\u0646\u064E\u0635 \u0628\u062A\u0631\u0645\u064A\u0632 base64-encoded",base64url:"\u0646\u064E\u0635 \u0628\u062A\u0631\u0645\u064A\u0632 base64url-encoded",json_string:"\u0646\u064E\u0635 \u0639\u0644\u0649 \u0647\u064A\u0626\u0629 JSON",e164:"\u0631\u0642\u0645 \u0647\u0627\u062A\u0641 \u0628\u0645\u0639\u064A\u0627\u0631 E.164",jwt:"JWT",template_literal:"\u0645\u062F\u062E\u0644"},e={nan:"NaN"};return(i)=>{switch(i.code){case"invalid_type":{let _=e[i.expected]??i.expected,c=S(i.input),u=e[c]??c;if(/^[A-Z]/.test(i.expected))return`\u0645\u062F\u062E\u0644\u0627\u062A \u063A\u064A\u0631 \u0645\u0642\u0628\u0648\u0644\u0629: \u064A\u0641\u062A\u0631\u0636 \u0625\u062F\u062E\u0627\u0644 instanceof ${i.expected}\u060C \u0648\u0644\u0643\u0646 \u062A\u0645 \u0625\u062F\u062E\u0627\u0644 ${u}`;return`\u0645\u062F\u062E\u0644\u0627\u062A \u063A\u064A\u0631 \u0645\u0642\u0628\u0648\u0644\u0629: \u064A\u0641\u062A\u0631\u0636 \u0625\u062F\u062E\u0627\u0644 ${_}\u060C \u0648\u0644\u0643\u0646 \u062A\u0645 \u0625\u062F\u062E\u0627\u0644 ${u}`}case"invalid_value":if(i.values.length===1)return`\u0645\u062F\u062E\u0644\u0627\u062A \u063A\u064A\u0631 \u0645\u0642\u0628\u0648\u0644\u0629: \u064A\u0641\u062A\u0631\u0636 \u0625\u062F\u062E\u0627\u0644 ${z(i.values[0])}`;return`\u0627\u062E\u062A\u064A\u0627\u0631 \u063A\u064A\u0631 \u0645\u0642\u0628\u0648\u0644: \u064A\u062A\u0648\u0642\u0639 \u0627\u0646\u062A\u0642\u0627\u0621 \u0623\u062D\u062F \u0647\u0630\u0647 \u0627\u0644\u062E\u064A\u0627\u0631\u0627\u062A: ${h(i.values,"|")}`;case"too_big":{let _=i.inclusive?"<=":"<",c=n(i.origin);if(c)return` \u0623\u0643\u0628\u0631 \u0645\u0646 \u0627\u0644\u0644\u0627\u0632\u0645: \u064A\u0641\u062A\u0631\u0636 \u0623\u0646 \u062A\u0643\u0648\u0646 ${i.origin??"\u0627\u0644\u0642\u064A\u0645\u0629"} ${_} ${i.maximum.toString()} ${c.unit??"\u0639\u0646\u0635\u0631"}`;return`\u0623\u0643\u0628\u0631 \u0645\u0646 \u0627\u0644\u0644\u0627\u0632\u0645: \u064A\u0641\u062A\u0631\u0636 \u0623\u0646 \u062A\u0643\u0648\u0646 ${i.origin??"\u0627\u0644\u0642\u064A\u0645\u0629"} ${_} ${i.maximum.toString()}`}case"too_small":{let _=i.inclusive?">=":">",c=n(i.origin);if(c)return`\u0623\u0635\u063A\u0631 \u0645\u0646 \u0627\u0644\u0644\u0627\u0632\u0645: \u064A\u0641\u062A\u0631\u0636 \u0644\u0640 ${i.origin} \u0623\u0646 \u064A\u0643\u0648\u0646 ${_} ${i.minimum.toString()} ${c.unit}`;return`\u0623\u0635\u063A\u0631 \u0645\u0646 \u0627\u0644\u0644\u0627\u0632\u0645: \u064A\u0641\u062A\u0631\u0636 \u0644\u0640 ${i.origin} \u0623\u0646 \u064A\u0643\u0648\u0646 ${_} ${i.minimum.toString()}`}case"invalid_format":{let _=i;if(_.format==="starts_with")return`\u0646\u064E\u0635 \u063A\u064A\u0631 \u0645\u0642\u0628\u0648\u0644: \u064A\u062C\u0628 \u0623\u0646 \u064A\u0628\u062F\u0623 \u0628\u0640 "${i.prefix}"`;if(_.format==="ends_with")return`\u0646\u064E\u0635 \u063A\u064A\u0631 \u0645\u0642\u0628\u0648\u0644: \u064A\u062C\u0628 \u0623\u0646 \u064A\u0646\u062A\u0647\u064A \u0628\u0640 "${_.suffix}"`;if(_.format==="includes")return`\u0646\u064E\u0635 \u063A\u064A\u0631 \u0645\u0642\u0628\u0648\u0644: \u064A\u062C\u0628 \u0623\u0646 \u064A\u062A\u0636\u0645\u0651\u064E\u0646 "${_.includes}"`;if(_.format==="regex")return`\u0646\u064E\u0635 \u063A\u064A\u0631 \u0645\u0642\u0628\u0648\u0644: \u064A\u062C\u0628 \u0623\u0646 \u064A\u0637\u0627\u0628\u0642 \u0627\u0644\u0646\u0645\u0637 ${_.pattern}`;return`${t[_.format]??i.format} \u063A\u064A\u0631 \u0645\u0642\u0628\u0648\u0644`}case"not_multiple_of":return`\u0631\u0642\u0645 \u063A\u064A\u0631 \u0645\u0642\u0628\u0648\u0644: \u064A\u062C\u0628 \u0623\u0646 \u064A\u0643\u0648\u0646 \u0645\u0646 \u0645\u0636\u0627\u0639\u0641\u0627\u062A ${i.divisor}`;case"unrecognized_keys":return`\u0645\u0639\u0631\u0641${i.keys.length>1?"\u0627\u062A":""} \u063A\u0631\u064A\u0628${i.keys.length>1?"\u0629":""}: ${h(i.keys,"\u060C ")}`;case"invalid_key":return`\u0645\u0639\u0631\u0641 \u063A\u064A\u0631 \u0645\u0642\u0628\u0648\u0644 \u0641\u064A ${i.origin}`;case"invalid_union":return"\u0645\u062F\u062E\u0644 \u063A\u064A\u0631 \u0645\u0642\u0628\u0648\u0644";case"invalid_element":return`\u0645\u062F\u062E\u0644 \u063A\u064A\u0631 \u0645\u0642\u0628\u0648\u0644 \u0641\u064A ${i.origin}`;default:return"\u0645\u062F\u062E\u0644 \u063A\u064A\u0631 \u0645\u0642\u0628\u0648\u0644"}}};var WO=N(()=>{G()});function Ob(){return{localeError:lS()}}var lS=()=>{let r={string:{unit:"simvol",verb:"olmal\u0131d\u0131r"},file:{unit:"bayt",verb:"olmal\u0131d\u0131r"},array:{unit:"element",verb:"olmal\u0131d\u0131r"},set:{unit:"element",verb:"olmal\u0131d\u0131r"}};function n(i){return r[i]??null}let t={regex:"input",email:"email address",url:"URL",emoji:"emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ISO datetime",date:"ISO date",time:"ISO time",duration:"ISO duration",ipv4:"IPv4 address",ipv6:"IPv6 address",cidrv4:"IPv4 range",cidrv6:"IPv6 range",base64:"base64-encoded string",base64url:"base64url-encoded string",json_string:"JSON string",e164:"E.164 number",jwt:"JWT",template_literal:"input"},e={nan:"NaN"};return(i)=>{switch(i.code){case"invalid_type":{let _=e[i.expected]??i.expected,c=S(i.input),u=e[c]??c;if(/^[A-Z]/.test(i.expected))return`Yanl\u0131\u015F d\u0259y\u0259r: g\xF6zl\u0259nil\u0259n instanceof ${i.expected}, daxil olan ${u}`;return`Yanl\u0131\u015F d\u0259y\u0259r: g\xF6zl\u0259nil\u0259n ${_}, daxil olan ${u}`}case"invalid_value":if(i.values.length===1)return`Yanl\u0131\u015F d\u0259y\u0259r: g\xF6zl\u0259nil\u0259n ${z(i.values[0])}`;return`Yanl\u0131\u015F se\xE7im: a\u015Fa\u011F\u0131dak\u0131lardan biri olmal\u0131d\u0131r: ${h(i.values,"|")}`;case"too_big":{let _=i.inclusive?"<=":"<",c=n(i.origin);if(c)return`\xC7ox b\xF6y\xFCk: g\xF6zl\u0259nil\u0259n ${i.origin??"d\u0259y\u0259r"} ${_}${i.maximum.toString()} ${c.unit??"element"}`;return`\xC7ox b\xF6y\xFCk: g\xF6zl\u0259nil\u0259n ${i.origin??"d\u0259y\u0259r"} ${_}${i.maximum.toString()}`}case"too_small":{let _=i.inclusive?">=":">",c=n(i.origin);if(c)return`\xC7ox ki\xE7ik: g\xF6zl\u0259nil\u0259n ${i.origin} ${_}${i.minimum.toString()} ${c.unit}`;return`\xC7ox ki\xE7ik: g\xF6zl\u0259nil\u0259n ${i.origin} ${_}${i.minimum.toString()}`}case"invalid_format":{let _=i;if(_.format==="starts_with")return`Yanl\u0131\u015F m\u0259tn: "${_.prefix}" il\u0259 ba\u015Flamal\u0131d\u0131r`;if(_.format==="ends_with")return`Yanl\u0131\u015F m\u0259tn: "${_.suffix}" il\u0259 bitm\u0259lidir`;if(_.format==="includes")return`Yanl\u0131\u015F m\u0259tn: "${_.includes}" daxil olmal\u0131d\u0131r`;if(_.format==="regex")return`Yanl\u0131\u015F m\u0259tn: ${_.pattern} \u015Fablonuna uy\u011Fun olmal\u0131d\u0131r`;return`Yanl\u0131\u015F ${t[_.format]??i.format}`}case"not_multiple_of":return`Yanl\u0131\u015F \u0259d\u0259d: ${i.divisor} il\u0259 b\xF6l\xFCn\u0259 bil\u0259n olmal\u0131d\u0131r`;case"unrecognized_keys":return`Tan\u0131nmayan a\xE7ar${i.keys.length>1?"lar":""}: ${h(i.keys,", ")}`;case"invalid_key":return`${i.origin} daxilind\u0259 yanl\u0131\u015F a\xE7ar`;case"invalid_union":return"Yanl\u0131\u015F d\u0259y\u0259r";case"invalid_element":return`${i.origin} daxilind\u0259 yanl\u0131\u015F d\u0259y\u0259r`;default:return"Yanl\u0131\u015F d\u0259y\u0259r"}}};var EO=N(()=>{G()});function jO(r,n,t,e){let i=Math.abs(r),_=i%10,c=i%100;if(c>=11&&c<=19)return e;if(_===1)return n;if(_>=2&&_<=4)return t;return e}function Ub(){return{localeError:vS()}}var vS=()=>{let r={string:{unit:{one:"\u0441\u0456\u043C\u0432\u0430\u043B",few:"\u0441\u0456\u043C\u0432\u0430\u043B\u044B",many:"\u0441\u0456\u043C\u0432\u0430\u043B\u0430\u045E"},verb:"\u043C\u0435\u0446\u044C"},array:{unit:{one:"\u044D\u043B\u0435\u043C\u0435\u043D\u0442",few:"\u044D\u043B\u0435\u043C\u0435\u043D\u0442\u044B",many:"\u044D\u043B\u0435\u043C\u0435\u043D\u0442\u0430\u045E"},verb:"\u043C\u0435\u0446\u044C"},set:{unit:{one:"\u044D\u043B\u0435\u043C\u0435\u043D\u0442",few:"\u044D\u043B\u0435\u043C\u0435\u043D\u0442\u044B",many:"\u044D\u043B\u0435\u043C\u0435\u043D\u0442\u0430\u045E"},verb:"\u043C\u0435\u0446\u044C"},file:{unit:{one:"\u0431\u0430\u0439\u0442",few:"\u0431\u0430\u0439\u0442\u044B",many:"\u0431\u0430\u0439\u0442\u0430\u045E"},verb:"\u043C\u0435\u0446\u044C"}};function n(i){return r[i]??null}let t={regex:"\u0443\u0432\u043E\u0434",email:"email \u0430\u0434\u0440\u0430\u0441",url:"URL",emoji:"\u044D\u043C\u043E\u0434\u0437\u0456",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ISO \u0434\u0430\u0442\u0430 \u0456 \u0447\u0430\u0441",date:"ISO \u0434\u0430\u0442\u0430",time:"ISO \u0447\u0430\u0441",duration:"ISO \u043F\u0440\u0430\u0446\u044F\u0433\u043B\u0430\u0441\u0446\u044C",ipv4:"IPv4 \u0430\u0434\u0440\u0430\u0441",ipv6:"IPv6 \u0430\u0434\u0440\u0430\u0441",cidrv4:"IPv4 \u0434\u044B\u044F\u043F\u0430\u0437\u043E\u043D",cidrv6:"IPv6 \u0434\u044B\u044F\u043F\u0430\u0437\u043E\u043D",base64:"\u0440\u0430\u0434\u043E\u043A \u0443 \u0444\u0430\u0440\u043C\u0430\u0446\u0435 base64",base64url:"\u0440\u0430\u0434\u043E\u043A \u0443 \u0444\u0430\u0440\u043C\u0430\u0446\u0435 base64url",json_string:"JSON \u0440\u0430\u0434\u043E\u043A",e164:"\u043D\u0443\u043C\u0430\u0440 E.164",jwt:"JWT",template_literal:"\u0443\u0432\u043E\u0434"},e={nan:"NaN",number:"\u043B\u0456\u043A",array:"\u043C\u0430\u0441\u0456\u045E"};return(i)=>{switch(i.code){case"invalid_type":{let _=e[i.expected]??i.expected,c=S(i.input),u=e[c]??c;if(/^[A-Z]/.test(i.expected))return`\u041D\u044F\u043F\u0440\u0430\u0432\u0456\u043B\u044C\u043D\u044B \u045E\u0432\u043E\u0434: \u0447\u0430\u043A\u0430\u045E\u0441\u044F instanceof ${i.expected}, \u0430\u0442\u0440\u044B\u043C\u0430\u043D\u0430 ${u}`;return`\u041D\u044F\u043F\u0440\u0430\u0432\u0456\u043B\u044C\u043D\u044B \u045E\u0432\u043E\u0434: \u0447\u0430\u043A\u0430\u045E\u0441\u044F ${_}, \u0430\u0442\u0440\u044B\u043C\u0430\u043D\u0430 ${u}`}case"invalid_value":if(i.values.length===1)return`\u041D\u044F\u043F\u0440\u0430\u0432\u0456\u043B\u044C\u043D\u044B \u045E\u0432\u043E\u0434: \u0447\u0430\u043A\u0430\u043B\u0430\u0441\u044F ${z(i.values[0])}`;return`\u041D\u044F\u043F\u0440\u0430\u0432\u0456\u043B\u044C\u043D\u044B \u0432\u0430\u0440\u044B\u044F\u043D\u0442: \u0447\u0430\u043A\u0430\u045E\u0441\u044F \u0430\u0434\u0437\u0456\u043D \u0437 ${h(i.values,"|")}`;case"too_big":{let _=i.inclusive?"<=":"<",c=n(i.origin);if(c){let u=Number(i.maximum),o=jO(u,c.unit.one,c.unit.few,c.unit.many);return`\u0417\u0430\u043D\u0430\u0434\u0442\u0430 \u0432\u044F\u043B\u0456\u043A\u0456: \u0447\u0430\u043A\u0430\u043B\u0430\u0441\u044F, \u0448\u0442\u043E ${i.origin??"\u0437\u043D\u0430\u0447\u044D\u043D\u043D\u0435"} \u043F\u0430\u0432\u0456\u043D\u043D\u0430 ${c.verb} ${_}${i.maximum.toString()} ${o}`}return`\u0417\u0430\u043D\u0430\u0434\u0442\u0430 \u0432\u044F\u043B\u0456\u043A\u0456: \u0447\u0430\u043A\u0430\u043B\u0430\u0441\u044F, \u0448\u0442\u043E ${i.origin??"\u0437\u043D\u0430\u0447\u044D\u043D\u043D\u0435"} \u043F\u0430\u0432\u0456\u043D\u043D\u0430 \u0431\u044B\u0446\u044C ${_}${i.maximum.toString()}`}case"too_small":{let _=i.inclusive?">=":">",c=n(i.origin);if(c){let u=Number(i.minimum),o=jO(u,c.unit.one,c.unit.few,c.unit.many);return`\u0417\u0430\u043D\u0430\u0434\u0442\u0430 \u043C\u0430\u043B\u044B: \u0447\u0430\u043A\u0430\u043B\u0430\u0441\u044F, \u0448\u0442\u043E ${i.origin} \u043F\u0430\u0432\u0456\u043D\u043D\u0430 ${c.verb} ${_}${i.minimum.toString()} ${o}`}return`\u0417\u0430\u043D\u0430\u0434\u0442\u0430 \u043C\u0430\u043B\u044B: \u0447\u0430\u043A\u0430\u043B\u0430\u0441\u044F, \u0448\u0442\u043E ${i.origin} \u043F\u0430\u0432\u0456\u043D\u043D\u0430 \u0431\u044B\u0446\u044C ${_}${i.minimum.toString()}`}case"invalid_format":{let _=i;if(_.format==="starts_with")return`\u041D\u044F\u043F\u0440\u0430\u0432\u0456\u043B\u044C\u043D\u044B \u0440\u0430\u0434\u043E\u043A: \u043F\u0430\u0432\u0456\u043D\u0435\u043D \u043F\u0430\u0447\u044B\u043D\u0430\u0446\u0446\u0430 \u0437 "${_.prefix}"`;if(_.format==="ends_with")return`\u041D\u044F\u043F\u0440\u0430\u0432\u0456\u043B\u044C\u043D\u044B \u0440\u0430\u0434\u043E\u043A: \u043F\u0430\u0432\u0456\u043D\u0435\u043D \u0437\u0430\u043A\u0430\u043D\u0447\u0432\u0430\u0446\u0446\u0430 \u043D\u0430 "${_.suffix}"`;if(_.format==="includes")return`\u041D\u044F\u043F\u0440\u0430\u0432\u0456\u043B\u044C\u043D\u044B \u0440\u0430\u0434\u043E\u043A: \u043F\u0430\u0432\u0456\u043D\u0435\u043D \u0437\u043C\u044F\u0448\u0447\u0430\u0446\u044C "${_.includes}"`;if(_.format==="regex")return`\u041D\u044F\u043F\u0440\u0430\u0432\u0456\u043B\u044C\u043D\u044B \u0440\u0430\u0434\u043E\u043A: \u043F\u0430\u0432\u0456\u043D\u0435\u043D \u0430\u0434\u043F\u0430\u0432\u044F\u0434\u0430\u0446\u044C \u0448\u0430\u0431\u043B\u043E\u043D\u0443 ${_.pattern}`;return`\u041D\u044F\u043F\u0440\u0430\u0432\u0456\u043B\u044C\u043D\u044B ${t[_.format]??i.format}`}case"not_multiple_of":return`\u041D\u044F\u043F\u0440\u0430\u0432\u0456\u043B\u044C\u043D\u044B \u043B\u0456\u043A: \u043F\u0430\u0432\u0456\u043D\u0435\u043D \u0431\u044B\u0446\u044C \u043A\u0440\u0430\u0442\u043D\u044B\u043C ${i.divisor}`;case"unrecognized_keys":return`\u041D\u0435\u0440\u0430\u0441\u043F\u0430\u0437\u043D\u0430\u043D\u044B ${i.keys.length>1?"\u043A\u043B\u044E\u0447\u044B":"\u043A\u043B\u044E\u0447"}: ${h(i.keys,", ")}`;case"invalid_key":return`\u041D\u044F\u043F\u0440\u0430\u0432\u0456\u043B\u044C\u043D\u044B \u043A\u043B\u044E\u0447 \u0443 ${i.origin}`;case"invalid_union":return"\u041D\u044F\u043F\u0440\u0430\u0432\u0456\u043B\u044C\u043D\u044B \u045E\u0432\u043E\u0434";case"invalid_element":return`\u041D\u044F\u043F\u0440\u0430\u0432\u0456\u043B\u044C\u043D\u0430\u0435 \u0437\u043D\u0430\u0447\u044D\u043D\u043D\u0435 \u045E ${i.origin}`;default:return"\u041D\u044F\u043F\u0440\u0430\u0432\u0456\u043B\u044C\u043D\u044B \u045E\u0432\u043E\u0434"}}};var JO=N(()=>{G()});function hb(){return{localeError:YS()}}var YS=()=>{let r={string:{unit:"\u0441\u0438\u043C\u0432\u043E\u043B\u0430",verb:"\u0434\u0430 \u0441\u044A\u0434\u044A\u0440\u0436\u0430"},file:{unit:"\u0431\u0430\u0439\u0442\u0430",verb:"\u0434\u0430 \u0441\u044A\u0434\u044A\u0440\u0436\u0430"},array:{unit:"\u0435\u043B\u0435\u043C\u0435\u043D\u0442\u0430",verb:"\u0434\u0430 \u0441\u044A\u0434\u044A\u0440\u0436\u0430"},set:{unit:"\u0435\u043B\u0435\u043C\u0435\u043D\u0442\u0430",verb:"\u0434\u0430 \u0441\u044A\u0434\u044A\u0440\u0436\u0430"}};function n(i){return r[i]??null}let t={regex:"\u0432\u0445\u043E\u0434",email:"\u0438\u043C\u0435\u0439\u043B \u0430\u0434\u0440\u0435\u0441",url:"URL",emoji:"\u0435\u043C\u043E\u0434\u0436\u0438",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ISO \u0432\u0440\u0435\u043C\u0435",date:"ISO \u0434\u0430\u0442\u0430",time:"ISO \u0432\u0440\u0435\u043C\u0435",duration:"ISO \u043F\u0440\u043E\u0434\u044A\u043B\u0436\u0438\u0442\u0435\u043B\u043D\u043E\u0441\u0442",ipv4:"IPv4 \u0430\u0434\u0440\u0435\u0441",ipv6:"IPv6 \u0430\u0434\u0440\u0435\u0441",cidrv4:"IPv4 \u0434\u0438\u0430\u043F\u0430\u0437\u043E\u043D",cidrv6:"IPv6 \u0434\u0438\u0430\u043F\u0430\u0437\u043E\u043D",base64:"base64-\u043A\u043E\u0434\u0438\u0440\u0430\u043D \u043D\u0438\u0437",base64url:"base64url-\u043A\u043E\u0434\u0438\u0440\u0430\u043D \u043D\u0438\u0437",json_string:"JSON \u043D\u0438\u0437",e164:"E.164 \u043D\u043E\u043C\u0435\u0440",jwt:"JWT",template_literal:"\u0432\u0445\u043E\u0434"},e={nan:"NaN",number:"\u0447\u0438\u0441\u043B\u043E",array:"\u043C\u0430\u0441\u0438\u0432"};return(i)=>{switch(i.code){case"invalid_type":{let _=e[i.expected]??i.expected,c=S(i.input),u=e[c]??c;if(/^[A-Z]/.test(i.expected))return`\u041D\u0435\u0432\u0430\u043B\u0438\u0434\u0435\u043D \u0432\u0445\u043E\u0434: \u043E\u0447\u0430\u043A\u0432\u0430\u043D instanceof ${i.expected}, \u043F\u043E\u043B\u0443\u0447\u0435\u043D ${u}`;return`\u041D\u0435\u0432\u0430\u043B\u0438\u0434\u0435\u043D \u0432\u0445\u043E\u0434: \u043E\u0447\u0430\u043A\u0432\u0430\u043D ${_}, \u043F\u043E\u043B\u0443\u0447\u0435\u043D ${u}`}case"invalid_value":if(i.values.length===1)return`\u041D\u0435\u0432\u0430\u043B\u0438\u0434\u0435\u043D \u0432\u0445\u043E\u0434: \u043E\u0447\u0430\u043A\u0432\u0430\u043D ${z(i.values[0])}`;return`\u041D\u0435\u0432\u0430\u043B\u0438\u0434\u043D\u0430 \u043E\u043F\u0446\u0438\u044F: \u043E\u0447\u0430\u043A\u0432\u0430\u043D\u043E \u0435\u0434\u043D\u043E \u043E\u0442 ${h(i.values,"|")}`;case"too_big":{let _=i.inclusive?"<=":"<",c=n(i.origin);if(c)return`\u0422\u0432\u044A\u0440\u0434\u0435 \u0433\u043E\u043B\u044F\u043C\u043E: \u043E\u0447\u0430\u043A\u0432\u0430 \u0441\u0435 ${i.origin??"\u0441\u0442\u043E\u0439\u043D\u043E\u0441\u0442"} \u0434\u0430 \u0441\u044A\u0434\u044A\u0440\u0436\u0430 ${_}${i.maximum.toString()} ${c.unit??"\u0435\u043B\u0435\u043C\u0435\u043D\u0442\u0430"}`;return`\u0422\u0432\u044A\u0440\u0434\u0435 \u0433\u043E\u043B\u044F\u043C\u043E: \u043E\u0447\u0430\u043A\u0432\u0430 \u0441\u0435 ${i.origin??"\u0441\u0442\u043E\u0439\u043D\u043E\u0441\u0442"} \u0434\u0430 \u0431\u044A\u0434\u0435 ${_}${i.maximum.toString()}`}case"too_small":{let _=i.inclusive?">=":">",c=n(i.origin);if(c)return`\u0422\u0432\u044A\u0440\u0434\u0435 \u043C\u0430\u043B\u043A\u043E: \u043E\u0447\u0430\u043A\u0432\u0430 \u0441\u0435 ${i.origin} \u0434\u0430 \u0441\u044A\u0434\u044A\u0440\u0436\u0430 ${_}${i.minimum.toString()} ${c.unit}`;return`\u0422\u0432\u044A\u0440\u0434\u0435 \u043C\u0430\u043B\u043A\u043E: \u043E\u0447\u0430\u043A\u0432\u0430 \u0441\u0435 ${i.origin} \u0434\u0430 \u0431\u044A\u0434\u0435 ${_}${i.minimum.toString()}`}case"invalid_format":{let _=i;if(_.format==="starts_with")return`\u041D\u0435\u0432\u0430\u043B\u0438\u0434\u0435\u043D \u043D\u0438\u0437: \u0442\u0440\u044F\u0431\u0432\u0430 \u0434\u0430 \u0437\u0430\u043F\u043E\u0447\u0432\u0430 \u0441 "${_.prefix}"`;if(_.format==="ends_with")return`\u041D\u0435\u0432\u0430\u043B\u0438\u0434\u0435\u043D \u043D\u0438\u0437: \u0442\u0440\u044F\u0431\u0432\u0430 \u0434\u0430 \u0437\u0430\u0432\u044A\u0440\u0448\u0432\u0430 \u0441 "${_.suffix}"`;if(_.format==="includes")return`\u041D\u0435\u0432\u0430\u043B\u0438\u0434\u0435\u043D \u043D\u0438\u0437: \u0442\u0440\u044F\u0431\u0432\u0430 \u0434\u0430 \u0432\u043A\u043B\u044E\u0447\u0432\u0430 "${_.includes}"`;if(_.format==="regex")return`\u041D\u0435\u0432\u0430\u043B\u0438\u0434\u0435\u043D \u043D\u0438\u0437: \u0442\u0440\u044F\u0431\u0432\u0430 \u0434\u0430 \u0441\u044A\u0432\u043F\u0430\u0434\u0430 \u0441 ${_.pattern}`;let c="\u041D\u0435\u0432\u0430\u043B\u0438\u0434\u0435\u043D";if(_.format==="emoji")c="\u041D\u0435\u0432\u0430\u043B\u0438\u0434\u043D\u043E";if(_.format==="datetime")c="\u041D\u0435\u0432\u0430\u043B\u0438\u0434\u043D\u043E";if(_.format==="date")c="\u041D\u0435\u0432\u0430\u043B\u0438\u0434\u043D\u0430";if(_.format==="time")c="\u041D\u0435\u0432\u0430\u043B\u0438\u0434\u043D\u043E";if(_.format==="duration")c="\u041D\u0435\u0432\u0430\u043B\u0438\u0434\u043D\u0430";return`${c} ${t[_.format]??i.format}`}case"not_multiple_of":return`\u041D\u0435\u0432\u0430\u043B\u0438\u0434\u043D\u043E \u0447\u0438\u0441\u043B\u043E: \u0442\u0440\u044F\u0431\u0432\u0430 \u0434\u0430 \u0431\u044A\u0434\u0435 \u043A\u0440\u0430\u0442\u043D\u043E \u043D\u0430 ${i.divisor}`;case"unrecognized_keys":return`\u041D\u0435\u0440\u0430\u0437\u043F\u043E\u0437\u043D\u0430\u0442${i.keys.length>1?"\u0438":""} \u043A\u043B\u044E\u0447${i.keys.length>1?"\u043E\u0432\u0435":""}: ${h(i.keys,", ")}`;case"invalid_key":return`\u041D\u0435\u0432\u0430\u043B\u0438\u0434\u0435\u043D \u043A\u043B\u044E\u0447 \u0432 ${i.origin}`;case"invalid_union":return"\u041D\u0435\u0432\u0430\u043B\u0438\u0434\u0435\u043D \u0432\u0445\u043E\u0434";case"invalid_element":return`\u041D\u0435\u0432\u0430\u043B\u0438\u0434\u043D\u0430 \u0441\u0442\u043E\u0439\u043D\u043E\u0441\u0442 \u0432 ${i.origin}`;default:return"\u041D\u0435\u0432\u0430\u043B\u0438\u0434\u0435\u043D \u0432\u0445\u043E\u0434"}}};var AO=N(()=>{G()});function Rb(){return{localeError:HS()}}var HS=()=>{let r={string:{unit:"car\xE0cters",verb:"contenir"},file:{unit:"bytes",verb:"contenir"},array:{unit:"elements",verb:"contenir"},set:{unit:"elements",verb:"contenir"}};function n(i){return r[i]??null}let t={regex:"entrada",email:"adre\xE7a electr\xF2nica",url:"URL",emoji:"emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"data i hora ISO",date:"data ISO",time:"hora ISO",duration:"durada ISO",ipv4:"adre\xE7a IPv4",ipv6:"adre\xE7a IPv6",cidrv4:"rang IPv4",cidrv6:"rang IPv6",base64:"cadena codificada en base64",base64url:"cadena codificada en base64url",json_string:"cadena JSON",e164:"n\xFAmero E.164",jwt:"JWT",template_literal:"entrada"},e={nan:"NaN"};return(i)=>{switch(i.code){case"invalid_type":{let _=e[i.expected]??i.expected,c=S(i.input),u=e[c]??c;if(/^[A-Z]/.test(i.expected))return`Tipus inv\xE0lid: s'esperava instanceof ${i.expected}, s'ha rebut ${u}`;return`Tipus inv\xE0lid: s'esperava ${_}, s'ha rebut ${u}`}case"invalid_value":if(i.values.length===1)return`Valor inv\xE0lid: s'esperava ${z(i.values[0])}`;return`Opci\xF3 inv\xE0lida: s'esperava una de ${h(i.values," o ")}`;case"too_big":{let _=i.inclusive?"com a m\xE0xim":"menys de",c=n(i.origin);if(c)return`Massa gran: s'esperava que ${i.origin??"el valor"} contingu\xE9s ${_} ${i.maximum.toString()} ${c.unit??"elements"}`;return`Massa gran: s'esperava que ${i.origin??"el valor"} fos ${_} ${i.maximum.toString()}`}case"too_small":{let _=i.inclusive?"com a m\xEDnim":"m\xE9s de",c=n(i.origin);if(c)return`Massa petit: s'esperava que ${i.origin} contingu\xE9s ${_} ${i.minimum.toString()} ${c.unit}`;return`Massa petit: s'esperava que ${i.origin} fos ${_} ${i.minimum.toString()}`}case"invalid_format":{let _=i;if(_.format==="starts_with")return`Format inv\xE0lid: ha de comen\xE7ar amb "${_.prefix}"`;if(_.format==="ends_with")return`Format inv\xE0lid: ha d'acabar amb "${_.suffix}"`;if(_.format==="includes")return`Format inv\xE0lid: ha d'incloure "${_.includes}"`;if(_.format==="regex")return`Format inv\xE0lid: ha de coincidir amb el patr\xF3 ${_.pattern}`;return`Format inv\xE0lid per a ${t[_.format]??i.format}`}case"not_multiple_of":return`N\xFAmero inv\xE0lid: ha de ser m\xFAltiple de ${i.divisor}`;case"unrecognized_keys":return`Clau${i.keys.length>1?"s":""} no reconeguda${i.keys.length>1?"s":""}: ${h(i.keys,", ")}`;case"invalid_key":return`Clau inv\xE0lida a ${i.origin}`;case"invalid_union":return"Entrada inv\xE0lida";case"invalid_element":return`Element inv\xE0lid a ${i.origin}`;default:return"Entrada inv\xE0lida"}}};var MO=N(()=>{G()});function Db(){return{localeError:BS()}}var BS=()=>{let r={string:{unit:"znak\u016F",verb:"m\xEDt"},file:{unit:"bajt\u016F",verb:"m\xEDt"},array:{unit:"prvk\u016F",verb:"m\xEDt"},set:{unit:"prvk\u016F",verb:"m\xEDt"}};function n(i){return r[i]??null}let t={regex:"regul\xE1rn\xED v\xFDraz",email:"e-mailov\xE1 adresa",url:"URL",emoji:"emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"datum a \u010Das ve form\xE1tu ISO",date:"datum ve form\xE1tu ISO",time:"\u010Das ve form\xE1tu ISO",duration:"doba trv\xE1n\xED ISO",ipv4:"IPv4 adresa",ipv6:"IPv6 adresa",cidrv4:"rozsah IPv4",cidrv6:"rozsah IPv6",base64:"\u0159et\u011Bzec zak\xF3dovan\xFD ve form\xE1tu base64",base64url:"\u0159et\u011Bzec zak\xF3dovan\xFD ve form\xE1tu base64url",json_string:"\u0159et\u011Bzec ve form\xE1tu JSON",e164:"\u010D\xEDslo E.164",jwt:"JWT",template_literal:"vstup"},e={nan:"NaN",number:"\u010D\xEDslo",string:"\u0159et\u011Bzec",function:"funkce",array:"pole"};return(i)=>{switch(i.code){case"invalid_type":{let _=e[i.expected]??i.expected,c=S(i.input),u=e[c]??c;if(/^[A-Z]/.test(i.expected))return`Neplatn\xFD vstup: o\u010Dek\xE1v\xE1no instanceof ${i.expected}, obdr\u017Eeno ${u}`;return`Neplatn\xFD vstup: o\u010Dek\xE1v\xE1no ${_}, obdr\u017Eeno ${u}`}case"invalid_value":if(i.values.length===1)return`Neplatn\xFD vstup: o\u010Dek\xE1v\xE1no ${z(i.values[0])}`;return`Neplatn\xE1 mo\u017Enost: o\u010Dek\xE1v\xE1na jedna z hodnot ${h(i.values,"|")}`;case"too_big":{let _=i.inclusive?"<=":"<",c=n(i.origin);if(c)return`Hodnota je p\u0159\xEDli\u0161 velk\xE1: ${i.origin??"hodnota"} mus\xED m\xEDt ${_}${i.maximum.toString()} ${c.unit??"prvk\u016F"}`;return`Hodnota je p\u0159\xEDli\u0161 velk\xE1: ${i.origin??"hodnota"} mus\xED b\xFDt ${_}${i.maximum.toString()}`}case"too_small":{let _=i.inclusive?">=":">",c=n(i.origin);if(c)return`Hodnota je p\u0159\xEDli\u0161 mal\xE1: ${i.origin??"hodnota"} mus\xED m\xEDt ${_}${i.minimum.toString()} ${c.unit??"prvk\u016F"}`;return`Hodnota je p\u0159\xEDli\u0161 mal\xE1: ${i.origin??"hodnota"} mus\xED b\xFDt ${_}${i.minimum.toString()}`}case"invalid_format":{let _=i;if(_.format==="starts_with")return`Neplatn\xFD \u0159et\u011Bzec: mus\xED za\u010D\xEDnat na "${_.prefix}"`;if(_.format==="ends_with")return`Neplatn\xFD \u0159et\u011Bzec: mus\xED kon\u010Dit na "${_.suffix}"`;if(_.format==="includes")return`Neplatn\xFD \u0159et\u011Bzec: mus\xED obsahovat "${_.includes}"`;if(_.format==="regex")return`Neplatn\xFD \u0159et\u011Bzec: mus\xED odpov\xEDdat vzoru ${_.pattern}`;return`Neplatn\xFD form\xE1t ${t[_.format]??i.format}`}case"not_multiple_of":return`Neplatn\xE9 \u010D\xEDslo: mus\xED b\xFDt n\xE1sobkem ${i.divisor}`;case"unrecognized_keys":return`Nezn\xE1m\xE9 kl\xED\u010De: ${h(i.keys,", ")}`;case"invalid_key":return`Neplatn\xFD kl\xED\u010D v ${i.origin}`;case"invalid_union":return"Neplatn\xFD vstup";case"invalid_element":return`Neplatn\xE1 hodnota v ${i.origin}`;default:return"Neplatn\xFD vstup"}}};var PO=N(()=>{G()});function yb(){return{localeError:QS()}}var QS=()=>{let r={string:{unit:"tegn",verb:"havde"},file:{unit:"bytes",verb:"havde"},array:{unit:"elementer",verb:"indeholdt"},set:{unit:"elementer",verb:"indeholdt"}};function n(i){return r[i]??null}let t={regex:"input",email:"e-mailadresse",url:"URL",emoji:"emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ISO dato- og klokkesl\xE6t",date:"ISO-dato",time:"ISO-klokkesl\xE6t",duration:"ISO-varighed",ipv4:"IPv4-omr\xE5de",ipv6:"IPv6-omr\xE5de",cidrv4:"IPv4-spektrum",cidrv6:"IPv6-spektrum",base64:"base64-kodet streng",base64url:"base64url-kodet streng",json_string:"JSON-streng",e164:"E.164-nummer",jwt:"JWT",template_literal:"input"},e={nan:"NaN",string:"streng",number:"tal",boolean:"boolean",array:"liste",object:"objekt",set:"s\xE6t",file:"fil"};return(i)=>{switch(i.code){case"invalid_type":{let _=e[i.expected]??i.expected,c=S(i.input),u=e[c]??c;if(/^[A-Z]/.test(i.expected))return`Ugyldigt input: forventede instanceof ${i.expected}, fik ${u}`;return`Ugyldigt input: forventede ${_}, fik ${u}`}case"invalid_value":if(i.values.length===1)return`Ugyldig v\xE6rdi: forventede ${z(i.values[0])}`;return`Ugyldigt valg: forventede en af f\xF8lgende ${h(i.values,"|")}`;case"too_big":{let _=i.inclusive?"<=":"<",c=n(i.origin),u=e[i.origin]??i.origin;if(c)return`For stor: forventede ${u??"value"} ${c.verb} ${_} ${i.maximum.toString()} ${c.unit??"elementer"}`;return`For stor: forventede ${u??"value"} havde ${_} ${i.maximum.toString()}`}case"too_small":{let _=i.inclusive?">=":">",c=n(i.origin),u=e[i.origin]??i.origin;if(c)return`For lille: forventede ${u} ${c.verb} ${_} ${i.minimum.toString()} ${c.unit}`;return`For lille: forventede ${u} havde ${_} ${i.minimum.toString()}`}case"invalid_format":{let _=i;if(_.format==="starts_with")return`Ugyldig streng: skal starte med "${_.prefix}"`;if(_.format==="ends_with")return`Ugyldig streng: skal ende med "${_.suffix}"`;if(_.format==="includes")return`Ugyldig streng: skal indeholde "${_.includes}"`;if(_.format==="regex")return`Ugyldig streng: skal matche m\xF8nsteret ${_.pattern}`;return`Ugyldig ${t[_.format]??i.format}`}case"not_multiple_of":return`Ugyldigt tal: skal v\xE6re deleligt med ${i.divisor}`;case"unrecognized_keys":return`${i.keys.length>1?"Ukendte n\xF8gler":"Ukendt n\xF8gle"}: ${h(i.keys,", ")}`;case"invalid_key":return`Ugyldig n\xF8gle i ${i.origin}`;case"invalid_union":return"Ugyldigt input: matcher ingen af de tilladte typer";case"invalid_element":return`Ugyldig v\xE6rdi i ${i.origin}`;default:return"Ugyldigt input"}}};var kO=N(()=>{G()});function qb(){return{localeError:KS()}}var KS=()=>{let r={string:{unit:"Zeichen",verb:"zu haben"},file:{unit:"Bytes",verb:"zu haben"},array:{unit:"Elemente",verb:"zu haben"},set:{unit:"Elemente",verb:"zu haben"}};function n(i){return r[i]??null}let t={regex:"Eingabe",email:"E-Mail-Adresse",url:"URL",emoji:"Emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ISO-Datum und -Uhrzeit",date:"ISO-Datum",time:"ISO-Uhrzeit",duration:"ISO-Dauer",ipv4:"IPv4-Adresse",ipv6:"IPv6-Adresse",cidrv4:"IPv4-Bereich",cidrv6:"IPv6-Bereich",base64:"Base64-codierter String",base64url:"Base64-URL-codierter String",json_string:"JSON-String",e164:"E.164-Nummer",jwt:"JWT",template_literal:"Eingabe"},e={nan:"NaN",number:"Zahl",array:"Array"};return(i)=>{switch(i.code){case"invalid_type":{let _=e[i.expected]??i.expected,c=S(i.input),u=e[c]??c;if(/^[A-Z]/.test(i.expected))return`Ung\xFCltige Eingabe: erwartet instanceof ${i.expected}, erhalten ${u}`;return`Ung\xFCltige Eingabe: erwartet ${_}, erhalten ${u}`}case"invalid_value":if(i.values.length===1)return`Ung\xFCltige Eingabe: erwartet ${z(i.values[0])}`;return`Ung\xFCltige Option: erwartet eine von ${h(i.values,"|")}`;case"too_big":{let _=i.inclusive?"<=":"<",c=n(i.origin);if(c)return`Zu gro\xDF: erwartet, dass ${i.origin??"Wert"} ${_}${i.maximum.toString()} ${c.unit??"Elemente"} hat`;return`Zu gro\xDF: erwartet, dass ${i.origin??"Wert"} ${_}${i.maximum.toString()} ist`}case"too_small":{let _=i.inclusive?">=":">",c=n(i.origin);if(c)return`Zu klein: erwartet, dass ${i.origin} ${_}${i.minimum.toString()} ${c.unit} hat`;return`Zu klein: erwartet, dass ${i.origin} ${_}${i.minimum.toString()} ist`}case"invalid_format":{let _=i;if(_.format==="starts_with")return`Ung\xFCltiger String: muss mit "${_.prefix}" beginnen`;if(_.format==="ends_with")return`Ung\xFCltiger String: muss mit "${_.suffix}" enden`;if(_.format==="includes")return`Ung\xFCltiger String: muss "${_.includes}" enthalten`;if(_.format==="regex")return`Ung\xFCltiger String: muss dem Muster ${_.pattern} entsprechen`;return`Ung\xFCltig: ${t[_.format]??i.format}`}case"not_multiple_of":return`Ung\xFCltige Zahl: muss ein Vielfaches von ${i.divisor} sein`;case"unrecognized_keys":return`${i.keys.length>1?"Unbekannte Schl\xFCssel":"Unbekannter Schl\xFCssel"}: ${h(i.keys,", ")}`;case"invalid_key":return`Ung\xFCltiger Schl\xFCssel in ${i.origin}`;case"invalid_union":return"Ung\xFCltige Eingabe";case"invalid_element":return`Ung\xFCltiger Wert in ${i.origin}`;default:return"Ung\xFCltige Eingabe"}}};var XO=N(()=>{G()});function O_(){return{localeError:aS()}}var aS=()=>{let r={string:{unit:"characters",verb:"to have"},file:{unit:"bytes",verb:"to have"},array:{unit:"items",verb:"to have"},set:{unit:"items",verb:"to have"},map:{unit:"entries",verb:"to have"}};function n(i){return r[i]??null}let t={regex:"input",email:"email address",url:"URL",emoji:"emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ISO datetime",date:"ISO date",time:"ISO time",duration:"ISO duration",ipv4:"IPv4 address",ipv6:"IPv6 address",mac:"MAC address",cidrv4:"IPv4 range",cidrv6:"IPv6 range",base64:"base64-encoded string",base64url:"base64url-encoded string",json_string:"JSON string",e164:"E.164 number",jwt:"JWT",template_literal:"input"},e={nan:"NaN"};return(i)=>{switch(i.code){case"invalid_type":{let _=e[i.expected]??i.expected,c=S(i.input),u=e[c]??c;return`Invalid input: expected ${_}, received ${u}`}case"invalid_value":if(i.values.length===1)return`Invalid input: expected ${z(i.values[0])}`;return`Invalid option: expected one of ${h(i.values,"|")}`;case"too_big":{let _=i.inclusive?"<=":"<",c=n(i.origin);if(c)return`Too big: expected ${i.origin??"value"} to have ${_}${i.maximum.toString()} ${c.unit??"elements"}`;return`Too big: expected ${i.origin??"value"} to be ${_}${i.maximum.toString()}`}case"too_small":{let _=i.inclusive?">=":">",c=n(i.origin);if(c)return`Too small: expected ${i.origin} to have ${_}${i.minimum.toString()} ${c.unit}`;return`Too small: expected ${i.origin} to be ${_}${i.minimum.toString()}`}case"invalid_format":{let _=i;if(_.format==="starts_with")return`Invalid string: must start with "${_.prefix}"`;if(_.format==="ends_with")return`Invalid string: must end with "${_.suffix}"`;if(_.format==="includes")return`Invalid string: must include "${_.includes}"`;if(_.format==="regex")return`Invalid string: must match pattern ${_.pattern}`;return`Invalid ${t[_.format]??i.format}`}case"not_multiple_of":return`Invalid number: must be a multiple of ${i.divisor}`;case"unrecognized_keys":return`Unrecognized key${i.keys.length>1?"s":""}: ${h(i.keys,", ")}`;case"invalid_key":return`Invalid key in ${i.origin}`;case"invalid_union":return"Invalid input";case"invalid_element":return`Invalid value in ${i.origin}`;default:return"Invalid input"}}};var Tb=N(()=>{G()});function Nb(){return{localeError:ZS()}}var ZS=()=>{let r={string:{unit:"karaktrojn",verb:"havi"},file:{unit:"bajtojn",verb:"havi"},array:{unit:"elementojn",verb:"havi"},set:{unit:"elementojn",verb:"havi"}};function n(i){return r[i]??null}let t={regex:"enigo",email:"retadreso",url:"URL",emoji:"emo\u011Dio",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ISO-datotempo",date:"ISO-dato",time:"ISO-tempo",duration:"ISO-da\u016Dro",ipv4:"IPv4-adreso",ipv6:"IPv6-adreso",cidrv4:"IPv4-rango",cidrv6:"IPv6-rango",base64:"64-ume kodita karaktraro",base64url:"URL-64-ume kodita karaktraro",json_string:"JSON-karaktraro",e164:"E.164-nombro",jwt:"JWT",template_literal:"enigo"},e={nan:"NaN",number:"nombro",array:"tabelo",null:"senvalora"};return(i)=>{switch(i.code){case"invalid_type":{let _=e[i.expected]??i.expected,c=S(i.input),u=e[c]??c;if(/^[A-Z]/.test(i.expected))return`Nevalida enigo: atendi\u011Dis instanceof ${i.expected}, ricevi\u011Dis ${u}`;return`Nevalida enigo: atendi\u011Dis ${_}, ricevi\u011Dis ${u}`}case"invalid_value":if(i.values.length===1)return`Nevalida enigo: atendi\u011Dis ${z(i.values[0])}`;return`Nevalida opcio: atendi\u011Dis unu el ${h(i.values,"|")}`;case"too_big":{let _=i.inclusive?"<=":"<",c=n(i.origin);if(c)return`Tro granda: atendi\u011Dis ke ${i.origin??"valoro"} havu ${_}${i.maximum.toString()} ${c.unit??"elementojn"}`;return`Tro granda: atendi\u011Dis ke ${i.origin??"valoro"} havu ${_}${i.maximum.toString()}`}case"too_small":{let _=i.inclusive?">=":">",c=n(i.origin);if(c)return`Tro malgranda: atendi\u011Dis ke ${i.origin} havu ${_}${i.minimum.toString()} ${c.unit}`;return`Tro malgranda: atendi\u011Dis ke ${i.origin} estu ${_}${i.minimum.toString()}`}case"invalid_format":{let _=i;if(_.format==="starts_with")return`Nevalida karaktraro: devas komenci\u011Di per "${_.prefix}"`;if(_.format==="ends_with")return`Nevalida karaktraro: devas fini\u011Di per "${_.suffix}"`;if(_.format==="includes")return`Nevalida karaktraro: devas inkluzivi "${_.includes}"`;if(_.format==="regex")return`Nevalida karaktraro: devas kongrui kun la modelo ${_.pattern}`;return`Nevalida ${t[_.format]??i.format}`}case"not_multiple_of":return`Nevalida nombro: devas esti oblo de ${i.divisor}`;case"unrecognized_keys":return`Nekonata${i.keys.length>1?"j":""} \u015Dlosilo${i.keys.length>1?"j":""}: ${h(i.keys,", ")}`;case"invalid_key":return`Nevalida \u015Dlosilo en ${i.origin}`;case"invalid_union":return"Nevalida enigo";case"invalid_element":return`Nevalida valoro en ${i.origin}`;default:return"Nevalida enigo"}}};var GO=N(()=>{G()});function Lb(){return{localeError:CS()}}var CS=()=>{let r={string:{unit:"caracteres",verb:"tener"},file:{unit:"bytes",verb:"tener"},array:{unit:"elementos",verb:"tener"},set:{unit:"elementos",verb:"tener"}};function n(i){return r[i]??null}let t={regex:"entrada",email:"direcci\xF3n de correo electr\xF3nico",url:"URL",emoji:"emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"fecha y hora ISO",date:"fecha ISO",time:"hora ISO",duration:"duraci\xF3n ISO",ipv4:"direcci\xF3n IPv4",ipv6:"direcci\xF3n IPv6",cidrv4:"rango IPv4",cidrv6:"rango IPv6",base64:"cadena codificada en base64",base64url:"URL codificada en base64",json_string:"cadena JSON",e164:"n\xFAmero E.164",jwt:"JWT",template_literal:"entrada"},e={nan:"NaN",string:"texto",number:"n\xFAmero",boolean:"booleano",array:"arreglo",object:"objeto",set:"conjunto",file:"archivo",date:"fecha",bigint:"n\xFAmero grande",symbol:"s\xEDmbolo",undefined:"indefinido",null:"nulo",function:"funci\xF3n",map:"mapa",record:"registro",tuple:"tupla",enum:"enumeraci\xF3n",union:"uni\xF3n",literal:"literal",promise:"promesa",void:"vac\xEDo",never:"nunca",unknown:"desconocido",any:"cualquiera"};return(i)=>{switch(i.code){case"invalid_type":{let _=e[i.expected]??i.expected,c=S(i.input),u=e[c]??c;if(/^[A-Z]/.test(i.expected))return`Entrada inv\xE1lida: se esperaba instanceof ${i.expected}, recibido ${u}`;return`Entrada inv\xE1lida: se esperaba ${_}, recibido ${u}`}case"invalid_value":if(i.values.length===1)return`Entrada inv\xE1lida: se esperaba ${z(i.values[0])}`;return`Opci\xF3n inv\xE1lida: se esperaba una de ${h(i.values,"|")}`;case"too_big":{let _=i.inclusive?"<=":"<",c=n(i.origin),u=e[i.origin]??i.origin;if(c)return`Demasiado grande: se esperaba que ${u??"valor"} tuviera ${_}${i.maximum.toString()} ${c.unit??"elementos"}`;return`Demasiado grande: se esperaba que ${u??"valor"} fuera ${_}${i.maximum.toString()}`}case"too_small":{let _=i.inclusive?">=":">",c=n(i.origin),u=e[i.origin]??i.origin;if(c)return`Demasiado peque\xF1o: se esperaba que ${u} tuviera ${_}${i.minimum.toString()} ${c.unit}`;return`Demasiado peque\xF1o: se esperaba que ${u} fuera ${_}${i.minimum.toString()}`}case"invalid_format":{let _=i;if(_.format==="starts_with")return`Cadena inv\xE1lida: debe comenzar con "${_.prefix}"`;if(_.format==="ends_with")return`Cadena inv\xE1lida: debe terminar en "${_.suffix}"`;if(_.format==="includes")return`Cadena inv\xE1lida: debe incluir "${_.includes}"`;if(_.format==="regex")return`Cadena inv\xE1lida: debe coincidir con el patr\xF3n ${_.pattern}`;return`Inv\xE1lido ${t[_.format]??i.format}`}case"not_multiple_of":return`N\xFAmero inv\xE1lido: debe ser m\xFAltiplo de ${i.divisor}`;case"unrecognized_keys":return`Llave${i.keys.length>1?"s":""} desconocida${i.keys.length>1?"s":""}: ${h(i.keys,", ")}`;case"invalid_key":return`Llave inv\xE1lida en ${e[i.origin]??i.origin}`;case"invalid_union":return"Entrada inv\xE1lida";case"invalid_element":return`Valor inv\xE1lido en ${e[i.origin]??i.origin}`;default:return"Entrada inv\xE1lida"}}};var VO=N(()=>{G()});function zb(){return{localeError:xS()}}var xS=()=>{let r={string:{unit:"\u06A9\u0627\u0631\u0627\u06A9\u062A\u0631",verb:"\u062F\u0627\u0634\u062A\u0647 \u0628\u0627\u0634\u062F"},file:{unit:"\u0628\u0627\u06CC\u062A",verb:"\u062F\u0627\u0634\u062A\u0647 \u0628\u0627\u0634\u062F"},array:{unit:"\u0622\u06CC\u062A\u0645",verb:"\u062F\u0627\u0634\u062A\u0647 \u0628\u0627\u0634\u062F"},set:{unit:"\u0622\u06CC\u062A\u0645",verb:"\u062F\u0627\u0634\u062A\u0647 \u0628\u0627\u0634\u062F"}};function n(i){return r[i]??null}let t={regex:"\u0648\u0631\u0648\u062F\u06CC",email:"\u0622\u062F\u0631\u0633 \u0627\u06CC\u0645\u06CC\u0644",url:"URL",emoji:"\u0627\u06CC\u0645\u0648\u062C\u06CC",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"\u062A\u0627\u0631\u06CC\u062E \u0648 \u0632\u0645\u0627\u0646 \u0627\u06CC\u0632\u0648",date:"\u062A\u0627\u0631\u06CC\u062E \u0627\u06CC\u0632\u0648",time:"\u0632\u0645\u0627\u0646 \u0627\u06CC\u0632\u0648",duration:"\u0645\u062F\u062A \u0632\u0645\u0627\u0646 \u0627\u06CC\u0632\u0648",ipv4:"IPv4 \u0622\u062F\u0631\u0633",ipv6:"IPv6 \u0622\u062F\u0631\u0633",cidrv4:"IPv4 \u062F\u0627\u0645\u0646\u0647",cidrv6:"IPv6 \u062F\u0627\u0645\u0646\u0647",base64:"base64-encoded \u0631\u0634\u062A\u0647",base64url:"base64url-encoded \u0631\u0634\u062A\u0647",json_string:"JSON \u0631\u0634\u062A\u0647",e164:"E.164 \u0639\u062F\u062F",jwt:"JWT",template_literal:"\u0648\u0631\u0648\u062F\u06CC"},e={nan:"NaN",number:"\u0639\u062F\u062F",array:"\u0622\u0631\u0627\u06CC\u0647"};return(i)=>{switch(i.code){case"invalid_type":{let _=e[i.expected]??i.expected,c=S(i.input),u=e[c]??c;if(/^[A-Z]/.test(i.expected))return`\u0648\u0631\u0648\u062F\u06CC \u0646\u0627\u0645\u0639\u062A\u0628\u0631: \u0645\u06CC\u200C\u0628\u0627\u06CC\u0633\u062A instanceof ${i.expected} \u0645\u06CC\u200C\u0628\u0648\u062F\u060C ${u} \u062F\u0631\u06CC\u0627\u0641\u062A \u0634\u062F`;return`\u0648\u0631\u0648\u062F\u06CC \u0646\u0627\u0645\u0639\u062A\u0628\u0631: \u0645\u06CC\u200C\u0628\u0627\u06CC\u0633\u062A ${_} \u0645\u06CC\u200C\u0628\u0648\u062F\u060C ${u} \u062F\u0631\u06CC\u0627\u0641\u062A \u0634\u062F`}case"invalid_value":if(i.values.length===1)return`\u0648\u0631\u0648\u062F\u06CC \u0646\u0627\u0645\u0639\u062A\u0628\u0631: \u0645\u06CC\u200C\u0628\u0627\u06CC\u0633\u062A ${z(i.values[0])} \u0645\u06CC\u200C\u0628\u0648\u062F`;return`\u06AF\u0632\u06CC\u0646\u0647 \u0646\u0627\u0645\u0639\u062A\u0628\u0631: \u0645\u06CC\u200C\u0628\u0627\u06CC\u0633\u062A \u06CC\u06A9\u06CC \u0627\u0632 ${h(i.values,"|")} \u0645\u06CC\u200C\u0628\u0648\u062F`;case"too_big":{let _=i.inclusive?"<=":"<",c=n(i.origin);if(c)return`\u062E\u06CC\u0644\u06CC \u0628\u0632\u0631\u06AF: ${i.origin??"\u0645\u0642\u062F\u0627\u0631"} \u0628\u0627\u06CC\u062F ${_}${i.maximum.toString()} ${c.unit??"\u0639\u0646\u0635\u0631"} \u0628\u0627\u0634\u062F`;return`\u062E\u06CC\u0644\u06CC \u0628\u0632\u0631\u06AF: ${i.origin??"\u0645\u0642\u062F\u0627\u0631"} \u0628\u0627\u06CC\u062F ${_}${i.maximum.toString()} \u0628\u0627\u0634\u062F`}case"too_small":{let _=i.inclusive?">=":">",c=n(i.origin);if(c)return`\u062E\u06CC\u0644\u06CC \u06A9\u0648\u0686\u06A9: ${i.origin} \u0628\u0627\u06CC\u062F ${_}${i.minimum.toString()} ${c.unit} \u0628\u0627\u0634\u062F`;return`\u062E\u06CC\u0644\u06CC \u06A9\u0648\u0686\u06A9: ${i.origin} \u0628\u0627\u06CC\u062F ${_}${i.minimum.toString()} \u0628\u0627\u0634\u062F`}case"invalid_format":{let _=i;if(_.format==="starts_with")return`\u0631\u0634\u062A\u0647 \u0646\u0627\u0645\u0639\u062A\u0628\u0631: \u0628\u0627\u06CC\u062F \u0628\u0627 "${_.prefix}" \u0634\u0631\u0648\u0639 \u0634\u0648\u062F`;if(_.format==="ends_with")return`\u0631\u0634\u062A\u0647 \u0646\u0627\u0645\u0639\u062A\u0628\u0631: \u0628\u0627\u06CC\u062F \u0628\u0627 "${_.suffix}" \u062A\u0645\u0627\u0645 \u0634\u0648\u062F`;if(_.format==="includes")return`\u0631\u0634\u062A\u0647 \u0646\u0627\u0645\u0639\u062A\u0628\u0631: \u0628\u0627\u06CC\u062F \u0634\u0627\u0645\u0644 "${_.includes}" \u0628\u0627\u0634\u062F`;if(_.format==="regex")return`\u0631\u0634\u062A\u0647 \u0646\u0627\u0645\u0639\u062A\u0628\u0631: \u0628\u0627\u06CC\u062F \u0628\u0627 \u0627\u0644\u06AF\u0648\u06CC ${_.pattern} \u0645\u0637\u0627\u0628\u0642\u062A \u062F\u0627\u0634\u062A\u0647 \u0628\u0627\u0634\u062F`;return`${t[_.format]??i.format} \u0646\u0627\u0645\u0639\u062A\u0628\u0631`}case"not_multiple_of":return`\u0639\u062F\u062F \u0646\u0627\u0645\u0639\u062A\u0628\u0631: \u0628\u0627\u06CC\u062F \u0645\u0636\u0631\u0628 ${i.divisor} \u0628\u0627\u0634\u062F`;case"unrecognized_keys":return`\u06A9\u0644\u06CC\u062F${i.keys.length>1?"\u0647\u0627\u06CC":""} \u0646\u0627\u0634\u0646\u0627\u0633: ${h(i.keys,", ")}`;case"invalid_key":return`\u06A9\u0644\u06CC\u062F \u0646\u0627\u0634\u0646\u0627\u0633 \u062F\u0631 ${i.origin}`;case"invalid_union":return"\u0648\u0631\u0648\u062F\u06CC \u0646\u0627\u0645\u0639\u062A\u0628\u0631";case"invalid_element":return`\u0645\u0642\u062F\u0627\u0631 \u0646\u0627\u0645\u0639\u062A\u0628\u0631 \u062F\u0631 ${i.origin}`;default:return"\u0648\u0631\u0648\u062F\u06CC \u0646\u0627\u0645\u0639\u062A\u0628\u0631"}}};var FO=N(()=>{G()});function Sb(){return{localeError:pS()}}var pS=()=>{let r={string:{unit:"merkki\xE4",subject:"merkkijonon"},file:{unit:"tavua",subject:"tiedoston"},array:{unit:"alkiota",subject:"listan"},set:{unit:"alkiota",subject:"joukon"},number:{unit:"",subject:"luvun"},bigint:{unit:"",subject:"suuren kokonaisluvun"},int:{unit:"",subject:"kokonaisluvun"},date:{unit:"",subject:"p\xE4iv\xE4m\xE4\xE4r\xE4n"}};function n(i){return r[i]??null}let t={regex:"s\xE4\xE4nn\xF6llinen lauseke",email:"s\xE4hk\xF6postiosoite",url:"URL-osoite",emoji:"emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ISO-aikaleima",date:"ISO-p\xE4iv\xE4m\xE4\xE4r\xE4",time:"ISO-aika",duration:"ISO-kesto",ipv4:"IPv4-osoite",ipv6:"IPv6-osoite",cidrv4:"IPv4-alue",cidrv6:"IPv6-alue",base64:"base64-koodattu merkkijono",base64url:"base64url-koodattu merkkijono",json_string:"JSON-merkkijono",e164:"E.164-luku",jwt:"JWT",template_literal:"templaattimerkkijono"},e={nan:"NaN"};return(i)=>{switch(i.code){case"invalid_type":{let _=e[i.expected]??i.expected,c=S(i.input),u=e[c]??c;if(/^[A-Z]/.test(i.expected))return`Virheellinen tyyppi: odotettiin instanceof ${i.expected}, oli ${u}`;return`Virheellinen tyyppi: odotettiin ${_}, oli ${u}`}case"invalid_value":if(i.values.length===1)return`Virheellinen sy\xF6te: t\xE4ytyy olla ${z(i.values[0])}`;return`Virheellinen valinta: t\xE4ytyy olla yksi seuraavista: ${h(i.values,"|")}`;case"too_big":{let _=i.inclusive?"<=":"<",c=n(i.origin);if(c)return`Liian suuri: ${c.subject} t\xE4ytyy olla ${_}${i.maximum.toString()} ${c.unit}`.trim();return`Liian suuri: arvon t\xE4ytyy olla ${_}${i.maximum.toString()}`}case"too_small":{let _=i.inclusive?">=":">",c=n(i.origin);if(c)return`Liian pieni: ${c.subject} t\xE4ytyy olla ${_}${i.minimum.toString()} ${c.unit}`.trim();return`Liian pieni: arvon t\xE4ytyy olla ${_}${i.minimum.toString()}`}case"invalid_format":{let _=i;if(_.format==="starts_with")return`Virheellinen sy\xF6te: t\xE4ytyy alkaa "${_.prefix}"`;if(_.format==="ends_with")return`Virheellinen sy\xF6te: t\xE4ytyy loppua "${_.suffix}"`;if(_.format==="includes")return`Virheellinen sy\xF6te: t\xE4ytyy sis\xE4lt\xE4\xE4 "${_.includes}"`;if(_.format==="regex")return`Virheellinen sy\xF6te: t\xE4ytyy vastata s\xE4\xE4nn\xF6llist\xE4 lauseketta ${_.pattern}`;return`Virheellinen ${t[_.format]??i.format}`}case"not_multiple_of":return`Virheellinen luku: t\xE4ytyy olla luvun ${i.divisor} monikerta`;case"unrecognized_keys":return`${i.keys.length>1?"Tuntemattomat avaimet":"Tuntematon avain"}: ${h(i.keys,", ")}`;case"invalid_key":return"Virheellinen avain tietueessa";case"invalid_union":return"Virheellinen unioni";case"invalid_element":return"Virheellinen arvo joukossa";default:return"Virheellinen sy\xF6te"}}};var lO=N(()=>{G()});function Wb(){return{localeError:sS()}}var sS=()=>{let r={string:{unit:"caract\xE8res",verb:"avoir"},file:{unit:"octets",verb:"avoir"},array:{unit:"\xE9l\xE9ments",verb:"avoir"},set:{unit:"\xE9l\xE9ments",verb:"avoir"}};function n(i){return r[i]??null}let t={regex:"entr\xE9e",email:"adresse e-mail",url:"URL",emoji:"emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"date et heure ISO",date:"date ISO",time:"heure ISO",duration:"dur\xE9e ISO",ipv4:"adresse IPv4",ipv6:"adresse IPv6",cidrv4:"plage IPv4",cidrv6:"plage IPv6",base64:"cha\xEEne encod\xE9e en base64",base64url:"cha\xEEne encod\xE9e en base64url",json_string:"cha\xEEne JSON",e164:"num\xE9ro E.164",jwt:"JWT",template_literal:"entr\xE9e"},e={nan:"NaN",number:"nombre",array:"tableau"};return(i)=>{switch(i.code){case"invalid_type":{let _=e[i.expected]??i.expected,c=S(i.input),u=e[c]??c;if(/^[A-Z]/.test(i.expected))return`Entr\xE9e invalide : instanceof ${i.expected} attendu, ${u} re\xE7u`;return`Entr\xE9e invalide : ${_} attendu, ${u} re\xE7u`}case"invalid_value":if(i.values.length===1)return`Entr\xE9e invalide : ${z(i.values[0])} attendu`;return`Option invalide : une valeur parmi ${h(i.values,"|")} attendue`;case"too_big":{let _=i.inclusive?"<=":"<",c=n(i.origin);if(c)return`Trop grand : ${i.origin??"valeur"} doit ${c.verb} ${_}${i.maximum.toString()} ${c.unit??"\xE9l\xE9ment(s)"}`;return`Trop grand : ${i.origin??"valeur"} doit \xEAtre ${_}${i.maximum.toString()}`}case"too_small":{let _=i.inclusive?">=":">",c=n(i.origin);if(c)return`Trop petit : ${i.origin} doit ${c.verb} ${_}${i.minimum.toString()} ${c.unit}`;return`Trop petit : ${i.origin} doit \xEAtre ${_}${i.minimum.toString()}`}case"invalid_format":{let _=i;if(_.format==="starts_with")return`Cha\xEEne invalide : doit commencer par "${_.prefix}"`;if(_.format==="ends_with")return`Cha\xEEne invalide : doit se terminer par "${_.suffix}"`;if(_.format==="includes")return`Cha\xEEne invalide : doit inclure "${_.includes}"`;if(_.format==="regex")return`Cha\xEEne invalide : doit correspondre au mod\xE8le ${_.pattern}`;return`${t[_.format]??i.format} invalide`}case"not_multiple_of":return`Nombre invalide : doit \xEAtre un multiple de ${i.divisor}`;case"unrecognized_keys":return`Cl\xE9${i.keys.length>1?"s":""} non reconnue${i.keys.length>1?"s":""} : ${h(i.keys,", ")}`;case"invalid_key":return`Cl\xE9 invalide dans ${i.origin}`;case"invalid_union":return"Entr\xE9e invalide";case"invalid_element":return`Valeur invalide dans ${i.origin}`;default:return"Entr\xE9e invalide"}}};var vO=N(()=>{G()});function Eb(){return{localeError:rW()}}var rW=()=>{let r={string:{unit:"caract\xE8res",verb:"avoir"},file:{unit:"octets",verb:"avoir"},array:{unit:"\xE9l\xE9ments",verb:"avoir"},set:{unit:"\xE9l\xE9ments",verb:"avoir"}};function n(i){return r[i]??null}let t={regex:"entr\xE9e",email:"adresse courriel",url:"URL",emoji:"emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"date-heure ISO",date:"date ISO",time:"heure ISO",duration:"dur\xE9e ISO",ipv4:"adresse IPv4",ipv6:"adresse IPv6",cidrv4:"plage IPv4",cidrv6:"plage IPv6",base64:"cha\xEEne encod\xE9e en base64",base64url:"cha\xEEne encod\xE9e en base64url",json_string:"cha\xEEne JSON",e164:"num\xE9ro E.164",jwt:"JWT",template_literal:"entr\xE9e"},e={nan:"NaN"};return(i)=>{switch(i.code){case"invalid_type":{let _=e[i.expected]??i.expected,c=S(i.input),u=e[c]??c;if(/^[A-Z]/.test(i.expected))return`Entr\xE9e invalide : attendu instanceof ${i.expected}, re\xE7u ${u}`;return`Entr\xE9e invalide : attendu ${_}, re\xE7u ${u}`}case"invalid_value":if(i.values.length===1)return`Entr\xE9e invalide : attendu ${z(i.values[0])}`;return`Option invalide : attendu l'une des valeurs suivantes ${h(i.values,"|")}`;case"too_big":{let _=i.inclusive?"\u2264":"<",c=n(i.origin);if(c)return`Trop grand : attendu que ${i.origin??"la valeur"} ait ${_}${i.maximum.toString()} ${c.unit}`;return`Trop grand : attendu que ${i.origin??"la valeur"} soit ${_}${i.maximum.toString()}`}case"too_small":{let _=i.inclusive?"\u2265":">",c=n(i.origin);if(c)return`Trop petit : attendu que ${i.origin} ait ${_}${i.minimum.toString()} ${c.unit}`;return`Trop petit : attendu que ${i.origin} soit ${_}${i.minimum.toString()}`}case"invalid_format":{let _=i;if(_.format==="starts_with")return`Cha\xEEne invalide : doit commencer par "${_.prefix}"`;if(_.format==="ends_with")return`Cha\xEEne invalide : doit se terminer par "${_.suffix}"`;if(_.format==="includes")return`Cha\xEEne invalide : doit inclure "${_.includes}"`;if(_.format==="regex")return`Cha\xEEne invalide : doit correspondre au motif ${_.pattern}`;return`${t[_.format]??i.format} invalide`}case"not_multiple_of":return`Nombre invalide : doit \xEAtre un multiple de ${i.divisor}`;case"unrecognized_keys":return`Cl\xE9${i.keys.length>1?"s":""} non reconnue${i.keys.length>1?"s":""} : ${h(i.keys,", ")}`;case"invalid_key":return`Cl\xE9 invalide dans ${i.origin}`;case"invalid_union":return"Entr\xE9e invalide";case"invalid_element":return`Valeur invalide dans ${i.origin}`;default:return"Entr\xE9e invalide"}}};var YO=N(()=>{G()});function jb(){return{localeError:nW()}}var nW=()=>{let r={string:{label:"\u05DE\u05D7\u05E8\u05D5\u05D6\u05EA",gender:"f"},number:{label:"\u05DE\u05E1\u05E4\u05E8",gender:"m"},boolean:{label:"\u05E2\u05E8\u05DA \u05D1\u05D5\u05DC\u05D9\u05D0\u05E0\u05D9",gender:"m"},bigint:{label:"BigInt",gender:"m"},date:{label:"\u05EA\u05D0\u05E8\u05D9\u05DA",gender:"m"},array:{label:"\u05DE\u05E2\u05E8\u05DA",gender:"m"},object:{label:"\u05D0\u05D5\u05D1\u05D9\u05D9\u05E7\u05D8",gender:"m"},null:{label:"\u05E2\u05E8\u05DA \u05E8\u05D9\u05E7 (null)",gender:"m"},undefined:{label:"\u05E2\u05E8\u05DA \u05DC\u05D0 \u05DE\u05D5\u05D2\u05D3\u05E8 (undefined)",gender:"m"},symbol:{label:"\u05E1\u05D9\u05DE\u05D1\u05D5\u05DC (Symbol)",gender:"m"},function:{label:"\u05E4\u05D5\u05E0\u05E7\u05E6\u05D9\u05D4",gender:"f"},map:{label:"\u05DE\u05E4\u05D4 (Map)",gender:"f"},set:{label:"\u05E7\u05D1\u05D5\u05E6\u05D4 (Set)",gender:"f"},file:{label:"\u05E7\u05D5\u05D1\u05E5",gender:"m"},promise:{label:"Promise",gender:"m"},NaN:{label:"NaN",gender:"m"},unknown:{label:"\u05E2\u05E8\u05DA \u05DC\u05D0 \u05D9\u05D3\u05D5\u05E2",gender:"m"},value:{label:"\u05E2\u05E8\u05DA",gender:"m"}},n={string:{unit:"\u05EA\u05D5\u05D5\u05D9\u05DD",shortLabel:"\u05E7\u05E6\u05E8",longLabel:"\u05D0\u05E8\u05D5\u05DA"},file:{unit:"\u05D1\u05D9\u05D9\u05D8\u05D9\u05DD",shortLabel:"\u05E7\u05D8\u05DF",longLabel:"\u05D2\u05D3\u05D5\u05DC"},array:{unit:"\u05E4\u05E8\u05D9\u05D8\u05D9\u05DD",shortLabel:"\u05E7\u05D8\u05DF",longLabel:"\u05D2\u05D3\u05D5\u05DC"},set:{unit:"\u05E4\u05E8\u05D9\u05D8\u05D9\u05DD",shortLabel:"\u05E7\u05D8\u05DF",longLabel:"\u05D2\u05D3\u05D5\u05DC"},number:{unit:"",shortLabel:"\u05E7\u05D8\u05DF",longLabel:"\u05D2\u05D3\u05D5\u05DC"}},t=($)=>$?r[$]:void 0,e=($)=>{let g=t($);if(g)return g.label;return $??r.unknown.label},i=($)=>`\u05D4${e($)}`,_=($)=>{return(t($)?.gender??"m")==="f"?"\u05E6\u05E8\u05D9\u05DB\u05D4 \u05DC\u05D4\u05D9\u05D5\u05EA":"\u05E6\u05E8\u05D9\u05DA \u05DC\u05D4\u05D9\u05D5\u05EA"},c=($)=>{if(!$)return null;return n[$]??null},u={regex:{label:"\u05E7\u05DC\u05D8",gender:"m"},email:{label:"\u05DB\u05EA\u05D5\u05D1\u05EA \u05D0\u05D9\u05DE\u05D9\u05D9\u05DC",gender:"f"},url:{label:"\u05DB\u05EA\u05D5\u05D1\u05EA \u05E8\u05E9\u05EA",gender:"f"},emoji:{label:"\u05D0\u05D9\u05DE\u05D5\u05D2'\u05D9",gender:"m"},uuid:{label:"UUID",gender:"m"},nanoid:{label:"nanoid",gender:"m"},guid:{label:"GUID",gender:"m"},cuid:{label:"cuid",gender:"m"},cuid2:{label:"cuid2",gender:"m"},ulid:{label:"ULID",gender:"m"},xid:{label:"XID",gender:"m"},ksuid:{label:"KSUID",gender:"m"},datetime:{label:"\u05EA\u05D0\u05E8\u05D9\u05DA \u05D5\u05D6\u05DE\u05DF ISO",gender:"m"},date:{label:"\u05EA\u05D0\u05E8\u05D9\u05DA ISO",gender:"m"},time:{label:"\u05D6\u05DE\u05DF ISO",gender:"m"},duration:{label:"\u05DE\u05E9\u05DA \u05D6\u05DE\u05DF ISO",gender:"m"},ipv4:{label:"\u05DB\u05EA\u05D5\u05D1\u05EA IPv4",gender:"f"},ipv6:{label:"\u05DB\u05EA\u05D5\u05D1\u05EA IPv6",gender:"f"},cidrv4:{label:"\u05D8\u05D5\u05D5\u05D7 IPv4",gender:"m"},cidrv6:{label:"\u05D8\u05D5\u05D5\u05D7 IPv6",gender:"m"},base64:{label:"\u05DE\u05D7\u05E8\u05D5\u05D6\u05EA \u05D1\u05D1\u05E1\u05D9\u05E1 64",gender:"f"},base64url:{label:"\u05DE\u05D7\u05E8\u05D5\u05D6\u05EA \u05D1\u05D1\u05E1\u05D9\u05E1 64 \u05DC\u05DB\u05EA\u05D5\u05D1\u05D5\u05EA \u05E8\u05E9\u05EA",gender:"f"},json_string:{label:"\u05DE\u05D7\u05E8\u05D5\u05D6\u05EA JSON",gender:"f"},e164:{label:"\u05DE\u05E1\u05E4\u05E8 E.164",gender:"m"},jwt:{label:"JWT",gender:"m"},ends_with:{label:"\u05E7\u05DC\u05D8",gender:"m"},includes:{label:"\u05E7\u05DC\u05D8",gender:"m"},lowercase:{label:"\u05E7\u05DC\u05D8",gender:"m"},starts_with:{label:"\u05E7\u05DC\u05D8",gender:"m"},uppercase:{label:"\u05E7\u05DC\u05D8",gender:"m"}},o={nan:"NaN"};return($)=>{switch($.code){case"invalid_type":{let g=$.expected,d=o[g??""]??e(g),f=S($.input),b=o[f]??r[f]?.label??f;if(/^[A-Z]/.test($.expected))return`\u05E7\u05DC\u05D8 \u05DC\u05D0 \u05EA\u05E7\u05D9\u05DF: \u05E6\u05E8\u05D9\u05DA \u05DC\u05D4\u05D9\u05D5\u05EA instanceof ${$.expected}, \u05D4\u05EA\u05E7\u05D1\u05DC ${b}`;return`\u05E7\u05DC\u05D8 \u05DC\u05D0 \u05EA\u05E7\u05D9\u05DF: \u05E6\u05E8\u05D9\u05DA \u05DC\u05D4\u05D9\u05D5\u05EA ${d}, \u05D4\u05EA\u05E7\u05D1\u05DC ${b}`}case"invalid_value":{if($.values.length===1)return`\u05E2\u05E8\u05DA \u05DC\u05D0 \u05EA\u05E7\u05D9\u05DF: \u05D4\u05E2\u05E8\u05DA \u05D7\u05D9\u05D9\u05D1 \u05DC\u05D4\u05D9\u05D5\u05EA ${z($.values[0])}`;let g=$.values.map((b)=>z(b));if($.values.length===2)return`\u05E2\u05E8\u05DA \u05DC\u05D0 \u05EA\u05E7\u05D9\u05DF: \u05D4\u05D0\u05E4\u05E9\u05E8\u05D5\u05D9\u05D5\u05EA \u05D4\u05DE\u05EA\u05D0\u05D9\u05DE\u05D5\u05EA \u05D4\u05DF ${g[0]} \u05D0\u05D5 ${g[1]}`;let d=g[g.length-1];return`\u05E2\u05E8\u05DA \u05DC\u05D0 \u05EA\u05E7\u05D9\u05DF: \u05D4\u05D0\u05E4\u05E9\u05E8\u05D5\u05D9\u05D5\u05EA \u05D4\u05DE\u05EA\u05D0\u05D9\u05DE\u05D5\u05EA \u05D4\u05DF ${g.slice(0,-1).join(", ")} \u05D0\u05D5 ${d}`}case"too_big":{let g=c($.origin),d=i($.origin??"value");if($.origin==="string")return`${g?.longLabel??"\u05D0\u05E8\u05D5\u05DA"} \u05DE\u05D3\u05D9: ${d} \u05E6\u05E8\u05D9\u05DB\u05D4 \u05DC\u05D4\u05DB\u05D9\u05DC ${$.maximum.toString()} ${g?.unit??""} ${$.inclusive?"\u05D0\u05D5 \u05E4\u05D7\u05D5\u05EA":"\u05DC\u05DB\u05DC \u05D4\u05D9\u05D5\u05EA\u05E8"}`.trim();if($.origin==="number"){let m=$.inclusive?`\u05E7\u05D8\u05DF \u05D0\u05D5 \u05E9\u05D5\u05D5\u05D4 \u05DC-${$.maximum}`:`\u05E7\u05D8\u05DF \u05DE-${$.maximum}`;return`\u05D2\u05D3\u05D5\u05DC \u05DE\u05D3\u05D9: ${d} \u05E6\u05E8\u05D9\u05DA \u05DC\u05D4\u05D9\u05D5\u05EA ${m}`}if($.origin==="array"||$.origin==="set"){let m=$.origin==="set"?"\u05E6\u05E8\u05D9\u05DB\u05D4":"\u05E6\u05E8\u05D9\u05DA",w=$.inclusive?`${$.maximum} ${g?.unit??""} \u05D0\u05D5 \u05E4\u05D7\u05D5\u05EA`:`\u05E4\u05D7\u05D5\u05EA \u05DE-${$.maximum} ${g?.unit??""}`;return`\u05D2\u05D3\u05D5\u05DC \u05DE\u05D3\u05D9: ${d} ${m} \u05DC\u05D4\u05DB\u05D9\u05DC ${w}`.trim()}let f=$.inclusive?"<=":"<",b=_($.origin??"value");if(g?.unit)return`${g.longLabel} \u05DE\u05D3\u05D9: ${d} ${b} ${f}${$.maximum.toString()} ${g.unit}`;return`${g?.longLabel??"\u05D2\u05D3\u05D5\u05DC"} \u05DE\u05D3\u05D9: ${d} ${b} ${f}${$.maximum.toString()}`}case"too_small":{let g=c($.origin),d=i($.origin??"value");if($.origin==="string")return`${g?.shortLabel??"\u05E7\u05E6\u05E8"} \u05DE\u05D3\u05D9: ${d} \u05E6\u05E8\u05D9\u05DB\u05D4 \u05DC\u05D4\u05DB\u05D9\u05DC ${$.minimum.toString()} ${g?.unit??""} ${$.inclusive?"\u05D0\u05D5 \u05D9\u05D5\u05EA\u05E8":"\u05DC\u05E4\u05D7\u05D5\u05EA"}`.trim();if($.origin==="number"){let m=$.inclusive?`\u05D2\u05D3\u05D5\u05DC \u05D0\u05D5 \u05E9\u05D5\u05D5\u05D4 \u05DC-${$.minimum}`:`\u05D2\u05D3\u05D5\u05DC \u05DE-${$.minimum}`;return`\u05E7\u05D8\u05DF \u05DE\u05D3\u05D9: ${d} \u05E6\u05E8\u05D9\u05DA \u05DC\u05D4\u05D9\u05D5\u05EA ${m}`}if($.origin==="array"||$.origin==="set"){let m=$.origin==="set"?"\u05E6\u05E8\u05D9\u05DB\u05D4":"\u05E6\u05E8\u05D9\u05DA";if($.minimum===1&&$.inclusive){let O=$.origin==="set"?"\u05DC\u05E4\u05D7\u05D5\u05EA \u05E4\u05E8\u05D9\u05D8 \u05D0\u05D7\u05D3":"\u05DC\u05E4\u05D7\u05D5\u05EA \u05E4\u05E8\u05D9\u05D8 \u05D0\u05D7\u05D3";return`\u05E7\u05D8\u05DF \u05DE\u05D3\u05D9: ${d} ${m} \u05DC\u05D4\u05DB\u05D9\u05DC ${O}`}let w=$.inclusive?`${$.minimum} ${g?.unit??""} \u05D0\u05D5 \u05D9\u05D5\u05EA\u05E8`:`\u05D9\u05D5\u05EA\u05E8 \u05DE-${$.minimum} ${g?.unit??""}`;return`\u05E7\u05D8\u05DF \u05DE\u05D3\u05D9: ${d} ${m} \u05DC\u05D4\u05DB\u05D9\u05DC ${w}`.trim()}let f=$.inclusive?">=":">",b=_($.origin??"value");if(g?.unit)return`${g.shortLabel} \u05DE\u05D3\u05D9: ${d} ${b} ${f}${$.minimum.toString()} ${g.unit}`;return`${g?.shortLabel??"\u05E7\u05D8\u05DF"} \u05DE\u05D3\u05D9: ${d} ${b} ${f}${$.minimum.toString()}`}case"invalid_format":{let g=$;if(g.format==="starts_with")return`\u05D4\u05DE\u05D7\u05E8\u05D5\u05D6\u05EA \u05D7\u05D9\u05D9\u05D1\u05EA \u05DC\u05D4\u05EA\u05D7\u05D9\u05DC \u05D1 "${g.prefix}"`;if(g.format==="ends_with")return`\u05D4\u05DE\u05D7\u05E8\u05D5\u05D6\u05EA \u05D7\u05D9\u05D9\u05D1\u05EA \u05DC\u05D4\u05E1\u05EA\u05D9\u05D9\u05DD \u05D1 "${g.suffix}"`;if(g.format==="includes")return`\u05D4\u05DE\u05D7\u05E8\u05D5\u05D6\u05EA \u05D7\u05D9\u05D9\u05D1\u05EA \u05DC\u05DB\u05DC\u05D5\u05DC "${g.includes}"`;if(g.format==="regex")return`\u05D4\u05DE\u05D7\u05E8\u05D5\u05D6\u05EA \u05D7\u05D9\u05D9\u05D1\u05EA \u05DC\u05D4\u05EA\u05D0\u05D9\u05DD \u05DC\u05EA\u05D1\u05E0\u05D9\u05EA ${g.pattern}`;let d=u[g.format],f=d?.label??g.format,m=(d?.gender??"m")==="f"?"\u05EA\u05E7\u05D9\u05E0\u05D4":"\u05EA\u05E7\u05D9\u05DF";return`${f} \u05DC\u05D0 ${m}`}case"not_multiple_of":return`\u05DE\u05E1\u05E4\u05E8 \u05DC\u05D0 \u05EA\u05E7\u05D9\u05DF: \u05D7\u05D9\u05D9\u05D1 \u05DC\u05D4\u05D9\u05D5\u05EA \u05DE\u05DB\u05E4\u05DC\u05D4 \u05E9\u05DC ${$.divisor}`;case"unrecognized_keys":return`\u05DE\u05E4\u05EA\u05D7${$.keys.length>1?"\u05D5\u05EA":""} \u05DC\u05D0 \u05DE\u05D6\u05D5\u05D4${$.keys.length>1?"\u05D9\u05DD":"\u05D4"}: ${h($.keys,", ")}`;case"invalid_key":return"\u05E9\u05D3\u05D4 \u05DC\u05D0 \u05EA\u05E7\u05D9\u05DF \u05D1\u05D0\u05D5\u05D1\u05D9\u05D9\u05E7\u05D8";case"invalid_union":return"\u05E7\u05DC\u05D8 \u05DC\u05D0 \u05EA\u05E7\u05D9\u05DF";case"invalid_element":return`\u05E2\u05E8\u05DA \u05DC\u05D0 \u05EA\u05E7\u05D9\u05DF \u05D1${i($.origin??"array")}`;default:return"\u05E7\u05DC\u05D8 \u05DC\u05D0 \u05EA\u05E7\u05D9\u05DF"}}};var HO=N(()=>{G()});function Jb(){return{localeError:tW()}}var tW=()=>{let r={string:{unit:"karakter",verb:"legyen"},file:{unit:"byte",verb:"legyen"},array:{unit:"elem",verb:"legyen"},set:{unit:"elem",verb:"legyen"}};function n(i){return r[i]??null}let t={regex:"bemenet",email:"email c\xEDm",url:"URL",emoji:"emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ISO id\u0151b\xE9lyeg",date:"ISO d\xE1tum",time:"ISO id\u0151",duration:"ISO id\u0151intervallum",ipv4:"IPv4 c\xEDm",ipv6:"IPv6 c\xEDm",cidrv4:"IPv4 tartom\xE1ny",cidrv6:"IPv6 tartom\xE1ny",base64:"base64-k\xF3dolt string",base64url:"base64url-k\xF3dolt string",json_string:"JSON string",e164:"E.164 sz\xE1m",jwt:"JWT",template_literal:"bemenet"},e={nan:"NaN",number:"sz\xE1m",array:"t\xF6mb"};return(i)=>{switch(i.code){case"invalid_type":{let _=e[i.expected]??i.expected,c=S(i.input),u=e[c]??c;if(/^[A-Z]/.test(i.expected))return`\xC9rv\xE9nytelen bemenet: a v\xE1rt \xE9rt\xE9k instanceof ${i.expected}, a kapott \xE9rt\xE9k ${u}`;return`\xC9rv\xE9nytelen bemenet: a v\xE1rt \xE9rt\xE9k ${_}, a kapott \xE9rt\xE9k ${u}`}case"invalid_value":if(i.values.length===1)return`\xC9rv\xE9nytelen bemenet: a v\xE1rt \xE9rt\xE9k ${z(i.values[0])}`;return`\xC9rv\xE9nytelen opci\xF3: valamelyik \xE9rt\xE9k v\xE1rt ${h(i.values,"|")}`;case"too_big":{let _=i.inclusive?"<=":"<",c=n(i.origin);if(c)return`T\xFAl nagy: ${i.origin??"\xE9rt\xE9k"} m\xE9rete t\xFAl nagy ${_}${i.maximum.toString()} ${c.unit??"elem"}`;return`T\xFAl nagy: a bemeneti \xE9rt\xE9k ${i.origin??"\xE9rt\xE9k"} t\xFAl nagy: ${_}${i.maximum.toString()}`}case"too_small":{let _=i.inclusive?">=":">",c=n(i.origin);if(c)return`T\xFAl kicsi: a bemeneti \xE9rt\xE9k ${i.origin} m\xE9rete t\xFAl kicsi ${_}${i.minimum.toString()} ${c.unit}`;return`T\xFAl kicsi: a bemeneti \xE9rt\xE9k ${i.origin} t\xFAl kicsi ${_}${i.minimum.toString()}`}case"invalid_format":{let _=i;if(_.format==="starts_with")return`\xC9rv\xE9nytelen string: "${_.prefix}" \xE9rt\xE9kkel kell kezd\u0151dnie`;if(_.format==="ends_with")return`\xC9rv\xE9nytelen string: "${_.suffix}" \xE9rt\xE9kkel kell v\xE9gz\u0151dnie`;if(_.format==="includes")return`\xC9rv\xE9nytelen string: "${_.includes}" \xE9rt\xE9ket kell tartalmaznia`;if(_.format==="regex")return`\xC9rv\xE9nytelen string: ${_.pattern} mint\xE1nak kell megfelelnie`;return`\xC9rv\xE9nytelen ${t[_.format]??i.format}`}case"not_multiple_of":return`\xC9rv\xE9nytelen sz\xE1m: ${i.divisor} t\xF6bbsz\xF6r\xF6s\xE9nek kell lennie`;case"unrecognized_keys":return`Ismeretlen kulcs${i.keys.length>1?"s":""}: ${h(i.keys,", ")}`;case"invalid_key":return`\xC9rv\xE9nytelen kulcs ${i.origin}`;case"invalid_union":return"\xC9rv\xE9nytelen bemenet";case"invalid_element":return`\xC9rv\xE9nytelen \xE9rt\xE9k: ${i.origin}`;default:return"\xC9rv\xE9nytelen bemenet"}}};var BO=N(()=>{G()});function QO(r,n,t){return Math.abs(r)===1?n:t}function Fi(r){if(!r)return"";let n=["\u0561","\u0565","\u0568","\u056B","\u0578","\u0578\u0582","\u0585"],t=r[r.length-1];return r+(n.includes(t)?"\u0576":"\u0568")}function Ab(){return{localeError:iW()}}var iW=()=>{let r={string:{unit:{one:"\u0576\u0577\u0561\u0576",many:"\u0576\u0577\u0561\u0576\u0576\u0565\u0580"},verb:"\u0578\u0582\u0576\u0565\u0576\u0561\u056C"},file:{unit:{one:"\u0562\u0561\u0575\u0569",many:"\u0562\u0561\u0575\u0569\u0565\u0580"},verb:"\u0578\u0582\u0576\u0565\u0576\u0561\u056C"},array:{unit:{one:"\u057F\u0561\u0580\u0580",many:"\u057F\u0561\u0580\u0580\u0565\u0580"},verb:"\u0578\u0582\u0576\u0565\u0576\u0561\u056C"},set:{unit:{one:"\u057F\u0561\u0580\u0580",many:"\u057F\u0561\u0580\u0580\u0565\u0580"},verb:"\u0578\u0582\u0576\u0565\u0576\u0561\u056C"}};function n(i){return r[i]??null}let t={regex:"\u0574\u0578\u0582\u057F\u0584",email:"\u0567\u056C. \u0570\u0561\u057D\u0581\u0565",url:"URL",emoji:"\u0567\u0574\u0578\u057B\u056B",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ISO \u0561\u0574\u057D\u0561\u0569\u056B\u057E \u0587 \u056A\u0561\u0574",date:"ISO \u0561\u0574\u057D\u0561\u0569\u056B\u057E",time:"ISO \u056A\u0561\u0574",duration:"ISO \u057F\u0587\u0578\u0572\u0578\u0582\u0569\u0575\u0578\u0582\u0576",ipv4:"IPv4 \u0570\u0561\u057D\u0581\u0565",ipv6:"IPv6 \u0570\u0561\u057D\u0581\u0565",cidrv4:"IPv4 \u0574\u056B\u057B\u0561\u056F\u0561\u0575\u0584",cidrv6:"IPv6 \u0574\u056B\u057B\u0561\u056F\u0561\u0575\u0584",base64:"base64 \u0571\u0587\u0561\u0579\u0561\u0583\u0578\u057E \u057F\u0578\u0572",base64url:"base64url \u0571\u0587\u0561\u0579\u0561\u0583\u0578\u057E \u057F\u0578\u0572",json_string:"JSON \u057F\u0578\u0572",e164:"E.164 \u0570\u0561\u0574\u0561\u0580",jwt:"JWT",template_literal:"\u0574\u0578\u0582\u057F\u0584"},e={nan:"NaN",number:"\u0569\u056B\u057E",array:"\u0566\u0561\u0576\u0563\u057E\u0561\u056E"};return(i)=>{switch(i.code){case"invalid_type":{let _=e[i.expected]??i.expected,c=S(i.input),u=e[c]??c;if(/^[A-Z]/.test(i.expected))return`\u054D\u056D\u0561\u056C \u0574\u0578\u0582\u057F\u0584\u0561\u0563\u0580\u0578\u0582\u0574\u2024 \u057D\u057A\u0561\u057D\u057E\u0578\u0582\u0574 \u0567\u0580 instanceof ${i.expected}, \u057D\u057F\u0561\u0581\u057E\u0565\u056C \u0567 ${u}`;return`\u054D\u056D\u0561\u056C \u0574\u0578\u0582\u057F\u0584\u0561\u0563\u0580\u0578\u0582\u0574\u2024 \u057D\u057A\u0561\u057D\u057E\u0578\u0582\u0574 \u0567\u0580 ${_}, \u057D\u057F\u0561\u0581\u057E\u0565\u056C \u0567 ${u}`}case"invalid_value":if(i.values.length===1)return`\u054D\u056D\u0561\u056C \u0574\u0578\u0582\u057F\u0584\u0561\u0563\u0580\u0578\u0582\u0574\u2024 \u057D\u057A\u0561\u057D\u057E\u0578\u0582\u0574 \u0567\u0580 ${z(i.values[1])}`;return`\u054D\u056D\u0561\u056C \u057F\u0561\u0580\u0562\u0565\u0580\u0561\u056F\u2024 \u057D\u057A\u0561\u057D\u057E\u0578\u0582\u0574 \u0567\u0580 \u0570\u0565\u057F\u0587\u0575\u0561\u056C\u0576\u0565\u0580\u056B\u0581 \u0574\u0565\u056F\u0568\u055D ${h(i.values,"|")}`;case"too_big":{let _=i.inclusive?"<=":"<",c=n(i.origin);if(c){let u=Number(i.maximum),o=QO(u,c.unit.one,c.unit.many);return`\u0549\u0561\u0583\u0561\u0566\u0561\u0576\u0581 \u0574\u0565\u056E \u0561\u0580\u056A\u0565\u0584\u2024 \u057D\u057A\u0561\u057D\u057E\u0578\u0582\u0574 \u0567, \u0578\u0580 ${Fi(i.origin??"\u0561\u0580\u056A\u0565\u0584")} \u056F\u0578\u0582\u0576\u0565\u0576\u0561 ${_}${i.maximum.toString()} ${o}`}return`\u0549\u0561\u0583\u0561\u0566\u0561\u0576\u0581 \u0574\u0565\u056E \u0561\u0580\u056A\u0565\u0584\u2024 \u057D\u057A\u0561\u057D\u057E\u0578\u0582\u0574 \u0567, \u0578\u0580 ${Fi(i.origin??"\u0561\u0580\u056A\u0565\u0584")} \u056C\u056B\u0576\u056B ${_}${i.maximum.toString()}`}case"too_small":{let _=i.inclusive?">=":">",c=n(i.origin);if(c){let u=Number(i.minimum),o=QO(u,c.unit.one,c.unit.many);return`\u0549\u0561\u0583\u0561\u0566\u0561\u0576\u0581 \u0583\u0578\u0584\u0580 \u0561\u0580\u056A\u0565\u0584\u2024 \u057D\u057A\u0561\u057D\u057E\u0578\u0582\u0574 \u0567, \u0578\u0580 ${Fi(i.origin)} \u056F\u0578\u0582\u0576\u0565\u0576\u0561 ${_}${i.minimum.toString()} ${o}`}return`\u0549\u0561\u0583\u0561\u0566\u0561\u0576\u0581 \u0583\u0578\u0584\u0580 \u0561\u0580\u056A\u0565\u0584\u2024 \u057D\u057A\u0561\u057D\u057E\u0578\u0582\u0574 \u0567, \u0578\u0580 ${Fi(i.origin)} \u056C\u056B\u0576\u056B ${_}${i.minimum.toString()}`}case"invalid_format":{let _=i;if(_.format==="starts_with")return`\u054D\u056D\u0561\u056C \u057F\u0578\u0572\u2024 \u057A\u0565\u057F\u0584 \u0567 \u057D\u056F\u057D\u057E\u056B "${_.prefix}"-\u0578\u057E`;if(_.format==="ends_with")return`\u054D\u056D\u0561\u056C \u057F\u0578\u0572\u2024 \u057A\u0565\u057F\u0584 \u0567 \u0561\u057E\u0561\u0580\u057F\u057E\u056B "${_.suffix}"-\u0578\u057E`;if(_.format==="includes")return`\u054D\u056D\u0561\u056C \u057F\u0578\u0572\u2024 \u057A\u0565\u057F\u0584 \u0567 \u057A\u0561\u0580\u0578\u0582\u0576\u0561\u056F\u056B "${_.includes}"`;if(_.format==="regex")return`\u054D\u056D\u0561\u056C \u057F\u0578\u0572\u2024 \u057A\u0565\u057F\u0584 \u0567 \u0570\u0561\u0574\u0561\u057A\u0561\u057F\u0561\u057D\u056D\u0561\u0576\u056B ${_.pattern} \u0571\u0587\u0561\u0579\u0561\u0583\u056B\u0576`;return`\u054D\u056D\u0561\u056C ${t[_.format]??i.format}`}case"not_multiple_of":return`\u054D\u056D\u0561\u056C \u0569\u056B\u057E\u2024 \u057A\u0565\u057F\u0584 \u0567 \u0562\u0561\u0566\u0574\u0561\u057A\u0561\u057F\u056B\u056F \u056C\u056B\u0576\u056B ${i.divisor}-\u056B`;case"unrecognized_keys":return`\u0549\u0573\u0561\u0576\u0561\u0579\u057E\u0561\u056E \u0562\u0561\u0576\u0561\u056C\u056B${i.keys.length>1?"\u0576\u0565\u0580":""}. ${h(i.keys,", ")}`;case"invalid_key":return`\u054D\u056D\u0561\u056C \u0562\u0561\u0576\u0561\u056C\u056B ${Fi(i.origin)}-\u0578\u0582\u0574`;case"invalid_union":return"\u054D\u056D\u0561\u056C \u0574\u0578\u0582\u057F\u0584\u0561\u0563\u0580\u0578\u0582\u0574";case"invalid_element":return`\u054D\u056D\u0561\u056C \u0561\u0580\u056A\u0565\u0584 ${Fi(i.origin)}-\u0578\u0582\u0574`;default:return"\u054D\u056D\u0561\u056C \u0574\u0578\u0582\u057F\u0584\u0561\u0563\u0580\u0578\u0582\u0574"}}};var KO=N(()=>{G()});function Mb(){return{localeError:eW()}}var eW=()=>{let r={string:{unit:"karakter",verb:"memiliki"},file:{unit:"byte",verb:"memiliki"},array:{unit:"item",verb:"memiliki"},set:{unit:"item",verb:"memiliki"}};function n(i){return r[i]??null}let t={regex:"input",email:"alamat email",url:"URL",emoji:"emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"tanggal dan waktu format ISO",date:"tanggal format ISO",time:"jam format ISO",duration:"durasi format ISO",ipv4:"alamat IPv4",ipv6:"alamat IPv6",cidrv4:"rentang alamat IPv4",cidrv6:"rentang alamat IPv6",base64:"string dengan enkode base64",base64url:"string dengan enkode base64url",json_string:"string JSON",e164:"angka E.164",jwt:"JWT",template_literal:"input"},e={nan:"NaN"};return(i)=>{switch(i.code){case"invalid_type":{let _=e[i.expected]??i.expected,c=S(i.input),u=e[c]??c;if(/^[A-Z]/.test(i.expected))return`Input tidak valid: diharapkan instanceof ${i.expected}, diterima ${u}`;return`Input tidak valid: diharapkan ${_}, diterima ${u}`}case"invalid_value":if(i.values.length===1)return`Input tidak valid: diharapkan ${z(i.values[0])}`;return`Pilihan tidak valid: diharapkan salah satu dari ${h(i.values,"|")}`;case"too_big":{let _=i.inclusive?"<=":"<",c=n(i.origin);if(c)return`Terlalu besar: diharapkan ${i.origin??"value"} memiliki ${_}${i.maximum.toString()} ${c.unit??"elemen"}`;return`Terlalu besar: diharapkan ${i.origin??"value"} menjadi ${_}${i.maximum.toString()}`}case"too_small":{let _=i.inclusive?">=":">",c=n(i.origin);if(c)return`Terlalu kecil: diharapkan ${i.origin} memiliki ${_}${i.minimum.toString()} ${c.unit}`;return`Terlalu kecil: diharapkan ${i.origin} menjadi ${_}${i.minimum.toString()}`}case"invalid_format":{let _=i;if(_.format==="starts_with")return`String tidak valid: harus dimulai dengan "${_.prefix}"`;if(_.format==="ends_with")return`String tidak valid: harus berakhir dengan "${_.suffix}"`;if(_.format==="includes")return`String tidak valid: harus menyertakan "${_.includes}"`;if(_.format==="regex")return`String tidak valid: harus sesuai pola ${_.pattern}`;return`${t[_.format]??i.format} tidak valid`}case"not_multiple_of":return`Angka tidak valid: harus kelipatan dari ${i.divisor}`;case"unrecognized_keys":return`Kunci tidak dikenali ${i.keys.length>1?"s":""}: ${h(i.keys,", ")}`;case"invalid_key":return`Kunci tidak valid di ${i.origin}`;case"invalid_union":return"Input tidak valid";case"invalid_element":return`Nilai tidak valid di ${i.origin}`;default:return"Input tidak valid"}}};var aO=N(()=>{G()});function Pb(){return{localeError:_W()}}var _W=()=>{let r={string:{unit:"stafi",verb:"a\xF0 hafa"},file:{unit:"b\xE6ti",verb:"a\xF0 hafa"},array:{unit:"hluti",verb:"a\xF0 hafa"},set:{unit:"hluti",verb:"a\xF0 hafa"}};function n(i){return r[i]??null}let t={regex:"gildi",email:"netfang",url:"vefsl\xF3\xF0",emoji:"emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ISO dagsetning og t\xEDmi",date:"ISO dagsetning",time:"ISO t\xEDmi",duration:"ISO t\xEDmalengd",ipv4:"IPv4 address",ipv6:"IPv6 address",cidrv4:"IPv4 range",cidrv6:"IPv6 range",base64:"base64-encoded strengur",base64url:"base64url-encoded strengur",json_string:"JSON strengur",e164:"E.164 t\xF6lugildi",jwt:"JWT",template_literal:"gildi"},e={nan:"NaN",number:"n\xFAmer",array:"fylki"};return(i)=>{switch(i.code){case"invalid_type":{let _=e[i.expected]??i.expected,c=S(i.input),u=e[c]??c;if(/^[A-Z]/.test(i.expected))return`Rangt gildi: \xDE\xFA sl\xF3st inn ${u} \xFEar sem \xE1 a\xF0 vera instanceof ${i.expected}`;return`Rangt gildi: \xDE\xFA sl\xF3st inn ${u} \xFEar sem \xE1 a\xF0 vera ${_}`}case"invalid_value":if(i.values.length===1)return`Rangt gildi: gert r\xE1\xF0 fyrir ${z(i.values[0])}`;return`\xD3gilt val: m\xE1 vera eitt af eftirfarandi ${h(i.values,"|")}`;case"too_big":{let _=i.inclusive?"<=":"<",c=n(i.origin);if(c)return`Of st\xF3rt: gert er r\xE1\xF0 fyrir a\xF0 ${i.origin??"gildi"} hafi ${_}${i.maximum.toString()} ${c.unit??"hluti"}`;return`Of st\xF3rt: gert er r\xE1\xF0 fyrir a\xF0 ${i.origin??"gildi"} s\xE9 ${_}${i.maximum.toString()}`}case"too_small":{let _=i.inclusive?">=":">",c=n(i.origin);if(c)return`Of l\xEDti\xF0: gert er r\xE1\xF0 fyrir a\xF0 ${i.origin} hafi ${_}${i.minimum.toString()} ${c.unit}`;return`Of l\xEDti\xF0: gert er r\xE1\xF0 fyrir a\xF0 ${i.origin} s\xE9 ${_}${i.minimum.toString()}`}case"invalid_format":{let _=i;if(_.format==="starts_with")return`\xD3gildur strengur: ver\xF0ur a\xF0 byrja \xE1 "${_.prefix}"`;if(_.format==="ends_with")return`\xD3gildur strengur: ver\xF0ur a\xF0 enda \xE1 "${_.suffix}"`;if(_.format==="includes")return`\xD3gildur strengur: ver\xF0ur a\xF0 innihalda "${_.includes}"`;if(_.format==="regex")return`\xD3gildur strengur: ver\xF0ur a\xF0 fylgja mynstri ${_.pattern}`;return`Rangt ${t[_.format]??i.format}`}case"not_multiple_of":return`R\xF6ng tala: ver\xF0ur a\xF0 vera margfeldi af ${i.divisor}`;case"unrecognized_keys":return`\xD3\xFEekkt ${i.keys.length>1?"ir lyklar":"ur lykill"}: ${h(i.keys,", ")}`;case"invalid_key":return`Rangur lykill \xED ${i.origin}`;case"invalid_union":return"Rangt gildi";case"invalid_element":return`Rangt gildi \xED ${i.origin}`;default:return"Rangt gildi"}}};var ZO=N(()=>{G()});function kb(){return{localeError:cW()}}var cW=()=>{let r={string:{unit:"caratteri",verb:"avere"},file:{unit:"byte",verb:"avere"},array:{unit:"elementi",verb:"avere"},set:{unit:"elementi",verb:"avere"}};function n(i){return r[i]??null}let t={regex:"input",email:"indirizzo email",url:"URL",emoji:"emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"data e ora ISO",date:"data ISO",time:"ora ISO",duration:"durata ISO",ipv4:"indirizzo IPv4",ipv6:"indirizzo IPv6",cidrv4:"intervallo IPv4",cidrv6:"intervallo IPv6",base64:"stringa codificata in base64",base64url:"URL codificata in base64",json_string:"stringa JSON",e164:"numero E.164",jwt:"JWT",template_literal:"input"},e={nan:"NaN",number:"numero",array:"vettore"};return(i)=>{switch(i.code){case"invalid_type":{let _=e[i.expected]??i.expected,c=S(i.input),u=e[c]??c;if(/^[A-Z]/.test(i.expected))return`Input non valido: atteso instanceof ${i.expected}, ricevuto ${u}`;return`Input non valido: atteso ${_}, ricevuto ${u}`}case"invalid_value":if(i.values.length===1)return`Input non valido: atteso ${z(i.values[0])}`;return`Opzione non valida: atteso uno tra ${h(i.values,"|")}`;case"too_big":{let _=i.inclusive?"<=":"<",c=n(i.origin);if(c)return`Troppo grande: ${i.origin??"valore"} deve avere ${_}${i.maximum.toString()} ${c.unit??"elementi"}`;return`Troppo grande: ${i.origin??"valore"} deve essere ${_}${i.maximum.toString()}`}case"too_small":{let _=i.inclusive?">=":">",c=n(i.origin);if(c)return`Troppo piccolo: ${i.origin} deve avere ${_}${i.minimum.toString()} ${c.unit}`;return`Troppo piccolo: ${i.origin} deve essere ${_}${i.minimum.toString()}`}case"invalid_format":{let _=i;if(_.format==="starts_with")return`Stringa non valida: deve iniziare con "${_.prefix}"`;if(_.format==="ends_with")return`Stringa non valida: deve terminare con "${_.suffix}"`;if(_.format==="includes")return`Stringa non valida: deve includere "${_.includes}"`;if(_.format==="regex")return`Stringa non valida: deve corrispondere al pattern ${_.pattern}`;return`Invalid ${t[_.format]??i.format}`}case"not_multiple_of":return`Numero non valido: deve essere un multiplo di ${i.divisor}`;case"unrecognized_keys":return`Chiav${i.keys.length>1?"i":"e"} non riconosciut${i.keys.length>1?"e":"a"}: ${h(i.keys,", ")}`;case"invalid_key":return`Chiave non valida in ${i.origin}`;case"invalid_union":return"Input non valido";case"invalid_element":return`Valore non valido in ${i.origin}`;default:return"Input non valido"}}};var CO=N(()=>{G()});function Xb(){return{localeError:uW()}}var uW=()=>{let r={string:{unit:"\u6587\u5B57",verb:"\u3067\u3042\u308B"},file:{unit:"\u30D0\u30A4\u30C8",verb:"\u3067\u3042\u308B"},array:{unit:"\u8981\u7D20",verb:"\u3067\u3042\u308B"},set:{unit:"\u8981\u7D20",verb:"\u3067\u3042\u308B"}};function n(i){return r[i]??null}let t={regex:"\u5165\u529B\u5024",email:"\u30E1\u30FC\u30EB\u30A2\u30C9\u30EC\u30B9",url:"URL",emoji:"\u7D75\u6587\u5B57",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ISO\u65E5\u6642",date:"ISO\u65E5\u4ED8",time:"ISO\u6642\u523B",duration:"ISO\u671F\u9593",ipv4:"IPv4\u30A2\u30C9\u30EC\u30B9",ipv6:"IPv6\u30A2\u30C9\u30EC\u30B9",cidrv4:"IPv4\u7BC4\u56F2",cidrv6:"IPv6\u7BC4\u56F2",base64:"base64\u30A8\u30F3\u30B3\u30FC\u30C9\u6587\u5B57\u5217",base64url:"base64url\u30A8\u30F3\u30B3\u30FC\u30C9\u6587\u5B57\u5217",json_string:"JSON\u6587\u5B57\u5217",e164:"E.164\u756A\u53F7",jwt:"JWT",template_literal:"\u5165\u529B\u5024"},e={nan:"NaN",number:"\u6570\u5024",array:"\u914D\u5217"};return(i)=>{switch(i.code){case"invalid_type":{let _=e[i.expected]??i.expected,c=S(i.input),u=e[c]??c;if(/^[A-Z]/.test(i.expected))return`\u7121\u52B9\u306A\u5165\u529B: instanceof ${i.expected}\u304C\u671F\u5F85\u3055\u308C\u307E\u3057\u305F\u304C\u3001${u}\u304C\u5165\u529B\u3055\u308C\u307E\u3057\u305F`;return`\u7121\u52B9\u306A\u5165\u529B: ${_}\u304C\u671F\u5F85\u3055\u308C\u307E\u3057\u305F\u304C\u3001${u}\u304C\u5165\u529B\u3055\u308C\u307E\u3057\u305F`}case"invalid_value":if(i.values.length===1)return`\u7121\u52B9\u306A\u5165\u529B: ${z(i.values[0])}\u304C\u671F\u5F85\u3055\u308C\u307E\u3057\u305F`;return`\u7121\u52B9\u306A\u9078\u629E: ${h(i.values,"\u3001")}\u306E\u3044\u305A\u308C\u304B\u3067\u3042\u308B\u5FC5\u8981\u304C\u3042\u308A\u307E\u3059`;case"too_big":{let _=i.inclusive?"\u4EE5\u4E0B\u3067\u3042\u308B":"\u3088\u308A\u5C0F\u3055\u3044",c=n(i.origin);if(c)return`\u5927\u304D\u3059\u304E\u308B\u5024: ${i.origin??"\u5024"}\u306F${i.maximum.toString()}${c.unit??"\u8981\u7D20"}${_}\u5FC5\u8981\u304C\u3042\u308A\u307E\u3059`;return`\u5927\u304D\u3059\u304E\u308B\u5024: ${i.origin??"\u5024"}\u306F${i.maximum.toString()}${_}\u5FC5\u8981\u304C\u3042\u308A\u307E\u3059`}case"too_small":{let _=i.inclusive?"\u4EE5\u4E0A\u3067\u3042\u308B":"\u3088\u308A\u5927\u304D\u3044",c=n(i.origin);if(c)return`\u5C0F\u3055\u3059\u304E\u308B\u5024: ${i.origin}\u306F${i.minimum.toString()}${c.unit}${_}\u5FC5\u8981\u304C\u3042\u308A\u307E\u3059`;return`\u5C0F\u3055\u3059\u304E\u308B\u5024: ${i.origin}\u306F${i.minimum.toString()}${_}\u5FC5\u8981\u304C\u3042\u308A\u307E\u3059`}case"invalid_format":{let _=i;if(_.format==="starts_with")return`\u7121\u52B9\u306A\u6587\u5B57\u5217: "${_.prefix}"\u3067\u59CB\u307E\u308B\u5FC5\u8981\u304C\u3042\u308A\u307E\u3059`;if(_.format==="ends_with")return`\u7121\u52B9\u306A\u6587\u5B57\u5217: "${_.suffix}"\u3067\u7D42\u308F\u308B\u5FC5\u8981\u304C\u3042\u308A\u307E\u3059`;if(_.format==="includes")return`\u7121\u52B9\u306A\u6587\u5B57\u5217: "${_.includes}"\u3092\u542B\u3080\u5FC5\u8981\u304C\u3042\u308A\u307E\u3059`;if(_.format==="regex")return`\u7121\u52B9\u306A\u6587\u5B57\u5217: \u30D1\u30BF\u30FC\u30F3${_.pattern}\u306B\u4E00\u81F4\u3059\u308B\u5FC5\u8981\u304C\u3042\u308A\u307E\u3059`;return`\u7121\u52B9\u306A${t[_.format]??i.format}`}case"not_multiple_of":return`\u7121\u52B9\u306A\u6570\u5024: ${i.divisor}\u306E\u500D\u6570\u3067\u3042\u308B\u5FC5\u8981\u304C\u3042\u308A\u307E\u3059`;case"unrecognized_keys":return`\u8A8D\u8B58\u3055\u308C\u3066\u3044\u306A\u3044\u30AD\u30FC${i.keys.length>1?"\u7FA4":""}: ${h(i.keys,"\u3001")}`;case"invalid_key":return`${i.origin}\u5185\u306E\u7121\u52B9\u306A\u30AD\u30FC`;case"invalid_union":return"\u7121\u52B9\u306A\u5165\u529B";case"invalid_element":return`${i.origin}\u5185\u306E\u7121\u52B9\u306A\u5024`;default:return"\u7121\u52B9\u306A\u5165\u529B"}}};var xO=N(()=>{G()});function Gb(){return{localeError:oW()}}var oW=()=>{let r={string:{unit:"\u10E1\u10D8\u10DB\u10D1\u10DD\u10DA\u10DD",verb:"\u10E3\u10DC\u10D3\u10D0 \u10E8\u10D4\u10D8\u10EA\u10D0\u10D5\u10D3\u10D4\u10E1"},file:{unit:"\u10D1\u10D0\u10D8\u10E2\u10D8",verb:"\u10E3\u10DC\u10D3\u10D0 \u10E8\u10D4\u10D8\u10EA\u10D0\u10D5\u10D3\u10D4\u10E1"},array:{unit:"\u10D4\u10DA\u10D4\u10DB\u10D4\u10DC\u10E2\u10D8",verb:"\u10E3\u10DC\u10D3\u10D0 \u10E8\u10D4\u10D8\u10EA\u10D0\u10D5\u10D3\u10D4\u10E1"},set:{unit:"\u10D4\u10DA\u10D4\u10DB\u10D4\u10DC\u10E2\u10D8",verb:"\u10E3\u10DC\u10D3\u10D0 \u10E8\u10D4\u10D8\u10EA\u10D0\u10D5\u10D3\u10D4\u10E1"}};function n(i){return r[i]??null}let t={regex:"\u10E8\u10D4\u10E7\u10D5\u10D0\u10DC\u10D0",email:"\u10D4\u10DA-\u10E4\u10DD\u10E1\u10E2\u10D8\u10E1 \u10DB\u10D8\u10E1\u10D0\u10DB\u10D0\u10E0\u10D7\u10D8",url:"URL",emoji:"\u10D4\u10DB\u10DD\u10EF\u10D8",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"\u10D7\u10D0\u10E0\u10D8\u10E6\u10D8-\u10D3\u10E0\u10DD",date:"\u10D7\u10D0\u10E0\u10D8\u10E6\u10D8",time:"\u10D3\u10E0\u10DD",duration:"\u10EE\u10D0\u10DC\u10D2\u10E0\u10EB\u10DA\u10D8\u10D5\u10DD\u10D1\u10D0",ipv4:"IPv4 \u10DB\u10D8\u10E1\u10D0\u10DB\u10D0\u10E0\u10D7\u10D8",ipv6:"IPv6 \u10DB\u10D8\u10E1\u10D0\u10DB\u10D0\u10E0\u10D7\u10D8",cidrv4:"IPv4 \u10D3\u10D8\u10D0\u10DE\u10D0\u10D6\u10DD\u10DC\u10D8",cidrv6:"IPv6 \u10D3\u10D8\u10D0\u10DE\u10D0\u10D6\u10DD\u10DC\u10D8",base64:"base64-\u10D9\u10DD\u10D3\u10D8\u10E0\u10D4\u10D1\u10E3\u10DA\u10D8 \u10E1\u10E2\u10E0\u10D8\u10DC\u10D2\u10D8",base64url:"base64url-\u10D9\u10DD\u10D3\u10D8\u10E0\u10D4\u10D1\u10E3\u10DA\u10D8 \u10E1\u10E2\u10E0\u10D8\u10DC\u10D2\u10D8",json_string:"JSON \u10E1\u10E2\u10E0\u10D8\u10DC\u10D2\u10D8",e164:"E.164 \u10DC\u10DD\u10DB\u10D4\u10E0\u10D8",jwt:"JWT",template_literal:"\u10E8\u10D4\u10E7\u10D5\u10D0\u10DC\u10D0"},e={nan:"NaN",number:"\u10E0\u10D8\u10EA\u10EE\u10D5\u10D8",string:"\u10E1\u10E2\u10E0\u10D8\u10DC\u10D2\u10D8",boolean:"\u10D1\u10E3\u10DA\u10D4\u10D0\u10DC\u10D8",function:"\u10E4\u10E3\u10DC\u10E5\u10EA\u10D8\u10D0",array:"\u10DB\u10D0\u10E1\u10D8\u10D5\u10D8"};return(i)=>{switch(i.code){case"invalid_type":{let _=e[i.expected]??i.expected,c=S(i.input),u=e[c]??c;if(/^[A-Z]/.test(i.expected))return`\u10D0\u10E0\u10D0\u10E1\u10EC\u10DD\u10E0\u10D8 \u10E8\u10D4\u10E7\u10D5\u10D0\u10DC\u10D0: \u10DB\u10DD\u10E1\u10D0\u10DA\u10DD\u10D3\u10DC\u10D4\u10DA\u10D8 instanceof ${i.expected}, \u10DB\u10D8\u10E6\u10D4\u10D1\u10E3\u10DA\u10D8 ${u}`;return`\u10D0\u10E0\u10D0\u10E1\u10EC\u10DD\u10E0\u10D8 \u10E8\u10D4\u10E7\u10D5\u10D0\u10DC\u10D0: \u10DB\u10DD\u10E1\u10D0\u10DA\u10DD\u10D3\u10DC\u10D4\u10DA\u10D8 ${_}, \u10DB\u10D8\u10E6\u10D4\u10D1\u10E3\u10DA\u10D8 ${u}`}case"invalid_value":if(i.values.length===1)return`\u10D0\u10E0\u10D0\u10E1\u10EC\u10DD\u10E0\u10D8 \u10E8\u10D4\u10E7\u10D5\u10D0\u10DC\u10D0: \u10DB\u10DD\u10E1\u10D0\u10DA\u10DD\u10D3\u10DC\u10D4\u10DA\u10D8 ${z(i.values[0])}`;return`\u10D0\u10E0\u10D0\u10E1\u10EC\u10DD\u10E0\u10D8 \u10D5\u10D0\u10E0\u10D8\u10D0\u10DC\u10E2\u10D8: \u10DB\u10DD\u10E1\u10D0\u10DA\u10DD\u10D3\u10DC\u10D4\u10DA\u10D8\u10D0 \u10D4\u10E0\u10D7-\u10D4\u10E0\u10D7\u10D8 ${h(i.values,"|")}-\u10D3\u10D0\u10DC`;case"too_big":{let _=i.inclusive?"<=":"<",c=n(i.origin);if(c)return`\u10D6\u10D4\u10D3\u10DB\u10D4\u10E2\u10D0\u10D3 \u10D3\u10D8\u10D3\u10D8: \u10DB\u10DD\u10E1\u10D0\u10DA\u10DD\u10D3\u10DC\u10D4\u10DA\u10D8 ${i.origin??"\u10DB\u10DC\u10D8\u10E8\u10D5\u10DC\u10D4\u10DA\u10DD\u10D1\u10D0"} ${c.verb} ${_}${i.maximum.toString()} ${c.unit}`;return`\u10D6\u10D4\u10D3\u10DB\u10D4\u10E2\u10D0\u10D3 \u10D3\u10D8\u10D3\u10D8: \u10DB\u10DD\u10E1\u10D0\u10DA\u10DD\u10D3\u10DC\u10D4\u10DA\u10D8 ${i.origin??"\u10DB\u10DC\u10D8\u10E8\u10D5\u10DC\u10D4\u10DA\u10DD\u10D1\u10D0"} \u10D8\u10E7\u10DD\u10E1 ${_}${i.maximum.toString()}`}case"too_small":{let _=i.inclusive?">=":">",c=n(i.origin);if(c)return`\u10D6\u10D4\u10D3\u10DB\u10D4\u10E2\u10D0\u10D3 \u10DE\u10D0\u10E2\u10D0\u10E0\u10D0: \u10DB\u10DD\u10E1\u10D0\u10DA\u10DD\u10D3\u10DC\u10D4\u10DA\u10D8 ${i.origin} ${c.verb} ${_}${i.minimum.toString()} ${c.unit}`;return`\u10D6\u10D4\u10D3\u10DB\u10D4\u10E2\u10D0\u10D3 \u10DE\u10D0\u10E2\u10D0\u10E0\u10D0: \u10DB\u10DD\u10E1\u10D0\u10DA\u10DD\u10D3\u10DC\u10D4\u10DA\u10D8 ${i.origin} \u10D8\u10E7\u10DD\u10E1 ${_}${i.minimum.toString()}`}case"invalid_format":{let _=i;if(_.format==="starts_with")return`\u10D0\u10E0\u10D0\u10E1\u10EC\u10DD\u10E0\u10D8 \u10E1\u10E2\u10E0\u10D8\u10DC\u10D2\u10D8: \u10E3\u10DC\u10D3\u10D0 \u10D8\u10EC\u10E7\u10D4\u10D1\u10DD\u10D3\u10D4\u10E1 "${_.prefix}"-\u10D8\u10D7`;if(_.format==="ends_with")return`\u10D0\u10E0\u10D0\u10E1\u10EC\u10DD\u10E0\u10D8 \u10E1\u10E2\u10E0\u10D8\u10DC\u10D2\u10D8: \u10E3\u10DC\u10D3\u10D0 \u10DB\u10D7\u10D0\u10D5\u10E0\u10D3\u10D4\u10D1\u10DD\u10D3\u10D4\u10E1 "${_.suffix}"-\u10D8\u10D7`;if(_.format==="includes")return`\u10D0\u10E0\u10D0\u10E1\u10EC\u10DD\u10E0\u10D8 \u10E1\u10E2\u10E0\u10D8\u10DC\u10D2\u10D8: \u10E3\u10DC\u10D3\u10D0 \u10E8\u10D4\u10D8\u10EA\u10D0\u10D5\u10D3\u10D4\u10E1 "${_.includes}"-\u10E1`;if(_.format==="regex")return`\u10D0\u10E0\u10D0\u10E1\u10EC\u10DD\u10E0\u10D8 \u10E1\u10E2\u10E0\u10D8\u10DC\u10D2\u10D8: \u10E3\u10DC\u10D3\u10D0 \u10E8\u10D4\u10D4\u10E1\u10D0\u10D1\u10D0\u10DB\u10D4\u10D1\u10DD\u10D3\u10D4\u10E1 \u10E8\u10D0\u10D1\u10DA\u10DD\u10DC\u10E1 ${_.pattern}`;return`\u10D0\u10E0\u10D0\u10E1\u10EC\u10DD\u10E0\u10D8 ${t[_.format]??i.format}`}case"not_multiple_of":return`\u10D0\u10E0\u10D0\u10E1\u10EC\u10DD\u10E0\u10D8 \u10E0\u10D8\u10EA\u10EE\u10D5\u10D8: \u10E3\u10DC\u10D3\u10D0 \u10D8\u10E7\u10DD\u10E1 ${i.divisor}-\u10D8\u10E1 \u10EF\u10D4\u10E0\u10D0\u10D3\u10D8`;case"unrecognized_keys":return`\u10E3\u10EA\u10DC\u10DD\u10D1\u10D8 \u10D2\u10D0\u10E1\u10D0\u10E6\u10D4\u10D1${i.keys.length>1?"\u10D4\u10D1\u10D8":"\u10D8"}: ${h(i.keys,", ")}`;case"invalid_key":return`\u10D0\u10E0\u10D0\u10E1\u10EC\u10DD\u10E0\u10D8 \u10D2\u10D0\u10E1\u10D0\u10E6\u10D4\u10D1\u10D8 ${i.origin}-\u10E8\u10D8`;case"invalid_union":return"\u10D0\u10E0\u10D0\u10E1\u10EC\u10DD\u10E0\u10D8 \u10E8\u10D4\u10E7\u10D5\u10D0\u10DC\u10D0";case"invalid_element":return`\u10D0\u10E0\u10D0\u10E1\u10EC\u10DD\u10E0\u10D8 \u10DB\u10DC\u10D8\u10E8\u10D5\u10DC\u10D4\u10DA\u10DD\u10D1\u10D0 ${i.origin}-\u10E8\u10D8`;default:return"\u10D0\u10E0\u10D0\u10E1\u10EC\u10DD\u10E0\u10D8 \u10E8\u10D4\u10E7\u10D5\u10D0\u10DC\u10D0"}}};var pO=N(()=>{G()});function U_(){return{localeError:$W()}}var $W=()=>{let r={string:{unit:"\u178F\u17BD\u17A2\u1780\u17D2\u179F\u179A",verb:"\u1782\u17BD\u179A\u1798\u17B6\u1793"},file:{unit:"\u1794\u17C3",verb:"\u1782\u17BD\u179A\u1798\u17B6\u1793"},array:{unit:"\u1792\u17B6\u178F\u17BB",verb:"\u1782\u17BD\u179A\u1798\u17B6\u1793"},set:{unit:"\u1792\u17B6\u178F\u17BB",verb:"\u1782\u17BD\u179A\u1798\u17B6\u1793"}};function n(i){return r[i]??null}let t={regex:"\u1791\u17B7\u1793\u17D2\u1793\u1793\u17D0\u1799\u1794\u1789\u17D2\u1785\u17BC\u179B",email:"\u17A2\u17B6\u179F\u1799\u178A\u17D2\u178B\u17B6\u1793\u17A2\u17CA\u17B8\u1798\u17C2\u179B",url:"URL",emoji:"\u179F\u1789\u17D2\u1789\u17B6\u17A2\u17B6\u179A\u1798\u17D2\u1798\u178E\u17CD",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"\u1780\u17B6\u179B\u1794\u179A\u17B7\u1785\u17D2\u1786\u17C1\u1791 \u1793\u17B7\u1784\u1798\u17C9\u17C4\u1784 ISO",date:"\u1780\u17B6\u179B\u1794\u179A\u17B7\u1785\u17D2\u1786\u17C1\u1791 ISO",time:"\u1798\u17C9\u17C4\u1784 ISO",duration:"\u179A\u1799\u17C8\u1796\u17C1\u179B ISO",ipv4:"\u17A2\u17B6\u179F\u1799\u178A\u17D2\u178B\u17B6\u1793 IPv4",ipv6:"\u17A2\u17B6\u179F\u1799\u178A\u17D2\u178B\u17B6\u1793 IPv6",cidrv4:"\u178A\u17C2\u1793\u17A2\u17B6\u179F\u1799\u178A\u17D2\u178B\u17B6\u1793 IPv4",cidrv6:"\u178A\u17C2\u1793\u17A2\u17B6\u179F\u1799\u178A\u17D2\u178B\u17B6\u1793 IPv6",base64:"\u1781\u17D2\u179F\u17C2\u17A2\u1780\u17D2\u179F\u179A\u17A2\u17CA\u17B7\u1780\u17BC\u178A base64",base64url:"\u1781\u17D2\u179F\u17C2\u17A2\u1780\u17D2\u179F\u179A\u17A2\u17CA\u17B7\u1780\u17BC\u178A base64url",json_string:"\u1781\u17D2\u179F\u17C2\u17A2\u1780\u17D2\u179F\u179A JSON",e164:"\u179B\u17C1\u1781 E.164",jwt:"JWT",template_literal:"\u1791\u17B7\u1793\u17D2\u1793\u1793\u17D0\u1799\u1794\u1789\u17D2\u1785\u17BC\u179B"},e={nan:"NaN",number:"\u179B\u17C1\u1781",array:"\u17A2\u17B6\u179A\u17C1 (Array)",null:"\u1782\u17D2\u1798\u17B6\u1793\u178F\u1798\u17D2\u179B\u17C3 (null)"};return(i)=>{switch(i.code){case"invalid_type":{let _=e[i.expected]??i.expected,c=S(i.input),u=e[c]??c;if(/^[A-Z]/.test(i.expected))return`\u1791\u17B7\u1793\u17D2\u1793\u1793\u17D0\u1799\u1794\u1789\u17D2\u1785\u17BC\u179B\u1798\u17B7\u1793\u178F\u17D2\u179A\u17B9\u1798\u178F\u17D2\u179A\u17BC\u179C\u17D6 \u178F\u17D2\u179A\u17BC\u179C\u1780\u17B6\u179A instanceof ${i.expected} \u1794\u17C9\u17BB\u1793\u17D2\u178F\u17C2\u1791\u1791\u17BD\u179B\u1794\u17B6\u1793 ${u}`;return`\u1791\u17B7\u1793\u17D2\u1793\u1793\u17D0\u1799\u1794\u1789\u17D2\u1785\u17BC\u179B\u1798\u17B7\u1793\u178F\u17D2\u179A\u17B9\u1798\u178F\u17D2\u179A\u17BC\u179C\u17D6 \u178F\u17D2\u179A\u17BC\u179C\u1780\u17B6\u179A ${_} \u1794\u17C9\u17BB\u1793\u17D2\u178F\u17C2\u1791\u1791\u17BD\u179B\u1794\u17B6\u1793 ${u}`}case"invalid_value":if(i.values.length===1)return`\u1791\u17B7\u1793\u17D2\u1793\u1793\u17D0\u1799\u1794\u1789\u17D2\u1785\u17BC\u179B\u1798\u17B7\u1793\u178F\u17D2\u179A\u17B9\u1798\u178F\u17D2\u179A\u17BC\u179C\u17D6 \u178F\u17D2\u179A\u17BC\u179C\u1780\u17B6\u179A ${z(i.values[0])}`;return`\u1787\u1798\u17D2\u179A\u17BE\u179F\u1798\u17B7\u1793\u178F\u17D2\u179A\u17B9\u1798\u178F\u17D2\u179A\u17BC\u179C\u17D6 \u178F\u17D2\u179A\u17BC\u179C\u1787\u17B6\u1798\u17BD\u1799\u1780\u17D2\u1793\u17BB\u1784\u1785\u17C6\u178E\u17C4\u1798 ${h(i.values,"|")}`;case"too_big":{let _=i.inclusive?"<=":"<",c=n(i.origin);if(c)return`\u1792\u17C6\u1796\u17C1\u1780\u17D6 \u178F\u17D2\u179A\u17BC\u179C\u1780\u17B6\u179A ${i.origin??"\u178F\u1798\u17D2\u179B\u17C3"} ${_} ${i.maximum.toString()} ${c.unit??"\u1792\u17B6\u178F\u17BB"}`;return`\u1792\u17C6\u1796\u17C1\u1780\u17D6 \u178F\u17D2\u179A\u17BC\u179C\u1780\u17B6\u179A ${i.origin??"\u178F\u1798\u17D2\u179B\u17C3"} ${_} ${i.maximum.toString()}`}case"too_small":{let _=i.inclusive?">=":">",c=n(i.origin);if(c)return`\u178F\u17BC\u1785\u1796\u17C1\u1780\u17D6 \u178F\u17D2\u179A\u17BC\u179C\u1780\u17B6\u179A ${i.origin} ${_} ${i.minimum.toString()} ${c.unit}`;return`\u178F\u17BC\u1785\u1796\u17C1\u1780\u17D6 \u178F\u17D2\u179A\u17BC\u179C\u1780\u17B6\u179A ${i.origin} ${_} ${i.minimum.toString()}`}case"invalid_format":{let _=i;if(_.format==="starts_with")return`\u1781\u17D2\u179F\u17C2\u17A2\u1780\u17D2\u179F\u179A\u1798\u17B7\u1793\u178F\u17D2\u179A\u17B9\u1798\u178F\u17D2\u179A\u17BC\u179C\u17D6 \u178F\u17D2\u179A\u17BC\u179C\u1785\u17B6\u1794\u17CB\u1795\u17D2\u178F\u17BE\u1798\u178A\u17C4\u1799 "${_.prefix}"`;if(_.format==="ends_with")return`\u1781\u17D2\u179F\u17C2\u17A2\u1780\u17D2\u179F\u179A\u1798\u17B7\u1793\u178F\u17D2\u179A\u17B9\u1798\u178F\u17D2\u179A\u17BC\u179C\u17D6 \u178F\u17D2\u179A\u17BC\u179C\u1794\u1789\u17D2\u1785\u1794\u17CB\u178A\u17C4\u1799 "${_.suffix}"`;if(_.format==="includes")return`\u1781\u17D2\u179F\u17C2\u17A2\u1780\u17D2\u179F\u179A\u1798\u17B7\u1793\u178F\u17D2\u179A\u17B9\u1798\u178F\u17D2\u179A\u17BC\u179C\u17D6 \u178F\u17D2\u179A\u17BC\u179C\u1798\u17B6\u1793 "${_.includes}"`;if(_.format==="regex")return`\u1781\u17D2\u179F\u17C2\u17A2\u1780\u17D2\u179F\u179A\u1798\u17B7\u1793\u178F\u17D2\u179A\u17B9\u1798\u178F\u17D2\u179A\u17BC\u179C\u17D6 \u178F\u17D2\u179A\u17BC\u179C\u178F\u17C2\u1795\u17D2\u1782\u17BC\u1795\u17D2\u1782\u1784\u1793\u17B9\u1784\u1791\u1798\u17D2\u179A\u1784\u17CB\u178A\u17C2\u179B\u1794\u17B6\u1793\u1780\u17C6\u178E\u178F\u17CB ${_.pattern}`;return`\u1798\u17B7\u1793\u178F\u17D2\u179A\u17B9\u1798\u178F\u17D2\u179A\u17BC\u179C\u17D6 ${t[_.format]??i.format}`}case"not_multiple_of":return`\u179B\u17C1\u1781\u1798\u17B7\u1793\u178F\u17D2\u179A\u17B9\u1798\u178F\u17D2\u179A\u17BC\u179C\u17D6 \u178F\u17D2\u179A\u17BC\u179C\u178F\u17C2\u1787\u17B6\u1796\u17A0\u17BB\u1782\u17BB\u178E\u1793\u17C3 ${i.divisor}`;case"unrecognized_keys":return`\u179A\u1780\u1783\u17BE\u1789\u179F\u17C4\u1798\u17B7\u1793\u179F\u17D2\u1782\u17B6\u179B\u17CB\u17D6 ${h(i.keys,", ")}`;case"invalid_key":return`\u179F\u17C4\u1798\u17B7\u1793\u178F\u17D2\u179A\u17B9\u1798\u178F\u17D2\u179A\u17BC\u179C\u1793\u17C5\u1780\u17D2\u1793\u17BB\u1784 ${i.origin}`;case"invalid_union":return"\u1791\u17B7\u1793\u17D2\u1793\u1793\u17D0\u1799\u1798\u17B7\u1793\u178F\u17D2\u179A\u17B9\u1798\u178F\u17D2\u179A\u17BC\u179C";case"invalid_element":return`\u1791\u17B7\u1793\u17D2\u1793\u1793\u17D0\u1799\u1798\u17B7\u1793\u178F\u17D2\u179A\u17B9\u1798\u178F\u17D2\u179A\u17BC\u179C\u1793\u17C5\u1780\u17D2\u1793\u17BB\u1784 ${i.origin}`;default:return"\u1791\u17B7\u1793\u17D2\u1793\u1793\u17D0\u1799\u1798\u17B7\u1793\u178F\u17D2\u179A\u17B9\u1798\u178F\u17D2\u179A\u17BC\u179C"}}};var Vb=N(()=>{G()});function Fb(){return U_()}var sO=N(()=>{Vb()});function lb(){return{localeError:gW()}}var gW=()=>{let r={string:{unit:"\uBB38\uC790",verb:"to have"},file:{unit:"\uBC14\uC774\uD2B8",verb:"to have"},array:{unit:"\uAC1C",verb:"to have"},set:{unit:"\uAC1C",verb:"to have"}};function n(i){return r[i]??null}let t={regex:"\uC785\uB825",email:"\uC774\uBA54\uC77C \uC8FC\uC18C",url:"URL",emoji:"\uC774\uBAA8\uC9C0",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ISO \uB0A0\uC9DC\uC2DC\uAC04",date:"ISO \uB0A0\uC9DC",time:"ISO \uC2DC\uAC04",duration:"ISO \uAE30\uAC04",ipv4:"IPv4 \uC8FC\uC18C",ipv6:"IPv6 \uC8FC\uC18C",cidrv4:"IPv4 \uBC94\uC704",cidrv6:"IPv6 \uBC94\uC704",base64:"base64 \uC778\uCF54\uB529 \uBB38\uC790\uC5F4",base64url:"base64url \uC778\uCF54\uB529 \uBB38\uC790\uC5F4",json_string:"JSON \uBB38\uC790\uC5F4",e164:"E.164 \uBC88\uD638",jwt:"JWT",template_literal:"\uC785\uB825"},e={nan:"NaN"};return(i)=>{switch(i.code){case"invalid_type":{let _=e[i.expected]??i.expected,c=S(i.input),u=e[c]??c;if(/^[A-Z]/.test(i.expected))return`\uC798\uBABB\uB41C \uC785\uB825: \uC608\uC0C1 \uD0C0\uC785\uC740 instanceof ${i.expected}, \uBC1B\uC740 \uD0C0\uC785\uC740 ${u}\uC785\uB2C8\uB2E4`;return`\uC798\uBABB\uB41C \uC785\uB825: \uC608\uC0C1 \uD0C0\uC785\uC740 ${_}, \uBC1B\uC740 \uD0C0\uC785\uC740 ${u}\uC785\uB2C8\uB2E4`}case"invalid_value":if(i.values.length===1)return`\uC798\uBABB\uB41C \uC785\uB825: \uAC12\uC740 ${z(i.values[0])} \uC774\uC5B4\uC57C \uD569\uB2C8\uB2E4`;return`\uC798\uBABB\uB41C \uC635\uC158: ${h(i.values,"\uB610\uB294 ")} \uC911 \uD558\uB098\uC5EC\uC57C \uD569\uB2C8\uB2E4`;case"too_big":{let _=i.inclusive?"\uC774\uD558":"\uBBF8\uB9CC",c=_==="\uBBF8\uB9CC"?"\uC774\uC5B4\uC57C \uD569\uB2C8\uB2E4":"\uC5EC\uC57C \uD569\uB2C8\uB2E4",u=n(i.origin),o=u?.unit??"\uC694\uC18C";if(u)return`${i.origin??"\uAC12"}\uC774 \uB108\uBB34 \uD07D\uB2C8\uB2E4: ${i.maximum.toString()}${o} ${_}${c}`;return`${i.origin??"\uAC12"}\uC774 \uB108\uBB34 \uD07D\uB2C8\uB2E4: ${i.maximum.toString()} ${_}${c}`}case"too_small":{let _=i.inclusive?"\uC774\uC0C1":"\uCD08\uACFC",c=_==="\uC774\uC0C1"?"\uC774\uC5B4\uC57C \uD569\uB2C8\uB2E4":"\uC5EC\uC57C \uD569\uB2C8\uB2E4",u=n(i.origin),o=u?.unit??"\uC694\uC18C";if(u)return`${i.origin??"\uAC12"}\uC774 \uB108\uBB34 \uC791\uC2B5\uB2C8\uB2E4: ${i.minimum.toString()}${o} ${_}${c}`;return`${i.origin??"\uAC12"}\uC774 \uB108\uBB34 \uC791\uC2B5\uB2C8\uB2E4: ${i.minimum.toString()} ${_}${c}`}case"invalid_format":{let _=i;if(_.format==="starts_with")return`\uC798\uBABB\uB41C \uBB38\uC790\uC5F4: "${_.prefix}"(\uC73C)\uB85C \uC2DC\uC791\uD574\uC57C \uD569\uB2C8\uB2E4`;if(_.format==="ends_with")return`\uC798\uBABB\uB41C \uBB38\uC790\uC5F4: "${_.suffix}"(\uC73C)\uB85C \uB05D\uB098\uC57C \uD569\uB2C8\uB2E4`;if(_.format==="includes")return`\uC798\uBABB\uB41C \uBB38\uC790\uC5F4: "${_.includes}"\uC744(\uB97C) \uD3EC\uD568\uD574\uC57C \uD569\uB2C8\uB2E4`;if(_.format==="regex")return`\uC798\uBABB\uB41C \uBB38\uC790\uC5F4: \uC815\uADDC\uC2DD ${_.pattern} \uD328\uD134\uACFC \uC77C\uCE58\uD574\uC57C \uD569\uB2C8\uB2E4`;return`\uC798\uBABB\uB41C ${t[_.format]??i.format}`}case"not_multiple_of":return`\uC798\uBABB\uB41C \uC22B\uC790: ${i.divisor}\uC758 \uBC30\uC218\uC5EC\uC57C \uD569\uB2C8\uB2E4`;case"unrecognized_keys":return`\uC778\uC2DD\uD560 \uC218 \uC5C6\uB294 \uD0A4: ${h(i.keys,", ")}`;case"invalid_key":return`\uC798\uBABB\uB41C \uD0A4: ${i.origin}`;case"invalid_union":return"\uC798\uBABB\uB41C \uC785\uB825";case"invalid_element":return`\uC798\uBABB\uB41C \uAC12: ${i.origin}`;default:return"\uC798\uBABB\uB41C \uC785\uB825"}}};var rU=N(()=>{G()});function nU(r){let n=Math.abs(r),t=n%10,e=n%100;if(e>=11&&e<=19||t===0)return"many";if(t===1)return"one";return"few"}function vb(){return{localeError:dW()}}var h_=(r)=>{return r.charAt(0).toUpperCase()+r.slice(1)},dW=()=>{let r={string:{unit:{one:"simbolis",few:"simboliai",many:"simboli\u0173"},verb:{smaller:{inclusive:"turi b\u016Bti ne ilgesn\u0117 kaip",notInclusive:"turi b\u016Bti trumpesn\u0117 kaip"},bigger:{inclusive:"turi b\u016Bti ne trumpesn\u0117 kaip",notInclusive:"turi b\u016Bti ilgesn\u0117 kaip"}}},file:{unit:{one:"baitas",few:"baitai",many:"bait\u0173"},verb:{smaller:{inclusive:"turi b\u016Bti ne didesnis kaip",notInclusive:"turi b\u016Bti ma\u017Eesnis kaip"},bigger:{inclusive:"turi b\u016Bti ne ma\u017Eesnis kaip",notInclusive:"turi b\u016Bti didesnis kaip"}}},array:{unit:{one:"element\u0105",few:"elementus",many:"element\u0173"},verb:{smaller:{inclusive:"turi tur\u0117ti ne daugiau kaip",notInclusive:"turi tur\u0117ti ma\u017Eiau kaip"},bigger:{inclusive:"turi tur\u0117ti ne ma\u017Eiau kaip",notInclusive:"turi tur\u0117ti daugiau kaip"}}},set:{unit:{one:"element\u0105",few:"elementus",many:"element\u0173"},verb:{smaller:{inclusive:"turi tur\u0117ti ne daugiau kaip",notInclusive:"turi tur\u0117ti ma\u017Eiau kaip"},bigger:{inclusive:"turi tur\u0117ti ne ma\u017Eiau kaip",notInclusive:"turi tur\u0117ti daugiau kaip"}}}};function n(i,_,c,u){let o=r[i]??null;if(o===null)return o;return{unit:o.unit[_],verb:o.verb[u][c?"inclusive":"notInclusive"]}}let t={regex:"\u012Fvestis",email:"el. pa\u0161to adresas",url:"URL",emoji:"jaustukas",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ISO data ir laikas",date:"ISO data",time:"ISO laikas",duration:"ISO trukm\u0117",ipv4:"IPv4 adresas",ipv6:"IPv6 adresas",cidrv4:"IPv4 tinklo prefiksas (CIDR)",cidrv6:"IPv6 tinklo prefiksas (CIDR)",base64:"base64 u\u017Ekoduota eilut\u0117",base64url:"base64url u\u017Ekoduota eilut\u0117",json_string:"JSON eilut\u0117",e164:"E.164 numeris",jwt:"JWT",template_literal:"\u012Fvestis"},e={nan:"NaN",number:"skai\u010Dius",bigint:"sveikasis skai\u010Dius",string:"eilut\u0117",boolean:"login\u0117 reik\u0161m\u0117",undefined:"neapibr\u0117\u017Eta reik\u0161m\u0117",function:"funkcija",symbol:"simbolis",array:"masyvas",object:"objektas",null:"nulin\u0117 reik\u0161m\u0117"};return(i)=>{switch(i.code){case"invalid_type":{let _=e[i.expected]??i.expected,c=S(i.input),u=e[c]??c;if(/^[A-Z]/.test(i.expected))return`Gautas tipas ${u}, o tik\u0117tasi - instanceof ${i.expected}`;return`Gautas tipas ${u}, o tik\u0117tasi - ${_}`}case"invalid_value":if(i.values.length===1)return`Privalo b\u016Bti ${z(i.values[0])}`;return`Privalo b\u016Bti vienas i\u0161 ${h(i.values,"|")} pasirinkim\u0173`;case"too_big":{let _=e[i.origin]??i.origin,c=n(i.origin,nU(Number(i.maximum)),i.inclusive??!1,"smaller");if(c?.verb)return`${h_(_??i.origin??"reik\u0161m\u0117")} ${c.verb} ${i.maximum.toString()} ${c.unit??"element\u0173"}`;let u=i.inclusive?"ne didesnis kaip":"ma\u017Eesnis kaip";return`${h_(_??i.origin??"reik\u0161m\u0117")} turi b\u016Bti ${u} ${i.maximum.toString()} ${c?.unit}`}case"too_small":{let _=e[i.origin]??i.origin,c=n(i.origin,nU(Number(i.minimum)),i.inclusive??!1,"bigger");if(c?.verb)return`${h_(_??i.origin??"reik\u0161m\u0117")} ${c.verb} ${i.minimum.toString()} ${c.unit??"element\u0173"}`;let u=i.inclusive?"ne ma\u017Eesnis kaip":"didesnis kaip";return`${h_(_??i.origin??"reik\u0161m\u0117")} turi b\u016Bti ${u} ${i.minimum.toString()} ${c?.unit}`}case"invalid_format":{let _=i;if(_.format==="starts_with")return`Eilut\u0117 privalo prasid\u0117ti "${_.prefix}"`;if(_.format==="ends_with")return`Eilut\u0117 privalo pasibaigti "${_.suffix}"`;if(_.format==="includes")return`Eilut\u0117 privalo \u012Ftraukti "${_.includes}"`;if(_.format==="regex")return`Eilut\u0117 privalo atitikti ${_.pattern}`;return`Neteisingas ${t[_.format]??i.format}`}case"not_multiple_of":return`Skai\u010Dius privalo b\u016Bti ${i.divisor} kartotinis.`;case"unrecognized_keys":return`Neatpa\u017Eint${i.keys.length>1?"i":"as"} rakt${i.keys.length>1?"ai":"as"}: ${h(i.keys,", ")}`;case"invalid_key":return"Rastas klaidingas raktas";case"invalid_union":return"Klaidinga \u012Fvestis";case"invalid_element":{let _=e[i.origin]??i.origin;return`${h_(_??i.origin??"reik\u0161m\u0117")} turi klaiding\u0105 \u012Fvest\u012F`}default:return"Klaidinga \u012Fvestis"}}};var tU=N(()=>{G()});function Yb(){return{localeError:fW()}}var fW=()=>{let r={string:{unit:"\u0437\u043D\u0430\u0446\u0438",verb:"\u0434\u0430 \u0438\u043C\u0430\u0430\u0442"},file:{unit:"\u0431\u0430\u0458\u0442\u0438",verb:"\u0434\u0430 \u0438\u043C\u0430\u0430\u0442"},array:{unit:"\u0441\u0442\u0430\u0432\u043A\u0438",verb:"\u0434\u0430 \u0438\u043C\u0430\u0430\u0442"},set:{unit:"\u0441\u0442\u0430\u0432\u043A\u0438",verb:"\u0434\u0430 \u0438\u043C\u0430\u0430\u0442"}};function n(i){return r[i]??null}let t={regex:"\u0432\u043D\u0435\u0441",email:"\u0430\u0434\u0440\u0435\u0441\u0430 \u043D\u0430 \u0435-\u043F\u043E\u0448\u0442\u0430",url:"URL",emoji:"\u0435\u043C\u043E\u045F\u0438",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ISO \u0434\u0430\u0442\u0443\u043C \u0438 \u0432\u0440\u0435\u043C\u0435",date:"ISO \u0434\u0430\u0442\u0443\u043C",time:"ISO \u0432\u0440\u0435\u043C\u0435",duration:"ISO \u0432\u0440\u0435\u043C\u0435\u0442\u0440\u0430\u0435\u045A\u0435",ipv4:"IPv4 \u0430\u0434\u0440\u0435\u0441\u0430",ipv6:"IPv6 \u0430\u0434\u0440\u0435\u0441\u0430",cidrv4:"IPv4 \u043E\u043F\u0441\u0435\u0433",cidrv6:"IPv6 \u043E\u043F\u0441\u0435\u0433",base64:"base64-\u0435\u043D\u043A\u043E\u0434\u0438\u0440\u0430\u043D\u0430 \u043D\u0438\u0437\u0430",base64url:"base64url-\u0435\u043D\u043A\u043E\u0434\u0438\u0440\u0430\u043D\u0430 \u043D\u0438\u0437\u0430",json_string:"JSON \u043D\u0438\u0437\u0430",e164:"E.164 \u0431\u0440\u043E\u0458",jwt:"JWT",template_literal:"\u0432\u043D\u0435\u0441"},e={nan:"NaN",number:"\u0431\u0440\u043E\u0458",array:"\u043D\u0438\u0437\u0430"};return(i)=>{switch(i.code){case"invalid_type":{let _=e[i.expected]??i.expected,c=S(i.input),u=e[c]??c;if(/^[A-Z]/.test(i.expected))return`\u0413\u0440\u0435\u0448\u0435\u043D \u0432\u043D\u0435\u0441: \u0441\u0435 \u043E\u0447\u0435\u043A\u0443\u0432\u0430 instanceof ${i.expected}, \u043F\u0440\u0438\u043C\u0435\u043D\u043E ${u}`;return`\u0413\u0440\u0435\u0448\u0435\u043D \u0432\u043D\u0435\u0441: \u0441\u0435 \u043E\u0447\u0435\u043A\u0443\u0432\u0430 ${_}, \u043F\u0440\u0438\u043C\u0435\u043D\u043E ${u}`}case"invalid_value":if(i.values.length===1)return`Invalid input: expected ${z(i.values[0])}`;return`\u0413\u0440\u0435\u0448\u0430\u043D\u0430 \u043E\u043F\u0446\u0438\u0458\u0430: \u0441\u0435 \u043E\u0447\u0435\u043A\u0443\u0432\u0430 \u0435\u0434\u043D\u0430 ${h(i.values,"|")}`;case"too_big":{let _=i.inclusive?"<=":"<",c=n(i.origin);if(c)return`\u041F\u0440\u0435\u043C\u043D\u043E\u0433\u0443 \u0433\u043E\u043B\u0435\u043C: \u0441\u0435 \u043E\u0447\u0435\u043A\u0443\u0432\u0430 ${i.origin??"\u0432\u0440\u0435\u0434\u043D\u043E\u0441\u0442\u0430"} \u0434\u0430 \u0438\u043C\u0430 ${_}${i.maximum.toString()} ${c.unit??"\u0435\u043B\u0435\u043C\u0435\u043D\u0442\u0438"}`;return`\u041F\u0440\u0435\u043C\u043D\u043E\u0433\u0443 \u0433\u043E\u043B\u0435\u043C: \u0441\u0435 \u043E\u0447\u0435\u043A\u0443\u0432\u0430 ${i.origin??"\u0432\u0440\u0435\u0434\u043D\u043E\u0441\u0442\u0430"} \u0434\u0430 \u0431\u0438\u0434\u0435 ${_}${i.maximum.toString()}`}case"too_small":{let _=i.inclusive?">=":">",c=n(i.origin);if(c)return`\u041F\u0440\u0435\u043C\u043D\u043E\u0433\u0443 \u043C\u0430\u043B: \u0441\u0435 \u043E\u0447\u0435\u043A\u0443\u0432\u0430 ${i.origin} \u0434\u0430 \u0438\u043C\u0430 ${_}${i.minimum.toString()} ${c.unit}`;return`\u041F\u0440\u0435\u043C\u043D\u043E\u0433\u0443 \u043C\u0430\u043B: \u0441\u0435 \u043E\u0447\u0435\u043A\u0443\u0432\u0430 ${i.origin} \u0434\u0430 \u0431\u0438\u0434\u0435 ${_}${i.minimum.toString()}`}case"invalid_format":{let _=i;if(_.format==="starts_with")return`\u041D\u0435\u0432\u0430\u0436\u0435\u0447\u043A\u0430 \u043D\u0438\u0437\u0430: \u043C\u043E\u0440\u0430 \u0434\u0430 \u0437\u0430\u043F\u043E\u0447\u043D\u0443\u0432\u0430 \u0441\u043E "${_.prefix}"`;if(_.format==="ends_with")return`\u041D\u0435\u0432\u0430\u0436\u0435\u0447\u043A\u0430 \u043D\u0438\u0437\u0430: \u043C\u043E\u0440\u0430 \u0434\u0430 \u0437\u0430\u0432\u0440\u0448\u0443\u0432\u0430 \u0441\u043E "${_.suffix}"`;if(_.format==="includes")return`\u041D\u0435\u0432\u0430\u0436\u0435\u0447\u043A\u0430 \u043D\u0438\u0437\u0430: \u043C\u043E\u0440\u0430 \u0434\u0430 \u0432\u043A\u043B\u0443\u0447\u0443\u0432\u0430 "${_.includes}"`;if(_.format==="regex")return`\u041D\u0435\u0432\u0430\u0436\u0435\u0447\u043A\u0430 \u043D\u0438\u0437\u0430: \u043C\u043E\u0440\u0430 \u0434\u0430 \u043E\u0434\u0433\u043E\u0430\u0440\u0430 \u043D\u0430 \u043F\u0430\u0442\u0435\u0440\u043D\u043E\u0442 ${_.pattern}`;return`Invalid ${t[_.format]??i.format}`}case"not_multiple_of":return`\u0413\u0440\u0435\u0448\u0435\u043D \u0431\u0440\u043E\u0458: \u043C\u043E\u0440\u0430 \u0434\u0430 \u0431\u0438\u0434\u0435 \u0434\u0435\u043B\u0438\u0432 \u0441\u043E ${i.divisor}`;case"unrecognized_keys":return`${i.keys.length>1?"\u041D\u0435\u043F\u0440\u0435\u043F\u043E\u0437\u043D\u0430\u0435\u043D\u0438 \u043A\u043B\u0443\u0447\u0435\u0432\u0438":"\u041D\u0435\u043F\u0440\u0435\u043F\u043E\u0437\u043D\u0430\u0435\u043D \u043A\u043B\u0443\u0447"}: ${h(i.keys,", ")}`;case"invalid_key":return`\u0413\u0440\u0435\u0448\u0435\u043D \u043A\u043B\u0443\u0447 \u0432\u043E ${i.origin}`;case"invalid_union":return"\u0413\u0440\u0435\u0448\u0435\u043D \u0432\u043D\u0435\u0441";case"invalid_element":return`\u0413\u0440\u0435\u0448\u043D\u0430 \u0432\u0440\u0435\u0434\u043D\u043E\u0441\u0442 \u0432\u043E ${i.origin}`;default:return"\u0413\u0440\u0435\u0448\u0435\u043D \u0432\u043D\u0435\u0441"}}};var iU=N(()=>{G()});function Hb(){return{localeError:bW()}}var bW=()=>{let r={string:{unit:"aksara",verb:"mempunyai"},file:{unit:"bait",verb:"mempunyai"},array:{unit:"elemen",verb:"mempunyai"},set:{unit:"elemen",verb:"mempunyai"}};function n(i){return r[i]??null}let t={regex:"input",email:"alamat e-mel",url:"URL",emoji:"emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"tarikh masa ISO",date:"tarikh ISO",time:"masa ISO",duration:"tempoh ISO",ipv4:"alamat IPv4",ipv6:"alamat IPv6",cidrv4:"julat IPv4",cidrv6:"julat IPv6",base64:"string dikodkan base64",base64url:"string dikodkan base64url",json_string:"string JSON",e164:"nombor E.164",jwt:"JWT",template_literal:"input"},e={nan:"NaN",number:"nombor"};return(i)=>{switch(i.code){case"invalid_type":{let _=e[i.expected]??i.expected,c=S(i.input),u=e[c]??c;if(/^[A-Z]/.test(i.expected))return`Input tidak sah: dijangka instanceof ${i.expected}, diterima ${u}`;return`Input tidak sah: dijangka ${_}, diterima ${u}`}case"invalid_value":if(i.values.length===1)return`Input tidak sah: dijangka ${z(i.values[0])}`;return`Pilihan tidak sah: dijangka salah satu daripada ${h(i.values,"|")}`;case"too_big":{let _=i.inclusive?"<=":"<",c=n(i.origin);if(c)return`Terlalu besar: dijangka ${i.origin??"nilai"} ${c.verb} ${_}${i.maximum.toString()} ${c.unit??"elemen"}`;return`Terlalu besar: dijangka ${i.origin??"nilai"} adalah ${_}${i.maximum.toString()}`}case"too_small":{let _=i.inclusive?">=":">",c=n(i.origin);if(c)return`Terlalu kecil: dijangka ${i.origin} ${c.verb} ${_}${i.minimum.toString()} ${c.unit}`;return`Terlalu kecil: dijangka ${i.origin} adalah ${_}${i.minimum.toString()}`}case"invalid_format":{let _=i;if(_.format==="starts_with")return`String tidak sah: mesti bermula dengan "${_.prefix}"`;if(_.format==="ends_with")return`String tidak sah: mesti berakhir dengan "${_.suffix}"`;if(_.format==="includes")return`String tidak sah: mesti mengandungi "${_.includes}"`;if(_.format==="regex")return`String tidak sah: mesti sepadan dengan corak ${_.pattern}`;return`${t[_.format]??i.format} tidak sah`}case"not_multiple_of":return`Nombor tidak sah: perlu gandaan ${i.divisor}`;case"unrecognized_keys":return`Kunci tidak dikenali: ${h(i.keys,", ")}`;case"invalid_key":return`Kunci tidak sah dalam ${i.origin}`;case"invalid_union":return"Input tidak sah";case"invalid_element":return`Nilai tidak sah dalam ${i.origin}`;default:return"Input tidak sah"}}};var eU=N(()=>{G()});function Bb(){return{localeError:wW()}}var wW=()=>{let r={string:{unit:"tekens",verb:"heeft"},file:{unit:"bytes",verb:"heeft"},array:{unit:"elementen",verb:"heeft"},set:{unit:"elementen",verb:"heeft"}};function n(i){return r[i]??null}let t={regex:"invoer",email:"emailadres",url:"URL",emoji:"emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ISO datum en tijd",date:"ISO datum",time:"ISO tijd",duration:"ISO duur",ipv4:"IPv4-adres",ipv6:"IPv6-adres",cidrv4:"IPv4-bereik",cidrv6:"IPv6-bereik",base64:"base64-gecodeerde tekst",base64url:"base64 URL-gecodeerde tekst",json_string:"JSON string",e164:"E.164-nummer",jwt:"JWT",template_literal:"invoer"},e={nan:"NaN",number:"getal"};return(i)=>{switch(i.code){case"invalid_type":{let _=e[i.expected]??i.expected,c=S(i.input),u=e[c]??c;if(/^[A-Z]/.test(i.expected))return`Ongeldige invoer: verwacht instanceof ${i.expected}, ontving ${u}`;return`Ongeldige invoer: verwacht ${_}, ontving ${u}`}case"invalid_value":if(i.values.length===1)return`Ongeldige invoer: verwacht ${z(i.values[0])}`;return`Ongeldige optie: verwacht \xE9\xE9n van ${h(i.values,"|")}`;case"too_big":{let _=i.inclusive?"<=":"<",c=n(i.origin),u=i.origin==="date"?"laat":i.origin==="string"?"lang":"groot";if(c)return`Te ${u}: verwacht dat ${i.origin??"waarde"} ${_}${i.maximum.toString()} ${c.unit??"elementen"} ${c.verb}`;return`Te ${u}: verwacht dat ${i.origin??"waarde"} ${_}${i.maximum.toString()} is`}case"too_small":{let _=i.inclusive?">=":">",c=n(i.origin),u=i.origin==="date"?"vroeg":i.origin==="string"?"kort":"klein";if(c)return`Te ${u}: verwacht dat ${i.origin} ${_}${i.minimum.toString()} ${c.unit} ${c.verb}`;return`Te ${u}: verwacht dat ${i.origin} ${_}${i.minimum.toString()} is`}case"invalid_format":{let _=i;if(_.format==="starts_with")return`Ongeldige tekst: moet met "${_.prefix}" beginnen`;if(_.format==="ends_with")return`Ongeldige tekst: moet op "${_.suffix}" eindigen`;if(_.format==="includes")return`Ongeldige tekst: moet "${_.includes}" bevatten`;if(_.format==="regex")return`Ongeldige tekst: moet overeenkomen met patroon ${_.pattern}`;return`Ongeldig: ${t[_.format]??i.format}`}case"not_multiple_of":return`Ongeldig getal: moet een veelvoud van ${i.divisor} zijn`;case"unrecognized_keys":return`Onbekende key${i.keys.length>1?"s":""}: ${h(i.keys,", ")}`;case"invalid_key":return`Ongeldige key in ${i.origin}`;case"invalid_union":return"Ongeldige invoer";case"invalid_element":return`Ongeldige waarde in ${i.origin}`;default:return"Ongeldige invoer"}}};var _U=N(()=>{G()});function Qb(){return{localeError:mW()}}var mW=()=>{let r={string:{unit:"tegn",verb:"\xE5 ha"},file:{unit:"bytes",verb:"\xE5 ha"},array:{unit:"elementer",verb:"\xE5 inneholde"},set:{unit:"elementer",verb:"\xE5 inneholde"}};function n(i){return r[i]??null}let t={regex:"input",email:"e-postadresse",url:"URL",emoji:"emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ISO dato- og klokkeslett",date:"ISO-dato",time:"ISO-klokkeslett",duration:"ISO-varighet",ipv4:"IPv4-omr\xE5de",ipv6:"IPv6-omr\xE5de",cidrv4:"IPv4-spekter",cidrv6:"IPv6-spekter",base64:"base64-enkodet streng",base64url:"base64url-enkodet streng",json_string:"JSON-streng",e164:"E.164-nummer",jwt:"JWT",template_literal:"input"},e={nan:"NaN",number:"tall",array:"liste"};return(i)=>{switch(i.code){case"invalid_type":{let _=e[i.expected]??i.expected,c=S(i.input),u=e[c]??c;if(/^[A-Z]/.test(i.expected))return`Ugyldig input: forventet instanceof ${i.expected}, fikk ${u}`;return`Ugyldig input: forventet ${_}, fikk ${u}`}case"invalid_value":if(i.values.length===1)return`Ugyldig verdi: forventet ${z(i.values[0])}`;return`Ugyldig valg: forventet en av ${h(i.values,"|")}`;case"too_big":{let _=i.inclusive?"<=":"<",c=n(i.origin);if(c)return`For stor(t): forventet ${i.origin??"value"} til \xE5 ha ${_}${i.maximum.toString()} ${c.unit??"elementer"}`;return`For stor(t): forventet ${i.origin??"value"} til \xE5 ha ${_}${i.maximum.toString()}`}case"too_small":{let _=i.inclusive?">=":">",c=n(i.origin);if(c)return`For lite(n): forventet ${i.origin} til \xE5 ha ${_}${i.minimum.toString()} ${c.unit}`;return`For lite(n): forventet ${i.origin} til \xE5 ha ${_}${i.minimum.toString()}`}case"invalid_format":{let _=i;if(_.format==="starts_with")return`Ugyldig streng: m\xE5 starte med "${_.prefix}"`;if(_.format==="ends_with")return`Ugyldig streng: m\xE5 ende med "${_.suffix}"`;if(_.format==="includes")return`Ugyldig streng: m\xE5 inneholde "${_.includes}"`;if(_.format==="regex")return`Ugyldig streng: m\xE5 matche m\xF8nsteret ${_.pattern}`;return`Ugyldig ${t[_.format]??i.format}`}case"not_multiple_of":return`Ugyldig tall: m\xE5 v\xE6re et multiplum av ${i.divisor}`;case"unrecognized_keys":return`${i.keys.length>1?"Ukjente n\xF8kler":"Ukjent n\xF8kkel"}: ${h(i.keys,", ")}`;case"invalid_key":return`Ugyldig n\xF8kkel i ${i.origin}`;case"invalid_union":return"Ugyldig input";case"invalid_element":return`Ugyldig verdi i ${i.origin}`;default:return"Ugyldig input"}}};var cU=N(()=>{G()});function Kb(){return{localeError:IW()}}var IW=()=>{let r={string:{unit:"harf",verb:"olmal\u0131d\u0131r"},file:{unit:"bayt",verb:"olmal\u0131d\u0131r"},array:{unit:"unsur",verb:"olmal\u0131d\u0131r"},set:{unit:"unsur",verb:"olmal\u0131d\u0131r"}};function n(i){return r[i]??null}let t={regex:"giren",email:"epostag\xE2h",url:"URL",emoji:"emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ISO heng\xE2m\u0131",date:"ISO tarihi",time:"ISO zaman\u0131",duration:"ISO m\xFCddeti",ipv4:"IPv4 ni\u015F\xE2n\u0131",ipv6:"IPv6 ni\u015F\xE2n\u0131",cidrv4:"IPv4 menzili",cidrv6:"IPv6 menzili",base64:"base64-\u015Fifreli metin",base64url:"base64url-\u015Fifreli metin",json_string:"JSON metin",e164:"E.164 say\u0131s\u0131",jwt:"JWT",template_literal:"giren"},e={nan:"NaN",number:"numara",array:"saf",null:"gayb"};return(i)=>{switch(i.code){case"invalid_type":{let _=e[i.expected]??i.expected,c=S(i.input),u=e[c]??c;if(/^[A-Z]/.test(i.expected))return`F\xE2sit giren: umulan instanceof ${i.expected}, al\u0131nan ${u}`;return`F\xE2sit giren: umulan ${_}, al\u0131nan ${u}`}case"invalid_value":if(i.values.length===1)return`F\xE2sit giren: umulan ${z(i.values[0])}`;return`F\xE2sit tercih: m\xFBteberler ${h(i.values,"|")}`;case"too_big":{let _=i.inclusive?"<=":"<",c=n(i.origin);if(c)return`Fazla b\xFCy\xFCk: ${i.origin??"value"}, ${_}${i.maximum.toString()} ${c.unit??"elements"} sahip olmal\u0131yd\u0131.`;return`Fazla b\xFCy\xFCk: ${i.origin??"value"}, ${_}${i.maximum.toString()} olmal\u0131yd\u0131.`}case"too_small":{let _=i.inclusive?">=":">",c=n(i.origin);if(c)return`Fazla k\xFC\xE7\xFCk: ${i.origin}, ${_}${i.minimum.toString()} ${c.unit} sahip olmal\u0131yd\u0131.`;return`Fazla k\xFC\xE7\xFCk: ${i.origin}, ${_}${i.minimum.toString()} olmal\u0131yd\u0131.`}case"invalid_format":{let _=i;if(_.format==="starts_with")return`F\xE2sit metin: "${_.prefix}" ile ba\u015Flamal\u0131.`;if(_.format==="ends_with")return`F\xE2sit metin: "${_.suffix}" ile bitmeli.`;if(_.format==="includes")return`F\xE2sit metin: "${_.includes}" ihtiv\xE2 etmeli.`;if(_.format==="regex")return`F\xE2sit metin: ${_.pattern} nak\u015F\u0131na uymal\u0131.`;return`F\xE2sit ${t[_.format]??i.format}`}case"not_multiple_of":return`F\xE2sit say\u0131: ${i.divisor} kat\u0131 olmal\u0131yd\u0131.`;case"unrecognized_keys":return`Tan\u0131nmayan anahtar ${i.keys.length>1?"s":""}: ${h(i.keys,", ")}`;case"invalid_key":return`${i.origin} i\xE7in tan\u0131nmayan anahtar var.`;case"invalid_union":return"Giren tan\u0131namad\u0131.";case"invalid_element":return`${i.origin} i\xE7in tan\u0131nmayan k\u0131ymet var.`;default:return"K\u0131ymet tan\u0131namad\u0131."}}};var uU=N(()=>{G()});function ab(){return{localeError:OW()}}var OW=()=>{let r={string:{unit:"\u062A\u0648\u06A9\u064A",verb:"\u0648\u0644\u0631\u064A"},file:{unit:"\u0628\u0627\u06CC\u067C\u0633",verb:"\u0648\u0644\u0631\u064A"},array:{unit:"\u062A\u0648\u06A9\u064A",verb:"\u0648\u0644\u0631\u064A"},set:{unit:"\u062A\u0648\u06A9\u064A",verb:"\u0648\u0644\u0631\u064A"}};function n(i){return r[i]??null}let t={regex:"\u0648\u0631\u0648\u062F\u064A",email:"\u0628\u0631\u06CC\u069A\u0646\u0627\u0644\u06CC\u06A9",url:"\u06CC\u0648 \u0622\u0631 \u0627\u0644",emoji:"\u0627\u06CC\u0645\u0648\u062C\u064A",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"\u0646\u06CC\u067C\u0647 \u0627\u0648 \u0648\u062E\u062A",date:"\u0646\u06D0\u067C\u0647",time:"\u0648\u062E\u062A",duration:"\u0645\u0648\u062F\u0647",ipv4:"\u062F IPv4 \u067E\u062A\u0647",ipv6:"\u062F IPv6 \u067E\u062A\u0647",cidrv4:"\u062F IPv4 \u0633\u0627\u062D\u0647",cidrv6:"\u062F IPv6 \u0633\u0627\u062D\u0647",base64:"base64-encoded \u0645\u062A\u0646",base64url:"base64url-encoded \u0645\u062A\u0646",json_string:"JSON \u0645\u062A\u0646",e164:"\u062F E.164 \u0634\u0645\u06D0\u0631\u0647",jwt:"JWT",template_literal:"\u0648\u0631\u0648\u062F\u064A"},e={nan:"NaN",number:"\u0639\u062F\u062F",array:"\u0627\u0631\u06D0"};return(i)=>{switch(i.code){case"invalid_type":{let _=e[i.expected]??i.expected,c=S(i.input),u=e[c]??c;if(/^[A-Z]/.test(i.expected))return`\u0646\u0627\u0633\u0645 \u0648\u0631\u0648\u062F\u064A: \u0628\u0627\u06CC\u062F instanceof ${i.expected} \u0648\u0627\u06CC, \u0645\u06AB\u0631 ${u} \u062A\u0631\u0644\u0627\u0633\u0647 \u0634\u0648`;return`\u0646\u0627\u0633\u0645 \u0648\u0631\u0648\u062F\u064A: \u0628\u0627\u06CC\u062F ${_} \u0648\u0627\u06CC, \u0645\u06AB\u0631 ${u} \u062A\u0631\u0644\u0627\u0633\u0647 \u0634\u0648`}case"invalid_value":if(i.values.length===1)return`\u0646\u0627\u0633\u0645 \u0648\u0631\u0648\u062F\u064A: \u0628\u0627\u06CC\u062F ${z(i.values[0])} \u0648\u0627\u06CC`;return`\u0646\u0627\u0633\u0645 \u0627\u0646\u062A\u062E\u0627\u0628: \u0628\u0627\u06CC\u062F \u06CC\u0648 \u0644\u0647 ${h(i.values,"|")} \u0685\u062E\u0647 \u0648\u0627\u06CC`;case"too_big":{let _=i.inclusive?"<=":"<",c=n(i.origin);if(c)return`\u0689\u06CC\u0631 \u0644\u0648\u06CC: ${i.origin??"\u0627\u0631\u0632\u069A\u062A"} \u0628\u0627\u06CC\u062F ${_}${i.maximum.toString()} ${c.unit??"\u0639\u0646\u0635\u0631\u0648\u0646\u0647"} \u0648\u0644\u0631\u064A`;return`\u0689\u06CC\u0631 \u0644\u0648\u06CC: ${i.origin??"\u0627\u0631\u0632\u069A\u062A"} \u0628\u0627\u06CC\u062F ${_}${i.maximum.toString()} \u0648\u064A`}case"too_small":{let _=i.inclusive?">=":">",c=n(i.origin);if(c)return`\u0689\u06CC\u0631 \u06A9\u0648\u0686\u0646\u06CC: ${i.origin} \u0628\u0627\u06CC\u062F ${_}${i.minimum.toString()} ${c.unit} \u0648\u0644\u0631\u064A`;return`\u0689\u06CC\u0631 \u06A9\u0648\u0686\u0646\u06CC: ${i.origin} \u0628\u0627\u06CC\u062F ${_}${i.minimum.toString()} \u0648\u064A`}case"invalid_format":{let _=i;if(_.format==="starts_with")return`\u0646\u0627\u0633\u0645 \u0645\u062A\u0646: \u0628\u0627\u06CC\u062F \u062F "${_.prefix}" \u0633\u0631\u0647 \u067E\u06CC\u0644 \u0634\u064A`;if(_.format==="ends_with")return`\u0646\u0627\u0633\u0645 \u0645\u062A\u0646: \u0628\u0627\u06CC\u062F \u062F "${_.suffix}" \u0633\u0631\u0647 \u067E\u0627\u06CC \u062A\u0647 \u0648\u0631\u0633\u064A\u0696\u064A`;if(_.format==="includes")return`\u0646\u0627\u0633\u0645 \u0645\u062A\u0646: \u0628\u0627\u06CC\u062F "${_.includes}" \u0648\u0644\u0631\u064A`;if(_.format==="regex")return`\u0646\u0627\u0633\u0645 \u0645\u062A\u0646: \u0628\u0627\u06CC\u062F \u062F ${_.pattern} \u0633\u0631\u0647 \u0645\u0637\u0627\u0628\u0642\u062A \u0648\u0644\u0631\u064A`;return`${t[_.format]??i.format} \u0646\u0627\u0633\u0645 \u062F\u06CC`}case"not_multiple_of":return`\u0646\u0627\u0633\u0645 \u0639\u062F\u062F: \u0628\u0627\u06CC\u062F \u062F ${i.divisor} \u0645\u0636\u0631\u0628 \u0648\u064A`;case"unrecognized_keys":return`\u0646\u0627\u0633\u0645 ${i.keys.length>1?"\u06A9\u0644\u06CC\u0689\u0648\u0646\u0647":"\u06A9\u0644\u06CC\u0689"}: ${h(i.keys,", ")}`;case"invalid_key":return`\u0646\u0627\u0633\u0645 \u06A9\u0644\u06CC\u0689 \u067E\u0647 ${i.origin} \u06A9\u06D0`;case"invalid_union":return"\u0646\u0627\u0633\u0645\u0647 \u0648\u0631\u0648\u062F\u064A";case"invalid_element":return`\u0646\u0627\u0633\u0645 \u0639\u0646\u0635\u0631 \u067E\u0647 ${i.origin} \u06A9\u06D0`;default:return"\u0646\u0627\u0633\u0645\u0647 \u0648\u0631\u0648\u062F\u064A"}}};var oU=N(()=>{G()});function Zb(){return{localeError:UW()}}var UW=()=>{let r={string:{unit:"znak\xF3w",verb:"mie\u0107"},file:{unit:"bajt\xF3w",verb:"mie\u0107"},array:{unit:"element\xF3w",verb:"mie\u0107"},set:{unit:"element\xF3w",verb:"mie\u0107"}};function n(i){return r[i]??null}let t={regex:"wyra\u017Cenie",email:"adres email",url:"URL",emoji:"emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"data i godzina w formacie ISO",date:"data w formacie ISO",time:"godzina w formacie ISO",duration:"czas trwania ISO",ipv4:"adres IPv4",ipv6:"adres IPv6",cidrv4:"zakres IPv4",cidrv6:"zakres IPv6",base64:"ci\u0105g znak\xF3w zakodowany w formacie base64",base64url:"ci\u0105g znak\xF3w zakodowany w formacie base64url",json_string:"ci\u0105g znak\xF3w w formacie JSON",e164:"liczba E.164",jwt:"JWT",template_literal:"wej\u015Bcie"},e={nan:"NaN",number:"liczba",array:"tablica"};return(i)=>{switch(i.code){case"invalid_type":{let _=e[i.expected]??i.expected,c=S(i.input),u=e[c]??c;if(/^[A-Z]/.test(i.expected))return`Nieprawid\u0142owe dane wej\u015Bciowe: oczekiwano instanceof ${i.expected}, otrzymano ${u}`;return`Nieprawid\u0142owe dane wej\u015Bciowe: oczekiwano ${_}, otrzymano ${u}`}case"invalid_value":if(i.values.length===1)return`Nieprawid\u0142owe dane wej\u015Bciowe: oczekiwano ${z(i.values[0])}`;return`Nieprawid\u0142owa opcja: oczekiwano jednej z warto\u015Bci ${h(i.values,"|")}`;case"too_big":{let _=i.inclusive?"<=":"<",c=n(i.origin);if(c)return`Za du\u017Ca warto\u015B\u0107: oczekiwano, \u017Ce ${i.origin??"warto\u015B\u0107"} b\u0119dzie mie\u0107 ${_}${i.maximum.toString()} ${c.unit??"element\xF3w"}`;return`Zbyt du\u017C(y/a/e): oczekiwano, \u017Ce ${i.origin??"warto\u015B\u0107"} b\u0119dzie wynosi\u0107 ${_}${i.maximum.toString()}`}case"too_small":{let _=i.inclusive?">=":">",c=n(i.origin);if(c)return`Za ma\u0142a warto\u015B\u0107: oczekiwano, \u017Ce ${i.origin??"warto\u015B\u0107"} b\u0119dzie mie\u0107 ${_}${i.minimum.toString()} ${c.unit??"element\xF3w"}`;return`Zbyt ma\u0142(y/a/e): oczekiwano, \u017Ce ${i.origin??"warto\u015B\u0107"} b\u0119dzie wynosi\u0107 ${_}${i.minimum.toString()}`}case"invalid_format":{let _=i;if(_.format==="starts_with")return`Nieprawid\u0142owy ci\u0105g znak\xF3w: musi zaczyna\u0107 si\u0119 od "${_.prefix}"`;if(_.format==="ends_with")return`Nieprawid\u0142owy ci\u0105g znak\xF3w: musi ko\u0144czy\u0107 si\u0119 na "${_.suffix}"`;if(_.format==="includes")return`Nieprawid\u0142owy ci\u0105g znak\xF3w: musi zawiera\u0107 "${_.includes}"`;if(_.format==="regex")return`Nieprawid\u0142owy ci\u0105g znak\xF3w: musi odpowiada\u0107 wzorcowi ${_.pattern}`;return`Nieprawid\u0142ow(y/a/e) ${t[_.format]??i.format}`}case"not_multiple_of":return`Nieprawid\u0142owa liczba: musi by\u0107 wielokrotno\u015Bci\u0105 ${i.divisor}`;case"unrecognized_keys":return`Nierozpoznane klucze${i.keys.length>1?"s":""}: ${h(i.keys,", ")}`;case"invalid_key":return`Nieprawid\u0142owy klucz w ${i.origin}`;case"invalid_union":return"Nieprawid\u0142owe dane wej\u015Bciowe";case"invalid_element":return`Nieprawid\u0142owa warto\u015B\u0107 w ${i.origin}`;default:return"Nieprawid\u0142owe dane wej\u015Bciowe"}}};var $U=N(()=>{G()});function Cb(){return{localeError:hW()}}var hW=()=>{let r={string:{unit:"caracteres",verb:"ter"},file:{unit:"bytes",verb:"ter"},array:{unit:"itens",verb:"ter"},set:{unit:"itens",verb:"ter"}};function n(i){return r[i]??null}let t={regex:"padr\xE3o",email:"endere\xE7o de e-mail",url:"URL",emoji:"emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"data e hora ISO",date:"data ISO",time:"hora ISO",duration:"dura\xE7\xE3o ISO",ipv4:"endere\xE7o IPv4",ipv6:"endere\xE7o IPv6",cidrv4:"faixa de IPv4",cidrv6:"faixa de IPv6",base64:"texto codificado em base64",base64url:"URL codificada em base64",json_string:"texto JSON",e164:"n\xFAmero E.164",jwt:"JWT",template_literal:"entrada"},e={nan:"NaN",number:"n\xFAmero",null:"nulo"};return(i)=>{switch(i.code){case"invalid_type":{let _=e[i.expected]??i.expected,c=S(i.input),u=e[c]??c;if(/^[A-Z]/.test(i.expected))return`Tipo inv\xE1lido: esperado instanceof ${i.expected}, recebido ${u}`;return`Tipo inv\xE1lido: esperado ${_}, recebido ${u}`}case"invalid_value":if(i.values.length===1)return`Entrada inv\xE1lida: esperado ${z(i.values[0])}`;return`Op\xE7\xE3o inv\xE1lida: esperada uma das ${h(i.values,"|")}`;case"too_big":{let _=i.inclusive?"<=":"<",c=n(i.origin);if(c)return`Muito grande: esperado que ${i.origin??"valor"} tivesse ${_}${i.maximum.toString()} ${c.unit??"elementos"}`;return`Muito grande: esperado que ${i.origin??"valor"} fosse ${_}${i.maximum.toString()}`}case"too_small":{let _=i.inclusive?">=":">",c=n(i.origin);if(c)return`Muito pequeno: esperado que ${i.origin} tivesse ${_}${i.minimum.toString()} ${c.unit}`;return`Muito pequeno: esperado que ${i.origin} fosse ${_}${i.minimum.toString()}`}case"invalid_format":{let _=i;if(_.format==="starts_with")return`Texto inv\xE1lido: deve come\xE7ar com "${_.prefix}"`;if(_.format==="ends_with")return`Texto inv\xE1lido: deve terminar com "${_.suffix}"`;if(_.format==="includes")return`Texto inv\xE1lido: deve incluir "${_.includes}"`;if(_.format==="regex")return`Texto inv\xE1lido: deve corresponder ao padr\xE3o ${_.pattern}`;return`${t[_.format]??i.format} inv\xE1lido`}case"not_multiple_of":return`N\xFAmero inv\xE1lido: deve ser m\xFAltiplo de ${i.divisor}`;case"unrecognized_keys":return`Chave${i.keys.length>1?"s":""} desconhecida${i.keys.length>1?"s":""}: ${h(i.keys,", ")}`;case"invalid_key":return`Chave inv\xE1lida em ${i.origin}`;case"invalid_union":return"Entrada inv\xE1lida";case"invalid_element":return`Valor inv\xE1lido em ${i.origin}`;default:return"Campo inv\xE1lido"}}};var gU=N(()=>{G()});function dU(r,n,t,e){let i=Math.abs(r),_=i%10,c=i%100;if(c>=11&&c<=19)return e;if(_===1)return n;if(_>=2&&_<=4)return t;return e}function xb(){return{localeError:RW()}}var RW=()=>{let r={string:{unit:{one:"\u0441\u0438\u043C\u0432\u043E\u043B",few:"\u0441\u0438\u043C\u0432\u043E\u043B\u0430",many:"\u0441\u0438\u043C\u0432\u043E\u043B\u043E\u0432"},verb:"\u0438\u043C\u0435\u0442\u044C"},file:{unit:{one:"\u0431\u0430\u0439\u0442",few:"\u0431\u0430\u0439\u0442\u0430",many:"\u0431\u0430\u0439\u0442"},verb:"\u0438\u043C\u0435\u0442\u044C"},array:{unit:{one:"\u044D\u043B\u0435\u043C\u0435\u043D\u0442",few:"\u044D\u043B\u0435\u043C\u0435\u043D\u0442\u0430",many:"\u044D\u043B\u0435\u043C\u0435\u043D\u0442\u043E\u0432"},verb:"\u0438\u043C\u0435\u0442\u044C"},set:{unit:{one:"\u044D\u043B\u0435\u043C\u0435\u043D\u0442",few:"\u044D\u043B\u0435\u043C\u0435\u043D\u0442\u0430",many:"\u044D\u043B\u0435\u043C\u0435\u043D\u0442\u043E\u0432"},verb:"\u0438\u043C\u0435\u0442\u044C"}};function n(i){return r[i]??null}let t={regex:"\u0432\u0432\u043E\u0434",email:"email \u0430\u0434\u0440\u0435\u0441",url:"URL",emoji:"\u044D\u043C\u043E\u0434\u0437\u0438",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ISO \u0434\u0430\u0442\u0430 \u0438 \u0432\u0440\u0435\u043C\u044F",date:"ISO \u0434\u0430\u0442\u0430",time:"ISO \u0432\u0440\u0435\u043C\u044F",duration:"ISO \u0434\u043B\u0438\u0442\u0435\u043B\u044C\u043D\u043E\u0441\u0442\u044C",ipv4:"IPv4 \u0430\u0434\u0440\u0435\u0441",ipv6:"IPv6 \u0430\u0434\u0440\u0435\u0441",cidrv4:"IPv4 \u0434\u0438\u0430\u043F\u0430\u0437\u043E\u043D",cidrv6:"IPv6 \u0434\u0438\u0430\u043F\u0430\u0437\u043E\u043D",base64:"\u0441\u0442\u0440\u043E\u043A\u0430 \u0432 \u0444\u043E\u0440\u043C\u0430\u0442\u0435 base64",base64url:"\u0441\u0442\u0440\u043E\u043A\u0430 \u0432 \u0444\u043E\u0440\u043C\u0430\u0442\u0435 base64url",json_string:"JSON \u0441\u0442\u0440\u043E\u043A\u0430",e164:"\u043D\u043E\u043C\u0435\u0440 E.164",jwt:"JWT",template_literal:"\u0432\u0432\u043E\u0434"},e={nan:"NaN",number:"\u0447\u0438\u0441\u043B\u043E",array:"\u043C\u0430\u0441\u0441\u0438\u0432"};return(i)=>{switch(i.code){case"invalid_type":{let _=e[i.expected]??i.expected,c=S(i.input),u=e[c]??c;if(/^[A-Z]/.test(i.expected))return`\u041D\u0435\u0432\u0435\u0440\u043D\u044B\u0439 \u0432\u0432\u043E\u0434: \u043E\u0436\u0438\u0434\u0430\u043B\u043E\u0441\u044C instanceof ${i.expected}, \u043F\u043E\u043B\u0443\u0447\u0435\u043D\u043E ${u}`;return`\u041D\u0435\u0432\u0435\u0440\u043D\u044B\u0439 \u0432\u0432\u043E\u0434: \u043E\u0436\u0438\u0434\u0430\u043B\u043E\u0441\u044C ${_}, \u043F\u043E\u043B\u0443\u0447\u0435\u043D\u043E ${u}`}case"invalid_value":if(i.values.length===1)return`\u041D\u0435\u0432\u0435\u0440\u043D\u044B\u0439 \u0432\u0432\u043E\u0434: \u043E\u0436\u0438\u0434\u0430\u043B\u043E\u0441\u044C ${z(i.values[0])}`;return`\u041D\u0435\u0432\u0435\u0440\u043D\u044B\u0439 \u0432\u0430\u0440\u0438\u0430\u043D\u0442: \u043E\u0436\u0438\u0434\u0430\u043B\u043E\u0441\u044C \u043E\u0434\u043D\u043E \u0438\u0437 ${h(i.values,"|")}`;case"too_big":{let _=i.inclusive?"<=":"<",c=n(i.origin);if(c){let u=Number(i.maximum),o=dU(u,c.unit.one,c.unit.few,c.unit.many);return`\u0421\u043B\u0438\u0448\u043A\u043E\u043C \u0431\u043E\u043B\u044C\u0448\u043E\u0435 \u0437\u043D\u0430\u0447\u0435\u043D\u0438\u0435: \u043E\u0436\u0438\u0434\u0430\u043B\u043E\u0441\u044C, \u0447\u0442\u043E ${i.origin??"\u0437\u043D\u0430\u0447\u0435\u043D\u0438\u0435"} \u0431\u0443\u0434\u0435\u0442 \u0438\u043C\u0435\u0442\u044C ${_}${i.maximum.toString()} ${o}`}return`\u0421\u043B\u0438\u0448\u043A\u043E\u043C \u0431\u043E\u043B\u044C\u0448\u043E\u0435 \u0437\u043D\u0430\u0447\u0435\u043D\u0438\u0435: \u043E\u0436\u0438\u0434\u0430\u043B\u043E\u0441\u044C, \u0447\u0442\u043E ${i.origin??"\u0437\u043D\u0430\u0447\u0435\u043D\u0438\u0435"} \u0431\u0443\u0434\u0435\u0442 ${_}${i.maximum.toString()}`}case"too_small":{let _=i.inclusive?">=":">",c=n(i.origin);if(c){let u=Number(i.minimum),o=dU(u,c.unit.one,c.unit.few,c.unit.many);return`\u0421\u043B\u0438\u0448\u043A\u043E\u043C \u043C\u0430\u043B\u0435\u043D\u044C\u043A\u043E\u0435 \u0437\u043D\u0430\u0447\u0435\u043D\u0438\u0435: \u043E\u0436\u0438\u0434\u0430\u043B\u043E\u0441\u044C, \u0447\u0442\u043E ${i.origin} \u0431\u0443\u0434\u0435\u0442 \u0438\u043C\u0435\u0442\u044C ${_}${i.minimum.toString()} ${o}`}return`\u0421\u043B\u0438\u0448\u043A\u043E\u043C \u043C\u0430\u043B\u0435\u043D\u044C\u043A\u043E\u0435 \u0437\u043D\u0430\u0447\u0435\u043D\u0438\u0435: \u043E\u0436\u0438\u0434\u0430\u043B\u043E\u0441\u044C, \u0447\u0442\u043E ${i.origin} \u0431\u0443\u0434\u0435\u0442 ${_}${i.minimum.toString()}`}case"invalid_format":{let _=i;if(_.format==="starts_with")return`\u041D\u0435\u0432\u0435\u0440\u043D\u0430\u044F \u0441\u0442\u0440\u043E\u043A\u0430: \u0434\u043E\u043B\u0436\u043D\u0430 \u043D\u0430\u0447\u0438\u043D\u0430\u0442\u044C\u0441\u044F \u0441 "${_.prefix}"`;if(_.format==="ends_with")return`\u041D\u0435\u0432\u0435\u0440\u043D\u0430\u044F \u0441\u0442\u0440\u043E\u043A\u0430: \u0434\u043E\u043B\u0436\u043D\u0430 \u0437\u0430\u043A\u0430\u043D\u0447\u0438\u0432\u0430\u0442\u044C\u0441\u044F \u043D\u0430 "${_.suffix}"`;if(_.format==="includes")return`\u041D\u0435\u0432\u0435\u0440\u043D\u0430\u044F \u0441\u0442\u0440\u043E\u043A\u0430: \u0434\u043E\u043B\u0436\u043D\u0430 \u0441\u043E\u0434\u0435\u0440\u0436\u0430\u0442\u044C "${_.includes}"`;if(_.format==="regex")return`\u041D\u0435\u0432\u0435\u0440\u043D\u0430\u044F \u0441\u0442\u0440\u043E\u043A\u0430: \u0434\u043E\u043B\u0436\u043D\u0430 \u0441\u043E\u043E\u0442\u0432\u0435\u0442\u0441\u0442\u0432\u043E\u0432\u0430\u0442\u044C \u0448\u0430\u0431\u043B\u043E\u043D\u0443 ${_.pattern}`;return`\u041D\u0435\u0432\u0435\u0440\u043D\u044B\u0439 ${t[_.format]??i.format}`}case"not_multiple_of":return`\u041D\u0435\u0432\u0435\u0440\u043D\u043E\u0435 \u0447\u0438\u0441\u043B\u043E: \u0434\u043E\u043B\u0436\u043D\u043E \u0431\u044B\u0442\u044C \u043A\u0440\u0430\u0442\u043D\u044B\u043C ${i.divisor}`;case"unrecognized_keys":return`\u041D\u0435\u0440\u0430\u0441\u043F\u043E\u0437\u043D\u0430\u043D\u043D${i.keys.length>1?"\u044B\u0435":"\u044B\u0439"} \u043A\u043B\u044E\u0447${i.keys.length>1?"\u0438":""}: ${h(i.keys,", ")}`;case"invalid_key":return`\u041D\u0435\u0432\u0435\u0440\u043D\u044B\u0439 \u043A\u043B\u044E\u0447 \u0432 ${i.origin}`;case"invalid_union":return"\u041D\u0435\u0432\u0435\u0440\u043D\u044B\u0435 \u0432\u0445\u043E\u0434\u043D\u044B\u0435 \u0434\u0430\u043D\u043D\u044B\u0435";case"invalid_element":return`\u041D\u0435\u0432\u0435\u0440\u043D\u043E\u0435 \u0437\u043D\u0430\u0447\u0435\u043D\u0438\u0435 \u0432 ${i.origin}`;default:return"\u041D\u0435\u0432\u0435\u0440\u043D\u044B\u0435 \u0432\u0445\u043E\u0434\u043D\u044B\u0435 \u0434\u0430\u043D\u043D\u044B\u0435"}}};var fU=N(()=>{G()});function pb(){return{localeError:DW()}}var DW=()=>{let r={string:{unit:"znakov",verb:"imeti"},file:{unit:"bajtov",verb:"imeti"},array:{unit:"elementov",verb:"imeti"},set:{unit:"elementov",verb:"imeti"}};function n(i){return r[i]??null}let t={regex:"vnos",email:"e-po\u0161tni naslov",url:"URL",emoji:"emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ISO datum in \u010Das",date:"ISO datum",time:"ISO \u010Das",duration:"ISO trajanje",ipv4:"IPv4 naslov",ipv6:"IPv6 naslov",cidrv4:"obseg IPv4",cidrv6:"obseg IPv6",base64:"base64 kodiran niz",base64url:"base64url kodiran niz",json_string:"JSON niz",e164:"E.164 \u0161tevilka",jwt:"JWT",template_literal:"vnos"},e={nan:"NaN",number:"\u0161tevilo",array:"tabela"};return(i)=>{switch(i.code){case"invalid_type":{let _=e[i.expected]??i.expected,c=S(i.input),u=e[c]??c;if(/^[A-Z]/.test(i.expected))return`Neveljaven vnos: pri\u010Dakovano instanceof ${i.expected}, prejeto ${u}`;return`Neveljaven vnos: pri\u010Dakovano ${_}, prejeto ${u}`}case"invalid_value":if(i.values.length===1)return`Neveljaven vnos: pri\u010Dakovano ${z(i.values[0])}`;return`Neveljavna mo\u017Enost: pri\u010Dakovano eno izmed ${h(i.values,"|")}`;case"too_big":{let _=i.inclusive?"<=":"<",c=n(i.origin);if(c)return`Preveliko: pri\u010Dakovano, da bo ${i.origin??"vrednost"} imelo ${_}${i.maximum.toString()} ${c.unit??"elementov"}`;return`Preveliko: pri\u010Dakovano, da bo ${i.origin??"vrednost"} ${_}${i.maximum.toString()}`}case"too_small":{let _=i.inclusive?">=":">",c=n(i.origin);if(c)return`Premajhno: pri\u010Dakovano, da bo ${i.origin} imelo ${_}${i.minimum.toString()} ${c.unit}`;return`Premajhno: pri\u010Dakovano, da bo ${i.origin} ${_}${i.minimum.toString()}`}case"invalid_format":{let _=i;if(_.format==="starts_with")return`Neveljaven niz: mora se za\u010Deti z "${_.prefix}"`;if(_.format==="ends_with")return`Neveljaven niz: mora se kon\u010Dati z "${_.suffix}"`;if(_.format==="includes")return`Neveljaven niz: mora vsebovati "${_.includes}"`;if(_.format==="regex")return`Neveljaven niz: mora ustrezati vzorcu ${_.pattern}`;return`Neveljaven ${t[_.format]??i.format}`}case"not_multiple_of":return`Neveljavno \u0161tevilo: mora biti ve\u010Dkratnik ${i.divisor}`;case"unrecognized_keys":return`Neprepoznan${i.keys.length>1?"i klju\u010Di":" klju\u010D"}: ${h(i.keys,", ")}`;case"invalid_key":return`Neveljaven klju\u010D v ${i.origin}`;case"invalid_union":return"Neveljaven vnos";case"invalid_element":return`Neveljavna vrednost v ${i.origin}`;default:return"Neveljaven vnos"}}};var bU=N(()=>{G()});function sb(){return{localeError:yW()}}var yW=()=>{let r={string:{unit:"tecken",verb:"att ha"},file:{unit:"bytes",verb:"att ha"},array:{unit:"objekt",verb:"att inneh\xE5lla"},set:{unit:"objekt",verb:"att inneh\xE5lla"}};function n(i){return r[i]??null}let t={regex:"regulj\xE4rt uttryck",email:"e-postadress",url:"URL",emoji:"emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ISO-datum och tid",date:"ISO-datum",time:"ISO-tid",duration:"ISO-varaktighet",ipv4:"IPv4-intervall",ipv6:"IPv6-intervall",cidrv4:"IPv4-spektrum",cidrv6:"IPv6-spektrum",base64:"base64-kodad str\xE4ng",base64url:"base64url-kodad str\xE4ng",json_string:"JSON-str\xE4ng",e164:"E.164-nummer",jwt:"JWT",template_literal:"mall-literal"},e={nan:"NaN",number:"antal",array:"lista"};return(i)=>{switch(i.code){case"invalid_type":{let _=e[i.expected]??i.expected,c=S(i.input),u=e[c]??c;if(/^[A-Z]/.test(i.expected))return`Ogiltig inmatning: f\xF6rv\xE4ntat instanceof ${i.expected}, fick ${u}`;return`Ogiltig inmatning: f\xF6rv\xE4ntat ${_}, fick ${u}`}case"invalid_value":if(i.values.length===1)return`Ogiltig inmatning: f\xF6rv\xE4ntat ${z(i.values[0])}`;return`Ogiltigt val: f\xF6rv\xE4ntade en av ${h(i.values,"|")}`;case"too_big":{let _=i.inclusive?"<=":"<",c=n(i.origin);if(c)return`F\xF6r stor(t): f\xF6rv\xE4ntade ${i.origin??"v\xE4rdet"} att ha ${_}${i.maximum.toString()} ${c.unit??"element"}`;return`F\xF6r stor(t): f\xF6rv\xE4ntat ${i.origin??"v\xE4rdet"} att ha ${_}${i.maximum.toString()}`}case"too_small":{let _=i.inclusive?">=":">",c=n(i.origin);if(c)return`F\xF6r lite(t): f\xF6rv\xE4ntade ${i.origin??"v\xE4rdet"} att ha ${_}${i.minimum.toString()} ${c.unit}`;return`F\xF6r lite(t): f\xF6rv\xE4ntade ${i.origin??"v\xE4rdet"} att ha ${_}${i.minimum.toString()}`}case"invalid_format":{let _=i;if(_.format==="starts_with")return`Ogiltig str\xE4ng: m\xE5ste b\xF6rja med "${_.prefix}"`;if(_.format==="ends_with")return`Ogiltig str\xE4ng: m\xE5ste sluta med "${_.suffix}"`;if(_.format==="includes")return`Ogiltig str\xE4ng: m\xE5ste inneh\xE5lla "${_.includes}"`;if(_.format==="regex")return`Ogiltig str\xE4ng: m\xE5ste matcha m\xF6nstret "${_.pattern}"`;return`Ogiltig(t) ${t[_.format]??i.format}`}case"not_multiple_of":return`Ogiltigt tal: m\xE5ste vara en multipel av ${i.divisor}`;case"unrecognized_keys":return`${i.keys.length>1?"Ok\xE4nda nycklar":"Ok\xE4nd nyckel"}: ${h(i.keys,", ")}`;case"invalid_key":return`Ogiltig nyckel i ${i.origin??"v\xE4rdet"}`;case"invalid_union":return"Ogiltig input";case"invalid_element":return`Ogiltigt v\xE4rde i ${i.origin??"v\xE4rdet"}`;default:return"Ogiltig input"}}};var wU=N(()=>{G()});function rw(){return{localeError:qW()}}var qW=()=>{let r={string:{unit:"\u0B8E\u0BB4\u0BC1\u0BA4\u0BCD\u0BA4\u0BC1\u0B95\u0BCD\u0B95\u0BB3\u0BCD",verb:"\u0B95\u0BCA\u0BA3\u0BCD\u0B9F\u0BBF\u0BB0\u0BC1\u0B95\u0BCD\u0B95 \u0BB5\u0BC7\u0BA3\u0BCD\u0B9F\u0BC1\u0BAE\u0BCD"},file:{unit:"\u0BAA\u0BC8\u0B9F\u0BCD\u0B9F\u0BC1\u0B95\u0BB3\u0BCD",verb:"\u0B95\u0BCA\u0BA3\u0BCD\u0B9F\u0BBF\u0BB0\u0BC1\u0B95\u0BCD\u0B95 \u0BB5\u0BC7\u0BA3\u0BCD\u0B9F\u0BC1\u0BAE\u0BCD"},array:{unit:"\u0B89\u0BB1\u0BC1\u0BAA\u0BCD\u0BAA\u0BC1\u0B95\u0BB3\u0BCD",verb:"\u0B95\u0BCA\u0BA3\u0BCD\u0B9F\u0BBF\u0BB0\u0BC1\u0B95\u0BCD\u0B95 \u0BB5\u0BC7\u0BA3\u0BCD\u0B9F\u0BC1\u0BAE\u0BCD"},set:{unit:"\u0B89\u0BB1\u0BC1\u0BAA\u0BCD\u0BAA\u0BC1\u0B95\u0BB3\u0BCD",verb:"\u0B95\u0BCA\u0BA3\u0BCD\u0B9F\u0BBF\u0BB0\u0BC1\u0B95\u0BCD\u0B95 \u0BB5\u0BC7\u0BA3\u0BCD\u0B9F\u0BC1\u0BAE\u0BCD"}};function n(i){return r[i]??null}let t={regex:"\u0B89\u0BB3\u0BCD\u0BB3\u0BC0\u0B9F\u0BC1",email:"\u0BAE\u0BBF\u0BA9\u0BCD\u0BA9\u0B9E\u0BCD\u0B9A\u0BB2\u0BCD \u0BAE\u0BC1\u0B95\u0BB5\u0BB0\u0BBF",url:"URL",emoji:"emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ISO \u0BA4\u0BC7\u0BA4\u0BBF \u0BA8\u0BC7\u0BB0\u0BAE\u0BCD",date:"ISO \u0BA4\u0BC7\u0BA4\u0BBF",time:"ISO \u0BA8\u0BC7\u0BB0\u0BAE\u0BCD",duration:"ISO \u0B95\u0BBE\u0BB2 \u0B85\u0BB3\u0BB5\u0BC1",ipv4:"IPv4 \u0BAE\u0BC1\u0B95\u0BB5\u0BB0\u0BBF",ipv6:"IPv6 \u0BAE\u0BC1\u0B95\u0BB5\u0BB0\u0BBF",cidrv4:"IPv4 \u0BB5\u0BB0\u0BAE\u0BCD\u0BAA\u0BC1",cidrv6:"IPv6 \u0BB5\u0BB0\u0BAE\u0BCD\u0BAA\u0BC1",base64:"base64-encoded \u0B9A\u0BB0\u0BAE\u0BCD",base64url:"base64url-encoded \u0B9A\u0BB0\u0BAE\u0BCD",json_string:"JSON \u0B9A\u0BB0\u0BAE\u0BCD",e164:"E.164 \u0B8E\u0BA3\u0BCD",jwt:"JWT",template_literal:"input"},e={nan:"NaN",number:"\u0B8E\u0BA3\u0BCD",array:"\u0B85\u0BA3\u0BBF",null:"\u0BB5\u0BC6\u0BB1\u0BC1\u0BAE\u0BC8"};return(i)=>{switch(i.code){case"invalid_type":{let _=e[i.expected]??i.expected,c=S(i.input),u=e[c]??c;if(/^[A-Z]/.test(i.expected))return`\u0BA4\u0BB5\u0BB1\u0BBE\u0BA9 \u0B89\u0BB3\u0BCD\u0BB3\u0BC0\u0B9F\u0BC1: \u0B8E\u0BA4\u0BBF\u0BB0\u0BCD\u0BAA\u0BBE\u0BB0\u0BCD\u0B95\u0BCD\u0B95\u0BAA\u0BCD\u0BAA\u0B9F\u0BCD\u0B9F\u0BA4\u0BC1 instanceof ${i.expected}, \u0BAA\u0BC6\u0BB1\u0BAA\u0BCD\u0BAA\u0B9F\u0BCD\u0B9F\u0BA4\u0BC1 ${u}`;return`\u0BA4\u0BB5\u0BB1\u0BBE\u0BA9 \u0B89\u0BB3\u0BCD\u0BB3\u0BC0\u0B9F\u0BC1: \u0B8E\u0BA4\u0BBF\u0BB0\u0BCD\u0BAA\u0BBE\u0BB0\u0BCD\u0B95\u0BCD\u0B95\u0BAA\u0BCD\u0BAA\u0B9F\u0BCD\u0B9F\u0BA4\u0BC1 ${_}, \u0BAA\u0BC6\u0BB1\u0BAA\u0BCD\u0BAA\u0B9F\u0BCD\u0B9F\u0BA4\u0BC1 ${u}`}case"invalid_value":if(i.values.length===1)return`\u0BA4\u0BB5\u0BB1\u0BBE\u0BA9 \u0B89\u0BB3\u0BCD\u0BB3\u0BC0\u0B9F\u0BC1: \u0B8E\u0BA4\u0BBF\u0BB0\u0BCD\u0BAA\u0BBE\u0BB0\u0BCD\u0B95\u0BCD\u0B95\u0BAA\u0BCD\u0BAA\u0B9F\u0BCD\u0B9F\u0BA4\u0BC1 ${z(i.values[0])}`;return`\u0BA4\u0BB5\u0BB1\u0BBE\u0BA9 \u0BB5\u0BBF\u0BB0\u0BC1\u0BAA\u0BCD\u0BAA\u0BAE\u0BCD: \u0B8E\u0BA4\u0BBF\u0BB0\u0BCD\u0BAA\u0BBE\u0BB0\u0BCD\u0B95\u0BCD\u0B95\u0BAA\u0BCD\u0BAA\u0B9F\u0BCD\u0B9F\u0BA4\u0BC1 ${h(i.values,"|")} \u0B87\u0BB2\u0BCD \u0B92\u0BA9\u0BCD\u0BB1\u0BC1`;case"too_big":{let _=i.inclusive?"<=":"<",c=n(i.origin);if(c)return`\u0BAE\u0BBF\u0B95 \u0BAA\u0BC6\u0BB0\u0BBF\u0BAF\u0BA4\u0BC1: \u0B8E\u0BA4\u0BBF\u0BB0\u0BCD\u0BAA\u0BBE\u0BB0\u0BCD\u0B95\u0BCD\u0B95\u0BAA\u0BCD\u0BAA\u0B9F\u0BCD\u0B9F\u0BA4\u0BC1 ${i.origin??"\u0BAE\u0BA4\u0BBF\u0BAA\u0BCD\u0BAA\u0BC1"} ${_}${i.maximum.toString()} ${c.unit??"\u0B89\u0BB1\u0BC1\u0BAA\u0BCD\u0BAA\u0BC1\u0B95\u0BB3\u0BCD"} \u0B86\u0B95 \u0B87\u0BB0\u0BC1\u0B95\u0BCD\u0B95 \u0BB5\u0BC7\u0BA3\u0BCD\u0B9F\u0BC1\u0BAE\u0BCD`;return`\u0BAE\u0BBF\u0B95 \u0BAA\u0BC6\u0BB0\u0BBF\u0BAF\u0BA4\u0BC1: \u0B8E\u0BA4\u0BBF\u0BB0\u0BCD\u0BAA\u0BBE\u0BB0\u0BCD\u0B95\u0BCD\u0B95\u0BAA\u0BCD\u0BAA\u0B9F\u0BCD\u0B9F\u0BA4\u0BC1 ${i.origin??"\u0BAE\u0BA4\u0BBF\u0BAA\u0BCD\u0BAA\u0BC1"} ${_}${i.maximum.toString()} \u0B86\u0B95 \u0B87\u0BB0\u0BC1\u0B95\u0BCD\u0B95 \u0BB5\u0BC7\u0BA3\u0BCD\u0B9F\u0BC1\u0BAE\u0BCD`}case"too_small":{let _=i.inclusive?">=":">",c=n(i.origin);if(c)return`\u0BAE\u0BBF\u0B95\u0B9A\u0BCD \u0B9A\u0BBF\u0BB1\u0BBF\u0BAF\u0BA4\u0BC1: \u0B8E\u0BA4\u0BBF\u0BB0\u0BCD\u0BAA\u0BBE\u0BB0\u0BCD\u0B95\u0BCD\u0B95\u0BAA\u0BCD\u0BAA\u0B9F\u0BCD\u0B9F\u0BA4\u0BC1 ${i.origin} ${_}${i.minimum.toString()} ${c.unit} \u0B86\u0B95 \u0B87\u0BB0\u0BC1\u0B95\u0BCD\u0B95 \u0BB5\u0BC7\u0BA3\u0BCD\u0B9F\u0BC1\u0BAE\u0BCD`;return`\u0BAE\u0BBF\u0B95\u0B9A\u0BCD \u0B9A\u0BBF\u0BB1\u0BBF\u0BAF\u0BA4\u0BC1: \u0B8E\u0BA4\u0BBF\u0BB0\u0BCD\u0BAA\u0BBE\u0BB0\u0BCD\u0B95\u0BCD\u0B95\u0BAA\u0BCD\u0BAA\u0B9F\u0BCD\u0B9F\u0BA4\u0BC1 ${i.origin} ${_}${i.minimum.toString()} \u0B86\u0B95 \u0B87\u0BB0\u0BC1\u0B95\u0BCD\u0B95 \u0BB5\u0BC7\u0BA3\u0BCD\u0B9F\u0BC1\u0BAE\u0BCD`}case"invalid_format":{let _=i;if(_.format==="starts_with")return`\u0BA4\u0BB5\u0BB1\u0BBE\u0BA9 \u0B9A\u0BB0\u0BAE\u0BCD: "${_.prefix}" \u0B87\u0BB2\u0BCD \u0BA4\u0BCA\u0B9F\u0B99\u0BCD\u0B95 \u0BB5\u0BC7\u0BA3\u0BCD\u0B9F\u0BC1\u0BAE\u0BCD`;if(_.format==="ends_with")return`\u0BA4\u0BB5\u0BB1\u0BBE\u0BA9 \u0B9A\u0BB0\u0BAE\u0BCD: "${_.suffix}" \u0B87\u0BB2\u0BCD \u0BAE\u0BC1\u0B9F\u0BBF\u0BB5\u0B9F\u0BC8\u0BAF \u0BB5\u0BC7\u0BA3\u0BCD\u0B9F\u0BC1\u0BAE\u0BCD`;if(_.format==="includes")return`\u0BA4\u0BB5\u0BB1\u0BBE\u0BA9 \u0B9A\u0BB0\u0BAE\u0BCD: "${_.includes}" \u0B90 \u0B89\u0BB3\u0BCD\u0BB3\u0B9F\u0B95\u0BCD\u0B95 \u0BB5\u0BC7\u0BA3\u0BCD\u0B9F\u0BC1\u0BAE\u0BCD`;if(_.format==="regex")return`\u0BA4\u0BB5\u0BB1\u0BBE\u0BA9 \u0B9A\u0BB0\u0BAE\u0BCD: ${_.pattern} \u0BAE\u0BC1\u0BB1\u0BC8\u0BAA\u0BBE\u0B9F\u0BCD\u0B9F\u0BC1\u0B9F\u0BA9\u0BCD \u0BAA\u0BCA\u0BB0\u0BC1\u0BA8\u0BCD\u0BA4 \u0BB5\u0BC7\u0BA3\u0BCD\u0B9F\u0BC1\u0BAE\u0BCD`;return`\u0BA4\u0BB5\u0BB1\u0BBE\u0BA9 ${t[_.format]??i.format}`}case"not_multiple_of":return`\u0BA4\u0BB5\u0BB1\u0BBE\u0BA9 \u0B8E\u0BA3\u0BCD: ${i.divisor} \u0B87\u0BA9\u0BCD \u0BAA\u0BB2\u0BAE\u0BBE\u0B95 \u0B87\u0BB0\u0BC1\u0B95\u0BCD\u0B95 \u0BB5\u0BC7\u0BA3\u0BCD\u0B9F\u0BC1\u0BAE\u0BCD`;case"unrecognized_keys":return`\u0B85\u0B9F\u0BC8\u0BAF\u0BBE\u0BB3\u0BAE\u0BCD \u0BA4\u0BC6\u0BB0\u0BBF\u0BAF\u0BBE\u0BA4 \u0BB5\u0BBF\u0B9A\u0BC8${i.keys.length>1?"\u0B95\u0BB3\u0BCD":""}: ${h(i.keys,", ")}`;case"invalid_key":return`${i.origin} \u0B87\u0BB2\u0BCD \u0BA4\u0BB5\u0BB1\u0BBE\u0BA9 \u0BB5\u0BBF\u0B9A\u0BC8`;case"invalid_union":return"\u0BA4\u0BB5\u0BB1\u0BBE\u0BA9 \u0B89\u0BB3\u0BCD\u0BB3\u0BC0\u0B9F\u0BC1";case"invalid_element":return`${i.origin} \u0B87\u0BB2\u0BCD \u0BA4\u0BB5\u0BB1\u0BBE\u0BA9 \u0BAE\u0BA4\u0BBF\u0BAA\u0BCD\u0BAA\u0BC1`;default:return"\u0BA4\u0BB5\u0BB1\u0BBE\u0BA9 \u0B89\u0BB3\u0BCD\u0BB3\u0BC0\u0B9F\u0BC1"}}};var mU=N(()=>{G()});function nw(){return{localeError:TW()}}var TW=()=>{let r={string:{unit:"\u0E15\u0E31\u0E27\u0E2D\u0E31\u0E01\u0E29\u0E23",verb:"\u0E04\u0E27\u0E23\u0E21\u0E35"},file:{unit:"\u0E44\u0E1A\u0E15\u0E4C",verb:"\u0E04\u0E27\u0E23\u0E21\u0E35"},array:{unit:"\u0E23\u0E32\u0E22\u0E01\u0E32\u0E23",verb:"\u0E04\u0E27\u0E23\u0E21\u0E35"},set:{unit:"\u0E23\u0E32\u0E22\u0E01\u0E32\u0E23",verb:"\u0E04\u0E27\u0E23\u0E21\u0E35"}};function n(i){return r[i]??null}let t={regex:"\u0E02\u0E49\u0E2D\u0E21\u0E39\u0E25\u0E17\u0E35\u0E48\u0E1B\u0E49\u0E2D\u0E19",email:"\u0E17\u0E35\u0E48\u0E2D\u0E22\u0E39\u0E48\u0E2D\u0E35\u0E40\u0E21\u0E25",url:"URL",emoji:"\u0E2D\u0E34\u0E42\u0E21\u0E08\u0E34",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"\u0E27\u0E31\u0E19\u0E17\u0E35\u0E48\u0E40\u0E27\u0E25\u0E32\u0E41\u0E1A\u0E1A ISO",date:"\u0E27\u0E31\u0E19\u0E17\u0E35\u0E48\u0E41\u0E1A\u0E1A ISO",time:"\u0E40\u0E27\u0E25\u0E32\u0E41\u0E1A\u0E1A ISO",duration:"\u0E0A\u0E48\u0E27\u0E07\u0E40\u0E27\u0E25\u0E32\u0E41\u0E1A\u0E1A ISO",ipv4:"\u0E17\u0E35\u0E48\u0E2D\u0E22\u0E39\u0E48 IPv4",ipv6:"\u0E17\u0E35\u0E48\u0E2D\u0E22\u0E39\u0E48 IPv6",cidrv4:"\u0E0A\u0E48\u0E27\u0E07 IP \u0E41\u0E1A\u0E1A IPv4",cidrv6:"\u0E0A\u0E48\u0E27\u0E07 IP \u0E41\u0E1A\u0E1A IPv6",base64:"\u0E02\u0E49\u0E2D\u0E04\u0E27\u0E32\u0E21\u0E41\u0E1A\u0E1A Base64",base64url:"\u0E02\u0E49\u0E2D\u0E04\u0E27\u0E32\u0E21\u0E41\u0E1A\u0E1A Base64 \u0E2A\u0E33\u0E2B\u0E23\u0E31\u0E1A URL",json_string:"\u0E02\u0E49\u0E2D\u0E04\u0E27\u0E32\u0E21\u0E41\u0E1A\u0E1A JSON",e164:"\u0E40\u0E1A\u0E2D\u0E23\u0E4C\u0E42\u0E17\u0E23\u0E28\u0E31\u0E1E\u0E17\u0E4C\u0E23\u0E30\u0E2B\u0E27\u0E48\u0E32\u0E07\u0E1B\u0E23\u0E30\u0E40\u0E17\u0E28 (E.164)",jwt:"\u0E42\u0E17\u0E40\u0E04\u0E19 JWT",template_literal:"\u0E02\u0E49\u0E2D\u0E21\u0E39\u0E25\u0E17\u0E35\u0E48\u0E1B\u0E49\u0E2D\u0E19"},e={nan:"NaN",number:"\u0E15\u0E31\u0E27\u0E40\u0E25\u0E02",array:"\u0E2D\u0E32\u0E23\u0E4C\u0E40\u0E23\u0E22\u0E4C (Array)",null:"\u0E44\u0E21\u0E48\u0E21\u0E35\u0E04\u0E48\u0E32 (null)"};return(i)=>{switch(i.code){case"invalid_type":{let _=e[i.expected]??i.expected,c=S(i.input),u=e[c]??c;if(/^[A-Z]/.test(i.expected))return`\u0E1B\u0E23\u0E30\u0E40\u0E20\u0E17\u0E02\u0E49\u0E2D\u0E21\u0E39\u0E25\u0E44\u0E21\u0E48\u0E16\u0E39\u0E01\u0E15\u0E49\u0E2D\u0E07: \u0E04\u0E27\u0E23\u0E40\u0E1B\u0E47\u0E19 instanceof ${i.expected} \u0E41\u0E15\u0E48\u0E44\u0E14\u0E49\u0E23\u0E31\u0E1A ${u}`;return`\u0E1B\u0E23\u0E30\u0E40\u0E20\u0E17\u0E02\u0E49\u0E2D\u0E21\u0E39\u0E25\u0E44\u0E21\u0E48\u0E16\u0E39\u0E01\u0E15\u0E49\u0E2D\u0E07: \u0E04\u0E27\u0E23\u0E40\u0E1B\u0E47\u0E19 ${_} \u0E41\u0E15\u0E48\u0E44\u0E14\u0E49\u0E23\u0E31\u0E1A ${u}`}case"invalid_value":if(i.values.length===1)return`\u0E04\u0E48\u0E32\u0E44\u0E21\u0E48\u0E16\u0E39\u0E01\u0E15\u0E49\u0E2D\u0E07: \u0E04\u0E27\u0E23\u0E40\u0E1B\u0E47\u0E19 ${z(i.values[0])}`;return`\u0E15\u0E31\u0E27\u0E40\u0E25\u0E37\u0E2D\u0E01\u0E44\u0E21\u0E48\u0E16\u0E39\u0E01\u0E15\u0E49\u0E2D\u0E07: \u0E04\u0E27\u0E23\u0E40\u0E1B\u0E47\u0E19\u0E2B\u0E19\u0E36\u0E48\u0E07\u0E43\u0E19 ${h(i.values,"|")}`;case"too_big":{let _=i.inclusive?"\u0E44\u0E21\u0E48\u0E40\u0E01\u0E34\u0E19":"\u0E19\u0E49\u0E2D\u0E22\u0E01\u0E27\u0E48\u0E32",c=n(i.origin);if(c)return`\u0E40\u0E01\u0E34\u0E19\u0E01\u0E33\u0E2B\u0E19\u0E14: ${i.origin??"\u0E04\u0E48\u0E32"} \u0E04\u0E27\u0E23\u0E21\u0E35${_} ${i.maximum.toString()} ${c.unit??"\u0E23\u0E32\u0E22\u0E01\u0E32\u0E23"}`;return`\u0E40\u0E01\u0E34\u0E19\u0E01\u0E33\u0E2B\u0E19\u0E14: ${i.origin??"\u0E04\u0E48\u0E32"} \u0E04\u0E27\u0E23\u0E21\u0E35${_} ${i.maximum.toString()}`}case"too_small":{let _=i.inclusive?"\u0E2D\u0E22\u0E48\u0E32\u0E07\u0E19\u0E49\u0E2D\u0E22":"\u0E21\u0E32\u0E01\u0E01\u0E27\u0E48\u0E32",c=n(i.origin);if(c)return`\u0E19\u0E49\u0E2D\u0E22\u0E01\u0E27\u0E48\u0E32\u0E01\u0E33\u0E2B\u0E19\u0E14: ${i.origin} \u0E04\u0E27\u0E23\u0E21\u0E35${_} ${i.minimum.toString()} ${c.unit}`;return`\u0E19\u0E49\u0E2D\u0E22\u0E01\u0E27\u0E48\u0E32\u0E01\u0E33\u0E2B\u0E19\u0E14: ${i.origin} \u0E04\u0E27\u0E23\u0E21\u0E35${_} ${i.minimum.toString()}`}case"invalid_format":{let _=i;if(_.format==="starts_with")return`\u0E23\u0E39\u0E1B\u0E41\u0E1A\u0E1A\u0E44\u0E21\u0E48\u0E16\u0E39\u0E01\u0E15\u0E49\u0E2D\u0E07: \u0E02\u0E49\u0E2D\u0E04\u0E27\u0E32\u0E21\u0E15\u0E49\u0E2D\u0E07\u0E02\u0E36\u0E49\u0E19\u0E15\u0E49\u0E19\u0E14\u0E49\u0E27\u0E22 "${_.prefix}"`;if(_.format==="ends_with")return`\u0E23\u0E39\u0E1B\u0E41\u0E1A\u0E1A\u0E44\u0E21\u0E48\u0E16\u0E39\u0E01\u0E15\u0E49\u0E2D\u0E07: \u0E02\u0E49\u0E2D\u0E04\u0E27\u0E32\u0E21\u0E15\u0E49\u0E2D\u0E07\u0E25\u0E07\u0E17\u0E49\u0E32\u0E22\u0E14\u0E49\u0E27\u0E22 "${_.suffix}"`;if(_.format==="includes")return`\u0E23\u0E39\u0E1B\u0E41\u0E1A\u0E1A\u0E44\u0E21\u0E48\u0E16\u0E39\u0E01\u0E15\u0E49\u0E2D\u0E07: \u0E02\u0E49\u0E2D\u0E04\u0E27\u0E32\u0E21\u0E15\u0E49\u0E2D\u0E07\u0E21\u0E35 "${_.includes}" \u0E2D\u0E22\u0E39\u0E48\u0E43\u0E19\u0E02\u0E49\u0E2D\u0E04\u0E27\u0E32\u0E21`;if(_.format==="regex")return`\u0E23\u0E39\u0E1B\u0E41\u0E1A\u0E1A\u0E44\u0E21\u0E48\u0E16\u0E39\u0E01\u0E15\u0E49\u0E2D\u0E07: \u0E15\u0E49\u0E2D\u0E07\u0E15\u0E23\u0E07\u0E01\u0E31\u0E1A\u0E23\u0E39\u0E1B\u0E41\u0E1A\u0E1A\u0E17\u0E35\u0E48\u0E01\u0E33\u0E2B\u0E19\u0E14 ${_.pattern}`;return`\u0E23\u0E39\u0E1B\u0E41\u0E1A\u0E1A\u0E44\u0E21\u0E48\u0E16\u0E39\u0E01\u0E15\u0E49\u0E2D\u0E07: ${t[_.format]??i.format}`}case"not_multiple_of":return`\u0E15\u0E31\u0E27\u0E40\u0E25\u0E02\u0E44\u0E21\u0E48\u0E16\u0E39\u0E01\u0E15\u0E49\u0E2D\u0E07: \u0E15\u0E49\u0E2D\u0E07\u0E40\u0E1B\u0E47\u0E19\u0E08\u0E33\u0E19\u0E27\u0E19\u0E17\u0E35\u0E48\u0E2B\u0E32\u0E23\u0E14\u0E49\u0E27\u0E22 ${i.divisor} \u0E44\u0E14\u0E49\u0E25\u0E07\u0E15\u0E31\u0E27`;case"unrecognized_keys":return`\u0E1E\u0E1A\u0E04\u0E35\u0E22\u0E4C\u0E17\u0E35\u0E48\u0E44\u0E21\u0E48\u0E23\u0E39\u0E49\u0E08\u0E31\u0E01: ${h(i.keys,", ")}`;case"invalid_key":return`\u0E04\u0E35\u0E22\u0E4C\u0E44\u0E21\u0E48\u0E16\u0E39\u0E01\u0E15\u0E49\u0E2D\u0E07\u0E43\u0E19 ${i.origin}`;case"invalid_union":return"\u0E02\u0E49\u0E2D\u0E21\u0E39\u0E25\u0E44\u0E21\u0E48\u0E16\u0E39\u0E01\u0E15\u0E49\u0E2D\u0E07: \u0E44\u0E21\u0E48\u0E15\u0E23\u0E07\u0E01\u0E31\u0E1A\u0E23\u0E39\u0E1B\u0E41\u0E1A\u0E1A\u0E22\u0E39\u0E40\u0E19\u0E35\u0E22\u0E19\u0E17\u0E35\u0E48\u0E01\u0E33\u0E2B\u0E19\u0E14\u0E44\u0E27\u0E49";case"invalid_element":return`\u0E02\u0E49\u0E2D\u0E21\u0E39\u0E25\u0E44\u0E21\u0E48\u0E16\u0E39\u0E01\u0E15\u0E49\u0E2D\u0E07\u0E43\u0E19 ${i.origin}`;default:return"\u0E02\u0E49\u0E2D\u0E21\u0E39\u0E25\u0E44\u0E21\u0E48\u0E16\u0E39\u0E01\u0E15\u0E49\u0E2D\u0E07"}}};var IU=N(()=>{G()});function tw(){return{localeError:NW()}}var NW=()=>{let r={string:{unit:"karakter",verb:"olmal\u0131"},file:{unit:"bayt",verb:"olmal\u0131"},array:{unit:"\xF6\u011Fe",verb:"olmal\u0131"},set:{unit:"\xF6\u011Fe",verb:"olmal\u0131"}};function n(i){return r[i]??null}let t={regex:"girdi",email:"e-posta adresi",url:"URL",emoji:"emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ISO tarih ve saat",date:"ISO tarih",time:"ISO saat",duration:"ISO s\xFCre",ipv4:"IPv4 adresi",ipv6:"IPv6 adresi",cidrv4:"IPv4 aral\u0131\u011F\u0131",cidrv6:"IPv6 aral\u0131\u011F\u0131",base64:"base64 ile \u015Fifrelenmi\u015F metin",base64url:"base64url ile \u015Fifrelenmi\u015F metin",json_string:"JSON dizesi",e164:"E.164 say\u0131s\u0131",jwt:"JWT",template_literal:"\u015Eablon dizesi"},e={nan:"NaN"};return(i)=>{switch(i.code){case"invalid_type":{let _=e[i.expected]??i.expected,c=S(i.input),u=e[c]??c;if(/^[A-Z]/.test(i.expected))return`Ge\xE7ersiz de\u011Fer: beklenen instanceof ${i.expected}, al\u0131nan ${u}`;return`Ge\xE7ersiz de\u011Fer: beklenen ${_}, al\u0131nan ${u}`}case"invalid_value":if(i.values.length===1)return`Ge\xE7ersiz de\u011Fer: beklenen ${z(i.values[0])}`;return`Ge\xE7ersiz se\xE7enek: a\u015Fa\u011F\u0131dakilerden biri olmal\u0131: ${h(i.values,"|")}`;case"too_big":{let _=i.inclusive?"<=":"<",c=n(i.origin);if(c)return`\xC7ok b\xFCy\xFCk: beklenen ${i.origin??"de\u011Fer"} ${_}${i.maximum.toString()} ${c.unit??"\xF6\u011Fe"}`;return`\xC7ok b\xFCy\xFCk: beklenen ${i.origin??"de\u011Fer"} ${_}${i.maximum.toString()}`}case"too_small":{let _=i.inclusive?">=":">",c=n(i.origin);if(c)return`\xC7ok k\xFC\xE7\xFCk: beklenen ${i.origin} ${_}${i.minimum.toString()} ${c.unit}`;return`\xC7ok k\xFC\xE7\xFCk: beklenen ${i.origin} ${_}${i.minimum.toString()}`}case"invalid_format":{let _=i;if(_.format==="starts_with")return`Ge\xE7ersiz metin: "${_.prefix}" ile ba\u015Flamal\u0131`;if(_.format==="ends_with")return`Ge\xE7ersiz metin: "${_.suffix}" ile bitmeli`;if(_.format==="includes")return`Ge\xE7ersiz metin: "${_.includes}" i\xE7ermeli`;if(_.format==="regex")return`Ge\xE7ersiz metin: ${_.pattern} desenine uymal\u0131`;return`Ge\xE7ersiz ${t[_.format]??i.format}`}case"not_multiple_of":return`Ge\xE7ersiz say\u0131: ${i.divisor} ile tam b\xF6l\xFCnebilmeli`;case"unrecognized_keys":return`Tan\u0131nmayan anahtar${i.keys.length>1?"lar":""}: ${h(i.keys,", ")}`;case"invalid_key":return`${i.origin} i\xE7inde ge\xE7ersiz anahtar`;case"invalid_union":return"Ge\xE7ersiz de\u011Fer";case"invalid_element":return`${i.origin} i\xE7inde ge\xE7ersiz de\u011Fer`;default:return"Ge\xE7ersiz de\u011Fer"}}};var OU=N(()=>{G()});function R_(){return{localeError:LW()}}var LW=()=>{let r={string:{unit:"\u0441\u0438\u043C\u0432\u043E\u043B\u0456\u0432",verb:"\u043C\u0430\u0442\u0438\u043C\u0435"},file:{unit:"\u0431\u0430\u0439\u0442\u0456\u0432",verb:"\u043C\u0430\u0442\u0438\u043C\u0435"},array:{unit:"\u0435\u043B\u0435\u043C\u0435\u043D\u0442\u0456\u0432",verb:"\u043C\u0430\u0442\u0438\u043C\u0435"},set:{unit:"\u0435\u043B\u0435\u043C\u0435\u043D\u0442\u0456\u0432",verb:"\u043C\u0430\u0442\u0438\u043C\u0435"}};function n(i){return r[i]??null}let t={regex:"\u0432\u0445\u0456\u0434\u043D\u0456 \u0434\u0430\u043D\u0456",email:"\u0430\u0434\u0440\u0435\u0441\u0430 \u0435\u043B\u0435\u043A\u0442\u0440\u043E\u043D\u043D\u043E\u0457 \u043F\u043E\u0448\u0442\u0438",url:"URL",emoji:"\u0435\u043C\u043E\u0434\u0437\u0456",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"\u0434\u0430\u0442\u0430 \u0442\u0430 \u0447\u0430\u0441 ISO",date:"\u0434\u0430\u0442\u0430 ISO",time:"\u0447\u0430\u0441 ISO",duration:"\u0442\u0440\u0438\u0432\u0430\u043B\u0456\u0441\u0442\u044C ISO",ipv4:"\u0430\u0434\u0440\u0435\u0441\u0430 IPv4",ipv6:"\u0430\u0434\u0440\u0435\u0441\u0430 IPv6",cidrv4:"\u0434\u0456\u0430\u043F\u0430\u0437\u043E\u043D IPv4",cidrv6:"\u0434\u0456\u0430\u043F\u0430\u0437\u043E\u043D IPv6",base64:"\u0440\u044F\u0434\u043E\u043A \u0443 \u043A\u043E\u0434\u0443\u0432\u0430\u043D\u043D\u0456 base64",base64url:"\u0440\u044F\u0434\u043E\u043A \u0443 \u043A\u043E\u0434\u0443\u0432\u0430\u043D\u043D\u0456 base64url",json_string:"\u0440\u044F\u0434\u043E\u043A JSON",e164:"\u043D\u043E\u043C\u0435\u0440 E.164",jwt:"JWT",template_literal:"\u0432\u0445\u0456\u0434\u043D\u0456 \u0434\u0430\u043D\u0456"},e={nan:"NaN",number:"\u0447\u0438\u0441\u043B\u043E",array:"\u043C\u0430\u0441\u0438\u0432"};return(i)=>{switch(i.code){case"invalid_type":{let _=e[i.expected]??i.expected,c=S(i.input),u=e[c]??c;if(/^[A-Z]/.test(i.expected))return`\u041D\u0435\u043F\u0440\u0430\u0432\u0438\u043B\u044C\u043D\u0456 \u0432\u0445\u0456\u0434\u043D\u0456 \u0434\u0430\u043D\u0456: \u043E\u0447\u0456\u043A\u0443\u0454\u0442\u044C\u0441\u044F instanceof ${i.expected}, \u043E\u0442\u0440\u0438\u043C\u0430\u043D\u043E ${u}`;return`\u041D\u0435\u043F\u0440\u0430\u0432\u0438\u043B\u044C\u043D\u0456 \u0432\u0445\u0456\u0434\u043D\u0456 \u0434\u0430\u043D\u0456: \u043E\u0447\u0456\u043A\u0443\u0454\u0442\u044C\u0441\u044F ${_}, \u043E\u0442\u0440\u0438\u043C\u0430\u043D\u043E ${u}`}case"invalid_value":if(i.values.length===1)return`\u041D\u0435\u043F\u0440\u0430\u0432\u0438\u043B\u044C\u043D\u0456 \u0432\u0445\u0456\u0434\u043D\u0456 \u0434\u0430\u043D\u0456: \u043E\u0447\u0456\u043A\u0443\u0454\u0442\u044C\u0441\u044F ${z(i.values[0])}`;return`\u041D\u0435\u043F\u0440\u0430\u0432\u0438\u043B\u044C\u043D\u0430 \u043E\u043F\u0446\u0456\u044F: \u043E\u0447\u0456\u043A\u0443\u0454\u0442\u044C\u0441\u044F \u043E\u0434\u043D\u0435 \u0437 ${h(i.values,"|")}`;case"too_big":{let _=i.inclusive?"<=":"<",c=n(i.origin);if(c)return`\u0417\u0430\u043D\u0430\u0434\u0442\u043E \u0432\u0435\u043B\u0438\u043A\u0435: \u043E\u0447\u0456\u043A\u0443\u0454\u0442\u044C\u0441\u044F, \u0449\u043E ${i.origin??"\u0437\u043D\u0430\u0447\u0435\u043D\u043D\u044F"} ${c.verb} ${_}${i.maximum.toString()} ${c.unit??"\u0435\u043B\u0435\u043C\u0435\u043D\u0442\u0456\u0432"}`;return`\u0417\u0430\u043D\u0430\u0434\u0442\u043E \u0432\u0435\u043B\u0438\u043A\u0435: \u043E\u0447\u0456\u043A\u0443\u0454\u0442\u044C\u0441\u044F, \u0449\u043E ${i.origin??"\u0437\u043D\u0430\u0447\u0435\u043D\u043D\u044F"} \u0431\u0443\u0434\u0435 ${_}${i.maximum.toString()}`}case"too_small":{let _=i.inclusive?">=":">",c=n(i.origin);if(c)return`\u0417\u0430\u043D\u0430\u0434\u0442\u043E \u043C\u0430\u043B\u0435: \u043E\u0447\u0456\u043A\u0443\u0454\u0442\u044C\u0441\u044F, \u0449\u043E ${i.origin} ${c.verb} ${_}${i.minimum.toString()} ${c.unit}`;return`\u0417\u0430\u043D\u0430\u0434\u0442\u043E \u043C\u0430\u043B\u0435: \u043E\u0447\u0456\u043A\u0443\u0454\u0442\u044C\u0441\u044F, \u0449\u043E ${i.origin} \u0431\u0443\u0434\u0435 ${_}${i.minimum.toString()}`}case"invalid_format":{let _=i;if(_.format==="starts_with")return`\u041D\u0435\u043F\u0440\u0430\u0432\u0438\u043B\u044C\u043D\u0438\u0439 \u0440\u044F\u0434\u043E\u043A: \u043F\u043E\u0432\u0438\u043D\u0435\u043D \u043F\u043E\u0447\u0438\u043D\u0430\u0442\u0438\u0441\u044F \u0437 "${_.prefix}"`;if(_.format==="ends_with")return`\u041D\u0435\u043F\u0440\u0430\u0432\u0438\u043B\u044C\u043D\u0438\u0439 \u0440\u044F\u0434\u043E\u043A: \u043F\u043E\u0432\u0438\u043D\u0435\u043D \u0437\u0430\u043A\u0456\u043D\u0447\u0443\u0432\u0430\u0442\u0438\u0441\u044F \u043D\u0430 "${_.suffix}"`;if(_.format==="includes")return`\u041D\u0435\u043F\u0440\u0430\u0432\u0438\u043B\u044C\u043D\u0438\u0439 \u0440\u044F\u0434\u043E\u043A: \u043F\u043E\u0432\u0438\u043D\u0435\u043D \u043C\u0456\u0441\u0442\u0438\u0442\u0438 "${_.includes}"`;if(_.format==="regex")return`\u041D\u0435\u043F\u0440\u0430\u0432\u0438\u043B\u044C\u043D\u0438\u0439 \u0440\u044F\u0434\u043E\u043A: \u043F\u043E\u0432\u0438\u043D\u0435\u043D \u0432\u0456\u0434\u043F\u043E\u0432\u0456\u0434\u0430\u0442\u0438 \u0448\u0430\u0431\u043B\u043E\u043D\u0443 ${_.pattern}`;return`\u041D\u0435\u043F\u0440\u0430\u0432\u0438\u043B\u044C\u043D\u0438\u0439 ${t[_.format]??i.format}`}case"not_multiple_of":return`\u041D\u0435\u043F\u0440\u0430\u0432\u0438\u043B\u044C\u043D\u0435 \u0447\u0438\u0441\u043B\u043E: \u043F\u043E\u0432\u0438\u043D\u043D\u043E \u0431\u0443\u0442\u0438 \u043A\u0440\u0430\u0442\u043D\u0438\u043C ${i.divisor}`;case"unrecognized_keys":return`\u041D\u0435\u0440\u043E\u0437\u043F\u0456\u0437\u043D\u0430\u043D\u0438\u0439 \u043A\u043B\u044E\u0447${i.keys.length>1?"\u0456":""}: ${h(i.keys,", ")}`;case"invalid_key":return`\u041D\u0435\u043F\u0440\u0430\u0432\u0438\u043B\u044C\u043D\u0438\u0439 \u043A\u043B\u044E\u0447 \u0443 ${i.origin}`;case"invalid_union":return"\u041D\u0435\u043F\u0440\u0430\u0432\u0438\u043B\u044C\u043D\u0456 \u0432\u0445\u0456\u0434\u043D\u0456 \u0434\u0430\u043D\u0456";case"invalid_element":return`\u041D\u0435\u043F\u0440\u0430\u0432\u0438\u043B\u044C\u043D\u0435 \u0437\u043D\u0430\u0447\u0435\u043D\u043D\u044F \u0443 ${i.origin}`;default:return"\u041D\u0435\u043F\u0440\u0430\u0432\u0438\u043B\u044C\u043D\u0456 \u0432\u0445\u0456\u0434\u043D\u0456 \u0434\u0430\u043D\u0456"}}};var iw=N(()=>{G()});function ew(){return R_()}var UU=N(()=>{iw()});function _w(){return{localeError:zW()}}var zW=()=>{let r={string:{unit:"\u062D\u0631\u0648\u0641",verb:"\u06C1\u0648\u0646\u0627"},file:{unit:"\u0628\u0627\u0626\u0679\u0633",verb:"\u06C1\u0648\u0646\u0627"},array:{unit:"\u0622\u0626\u0679\u0645\u0632",verb:"\u06C1\u0648\u0646\u0627"},set:{unit:"\u0622\u0626\u0679\u0645\u0632",verb:"\u06C1\u0648\u0646\u0627"}};function n(i){return r[i]??null}let t={regex:"\u0627\u0646 \u067E\u0679",email:"\u0627\u06CC \u0645\u06CC\u0644 \u0627\u06CC\u0688\u0631\u06CC\u0633",url:"\u06CC\u0648 \u0622\u0631 \u0627\u06CC\u0644",emoji:"\u0627\u06CC\u0645\u0648\u062C\u06CC",uuid:"\u06CC\u0648 \u06CC\u0648 \u0622\u0626\u06CC \u0688\u06CC",uuidv4:"\u06CC\u0648 \u06CC\u0648 \u0622\u0626\u06CC \u0688\u06CC \u0648\u06CC 4",uuidv6:"\u06CC\u0648 \u06CC\u0648 \u0622\u0626\u06CC \u0688\u06CC \u0648\u06CC 6",nanoid:"\u0646\u06CC\u0646\u0648 \u0622\u0626\u06CC \u0688\u06CC",guid:"\u062C\u06CC \u06CC\u0648 \u0622\u0626\u06CC \u0688\u06CC",cuid:"\u0633\u06CC \u06CC\u0648 \u0622\u0626\u06CC \u0688\u06CC",cuid2:"\u0633\u06CC \u06CC\u0648 \u0622\u0626\u06CC \u0688\u06CC 2",ulid:"\u06CC\u0648 \u0627\u06CC\u0644 \u0622\u0626\u06CC \u0688\u06CC",xid:"\u0627\u06CC\u06A9\u0633 \u0622\u0626\u06CC \u0688\u06CC",ksuid:"\u06A9\u06D2 \u0627\u06CC\u0633 \u06CC\u0648 \u0622\u0626\u06CC \u0688\u06CC",datetime:"\u0622\u0626\u06CC \u0627\u06CC\u0633 \u0627\u0648 \u0688\u06CC\u0679 \u0679\u0627\u0626\u0645",date:"\u0622\u0626\u06CC \u0627\u06CC\u0633 \u0627\u0648 \u062A\u0627\u0631\u06CC\u062E",time:"\u0622\u0626\u06CC \u0627\u06CC\u0633 \u0627\u0648 \u0648\u0642\u062A",duration:"\u0622\u0626\u06CC \u0627\u06CC\u0633 \u0627\u0648 \u0645\u062F\u062A",ipv4:"\u0622\u0626\u06CC \u067E\u06CC \u0648\u06CC 4 \u0627\u06CC\u0688\u0631\u06CC\u0633",ipv6:"\u0622\u0626\u06CC \u067E\u06CC \u0648\u06CC 6 \u0627\u06CC\u0688\u0631\u06CC\u0633",cidrv4:"\u0622\u0626\u06CC \u067E\u06CC \u0648\u06CC 4 \u0631\u06CC\u0646\u062C",cidrv6:"\u0622\u0626\u06CC \u067E\u06CC \u0648\u06CC 6 \u0631\u06CC\u0646\u062C",base64:"\u0628\u06CC\u0633 64 \u0627\u0646 \u06A9\u0648\u0688\u0688 \u0633\u0679\u0631\u0646\u06AF",base64url:"\u0628\u06CC\u0633 64 \u06CC\u0648 \u0622\u0631 \u0627\u06CC\u0644 \u0627\u0646 \u06A9\u0648\u0688\u0688 \u0633\u0679\u0631\u0646\u06AF",json_string:"\u062C\u06D2 \u0627\u06CC\u0633 \u0627\u0648 \u0627\u06CC\u0646 \u0633\u0679\u0631\u0646\u06AF",e164:"\u0627\u06CC 164 \u0646\u0645\u0628\u0631",jwt:"\u062C\u06D2 \u0688\u0628\u0644\u06CC\u0648 \u0679\u06CC",template_literal:"\u0627\u0646 \u067E\u0679"},e={nan:"NaN",number:"\u0646\u0645\u0628\u0631",array:"\u0622\u0631\u06D2",null:"\u0646\u0644"};return(i)=>{switch(i.code){case"invalid_type":{let _=e[i.expected]??i.expected,c=S(i.input),u=e[c]??c;if(/^[A-Z]/.test(i.expected))return`\u063A\u0644\u0637 \u0627\u0646 \u067E\u0679: instanceof ${i.expected} \u0645\u062A\u0648\u0642\u0639 \u062A\u06BE\u0627\u060C ${u} \u0645\u0648\u0635\u0648\u0644 \u06C1\u0648\u0627`;return`\u063A\u0644\u0637 \u0627\u0646 \u067E\u0679: ${_} \u0645\u062A\u0648\u0642\u0639 \u062A\u06BE\u0627\u060C ${u} \u0645\u0648\u0635\u0648\u0644 \u06C1\u0648\u0627`}case"invalid_value":if(i.values.length===1)return`\u063A\u0644\u0637 \u0627\u0646 \u067E\u0679: ${z(i.values[0])} \u0645\u062A\u0648\u0642\u0639 \u062A\u06BE\u0627`;return`\u063A\u0644\u0637 \u0622\u067E\u0634\u0646: ${h(i.values,"|")} \u0645\u06CC\u06BA \u0633\u06D2 \u0627\u06CC\u06A9 \u0645\u062A\u0648\u0642\u0639 \u062A\u06BE\u0627`;case"too_big":{let _=i.inclusive?"<=":"<",c=n(i.origin);if(c)return`\u0628\u06C1\u062A \u0628\u0691\u0627: ${i.origin??"\u0648\u06CC\u0644\u06CC\u0648"} \u06A9\u06D2 ${_}${i.maximum.toString()} ${c.unit??"\u0639\u0646\u0627\u0635\u0631"} \u06C1\u0648\u0646\u06D2 \u0645\u062A\u0648\u0642\u0639 \u062A\u06BE\u06D2`;return`\u0628\u06C1\u062A \u0628\u0691\u0627: ${i.origin??"\u0648\u06CC\u0644\u06CC\u0648"} \u06A9\u0627 ${_}${i.maximum.toString()} \u06C1\u0648\u0646\u0627 \u0645\u062A\u0648\u0642\u0639 \u062A\u06BE\u0627`}case"too_small":{let _=i.inclusive?">=":">",c=n(i.origin);if(c)return`\u0628\u06C1\u062A \u0686\u06BE\u0648\u0679\u0627: ${i.origin} \u06A9\u06D2 ${_}${i.minimum.toString()} ${c.unit} \u06C1\u0648\u0646\u06D2 \u0645\u062A\u0648\u0642\u0639 \u062A\u06BE\u06D2`;return`\u0628\u06C1\u062A \u0686\u06BE\u0648\u0679\u0627: ${i.origin} \u06A9\u0627 ${_}${i.minimum.toString()} \u06C1\u0648\u0646\u0627 \u0645\u062A\u0648\u0642\u0639 \u062A\u06BE\u0627`}case"invalid_format":{let _=i;if(_.format==="starts_with")return`\u063A\u0644\u0637 \u0633\u0679\u0631\u0646\u06AF: "${_.prefix}" \u0633\u06D2 \u0634\u0631\u0648\u0639 \u06C1\u0648\u0646\u0627 \u0686\u0627\u06C1\u06CC\u06D2`;if(_.format==="ends_with")return`\u063A\u0644\u0637 \u0633\u0679\u0631\u0646\u06AF: "${_.suffix}" \u067E\u0631 \u062E\u062A\u0645 \u06C1\u0648\u0646\u0627 \u0686\u0627\u06C1\u06CC\u06D2`;if(_.format==="includes")return`\u063A\u0644\u0637 \u0633\u0679\u0631\u0646\u06AF: "${_.includes}" \u0634\u0627\u0645\u0644 \u06C1\u0648\u0646\u0627 \u0686\u0627\u06C1\u06CC\u06D2`;if(_.format==="regex")return`\u063A\u0644\u0637 \u0633\u0679\u0631\u0646\u06AF: \u067E\u06CC\u0679\u0631\u0646 ${_.pattern} \u0633\u06D2 \u0645\u06CC\u0686 \u06C1\u0648\u0646\u0627 \u0686\u0627\u06C1\u06CC\u06D2`;return`\u063A\u0644\u0637 ${t[_.format]??i.format}`}case"not_multiple_of":return`\u063A\u0644\u0637 \u0646\u0645\u0628\u0631: ${i.divisor} \u06A9\u0627 \u0645\u0636\u0627\u0639\u0641 \u06C1\u0648\u0646\u0627 \u0686\u0627\u06C1\u06CC\u06D2`;case"unrecognized_keys":return`\u063A\u06CC\u0631 \u062A\u0633\u0644\u06CC\u0645 \u0634\u062F\u06C1 \u06A9\u06CC${i.keys.length>1?"\u0632":""}: ${h(i.keys,"\u060C ")}`;case"invalid_key":return`${i.origin} \u0645\u06CC\u06BA \u063A\u0644\u0637 \u06A9\u06CC`;case"invalid_union":return"\u063A\u0644\u0637 \u0627\u0646 \u067E\u0679";case"invalid_element":return`${i.origin} \u0645\u06CC\u06BA \u063A\u0644\u0637 \u0648\u06CC\u0644\u06CC\u0648`;default:return"\u063A\u0644\u0637 \u0627\u0646 \u067E\u0679"}}};var hU=N(()=>{G()});function cw(){return{localeError:SW()}}var SW=()=>{let r={string:{unit:"belgi",verb:"bo\u2018lishi kerak"},file:{unit:"bayt",verb:"bo\u2018lishi kerak"},array:{unit:"element",verb:"bo\u2018lishi kerak"},set:{unit:"element",verb:"bo\u2018lishi kerak"}};function n(i){return r[i]??null}let t={regex:"kirish",email:"elektron pochta manzili",url:"URL",emoji:"emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ISO sana va vaqti",date:"ISO sana",time:"ISO vaqt",duration:"ISO davomiylik",ipv4:"IPv4 manzil",ipv6:"IPv6 manzil",mac:"MAC manzil",cidrv4:"IPv4 diapazon",cidrv6:"IPv6 diapazon",base64:"base64 kodlangan satr",base64url:"base64url kodlangan satr",json_string:"JSON satr",e164:"E.164 raqam",jwt:"JWT",template_literal:"kirish"},e={nan:"NaN",number:"raqam",array:"massiv"};return(i)=>{switch(i.code){case"invalid_type":{let _=e[i.expected]??i.expected,c=S(i.input),u=e[c]??c;if(/^[A-Z]/.test(i.expected))return`Noto\u2018g\u2018ri kirish: kutilgan instanceof ${i.expected}, qabul qilingan ${u}`;return`Noto\u2018g\u2018ri kirish: kutilgan ${_}, qabul qilingan ${u}`}case"invalid_value":if(i.values.length===1)return`Noto\u2018g\u2018ri kirish: kutilgan ${z(i.values[0])}`;return`Noto\u2018g\u2018ri variant: quyidagilardan biri kutilgan ${h(i.values,"|")}`;case"too_big":{let _=i.inclusive?"<=":"<",c=n(i.origin);if(c)return`Juda katta: kutilgan ${i.origin??"qiymat"} ${_}${i.maximum.toString()} ${c.unit} ${c.verb}`;return`Juda katta: kutilgan ${i.origin??"qiymat"} ${_}${i.maximum.toString()}`}case"too_small":{let _=i.inclusive?">=":">",c=n(i.origin);if(c)return`Juda kichik: kutilgan ${i.origin} ${_}${i.minimum.toString()} ${c.unit} ${c.verb}`;return`Juda kichik: kutilgan ${i.origin} ${_}${i.minimum.toString()}`}case"invalid_format":{let _=i;if(_.format==="starts_with")return`Noto\u2018g\u2018ri satr: "${_.prefix}" bilan boshlanishi kerak`;if(_.format==="ends_with")return`Noto\u2018g\u2018ri satr: "${_.suffix}" bilan tugashi kerak`;if(_.format==="includes")return`Noto\u2018g\u2018ri satr: "${_.includes}" ni o\u2018z ichiga olishi kerak`;if(_.format==="regex")return`Noto\u2018g\u2018ri satr: ${_.pattern} shabloniga mos kelishi kerak`;return`Noto\u2018g\u2018ri ${t[_.format]??i.format}`}case"not_multiple_of":return`Noto\u2018g\u2018ri raqam: ${i.divisor} ning karralisi bo\u2018lishi kerak`;case"unrecognized_keys":return`Noma\u2019lum kalit${i.keys.length>1?"lar":""}: ${h(i.keys,", ")}`;case"invalid_key":return`${i.origin} dagi kalit noto\u2018g\u2018ri`;case"invalid_union":return"Noto\u2018g\u2018ri kirish";case"invalid_element":return`${i.origin} da noto\u2018g\u2018ri qiymat`;default:return"Noto\u2018g\u2018ri kirish"}}};var RU=N(()=>{G()});function uw(){return{localeError:WW()}}var WW=()=>{let r={string:{unit:"k\xFD t\u1EF1",verb:"c\xF3"},file:{unit:"byte",verb:"c\xF3"},array:{unit:"ph\u1EA7n t\u1EED",verb:"c\xF3"},set:{unit:"ph\u1EA7n t\u1EED",verb:"c\xF3"}};function n(i){return r[i]??null}let t={regex:"\u0111\u1EA7u v\xE0o",email:"\u0111\u1ECBa ch\u1EC9 email",url:"URL",emoji:"emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ng\xE0y gi\u1EDD ISO",date:"ng\xE0y ISO",time:"gi\u1EDD ISO",duration:"kho\u1EA3ng th\u1EDDi gian ISO",ipv4:"\u0111\u1ECBa ch\u1EC9 IPv4",ipv6:"\u0111\u1ECBa ch\u1EC9 IPv6",cidrv4:"d\u1EA3i IPv4",cidrv6:"d\u1EA3i IPv6",base64:"chu\u1ED7i m\xE3 h\xF3a base64",base64url:"chu\u1ED7i m\xE3 h\xF3a base64url",json_string:"chu\u1ED7i JSON",e164:"s\u1ED1 E.164",jwt:"JWT",template_literal:"\u0111\u1EA7u v\xE0o"},e={nan:"NaN",number:"s\u1ED1",array:"m\u1EA3ng"};return(i)=>{switch(i.code){case"invalid_type":{let _=e[i.expected]??i.expected,c=S(i.input),u=e[c]??c;if(/^[A-Z]/.test(i.expected))return`\u0110\u1EA7u v\xE0o kh\xF4ng h\u1EE3p l\u1EC7: mong \u0111\u1EE3i instanceof ${i.expected}, nh\u1EADn \u0111\u01B0\u1EE3c ${u}`;return`\u0110\u1EA7u v\xE0o kh\xF4ng h\u1EE3p l\u1EC7: mong \u0111\u1EE3i ${_}, nh\u1EADn \u0111\u01B0\u1EE3c ${u}`}case"invalid_value":if(i.values.length===1)return`\u0110\u1EA7u v\xE0o kh\xF4ng h\u1EE3p l\u1EC7: mong \u0111\u1EE3i ${z(i.values[0])}`;return`T\xF9y ch\u1ECDn kh\xF4ng h\u1EE3p l\u1EC7: mong \u0111\u1EE3i m\u1ED9t trong c\xE1c gi\xE1 tr\u1ECB ${h(i.values,"|")}`;case"too_big":{let _=i.inclusive?"<=":"<",c=n(i.origin);if(c)return`Qu\xE1 l\u1EDBn: mong \u0111\u1EE3i ${i.origin??"gi\xE1 tr\u1ECB"} ${c.verb} ${_}${i.maximum.toString()} ${c.unit??"ph\u1EA7n t\u1EED"}`;return`Qu\xE1 l\u1EDBn: mong \u0111\u1EE3i ${i.origin??"gi\xE1 tr\u1ECB"} ${_}${i.maximum.toString()}`}case"too_small":{let _=i.inclusive?">=":">",c=n(i.origin);if(c)return`Qu\xE1 nh\u1ECF: mong \u0111\u1EE3i ${i.origin} ${c.verb} ${_}${i.minimum.toString()} ${c.unit}`;return`Qu\xE1 nh\u1ECF: mong \u0111\u1EE3i ${i.origin} ${_}${i.minimum.toString()}`}case"invalid_format":{let _=i;if(_.format==="starts_with")return`Chu\u1ED7i kh\xF4ng h\u1EE3p l\u1EC7: ph\u1EA3i b\u1EAFt \u0111\u1EA7u b\u1EB1ng "${_.prefix}"`;if(_.format==="ends_with")return`Chu\u1ED7i kh\xF4ng h\u1EE3p l\u1EC7: ph\u1EA3i k\u1EBFt th\xFAc b\u1EB1ng "${_.suffix}"`;if(_.format==="includes")return`Chu\u1ED7i kh\xF4ng h\u1EE3p l\u1EC7: ph\u1EA3i bao g\u1ED3m "${_.includes}"`;if(_.format==="regex")return`Chu\u1ED7i kh\xF4ng h\u1EE3p l\u1EC7: ph\u1EA3i kh\u1EDBp v\u1EDBi m\u1EABu ${_.pattern}`;return`${t[_.format]??i.format} kh\xF4ng h\u1EE3p l\u1EC7`}case"not_multiple_of":return`S\u1ED1 kh\xF4ng h\u1EE3p l\u1EC7: ph\u1EA3i l\xE0 b\u1ED9i s\u1ED1 c\u1EE7a ${i.divisor}`;case"unrecognized_keys":return`Kh\xF3a kh\xF4ng \u0111\u01B0\u1EE3c nh\u1EADn d\u1EA1ng: ${h(i.keys,", ")}`;case"invalid_key":return`Kh\xF3a kh\xF4ng h\u1EE3p l\u1EC7 trong ${i.origin}`;case"invalid_union":return"\u0110\u1EA7u v\xE0o kh\xF4ng h\u1EE3p l\u1EC7";case"invalid_element":return`Gi\xE1 tr\u1ECB kh\xF4ng h\u1EE3p l\u1EC7 trong ${i.origin}`;default:return"\u0110\u1EA7u v\xE0o kh\xF4ng h\u1EE3p l\u1EC7"}}};var DU=N(()=>{G()});function ow(){return{localeError:EW()}}var EW=()=>{let r={string:{unit:"\u5B57\u7B26",verb:"\u5305\u542B"},file:{unit:"\u5B57\u8282",verb:"\u5305\u542B"},array:{unit:"\u9879",verb:"\u5305\u542B"},set:{unit:"\u9879",verb:"\u5305\u542B"}};function n(i){return r[i]??null}let t={regex:"\u8F93\u5165",email:"\u7535\u5B50\u90AE\u4EF6",url:"URL",emoji:"\u8868\u60C5\u7B26\u53F7",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ISO\u65E5\u671F\u65F6\u95F4",date:"ISO\u65E5\u671F",time:"ISO\u65F6\u95F4",duration:"ISO\u65F6\u957F",ipv4:"IPv4\u5730\u5740",ipv6:"IPv6\u5730\u5740",cidrv4:"IPv4\u7F51\u6BB5",cidrv6:"IPv6\u7F51\u6BB5",base64:"base64\u7F16\u7801\u5B57\u7B26\u4E32",base64url:"base64url\u7F16\u7801\u5B57\u7B26\u4E32",json_string:"JSON\u5B57\u7B26\u4E32",e164:"E.164\u53F7\u7801",jwt:"JWT",template_literal:"\u8F93\u5165"},e={nan:"NaN",number:"\u6570\u5B57",array:"\u6570\u7EC4",null:"\u7A7A\u503C(null)"};return(i)=>{switch(i.code){case"invalid_type":{let _=e[i.expected]??i.expected,c=S(i.input),u=e[c]??c;if(/^[A-Z]/.test(i.expected))return`\u65E0\u6548\u8F93\u5165\uFF1A\u671F\u671B instanceof ${i.expected}\uFF0C\u5B9E\u9645\u63A5\u6536 ${u}`;return`\u65E0\u6548\u8F93\u5165\uFF1A\u671F\u671B ${_}\uFF0C\u5B9E\u9645\u63A5\u6536 ${u}`}case"invalid_value":if(i.values.length===1)return`\u65E0\u6548\u8F93\u5165\uFF1A\u671F\u671B ${z(i.values[0])}`;return`\u65E0\u6548\u9009\u9879\uFF1A\u671F\u671B\u4EE5\u4E0B\u4E4B\u4E00 ${h(i.values,"|")}`;case"too_big":{let _=i.inclusive?"<=":"<",c=n(i.origin);if(c)return`\u6570\u503C\u8FC7\u5927\uFF1A\u671F\u671B ${i.origin??"\u503C"} ${_}${i.maximum.toString()} ${c.unit??"\u4E2A\u5143\u7D20"}`;return`\u6570\u503C\u8FC7\u5927\uFF1A\u671F\u671B ${i.origin??"\u503C"} ${_}${i.maximum.toString()}`}case"too_small":{let _=i.inclusive?">=":">",c=n(i.origin);if(c)return`\u6570\u503C\u8FC7\u5C0F\uFF1A\u671F\u671B ${i.origin} ${_}${i.minimum.toString()} ${c.unit}`;return`\u6570\u503C\u8FC7\u5C0F\uFF1A\u671F\u671B ${i.origin} ${_}${i.minimum.toString()}`}case"invalid_format":{let _=i;if(_.format==="starts_with")return`\u65E0\u6548\u5B57\u7B26\u4E32\uFF1A\u5FC5\u987B\u4EE5 "${_.prefix}" \u5F00\u5934`;if(_.format==="ends_with")return`\u65E0\u6548\u5B57\u7B26\u4E32\uFF1A\u5FC5\u987B\u4EE5 "${_.suffix}" \u7ED3\u5C3E`;if(_.format==="includes")return`\u65E0\u6548\u5B57\u7B26\u4E32\uFF1A\u5FC5\u987B\u5305\u542B "${_.includes}"`;if(_.format==="regex")return`\u65E0\u6548\u5B57\u7B26\u4E32\uFF1A\u5FC5\u987B\u6EE1\u8DB3\u6B63\u5219\u8868\u8FBE\u5F0F ${_.pattern}`;return`\u65E0\u6548${t[_.format]??i.format}`}case"not_multiple_of":return`\u65E0\u6548\u6570\u5B57\uFF1A\u5FC5\u987B\u662F ${i.divisor} \u7684\u500D\u6570`;case"unrecognized_keys":return`\u51FA\u73B0\u672A\u77E5\u7684\u952E(key): ${h(i.keys,", ")}`;case"invalid_key":return`${i.origin} \u4E2D\u7684\u952E(key)\u65E0\u6548`;case"invalid_union":return"\u65E0\u6548\u8F93\u5165";case"invalid_element":return`${i.origin} \u4E2D\u5305\u542B\u65E0\u6548\u503C(value)`;default:return"\u65E0\u6548\u8F93\u5165"}}};var yU=N(()=>{G()});function $w(){return{localeError:jW()}}var jW=()=>{let r={string:{unit:"\u5B57\u5143",verb:"\u64C1\u6709"},file:{unit:"\u4F4D\u5143\u7D44",verb:"\u64C1\u6709"},array:{unit:"\u9805\u76EE",verb:"\u64C1\u6709"},set:{unit:"\u9805\u76EE",verb:"\u64C1\u6709"}};function n(i){return r[i]??null}let t={regex:"\u8F38\u5165",email:"\u90F5\u4EF6\u5730\u5740",url:"URL",emoji:"emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ISO \u65E5\u671F\u6642\u9593",date:"ISO \u65E5\u671F",time:"ISO \u6642\u9593",duration:"ISO \u671F\u9593",ipv4:"IPv4 \u4F4D\u5740",ipv6:"IPv6 \u4F4D\u5740",cidrv4:"IPv4 \u7BC4\u570D",cidrv6:"IPv6 \u7BC4\u570D",base64:"base64 \u7DE8\u78BC\u5B57\u4E32",base64url:"base64url \u7DE8\u78BC\u5B57\u4E32",json_string:"JSON \u5B57\u4E32",e164:"E.164 \u6578\u503C",jwt:"JWT",template_literal:"\u8F38\u5165"},e={nan:"NaN"};return(i)=>{switch(i.code){case"invalid_type":{let _=e[i.expected]??i.expected,c=S(i.input),u=e[c]??c;if(/^[A-Z]/.test(i.expected))return`\u7121\u6548\u7684\u8F38\u5165\u503C\uFF1A\u9810\u671F\u70BA instanceof ${i.expected}\uFF0C\u4F46\u6536\u5230 ${u}`;return`\u7121\u6548\u7684\u8F38\u5165\u503C\uFF1A\u9810\u671F\u70BA ${_}\uFF0C\u4F46\u6536\u5230 ${u}`}case"invalid_value":if(i.values.length===1)return`\u7121\u6548\u7684\u8F38\u5165\u503C\uFF1A\u9810\u671F\u70BA ${z(i.values[0])}`;return`\u7121\u6548\u7684\u9078\u9805\uFF1A\u9810\u671F\u70BA\u4EE5\u4E0B\u5176\u4E2D\u4E4B\u4E00 ${h(i.values,"|")}`;case"too_big":{let _=i.inclusive?"<=":"<",c=n(i.origin);if(c)return`\u6578\u503C\u904E\u5927\uFF1A\u9810\u671F ${i.origin??"\u503C"} \u61C9\u70BA ${_}${i.maximum.toString()} ${c.unit??"\u500B\u5143\u7D20"}`;return`\u6578\u503C\u904E\u5927\uFF1A\u9810\u671F ${i.origin??"\u503C"} \u61C9\u70BA ${_}${i.maximum.toString()}`}case"too_small":{let _=i.inclusive?">=":">",c=n(i.origin);if(c)return`\u6578\u503C\u904E\u5C0F\uFF1A\u9810\u671F ${i.origin} \u61C9\u70BA ${_}${i.minimum.toString()} ${c.unit}`;return`\u6578\u503C\u904E\u5C0F\uFF1A\u9810\u671F ${i.origin} \u61C9\u70BA ${_}${i.minimum.toString()}`}case"invalid_format":{let _=i;if(_.format==="starts_with")return`\u7121\u6548\u7684\u5B57\u4E32\uFF1A\u5FC5\u9808\u4EE5 "${_.prefix}" \u958B\u982D`;if(_.format==="ends_with")return`\u7121\u6548\u7684\u5B57\u4E32\uFF1A\u5FC5\u9808\u4EE5 "${_.suffix}" \u7D50\u5C3E`;if(_.format==="includes")return`\u7121\u6548\u7684\u5B57\u4E32\uFF1A\u5FC5\u9808\u5305\u542B "${_.includes}"`;if(_.format==="regex")return`\u7121\u6548\u7684\u5B57\u4E32\uFF1A\u5FC5\u9808\u7B26\u5408\u683C\u5F0F ${_.pattern}`;return`\u7121\u6548\u7684 ${t[_.format]??i.format}`}case"not_multiple_of":return`\u7121\u6548\u7684\u6578\u5B57\uFF1A\u5FC5\u9808\u70BA ${i.divisor} \u7684\u500D\u6578`;case"unrecognized_keys":return`\u7121\u6CD5\u8B58\u5225\u7684\u9375\u503C${i.keys.length>1?"\u5011":""}\uFF1A${h(i.keys,"\u3001")}`;case"invalid_key":return`${i.origin} \u4E2D\u6709\u7121\u6548\u7684\u9375\u503C`;case"invalid_union":return"\u7121\u6548\u7684\u8F38\u5165\u503C";case"invalid_element":return`${i.origin} \u4E2D\u6709\u7121\u6548\u7684\u503C`;default:return"\u7121\u6548\u7684\u8F38\u5165\u503C"}}};var qU=N(()=>{G()});function gw(){return{localeError:JW()}}var JW=()=>{let r={string:{unit:"\xE0mi",verb:"n\xED"},file:{unit:"bytes",verb:"n\xED"},array:{unit:"nkan",verb:"n\xED"},set:{unit:"nkan",verb:"n\xED"}};function n(i){return r[i]??null}let t={regex:"\u1EB9\u0300r\u1ECD \xECb\xE1w\u1ECDl\xE9",email:"\xE0d\xEDr\u1EB9\u0301s\xEC \xECm\u1EB9\u0301l\xEC",url:"URL",emoji:"emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"\xE0k\xF3k\xF2 ISO",date:"\u1ECDj\u1ECD\u0301 ISO",time:"\xE0k\xF3k\xF2 ISO",duration:"\xE0k\xF3k\xF2 t\xF3 p\xE9 ISO",ipv4:"\xE0d\xEDr\u1EB9\u0301s\xEC IPv4",ipv6:"\xE0d\xEDr\u1EB9\u0301s\xEC IPv6",cidrv4:"\xE0gb\xE8gb\xE8 IPv4",cidrv6:"\xE0gb\xE8gb\xE8 IPv6",base64:"\u1ECD\u0300r\u1ECD\u0300 t\xED a k\u1ECD\u0301 n\xED base64",base64url:"\u1ECD\u0300r\u1ECD\u0300 base64url",json_string:"\u1ECD\u0300r\u1ECD\u0300 JSON",e164:"n\u1ECD\u0301mb\xE0 E.164",jwt:"JWT",template_literal:"\u1EB9\u0300r\u1ECD \xECb\xE1w\u1ECDl\xE9"},e={nan:"NaN",number:"n\u1ECD\u0301mb\xE0",array:"akop\u1ECD"};return(i)=>{switch(i.code){case"invalid_type":{let _=e[i.expected]??i.expected,c=S(i.input),u=e[c]??c;if(/^[A-Z]/.test(i.expected))return`\xCCb\xE1w\u1ECDl\xE9 a\u1E63\xEC\u1E63e: a n\xED l\xE1ti fi instanceof ${i.expected}, \xE0m\u1ECD\u0300 a r\xED ${u}`;return`\xCCb\xE1w\u1ECDl\xE9 a\u1E63\xEC\u1E63e: a n\xED l\xE1ti fi ${_}, \xE0m\u1ECD\u0300 a r\xED ${u}`}case"invalid_value":if(i.values.length===1)return`\xCCb\xE1w\u1ECDl\xE9 a\u1E63\xEC\u1E63e: a n\xED l\xE1ti fi ${z(i.values[0])}`;return`\xC0\u1E63\xE0y\xE0n a\u1E63\xEC\u1E63e: yan \u1ECD\u0300kan l\xE1ra ${h(i.values,"|")}`;case"too_big":{let _=i.inclusive?"<=":"<",c=n(i.origin);if(c)return`T\xF3 p\u1ECD\u0300 j\xF9: a n\xED l\xE1ti j\u1EB9\u0301 p\xE9 ${i.origin??"iye"} ${c.verb} ${_}${i.maximum} ${c.unit}`;return`T\xF3 p\u1ECD\u0300 j\xF9: a n\xED l\xE1ti j\u1EB9\u0301 ${_}${i.maximum}`}case"too_small":{let _=i.inclusive?">=":">",c=n(i.origin);if(c)return`K\xE9r\xE9 ju: a n\xED l\xE1ti j\u1EB9\u0301 p\xE9 ${i.origin} ${c.verb} ${_}${i.minimum} ${c.unit}`;return`K\xE9r\xE9 ju: a n\xED l\xE1ti j\u1EB9\u0301 ${_}${i.minimum}`}case"invalid_format":{let _=i;if(_.format==="starts_with")return`\u1ECC\u0300r\u1ECD\u0300 a\u1E63\xEC\u1E63e: gb\u1ECD\u0301d\u1ECD\u0300 b\u1EB9\u0300r\u1EB9\u0300 p\u1EB9\u0300l\xFA "${_.prefix}"`;if(_.format==="ends_with")return`\u1ECC\u0300r\u1ECD\u0300 a\u1E63\xEC\u1E63e: gb\u1ECD\u0301d\u1ECD\u0300 par\xED p\u1EB9\u0300l\xFA "${_.suffix}"`;if(_.format==="includes")return`\u1ECC\u0300r\u1ECD\u0300 a\u1E63\xEC\u1E63e: gb\u1ECD\u0301d\u1ECD\u0300 n\xED "${_.includes}"`;if(_.format==="regex")return`\u1ECC\u0300r\u1ECD\u0300 a\u1E63\xEC\u1E63e: gb\u1ECD\u0301d\u1ECD\u0300 b\xE1 \xE0p\u1EB9\u1EB9r\u1EB9 mu ${_.pattern}`;return`A\u1E63\xEC\u1E63e: ${t[_.format]??i.format}`}case"not_multiple_of":return`N\u1ECD\u0301mb\xE0 a\u1E63\xEC\u1E63e: gb\u1ECD\u0301d\u1ECD\u0300 j\u1EB9\u0301 \xE8y\xE0 p\xEDp\xEDn ti ${i.divisor}`;case"unrecognized_keys":return`B\u1ECDt\xECn\xEC \xE0\xECm\u1ECD\u0300: ${h(i.keys,", ")}`;case"invalid_key":return`B\u1ECDt\xECn\xEC a\u1E63\xEC\u1E63e n\xEDn\xFA ${i.origin}`;case"invalid_union":return"\xCCb\xE1w\u1ECDl\xE9 a\u1E63\xEC\u1E63e";case"invalid_element":return`Iye a\u1E63\xEC\u1E63e n\xEDn\xFA ${i.origin}`;default:return"\xCCb\xE1w\u1ECDl\xE9 a\u1E63\xEC\u1E63e"}}};var TU=N(()=>{G()});var D_={};kn(D_,{zhTW:()=>$w,zhCN:()=>ow,yo:()=>gw,vi:()=>uw,uz:()=>cw,ur:()=>_w,uk:()=>R_,ua:()=>ew,tr:()=>tw,th:()=>nw,ta:()=>rw,sv:()=>sb,sl:()=>pb,ru:()=>xb,pt:()=>Cb,ps:()=>ab,pl:()=>Zb,ota:()=>Kb,no:()=>Qb,nl:()=>Bb,ms:()=>Hb,mk:()=>Yb,lt:()=>vb,ko:()=>lb,km:()=>U_,kh:()=>Fb,ka:()=>Gb,ja:()=>Xb,it:()=>kb,is:()=>Pb,id:()=>Mb,hy:()=>Ab,hu:()=>Jb,he:()=>jb,frCA:()=>Eb,fr:()=>Wb,fi:()=>Sb,fa:()=>zb,es:()=>Lb,eo:()=>Nb,en:()=>O_,de:()=>qb,da:()=>yb,cs:()=>Db,ca:()=>Rb,bg:()=>hb,be:()=>Ub,az:()=>Ob,ar:()=>Ib});var dw=N(()=>{WO();EO();JO();AO();MO();PO();kO();XO();Tb();GO();VO();FO();lO();vO();YO();HO();BO();KO();aO();ZO();CO();xO();pO();sO();Vb();rU();tU();iU();eU();_U();cU();uU();oU();$U();gU();fU();bU();wU();mU();IU();OU();UU();iw();hU();RU();DU();yU();qU();TU()});class ww{constructor(){this._map=new WeakMap,this._idmap=new Map}add(r,...n){let t=n[0];if(this._map.set(r,t),t&&typeof t==="object"&&"id"in t)this._idmap.set(t.id,r);return this}clear(){return this._map=new WeakMap,this._idmap=new Map,this}remove(r){let n=this._map.get(r);if(n&&typeof n==="object"&&"id"in n)this._idmap.delete(n.id);return this._map.delete(r),this}get(r){let n=r._zod.parent;if(n){let t={...this.get(n)??{}};delete t.id;let e={...t,...this._map.get(r)};return Object.keys(e).length?e:void 0}return this._map.get(r)}has(r){return this._map.has(r)}}function yu(){return new ww}var NU,fw,bw,Wr;var y_=N(()=>{fw=Symbol("ZodOutput"),bw=Symbol("ZodInput");(NU=globalThis).__zod_globalRegistry??(NU.__zod_globalRegistry=yu());Wr=globalThis.__zod_globalRegistry});function mw(r,n){return new r({type:"string",...E(n)})}function Iw(r,n){return new r({type:"string",coerce:!0,...E(n)})}function qu(r,n){return new r({type:"string",format:"email",check:"string_format",abort:!1,...E(n)})}function q_(r,n){return new r({type:"string",format:"guid",check:"string_format",abort:!1,...E(n)})}function Tu(r,n){return new r({type:"string",format:"uuid",check:"string_format",abort:!1,...E(n)})}function Nu(r,n){return new r({type:"string",format:"uuid",check:"string_format",abort:!1,version:"v4",...E(n)})}function Lu(r,n){return new r({type:"string",format:"uuid",check:"string_format",abort:!1,version:"v6",...E(n)})}function zu(r,n){return new r({type:"string",format:"uuid",check:"string_format",abort:!1,version:"v7",...E(n)})}function T_(r,n){return new r({type:"string",format:"url",check:"string_format",abort:!1,...E(n)})}function Su(r,n){return new r({type:"string",format:"emoji",check:"string_format",abort:!1,...E(n)})}function Wu(r,n){return new r({type:"string",format:"nanoid",check:"string_format",abort:!1,...E(n)})}function Eu(r,n){return new r({type:"string",format:"cuid",check:"string_format",abort:!1,...E(n)})}function ju(r,n){return new r({type:"string",format:"cuid2",check:"string_format",abort:!1,...E(n)})}function Ju(r,n){return new r({type:"string",format:"ulid",check:"string_format",abort:!1,...E(n)})}function Au(r,n){return new r({type:"string",format:"xid",check:"string_format",abort:!1,...E(n)})}function Mu(r,n){return new r({type:"string",format:"ksuid",check:"string_format",abort:!1,...E(n)})}function Pu(r,n){return new r({type:"string",format:"ipv4",check:"string_format",abort:!1,...E(n)})}function ku(r,n){return new r({type:"string",format:"ipv6",check:"string_format",abort:!1,...E(n)})}function Ow(r,n){return new r({type:"string",format:"mac",check:"string_format",abort:!1,...E(n)})}function Xu(r,n){return new r({type:"string",format:"cidrv4",check:"string_format",abort:!1,...E(n)})}function Gu(r,n){return new r({type:"string",format:"cidrv6",check:"string_format",abort:!1,...E(n)})}function Vu(r,n){return new r({type:"string",format:"base64",check:"string_format",abort:!1,...E(n)})}function Fu(r,n){return new r({type:"string",format:"base64url",check:"string_format",abort:!1,...E(n)})}function lu(r,n){return new r({type:"string",format:"e164",check:"string_format",abort:!1,...E(n)})}function vu(r,n){return new r({type:"string",format:"jwt",check:"string_format",abort:!1,...E(n)})}function hw(r,n){return new r({type:"string",format:"datetime",check:"string_format",offset:!1,local:!1,precision:null,...E(n)})}function Rw(r,n){return new r({type:"string",format:"date",check:"string_format",...E(n)})}function Dw(r,n){return new r({type:"string",format:"time",check:"string_format",precision:null,...E(n)})}function yw(r,n){return new r({type:"string",format:"duration",check:"string_format",...E(n)})}function qw(r,n){return new r({type:"number",checks:[],...E(n)})}function Tw(r,n){return new r({type:"number",coerce:!0,checks:[],...E(n)})}function Nw(r,n){return new r({type:"number",check:"number_format",abort:!1,format:"safeint",...E(n)})}function Lw(r,n){return new r({type:"number",check:"number_format",abort:!1,format:"float32",...E(n)})}function zw(r,n){return new r({type:"number",check:"number_format",abort:!1,format:"float64",...E(n)})}function Sw(r,n){return new r({type:"number",check:"number_format",abort:!1,format:"int32",...E(n)})}function Ww(r,n){return new r({type:"number",check:"number_format",abort:!1,format:"uint32",...E(n)})}function Ew(r,n){return new r({type:"boolean",...E(n)})}function jw(r,n){return new r({type:"boolean",coerce:!0,...E(n)})}function Jw(r,n){return new r({type:"bigint",...E(n)})}function Aw(r,n){return new r({type:"bigint",coerce:!0,...E(n)})}function Mw(r,n){return new r({type:"bigint",check:"bigint_format",abort:!1,format:"int64",...E(n)})}function Pw(r,n){return new r({type:"bigint",check:"bigint_format",abort:!1,format:"uint64",...E(n)})}function kw(r,n){return new r({type:"symbol",...E(n)})}function Xw(r,n){return new r({type:"undefined",...E(n)})}function Gw(r,n){return new r({type:"null",...E(n)})}function Vw(r){return new r({type:"any"})}function Fw(r){return new r({type:"unknown"})}function lw(r,n){return new r({type:"never",...E(n)})}function vw(r,n){return new r({type:"void",...E(n)})}function Yw(r,n){return new r({type:"date",...E(n)})}function Hw(r,n){return new r({type:"date",coerce:!0,...E(n)})}function Bw(r,n){return new r({type:"nan",...E(n)})}function Gn(r,n){return new $u({check:"less_than",...E(n),value:r,inclusive:!1})}function en(r,n){return new $u({check:"less_than",...E(n),value:r,inclusive:!0})}function Vn(r,n){return new gu({check:"greater_than",...E(n),value:r,inclusive:!1})}function Vr(r,n){return new gu({check:"greater_than",...E(n),value:r,inclusive:!0})}function Yu(r){return Vn(0,r)}function Hu(r){return Gn(0,r)}function Bu(r){return en(0,r)}function Qu(r){return Vr(0,r)}function Ot(r,n){return new Gd({check:"multiple_of",...E(n),value:r})}function Ut(r,n){return new ld({check:"max_size",...E(n),maximum:r})}function Fn(r,n){return new vd({check:"min_size",...E(n),minimum:r})}function Ct(r,n){return new Yd({check:"size_equals",...E(n),size:r})}function xt(r,n){return new Hd({check:"max_length",...E(n),maximum:r})}function et(r,n){return new Bd({check:"min_length",...E(n),minimum:r})}function pt(r,n){return new Qd({check:"length_equals",...E(n),length:r})}function li(r,n){return new Kd({check:"string_format",format:"regex",...E(n),pattern:r})}function vi(r){return new ad({check:"string_format",format:"lowercase",...E(r)})}function Yi(r){return new Zd({check:"string_format",format:"uppercase",...E(r)})}function Hi(r,n){return new Cd({check:"string_format",format:"includes",...E(n),includes:r})}function Bi(r,n){return new xd({check:"string_format",format:"starts_with",...E(n),prefix:r})}function Qi(r,n){return new pd({check:"string_format",format:"ends_with",...E(n),suffix:r})}function Ku(r,n,t){return new sd({check:"property",property:r,schema:n,...E(t)})}function Ki(r,n){return new rf({check:"mime_type",mime:r,...E(n)})}function Tn(r){return new nf({check:"overwrite",tx:r})}function ai(r){return Tn((n)=>n.normalize(r))}function Zi(){return Tn((r)=>r.trim())}function Ci(){return Tn((r)=>r.toLowerCase())}function xi(){return Tn((r)=>r.toUpperCase())}function pi(){return Tn((r)=>xg(r))}function Qw(r,n,t){return new r({type:"array",element:n,...E(t)})}function MW(r,n,t){return new r({type:"union",options:n,...E(t)})}function PW(r,n,t){return new r({type:"union",options:n,inclusive:!1,...E(t)})}function kW(r,n,t,e){return new r({type:"union",options:t,discriminator:n,...E(e)})}function XW(r,n,t){return new r({type:"intersection",left:n,right:t})}function GW(r,n,t,e){let i=t instanceof v;return new r({type:"tuple",items:n,rest:i?t:null,...E(i?e:t)})}function VW(r,n,t,e){return new r({type:"record",keyType:n,valueType:t,...E(e)})}function FW(r,n,t,e){return new r({type:"map",keyType:n,valueType:t,...E(e)})}function lW(r,n,t){return new r({type:"set",valueType:n,...E(t)})}function vW(r,n,t){let e=Array.isArray(n)?Object.fromEntries(n.map((i)=>[i,i])):n;return new r({type:"enum",entries:e,...E(t)})}function YW(r,n,t){return new r({type:"enum",entries:n,...E(t)})}function HW(r,n,t){return new r({type:"literal",values:Array.isArray(n)?n:[n],...E(t)})}function Kw(r,n){return new r({type:"file",...E(n)})}function BW(r,n){return new r({type:"transform",transform:n})}function QW(r,n){return new r({type:"optional",innerType:n})}function KW(r,n){return new r({type:"nullable",innerType:n})}function aW(r,n,t){return new r({type:"default",innerType:n,get defaultValue(){return typeof t==="function"?t():sg(t)}})}function ZW(r,n,t){return new r({type:"nonoptional",innerType:n,...E(t)})}function CW(r,n){return new r({type:"success",innerType:n})}function xW(r,n,t){return new r({type:"catch",innerType:n,catchValue:typeof t==="function"?t:()=>t})}function pW(r,n,t){return new r({type:"pipe",in:n,out:t})}function sW(r,n){return new r({type:"readonly",innerType:n})}function rE(r,n,t){return new r({type:"template_literal",parts:n,...E(t)})}function nE(r,n){return new r({type:"lazy",getter:n})}function tE(r,n){return new r({type:"promise",innerType:n})}function aw(r,n,t){let e=E(t);return e.abort??(e.abort=!0),new r({type:"custom",check:"custom",fn:n,...e})}function Zw(r,n,t){return new r({type:"custom",check:"custom",fn:n,...E(t)})}function Cw(r){let n=LU((t)=>{return t.addIssue=(e)=>{if(typeof e==="string")t.issues.push(Mi(e,t.value,n._zod.def));else{let i=e;if(i.fatal)i.continue=!1;i.code??(i.code="custom"),i.input??(i.input=t.value),i.inst??(i.inst=n),i.continue??(i.continue=!n._zod.def.abort),t.issues.push(Mi(i))}},r(t.value,t)});return n}function LU(r,n){let t=new ir({check:"custom",...E(n)});return t._zod.check=r,t}function xw(r){let n=new ir({check:"describe"});return n._zod.onattach=[(t)=>{let e=Wr.get(t)??{};Wr.add(t,{...e,description:r})}],n._zod.check=()=>{},n}function pw(r){let n=new ir({check:"meta"});return n._zod.onattach=[(t)=>{let e=Wr.get(t)??{};Wr.add(t,{...e,...r})}],n._zod.check=()=>{},n}function sw(r,n){let t=E(n),e=t.truthy??["true","1","yes","on","y","enabled"],i=t.falsy??["false","0","no","off","n","disabled"];if(t.case!=="sensitive")e=e.map((b)=>typeof b==="string"?b.toLowerCase():b),i=i.map((b)=>typeof b==="string"?b.toLowerCase():b);let _=new Set(e),c=new Set(i),u=r.Codec??I_,o=r.Boolean??w_,g=new(r.String??Zt)({type:"string",error:t.error}),d=new o({type:"boolean",error:t.error}),f=new u({type:"pipe",in:g,out:d,transform:(b,m)=>{let w=b;if(t.case!=="sensitive")w=w.toLowerCase();if(_.has(w))return!0;else if(c.has(w))return!1;else return m.issues.push({code:"invalid_value",expected:"stringbool",values:[..._,...c],input:m.value,inst:f,continue:!1}),{}},reverseTransform:(b,m)=>{if(b===!0)return e[0]||"true";else return i[0]||"false"},error:t.error});return f}function si(r,n,t,e={}){let i=E(e),_={...E(e),check:"string_format",type:"string",format:n,fn:typeof t==="function"?t:(u)=>t.test(u),...i};if(t instanceof RegExp)_.pattern=t;return new r(_)}var Uw;var zU=N(()=>{du();y_();mb();G();Uw={Any:null,Minute:-1,Second:0,Millisecond:3,Microsecond:6}});function ht(r){let n=r?.target??"draft-2020-12";if(n==="draft-4")n="draft-04";if(n==="draft-7")n="draft-07";return{processors:r.processors??{},metadataRegistry:r?.metadata??Wr,target:n,unrepresentable:r?.unrepresentable??"throw",override:r?.override??(()=>{}),io:r?.io??"output",counter:0,seen:new Map,cycles:r?.cycles??"ref",reused:r?.reused??"inline",external:r?.external??void 0}}function x(r,n,t={path:[],schemaPath:[]}){var e;let i=r._zod.def,_=n.seen.get(r);if(_){if(_.count++,t.schemaPath.includes(r))_.cycle=t.path;return _.schema}let c={schema:{},count:1,cycle:void 0,path:t.path};n.seen.set(r,c);let u=r._zod.toJSONSchema?.();if(u)c.schema=u;else{let g={...t,schemaPath:[...t.schemaPath,r],path:t.path};if(r._zod.processJSONSchema)r._zod.processJSONSchema(n,c.schema,g);else{let f=c.schema,b=n.processors[i.type];if(!b)throw Error(`[toJSONSchema]: Non-representable type encountered: ${i.type}`);b(r,n,f,g)}let d=r._zod.parent;if(d){if(!c.ref)c.ref=d;x(d,n,g),n.seen.get(d).isParent=!0}}let o=n.metadataRegistry.get(r);if(o)Object.assign(c.schema,o);if(n.io==="input"&&Fr(r))delete c.schema.examples,delete c.schema.default;if(n.io==="input"&&c.schema._prefault)(e=c.schema).default??(e.default=c.schema._prefault);return delete c.schema._prefault,n.seen.get(r).schema}function Rt(r,n){let t=r.seen.get(n);if(!t)throw Error("Unprocessed schema. This is a bug in Zod.");let e=new Map;for(let c of r.seen.entries()){let u=r.metadataRegistry.get(c[0])?.id;if(u){let o=e.get(u);if(o&&o!==c[0])throw Error(`Duplicate schema id "${u}" detected during JSON Schema conversion. Two different schemas cannot share the same id when converted together.`);e.set(u,c[0])}}let i=(c)=>{let u=r.target==="draft-2020-12"?"$defs":"definitions";if(r.external){let d=r.external.registry.get(c[0])?.id,f=r.external.uri??((m)=>m);if(d)return{ref:f(d)};let b=c[1].defId??c[1].schema.id??`schema${r.counter++}`;return c[1].defId=b,{defId:b,ref:`${f("__shared")}#/${u}/${b}`}}if(c[1]===t)return{ref:"#"};let $=`${"#"}/${u}/`,g=c[1].schema.id??`__schema${r.counter++}`;return{defId:g,ref:$+g}},_=(c)=>{if(c[1].schema.$ref)return;let u=c[1],{ref:o,defId:$}=i(c);if(u.def={...u.schema},$)u.defId=$;let g=u.schema;for(let d in g)delete g[d];g.$ref=o};if(r.cycles==="throw")for(let c of r.seen.entries()){let u=c[1];if(u.cycle)throw Error(`Cycle detected: #/${u.cycle?.join("/")}/<root>
|
|
41
|
-
|
|
42
|
-
Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.`)}for(let c of r.seen.entries()){let u=c[1];if(n===c[0]){_(c);continue}if(r.external){let $=r.external.registry.get(c[0])?.id;if(n!==c[0]&&$){_(c);continue}}if(r.metadataRegistry.get(c[0])?.id){_(c);continue}if(u.cycle){_(c);continue}if(u.count>1){if(r.reused==="ref"){_(c);continue}}}}function Dt(r,n){let t=r.seen.get(n);if(!t)throw Error("Unprocessed schema. This is a bug in Zod.");let e=(c)=>{let u=r.seen.get(c);if(u.ref===null)return;let o=u.def??u.schema,$={...o},g=u.ref;if(u.ref=null,g){e(g);let f=r.seen.get(g),b=f.schema;if(b.$ref&&(r.target==="draft-07"||r.target==="draft-04"||r.target==="openapi-3.0"))o.allOf=o.allOf??[],o.allOf.push(b);else Object.assign(o,b);if(Object.assign(o,$),c._zod.parent===g)for(let w in o){if(w==="$ref"||w==="allOf")continue;if(!(w in $))delete o[w]}if(b.$ref&&f.def)for(let w in o){if(w==="$ref"||w==="allOf")continue;if(w in f.def&&JSON.stringify(o[w])===JSON.stringify(f.def[w]))delete o[w]}}let d=c._zod.parent;if(d&&d!==g){e(d);let f=r.seen.get(d);if(f?.schema.$ref){if(o.$ref=f.schema.$ref,f.def)for(let b in o){if(b==="$ref"||b==="allOf")continue;if(b in f.def&&JSON.stringify(o[b])===JSON.stringify(f.def[b]))delete o[b]}}}r.override({zodSchema:c,jsonSchema:o,path:u.path??[]})};for(let c of[...r.seen.entries()].reverse())e(c[0]);let i={};if(r.target==="draft-2020-12")i.$schema="https://json-schema.org/draft/2020-12/schema";else if(r.target==="draft-07")i.$schema="http://json-schema.org/draft-07/schema#";else if(r.target==="draft-04")i.$schema="http://json-schema.org/draft-04/schema#";else if(r.target==="openapi-3.0");if(r.external?.uri){let c=r.external.registry.get(n)?.id;if(!c)throw Error("Schema is missing an `id` property");i.$id=r.external.uri(c)}Object.assign(i,t.def??t.schema);let _=r.external?.defs??{};for(let c of r.seen.entries()){let u=c[1];if(u.def&&u.defId)_[u.defId]=u.def}if(r.external);else if(Object.keys(_).length>0)if(r.target==="draft-2020-12")i.$defs=_;else i.definitions=_;try{let c=JSON.parse(JSON.stringify(i));return Object.defineProperty(c,"~standard",{value:{...n["~standard"],jsonSchema:{input:re(n,"input",r.processors),output:re(n,"output",r.processors)}},enumerable:!1,writable:!1}),c}catch(c){throw Error("Error converting schema to JSON.")}}function Fr(r,n){let t=n??{seen:new Set};if(t.seen.has(r))return!1;t.seen.add(r);let e=r._zod.def;if(e.type==="transform")return!0;if(e.type==="array")return Fr(e.element,t);if(e.type==="set")return Fr(e.valueType,t);if(e.type==="lazy")return Fr(e.getter(),t);if(e.type==="promise"||e.type==="optional"||e.type==="nonoptional"||e.type==="nullable"||e.type==="readonly"||e.type==="default"||e.type==="prefault")return Fr(e.innerType,t);if(e.type==="intersection")return Fr(e.left,t)||Fr(e.right,t);if(e.type==="record"||e.type==="map")return Fr(e.keyType,t)||Fr(e.valueType,t);if(e.type==="pipe")return Fr(e.in,t)||Fr(e.out,t);if(e.type==="object"){for(let i in e.shape)if(Fr(e.shape[i],t))return!0;return!1}if(e.type==="union"){for(let i of e.options)if(Fr(i,t))return!0;return!1}if(e.type==="tuple"){for(let i of e.items)if(Fr(i,t))return!0;if(e.rest&&Fr(e.rest,t))return!0;return!1}return!1}var rm=(r,n={})=>(t)=>{let e=ht({...t,processors:n});return x(r,e),Rt(e,r),Dt(e,r)},re=(r,n,t={})=>(e)=>{let{libraryOptions:i,target:_}=e??{},c=ht({...i??{},target:_,io:n,processors:t});return x(r,c),Rt(c,r),Dt(c,r)};var N_=N(()=>{y_()});function xu(r,n){if("_idmap"in r){let e=r,i=ht({...n,processors:au}),_={};for(let o of e._idmap.entries()){let[$,g]=o;x(g,i)}let c={},u={registry:e,uri:n?.uri,defs:_};i.external=u;for(let o of e._idmap.entries()){let[$,g]=o;Rt(i,g),c[$]=Dt(i,g)}if(Object.keys(_).length>0){let o=i.target==="draft-2020-12"?"$defs":"definitions";c.__shared={[o]:_}}return{schemas:c}}let t=ht({...n,processors:au});return x(r,t),Rt(t,r),Dt(t,r)}var iE,nm=(r,n,t,e)=>{let i=t;i.type="string";let{minimum:_,maximum:c,format:u,patterns:o,contentEncoding:$}=r._zod.bag;if(typeof _==="number")i.minLength=_;if(typeof c==="number")i.maxLength=c;if(u){if(i.format=iE[u]??u,i.format==="")delete i.format;if(u==="time")delete i.format}if($)i.contentEncoding=$;if(o&&o.size>0){let g=[...o];if(g.length===1)i.pattern=g[0].source;else if(g.length>1)i.allOf=[...g.map((d)=>({...n.target==="draft-07"||n.target==="draft-04"||n.target==="openapi-3.0"?{type:"string"}:{},pattern:d.source}))]}},tm=(r,n,t,e)=>{let i=t,{minimum:_,maximum:c,format:u,multipleOf:o,exclusiveMaximum:$,exclusiveMinimum:g}=r._zod.bag;if(typeof u==="string"&&u.includes("int"))i.type="integer";else i.type="number";if(typeof g==="number")if(n.target==="draft-04"||n.target==="openapi-3.0")i.minimum=g,i.exclusiveMinimum=!0;else i.exclusiveMinimum=g;if(typeof _==="number"){if(i.minimum=_,typeof g==="number"&&n.target!=="draft-04")if(g>=_)delete i.minimum;else delete i.exclusiveMinimum}if(typeof $==="number")if(n.target==="draft-04"||n.target==="openapi-3.0")i.maximum=$,i.exclusiveMaximum=!0;else i.exclusiveMaximum=$;if(typeof c==="number"){if(i.maximum=c,typeof $==="number"&&n.target!=="draft-04")if($<=c)delete i.maximum;else delete i.exclusiveMaximum}if(typeof o==="number")i.multipleOf=o},im=(r,n,t,e)=>{t.type="boolean"},em=(r,n,t,e)=>{if(n.unrepresentable==="throw")throw Error("BigInt cannot be represented in JSON Schema")},_m=(r,n,t,e)=>{if(n.unrepresentable==="throw")throw Error("Symbols cannot be represented in JSON Schema")},cm=(r,n,t,e)=>{if(n.target==="openapi-3.0")t.type="string",t.nullable=!0,t.enum=[null];else t.type="null"},um=(r,n,t,e)=>{if(n.unrepresentable==="throw")throw Error("Undefined cannot be represented in JSON Schema")},om=(r,n,t,e)=>{if(n.unrepresentable==="throw")throw Error("Void cannot be represented in JSON Schema")},$m=(r,n,t,e)=>{t.not={}},gm=(r,n,t,e)=>{},dm=(r,n,t,e)=>{},fm=(r,n,t,e)=>{if(n.unrepresentable==="throw")throw Error("Date cannot be represented in JSON Schema")},bm=(r,n,t,e)=>{let i=r._zod.def,_=i_(i.entries);if(_.every((c)=>typeof c==="number"))t.type="number";if(_.every((c)=>typeof c==="string"))t.type="string";t.enum=_},wm=(r,n,t,e)=>{let i=r._zod.def,_=[];for(let c of i.values)if(c===void 0){if(n.unrepresentable==="throw")throw Error("Literal `undefined` cannot be represented in JSON Schema")}else if(typeof c==="bigint")if(n.unrepresentable==="throw")throw Error("BigInt literals cannot be represented in JSON Schema");else _.push(Number(c));else _.push(c);if(_.length===0);else if(_.length===1){let c=_[0];if(t.type=c===null?"null":typeof c,n.target==="draft-04"||n.target==="openapi-3.0")t.enum=[c];else t.const=c}else{if(_.every((c)=>typeof c==="number"))t.type="number";if(_.every((c)=>typeof c==="string"))t.type="string";if(_.every((c)=>typeof c==="boolean"))t.type="boolean";if(_.every((c)=>c===null))t.type="null";t.enum=_}},mm=(r,n,t,e)=>{if(n.unrepresentable==="throw")throw Error("NaN cannot be represented in JSON Schema")},Im=(r,n,t,e)=>{let i=t,_=r._zod.pattern;if(!_)throw Error("Pattern not found in template literal");i.type="string",i.pattern=_.source},Om=(r,n,t,e)=>{let i=t,_={type:"string",format:"binary",contentEncoding:"binary"},{minimum:c,maximum:u,mime:o}=r._zod.bag;if(c!==void 0)_.minLength=c;if(u!==void 0)_.maxLength=u;if(o)if(o.length===1)_.contentMediaType=o[0],Object.assign(i,_);else Object.assign(i,_),i.anyOf=o.map(($)=>({contentMediaType:$}));else Object.assign(i,_)},Um=(r,n,t,e)=>{t.type="boolean"},hm=(r,n,t,e)=>{if(n.unrepresentable==="throw")throw Error("Custom types cannot be represented in JSON Schema")},Rm=(r,n,t,e)=>{if(n.unrepresentable==="throw")throw Error("Function types cannot be represented in JSON Schema")},Dm=(r,n,t,e)=>{if(n.unrepresentable==="throw")throw Error("Transforms cannot be represented in JSON Schema")},ym=(r,n,t,e)=>{if(n.unrepresentable==="throw")throw Error("Map cannot be represented in JSON Schema")},qm=(r,n,t,e)=>{if(n.unrepresentable==="throw")throw Error("Set cannot be represented in JSON Schema")},Tm=(r,n,t,e)=>{let i=t,_=r._zod.def,{minimum:c,maximum:u}=r._zod.bag;if(typeof c==="number")i.minItems=c;if(typeof u==="number")i.maxItems=u;i.type="array",i.items=x(_.element,n,{...e,path:[...e.path,"items"]})},Nm=(r,n,t,e)=>{let i=t,_=r._zod.def;i.type="object",i.properties={};let c=_.shape;for(let $ in c)i.properties[$]=x(c[$],n,{...e,path:[...e.path,"properties",$]});let u=new Set(Object.keys(c)),o=new Set([...u].filter(($)=>{let g=_.shape[$]._zod;if(n.io==="input")return g.optin===void 0;else return g.optout===void 0}));if(o.size>0)i.required=Array.from(o);if(_.catchall?._zod.def.type==="never")i.additionalProperties=!1;else if(!_.catchall){if(n.io==="output")i.additionalProperties=!1}else if(_.catchall)i.additionalProperties=x(_.catchall,n,{...e,path:[...e.path,"additionalProperties"]})},Zu=(r,n,t,e)=>{let i=r._zod.def,_=i.inclusive===!1,c=i.options.map((u,o)=>x(u,n,{...e,path:[...e.path,_?"oneOf":"anyOf",o]}));if(_)t.oneOf=c;else t.anyOf=c},Lm=(r,n,t,e)=>{let i=r._zod.def,_=x(i.left,n,{...e,path:[...e.path,"allOf",0]}),c=x(i.right,n,{...e,path:[...e.path,"allOf",1]}),u=($)=>("allOf"in $)&&Object.keys($).length===1,o=[...u(_)?_.allOf:[_],...u(c)?c.allOf:[c]];t.allOf=o},zm=(r,n,t,e)=>{let i=t,_=r._zod.def;i.type="array";let c=n.target==="draft-2020-12"?"prefixItems":"items",u=n.target==="draft-2020-12"?"items":n.target==="openapi-3.0"?"items":"additionalItems",o=_.items.map((f,b)=>x(f,n,{...e,path:[...e.path,c,b]})),$=_.rest?x(_.rest,n,{...e,path:[...e.path,u,...n.target==="openapi-3.0"?[_.items.length]:[]]}):null;if(n.target==="draft-2020-12"){if(i.prefixItems=o,$)i.items=$}else if(n.target==="openapi-3.0"){if(i.items={anyOf:o},$)i.items.anyOf.push($);if(i.minItems=o.length,!$)i.maxItems=o.length}else if(i.items=o,$)i.additionalItems=$;let{minimum:g,maximum:d}=r._zod.bag;if(typeof g==="number")i.minItems=g;if(typeof d==="number")i.maxItems=d},Sm=(r,n,t,e)=>{let i=t,_=r._zod.def;i.type="object";let c=_.keyType,o=c._zod.bag?.patterns;if(_.mode==="loose"&&o&&o.size>0){let g=x(_.valueType,n,{...e,path:[...e.path,"patternProperties","*"]});i.patternProperties={};for(let d of o)i.patternProperties[d.source]=g}else{if(n.target==="draft-07"||n.target==="draft-2020-12")i.propertyNames=x(_.keyType,n,{...e,path:[...e.path,"propertyNames"]});i.additionalProperties=x(_.valueType,n,{...e,path:[...e.path,"additionalProperties"]})}let $=c._zod.values;if($){let g=[...$].filter((d)=>typeof d==="string"||typeof d==="number");if(g.length>0)i.required=g}},Wm=(r,n,t,e)=>{let i=r._zod.def,_=x(i.innerType,n,e),c=n.seen.get(r);if(n.target==="openapi-3.0")c.ref=i.innerType,t.nullable=!0;else t.anyOf=[_,{type:"null"}]},Em=(r,n,t,e)=>{let i=r._zod.def;x(i.innerType,n,e);let _=n.seen.get(r);_.ref=i.innerType},jm=(r,n,t,e)=>{let i=r._zod.def;x(i.innerType,n,e);let _=n.seen.get(r);_.ref=i.innerType,t.default=JSON.parse(JSON.stringify(i.defaultValue))},Jm=(r,n,t,e)=>{let i=r._zod.def;x(i.innerType,n,e);let _=n.seen.get(r);if(_.ref=i.innerType,n.io==="input")t._prefault=JSON.parse(JSON.stringify(i.defaultValue))},Am=(r,n,t,e)=>{let i=r._zod.def;x(i.innerType,n,e);let _=n.seen.get(r);_.ref=i.innerType;let c;try{c=i.catchValue(void 0)}catch{throw Error("Dynamic catch values are not supported in JSON Schema")}t.default=c},Mm=(r,n,t,e)=>{let i=r._zod.def,_=n.io==="input"?i.in._zod.def.type==="transform"?i.out:i.in:i.out;x(_,n,e);let c=n.seen.get(r);c.ref=_},Pm=(r,n,t,e)=>{let i=r._zod.def;x(i.innerType,n,e);let _=n.seen.get(r);_.ref=i.innerType,t.readOnly=!0},km=(r,n,t,e)=>{let i=r._zod.def;x(i.innerType,n,e);let _=n.seen.get(r);_.ref=i.innerType},Cu=(r,n,t,e)=>{let i=r._zod.def;x(i.innerType,n,e);let _=n.seen.get(r);_.ref=i.innerType},Xm=(r,n,t,e)=>{let i=r._zod.innerType;x(i,n,e);let _=n.seen.get(r);_.ref=i},au;var L_=N(()=>{N_();G();iE={guid:"uuid",url:"uri",datetime:"date-time",json_string:"json-string",regex:""},au={string:nm,number:tm,boolean:im,bigint:em,symbol:_m,null:cm,undefined:um,void:om,never:$m,any:gm,unknown:dm,date:fm,enum:bm,literal:wm,nan:mm,template_literal:Im,file:Om,success:Um,custom:hm,function:Rm,transform:Dm,map:ym,set:qm,array:Tm,object:Nm,union:Zu,intersection:Lm,tuple:zm,record:Sm,nullable:Wm,nonoptional:Em,default:jm,prefault:Jm,catch:Am,pipe:Mm,readonly:Pm,promise:km,optional:Cu,lazy:Xm}});class Gm{get metadataRegistry(){return this.ctx.metadataRegistry}get target(){return this.ctx.target}get unrepresentable(){return this.ctx.unrepresentable}get override(){return this.ctx.override}get io(){return this.ctx.io}get counter(){return this.ctx.counter}set counter(r){this.ctx.counter=r}get seen(){return this.ctx.seen}constructor(r){let n=r?.target??"draft-2020-12";if(n==="draft-4")n="draft-04";if(n==="draft-7")n="draft-07";this.ctx=ht({processors:au,target:n,...r?.metadata&&{metadata:r.metadata},...r?.unrepresentable&&{unrepresentable:r.unrepresentable},...r?.override&&{override:r.override},...r?.io&&{io:r.io}})}process(r,n={path:[],schemaPath:[]}){return x(r,this.ctx,n)}emit(r,n){if(n){if(n.cycles)this.ctx.cycles=n.cycles;if(n.reused)this.ctx.reused=n.reused;if(n.external)this.ctx.external=n.external}Rt(this.ctx,r);let t=Dt(this.ctx,r),{"~standard":e,...i}=t;return i}}var SU=N(()=>{L_();N_()});var WU={};var EU=()=>{};var _t={};kn(_t,{version:()=>tf,util:()=>W,treeifyError:()=>ed,toJSONSchema:()=>xu,toDotPath:()=>cO,safeParseAsync:()=>od,safeParse:()=>ud,safeEncodeAsync:()=>gS,safeEncode:()=>oS,safeDecodeAsync:()=>dS,safeDecode:()=>$S,registry:()=>yu,regexes:()=>wn,process:()=>x,prettifyError:()=>_d,parseAsync:()=>pc,parse:()=>xc,meta:()=>pw,locales:()=>D_,isValidJWT:()=>NO,isValidBase64URL:()=>TO,isValidBase64:()=>Lf,initializeContext:()=>ht,globalRegistry:()=>Wr,globalConfig:()=>n_,formatError:()=>g_,flattenError:()=>$_,finalize:()=>Dt,extractDefs:()=>Rt,encodeAsync:()=>cS,encode:()=>eS,describe:()=>xw,decodeAsync:()=>uS,decode:()=>_S,createToJSONSchemaMethod:()=>rm,createStandardJSONSchemaMethod:()=>re,config:()=>fr,clone:()=>Gr,_xor:()=>PW,_xid:()=>Au,_void:()=>vw,_uuidv7:()=>zu,_uuidv6:()=>Lu,_uuidv4:()=>Nu,_uuid:()=>Tu,_url:()=>T_,_uppercase:()=>Yi,_unknown:()=>Fw,_union:()=>MW,_undefined:()=>Xw,_ulid:()=>Ju,_uint64:()=>Pw,_uint32:()=>Ww,_tuple:()=>GW,_trim:()=>Zi,_transform:()=>BW,_toUpperCase:()=>xi,_toLowerCase:()=>Ci,_templateLiteral:()=>rE,_symbol:()=>kw,_superRefine:()=>Cw,_success:()=>CW,_stringbool:()=>sw,_stringFormat:()=>si,_string:()=>mw,_startsWith:()=>Bi,_slugify:()=>pi,_size:()=>Ct,_set:()=>lW,_safeParseAsync:()=>Gi,_safeParse:()=>Xi,_safeEncodeAsync:()=>_u,_safeEncode:()=>iu,_safeDecodeAsync:()=>cu,_safeDecode:()=>eu,_regex:()=>li,_refine:()=>Zw,_record:()=>VW,_readonly:()=>sW,_property:()=>Ku,_promise:()=>tE,_positive:()=>Yu,_pipe:()=>pW,_parseAsync:()=>ki,_parse:()=>Pi,_overwrite:()=>Tn,_optional:()=>QW,_number:()=>qw,_nullable:()=>KW,_null:()=>Gw,_normalize:()=>ai,_nonpositive:()=>Bu,_nonoptional:()=>ZW,_nonnegative:()=>Qu,_never:()=>lw,_negative:()=>Hu,_nativeEnum:()=>YW,_nanoid:()=>Wu,_nan:()=>Bw,_multipleOf:()=>Ot,_minSize:()=>Fn,_minLength:()=>et,_min:()=>Vr,_mime:()=>Ki,_maxSize:()=>Ut,_maxLength:()=>xt,_max:()=>en,_map:()=>FW,_mac:()=>Ow,_lte:()=>en,_lt:()=>Gn,_lowercase:()=>vi,_literal:()=>HW,_length:()=>pt,_lazy:()=>nE,_ksuid:()=>Mu,_jwt:()=>vu,_isoTime:()=>Dw,_isoDuration:()=>yw,_isoDateTime:()=>hw,_isoDate:()=>Rw,_ipv6:()=>ku,_ipv4:()=>Pu,_intersection:()=>XW,_int64:()=>Mw,_int32:()=>Sw,_int:()=>Nw,_includes:()=>Hi,_guid:()=>q_,_gte:()=>Vr,_gt:()=>Vn,_float64:()=>zw,_float32:()=>Lw,_file:()=>Kw,_enum:()=>vW,_endsWith:()=>Qi,_encodeAsync:()=>nu,_encode:()=>sc,_emoji:()=>Su,_email:()=>qu,_e164:()=>lu,_discriminatedUnion:()=>kW,_default:()=>aW,_decodeAsync:()=>tu,_decode:()=>ru,_date:()=>Yw,_custom:()=>aw,_cuid2:()=>ju,_cuid:()=>Eu,_coercedString:()=>Iw,_coercedNumber:()=>Tw,_coercedDate:()=>Hw,_coercedBoolean:()=>jw,_coercedBigint:()=>Aw,_cidrv6:()=>Gu,_cidrv4:()=>Xu,_check:()=>LU,_catch:()=>xW,_boolean:()=>Ew,_bigint:()=>Jw,_base64url:()=>Fu,_base64:()=>Vu,_array:()=>Qw,_any:()=>Vw,TimePrecision:()=>Uw,NEVER:()=>Kg,JSONSchemaGenerator:()=>Gm,JSONSchema:()=>WU,Doc:()=>fu,$output:()=>fw,$input:()=>bw,$constructor:()=>U,$brand:()=>ag,$ZodXor:()=>Hf,$ZodXID:()=>mf,$ZodVoid:()=>Ff,$ZodUnknown:()=>Gf,$ZodUnion:()=>m_,$ZodUndefined:()=>Pf,$ZodUUID:()=>uf,$ZodURL:()=>$f,$ZodULID:()=>wf,$ZodType:()=>v,$ZodTuple:()=>Ru,$ZodTransform:()=>sf,$ZodTemplateLiteral:()=>gb,$ZodSymbol:()=>Mf,$ZodSuccess:()=>_b,$ZodStringFormat:()=>rr,$ZodString:()=>Zt,$ZodSet:()=>Zf,$ZodRegistry:()=>ww,$ZodRecord:()=>Kf,$ZodRealError:()=>Kr,$ZodReadonly:()=>$b,$ZodPromise:()=>fb,$ZodPrefault:()=>ib,$ZodPipe:()=>ob,$ZodOptional:()=>Du,$ZodObjectJIT:()=>Yf,$ZodObject:()=>SO,$ZodNumberFormat:()=>Jf,$ZodNumber:()=>Uu,$ZodNullable:()=>nb,$ZodNull:()=>kf,$ZodNonOptional:()=>eb,$ZodNever:()=>Vf,$ZodNanoID:()=>df,$ZodNaN:()=>ub,$ZodMap:()=>af,$ZodMAC:()=>qf,$ZodLiteral:()=>xf,$ZodLazy:()=>bb,$ZodKSUID:()=>If,$ZodJWT:()=>Ef,$ZodIntersection:()=>Qf,$ZodISOTime:()=>hf,$ZodISODuration:()=>Rf,$ZodISODateTime:()=>Of,$ZodISODate:()=>Uf,$ZodIPv6:()=>yf,$ZodIPv4:()=>Df,$ZodGUID:()=>cf,$ZodFunction:()=>db,$ZodFile:()=>pf,$ZodExactOptional:()=>rb,$ZodError:()=>o_,$ZodEnum:()=>Cf,$ZodEncodeError:()=>Qt,$ZodEmoji:()=>gf,$ZodEmail:()=>of,$ZodE164:()=>Wf,$ZodDiscriminatedUnion:()=>Bf,$ZodDefault:()=>tb,$ZodDate:()=>lf,$ZodCustomStringFormat:()=>jf,$ZodCustom:()=>wb,$ZodCodec:()=>I_,$ZodCheckUpperCase:()=>Zd,$ZodCheckStringFormat:()=>Vi,$ZodCheckStartsWith:()=>xd,$ZodCheckSizeEquals:()=>Yd,$ZodCheckRegex:()=>Kd,$ZodCheckProperty:()=>sd,$ZodCheckOverwrite:()=>nf,$ZodCheckNumberFormat:()=>Vd,$ZodCheckMultipleOf:()=>Gd,$ZodCheckMinSize:()=>vd,$ZodCheckMinLength:()=>Bd,$ZodCheckMimeType:()=>rf,$ZodCheckMaxSize:()=>ld,$ZodCheckMaxLength:()=>Hd,$ZodCheckLowerCase:()=>ad,$ZodCheckLessThan:()=>$u,$ZodCheckLengthEquals:()=>Qd,$ZodCheckIncludes:()=>Cd,$ZodCheckGreaterThan:()=>gu,$ZodCheckEndsWith:()=>pd,$ZodCheckBigIntFormat:()=>Fd,$ZodCheck:()=>ir,$ZodCatch:()=>cb,$ZodCUID2:()=>bf,$ZodCUID:()=>ff,$ZodCIDRv6:()=>Nf,$ZodCIDRv4:()=>Tf,$ZodBoolean:()=>w_,$ZodBigIntFormat:()=>Af,$ZodBigInt:()=>hu,$ZodBase64URL:()=>Sf,$ZodBase64:()=>zf,$ZodAsyncError:()=>Xn,$ZodArray:()=>vf,$ZodAny:()=>Xf});var _n=N(()=>{G();ou();dw();L_();SU();EU();ji();$d();cd();mb();du();ef();y_();zU();N_()});var pu={};kn(pu,{uppercase:()=>Yi,trim:()=>Zi,toUpperCase:()=>xi,toLowerCase:()=>Ci,startsWith:()=>Bi,slugify:()=>pi,size:()=>Ct,regex:()=>li,property:()=>Ku,positive:()=>Yu,overwrite:()=>Tn,normalize:()=>ai,nonpositive:()=>Bu,nonnegative:()=>Qu,negative:()=>Hu,multipleOf:()=>Ot,minSize:()=>Fn,minLength:()=>et,mime:()=>Ki,maxSize:()=>Ut,maxLength:()=>xt,lte:()=>en,lt:()=>Gn,lowercase:()=>vi,length:()=>pt,includes:()=>Hi,gte:()=>Vr,gt:()=>Vn,endsWith:()=>Qi});var su=N(()=>{_n()});var ne={};kn(ne,{time:()=>lm,duration:()=>vm,datetime:()=>Vm,date:()=>Fm,ZodISOTime:()=>to,ZodISODuration:()=>io,ZodISODateTime:()=>ro,ZodISODate:()=>no});function Vm(r){return hw(ro,r)}function Fm(r){return Rw(no,r)}function lm(r){return Dw(to,r)}function vm(r){return yw(io,r)}var ro,no,to,io;var z_=N(()=>{_n();W_();ro=U("ZodISODateTime",(r,n)=>{Of.init(r,n),nr.init(r,n)});no=U("ZodISODate",(r,n)=>{Uf.init(r,n),nr.init(r,n)});to=U("ZodISOTime",(r,n)=>{hf.init(r,n),nr.init(r,n)});io=U("ZodISODuration",(r,n)=>{Rf.init(r,n),nr.init(r,n)})});var jU=(r,n)=>{o_.init(r,n),r.name="ZodError",Object.defineProperties(r,{format:{value:(t)=>g_(r,t)},flatten:{value:(t)=>$_(r,t)},addIssue:{value:(t)=>{r.issues.push(t),r.message=JSON.stringify(r.issues,Ji,2)}},addIssues:{value:(t)=>{r.issues.push(...t),r.message=JSON.stringify(r.issues,Ji,2)}},isEmpty:{get(){return r.issues.length===0}}})},_E,ar;var Ym=N(()=>{_n();_n();G();_E=U("ZodError",jU),ar=U("ZodError",jU,{Parent:Error})});var Hm,Bm,Qm,Km,am,Zm,Cm,xm,pm,sm,rI,nI;var tI=N(()=>{_n();Ym();Hm=Pi(ar),Bm=ki(ar),Qm=Xi(ar),Km=Gi(ar),am=sc(ar),Zm=ru(ar),Cm=nu(ar),xm=tu(ar),pm=iu(ar),sm=eu(ar),rI=_u(ar),nI=cu(ar)});var S_={};kn(S_,{xor:()=>yh,xid:()=>BU,void:()=>Ih,uuidv7:()=>XU,uuidv6:()=>kU,uuidv4:()=>PU,uuid:()=>MU,url:()=>GU,unknown:()=>st,union:()=>Lo,undefined:()=>wh,ulid:()=>HU,uint64:()=>fh,uint32:()=>$h,tuple:()=>RI,transform:()=>So,templateLiteral:()=>Ph,symbol:()=>bh,superRefine:()=>KI,success:()=>Jh,stringbool:()=>Yh,stringFormat:()=>th,string:()=>eo,strictObject:()=>Rh,set:()=>zh,refine:()=>QI,record:()=>DI,readonly:()=>FI,promise:()=>kh,preprocess:()=>Bh,prefault:()=>AI,pipe:()=>A_,partialRecord:()=>Th,optional:()=>j_,object:()=>hh,number:()=>eI,nullish:()=>jh,nullable:()=>J_,null:()=>$I,nonoptional:()=>MI,never:()=>No,nativeEnum:()=>Sh,nanoid:()=>lU,nan:()=>Ah,meta:()=>lh,map:()=>Lh,mac:()=>aU,looseRecord:()=>Nh,looseObject:()=>Dh,literal:()=>Wh,lazy:()=>YI,ksuid:()=>QU,keyof:()=>Uh,jwt:()=>nh,json:()=>Hh,ipv6:()=>ZU,ipv4:()=>KU,intersection:()=>UI,int64:()=>dh,int32:()=>oh,int:()=>_o,instanceof:()=>vh,httpUrl:()=>VU,hostname:()=>ih,hex:()=>eh,hash:()=>_h,guid:()=>AU,function:()=>Xh,float64:()=>uh,float32:()=>ch,file:()=>Eh,exactOptional:()=>SI,enum:()=>zo,emoji:()=>FU,email:()=>JU,e164:()=>rh,discriminatedUnion:()=>qh,describe:()=>Fh,date:()=>Oh,custom:()=>Vh,cuid2:()=>YU,cuid:()=>vU,codec:()=>Mh,cidrv6:()=>xU,cidrv4:()=>CU,check:()=>Gh,catch:()=>XI,boolean:()=>_I,bigint:()=>gh,base64url:()=>sU,base64:()=>pU,array:()=>k_,any:()=>mh,_function:()=>Xh,_default:()=>jI,_ZodString:()=>co,ZodXor:()=>mI,ZodXID:()=>wo,ZodVoid:()=>bI,ZodUnknown:()=>dI,ZodUnion:()=>G_,ZodUndefined:()=>uI,ZodUUID:()=>ln,ZodURL:()=>M_,ZodULID:()=>bo,ZodType:()=>B,ZodTuple:()=>hI,ZodTransform:()=>LI,ZodTemplateLiteral:()=>lI,ZodSymbol:()=>cI,ZodSuccess:()=>PI,ZodStringFormat:()=>nr,ZodString:()=>ie,ZodSet:()=>qI,ZodRecord:()=>V_,ZodReadonly:()=>VI,ZodPromise:()=>HI,ZodPrefault:()=>JI,ZodPipe:()=>jo,ZodOptional:()=>Wo,ZodObject:()=>X_,ZodNumberFormat:()=>ri,ZodNumber:()=>_e,ZodNullable:()=>WI,ZodNull:()=>oI,ZodNonOptional:()=>Eo,ZodNever:()=>fI,ZodNanoID:()=>$o,ZodNaN:()=>GI,ZodMap:()=>yI,ZodMAC:()=>iI,ZodLiteral:()=>TI,ZodLazy:()=>vI,ZodKSUID:()=>mo,ZodJWT:()=>qo,ZodIntersection:()=>OI,ZodIPv6:()=>Oo,ZodIPv4:()=>Io,ZodGUID:()=>E_,ZodFunction:()=>BI,ZodFile:()=>NI,ZodExactOptional:()=>zI,ZodEnum:()=>te,ZodEmoji:()=>oo,ZodEmail:()=>uo,ZodE164:()=>yo,ZodDiscriminatedUnion:()=>II,ZodDefault:()=>EI,ZodDate:()=>P_,ZodCustomStringFormat:()=>ee,ZodCustom:()=>F_,ZodCodec:()=>Jo,ZodCatch:()=>kI,ZodCUID2:()=>fo,ZodCUID:()=>go,ZodCIDRv6:()=>ho,ZodCIDRv4:()=>Uo,ZodBoolean:()=>ce,ZodBigIntFormat:()=>To,ZodBigInt:()=>ue,ZodBase64URL:()=>Do,ZodBase64:()=>Ro,ZodArray:()=>wI,ZodAny:()=>gI});function eo(r){return mw(ie,r)}function JU(r){return qu(uo,r)}function AU(r){return q_(E_,r)}function MU(r){return Tu(ln,r)}function PU(r){return Nu(ln,r)}function kU(r){return Lu(ln,r)}function XU(r){return zu(ln,r)}function GU(r){return T_(M_,r)}function VU(r){return T_(M_,{protocol:/^https?$/,hostname:wn.domain,...W.normalizeParams(r)})}function FU(r){return Su(oo,r)}function lU(r){return Wu($o,r)}function vU(r){return Eu(go,r)}function YU(r){return ju(fo,r)}function HU(r){return Ju(bo,r)}function BU(r){return Au(wo,r)}function QU(r){return Mu(mo,r)}function KU(r){return Pu(Io,r)}function aU(r){return Ow(iI,r)}function ZU(r){return ku(Oo,r)}function CU(r){return Xu(Uo,r)}function xU(r){return Gu(ho,r)}function pU(r){return Vu(Ro,r)}function sU(r){return Fu(Do,r)}function rh(r){return lu(yo,r)}function nh(r){return vu(qo,r)}function th(r,n,t={}){return si(ee,r,n,t)}function ih(r){return si(ee,"hostname",wn.hostname,r)}function eh(r){return si(ee,"hex",wn.hex,r)}function _h(r,n){let t=n?.enc??"hex",e=`${r}_${t}`,i=wn[e];if(!i)throw Error(`Unrecognized hash format: ${e}`);return si(ee,e,i,n)}function eI(r){return qw(_e,r)}function _o(r){return Nw(ri,r)}function ch(r){return Lw(ri,r)}function uh(r){return zw(ri,r)}function oh(r){return Sw(ri,r)}function $h(r){return Ww(ri,r)}function _I(r){return Ew(ce,r)}function gh(r){return Jw(ue,r)}function dh(r){return Mw(To,r)}function fh(r){return Pw(To,r)}function bh(r){return kw(cI,r)}function wh(r){return Xw(uI,r)}function $I(r){return Gw(oI,r)}function mh(){return Vw(gI)}function st(){return Fw(dI)}function No(r){return lw(fI,r)}function Ih(r){return vw(bI,r)}function Oh(r){return Yw(P_,r)}function k_(r,n){return Qw(wI,r,n)}function Uh(r){let n=r._zod.def.shape;return zo(Object.keys(n))}function hh(r,n){let t={type:"object",shape:r??{},...W.normalizeParams(n)};return new X_(t)}function Rh(r,n){return new X_({type:"object",shape:r,catchall:No(),...W.normalizeParams(n)})}function Dh(r,n){return new X_({type:"object",shape:r,catchall:st(),...W.normalizeParams(n)})}function Lo(r,n){return new G_({type:"union",options:r,...W.normalizeParams(n)})}function yh(r,n){return new mI({type:"union",options:r,inclusive:!1,...W.normalizeParams(n)})}function qh(r,n,t){return new II({type:"union",options:n,discriminator:r,...W.normalizeParams(t)})}function UI(r,n){return new OI({type:"intersection",left:r,right:n})}function RI(r,n,t){let e=n instanceof v,i=e?t:n;return new hI({type:"tuple",items:r,rest:e?n:null,...W.normalizeParams(i)})}function DI(r,n,t){return new V_({type:"record",keyType:r,valueType:n,...W.normalizeParams(t)})}function Th(r,n,t){let e=Gr(r);return e._zod.values=void 0,new V_({type:"record",keyType:e,valueType:n,...W.normalizeParams(t)})}function Nh(r,n,t){return new V_({type:"record",keyType:r,valueType:n,mode:"loose",...W.normalizeParams(t)})}function Lh(r,n,t){return new yI({type:"map",keyType:r,valueType:n,...W.normalizeParams(t)})}function zh(r,n){return new qI({type:"set",valueType:r,...W.normalizeParams(n)})}function zo(r,n){let t=Array.isArray(r)?Object.fromEntries(r.map((e)=>[e,e])):r;return new te({type:"enum",entries:t,...W.normalizeParams(n)})}function Sh(r,n){return new te({type:"enum",entries:r,...W.normalizeParams(n)})}function Wh(r,n){return new TI({type:"literal",values:Array.isArray(r)?r:[r],...W.normalizeParams(n)})}function Eh(r){return Kw(NI,r)}function So(r){return new LI({type:"transform",transform:r})}function j_(r){return new Wo({type:"optional",innerType:r})}function SI(r){return new zI({type:"optional",innerType:r})}function J_(r){return new WI({type:"nullable",innerType:r})}function jh(r){return j_(J_(r))}function jI(r,n){return new EI({type:"default",innerType:r,get defaultValue(){return typeof n==="function"?n():W.shallowClone(n)}})}function AI(r,n){return new JI({type:"prefault",innerType:r,get defaultValue(){return typeof n==="function"?n():W.shallowClone(n)}})}function MI(r,n){return new Eo({type:"nonoptional",innerType:r,...W.normalizeParams(n)})}function Jh(r){return new PI({type:"success",innerType:r})}function XI(r,n){return new kI({type:"catch",innerType:r,catchValue:typeof n==="function"?n:()=>n})}function Ah(r){return Bw(GI,r)}function A_(r,n){return new jo({type:"pipe",in:r,out:n})}function Mh(r,n,t){return new Jo({type:"pipe",in:r,out:n,transform:t.decode,reverseTransform:t.encode})}function FI(r){return new VI({type:"readonly",innerType:r})}function Ph(r,n){return new lI({type:"template_literal",parts:r,...W.normalizeParams(n)})}function YI(r){return new vI({type:"lazy",getter:r})}function kh(r){return new HI({type:"promise",innerType:r})}function Xh(r){return new BI({type:"function",input:Array.isArray(r?.input)?RI(r?.input):r?.input??k_(st()),output:r?.output??st()})}function Gh(r){let n=new ir({check:"custom"});return n._zod.check=r,n}function Vh(r,n){return aw(F_,r??(()=>!0),n)}function QI(r,n={}){return Zw(F_,r,n)}function KI(r){return Cw(r)}function vh(r,n={}){let t=new F_({type:"custom",check:"custom",fn:(e)=>e instanceof r,abort:!0,...W.normalizeParams(n)});return t._zod.bag.Class=r,t._zod.check=(e)=>{if(!(e.value instanceof r))e.issues.push({code:"invalid_type",expected:r.name,input:e.value,inst:t,path:[...t._zod.def.path??[]]})},t}function Hh(r){let n=YI(()=>{return Lo([eo(r),eI(),_I(),$I(),k_(n),DI(eo(),n)])});return n}function Bh(r,n){return A_(So(r),n)}var B,co,ie,nr,uo,E_,ln,M_,oo,$o,go,fo,bo,wo,mo,Io,iI,Oo,Uo,ho,Ro,Do,yo,qo,ee,_e,ri,ce,ue,To,cI,uI,oI,gI,dI,fI,bI,P_,wI,X_,G_,mI,II,OI,hI,V_,yI,qI,te,TI,NI,LI,Wo,zI,WI,EI,JI,Eo,PI,kI,GI,jo,Jo,VI,lI,vI,HI,BI,F_,Fh,lh,Yh=(...r)=>sw({Codec:Jo,Boolean:ce,String:ie},...r);var W_=N(()=>{_n();_n();L_();N_();su();z_();tI();B=U("ZodType",(r,n)=>{return v.init(r,n),Object.assign(r["~standard"],{jsonSchema:{input:re(r,"input"),output:re(r,"output")}}),r.toJSONSchema=rm(r,{}),r.def=n,r.type=n.type,Object.defineProperty(r,"_def",{value:n}),r.check=(...t)=>{return r.clone(W.mergeDefs(n,{checks:[...n.checks??[],...t.map((e)=>typeof e==="function"?{_zod:{check:e,def:{check:"custom"},onattach:[]}}:e)]}),{parent:!0})},r.with=r.check,r.clone=(t,e)=>Gr(r,t,e),r.brand=()=>r,r.register=(t,e)=>{return t.add(r,e),r},r.parse=(t,e)=>Hm(r,t,e,{callee:r.parse}),r.safeParse=(t,e)=>Qm(r,t,e),r.parseAsync=async(t,e)=>Bm(r,t,e,{callee:r.parseAsync}),r.safeParseAsync=async(t,e)=>Km(r,t,e),r.spa=r.safeParseAsync,r.encode=(t,e)=>am(r,t,e),r.decode=(t,e)=>Zm(r,t,e),r.encodeAsync=async(t,e)=>Cm(r,t,e),r.decodeAsync=async(t,e)=>xm(r,t,e),r.safeEncode=(t,e)=>pm(r,t,e),r.safeDecode=(t,e)=>sm(r,t,e),r.safeEncodeAsync=async(t,e)=>rI(r,t,e),r.safeDecodeAsync=async(t,e)=>nI(r,t,e),r.refine=(t,e)=>r.check(QI(t,e)),r.superRefine=(t)=>r.check(KI(t)),r.overwrite=(t)=>r.check(Tn(t)),r.optional=()=>j_(r),r.exactOptional=()=>SI(r),r.nullable=()=>J_(r),r.nullish=()=>j_(J_(r)),r.nonoptional=(t)=>MI(r,t),r.array=()=>k_(r),r.or=(t)=>Lo([r,t]),r.and=(t)=>UI(r,t),r.transform=(t)=>A_(r,So(t)),r.default=(t)=>jI(r,t),r.prefault=(t)=>AI(r,t),r.catch=(t)=>XI(r,t),r.pipe=(t)=>A_(r,t),r.readonly=()=>FI(r),r.describe=(t)=>{let e=r.clone();return Wr.add(e,{description:t}),e},Object.defineProperty(r,"description",{get(){return Wr.get(r)?.description},configurable:!0}),r.meta=(...t)=>{if(t.length===0)return Wr.get(r);let e=r.clone();return Wr.add(e,t[0]),e},r.isOptional=()=>r.safeParse(void 0).success,r.isNullable=()=>r.safeParse(null).success,r.apply=(t)=>t(r),r}),co=U("_ZodString",(r,n)=>{Zt.init(r,n),B.init(r,n),r._zod.processJSONSchema=(e,i,_)=>nm(r,e,i,_);let t=r._zod.bag;r.format=t.format??null,r.minLength=t.minimum??null,r.maxLength=t.maximum??null,r.regex=(...e)=>r.check(li(...e)),r.includes=(...e)=>r.check(Hi(...e)),r.startsWith=(...e)=>r.check(Bi(...e)),r.endsWith=(...e)=>r.check(Qi(...e)),r.min=(...e)=>r.check(et(...e)),r.max=(...e)=>r.check(xt(...e)),r.length=(...e)=>r.check(pt(...e)),r.nonempty=(...e)=>r.check(et(1,...e)),r.lowercase=(e)=>r.check(vi(e)),r.uppercase=(e)=>r.check(Yi(e)),r.trim=()=>r.check(Zi()),r.normalize=(...e)=>r.check(ai(...e)),r.toLowerCase=()=>r.check(Ci()),r.toUpperCase=()=>r.check(xi()),r.slugify=()=>r.check(pi())}),ie=U("ZodString",(r,n)=>{Zt.init(r,n),co.init(r,n),r.email=(t)=>r.check(qu(uo,t)),r.url=(t)=>r.check(T_(M_,t)),r.jwt=(t)=>r.check(vu(qo,t)),r.emoji=(t)=>r.check(Su(oo,t)),r.guid=(t)=>r.check(q_(E_,t)),r.uuid=(t)=>r.check(Tu(ln,t)),r.uuidv4=(t)=>r.check(Nu(ln,t)),r.uuidv6=(t)=>r.check(Lu(ln,t)),r.uuidv7=(t)=>r.check(zu(ln,t)),r.nanoid=(t)=>r.check(Wu($o,t)),r.guid=(t)=>r.check(q_(E_,t)),r.cuid=(t)=>r.check(Eu(go,t)),r.cuid2=(t)=>r.check(ju(fo,t)),r.ulid=(t)=>r.check(Ju(bo,t)),r.base64=(t)=>r.check(Vu(Ro,t)),r.base64url=(t)=>r.check(Fu(Do,t)),r.xid=(t)=>r.check(Au(wo,t)),r.ksuid=(t)=>r.check(Mu(mo,t)),r.ipv4=(t)=>r.check(Pu(Io,t)),r.ipv6=(t)=>r.check(ku(Oo,t)),r.cidrv4=(t)=>r.check(Xu(Uo,t)),r.cidrv6=(t)=>r.check(Gu(ho,t)),r.e164=(t)=>r.check(lu(yo,t)),r.datetime=(t)=>r.check(Vm(t)),r.date=(t)=>r.check(Fm(t)),r.time=(t)=>r.check(lm(t)),r.duration=(t)=>r.check(vm(t))});nr=U("ZodStringFormat",(r,n)=>{rr.init(r,n),co.init(r,n)}),uo=U("ZodEmail",(r,n)=>{of.init(r,n),nr.init(r,n)});E_=U("ZodGUID",(r,n)=>{cf.init(r,n),nr.init(r,n)});ln=U("ZodUUID",(r,n)=>{uf.init(r,n),nr.init(r,n)});M_=U("ZodURL",(r,n)=>{$f.init(r,n),nr.init(r,n)});oo=U("ZodEmoji",(r,n)=>{gf.init(r,n),nr.init(r,n)});$o=U("ZodNanoID",(r,n)=>{df.init(r,n),nr.init(r,n)});go=U("ZodCUID",(r,n)=>{ff.init(r,n),nr.init(r,n)});fo=U("ZodCUID2",(r,n)=>{bf.init(r,n),nr.init(r,n)});bo=U("ZodULID",(r,n)=>{wf.init(r,n),nr.init(r,n)});wo=U("ZodXID",(r,n)=>{mf.init(r,n),nr.init(r,n)});mo=U("ZodKSUID",(r,n)=>{If.init(r,n),nr.init(r,n)});Io=U("ZodIPv4",(r,n)=>{Df.init(r,n),nr.init(r,n)});iI=U("ZodMAC",(r,n)=>{qf.init(r,n),nr.init(r,n)});Oo=U("ZodIPv6",(r,n)=>{yf.init(r,n),nr.init(r,n)});Uo=U("ZodCIDRv4",(r,n)=>{Tf.init(r,n),nr.init(r,n)});ho=U("ZodCIDRv6",(r,n)=>{Nf.init(r,n),nr.init(r,n)});Ro=U("ZodBase64",(r,n)=>{zf.init(r,n),nr.init(r,n)});Do=U("ZodBase64URL",(r,n)=>{Sf.init(r,n),nr.init(r,n)});yo=U("ZodE164",(r,n)=>{Wf.init(r,n),nr.init(r,n)});qo=U("ZodJWT",(r,n)=>{Ef.init(r,n),nr.init(r,n)});ee=U("ZodCustomStringFormat",(r,n)=>{jf.init(r,n),nr.init(r,n)});_e=U("ZodNumber",(r,n)=>{Uu.init(r,n),B.init(r,n),r._zod.processJSONSchema=(e,i,_)=>tm(r,e,i,_),r.gt=(e,i)=>r.check(Vn(e,i)),r.gte=(e,i)=>r.check(Vr(e,i)),r.min=(e,i)=>r.check(Vr(e,i)),r.lt=(e,i)=>r.check(Gn(e,i)),r.lte=(e,i)=>r.check(en(e,i)),r.max=(e,i)=>r.check(en(e,i)),r.int=(e)=>r.check(_o(e)),r.safe=(e)=>r.check(_o(e)),r.positive=(e)=>r.check(Vn(0,e)),r.nonnegative=(e)=>r.check(Vr(0,e)),r.negative=(e)=>r.check(Gn(0,e)),r.nonpositive=(e)=>r.check(en(0,e)),r.multipleOf=(e,i)=>r.check(Ot(e,i)),r.step=(e,i)=>r.check(Ot(e,i)),r.finite=()=>r;let t=r._zod.bag;r.minValue=Math.max(t.minimum??Number.NEGATIVE_INFINITY,t.exclusiveMinimum??Number.NEGATIVE_INFINITY)??null,r.maxValue=Math.min(t.maximum??Number.POSITIVE_INFINITY,t.exclusiveMaximum??Number.POSITIVE_INFINITY)??null,r.isInt=(t.format??"").includes("int")||Number.isSafeInteger(t.multipleOf??0.5),r.isFinite=!0,r.format=t.format??null});ri=U("ZodNumberFormat",(r,n)=>{Jf.init(r,n),_e.init(r,n)});ce=U("ZodBoolean",(r,n)=>{w_.init(r,n),B.init(r,n),r._zod.processJSONSchema=(t,e,i)=>im(r,t,e,i)});ue=U("ZodBigInt",(r,n)=>{hu.init(r,n),B.init(r,n),r._zod.processJSONSchema=(e,i,_)=>em(r,e,i,_),r.gte=(e,i)=>r.check(Vr(e,i)),r.min=(e,i)=>r.check(Vr(e,i)),r.gt=(e,i)=>r.check(Vn(e,i)),r.gte=(e,i)=>r.check(Vr(e,i)),r.min=(e,i)=>r.check(Vr(e,i)),r.lt=(e,i)=>r.check(Gn(e,i)),r.lte=(e,i)=>r.check(en(e,i)),r.max=(e,i)=>r.check(en(e,i)),r.positive=(e)=>r.check(Vn(BigInt(0),e)),r.negative=(e)=>r.check(Gn(BigInt(0),e)),r.nonpositive=(e)=>r.check(en(BigInt(0),e)),r.nonnegative=(e)=>r.check(Vr(BigInt(0),e)),r.multipleOf=(e,i)=>r.check(Ot(e,i));let t=r._zod.bag;r.minValue=t.minimum??null,r.maxValue=t.maximum??null,r.format=t.format??null});To=U("ZodBigIntFormat",(r,n)=>{Af.init(r,n),ue.init(r,n)});cI=U("ZodSymbol",(r,n)=>{Mf.init(r,n),B.init(r,n),r._zod.processJSONSchema=(t,e,i)=>_m(r,t,e,i)});uI=U("ZodUndefined",(r,n)=>{Pf.init(r,n),B.init(r,n),r._zod.processJSONSchema=(t,e,i)=>um(r,t,e,i)});oI=U("ZodNull",(r,n)=>{kf.init(r,n),B.init(r,n),r._zod.processJSONSchema=(t,e,i)=>cm(r,t,e,i)});gI=U("ZodAny",(r,n)=>{Xf.init(r,n),B.init(r,n),r._zod.processJSONSchema=(t,e,i)=>gm(r,t,e,i)});dI=U("ZodUnknown",(r,n)=>{Gf.init(r,n),B.init(r,n),r._zod.processJSONSchema=(t,e,i)=>dm(r,t,e,i)});fI=U("ZodNever",(r,n)=>{Vf.init(r,n),B.init(r,n),r._zod.processJSONSchema=(t,e,i)=>$m(r,t,e,i)});bI=U("ZodVoid",(r,n)=>{Ff.init(r,n),B.init(r,n),r._zod.processJSONSchema=(t,e,i)=>om(r,t,e,i)});P_=U("ZodDate",(r,n)=>{lf.init(r,n),B.init(r,n),r._zod.processJSONSchema=(e,i,_)=>fm(r,e,i,_),r.min=(e,i)=>r.check(Vr(e,i)),r.max=(e,i)=>r.check(en(e,i));let t=r._zod.bag;r.minDate=t.minimum?new Date(t.minimum):null,r.maxDate=t.maximum?new Date(t.maximum):null});wI=U("ZodArray",(r,n)=>{vf.init(r,n),B.init(r,n),r._zod.processJSONSchema=(t,e,i)=>Tm(r,t,e,i),r.element=n.element,r.min=(t,e)=>r.check(et(t,e)),r.nonempty=(t)=>r.check(et(1,t)),r.max=(t,e)=>r.check(xt(t,e)),r.length=(t,e)=>r.check(pt(t,e)),r.unwrap=()=>r.element});X_=U("ZodObject",(r,n)=>{Yf.init(r,n),B.init(r,n),r._zod.processJSONSchema=(t,e,i)=>Nm(r,t,e,i),W.defineLazy(r,"shape",()=>{return n.shape}),r.keyof=()=>zo(Object.keys(r._zod.def.shape)),r.catchall=(t)=>r.clone({...r._zod.def,catchall:t}),r.passthrough=()=>r.clone({...r._zod.def,catchall:st()}),r.loose=()=>r.clone({...r._zod.def,catchall:st()}),r.strict=()=>r.clone({...r._zod.def,catchall:No()}),r.strip=()=>r.clone({...r._zod.def,catchall:void 0}),r.extend=(t)=>{return W.extend(r,t)},r.safeExtend=(t)=>{return W.safeExtend(r,t)},r.merge=(t)=>W.merge(r,t),r.pick=(t)=>W.pick(r,t),r.omit=(t)=>W.omit(r,t),r.partial=(...t)=>W.partial(Wo,r,t[0]),r.required=(...t)=>W.required(Eo,r,t[0])});G_=U("ZodUnion",(r,n)=>{m_.init(r,n),B.init(r,n),r._zod.processJSONSchema=(t,e,i)=>Zu(r,t,e,i),r.options=n.options});mI=U("ZodXor",(r,n)=>{G_.init(r,n),Hf.init(r,n),r._zod.processJSONSchema=(t,e,i)=>Zu(r,t,e,i),r.options=n.options});II=U("ZodDiscriminatedUnion",(r,n)=>{G_.init(r,n),Bf.init(r,n)});OI=U("ZodIntersection",(r,n)=>{Qf.init(r,n),B.init(r,n),r._zod.processJSONSchema=(t,e,i)=>Lm(r,t,e,i)});hI=U("ZodTuple",(r,n)=>{Ru.init(r,n),B.init(r,n),r._zod.processJSONSchema=(t,e,i)=>zm(r,t,e,i),r.rest=(t)=>r.clone({...r._zod.def,rest:t})});V_=U("ZodRecord",(r,n)=>{Kf.init(r,n),B.init(r,n),r._zod.processJSONSchema=(t,e,i)=>Sm(r,t,e,i),r.keyType=n.keyType,r.valueType=n.valueType});yI=U("ZodMap",(r,n)=>{af.init(r,n),B.init(r,n),r._zod.processJSONSchema=(t,e,i)=>ym(r,t,e,i),r.keyType=n.keyType,r.valueType=n.valueType,r.min=(...t)=>r.check(Fn(...t)),r.nonempty=(t)=>r.check(Fn(1,t)),r.max=(...t)=>r.check(Ut(...t)),r.size=(...t)=>r.check(Ct(...t))});qI=U("ZodSet",(r,n)=>{Zf.init(r,n),B.init(r,n),r._zod.processJSONSchema=(t,e,i)=>qm(r,t,e,i),r.min=(...t)=>r.check(Fn(...t)),r.nonempty=(t)=>r.check(Fn(1,t)),r.max=(...t)=>r.check(Ut(...t)),r.size=(...t)=>r.check(Ct(...t))});te=U("ZodEnum",(r,n)=>{Cf.init(r,n),B.init(r,n),r._zod.processJSONSchema=(e,i,_)=>bm(r,e,i,_),r.enum=n.entries,r.options=Object.values(n.entries);let t=new Set(Object.keys(n.entries));r.extract=(e,i)=>{let _={};for(let c of e)if(t.has(c))_[c]=n.entries[c];else throw Error(`Key ${c} not found in enum`);return new te({...n,checks:[],...W.normalizeParams(i),entries:_})},r.exclude=(e,i)=>{let _={...n.entries};for(let c of e)if(t.has(c))delete _[c];else throw Error(`Key ${c} not found in enum`);return new te({...n,checks:[],...W.normalizeParams(i),entries:_})}});TI=U("ZodLiteral",(r,n)=>{xf.init(r,n),B.init(r,n),r._zod.processJSONSchema=(t,e,i)=>wm(r,t,e,i),r.values=new Set(n.values),Object.defineProperty(r,"value",{get(){if(n.values.length>1)throw Error("This schema contains multiple valid literal values. Use `.values` instead.");return n.values[0]}})});NI=U("ZodFile",(r,n)=>{pf.init(r,n),B.init(r,n),r._zod.processJSONSchema=(t,e,i)=>Om(r,t,e,i),r.min=(t,e)=>r.check(Fn(t,e)),r.max=(t,e)=>r.check(Ut(t,e)),r.mime=(t,e)=>r.check(Ki(Array.isArray(t)?t:[t],e))});LI=U("ZodTransform",(r,n)=>{sf.init(r,n),B.init(r,n),r._zod.processJSONSchema=(t,e,i)=>Dm(r,t,e,i),r._zod.parse=(t,e)=>{if(e.direction==="backward")throw new Qt(r.constructor.name);t.addIssue=(_)=>{if(typeof _==="string")t.issues.push(W.issue(_,t.value,n));else{let c=_;if(c.fatal)c.continue=!1;c.code??(c.code="custom"),c.input??(c.input=t.value),c.inst??(c.inst=r),t.issues.push(W.issue(c))}};let i=n.transform(t.value,t);if(i instanceof Promise)return i.then((_)=>{return t.value=_,t});return t.value=i,t}});Wo=U("ZodOptional",(r,n)=>{Du.init(r,n),B.init(r,n),r._zod.processJSONSchema=(t,e,i)=>Cu(r,t,e,i),r.unwrap=()=>r._zod.def.innerType});zI=U("ZodExactOptional",(r,n)=>{rb.init(r,n),B.init(r,n),r._zod.processJSONSchema=(t,e,i)=>Cu(r,t,e,i),r.unwrap=()=>r._zod.def.innerType});WI=U("ZodNullable",(r,n)=>{nb.init(r,n),B.init(r,n),r._zod.processJSONSchema=(t,e,i)=>Wm(r,t,e,i),r.unwrap=()=>r._zod.def.innerType});EI=U("ZodDefault",(r,n)=>{tb.init(r,n),B.init(r,n),r._zod.processJSONSchema=(t,e,i)=>jm(r,t,e,i),r.unwrap=()=>r._zod.def.innerType,r.removeDefault=r.unwrap});JI=U("ZodPrefault",(r,n)=>{ib.init(r,n),B.init(r,n),r._zod.processJSONSchema=(t,e,i)=>Jm(r,t,e,i),r.unwrap=()=>r._zod.def.innerType});Eo=U("ZodNonOptional",(r,n)=>{eb.init(r,n),B.init(r,n),r._zod.processJSONSchema=(t,e,i)=>Em(r,t,e,i),r.unwrap=()=>r._zod.def.innerType});PI=U("ZodSuccess",(r,n)=>{_b.init(r,n),B.init(r,n),r._zod.processJSONSchema=(t,e,i)=>Um(r,t,e,i),r.unwrap=()=>r._zod.def.innerType});kI=U("ZodCatch",(r,n)=>{cb.init(r,n),B.init(r,n),r._zod.processJSONSchema=(t,e,i)=>Am(r,t,e,i),r.unwrap=()=>r._zod.def.innerType,r.removeCatch=r.unwrap});GI=U("ZodNaN",(r,n)=>{ub.init(r,n),B.init(r,n),r._zod.processJSONSchema=(t,e,i)=>mm(r,t,e,i)});jo=U("ZodPipe",(r,n)=>{ob.init(r,n),B.init(r,n),r._zod.processJSONSchema=(t,e,i)=>Mm(r,t,e,i),r.in=n.in,r.out=n.out});Jo=U("ZodCodec",(r,n)=>{jo.init(r,n),I_.init(r,n)});VI=U("ZodReadonly",(r,n)=>{$b.init(r,n),B.init(r,n),r._zod.processJSONSchema=(t,e,i)=>Pm(r,t,e,i),r.unwrap=()=>r._zod.def.innerType});lI=U("ZodTemplateLiteral",(r,n)=>{gb.init(r,n),B.init(r,n),r._zod.processJSONSchema=(t,e,i)=>Im(r,t,e,i)});vI=U("ZodLazy",(r,n)=>{bb.init(r,n),B.init(r,n),r._zod.processJSONSchema=(t,e,i)=>Xm(r,t,e,i),r.unwrap=()=>r._zod.def.getter()});HI=U("ZodPromise",(r,n)=>{fb.init(r,n),B.init(r,n),r._zod.processJSONSchema=(t,e,i)=>km(r,t,e,i),r.unwrap=()=>r._zod.def.innerType});BI=U("ZodFunction",(r,n)=>{db.init(r,n),B.init(r,n),r._zod.processJSONSchema=(t,e,i)=>Rm(r,t,e,i)});F_=U("ZodCustom",(r,n)=>{wb.init(r,n),B.init(r,n),r._zod.processJSONSchema=(t,e,i)=>hm(r,t,e,i)});Fh=xw,lh=pw});function oE(r){fr({customError:r})}function $E(){return fr().customError}var uE,aI;var Qh=N(()=>{_n();uE={invalid_type:"invalid_type",too_big:"too_big",too_small:"too_small",invalid_format:"invalid_format",not_multiple_of:"not_multiple_of",unrecognized_keys:"unrecognized_keys",invalid_union:"invalid_union",invalid_key:"invalid_key",invalid_element:"invalid_element",invalid_value:"invalid_value",custom:"custom"};(function(r){})(aI||(aI={}))});function dE(r,n){let t=r.$schema;if(t==="https://json-schema.org/draft/2020-12/schema")return"draft-2020-12";if(t==="http://json-schema.org/draft-07/schema#")return"draft-7";if(t==="http://json-schema.org/draft-04/schema#")return"draft-4";return n??"draft-2020-12"}function fE(r,n){if(!r.startsWith("#"))throw Error("External $ref is not supported, only local refs (#/...) are allowed");let t=r.slice(1).split("/").filter(Boolean);if(t.length===0)return n.rootSchema;let e=n.version==="draft-2020-12"?"$defs":"definitions";if(t[0]===e){let i=t[1];if(!i||!n.defs[i])throw Error(`Reference not found: ${r}`);return n.defs[i]}throw Error(`Reference not found: ${r}`)}function Kh(r,n){if(r.not!==void 0){if(typeof r.not==="object"&&Object.keys(r.not).length===0)return A.never();throw Error("not is not supported in Zod (except { not: {} } for never)")}if(r.unevaluatedItems!==void 0)throw Error("unevaluatedItems is not supported");if(r.unevaluatedProperties!==void 0)throw Error("unevaluatedProperties is not supported");if(r.if!==void 0||r.then!==void 0||r.else!==void 0)throw Error("Conditional schemas (if/then/else) are not supported");if(r.dependentSchemas!==void 0||r.dependentRequired!==void 0)throw Error("dependentSchemas and dependentRequired are not supported");if(r.$ref){let i=r.$ref;if(n.refs.has(i))return n.refs.get(i);if(n.processing.has(i))return A.lazy(()=>{if(!n.refs.has(i))throw Error(`Circular reference not resolved: ${i}`);return n.refs.get(i)});n.processing.add(i);let _=fE(i,n),c=Ar(_,n);return n.refs.set(i,c),n.processing.delete(i),c}if(r.enum!==void 0){let i=r.enum;if(n.version==="openapi-3.0"&&r.nullable===!0&&i.length===1&&i[0]===null)return A.null();if(i.length===0)return A.never();if(i.length===1)return A.literal(i[0]);if(i.every((c)=>typeof c==="string"))return A.enum(i);let _=i.map((c)=>A.literal(c));if(_.length<2)return _[0];return A.union([_[0],_[1],..._.slice(2)])}if(r.const!==void 0)return A.literal(r.const);let t=r.type;if(Array.isArray(t)){let i=t.map((_)=>{let c={...r,type:_};return Kh(c,n)});if(i.length===0)return A.never();if(i.length===1)return i[0];return A.union(i)}if(!t)return A.any();let e;switch(t){case"string":{let i=A.string();if(r.format){let _=r.format;if(_==="email")i=i.check(A.email());else if(_==="uri"||_==="uri-reference")i=i.check(A.url());else if(_==="uuid"||_==="guid")i=i.check(A.uuid());else if(_==="date-time")i=i.check(A.iso.datetime());else if(_==="date")i=i.check(A.iso.date());else if(_==="time")i=i.check(A.iso.time());else if(_==="duration")i=i.check(A.iso.duration());else if(_==="ipv4")i=i.check(A.ipv4());else if(_==="ipv6")i=i.check(A.ipv6());else if(_==="mac")i=i.check(A.mac());else if(_==="cidr")i=i.check(A.cidrv4());else if(_==="cidr-v6")i=i.check(A.cidrv6());else if(_==="base64")i=i.check(A.base64());else if(_==="base64url")i=i.check(A.base64url());else if(_==="e164")i=i.check(A.e164());else if(_==="jwt")i=i.check(A.jwt());else if(_==="emoji")i=i.check(A.emoji());else if(_==="nanoid")i=i.check(A.nanoid());else if(_==="cuid")i=i.check(A.cuid());else if(_==="cuid2")i=i.check(A.cuid2());else if(_==="ulid")i=i.check(A.ulid());else if(_==="xid")i=i.check(A.xid());else if(_==="ksuid")i=i.check(A.ksuid())}if(typeof r.minLength==="number")i=i.min(r.minLength);if(typeof r.maxLength==="number")i=i.max(r.maxLength);if(r.pattern)i=i.regex(new RegExp(r.pattern));e=i;break}case"number":case"integer":{let i=t==="integer"?A.number().int():A.number();if(typeof r.minimum==="number")i=i.min(r.minimum);if(typeof r.maximum==="number")i=i.max(r.maximum);if(typeof r.exclusiveMinimum==="number")i=i.gt(r.exclusiveMinimum);else if(r.exclusiveMinimum===!0&&typeof r.minimum==="number")i=i.gt(r.minimum);if(typeof r.exclusiveMaximum==="number")i=i.lt(r.exclusiveMaximum);else if(r.exclusiveMaximum===!0&&typeof r.maximum==="number")i=i.lt(r.maximum);if(typeof r.multipleOf==="number")i=i.multipleOf(r.multipleOf);e=i;break}case"boolean":{e=A.boolean();break}case"null":{e=A.null();break}case"object":{let i={},_=r.properties||{},c=new Set(r.required||[]);for(let[o,$]of Object.entries(_)){let g=Ar($,n);i[o]=c.has(o)?g:g.optional()}if(r.propertyNames){let o=Ar(r.propertyNames,n),$=r.additionalProperties&&typeof r.additionalProperties==="object"?Ar(r.additionalProperties,n):A.any();if(Object.keys(i).length===0){e=A.record(o,$);break}let g=A.object(i).passthrough(),d=A.looseRecord(o,$);e=A.intersection(g,d);break}if(r.patternProperties){let o=r.patternProperties,$=Object.keys(o),g=[];for(let f of $){let b=Ar(o[f],n),m=A.string().regex(new RegExp(f));g.push(A.looseRecord(m,b))}let d=[];if(Object.keys(i).length>0)d.push(A.object(i).passthrough());if(d.push(...g),d.length===0)e=A.object({}).passthrough();else if(d.length===1)e=d[0];else{let f=A.intersection(d[0],d[1]);for(let b=2;b<d.length;b++)f=A.intersection(f,d[b]);e=f}break}let u=A.object(i);if(r.additionalProperties===!1)e=u.strict();else if(typeof r.additionalProperties==="object")e=u.catchall(Ar(r.additionalProperties,n));else e=u.passthrough();break}case"array":{let{prefixItems:i,items:_}=r;if(i&&Array.isArray(i)){let c=i.map((o)=>Ar(o,n)),u=_&&typeof _==="object"&&!Array.isArray(_)?Ar(_,n):void 0;if(u)e=A.tuple(c).rest(u);else e=A.tuple(c);if(typeof r.minItems==="number")e=e.check(A.minLength(r.minItems));if(typeof r.maxItems==="number")e=e.check(A.maxLength(r.maxItems))}else if(Array.isArray(_)){let c=_.map((o)=>Ar(o,n)),u=r.additionalItems&&typeof r.additionalItems==="object"?Ar(r.additionalItems,n):void 0;if(u)e=A.tuple(c).rest(u);else e=A.tuple(c);if(typeof r.minItems==="number")e=e.check(A.minLength(r.minItems));if(typeof r.maxItems==="number")e=e.check(A.maxLength(r.maxItems))}else if(_!==void 0){let c=Ar(_,n),u=A.array(c);if(typeof r.minItems==="number")u=u.min(r.minItems);if(typeof r.maxItems==="number")u=u.max(r.maxItems);e=u}else e=A.array(A.any());break}default:throw Error(`Unsupported type: ${t}`)}if(r.description)e=e.describe(r.description);if(r.default!==void 0)e=e.default(r.default);return e}function Ar(r,n){if(typeof r==="boolean")return r?A.any():A.never();let t=Kh(r,n),e=r.type||r.enum!==void 0||r.const!==void 0;if(r.anyOf&&Array.isArray(r.anyOf)){let u=r.anyOf.map(($)=>Ar($,n)),o=A.union(u);t=e?A.intersection(t,o):o}if(r.oneOf&&Array.isArray(r.oneOf)){let u=r.oneOf.map(($)=>Ar($,n)),o=A.xor(u);t=e?A.intersection(t,o):o}if(r.allOf&&Array.isArray(r.allOf))if(r.allOf.length===0)t=e?t:A.any();else{let u=e?t:Ar(r.allOf[0],n),o=e?0:1;for(let $=o;$<r.allOf.length;$++)u=A.intersection(u,Ar(r.allOf[$],n));t=u}if(r.nullable===!0&&n.version==="openapi-3.0")t=A.nullable(t);if(r.readOnly===!0)t=A.readonly(t);let i={},_=["$id","id","$comment","$anchor","$vocabulary","$dynamicRef","$dynamicAnchor"];for(let u of _)if(u in r)i[u]=r[u];let c=["contentEncoding","contentMediaType","contentSchema"];for(let u of c)if(u in r)i[u]=r[u];for(let u of Object.keys(r))if(!gE.has(u))i[u]=r[u];if(Object.keys(i).length>0)n.registry.add(t,i);return t}function ah(r,n){if(typeof r==="boolean")return r?A.any():A.never();let t=dE(r,n?.defaultTarget),e=r.$defs||r.definitions||{},i={version:t,defs:e,refs:new Map,processing:new Set,rootSchema:r,registry:n?.registry??Wr};return Ar(r,i)}var A,gE;var Zh=N(()=>{y_();su();z_();W_();A={...S_,...pu,iso:ne},gE=new Set(["$schema","$ref","$defs","definitions","$id","id","$comment","$anchor","$vocabulary","$dynamicRef","$dynamicAnchor","type","enum","const","anyOf","oneOf","allOf","not","properties","required","additionalProperties","patternProperties","propertyNames","minProperties","maxProperties","items","prefixItems","additionalItems","minItems","maxItems","uniqueItems","contains","minContains","maxContains","minLength","maxLength","pattern","format","minimum","maximum","exclusiveMinimum","exclusiveMaximum","multipleOf","description","default","contentEncoding","contentMediaType","contentSchema","unevaluatedItems","unevaluatedProperties","if","then","else","dependentSchemas","dependentRequired","nullable","readOnly"])});var ZI={};kn(ZI,{string:()=>bE,number:()=>wE,date:()=>OE,boolean:()=>mE,bigint:()=>IE});function bE(r){return Iw(ie,r)}function wE(r){return Tw(_e,r)}function mE(r){return jw(ce,r)}function IE(r){return Aw(ue,r)}function OE(r){return Hw(P_,r)}var Ch=N(()=>{_n();W_()});var y={};kn(y,{xor:()=>yh,xid:()=>BU,void:()=>Ih,uuidv7:()=>XU,uuidv6:()=>kU,uuidv4:()=>PU,uuid:()=>MU,util:()=>W,url:()=>GU,uppercase:()=>Yi,unknown:()=>st,union:()=>Lo,undefined:()=>wh,ulid:()=>HU,uint64:()=>fh,uint32:()=>$h,tuple:()=>RI,trim:()=>Zi,treeifyError:()=>ed,transform:()=>So,toUpperCase:()=>xi,toLowerCase:()=>Ci,toJSONSchema:()=>xu,templateLiteral:()=>Ph,symbol:()=>bh,superRefine:()=>KI,success:()=>Jh,stringbool:()=>Yh,stringFormat:()=>th,string:()=>eo,strictObject:()=>Rh,startsWith:()=>Bi,slugify:()=>pi,size:()=>Ct,setErrorMap:()=>oE,set:()=>zh,safeParseAsync:()=>Km,safeParse:()=>Qm,safeEncodeAsync:()=>rI,safeEncode:()=>pm,safeDecodeAsync:()=>nI,safeDecode:()=>sm,registry:()=>yu,regexes:()=>wn,regex:()=>li,refine:()=>QI,record:()=>DI,readonly:()=>FI,property:()=>Ku,promise:()=>kh,prettifyError:()=>_d,preprocess:()=>Bh,prefault:()=>AI,positive:()=>Yu,pipe:()=>A_,partialRecord:()=>Th,parseAsync:()=>Bm,parse:()=>Hm,overwrite:()=>Tn,optional:()=>j_,object:()=>hh,number:()=>eI,nullish:()=>jh,nullable:()=>J_,null:()=>$I,normalize:()=>ai,nonpositive:()=>Bu,nonoptional:()=>MI,nonnegative:()=>Qu,never:()=>No,negative:()=>Hu,nativeEnum:()=>Sh,nanoid:()=>lU,nan:()=>Ah,multipleOf:()=>Ot,minSize:()=>Fn,minLength:()=>et,mime:()=>Ki,meta:()=>lh,maxSize:()=>Ut,maxLength:()=>xt,map:()=>Lh,mac:()=>aU,lte:()=>en,lt:()=>Gn,lowercase:()=>vi,looseRecord:()=>Nh,looseObject:()=>Dh,locales:()=>D_,literal:()=>Wh,length:()=>pt,lazy:()=>YI,ksuid:()=>QU,keyof:()=>Uh,jwt:()=>nh,json:()=>Hh,iso:()=>ne,ipv6:()=>ZU,ipv4:()=>KU,intersection:()=>UI,int64:()=>dh,int32:()=>oh,int:()=>_o,instanceof:()=>vh,includes:()=>Hi,httpUrl:()=>VU,hostname:()=>ih,hex:()=>eh,hash:()=>_h,guid:()=>AU,gte:()=>Vr,gt:()=>Vn,globalRegistry:()=>Wr,getErrorMap:()=>$E,function:()=>Xh,fromJSONSchema:()=>ah,formatError:()=>g_,float64:()=>uh,float32:()=>ch,flattenError:()=>$_,file:()=>Eh,exactOptional:()=>SI,enum:()=>zo,endsWith:()=>Qi,encodeAsync:()=>Cm,encode:()=>am,emoji:()=>FU,email:()=>JU,e164:()=>rh,discriminatedUnion:()=>qh,describe:()=>Fh,decodeAsync:()=>xm,decode:()=>Zm,date:()=>Oh,custom:()=>Vh,cuid2:()=>YU,cuid:()=>vU,core:()=>_t,config:()=>fr,coerce:()=>ZI,codec:()=>Mh,clone:()=>Gr,cidrv6:()=>xU,cidrv4:()=>CU,check:()=>Gh,catch:()=>XI,boolean:()=>_I,bigint:()=>gh,base64url:()=>sU,base64:()=>pU,array:()=>k_,any:()=>mh,_function:()=>Xh,_default:()=>jI,_ZodString:()=>co,ZodXor:()=>mI,ZodXID:()=>wo,ZodVoid:()=>bI,ZodUnknown:()=>dI,ZodUnion:()=>G_,ZodUndefined:()=>uI,ZodUUID:()=>ln,ZodURL:()=>M_,ZodULID:()=>bo,ZodType:()=>B,ZodTuple:()=>hI,ZodTransform:()=>LI,ZodTemplateLiteral:()=>lI,ZodSymbol:()=>cI,ZodSuccess:()=>PI,ZodStringFormat:()=>nr,ZodString:()=>ie,ZodSet:()=>qI,ZodRecord:()=>V_,ZodRealError:()=>ar,ZodReadonly:()=>VI,ZodPromise:()=>HI,ZodPrefault:()=>JI,ZodPipe:()=>jo,ZodOptional:()=>Wo,ZodObject:()=>X_,ZodNumberFormat:()=>ri,ZodNumber:()=>_e,ZodNullable:()=>WI,ZodNull:()=>oI,ZodNonOptional:()=>Eo,ZodNever:()=>fI,ZodNanoID:()=>$o,ZodNaN:()=>GI,ZodMap:()=>yI,ZodMAC:()=>iI,ZodLiteral:()=>TI,ZodLazy:()=>vI,ZodKSUID:()=>mo,ZodJWT:()=>qo,ZodIssueCode:()=>uE,ZodIntersection:()=>OI,ZodISOTime:()=>to,ZodISODuration:()=>io,ZodISODateTime:()=>ro,ZodISODate:()=>no,ZodIPv6:()=>Oo,ZodIPv4:()=>Io,ZodGUID:()=>E_,ZodFunction:()=>BI,ZodFirstPartyTypeKind:()=>aI,ZodFile:()=>NI,ZodExactOptional:()=>zI,ZodError:()=>_E,ZodEnum:()=>te,ZodEmoji:()=>oo,ZodEmail:()=>uo,ZodE164:()=>yo,ZodDiscriminatedUnion:()=>II,ZodDefault:()=>EI,ZodDate:()=>P_,ZodCustomStringFormat:()=>ee,ZodCustom:()=>F_,ZodCodec:()=>Jo,ZodCatch:()=>kI,ZodCUID2:()=>fo,ZodCUID:()=>go,ZodCIDRv6:()=>ho,ZodCIDRv4:()=>Uo,ZodBoolean:()=>ce,ZodBigIntFormat:()=>To,ZodBigInt:()=>ue,ZodBase64URL:()=>Do,ZodBase64:()=>Ro,ZodArray:()=>wI,ZodAny:()=>gI,TimePrecision:()=>Uw,NEVER:()=>Kg,$output:()=>fw,$input:()=>bw,$brand:()=>ag});var CI=N(()=>{_n();_n();Tb();_n();L_();Zh();dw();z_();z_();Ch();W_();su();Ym();tI();Qh();fr(O_())});var ni=N(()=>{CI();CI()});function Ao(r){let n=r.toLowerCase();return n.includes("chat-history")||n.includes("chat_history")||n.includes("chatlog")||n.includes("chat-memory")||n.includes("conversation-log")||n.includes("transcript")}var xI,UE,hE,RE,er,ct,DE,yE,qE,wa;var pI=N(()=>{ni();xI=["read-only","docs-only","implementation","review"],UE=["ready","claimed","in_progress","waiting_return","accepted","blocked","stale"],hE=["accept","counter","blocked"],RE=["success","partial","blocked"],er=y.string().trim().min(1),ct=y.array(er),DE=y.union([er,y.object({command:er,result:er}).passthrough()]);yE=y.object({schema_version:y.literal("huddle-card.v1"),repo:er,repo_path:er.optional(),lane:er,task_id:er,mode:y.enum(xI),status:y.enum(UE).default("ready"),startup_docs:ct.min(1),task_packet:er.optional(),allowed_writes:ct,forbidden_sources:ct,validation:ct.min(1),stop_conditions:ct.min(1),expected_return:ct.min(1),evidence_sink:er.optional(),current_owner:er,next_owner:er,expires_or_refresh_after:er}).superRefine((r,n)=>{for(let[e,i]of r.startup_docs.entries())if(Ao(i))n.addIssue({code:"custom",path:["startup_docs",e],message:"startup_docs must point to repo-local source of truth, not chat logs or transcripts"});let t=r.forbidden_sources.join(" ").toLowerCase();if(!t.includes("chat")&&!t.includes("transcript"))n.addIssue({code:"custom",path:["forbidden_sources"],message:"forbidden_sources should explicitly ban chat/transcript memory for rotation-safe pickup"});if(r.mode==="implementation"){if(r.allowed_writes.filter((i)=>i!=="read-only").length===0)n.addIssue({code:"custom",path:["allowed_writes"],message:"implementation cards must declare concrete allowed_writes"})}}),qE=y.object({schema_version:y.literal("huddle-exit-receipt.v1"),task_id:er,verdict:y.enum(hE),repo:er,lane:er,source_ref:er,changed_files:y.array(er).default([]),validation:y.array(er).default([]),evidence:ct.min(1),blockers:y.array(er).default([]),next_owner:er,refresh_after:er}).superRefine((r,n)=>{if(Ao(r.source_ref))n.addIssue({code:"custom",path:["source_ref"],message:"source_ref must point to a durable task packet, commit, issue, bus event, or repo-local receipt; not chat logs or transcripts"});for(let[t,e]of r.evidence.entries())if(Ao(e))n.addIssue({code:"custom",path:["evidence",t],message:"evidence must be repo-local or packet-local durable proof, not chat logs or transcripts"});if(r.verdict!=="accept"&&r.blockers.length===0)n.addIssue({code:"custom",path:["blockers"],message:"counter and blocked receipts must name at least one blocker"})}),wa=y.object({schema_version:y.literal("exit-receipt.v1"),receipt_id:er,work_id:er,outcome:y.enum(RE),changed_files:y.array(er).default([]),validation:y.array(DE).default([]),evidence_refs:ct.min(1),stop_conditions:ct.min(1),deferred_work:y.array(er).default([]),next_owner:er}).superRefine((r,n)=>{for(let[t,e]of r.evidence_refs.entries())if(Ao(e))n.addIssue({code:"custom",path:["evidence_refs",t],message:"evidence_refs must be durable proof, not chat logs or transcripts"})})});var sI,Nn,TE="This is a read replica. Do not hand-edit; update source cards or receipts and regenerate.",NE,Ua;var xh=N(()=>{ni();pI();sI=["ready","claimed","in_progress","waiting_return","accepted","blocked","stale"],Nn=y.string().trim().min(1),NE=y.object({key:Nn,repo:Nn,lane:Nn,task_id:Nn,mode:y.enum(xI),status:y.enum(sI),card_status:y.enum(sI),current_owner:Nn,next_owner:Nn,card_ref:Nn.optional(),receipt_ref:Nn.optional(),receipt_verdict:y.enum(["accept","counter","blocked"]).optional(),stale_reason:Nn.optional(),evidence_refs:y.array(Nn).default([])}),Ua=y.object({schema_version:y.literal("huddle-board.v1"),generated_notice:y.literal(TE),generated_at:Nn,summary:y.record(y.enum(sI),y.number().int().min(0)),items:y.array(NE)})});function tR(r){let n=r.toLowerCase();return n.includes("chat-history")||n.includes("chat_history")||n.includes("chatlog")||n.includes("chat-memory")||n.includes("conversation-log")||n.includes("transcript")}function yt(r,n,t){for(let[e,i]of r.entries())if(tR(i))t.addIssue({code:"custom",path:[...n,e],message:"incident evidence_refs must point to durable proof, not chat logs or transcripts"})}var ph,sh,rR,nR,LE,a,l_,zE,SE,WE,EE,Da,ya;var iR=N(()=>{ni();ph=["sev0","sev1","sev2","sev3","sev4"],sh=["detected","acknowledged","mitigating","resolved","closed"],rR=["absent","partial","provided"],nR=["unknown","suspected","confirmed"],LE=["open","deferred","done"],a=y.string().trim().min(1),l_=y.array(a);zE=y.object({customer_impact:a.optional(),sla_tier:a.optional(),revenue_exposure:a.optional(),compliance_implication:a.optional()}).default({}),SE=y.object({at:a,actor:a,action:a,evidence_refs:y.array(a).default([])}),WE=y.object({at:a,actor:a,decision:a,rationale:a,evidence_refs:y.array(a).default([])}),EE=y.object({id:a,title:a,owner:a,status:y.enum(LE),evidence_refs:y.array(a).default([])}),Da=y.object({schema_version:y.literal("incident-receipt.v1"),incident_id:a,title:a,severity:y.enum(ph),severity_rationale:a.optional(),status:y.enum(sh),incident_class:a.optional(),started_at:a,detected_at:a,acknowledged_at:a.optional(),resolved_at:a.optional(),acknowledged_by:a.optional(),resolved_by:a.optional(),detection_source:a.optional(),notification_chain:y.array(a).default([]),affected_systems:l_.min(1),symptoms:l_.min(1),timeline:y.array(SE).min(1),decisions:y.array(WE).default([]),evidence_refs:l_.min(1),mitigation:a.optional(),rollback_or_fix_refs:y.array(a).default([]),validation_refs:y.array(a).default([]),follow_ups:y.array(EE).default([]),business_context_status:y.enum(rR),business_context:zE,root_cause_status:y.enum(nR).default("unknown"),root_cause_evidence_refs:y.array(a).default([]),runbook_executed_ref:a.optional()}).superRefine((r,n)=>{yt(r.evidence_refs,["evidence_refs"],n),yt(r.rollback_or_fix_refs,["rollback_or_fix_refs"],n),yt(r.validation_refs,["validation_refs"],n),yt(r.root_cause_evidence_refs,["root_cause_evidence_refs"],n);for(let[i,_]of r.timeline.entries())yt(_.evidence_refs,["timeline",i,"evidence_refs"],n);for(let[i,_]of r.decisions.entries())yt(_.evidence_refs,["decisions",i,"evidence_refs"],n);for(let[i,_]of r.follow_ups.entries())yt(_.evidence_refs,["follow_ups",i,"evidence_refs"],n);if(r.runbook_executed_ref&&tR(r.runbook_executed_ref))n.addIssue({code:"custom",path:["runbook_executed_ref"],message:"runbook_executed_ref must point to a durable runbook receipt or proof ref"});if(["resolved","closed"].includes(r.status)){if(!r.resolved_at)n.addIssue({code:"custom",path:["resolved_at"],message:"resolved or closed incidents must include resolved_at"});if(!r.resolved_by)n.addIssue({code:"custom",path:["resolved_by"],message:"resolved or closed incidents must include resolved_by"})}if(r.root_cause_status==="confirmed"&&r.root_cause_evidence_refs.length===0)n.addIssue({code:"custom",path:["root_cause_evidence_refs"],message:"confirmed root cause requires at least one root_cause_evidence_ref"});let t=r.business_context,e=[t.customer_impact,t.sla_tier,t.revenue_exposure,t.compliance_implication].filter(Boolean);if(r.business_context_status==="absent"&&e.length>0)n.addIssue({code:"custom",path:["business_context_status"],message:"business_context_status absent cannot carry incident business context fields"});if(r.business_context_status==="provided"&&e.length<4)n.addIssue({code:"custom",path:["business_context"],message:"provided business context requires customer_impact, sla_tier, revenue_exposure, and compliance_implication"})}),ya=y.object({schema_version:y.literal("incident-summary.v1"),incident_id:a,status:y.enum(sh),severity:y.enum(ph),started_at:a,resolved_at:a.optional(),duration_minutes:y.number().int().min(0).optional(),affected_systems:l_.min(1),primary_symptom:a,mitigation_summary:a.optional(),evidence_refs:l_.min(1),follow_up_count:y.number().int().min(0),business_context_status:y.enum(rR),root_cause_status:y.enum(nR)}).superRefine((r,n)=>{yt(r.evidence_refs,["evidence_refs"],n)})});function r6(r,n=[]){if(Array.isArray(r))return r.flatMap((e,i)=>r6(e,[...n,String(i)]));if(typeof r!=="object"||r===null)return[];let t=[];for(let[e,i]of Object.entries(r)){if(AE.has(e))t.push([...n,e].join("."));t.push(...r6(i,[...n,e]))}return t}function Mo(r,n){if(!r)return[];let t=[];for(let[e,i]of Object.entries(r)){if((e.startsWith("can_")||e.endsWith("_grants_authority"))&&i===!0)t.push([...n,e]);if(typeof i==="object"&&i!==null&&!Array.isArray(i))t.push(...Mo(i,[...n,e]))}return t}function eR(r){return GE.parse(r)}var jE,JE,n6,AE,Er,ti,ME,PE,kE,XE,v_,GE;var _R=N(()=>{ni();jE=["task-envelope.v0","task-bundle.v1"],JE=["executor_selected","recommended","required"],n6=["args","argv","cmd","command","command_line","commandLine","commands","entrypoint","pre_execute","post_execute","run","shell","script","scripts","step","steps","hook","hooks","exec","eval","spawn"],AE=new Set(n6),Er=y.string().trim().min(1),ti=y.array(Er),ME=y.string().regex(/^[0-9a-f]{64}$/,"must be a lowercase sha256 hex digest"),PE=/^etq:\/\/preflights\/[A-Za-z0-9][A-Za-z0-9._-]*$/,kE=y.string().regex(PE,"preflight refs must be qualified etq preflight identifiers held by the executor"),XE=y.object({source:y.literal("chat"),channel_id:Er.optional(),range:y.object({first_line:y.number().int().min(1),last_line:y.number().int().min(1)}).strict(),sha256:ME}).strict().superRefine((r,n)=>{if(r.range.last_line<r.range.first_line)n.addIssue({code:"custom",path:["range","last_line"],message:"provenance window range must not end before it starts"})}),v_=y.record(y.string(),y.unknown());GE=y.object({schema:y.enum(jE),task_id:Er,title:Er.optional(),mode:Er,owner:Er.optional(),assigned_to:Er.optional(),project_ref:Er.optional(),status:Er.optional(),content_class:Er.optional(),startup_docs:ti.optional(),allowed_writes:ti.min(1),forbidden_sources:ti.optional(),validation:ti.min(1),review_focus:ti.optional(),stop_conditions:ti.optional(),evidence_sink:y.union([Er,y.record(y.string(),Er)]).optional(),expected_return:v_.optional(),execution_strategy:v_.optional(),topology_constraints:v_.optional(),rig_conductor:v_.optional(),authority_boundary:v_.optional(),max_parallel_writers:y.number().int().min(1).optional(),max_attempts:y.number().int().min(1).optional(),loop_class:Er.optional(),strategy_policy:y.enum(JE).optional(),execution_hints:y.object({recommended_strategy:Er}).strict().optional(),requirements:y.object({runtime_profile:Er.optional(),services:ti.optional()}).strict().optional(),preflight_refs:y.array(kE).optional(),budgets:y.object({max_children:y.number().int().min(1).optional(),timeout_ms:y.number().int().min(1).optional()}).strict().optional(),provenance_window:XE.optional(),requested_by:y.object({chat_user_id:Er,seat_card_ref:Er}).strict().optional(),authority:y.literal("false").optional()}).strict().superRefine((r,n)=>{for(let t of r6(r))n.addIssue({code:"custom",path:t.split("."),message:`script-bearing field rejected: ${t}; bundles are strictly declarative and may only reference executor-held preflights`});for(let t of[...Mo(r.authority_boundary,["authority_boundary"]),...Mo(r.execution_strategy,["execution_strategy"]),...Mo(r.topology_constraints,["topology_constraints"])])n.addIssue({code:"custom",path:t,message:"task bundles mint no authority; authority-shaped markers must be false"})})});function cR(r){let n=lE.exec(r);return n?n[1]:null}var Po,VE,FE,lE,ko="local",vE,YE,HE,za;var uR=N(()=>{ni();Po=y.string().trim().min(1),VE=y.string().regex(/^[0-9a-f]{64}$/,"must be a lowercase sha256 hex digest"),FE=y.string().regex(/^[0-9a-f]{7,40}$/,"must be an abbreviated or full lowercase commit sha"),lE=/^([a-z][a-z0-9+.-]*):\/\/\S+$/;vE=Po.superRefine((r,n)=>{let t=cR(r);if(t===null){n.addIssue({code:"custom",message:"refs must be qualified with their sequence-space scheme"});return}if(t!==ko)n.addIssue({code:"custom",message:`local_ref must live in the ${ko} sequence space`})}),YE=Po.superRefine((r,n)=>{let t=cR(r);if(t===null){n.addIssue({code:"custom",message:"refs must be qualified with their sequence-space scheme"});return}if(t===ko)n.addIssue({code:"custom",message:`hub refs and ${ko} refs are distinct namespaces`})}),HE=["authorized-seat","authorized-policy-gate"],za=y.object({schema:y.literal("bridge-event.v1"),project_id:Po,local_ref:vE,hub_ref:YE.optional(),commit_sha:FE,receipt_sha256:VE,event_type:Po,authority:y.literal("false"),promotion_basis:y.enum(HE)}).strict()});function $R(r){return KE.parse(r)}function gR(r,n){return r.bindings.find((t)=>t.channel_id===n)??null}function dR(r){return ZE.parse(r)}function fR(r,n){return r.mappings.find((t)=>t.chat_user_id===n)??null}var Y_,BE,oR,QE,KE,aE,ZE;var bR=N(()=>{ni();Y_=y.string().trim().min(1),BE=y.array(Y_),oR=y.string().regex(/^[A-Za-z0-9][A-Za-z0-9._:-]*$/,"must be an identifier (letters, digits, dot, underscore, colon, hyphen)"),QE=y.object({schema:y.literal("channel-binding.v1"),channel_id:oR,repository_ref:Y_,allowed_writes:BE.min(1),notify_ref:Y_,admin_signature:Y_}).strict(),KE=y.object({schema:y.literal("channel-binding-registry.v1"),bindings:y.array(QE)}).strict().superRefine((r,n)=>{let t=new Set;for(let[e,i]of r.bindings.entries()){if(t.has(i.channel_id))n.addIssue({code:"custom",path:["bindings",e,"channel_id"],message:`duplicate channel binding: ${i.channel_id}`});t.add(i.channel_id)}});aE=y.object({schema:y.literal("roster-mapping.v1"),chat_user_id:oR,seat_card_ref:Y_}).strict(),ZE=y.object({schema:y.literal("roster-mapping-registry.v1"),mappings:y.array(aE)}).strict().superRefine((r,n)=>{let t=new Set;for(let[e,i]of r.mappings.entries()){if(t.has(i.chat_user_id))n.addIssue({code:"custom",path:["mappings",e,"chat_user_id"],message:`duplicate roster mapping: ${i.chat_user_id}`});t.add(i.chat_user_id)}})});var Xo=N(()=>{ac();Qg();rO();pI();xh();iR();_R();uR();bR()});function wR(r){let n=[],t={};for(let e=0;e<r.length;e+=1){let i=r[e];if(!i.startsWith("--")){n.push(i);continue}let _=i.slice(2),c=r[e+1];if(!c||c.startsWith("--")){t[_]=!0;continue}t[_]=c,e+=1}return{positionals:n,flags:t}}function mr(r){if(!r||r===!0)return[];return String(r).split(",").map((n)=>n.trim()).filter(Boolean)}function D(r,n){let t=r[n];if(typeof t!=="string"||t.length===0)throw Error(`--${n} is required`);return t}function I(r,n){let t=r[n];return typeof t==="string"&&t.length>0?t:void 0}function mn(r,n){if(typeof r!=="string")throw Error(`--${n} is required and must be an integer`);let t=Number.parseInt(r,10);if(!Number.isFinite(t))throw Error(`--${n} must be an integer (got ${r})`);return t}function mR(r,n){let t=mr(r),e=t.filter((i)=>!s0.includes(i));if(e.length>0)throw Error(`--${n} contains unknown operation IDs: ${e.join(", ")}`);return t}function IR(r,n){if(typeof r!=="string"||!r_.includes(r))throw Error(`--${n} must be one of: ${r_.join(", ")}`);return r}function OR(r){if(r===void 0||r===!0)return"on_state_change";if(!Hg.includes(r))throw Error(`--projection-policy must be one of: ${Hg.join(", ")}`);return r}function UR(r){if(typeof r!=="string"||!vg.includes(r))throw Error(`--result must be one of: ${vg.join(", ")}`);return r}function hR(r){if(!r||!Yg.includes(r))throw Error(`<command> must be one of: ${Yg.join(", ")}`);return r}function $r(r,n,t){let e=r[n];if(!e)throw Error(`<${t}> positional argument is required`);return e}var Ir=N(()=>{Xo()});var C=P((ij)=>{var t6=Symbol.for("yaml.alias"),RR=Symbol.for("yaml.document"),Go=Symbol.for("yaml.map"),DR=Symbol.for("yaml.pair"),i6=Symbol.for("yaml.scalar"),Vo=Symbol.for("yaml.seq"),ut=Symbol.for("yaml.node.type"),CE=(r)=>!!r&&typeof r==="object"&&r[ut]===t6,xE=(r)=>!!r&&typeof r==="object"&&r[ut]===RR,pE=(r)=>!!r&&typeof r==="object"&&r[ut]===Go,sE=(r)=>!!r&&typeof r==="object"&&r[ut]===DR,yR=(r)=>!!r&&typeof r==="object"&&r[ut]===i6,rj=(r)=>!!r&&typeof r==="object"&&r[ut]===Vo;function qR(r){if(r&&typeof r==="object")switch(r[ut]){case Go:case Vo:return!0}return!1}function nj(r){if(r&&typeof r==="object")switch(r[ut]){case t6:case Go:case i6:case Vo:return!0}return!1}var tj=(r)=>(yR(r)||qR(r))&&!!r.anchor;ij.ALIAS=t6;ij.DOC=RR;ij.MAP=Go;ij.NODE_TYPE=ut;ij.PAIR=DR;ij.SCALAR=i6;ij.SEQ=Vo;ij.hasAnchor=tj;ij.isAlias=CE;ij.isCollection=qR;ij.isDocument=xE;ij.isMap=pE;ij.isNode=nj;ij.isPair=sE;ij.isScalar=yR;ij.isSeq=rj});var H_=P((Rj)=>{var qr=C(),Zr=Symbol("break visit"),TR=Symbol("skip children"),vn=Symbol("remove node");function Fo(r,n){let t=NR(n);if(qr.isDocument(r)){if(oe(null,r.contents,t,Object.freeze([r]))===vn)r.contents=null}else oe(null,r,t,Object.freeze([]))}Fo.BREAK=Zr;Fo.SKIP=TR;Fo.REMOVE=vn;function oe(r,n,t,e){let i=LR(r,n,t,e);if(qr.isNode(i)||qr.isPair(i))return zR(r,e,i),oe(r,i,t,e);if(typeof i!=="symbol"){if(qr.isCollection(n)){e=Object.freeze(e.concat(n));for(let _=0;_<n.items.length;++_){let c=oe(_,n.items[_],t,e);if(typeof c==="number")_=c-1;else if(c===Zr)return Zr;else if(c===vn)n.items.splice(_,1),_-=1}}else if(qr.isPair(n)){e=Object.freeze(e.concat(n));let _=oe("key",n.key,t,e);if(_===Zr)return Zr;else if(_===vn)n.key=null;let c=oe("value",n.value,t,e);if(c===Zr)return Zr;else if(c===vn)n.value=null}}return i}async function lo(r,n){let t=NR(n);if(qr.isDocument(r)){if(await $e(null,r.contents,t,Object.freeze([r]))===vn)r.contents=null}else await $e(null,r,t,Object.freeze([]))}lo.BREAK=Zr;lo.SKIP=TR;lo.REMOVE=vn;async function $e(r,n,t,e){let i=await LR(r,n,t,e);if(qr.isNode(i)||qr.isPair(i))return zR(r,e,i),$e(r,i,t,e);if(typeof i!=="symbol"){if(qr.isCollection(n)){e=Object.freeze(e.concat(n));for(let _=0;_<n.items.length;++_){let c=await $e(_,n.items[_],t,e);if(typeof c==="number")_=c-1;else if(c===Zr)return Zr;else if(c===vn)n.items.splice(_,1),_-=1}}else if(qr.isPair(n)){e=Object.freeze(e.concat(n));let _=await $e("key",n.key,t,e);if(_===Zr)return Zr;else if(_===vn)n.key=null;let c=await $e("value",n.value,t,e);if(c===Zr)return Zr;else if(c===vn)n.value=null}}return i}function NR(r){if(typeof r==="object"&&(r.Collection||r.Node||r.Value))return Object.assign({Alias:r.Node,Map:r.Node,Scalar:r.Node,Seq:r.Node},r.Value&&{Map:r.Value,Scalar:r.Value,Seq:r.Value},r.Collection&&{Map:r.Collection,Seq:r.Collection},r);return r}function LR(r,n,t,e){if(typeof t==="function")return t(r,n,e);if(qr.isMap(n))return t.Map?.(r,n,e);if(qr.isSeq(n))return t.Seq?.(r,n,e);if(qr.isPair(n))return t.Pair?.(r,n,e);if(qr.isScalar(n))return t.Scalar?.(r,n,e);if(qr.isAlias(n))return t.Alias?.(r,n,e);return}function zR(r,n,t){let e=n[n.length-1];if(qr.isCollection(e))e.items[r]=t;else if(qr.isPair(e))if(r==="key")e.key=t;else e.value=t;else if(qr.isDocument(e))e.contents=t;else{let i=qr.isAlias(e)?"alias":"scalar";throw Error(`Cannot replace node with ${i} parent`)}}Rj.visit=Fo;Rj.visitAsync=lo});var e6=P((Lj)=>{var SR=C(),qj=H_(),Tj={"!":"%21",",":"%2C","[":"%5B","]":"%5D","{":"%7B","}":"%7D"},Nj=(r)=>r.replace(/[!,[\]{}]/g,(n)=>Tj[n]);class In{constructor(r,n){this.docStart=null,this.docEnd=!1,this.yaml=Object.assign({},In.defaultYaml,r),this.tags=Object.assign({},In.defaultTags,n)}clone(){let r=new In(this.yaml,this.tags);return r.docStart=this.docStart,r}atDocument(){let r=new In(this.yaml,this.tags);switch(this.yaml.version){case"1.1":this.atNextDocument=!0;break;case"1.2":this.atNextDocument=!1,this.yaml={explicit:In.defaultYaml.explicit,version:"1.2"},this.tags=Object.assign({},In.defaultTags);break}return r}add(r,n){if(this.atNextDocument)this.yaml={explicit:In.defaultYaml.explicit,version:"1.1"},this.tags=Object.assign({},In.defaultTags),this.atNextDocument=!1;let t=r.trim().split(/[ \t]+/),e=t.shift();switch(e){case"%TAG":{if(t.length!==2){if(n(0,"%TAG directive should contain exactly two parts"),t.length<2)return!1}let[i,_]=t;return this.tags[i]=_,!0}case"%YAML":{if(this.yaml.explicit=!0,t.length!==1)return n(0,"%YAML directive should contain exactly one part"),!1;let[i]=t;if(i==="1.1"||i==="1.2")return this.yaml.version=i,!0;else{let _=/^\d+\.\d+$/.test(i);return n(6,`Unsupported YAML version ${i}`,_),!1}}default:return n(0,`Unknown directive ${e}`,!0),!1}}tagName(r,n){if(r==="!")return"!";if(r[0]!=="!")return n(`Not a valid tag: ${r}`),null;if(r[1]==="<"){let _=r.slice(2,-1);if(_==="!"||_==="!!")return n(`Verbatim tags aren't resolved, so ${r} is invalid.`),null;if(r[r.length-1]!==">")n("Verbatim tags must end with a >");return _}let[,t,e]=r.match(/^(.*!)([^!]*)$/s);if(!e)n(`The ${r} tag has no suffix`);let i=this.tags[t];if(i)try{return i+decodeURIComponent(e)}catch(_){return n(String(_)),null}if(t==="!")return r;return n(`Could not resolve tag: ${r}`),null}tagString(r){for(let[n,t]of Object.entries(this.tags))if(r.startsWith(t))return n+Nj(r.substring(t.length));return r[0]==="!"?r:`!<${r}>`}toString(r){let n=this.yaml.explicit?[`%YAML ${this.yaml.version||"1.2"}`]:[],t=Object.entries(this.tags),e;if(r&&t.length>0&&SR.isNode(r.contents)){let i={};qj.visit(r.contents,(_,c)=>{if(SR.isNode(c)&&c.tag)i[c.tag]=!0}),e=Object.keys(i)}else e=[];for(let[i,_]of t){if(i==="!!"&&_==="tag:yaml.org,2002:")continue;if(!r||e.some((c)=>c.startsWith(_)))n.push(`%TAG ${i} ${_}`)}return n.join(`
|
|
43
|
-
`)}}In.defaultYaml={explicit:!1,version:"1.2"};In.defaultTags={"!!":"tag:yaml.org,2002:"};Lj.Directives=In});var vo=P((jj)=>{var WR=C(),Sj=H_();function Wj(r){if(/[\x00-\x19\s,[\]{}]/.test(r)){let t=`Anchor must not contain whitespace or control characters: ${JSON.stringify(r)}`;throw Error(t)}return!0}function ER(r){let n=new Set;return Sj.visit(r,{Value(t,e){if(e.anchor)n.add(e.anchor)}}),n}function jR(r,n){for(let t=1;;++t){let e=`${r}${t}`;if(!n.has(e))return e}}function Ej(r,n){let t=[],e=new Map,i=null;return{onAnchor:(_)=>{t.push(_),i??(i=ER(r));let c=jR(n,i);return i.add(c),c},setAnchors:()=>{for(let _ of t){let c=e.get(_);if(typeof c==="object"&&c.anchor&&(WR.isScalar(c.node)||WR.isCollection(c.node)))c.node.anchor=c.anchor;else{let u=Error("Failed to resolve repeated object (this should not happen)");throw u.source=_,u}}},sourceObjects:e}}jj.anchorIsValid=Wj;jj.anchorNames=ER;jj.createNodeAnchors=Ej;jj.findNewAnchor=jR});var _6=P((kj)=>{function B_(r,n,t,e){if(e&&typeof e==="object")if(Array.isArray(e))for(let i=0,_=e.length;i<_;++i){let c=e[i],u=B_(r,e,String(i),c);if(u===void 0)delete e[i];else if(u!==c)e[i]=u}else if(e instanceof Map)for(let i of Array.from(e.keys())){let _=e.get(i),c=B_(r,e,i,_);if(c===void 0)e.delete(i);else if(c!==_)e.set(i,c)}else if(e instanceof Set)for(let i of Array.from(e)){let _=B_(r,e,i,i);if(_===void 0)e.delete(i);else if(_!==i)e.delete(i),e.add(_)}else for(let[i,_]of Object.entries(e)){let c=B_(r,e,i,_);if(c===void 0)delete e[i];else if(c!==_)e[i]=c}return r.call(n,t,e)}kj.applyReviver=B_});var qt=P((Vj)=>{var Gj=C();function JR(r,n,t){if(Array.isArray(r))return r.map((e,i)=>JR(e,String(i),t));if(r&&typeof r.toJSON==="function"){if(!t||!Gj.hasAnchor(r))return r.toJSON(n,t);let e={aliasCount:0,count:1,res:void 0};t.anchors.set(r,e),t.onCreate=(_)=>{e.res=_,delete t.onCreate};let i=r.toJSON(n,t);if(t.onCreate)t.onCreate(i);return i}if(typeof r==="bigint"&&!t?.keep)return Number(r);return r}Vj.toJS=JR});var Yo=P((Yj)=>{var lj=_6(),AR=C(),vj=qt();class MR{constructor(r){Object.defineProperty(this,AR.NODE_TYPE,{value:r})}clone(){let r=Object.create(Object.getPrototypeOf(this),Object.getOwnPropertyDescriptors(this));if(this.range)r.range=this.range.slice();return r}toJS(r,{mapAsMap:n,maxAliasCount:t,onAnchor:e,reviver:i}={}){if(!AR.isDocument(r))throw TypeError("A document argument is required");let _={anchors:new Map,doc:r,keep:!0,mapAsMap:n===!0,mapKeyWarned:!1,maxAliasCount:typeof t==="number"?t:100},c=vj.toJS(this,"",_);if(typeof e==="function")for(let{count:u,res:o}of _.anchors.values())e(o,u);return typeof i==="function"?lj.applyReviver(i,{"":c},"",c):c}}Yj.NodeBase=MR});var Q_=P((Zj)=>{var Bj=vo(),Qj=H_(),ge=C(),Kj=Yo(),aj=qt();class PR extends Kj.NodeBase{constructor(r){super(ge.ALIAS);this.source=r,Object.defineProperty(this,"tag",{set(){throw Error("Alias nodes cannot have tags")}})}resolve(r,n){let t;if(n?.aliasResolveCache)t=n.aliasResolveCache;else if(t=[],Qj.visit(r,{Node:(i,_)=>{if(ge.isAlias(_)||ge.hasAnchor(_))t.push(_)}}),n)n.aliasResolveCache=t;let e=void 0;for(let i of t){if(i===this)break;if(i.anchor===this.source)e=i}return e}toJSON(r,n){if(!n)return{source:this.source};let{anchors:t,doc:e,maxAliasCount:i}=n,_=this.resolve(e,n);if(!_){let u=`Unresolved alias (the anchor must be set before the alias): ${this.source}`;throw ReferenceError(u)}let c=t.get(_);if(!c)aj.toJS(_,null,n),c=t.get(_);if(c?.res===void 0)throw ReferenceError("This should not happen: Alias anchor was not resolved?");if(i>=0){if(c.count+=1,c.aliasCount===0)c.aliasCount=Ho(e,_,t);if(c.count*c.aliasCount>i)throw ReferenceError("Excessive alias count indicates a resource exhaustion attack")}return c.res}toString(r,n,t){let e=`*${this.source}`;if(r){if(Bj.anchorIsValid(this.source),r.options.verifyAliasOrder&&!r.anchors.has(this.source)){let i=`Unresolved alias (the anchor must be set before the alias): ${this.source}`;throw Error(i)}if(r.implicitKey)return`${e} `}return e}}function Ho(r,n,t){if(ge.isAlias(n)){let e=n.resolve(r),i=t&&e&&t.get(e);return i?i.count*i.aliasCount:0}else if(ge.isCollection(n)){let e=0;for(let i of n.items){let _=Ho(r,i,t);if(_>e)e=_}return e}else if(ge.isPair(n)){let e=Ho(r,n.key,t),i=Ho(r,n.value,t);return Math.max(e,i)}return 1}Zj.Alias=PR});var Or=P((nJ)=>{var xj=C(),pj=Yo(),sj=qt(),rJ=(r)=>!r||typeof r!=="function"&&typeof r!=="object";class ii extends pj.NodeBase{constructor(r){super(xj.SCALAR);this.value=r}toJSON(r,n){return n?.keep?this.value:sj.toJS(this.value,r,n)}toString(){return String(this.value)}}ii.BLOCK_FOLDED="BLOCK_FOLDED";ii.BLOCK_LITERAL="BLOCK_LITERAL";ii.PLAIN="PLAIN";ii.QUOTE_DOUBLE="QUOTE_DOUBLE";ii.QUOTE_SINGLE="QUOTE_SINGLE";nJ.Scalar=ii;nJ.isScalarValue=rJ});var K_=P((oJ)=>{var eJ=Q_(),ei=C(),kR=Or(),_J="tag:yaml.org,2002:";function cJ(r,n,t){if(n){let e=t.filter((_)=>_.tag===n),i=e.find((_)=>!_.format)??e[0];if(!i)throw Error(`Tag ${n} not found`);return i}return t.find((e)=>e.identify?.(r)&&!e.format)}function uJ(r,n,t){if(ei.isDocument(r))r=r.contents;if(ei.isNode(r))return r;if(ei.isPair(r)){let d=t.schema[ei.MAP].createNode?.(t.schema,null,t);return d.items.push(r),d}if(r instanceof String||r instanceof Number||r instanceof Boolean||typeof BigInt<"u"&&r instanceof BigInt)r=r.valueOf();let{aliasDuplicateObjects:e,onAnchor:i,onTagObj:_,schema:c,sourceObjects:u}=t,o=void 0;if(e&&r&&typeof r==="object")if(o=u.get(r),o)return o.anchor??(o.anchor=i(r)),new eJ.Alias(o.anchor);else o={anchor:null,node:null},u.set(r,o);if(n?.startsWith("!!"))n=_J+n.slice(2);let $=cJ(r,n,c.tags);if(!$){if(r&&typeof r.toJSON==="function")r=r.toJSON();if(!r||typeof r!=="object"){let d=new kR.Scalar(r);if(o)o.node=d;return d}$=r instanceof Map?c[ei.MAP]:(Symbol.iterator in Object(r))?c[ei.SEQ]:c[ei.MAP]}if(_)_($),delete t.onTagObj;let g=$?.createNode?$.createNode(t.schema,r,t):typeof $?.nodeClass?.from==="function"?$.nodeClass.from(t.schema,r,t):new kR.Scalar(r);if(n)g.tag=n;else if(!$.default)g.tag=$.tag;if(o)o.node=g;return g}oJ.createNode=uJ});var Bo=P((fJ)=>{var gJ=K_(),Yn=C(),dJ=Yo();function c6(r,n,t){let e=t;for(let i=n.length-1;i>=0;--i){let _=n[i];if(typeof _==="number"&&Number.isInteger(_)&&_>=0){let c=[];c[_]=e,e=c}else e=new Map([[_,e]])}return gJ.createNode(e,void 0,{aliasDuplicateObjects:!1,keepUndefined:!1,onAnchor:()=>{throw Error("This should not happen, please report a bug.")},schema:r,sourceObjects:new Map})}var XR=(r)=>r==null||typeof r==="object"&&!!r[Symbol.iterator]().next().done;class GR extends dJ.NodeBase{constructor(r,n){super(r);Object.defineProperty(this,"schema",{value:n,configurable:!0,enumerable:!1,writable:!0})}clone(r){let n=Object.create(Object.getPrototypeOf(this),Object.getOwnPropertyDescriptors(this));if(r)n.schema=r;if(n.items=n.items.map((t)=>Yn.isNode(t)||Yn.isPair(t)?t.clone(r):t),this.range)n.range=this.range.slice();return n}addIn(r,n){if(XR(r))this.add(n);else{let[t,...e]=r,i=this.get(t,!0);if(Yn.isCollection(i))i.addIn(e,n);else if(i===void 0&&this.schema)this.set(t,c6(this.schema,e,n));else throw Error(`Expected YAML collection at ${t}. Remaining path: ${e}`)}}deleteIn(r){let[n,...t]=r;if(t.length===0)return this.delete(n);let e=this.get(n,!0);if(Yn.isCollection(e))return e.deleteIn(t);else throw Error(`Expected YAML collection at ${n}. Remaining path: ${t}`)}getIn(r,n){let[t,...e]=r,i=this.get(t,!0);if(e.length===0)return!n&&Yn.isScalar(i)?i.value:i;else return Yn.isCollection(i)?i.getIn(e,n):void 0}hasAllNullValues(r){return this.items.every((n)=>{if(!Yn.isPair(n))return!1;let t=n.value;return t==null||r&&Yn.isScalar(t)&&t.value==null&&!t.commentBefore&&!t.comment&&!t.tag})}hasIn(r){let[n,...t]=r;if(t.length===0)return this.has(n);let e=this.get(n,!0);return Yn.isCollection(e)?e.hasIn(t):!1}setIn(r,n){let[t,...e]=r;if(e.length===0)this.set(t,n);else{let i=this.get(t,!0);if(Yn.isCollection(i))i.setIn(e,n);else if(i===void 0&&this.schema)this.set(t,c6(this.schema,e,n));else throw Error(`Expected YAML collection at ${t}. Remaining path: ${e}`)}}}fJ.Collection=GR;fJ.collectionFromPath=c6;fJ.isEmptyPath=XR});var a_=P((UJ)=>{var IJ=(r)=>r.replace(/^(?!$)(?: $)?/gm,"#");function u6(r,n){if(/^\n+$/.test(r))return r.substring(1);return n?r.replace(/^(?! *$)/gm,n):r}var OJ=(r,n,t)=>r.endsWith(`
|
|
44
|
-
`)?u6(t,n):t.includes(`
|
|
45
|
-
`)?`
|
|
46
|
-
`+u6(t,n):(r.endsWith(" ")?"":" ")+t;UJ.indentComment=u6;UJ.lineComment=OJ;UJ.stringifyComment=IJ});var FR=P((qJ)=>{function yJ(r,n,t="flow",{indentAtStart:e,lineWidth:i=80,minContentWidth:_=20,onFold:c,onOverflow:u}={}){if(!i||i<0)return r;if(i<_)_=0;let o=Math.max(1+_,1+i-n.length);if(r.length<=o)return r;let $=[],g={},d=i-n.length;if(typeof e==="number")if(e>i-Math.max(2,_))$.push(0);else d=i-e;let f=void 0,b=void 0,m=!1,w=-1,O=-1,q=-1;if(t==="block"){if(w=VR(r,w,n.length),w!==-1)d=w+o}for(let R;R=r[w+=1];){if(t==="quoted"&&R==="\\"){switch(O=w,r[w+1]){case"x":w+=3;break;case"u":w+=5;break;case"U":w+=9;break;default:w+=1}q=w}if(R===`
|
|
47
|
-
`){if(t==="block")w=VR(r,w,n.length);d=w+n.length+o,f=void 0}else{if(R===" "&&b&&b!==" "&&b!==`
|
|
48
|
-
`&&b!=="\t"){let j=r[w+1];if(j&&j!==" "&&j!==`
|
|
49
|
-
`&&j!=="\t")f=w}if(w>=d)if(f)$.push(f),d=f+o,f=void 0;else if(t==="quoted"){while(b===" "||b==="\t")b=R,R=r[w+=1],m=!0;let j=w>q+1?w-2:O-1;if(g[j])return r;$.push(j),g[j]=!0,d=j+o,f=void 0}else m=!0}b=R}if(m&&u)u();if($.length===0)return r;if(c)c();let T=r.slice(0,$[0]);for(let R=0;R<$.length;++R){let j=$[R],J=$[R+1]||r.length;if(j===0)T=`
|
|
50
|
-
${n}${r.slice(0,J)}`;else{if(t==="quoted"&&g[j])T+=`${r[j]}\\`;T+=`
|
|
51
|
-
${n}${r.slice(j+1,J)}`}}return T}function VR(r,n,t){let e=n,i=n+1,_=r[i];while(_===" "||_==="\t")if(n<i+t)_=r[++n];else{do _=r[++n];while(_&&_!==`
|
|
52
|
-
`);e=n,i=n+1,_=r[i]}return e}qJ.FOLD_BLOCK="block";qJ.FOLD_FLOW="flow";qJ.FOLD_QUOTED="quoted";qJ.foldFlowLines=yJ});var C_=P((jJ)=>{var Ln=Or(),Tt=FR(),Ko=(r,n)=>({indentAtStart:n?r.indent.length:r.indentAtStart,lineWidth:r.options.lineWidth,minContentWidth:r.options.minContentWidth}),ao=(r)=>/^(%|---|\.\.\.)/m.test(r);function SJ(r,n,t){if(!n||n<0)return!1;let e=n-t,i=r.length;if(i<=e)return!1;for(let _=0,c=0;_<i;++_)if(r[_]===`
|
|
53
|
-
`){if(_-c>e)return!0;if(c=_+1,i-c<=e)return!1}return!0}function Z_(r,n){let t=JSON.stringify(r);if(n.options.doubleQuotedAsJSON)return t;let{implicitKey:e}=n,i=n.options.doubleQuotedMinMultiLineLength,_=n.indent||(ao(r)?" ":""),c="",u=0;for(let o=0,$=t[o];$;$=t[++o]){if($===" "&&t[o+1]==="\\"&&t[o+2]==="n")c+=t.slice(u,o)+"\\ ",o+=1,u=o,$="\\";if($==="\\")switch(t[o+1]){case"u":{c+=t.slice(u,o);let g=t.substr(o+2,4);switch(g){case"0000":c+="\\0";break;case"0007":c+="\\a";break;case"000b":c+="\\v";break;case"001b":c+="\\e";break;case"0085":c+="\\N";break;case"00a0":c+="\\_";break;case"2028":c+="\\L";break;case"2029":c+="\\P";break;default:if(g.substr(0,2)==="00")c+="\\x"+g.substr(2);else c+=t.substr(o,6)}o+=5,u=o+1}break;case"n":if(e||t[o+2]==='"'||t.length<i)o+=1;else{c+=t.slice(u,o)+`
|
|
54
|
-
|
|
55
|
-
`;while(t[o+2]==="\\"&&t[o+3]==="n"&&t[o+4]!=='"')c+=`
|
|
56
|
-
`,o+=2;if(c+=_,t[o+2]===" ")c+="\\";o+=1,u=o+1}break;default:o+=1}}return c=u?c+t.slice(u):t,e?c:Tt.foldFlowLines(c,_,Tt.FOLD_QUOTED,Ko(n,!1))}function o6(r,n){if(n.options.singleQuote===!1||n.implicitKey&&r.includes(`
|
|
57
|
-
`)||/[ \t]\n|\n[ \t]/.test(r))return Z_(r,n);let t=n.indent||(ao(r)?" ":""),e="'"+r.replace(/'/g,"''").replace(/\n+/g,`$&
|
|
58
|
-
${t}`)+"'";return n.implicitKey?e:Tt.foldFlowLines(e,t,Tt.FOLD_FLOW,Ko(n,!1))}function de(r,n){let{singleQuote:t}=n.options,e;if(t===!1)e=Z_;else{let i=r.includes('"'),_=r.includes("'");if(i&&!_)e=o6;else if(_&&!i)e=Z_;else e=t?o6:Z_}return e(r,n)}var $6;try{$6=new RegExp(`(^|(?<!
|
|
59
|
-
))
|
|
60
|
-
+(?!
|
|
61
|
-
|$)`,"g")}catch{$6=/\n+(?!\n|$)/g}function Qo({comment:r,type:n,value:t},e,i,_){let{blockQuote:c,commentString:u,lineWidth:o}=e.options;if(!c||/\n[\t ]+$/.test(t))return de(t,e);let $=e.indent||(e.forceBlockIndent||ao(t)?" ":""),g=c==="literal"?!0:c==="folded"||n===Ln.Scalar.BLOCK_FOLDED?!1:n===Ln.Scalar.BLOCK_LITERAL?!0:!SJ(t,o,$.length);if(!t)return g?`|
|
|
62
|
-
`:`>
|
|
63
|
-
`;let d,f;for(f=t.length;f>0;--f){let J=t[f-1];if(J!==`
|
|
64
|
-
`&&J!=="\t"&&J!==" ")break}let b=t.substring(f),m=b.indexOf(`
|
|
65
|
-
`);if(m===-1)d="-";else if(t===b||m!==b.length-1){if(d="+",_)_()}else d="";if(b){if(t=t.slice(0,-b.length),b[b.length-1]===`
|
|
66
|
-
`)b=b.slice(0,-1);b=b.replace($6,`$&${$}`)}let w=!1,O,q=-1;for(O=0;O<t.length;++O){let J=t[O];if(J===" ")w=!0;else if(J===`
|
|
67
|
-
`)q=O;else break}let T=t.substring(0,q<O?q+1:O);if(T)t=t.substring(T.length),T=T.replace(/\n+/g,`$&${$}`);let j=(w?$?"2":"1":"")+d;if(r){if(j+=" "+u(r.replace(/ ?[\r\n]+/g," ")),i)i()}if(!g){let J=t.replace(/\n+/g,`
|
|
68
|
-
$&`).replace(/(?:^|\n)([\t ].*)(?:([\n\t ]*)\n(?![\n\t ]))?/g,"$1$2").replace(/\n+/g,`$&${$}`),k=!1,Q=Ko(e,!0);if(c!=="folded"&&n!==Ln.Scalar.BLOCK_FOLDED)Q.onOverflow=()=>{k=!0};let L=Tt.foldFlowLines(`${T}${J}${b}`,$,Tt.FOLD_BLOCK,Q);if(!k)return`>${j}
|
|
69
|
-
${$}${L}`}return t=t.replace(/\n+/g,`$&${$}`),`|${j}
|
|
70
|
-
${$}${T}${t}${b}`}function WJ(r,n,t,e){let{type:i,value:_}=r,{actualString:c,implicitKey:u,indent:o,indentStep:$,inFlow:g}=n;if(u&&_.includes(`
|
|
71
|
-
`)||g&&/[[\]{},]/.test(_))return de(_,n);if(/^[\n\t ,[\]{}#&*!|>'"%@`]|^[?-]$|^[?-][ \t]|[\n:][ \t]|[ \t]\n|[\n\t ]#|[\n\t :]$/.test(_))return u||g||!_.includes(`
|
|
72
|
-
`)?de(_,n):Qo(r,n,t,e);if(!u&&!g&&i!==Ln.Scalar.PLAIN&&_.includes(`
|
|
73
|
-
`))return Qo(r,n,t,e);if(ao(_)){if(o==="")return n.forceBlockIndent=!0,Qo(r,n,t,e);else if(u&&o===$)return de(_,n)}let d=_.replace(/\n+/g,`$&
|
|
74
|
-
${o}`);if(c){let f=(w)=>w.default&&w.tag!=="tag:yaml.org,2002:str"&&w.test?.test(d),{compat:b,tags:m}=n.doc.schema;if(m.some(f)||b?.some(f))return de(_,n)}return u?d:Tt.foldFlowLines(d,o,Tt.FOLD_FLOW,Ko(n,!1))}function EJ(r,n,t,e){let{implicitKey:i,inFlow:_}=n,c=typeof r.value==="string"?r:Object.assign({},r,{value:String(r.value)}),{type:u}=r;if(u!==Ln.Scalar.QUOTE_DOUBLE){if(/[\x00-\x08\x0b-\x1f\x7f-\x9f\u{D800}-\u{DFFF}]/u.test(c.value))u=Ln.Scalar.QUOTE_DOUBLE}let o=(g)=>{switch(g){case Ln.Scalar.BLOCK_FOLDED:case Ln.Scalar.BLOCK_LITERAL:return i||_?de(c.value,n):Qo(c,n,t,e);case Ln.Scalar.QUOTE_DOUBLE:return Z_(c.value,n);case Ln.Scalar.QUOTE_SINGLE:return o6(c.value,n);case Ln.Scalar.PLAIN:return WJ(c,n,t,e);default:return null}},$=o(u);if($===null){let{defaultKeyType:g,defaultStringType:d}=n.options,f=i&&g||d;if($=o(f),$===null)throw Error(`Unsupported default string type ${f}`)}return $}jJ.stringifyString=EJ});var x_=P((FJ)=>{var AJ=vo(),Nt=C(),MJ=a_(),PJ=C_();function kJ(r,n){let t=Object.assign({blockQuote:!0,commentString:MJ.stringifyComment,defaultKeyType:null,defaultStringType:"PLAIN",directives:null,doubleQuotedAsJSON:!1,doubleQuotedMinMultiLineLength:40,falseStr:"false",flowCollectionPadding:!0,indentSeq:!0,lineWidth:80,minContentWidth:20,nullStr:"null",simpleKeys:!1,singleQuote:null,trailingComma:!1,trueStr:"true",verifyAliasOrder:!0},r.schema.toStringOptions,n),e;switch(t.collectionStyle){case"block":e=!1;break;case"flow":e=!0;break;default:e=null}return{anchors:new Set,doc:r,flowCollectionPadding:t.flowCollectionPadding?" ":"",indent:"",indentStep:typeof t.indent==="number"?" ".repeat(t.indent):" ",inFlow:e,options:t}}function XJ(r,n){if(n.tag){let i=r.filter((_)=>_.tag===n.tag);if(i.length>0)return i.find((_)=>_.format===n.format)??i[0]}let t=void 0,e;if(Nt.isScalar(n)){e=n.value;let i=r.filter((_)=>_.identify?.(e));if(i.length>1){let _=i.filter((c)=>c.test);if(_.length>0)i=_}t=i.find((_)=>_.format===n.format)??i.find((_)=>!_.format)}else e=n,t=r.find((i)=>i.nodeClass&&e instanceof i.nodeClass);if(!t){let i=e?.constructor?.name??(e===null?"null":typeof e);throw Error(`Tag not resolved for ${i} value`)}return t}function GJ(r,n,{anchors:t,doc:e}){if(!e.directives)return"";let i=[],_=(Nt.isScalar(r)||Nt.isCollection(r))&&r.anchor;if(_&&AJ.anchorIsValid(_))t.add(_),i.push(`&${_}`);let c=r.tag??(n.default?null:n.tag);if(c)i.push(e.directives.tagString(c));return i.join(" ")}function VJ(r,n,t,e){if(Nt.isPair(r))return r.toString(n,t,e);if(Nt.isAlias(r)){if(n.doc.directives)return r.toString(n);if(n.resolvedAliases?.has(r))throw TypeError("Cannot stringify circular structure without alias nodes");else{if(n.resolvedAliases)n.resolvedAliases.add(r);else n.resolvedAliases=new Set([r]);r=r.resolve(n.doc)}}let i=void 0,_=Nt.isNode(r)?r:n.doc.createNode(r,{onTagObj:(o)=>i=o});i??(i=XJ(n.doc.schema.tags,_));let c=GJ(_,i,n);if(c.length>0)n.indentAtStart=(n.indentAtStart??0)+c.length+1;let u=typeof i.stringify==="function"?i.stringify(_,n,t,e):Nt.isScalar(_)?PJ.stringifyString(_,n,t,e):_.toString(n,t,e);if(!c)return u;return Nt.isScalar(_)||u[0]==="{"||u[0]==="["?`${c} ${u}`:`${c}
|
|
75
|
-
${n.indent}${u}`}FJ.createStringifyContext=kJ;FJ.stringify=VJ});var YR=P((HJ)=>{var ot=C(),lR=Or(),vR=x_(),p_=a_();function YJ({key:r,value:n},t,e,i){let{allNullValues:_,doc:c,indent:u,indentStep:o,options:{commentString:$,indentSeq:g,simpleKeys:d}}=t,f=ot.isNode(r)&&r.comment||null;if(d){if(f)throw Error("With simple keys, key nodes cannot have comments");if(ot.isCollection(r)||!ot.isNode(r)&&typeof r==="object")throw Error("With simple keys, collection cannot be used as a key value")}let b=!d&&(!r||f&&n==null&&!t.inFlow||ot.isCollection(r)||(ot.isScalar(r)?r.type===lR.Scalar.BLOCK_FOLDED||r.type===lR.Scalar.BLOCK_LITERAL:typeof r==="object"));t=Object.assign({},t,{allNullValues:!1,implicitKey:!b&&(d||!_),indent:u+o});let m=!1,w=!1,O=vR.stringify(r,t,()=>m=!0,()=>w=!0);if(!b&&!t.inFlow&&O.length>1024){if(d)throw Error("With simple keys, single line scalar must not span more than 1024 characters");b=!0}if(t.inFlow){if(_||n==null){if(m&&e)e();return O===""?"?":b?`? ${O}`:O}}else if(_&&!d||n==null&&b){if(O=`? ${O}`,f&&!m)O+=p_.lineComment(O,t.indent,$(f));else if(w&&i)i();return O}if(m)f=null;if(b){if(f)O+=p_.lineComment(O,t.indent,$(f));O=`? ${O}
|
|
76
|
-
${u}:`}else if(O=`${O}:`,f)O+=p_.lineComment(O,t.indent,$(f));let q,T,R;if(ot.isNode(n))q=!!n.spaceBefore,T=n.commentBefore,R=n.comment;else if(q=!1,T=null,R=null,n&&typeof n==="object")n=c.createNode(n);if(t.implicitKey=!1,!b&&!f&&ot.isScalar(n))t.indentAtStart=O.length+1;if(w=!1,!g&&o.length>=2&&!t.inFlow&&!b&&ot.isSeq(n)&&!n.flow&&!n.tag&&!n.anchor)t.indent=t.indent.substring(2);let j=!1,J=vR.stringify(n,t,()=>j=!0,()=>w=!0),k=" ";if(f||q||T){if(k=q?`
|
|
77
|
-
`:"",T){let Q=$(T);k+=`
|
|
78
|
-
${p_.indentComment(Q,t.indent)}`}if(J===""&&!t.inFlow){if(k===`
|
|
79
|
-
`&&R)k=`
|
|
80
|
-
|
|
81
|
-
`}else k+=`
|
|
82
|
-
${t.indent}`}else if(!b&&ot.isCollection(n)){let Q=J[0],L=J.indexOf(`
|
|
83
|
-
`),Y=L!==-1,V=t.inFlow??n.flow??n.items.length===0;if(Y||!V){let Sr=!1;if(Y&&(Q==="&"||Q==="!")){let ur=J.indexOf(" ");if(Q==="&"&&ur!==-1&&ur<L&&J[ur+1]==="!")ur=J.indexOf(" ",ur+1);if(ur===-1||L<ur)Sr=!0}if(!Sr)k=`
|
|
84
|
-
${t.indent}`}}else if(J===""||J[0]===`
|
|
85
|
-
`)k="";if(O+=k+J,t.inFlow){if(j&&e)e()}else if(R&&!j)O+=p_.lineComment(O,t.indent,$(R));else if(w&&i)i();return O}HJ.stringifyPair=YJ});var g6=P((aJ)=>{var HR=Kc("process");function QJ(r,...n){if(r==="debug")console.log(...n)}function KJ(r,n){if(r==="debug"||r==="warn")if(typeof HR.emitWarning==="function")HR.emitWarning(n);else console.warn(n)}aJ.debug=QJ;aJ.warn=KJ});var xo=P((pJ)=>{var s_=C(),BR=Or(),Zo="<<",Co={identify:(r)=>r===Zo||typeof r==="symbol"&&r.description===Zo,default:"key",tag:"tag:yaml.org,2002:merge",test:/^<<$/,resolve:()=>Object.assign(new BR.Scalar(Symbol(Zo)),{addToJSMap:QR}),stringify:()=>Zo},xJ=(r,n)=>(Co.identify(n)||s_.isScalar(n)&&(!n.type||n.type===BR.Scalar.PLAIN)&&Co.identify(n.value))&&r?.doc.schema.tags.some((t)=>t.tag===Co.tag&&t.default);function QR(r,n,t){if(t=r&&s_.isAlias(t)?t.resolve(r.doc):t,s_.isSeq(t))for(let e of t.items)d6(r,n,e);else if(Array.isArray(t))for(let e of t)d6(r,n,e);else d6(r,n,t)}function d6(r,n,t){let e=r&&s_.isAlias(t)?t.resolve(r.doc):t;if(!s_.isMap(e))throw Error("Merge sources must be maps or map aliases");let i=e.toJSON(null,r,Map);for(let[_,c]of i)if(n instanceof Map){if(!n.has(_))n.set(_,c)}else if(n instanceof Set)n.add(_);else if(!Object.prototype.hasOwnProperty.call(n,_))Object.defineProperty(n,_,{value:c,writable:!0,enumerable:!0,configurable:!0});return n}pJ.addMergeToJSMap=QR;pJ.isMergeKey=xJ;pJ.merge=Co});var b6=P((c2)=>{var t2=g6(),KR=xo(),i2=x_(),aR=C(),f6=qt();function e2(r,n,{key:t,value:e}){if(aR.isNode(t)&&t.addToJSMap)t.addToJSMap(r,n,e);else if(KR.isMergeKey(r,t))KR.addMergeToJSMap(r,n,e);else{let i=f6.toJS(t,"",r);if(n instanceof Map)n.set(i,f6.toJS(e,i,r));else if(n instanceof Set)n.add(i);else{let _=_2(t,i,r),c=f6.toJS(e,_,r);if(_ in n)Object.defineProperty(n,_,{value:c,writable:!0,enumerable:!0,configurable:!0});else n[_]=c}}return n}function _2(r,n,t){if(n===null)return"";if(typeof n!=="object")return String(n);if(aR.isNode(r)&&t?.doc){let e=i2.createStringifyContext(t.doc,{});e.anchors=new Set;for(let _ of t.anchors.keys())e.anchors.add(_.anchor);e.inFlow=!0,e.inStringifyKey=!0;let i=r.toString(e);if(!t.mapKeyWarned){let _=JSON.stringify(i);if(_.length>40)_=_.substring(0,36)+'..."';t2.warn(t.doc.options.logLevel,`Keys with collection values will be stringified due to JS Object restrictions: ${_}. Set mapAsMap: true to use object keys.`),t.mapKeyWarned=!0}return i}return JSON.stringify(n)}c2.addPairToJSMap=e2});var Lt=P((d2)=>{var ZR=K_(),o2=YR(),$2=b6(),po=C();function g2(r,n,t){let e=ZR.createNode(r,void 0,t),i=ZR.createNode(n,void 0,t);return new so(e,i)}class so{constructor(r,n=null){Object.defineProperty(this,po.NODE_TYPE,{value:po.PAIR}),this.key=r,this.value=n}clone(r){let{key:n,value:t}=this;if(po.isNode(n))n=n.clone(r);if(po.isNode(t))t=t.clone(r);return new so(n,t)}toJSON(r,n){let t=n?.mapAsMap?new Map:{};return $2.addPairToJSMap(n,t,this)}toString(r,n,t){return r?.doc?o2.stringifyPair(this,r,n,t):JSON.stringify(this)}}d2.Pair=so;d2.createPair=g2});var w6=P((O2)=>{var _i=C(),CR=x_(),r$=a_();function w2(r,n,t){return(n.inFlow??r.flow?I2:m2)(r,n,t)}function m2({comment:r,items:n},t,{blockItemPrefix:e,flowChars:i,itemIndent:_,onChompKeep:c,onComment:u}){let{indent:o,options:{commentString:$}}=t,g=Object.assign({},t,{indent:_,type:null}),d=!1,f=[];for(let m=0;m<n.length;++m){let w=n[m],O=null;if(_i.isNode(w)){if(!d&&w.spaceBefore)f.push("");if(n$(t,f,w.commentBefore,d),w.comment)O=w.comment}else if(_i.isPair(w)){let T=_i.isNode(w.key)?w.key:null;if(T){if(!d&&T.spaceBefore)f.push("");n$(t,f,T.commentBefore,d)}}d=!1;let q=CR.stringify(w,g,()=>O=null,()=>d=!0);if(O)q+=r$.lineComment(q,_,$(O));if(d&&O)d=!1;f.push(e+q)}let b;if(f.length===0)b=i.start+i.end;else{b=f[0];for(let m=1;m<f.length;++m){let w=f[m];b+=w?`
|
|
86
|
-
${o}${w}`:`
|
|
87
|
-
`}}if(r){if(b+=`
|
|
88
|
-
`+r$.indentComment($(r),o),u)u()}else if(d&&c)c();return b}function I2({items:r},n,{flowChars:t,itemIndent:e}){let{indent:i,indentStep:_,flowCollectionPadding:c,options:{commentString:u}}=n;e+=_;let o=Object.assign({},n,{indent:e,inFlow:!0,type:null}),$=!1,g=0,d=[];for(let m=0;m<r.length;++m){let w=r[m],O=null;if(_i.isNode(w)){if(w.spaceBefore)d.push("");if(n$(n,d,w.commentBefore,!1),w.comment)O=w.comment}else if(_i.isPair(w)){let T=_i.isNode(w.key)?w.key:null;if(T){if(T.spaceBefore)d.push("");if(n$(n,d,T.commentBefore,!1),T.comment)$=!0}let R=_i.isNode(w.value)?w.value:null;if(R){if(R.comment)O=R.comment;if(R.commentBefore)$=!0}else if(w.value==null&&T?.comment)O=T.comment}if(O)$=!0;let q=CR.stringify(w,o,()=>O=null);if($||($=d.length>g||q.includes(`
|
|
89
|
-
`)),m<r.length-1)q+=",";else if(n.options.trailingComma){if(n.options.lineWidth>0)$||($=d.reduce((T,R)=>T+R.length+2,2)+(q.length+2)>n.options.lineWidth);if($)q+=","}if(O)q+=r$.lineComment(q,e,u(O));d.push(q),g=d.length}let{start:f,end:b}=t;if(d.length===0)return f+b;else{if(!$){let m=d.reduce((w,O)=>w+O.length+2,2);$=n.options.lineWidth>0&&m>n.options.lineWidth}if($){let m=f;for(let w of d)m+=w?`
|
|
90
|
-
${_}${i}${w}`:`
|
|
91
|
-
`;return`${m}
|
|
92
|
-
${i}${b}`}else return`${f}${c}${d.join(" ")}${c}${b}`}}function n$({indent:r,options:{commentString:n}},t,e,i){if(e&&i)e=e.replace(/^\n+/,"");if(e){let _=r$.indentComment(n(e),r);t.push(_.trimStart())}}O2.stringifyCollection=w2});var St=P((q2)=>{var h2=w6(),R2=b6(),D2=Bo(),zt=C(),t$=Lt(),y2=Or();function rc(r,n){let t=zt.isScalar(n)?n.value:n;for(let e of r)if(zt.isPair(e)){if(e.key===n||e.key===t)return e;if(zt.isScalar(e.key)&&e.key.value===t)return e}return}class xR extends D2.Collection{static get tagName(){return"tag:yaml.org,2002:map"}constructor(r){super(zt.MAP,r);this.items=[]}static from(r,n,t){let{keepUndefined:e,replacer:i}=t,_=new this(r),c=(u,o)=>{if(typeof i==="function")o=i.call(n,u,o);else if(Array.isArray(i)&&!i.includes(u))return;if(o!==void 0||e)_.items.push(t$.createPair(u,o,t))};if(n instanceof Map)for(let[u,o]of n)c(u,o);else if(n&&typeof n==="object")for(let u of Object.keys(n))c(u,n[u]);if(typeof r.sortMapEntries==="function")_.items.sort(r.sortMapEntries);return _}add(r,n){let t;if(zt.isPair(r))t=r;else if(!r||typeof r!=="object"||!("key"in r))t=new t$.Pair(r,r?.value);else t=new t$.Pair(r.key,r.value);let e=rc(this.items,t.key),i=this.schema?.sortMapEntries;if(e){if(!n)throw Error(`Key ${t.key} already set`);if(zt.isScalar(e.value)&&y2.isScalarValue(t.value))e.value.value=t.value;else e.value=t.value}else if(i){let _=this.items.findIndex((c)=>i(t,c)<0);if(_===-1)this.items.push(t);else this.items.splice(_,0,t)}else this.items.push(t)}delete(r){let n=rc(this.items,r);if(!n)return!1;return this.items.splice(this.items.indexOf(n),1).length>0}get(r,n){let e=rc(this.items,r)?.value;return(!n&&zt.isScalar(e)?e.value:e)??void 0}has(r){return!!rc(this.items,r)}set(r,n){this.add(new t$.Pair(r,n),!0)}toJSON(r,n,t){let e=t?new t:n?.mapAsMap?new Map:{};if(n?.onCreate)n.onCreate(e);for(let i of this.items)R2.addPairToJSMap(n,e,i);return e}toString(r,n,t){if(!r)return JSON.stringify(this);for(let e of this.items)if(!zt.isPair(e))throw Error(`Map items must all be pairs; found ${JSON.stringify(e)} instead`);if(!r.allNullValues&&this.hasAllNullValues(!1))r=Object.assign({},r,{allNullValues:!0});return h2.stringifyCollection(this,r,{blockItemPrefix:"",flowChars:{start:"{",end:"}"},itemIndent:r.indent||"",onChompKeep:t,onComment:n})}}q2.YAMLMap=xR;q2.findPair=rc});var fe=P((S2)=>{var L2=C(),pR=St(),z2={collection:"map",default:!0,nodeClass:pR.YAMLMap,tag:"tag:yaml.org,2002:map",resolve(r,n){if(!L2.isMap(r))n("Expected a mapping for this tag");return r},createNode:(r,n,t)=>pR.YAMLMap.from(r,n,t)};S2.map=z2});var Wt=P((P2)=>{var E2=K_(),j2=w6(),J2=Bo(),e$=C(),A2=Or(),M2=qt();class sR extends J2.Collection{static get tagName(){return"tag:yaml.org,2002:seq"}constructor(r){super(e$.SEQ,r);this.items=[]}add(r){this.items.push(r)}delete(r){let n=i$(r);if(typeof n!=="number")return!1;return this.items.splice(n,1).length>0}get(r,n){let t=i$(r);if(typeof t!=="number")return;let e=this.items[t];return!n&&e$.isScalar(e)?e.value:e}has(r){let n=i$(r);return typeof n==="number"&&n<this.items.length}set(r,n){let t=i$(r);if(typeof t!=="number")throw Error(`Expected a valid index, not ${r}.`);let e=this.items[t];if(e$.isScalar(e)&&A2.isScalarValue(n))e.value=n;else this.items[t]=n}toJSON(r,n){let t=[];if(n?.onCreate)n.onCreate(t);let e=0;for(let i of this.items)t.push(M2.toJS(i,String(e++),n));return t}toString(r,n,t){if(!r)return JSON.stringify(this);return j2.stringifyCollection(this,r,{blockItemPrefix:"- ",flowChars:{start:"[",end:"]"},itemIndent:(r.indent||"")+" ",onChompKeep:t,onComment:n})}static from(r,n,t){let{replacer:e}=t,i=new this(r);if(n&&Symbol.iterator in Object(n)){let _=0;for(let c of n){if(typeof e==="function"){let u=n instanceof Set?c:String(_++);c=e.call(n,u,c)}i.items.push(E2.createNode(c,void 0,t))}}return i}}function i$(r){let n=e$.isScalar(r)?r.value:r;if(n&&typeof n==="string")n=Number(n);return typeof n==="number"&&Number.isInteger(n)&&n>=0?n:null}P2.YAMLSeq=sR});var be=P((V2)=>{var X2=C(),rD=Wt(),G2={collection:"seq",default:!0,nodeClass:rD.YAMLSeq,tag:"tag:yaml.org,2002:seq",resolve(r,n){if(!X2.isSeq(r))n("Expected a sequence for this tag");return r},createNode:(r,n,t)=>rD.YAMLSeq.from(r,n,t)};V2.seq=G2});var nc=P((Y2)=>{var l2=C_(),v2={identify:(r)=>typeof r==="string",default:!0,tag:"tag:yaml.org,2002:str",resolve:(r)=>r,stringify(r,n,t,e){return n=Object.assign({actualString:!0},n),l2.stringifyString(r,n,t,e)}};Y2.string=v2});var _$=P((B2)=>{var nD=Or(),tD={identify:(r)=>r==null,createNode:()=>new nD.Scalar(null),default:!0,tag:"tag:yaml.org,2002:null",test:/^(?:~|[Nn]ull|NULL)?$/,resolve:()=>new nD.Scalar(null),stringify:({source:r},n)=>typeof r==="string"&&tD.test.test(r)?r:n.options.nullStr};B2.nullTag=tD});var m6=P((a2)=>{var K2=Or(),iD={identify:(r)=>typeof r==="boolean",default:!0,tag:"tag:yaml.org,2002:bool",test:/^(?:[Tt]rue|TRUE|[Ff]alse|FALSE)$/,resolve:(r)=>new K2.Scalar(r[0]==="t"||r[0]==="T"),stringify({source:r,value:n},t){if(r&&iD.test.test(r)){let e=r[0]==="t"||r[0]==="T";if(n===e)return r}return n?t.options.trueStr:t.options.falseStr}};a2.boolTag=iD});var we=P((x2)=>{function C2({format:r,minFractionDigits:n,tag:t,value:e}){if(typeof e==="bigint")return String(e);let i=typeof e==="number"?e:Number(e);if(!isFinite(i))return isNaN(i)?".nan":i<0?"-.inf":".inf";let _=Object.is(e,-0)?"-0":JSON.stringify(e);if(!r&&n&&(!t||t==="tag:yaml.org,2002:float")&&/^\d/.test(_)){let c=_.indexOf(".");if(c<0)c=_.length,_+=".";let u=n-(_.length-c-1);while(u-- >0)_+="0"}return _}x2.stringifyNumber=C2});var O6=P((iA)=>{var s2=Or(),I6=we(),rA={identify:(r)=>typeof r==="number",default:!0,tag:"tag:yaml.org,2002:float",test:/^(?:[-+]?\.(?:inf|Inf|INF)|\.nan|\.NaN|\.NAN)$/,resolve:(r)=>r.slice(-3).toLowerCase()==="nan"?NaN:r[0]==="-"?Number.NEGATIVE_INFINITY:Number.POSITIVE_INFINITY,stringify:I6.stringifyNumber},nA={identify:(r)=>typeof r==="number",default:!0,tag:"tag:yaml.org,2002:float",format:"EXP",test:/^[-+]?(?:\.[0-9]+|[0-9]+(?:\.[0-9]*)?)[eE][-+]?[0-9]+$/,resolve:(r)=>parseFloat(r),stringify(r){let n=Number(r.value);return isFinite(n)?n.toExponential():I6.stringifyNumber(r)}},tA={identify:(r)=>typeof r==="number",default:!0,tag:"tag:yaml.org,2002:float",test:/^[-+]?(?:\.[0-9]+|[0-9]+\.[0-9]*)$/,resolve(r){let n=new s2.Scalar(parseFloat(r)),t=r.indexOf(".");if(t!==-1&&r[r.length-1]==="0")n.minFractionDigits=r.length-t-1;return n},stringify:I6.stringifyNumber};iA.float=tA;iA.floatExp=nA;iA.floatNaN=rA});var h6=P((gA)=>{var eD=we(),c$=(r)=>typeof r==="bigint"||Number.isInteger(r),U6=(r,n,t,{intAsBigInt:e})=>e?BigInt(r):parseInt(r.substring(n),t);function _D(r,n,t){let{value:e}=r;if(c$(e)&&e>=0)return t+e.toString(n);return eD.stringifyNumber(r)}var uA={identify:(r)=>c$(r)&&r>=0,default:!0,tag:"tag:yaml.org,2002:int",format:"OCT",test:/^0o[0-7]+$/,resolve:(r,n,t)=>U6(r,2,8,t),stringify:(r)=>_D(r,8,"0o")},oA={identify:c$,default:!0,tag:"tag:yaml.org,2002:int",test:/^[-+]?[0-9]+$/,resolve:(r,n,t)=>U6(r,0,10,t),stringify:eD.stringifyNumber},$A={identify:(r)=>c$(r)&&r>=0,default:!0,tag:"tag:yaml.org,2002:int",format:"HEX",test:/^0x[0-9a-fA-F]+$/,resolve:(r,n,t)=>U6(r,2,16,t),stringify:(r)=>_D(r,16,"0x")};gA.int=oA;gA.intHex=$A;gA.intOct=uA});var cD=P((RA)=>{var wA=fe(),mA=_$(),IA=be(),OA=nc(),UA=m6(),R6=O6(),D6=h6(),hA=[wA.map,IA.seq,OA.string,mA.nullTag,UA.boolTag,D6.intOct,D6.int,D6.intHex,R6.floatNaN,R6.floatExp,R6.float];RA.schema=hA});var oD=P((SA)=>{var yA=Or(),qA=fe(),TA=be();function uD(r){return typeof r==="bigint"||Number.isInteger(r)}var u$=({value:r})=>JSON.stringify(r),NA=[{identify:(r)=>typeof r==="string",default:!0,tag:"tag:yaml.org,2002:str",resolve:(r)=>r,stringify:u$},{identify:(r)=>r==null,createNode:()=>new yA.Scalar(null),default:!0,tag:"tag:yaml.org,2002:null",test:/^null$/,resolve:()=>null,stringify:u$},{identify:(r)=>typeof r==="boolean",default:!0,tag:"tag:yaml.org,2002:bool",test:/^true$|^false$/,resolve:(r)=>r==="true",stringify:u$},{identify:uD,default:!0,tag:"tag:yaml.org,2002:int",test:/^-?(?:0|[1-9][0-9]*)$/,resolve:(r,n,{intAsBigInt:t})=>t?BigInt(r):parseInt(r,10),stringify:({value:r})=>uD(r)?r.toString():JSON.stringify(r)},{identify:(r)=>typeof r==="number",default:!0,tag:"tag:yaml.org,2002:float",test:/^-?(?:0|[1-9][0-9]*)(?:\.[0-9]*)?(?:[eE][-+]?[0-9]+)?$/,resolve:(r)=>parseFloat(r),stringify:u$}],LA={default:!0,tag:"",test:/^/,resolve(r,n){return n(`Unresolved plain scalar ${JSON.stringify(r)}`),r}},zA=[qA.map,TA.seq].concat(NA,LA);SA.schema=zA});var q6=P((JA)=>{var tc=Kc("buffer"),y6=Or(),EA=C_(),jA={identify:(r)=>r instanceof Uint8Array,default:!1,tag:"tag:yaml.org,2002:binary",resolve(r,n){if(typeof tc.Buffer==="function")return tc.Buffer.from(r,"base64");else if(typeof atob==="function"){let t=atob(r.replace(/[\n\r]/g,"")),e=new Uint8Array(t.length);for(let i=0;i<t.length;++i)e[i]=t.charCodeAt(i);return e}else return n("This environment does not support reading binary tags; either Buffer or atob is required"),r},stringify({comment:r,type:n,value:t},e,i,_){if(!t)return"";let c=t,u;if(typeof tc.Buffer==="function")u=c instanceof tc.Buffer?c.toString("base64"):tc.Buffer.from(c.buffer).toString("base64");else if(typeof btoa==="function"){let o="";for(let $=0;$<c.length;++$)o+=String.fromCharCode(c[$]);u=btoa(o)}else throw Error("This environment does not support writing binary tags; either Buffer or btoa is required");if(n??(n=y6.Scalar.BLOCK_LITERAL),n!==y6.Scalar.QUOTE_DOUBLE){let o=Math.max(e.options.lineWidth-e.indent.length,e.options.minContentWidth),$=Math.ceil(u.length/o),g=Array($);for(let d=0,f=0;d<$;++d,f+=o)g[d]=u.substr(f,o);u=g.join(n===y6.Scalar.BLOCK_LITERAL?`
|
|
93
|
-
`:" ")}return EA.stringifyString({comment:r,type:n,value:u},e,i,_)}};JA.binary=jA});var $$=P((XA)=>{var o$=C(),T6=Lt(),MA=Or(),PA=Wt();function $D(r,n){if(o$.isSeq(r))for(let t=0;t<r.items.length;++t){let e=r.items[t];if(o$.isPair(e))continue;else if(o$.isMap(e)){if(e.items.length>1)n("Each pair must have its own sequence indicator");let i=e.items[0]||new T6.Pair(new MA.Scalar(null));if(e.commentBefore)i.key.commentBefore=i.key.commentBefore?`${e.commentBefore}
|
|
94
|
-
${i.key.commentBefore}`:e.commentBefore;if(e.comment){let _=i.value??i.key;_.comment=_.comment?`${e.comment}
|
|
95
|
-
${_.comment}`:e.comment}e=i}r.items[t]=o$.isPair(e)?e:new T6.Pair(e)}else n("Expected a sequence for this tag");return r}function gD(r,n,t){let{replacer:e}=t,i=new PA.YAMLSeq(r);i.tag="tag:yaml.org,2002:pairs";let _=0;if(n&&Symbol.iterator in Object(n))for(let c of n){if(typeof e==="function")c=e.call(n,String(_++),c);let u,o;if(Array.isArray(c))if(c.length===2)u=c[0],o=c[1];else throw TypeError(`Expected [key, value] tuple: ${c}`);else if(c&&c instanceof Object){let $=Object.keys(c);if($.length===1)u=$[0],o=c[u];else throw TypeError(`Expected tuple with one key, not ${$.length} keys`)}else u=c;i.items.push(T6.createPair(u,o,t))}return i}var kA={collection:"seq",default:!1,tag:"tag:yaml.org,2002:pairs",resolve:$D,createNode:gD};XA.createPairs=gD;XA.pairs=kA;XA.resolvePairs=$D});var L6=P((YA)=>{var dD=C(),N6=qt(),ic=St(),lA=Wt(),fD=$$();class ci extends lA.YAMLSeq{constructor(){super();this.add=ic.YAMLMap.prototype.add.bind(this),this.delete=ic.YAMLMap.prototype.delete.bind(this),this.get=ic.YAMLMap.prototype.get.bind(this),this.has=ic.YAMLMap.prototype.has.bind(this),this.set=ic.YAMLMap.prototype.set.bind(this),this.tag=ci.tag}toJSON(r,n){if(!n)return super.toJSON(r);let t=new Map;if(n?.onCreate)n.onCreate(t);for(let e of this.items){let i,_;if(dD.isPair(e))i=N6.toJS(e.key,"",n),_=N6.toJS(e.value,i,n);else i=N6.toJS(e,"",n);if(t.has(i))throw Error("Ordered maps must not include duplicate keys");t.set(i,_)}return t}static from(r,n,t){let e=fD.createPairs(r,n,t),i=new this;return i.items=e.items,i}}ci.tag="tag:yaml.org,2002:omap";var vA={collection:"seq",identify:(r)=>r instanceof Map,nodeClass:ci,default:!1,tag:"tag:yaml.org,2002:omap",resolve(r,n){let t=fD.resolvePairs(r,n),e=[];for(let{key:i}of t.items)if(dD.isScalar(i))if(e.includes(i.value))n(`Ordered maps must not include duplicate keys: ${i.value}`);else e.push(i.value);return Object.assign(new ci,t)},createNode:(r,n,t)=>ci.from(r,n,t)};YA.YAMLOMap=ci;YA.omap=vA});var OD=P((QA)=>{var bD=Or();function wD({value:r,source:n},t){if(n&&(r?mD:ID).test.test(n))return n;return r?t.options.trueStr:t.options.falseStr}var mD={identify:(r)=>r===!0,default:!0,tag:"tag:yaml.org,2002:bool",test:/^(?:Y|y|[Yy]es|YES|[Tt]rue|TRUE|[Oo]n|ON)$/,resolve:()=>new bD.Scalar(!0),stringify:wD},ID={identify:(r)=>r===!1,default:!0,tag:"tag:yaml.org,2002:bool",test:/^(?:N|n|[Nn]o|NO|[Ff]alse|FALSE|[Oo]ff|OFF)$/,resolve:()=>new bD.Scalar(!1),stringify:wD};QA.falseTag=ID;QA.trueTag=mD});var UD=P((sA)=>{var ZA=Or(),z6=we(),CA={identify:(r)=>typeof r==="number",default:!0,tag:"tag:yaml.org,2002:float",test:/^(?:[-+]?\.(?:inf|Inf|INF)|\.nan|\.NaN|\.NAN)$/,resolve:(r)=>r.slice(-3).toLowerCase()==="nan"?NaN:r[0]==="-"?Number.NEGATIVE_INFINITY:Number.POSITIVE_INFINITY,stringify:z6.stringifyNumber},xA={identify:(r)=>typeof r==="number",default:!0,tag:"tag:yaml.org,2002:float",format:"EXP",test:/^[-+]?(?:[0-9][0-9_]*)?(?:\.[0-9_]*)?[eE][-+]?[0-9]+$/,resolve:(r)=>parseFloat(r.replace(/_/g,"")),stringify(r){let n=Number(r.value);return isFinite(n)?n.toExponential():z6.stringifyNumber(r)}},pA={identify:(r)=>typeof r==="number",default:!0,tag:"tag:yaml.org,2002:float",test:/^[-+]?(?:[0-9][0-9_]*)?\.[0-9_]*$/,resolve(r){let n=new ZA.Scalar(parseFloat(r.replace(/_/g,""))),t=r.indexOf(".");if(t!==-1){let e=r.substring(t+1).replace(/_/g,"");if(e[e.length-1]==="0")n.minFractionDigits=e.length}return n},stringify:z6.stringifyNumber};sA.float=pA;sA.floatExp=xA;sA.floatNaN=CA});var RD=P((uM)=>{var hD=we(),ec=(r)=>typeof r==="bigint"||Number.isInteger(r);function g$(r,n,t,{intAsBigInt:e}){let i=r[0];if(i==="-"||i==="+")n+=1;if(r=r.substring(n).replace(/_/g,""),e){switch(t){case 2:r=`0b${r}`;break;case 8:r=`0o${r}`;break;case 16:r=`0x${r}`;break}let c=BigInt(r);return i==="-"?BigInt(-1)*c:c}let _=parseInt(r,t);return i==="-"?-1*_:_}function S6(r,n,t){let{value:e}=r;if(ec(e)){let i=e.toString(n);return e<0?"-"+t+i.substr(1):t+i}return hD.stringifyNumber(r)}var iM={identify:ec,default:!0,tag:"tag:yaml.org,2002:int",format:"BIN",test:/^[-+]?0b[0-1_]+$/,resolve:(r,n,t)=>g$(r,2,2,t),stringify:(r)=>S6(r,2,"0b")},eM={identify:ec,default:!0,tag:"tag:yaml.org,2002:int",format:"OCT",test:/^[-+]?0[0-7_]+$/,resolve:(r,n,t)=>g$(r,1,8,t),stringify:(r)=>S6(r,8,"0")},_M={identify:ec,default:!0,tag:"tag:yaml.org,2002:int",test:/^[-+]?[0-9][0-9_]*$/,resolve:(r,n,t)=>g$(r,0,10,t),stringify:hD.stringifyNumber},cM={identify:ec,default:!0,tag:"tag:yaml.org,2002:int",format:"HEX",test:/^[-+]?0x[0-9a-fA-F_]+$/,resolve:(r,n,t)=>g$(r,2,16,t),stringify:(r)=>S6(r,16,"0x")};uM.int=_M;uM.intBin=iM;uM.intHex=cM;uM.intOct=eM});var W6=P((bM)=>{var b$=C(),d$=Lt(),f$=St();class ui extends f$.YAMLMap{constructor(r){super(r);this.tag=ui.tag}add(r){let n;if(b$.isPair(r))n=r;else if(r&&typeof r==="object"&&"key"in r&&"value"in r&&r.value===null)n=new d$.Pair(r.key,null);else n=new d$.Pair(r,null);if(!f$.findPair(this.items,n.key))this.items.push(n)}get(r,n){let t=f$.findPair(this.items,r);return!n&&b$.isPair(t)?b$.isScalar(t.key)?t.key.value:t.key:t}set(r,n){if(typeof n!=="boolean")throw Error(`Expected boolean value for set(key, value) in a YAML set, not ${typeof n}`);let t=f$.findPair(this.items,r);if(t&&!n)this.items.splice(this.items.indexOf(t),1);else if(!t&&n)this.items.push(new d$.Pair(r))}toJSON(r,n){return super.toJSON(r,n,Set)}toString(r,n,t){if(!r)return JSON.stringify(this);if(this.hasAllNullValues(!0))return super.toString(Object.assign({},r,{allNullValues:!0}),n,t);else throw Error("Set items must all have null values")}static from(r,n,t){let{replacer:e}=t,i=new this(r);if(n&&Symbol.iterator in Object(n))for(let _ of n){if(typeof e==="function")_=e.call(n,_,_);i.items.push(d$.createPair(_,null,t))}return i}}ui.tag="tag:yaml.org,2002:set";var fM={collection:"map",identify:(r)=>r instanceof Set,nodeClass:ui,default:!1,tag:"tag:yaml.org,2002:set",createNode:(r,n,t)=>ui.from(r,n,t),resolve(r,n){if(b$.isMap(r))if(r.hasAllNullValues(!0))return Object.assign(new ui,r);else n("Set items must all have null values");else n("Expected a mapping for this tag");return r}};bM.YAMLSet=ui;bM.set=fM});var j6=P((hM)=>{var IM=we();function E6(r,n){let t=r[0],e=t==="-"||t==="+"?r.substring(1):r,i=(c)=>n?BigInt(c):Number(c),_=e.replace(/_/g,"").split(":").reduce((c,u)=>c*i(60)+i(u),i(0));return t==="-"?i(-1)*_:_}function DD(r){let{value:n}=r,t=(c)=>c;if(typeof n==="bigint")t=(c)=>BigInt(c);else if(isNaN(n)||!isFinite(n))return IM.stringifyNumber(r);let e="";if(n<0)e="-",n*=t(-1);let i=t(60),_=[n%i];if(n<60)_.unshift(0);else if(n=(n-_[0])/i,_.unshift(n%i),n>=60)n=(n-_[0])/i,_.unshift(n);return e+_.map((c)=>String(c).padStart(2,"0")).join(":").replace(/000000\d*$/,"")}var OM={identify:(r)=>typeof r==="bigint"||Number.isInteger(r),default:!0,tag:"tag:yaml.org,2002:int",format:"TIME",test:/^[-+]?[0-9][0-9_]*(?::[0-5]?[0-9])+$/,resolve:(r,n,{intAsBigInt:t})=>E6(r,t),stringify:DD},UM={identify:(r)=>typeof r==="number",default:!0,tag:"tag:yaml.org,2002:float",format:"TIME",test:/^[-+]?[0-9][0-9_]*(?::[0-5]?[0-9])+\.[0-9_]*$/,resolve:(r)=>E6(r,!1),stringify:DD},yD={identify:(r)=>r instanceof Date,default:!0,tag:"tag:yaml.org,2002:timestamp",test:RegExp("^([0-9]{4})-([0-9]{1,2})-([0-9]{1,2})(?:(?:t|T|[ \\t]+)([0-9]{1,2}):([0-9]{1,2}):([0-9]{1,2}(\\.[0-9]+)?)(?:[ \\t]*(Z|[-+][012]?[0-9](?::[0-9]{2})?))?)?$"),resolve(r){let n=r.match(yD.test);if(!n)throw Error("!!timestamp expects a date, starting with yyyy-mm-dd");let[,t,e,i,_,c,u]=n.map(Number),o=n[7]?Number((n[7]+"00").substr(1,3)):0,$=Date.UTC(t,e-1,i,_||0,c||0,u||0,o),g=n[8];if(g&&g!=="Z"){let d=E6(g,!1);if(Math.abs(d)<30)d*=60;$-=60000*d}return new Date($)},stringify:({value:r})=>r?.toISOString().replace(/(T00:00:00)?\.000Z$/,"")??""};hM.floatTime=UM;hM.intTime=OM;hM.timestamp=yD});var TD=P((AM)=>{var qM=fe(),TM=_$(),NM=be(),LM=nc(),zM=q6(),qD=OD(),J6=UD(),w$=RD(),SM=xo(),WM=L6(),EM=$$(),jM=W6(),A6=j6(),JM=[qM.map,NM.seq,LM.string,TM.nullTag,qD.trueTag,qD.falseTag,w$.intBin,w$.intOct,w$.int,w$.intHex,J6.floatNaN,J6.floatExp,J6.float,zM.binary,SM.merge,WM.omap,EM.pairs,jM.set,A6.intTime,A6.floatTime,A6.timestamp];AM.schema=JM});var MD=P((vM)=>{var SD=fe(),PM=_$(),WD=be(),kM=nc(),XM=m6(),M6=O6(),P6=h6(),GM=cD(),VM=oD(),ED=q6(),_c=xo(),jD=L6(),JD=$$(),ND=TD(),AD=W6(),m$=j6(),LD=new Map([["core",GM.schema],["failsafe",[SD.map,WD.seq,kM.string]],["json",VM.schema],["yaml11",ND.schema],["yaml-1.1",ND.schema]]),zD={binary:ED.binary,bool:XM.boolTag,float:M6.float,floatExp:M6.floatExp,floatNaN:M6.floatNaN,floatTime:m$.floatTime,int:P6.int,intHex:P6.intHex,intOct:P6.intOct,intTime:m$.intTime,map:SD.map,merge:_c.merge,null:PM.nullTag,omap:jD.omap,pairs:JD.pairs,seq:WD.seq,set:AD.set,timestamp:m$.timestamp},FM={"tag:yaml.org,2002:binary":ED.binary,"tag:yaml.org,2002:merge":_c.merge,"tag:yaml.org,2002:omap":jD.omap,"tag:yaml.org,2002:pairs":JD.pairs,"tag:yaml.org,2002:set":AD.set,"tag:yaml.org,2002:timestamp":m$.timestamp};function lM(r,n,t){let e=LD.get(n);if(e&&!r)return t&&!e.includes(_c.merge)?e.concat(_c.merge):e.slice();let i=e;if(!i)if(Array.isArray(r))i=[];else{let _=Array.from(LD.keys()).filter((c)=>c!=="yaml11").map((c)=>JSON.stringify(c)).join(", ");throw Error(`Unknown schema "${n}"; use one of ${_} or define customTags array`)}if(Array.isArray(r))for(let _ of r)i=i.concat(_);else if(typeof r==="function")i=r(i.slice());if(t)i=i.concat(_c.merge);return i.reduce((_,c)=>{let u=typeof c==="string"?zD[c]:c;if(!u){let o=JSON.stringify(c),$=Object.keys(zD).map((g)=>JSON.stringify(g)).join(", ");throw Error(`Unknown custom tag ${o}; use one of ${$}`)}if(!_.includes(u))_.push(u);return _},[])}vM.coreKnownTags=FM;vM.getTags=lM});var G6=P((ZM)=>{var k6=C(),BM=fe(),QM=be(),KM=nc(),I$=MD(),aM=(r,n)=>r.key<n.key?-1:r.key>n.key?1:0;class X6{constructor({compat:r,customTags:n,merge:t,resolveKnownTags:e,schema:i,sortMapEntries:_,toStringDefaults:c}){this.compat=Array.isArray(r)?I$.getTags(r,"compat"):r?I$.getTags(null,r):null,this.name=typeof i==="string"&&i||"core",this.knownTags=e?I$.coreKnownTags:{},this.tags=I$.getTags(n,this.name,t),this.toStringOptions=c??null,Object.defineProperty(this,k6.MAP,{value:BM.map}),Object.defineProperty(this,k6.SCALAR,{value:KM.string}),Object.defineProperty(this,k6.SEQ,{value:QM.seq}),this.sortMapEntries=typeof _==="function"?_:_===!0?aM:null}clone(){let r=Object.create(X6.prototype,Object.getOwnPropertyDescriptors(this));return r.tags=this.tags.slice(),r}}ZM.Schema=X6});var PD=P((sM)=>{var xM=C(),V6=x_(),cc=a_();function pM(r,n){let t=[],e=n.directives===!0;if(n.directives!==!1&&r.directives){let o=r.directives.toString(r);if(o)t.push(o),e=!0;else if(r.directives.docStart)e=!0}if(e)t.push("---");let i=V6.createStringifyContext(r,n),{commentString:_}=i.options;if(r.commentBefore){if(t.length!==1)t.unshift("");let o=_(r.commentBefore);t.unshift(cc.indentComment(o,""))}let c=!1,u=null;if(r.contents){if(xM.isNode(r.contents)){if(r.contents.spaceBefore&&e)t.push("");if(r.contents.commentBefore){let g=_(r.contents.commentBefore);t.push(cc.indentComment(g,""))}i.forceBlockIndent=!!r.comment,u=r.contents.comment}let o=u?void 0:()=>c=!0,$=V6.stringify(r.contents,i,()=>u=null,o);if(u)$+=cc.lineComment($,"",_(u));if(($[0]==="|"||$[0]===">")&&t[t.length-1]==="---")t[t.length-1]=`--- ${$}`;else t.push($)}else t.push(V6.stringify(r.contents,i));if(r.directives?.docEnd)if(r.comment){let o=_(r.comment);if(o.includes(`
|
|
96
|
-
`))t.push("..."),t.push(cc.indentComment(o,""));else t.push(`... ${o}`)}else t.push("...");else{let o=r.comment;if(o&&c)o=o.replace(/^\n+/,"");if(o){if((!c||u)&&t[t.length-1]!=="")t.push("");t.push(cc.indentComment(_(o),""))}}return t.join(`
|
|
97
|
-
`)+`
|
|
98
|
-
`}sM.stringifyDocument=pM});var uc=P((oP)=>{var nP=Q_(),me=Bo(),On=C(),tP=Lt(),iP=qt(),eP=G6(),_P=PD(),F6=vo(),cP=_6(),uP=K_(),l6=e6();class v6{constructor(r,n,t){this.commentBefore=null,this.comment=null,this.errors=[],this.warnings=[],Object.defineProperty(this,On.NODE_TYPE,{value:On.DOC});let e=null;if(typeof n==="function"||Array.isArray(n))e=n;else if(t===void 0&&n)t=n,n=void 0;let i=Object.assign({intAsBigInt:!1,keepSourceTokens:!1,logLevel:"warn",prettyErrors:!0,strict:!0,stringKeys:!1,uniqueKeys:!0,version:"1.2"},t);this.options=i;let{version:_}=i;if(t?._directives){if(this.directives=t._directives.atDocument(),this.directives.yaml.explicit)_=this.directives.yaml.version}else this.directives=new l6.Directives({version:_});this.setSchema(_,t),this.contents=r===void 0?null:this.createNode(r,e,t)}clone(){let r=Object.create(v6.prototype,{[On.NODE_TYPE]:{value:On.DOC}});if(r.commentBefore=this.commentBefore,r.comment=this.comment,r.errors=this.errors.slice(),r.warnings=this.warnings.slice(),r.options=Object.assign({},this.options),this.directives)r.directives=this.directives.clone();if(r.schema=this.schema.clone(),r.contents=On.isNode(this.contents)?this.contents.clone(r.schema):this.contents,this.range)r.range=this.range.slice();return r}add(r){if(Ie(this.contents))this.contents.add(r)}addIn(r,n){if(Ie(this.contents))this.contents.addIn(r,n)}createAlias(r,n){if(!r.anchor){let t=F6.anchorNames(this);r.anchor=!n||t.has(n)?F6.findNewAnchor(n||"a",t):n}return new nP.Alias(r.anchor)}createNode(r,n,t){let e=void 0;if(typeof n==="function")r=n.call({"":r},"",r),e=n;else if(Array.isArray(n)){let w=(q)=>typeof q==="number"||q instanceof String||q instanceof Number,O=n.filter(w).map(String);if(O.length>0)n=n.concat(O);e=n}else if(t===void 0&&n)t=n,n=void 0;let{aliasDuplicateObjects:i,anchorPrefix:_,flow:c,keepUndefined:u,onTagObj:o,tag:$}=t??{},{onAnchor:g,setAnchors:d,sourceObjects:f}=F6.createNodeAnchors(this,_||"a"),b={aliasDuplicateObjects:i??!0,keepUndefined:u??!1,onAnchor:g,onTagObj:o,replacer:e,schema:this.schema,sourceObjects:f},m=uP.createNode(r,$,b);if(c&&On.isCollection(m))m.flow=!0;return d(),m}createPair(r,n,t={}){let e=this.createNode(r,null,t),i=this.createNode(n,null,t);return new tP.Pair(e,i)}delete(r){return Ie(this.contents)?this.contents.delete(r):!1}deleteIn(r){if(me.isEmptyPath(r)){if(this.contents==null)return!1;return this.contents=null,!0}return Ie(this.contents)?this.contents.deleteIn(r):!1}get(r,n){return On.isCollection(this.contents)?this.contents.get(r,n):void 0}getIn(r,n){if(me.isEmptyPath(r))return!n&&On.isScalar(this.contents)?this.contents.value:this.contents;return On.isCollection(this.contents)?this.contents.getIn(r,n):void 0}has(r){return On.isCollection(this.contents)?this.contents.has(r):!1}hasIn(r){if(me.isEmptyPath(r))return this.contents!==void 0;return On.isCollection(this.contents)?this.contents.hasIn(r):!1}set(r,n){if(this.contents==null)this.contents=me.collectionFromPath(this.schema,[r],n);else if(Ie(this.contents))this.contents.set(r,n)}setIn(r,n){if(me.isEmptyPath(r))this.contents=n;else if(this.contents==null)this.contents=me.collectionFromPath(this.schema,Array.from(r),n);else if(Ie(this.contents))this.contents.setIn(r,n)}setSchema(r,n={}){if(typeof r==="number")r=String(r);let t;switch(r){case"1.1":if(this.directives)this.directives.yaml.version="1.1";else this.directives=new l6.Directives({version:"1.1"});t={resolveKnownTags:!1,schema:"yaml-1.1"};break;case"1.2":case"next":if(this.directives)this.directives.yaml.version=r;else this.directives=new l6.Directives({version:r});t={resolveKnownTags:!0,schema:"core"};break;case null:if(this.directives)delete this.directives;t=null;break;default:{let e=JSON.stringify(r);throw Error(`Expected '1.1', '1.2' or null as first argument, but found: ${e}`)}}if(n.schema instanceof Object)this.schema=n.schema;else if(t)this.schema=new eP.Schema(Object.assign(t,n));else throw Error("With a null YAML version, the { schema: Schema } option is required")}toJS({json:r,jsonArg:n,mapAsMap:t,maxAliasCount:e,onAnchor:i,reviver:_}={}){let c={anchors:new Map,doc:this,keep:!r,mapAsMap:t===!0,mapKeyWarned:!1,maxAliasCount:typeof e==="number"?e:100},u=iP.toJS(this.contents,n??"",c);if(typeof i==="function")for(let{count:o,res:$}of c.anchors.values())i($,o);return typeof _==="function"?cP.applyReviver(_,{"":u},"",u):u}toJSON(r,n){return this.toJS({json:!0,jsonArg:r,mapAsMap:!1,onAnchor:n})}toString(r={}){if(this.errors.length>0)throw Error("Document with errors cannot be stringified");if("indent"in r&&(!Number.isInteger(r.indent)||Number(r.indent)<=0)){let n=JSON.stringify(r.indent);throw Error(`"indent" option must be a positive integer, not ${n}`)}return _P.stringifyDocument(this,r)}}function Ie(r){if(On.isCollection(r))return!0;throw Error("Expected a YAML collection as document contents")}oP.Document=v6});var oc=P((dP)=>{class O$ extends Error{constructor(r,n,t,e){super();this.name=r,this.code=t,this.message=e,this.pos=n}}class kD extends O${constructor(r,n,t){super("YAMLParseError",r,n,t)}}class XD extends O${constructor(r,n,t){super("YAMLWarning",r,n,t)}}var gP=(r,n)=>(t)=>{if(t.pos[0]===-1)return;t.linePos=t.pos.map((u)=>n.linePos(u));let{line:e,col:i}=t.linePos[0];t.message+=` at line ${e}, column ${i}`;let _=i-1,c=r.substring(n.lineStarts[e-1],n.lineStarts[e]).replace(/[\n\r]+$/,"");if(_>=60&&c.length>80){let u=Math.min(_-39,c.length-79);c="\u2026"+c.substring(u),_-=u-1}if(c.length>80)c=c.substring(0,79)+"\u2026";if(e>1&&/^ *$/.test(c.substring(0,_))){let u=r.substring(n.lineStarts[e-2],n.lineStarts[e-1]);if(u.length>80)u=u.substring(0,79)+`\u2026
|
|
99
|
-
`;c=u+c}if(/[^ ]/.test(c)){let u=1,o=t.linePos[1];if(o?.line===e&&o.col>i)u=Math.max(1,Math.min(o.col-i,80-_));let $=" ".repeat(_)+"^".repeat(u);t.message+=`:
|
|
100
|
-
|
|
101
|
-
${c}
|
|
102
|
-
${$}
|
|
103
|
-
`}};dP.YAMLError=O$;dP.YAMLParseError=kD;dP.YAMLWarning=XD;dP.prettifyError=gP});var $c=P((OP)=>{function IP(r,{flow:n,indicator:t,next:e,offset:i,onError:_,parentIndent:c,startOnNewline:u}){let o=!1,$=u,g=u,d="",f="",b=!1,m=!1,w=null,O=null,q=null,T=null,R=null,j=null,J=null;for(let L of r){if(m){if(L.type!=="space"&&L.type!=="newline"&&L.type!=="comma")_(L.offset,"MISSING_CHAR","Tags and anchors must be separated from the next token by white space");m=!1}if(w){if($&&L.type!=="comment"&&L.type!=="newline")_(w,"TAB_AS_INDENT","Tabs are not allowed as indentation");w=null}switch(L.type){case"space":if(!n&&(t!=="doc-start"||e?.type!=="flow-collection")&&L.source.includes("\t"))w=L;g=!0;break;case"comment":{if(!g)_(L,"MISSING_CHAR","Comments must be separated from other tokens by white space characters");let Y=L.source.substring(1)||" ";if(!d)d=Y;else d+=f+Y;f="",$=!1;break}case"newline":if($){if(d)d+=L.source;else if(!j||t!=="seq-item-ind")o=!0}else f+=L.source;if($=!0,b=!0,O||q)T=L;g=!0;break;case"anchor":if(O)_(L,"MULTIPLE_ANCHORS","A node can have at most one anchor");if(L.source.endsWith(":"))_(L.offset+L.source.length-1,"BAD_ALIAS","Anchor ending in : is ambiguous",!0);O=L,J??(J=L.offset),$=!1,g=!1,m=!0;break;case"tag":{if(q)_(L,"MULTIPLE_TAGS","A node can have at most one tag");q=L,J??(J=L.offset),$=!1,g=!1,m=!0;break}case t:if(O||q)_(L,"BAD_PROP_ORDER",`Anchors and tags must be after the ${L.source} indicator`);if(j)_(L,"UNEXPECTED_TOKEN",`Unexpected ${L.source} in ${n??"collection"}`);j=L,$=t==="seq-item-ind"||t==="explicit-key-ind",g=!1;break;case"comma":if(n){if(R)_(L,"UNEXPECTED_TOKEN",`Unexpected , in ${n}`);R=L,$=!1,g=!1;break}default:_(L,"UNEXPECTED_TOKEN",`Unexpected ${L.type} token`),$=!1,g=!1}}let k=r[r.length-1],Q=k?k.offset+k.source.length:i;if(m&&e&&e.type!=="space"&&e.type!=="newline"&&e.type!=="comma"&&(e.type!=="scalar"||e.source!==""))_(e.offset,"MISSING_CHAR","Tags and anchors must be separated from the next token by white space");if(w&&($&&w.indent<=c||e?.type==="block-map"||e?.type==="block-seq"))_(w,"TAB_AS_INDENT","Tabs are not allowed as indentation");return{comma:R,found:j,spaceBefore:o,comment:d,hasNewline:b,anchor:O,tag:q,newlineAfterProp:T,end:Q,start:J??Q}}OP.resolveProps=IP});var U$=P((hP)=>{function Y6(r){if(!r)return null;switch(r.type){case"alias":case"scalar":case"double-quoted-scalar":case"single-quoted-scalar":if(r.source.includes(`
|
|
104
|
-
`))return!0;if(r.end){for(let n of r.end)if(n.type==="newline")return!0}return!1;case"flow-collection":for(let n of r.items){for(let t of n.start)if(t.type==="newline")return!0;if(n.sep){for(let t of n.sep)if(t.type==="newline")return!0}if(Y6(n.key)||Y6(n.value))return!0}return!1;default:return!0}}hP.containsNewline=Y6});var H6=P((qP)=>{var DP=U$();function yP(r,n,t){if(n?.type==="flow-collection"){let e=n.end[0];if(e.indent===r&&(e.source==="]"||e.source==="}")&&DP.containsNewline(n))t(e,"BAD_INDENT","Flow end indicator should be more indented than parent",!0)}}qP.flowIndentCheck=yP});var B6=P((LP)=>{var GD=C();function NP(r,n,t){let{uniqueKeys:e}=r.options;if(e===!1)return!1;let i=typeof e==="function"?e:(_,c)=>_===c||GD.isScalar(_)&&GD.isScalar(c)&&_.value===c.value;return n.some((_)=>i(_.key,t))}LP.mapIncludes=NP});var YD=P((JP)=>{var VD=Lt(),SP=St(),FD=$c(),WP=U$(),lD=H6(),EP=B6(),vD="All mapping items must start at the same column";function jP({composeNode:r,composeEmptyNode:n},t,e,i,_){let u=new(_?.nodeClass??SP.YAMLMap)(t.schema);if(t.atRoot)t.atRoot=!1;let o=e.offset,$=null;for(let g of e.items){let{start:d,key:f,sep:b,value:m}=g,w=FD.resolveProps(d,{indicator:"explicit-key-ind",next:f??b?.[0],offset:o,onError:i,parentIndent:e.indent,startOnNewline:!0}),O=!w.found;if(O){if(f){if(f.type==="block-seq")i(o,"BLOCK_AS_IMPLICIT_KEY","A block sequence may not be used as an implicit map key");else if("indent"in f&&f.indent!==e.indent)i(o,"BAD_INDENT",vD)}if(!w.anchor&&!w.tag&&!b){if($=w.end,w.comment)if(u.comment)u.comment+=`
|
|
105
|
-
`+w.comment;else u.comment=w.comment;continue}if(w.newlineAfterProp||WP.containsNewline(f))i(f??d[d.length-1],"MULTILINE_IMPLICIT_KEY","Implicit keys need to be on a single line")}else if(w.found?.indent!==e.indent)i(o,"BAD_INDENT",vD);t.atKey=!0;let q=w.end,T=f?r(t,f,w,i):n(t,q,d,null,w,i);if(t.schema.compat)lD.flowIndentCheck(e.indent,f,i);if(t.atKey=!1,EP.mapIncludes(t,u.items,T))i(q,"DUPLICATE_KEY","Map keys must be unique");let R=FD.resolveProps(b??[],{indicator:"map-value-ind",next:m,offset:T.range[2],onError:i,parentIndent:e.indent,startOnNewline:!f||f.type==="block-scalar"});if(o=R.end,R.found){if(O){if(m?.type==="block-map"&&!R.hasNewline)i(o,"BLOCK_AS_IMPLICIT_KEY","Nested mappings are not allowed in compact mappings");if(t.options.strict&&w.start<R.found.offset-1024)i(T.range,"KEY_OVER_1024_CHARS","The : indicator must be at most 1024 chars after the start of an implicit block mapping key")}let j=m?r(t,m,R,i):n(t,o,b,null,R,i);if(t.schema.compat)lD.flowIndentCheck(e.indent,m,i);o=j.range[2];let J=new VD.Pair(T,j);if(t.options.keepSourceTokens)J.srcToken=g;u.items.push(J)}else{if(O)i(T.range,"MISSING_CHAR","Implicit map keys need to be followed by map values");if(R.comment)if(T.comment)T.comment+=`
|
|
106
|
-
`+R.comment;else T.comment=R.comment;let j=new VD.Pair(T);if(t.options.keepSourceTokens)j.srcToken=g;u.items.push(j)}}if($&&$<o)i($,"IMPOSSIBLE","Map comment with trailing content");return u.range=[e.offset,o,$??o],u}JP.resolveBlockMap=jP});var HD=P((GP)=>{var MP=Wt(),PP=$c(),kP=H6();function XP({composeNode:r,composeEmptyNode:n},t,e,i,_){let u=new(_?.nodeClass??MP.YAMLSeq)(t.schema);if(t.atRoot)t.atRoot=!1;if(t.atKey)t.atKey=!1;let o=e.offset,$=null;for(let{start:g,value:d}of e.items){let f=PP.resolveProps(g,{indicator:"seq-item-ind",next:d,offset:o,onError:i,parentIndent:e.indent,startOnNewline:!0});if(!f.found)if(f.anchor||f.tag||d)if(d?.type==="block-seq")i(f.end,"BAD_INDENT","All sequence items must start at the same column");else i(o,"MISSING_CHAR","Sequence item without - indicator");else{if($=f.end,f.comment)u.comment=f.comment;continue}let b=d?r(t,d,f,i):n(t,f.end,g,null,f,i);if(t.schema.compat)kP.flowIndentCheck(e.indent,d,i);o=b.range[2],u.items.push(b)}return u.range=[e.offset,o,$??o],u}GP.resolveBlockSeq=XP});var Oe=P((lP)=>{function FP(r,n,t,e){let i="";if(r){let _=!1,c="";for(let u of r){let{source:o,type:$}=u;switch($){case"space":_=!0;break;case"comment":{if(t&&!_)e(u,"MISSING_CHAR","Comments must be separated from other tokens by white space characters");let g=o.substring(1)||" ";if(!i)i=g;else i+=c+g;c="";break}case"newline":if(i)c+=o;_=!0;break;default:e(u,"UNEXPECTED_TOKEN",`Unexpected ${$} at node end`)}n+=o.length}}return{comment:i,offset:n}}lP.resolveEnd=FP});var KD=P((CP)=>{var YP=C(),HP=Lt(),BD=St(),BP=Wt(),QP=Oe(),QD=$c(),KP=U$(),aP=B6(),Q6="Block collections are not allowed within flow collections",K6=(r)=>r&&(r.type==="block-map"||r.type==="block-seq");function ZP({composeNode:r,composeEmptyNode:n},t,e,i,_){let c=e.start.source==="{",u=c?"flow map":"flow sequence",$=new(_?.nodeClass??(c?BD.YAMLMap:BP.YAMLSeq))(t.schema);$.flow=!0;let g=t.atRoot;if(g)t.atRoot=!1;if(t.atKey)t.atKey=!1;let d=e.offset+e.start.source.length;for(let O=0;O<e.items.length;++O){let q=e.items[O],{start:T,key:R,sep:j,value:J}=q,k=QD.resolveProps(T,{flow:u,indicator:"explicit-key-ind",next:R??j?.[0],offset:d,onError:i,parentIndent:e.indent,startOnNewline:!1});if(!k.found){if(!k.anchor&&!k.tag&&!j&&!J){if(O===0&&k.comma)i(k.comma,"UNEXPECTED_TOKEN",`Unexpected , in ${u}`);else if(O<e.items.length-1)i(k.start,"UNEXPECTED_TOKEN",`Unexpected empty item in ${u}`);if(k.comment)if($.comment)$.comment+=`
|
|
107
|
-
`+k.comment;else $.comment=k.comment;d=k.end;continue}if(!c&&t.options.strict&&KP.containsNewline(R))i(R,"MULTILINE_IMPLICIT_KEY","Implicit keys of flow sequence pairs need to be on a single line")}if(O===0){if(k.comma)i(k.comma,"UNEXPECTED_TOKEN",`Unexpected , in ${u}`)}else{if(!k.comma)i(k.start,"MISSING_CHAR",`Missing , between ${u} items`);if(k.comment){let Q="";r:for(let L of T)switch(L.type){case"comma":case"space":break;case"comment":Q=L.source.substring(1);break r;default:break r}if(Q){let L=$.items[$.items.length-1];if(YP.isPair(L))L=L.value??L.key;if(L.comment)L.comment+=`
|
|
108
|
-
`+Q;else L.comment=Q;k.comment=k.comment.substring(Q.length+1)}}}if(!c&&!j&&!k.found){let Q=J?r(t,J,k,i):n(t,k.end,j,null,k,i);if($.items.push(Q),d=Q.range[2],K6(J))i(Q.range,"BLOCK_IN_FLOW",Q6)}else{t.atKey=!0;let Q=k.end,L=R?r(t,R,k,i):n(t,Q,T,null,k,i);if(K6(R))i(L.range,"BLOCK_IN_FLOW",Q6);t.atKey=!1;let Y=QD.resolveProps(j??[],{flow:u,indicator:"map-value-ind",next:J,offset:L.range[2],onError:i,parentIndent:e.indent,startOnNewline:!1});if(Y.found){if(!c&&!k.found&&t.options.strict){if(j)for(let ur of j){if(ur===Y.found)break;if(ur.type==="newline"){i(ur,"MULTILINE_IMPLICIT_KEY","Implicit keys of flow sequence pairs need to be on a single line");break}}if(k.start<Y.found.offset-1024)i(Y.found,"KEY_OVER_1024_CHARS","The : indicator must be at most 1024 chars after the start of an implicit flow sequence key")}}else if(J)if("source"in J&&J.source?.[0]===":")i(J,"MISSING_CHAR",`Missing space after : in ${u}`);else i(Y.start,"MISSING_CHAR",`Missing , or : between ${u} items`);let V=J?r(t,J,Y,i):Y.found?n(t,Y.end,j,null,Y,i):null;if(V){if(K6(J))i(V.range,"BLOCK_IN_FLOW",Q6)}else if(Y.comment)if(L.comment)L.comment+=`
|
|
109
|
-
`+Y.comment;else L.comment=Y.comment;let Sr=new HP.Pair(L,V);if(t.options.keepSourceTokens)Sr.srcToken=q;if(c){let ur=$;if(aP.mapIncludes(t,ur.items,L))i(Q,"DUPLICATE_KEY","Map keys must be unique");ur.items.push(Sr)}else{let ur=new BD.YAMLMap(t.schema);ur.flow=!0,ur.items.push(Sr);let se=(V??L).range;ur.range=[L.range[0],se[1],se[2]],$.items.push(ur)}d=V?V.range[2]:Y.end}}let f=c?"}":"]",[b,...m]=e.end,w=d;if(b?.source===f)w=b.offset+b.source.length;else{let O=u[0].toUpperCase()+u.substring(1),q=g?`${O} must end with a ${f}`:`${O} in block collection must be sufficiently indented and end with a ${f}`;if(i(d,g?"MISSING_CHAR":"BAD_INDENT",q),b&&b.source.length!==1)m.unshift(b)}if(m.length>0){let O=QP.resolveEnd(m,w,t.options.strict,i);if(O.comment)if($.comment)$.comment+=`
|
|
110
|
-
`+O.comment;else $.comment=O.comment;$.range=[e.offset,w,O.offset]}else $.range=[e.offset,w,w];return $}CP.resolveFlowCollection=ZP});var aD=P((ck)=>{var pP=C(),sP=Or(),rk=St(),nk=Wt(),tk=YD(),ik=HD(),ek=KD();function a6(r,n,t,e,i,_){let c=t.type==="block-map"?tk.resolveBlockMap(r,n,t,e,_):t.type==="block-seq"?ik.resolveBlockSeq(r,n,t,e,_):ek.resolveFlowCollection(r,n,t,e,_),u=c.constructor;if(i==="!"||i===u.tagName)return c.tag=u.tagName,c;if(i)c.tag=i;return c}function _k(r,n,t,e,i){let _=e.tag,c=!_?null:n.directives.tagName(_.source,(f)=>i(_,"TAG_RESOLVE_FAILED",f));if(t.type==="block-seq"){let{anchor:f,newlineAfterProp:b}=e,m=f&&_?f.offset>_.offset?f:_:f??_;if(m&&(!b||b.offset<m.offset))i(m,"MISSING_CHAR","Missing newline after block sequence props")}let u=t.type==="block-map"?"map":t.type==="block-seq"?"seq":t.start.source==="{"?"map":"seq";if(!_||!c||c==="!"||c===rk.YAMLMap.tagName&&u==="map"||c===nk.YAMLSeq.tagName&&u==="seq")return a6(r,n,t,i,c);let o=n.schema.tags.find((f)=>f.tag===c&&f.collection===u);if(!o){let f=n.schema.knownTags[c];if(f?.collection===u)n.schema.tags.push(Object.assign({},f,{default:!1})),o=f;else{if(f)i(_,"BAD_COLLECTION_TYPE",`${f.tag} used for ${u} collection, but expects ${f.collection??"scalar"}`,!0);else i(_,"TAG_RESOLVE_FAILED",`Unresolved tag: ${c}`,!0);return a6(r,n,t,i,c)}}let $=a6(r,n,t,i,c,o),g=o.resolve?.($,(f)=>i(_,"TAG_RESOLVE_FAILED",f),n.options)??$,d=pP.isNode(g)?g:new sP.Scalar(g);if(d.range=$.range,d.tag=c,o?.format)d.format=o.format;return d}ck.composeCollection=_k});var C6=P((dk)=>{var Z6=Or();function ok(r,n,t){let e=n.offset,i=$k(n,r.options.strict,t);if(!i)return{value:"",type:null,comment:"",range:[e,e,e]};let _=i.mode===">"?Z6.Scalar.BLOCK_FOLDED:Z6.Scalar.BLOCK_LITERAL,c=n.source?gk(n.source):[],u=c.length;for(let w=c.length-1;w>=0;--w){let O=c[w][1];if(O===""||O==="\r")u=w;else break}if(u===0){let w=i.chomp==="+"&&c.length>0?`
|
|
111
|
-
`.repeat(Math.max(1,c.length-1)):"",O=e+i.length;if(n.source)O+=n.source.length;return{value:w,type:_,comment:i.comment,range:[e,O,O]}}let o=n.indent+i.indent,$=n.offset+i.length,g=0;for(let w=0;w<u;++w){let[O,q]=c[w];if(q===""||q==="\r"){if(i.indent===0&&O.length>o)o=O.length}else{if(O.length<o)t($+O.length,"MISSING_CHAR","Block scalars with more-indented leading empty lines must use an explicit indentation indicator");if(i.indent===0)o=O.length;if(g=w,o===0&&!r.atRoot)t($,"BAD_INDENT","Block scalar values in collections must be indented");break}$+=O.length+q.length+1}for(let w=c.length-1;w>=u;--w)if(c[w][0].length>o)u=w+1;let d="",f="",b=!1;for(let w=0;w<g;++w)d+=c[w][0].slice(o)+`
|
|
112
|
-
`;for(let w=g;w<u;++w){let[O,q]=c[w];$+=O.length+q.length+1;let T=q[q.length-1]==="\r";if(T)q=q.slice(0,-1);if(q&&O.length<o){let j=`Block scalar lines must not be less indented than their ${i.indent?"explicit indentation indicator":"first line"}`;t($-q.length-(T?2:1),"BAD_INDENT",j),O=""}if(_===Z6.Scalar.BLOCK_LITERAL)d+=f+O.slice(o)+q,f=`
|
|
113
|
-
`;else if(O.length>o||q[0]==="\t"){if(f===" ")f=`
|
|
114
|
-
`;else if(!b&&f===`
|
|
115
|
-
`)f=`
|
|
116
|
-
|
|
117
|
-
`;d+=f+O.slice(o)+q,f=`
|
|
118
|
-
`,b=!0}else if(q==="")if(f===`
|
|
119
|
-
`)d+=`
|
|
120
|
-
`;else f=`
|
|
121
|
-
`;else d+=f+q,f=" ",b=!1}switch(i.chomp){case"-":break;case"+":for(let w=u;w<c.length;++w)d+=`
|
|
122
|
-
`+c[w][0].slice(o);if(d[d.length-1]!==`
|
|
123
|
-
`)d+=`
|
|
124
|
-
`;break;default:d+=`
|
|
125
|
-
`}let m=e+i.length+n.source.length;return{value:d,type:_,comment:i.comment,range:[e,m,m]}}function $k({offset:r,props:n},t,e){if(n[0].type!=="block-scalar-header")return e(n[0],"IMPOSSIBLE","Block scalar header not found"),null;let{source:i}=n[0],_=i[0],c=0,u="",o=-1;for(let f=1;f<i.length;++f){let b=i[f];if(!u&&(b==="-"||b==="+"))u=b;else{let m=Number(b);if(!c&&m)c=m;else if(o===-1)o=r+f}}if(o!==-1)e(o,"UNEXPECTED_TOKEN",`Block scalar header includes extra characters: ${i}`);let $=!1,g="",d=i.length;for(let f=1;f<n.length;++f){let b=n[f];switch(b.type){case"space":$=!0;case"newline":d+=b.source.length;break;case"comment":if(t&&!$)e(b,"MISSING_CHAR","Comments must be separated from other tokens by white space characters");d+=b.source.length,g=b.source.substring(1);break;case"error":e(b,"UNEXPECTED_TOKEN",b.message),d+=b.source.length;break;default:{let m=`Unexpected token in block scalar header: ${b.type}`;e(b,"UNEXPECTED_TOKEN",m);let w=b.source;if(w&&typeof w==="string")d+=w.length}}}return{mode:_,indent:c,chomp:u,comment:g,length:d}}function gk(r){let n=r.split(/\n( *)/),t=n[0],e=t.match(/^( *)/),_=[e?.[1]?[e[1],t.slice(e[1].length)]:["",t]];for(let c=1;c<n.length;c+=2)_.push([n[c],n[c+1]]);return _}dk.resolveBlockScalar=ok});var p6=P((Dk)=>{var x6=Or(),bk=Oe();function wk(r,n,t){let{offset:e,type:i,source:_,end:c}=r,u,o,$=(f,b,m)=>t(e+f,b,m);switch(i){case"scalar":u=x6.Scalar.PLAIN,o=mk(_,$);break;case"single-quoted-scalar":u=x6.Scalar.QUOTE_SINGLE,o=Ik(_,$);break;case"double-quoted-scalar":u=x6.Scalar.QUOTE_DOUBLE,o=Ok(_,$);break;default:return t(r,"UNEXPECTED_TOKEN",`Expected a flow scalar value, but found: ${i}`),{value:"",type:null,comment:"",range:[e,e+_.length,e+_.length]}}let g=e+_.length,d=bk.resolveEnd(c,g,n,t);return{value:o,type:u,comment:d.comment,range:[e,g,d.offset]}}function mk(r,n){let t="";switch(r[0]){case"\t":t="a tab character";break;case",":t="flow indicator character ,";break;case"%":t="directive indicator character %";break;case"|":case">":{t=`block scalar indicator ${r[0]}`;break}case"@":case"`":{t=`reserved character ${r[0]}`;break}}if(t)n(0,"BAD_SCALAR_START",`Plain value cannot start with ${t}`);return ZD(r)}function Ik(r,n){if(r[r.length-1]!=="'"||r.length===1)n(r.length,"MISSING_CHAR","Missing closing 'quote");return ZD(r.slice(1,-1)).replace(/''/g,"'")}function ZD(r){let n,t;try{n=new RegExp(`(.*?)(?<![ ])[ ]*\r?
|
|
126
|
-
`,"sy"),t=new RegExp(`[ ]*(.*?)(?:(?<![ ])[ ]*)?\r?
|
|
127
|
-
`,"sy")}catch{n=/(.*?)[ \t]*\r?\n/sy,t=/[ \t]*(.*?)[ \t]*\r?\n/sy}let e=n.exec(r);if(!e)return r;let i=e[1],_=" ",c=n.lastIndex;t.lastIndex=c;while(e=t.exec(r)){if(e[1]==="")if(_===`
|
|
128
|
-
`)i+=_;else _=`
|
|
129
|
-
`;else i+=_+e[1],_=" ";c=t.lastIndex}let u=/[ \t]*(.*)/sy;return u.lastIndex=c,e=u.exec(r),i+_+(e?.[1]??"")}function Ok(r,n){let t="";for(let e=1;e<r.length-1;++e){let i=r[e];if(i==="\r"&&r[e+1]===`
|
|
130
|
-
`)continue;if(i===`
|
|
131
|
-
`){let{fold:_,offset:c}=Uk(r,e);t+=_,e=c}else if(i==="\\"){let _=r[++e],c=hk[_];if(c)t+=c;else if(_===`
|
|
132
|
-
`){_=r[e+1];while(_===" "||_==="\t")_=r[++e+1]}else if(_==="\r"&&r[e+1]===`
|
|
133
|
-
`){_=r[++e+1];while(_===" "||_==="\t")_=r[++e+1]}else if(_==="x"||_==="u"||_==="U"){let u={x:2,u:4,U:8}[_];t+=Rk(r,e+1,u,n),e+=u}else{let u=r.substr(e-1,2);n(e-1,"BAD_DQ_ESCAPE",`Invalid escape sequence ${u}`),t+=u}}else if(i===" "||i==="\t"){let _=e,c=r[e+1];while(c===" "||c==="\t")c=r[++e+1];if(c!==`
|
|
134
|
-
`&&!(c==="\r"&&r[e+2]===`
|
|
135
|
-
`))t+=e>_?r.slice(_,e+1):i}else t+=i}if(r[r.length-1]!=='"'||r.length===1)n(r.length,"MISSING_CHAR",'Missing closing "quote');return t}function Uk(r,n){let t="",e=r[n+1];while(e===" "||e==="\t"||e===`
|
|
136
|
-
`||e==="\r"){if(e==="\r"&&r[n+2]!==`
|
|
137
|
-
`)break;if(e===`
|
|
138
|
-
`)t+=`
|
|
139
|
-
`;n+=1,e=r[n+1]}if(!t)t=" ";return{fold:t,offset:n}}var hk={"0":"\x00",a:"\x07",b:"\b",e:"\x1B",f:"\f",n:`
|
|
140
|
-
`,r:"\r",t:"\t",v:"\v",N:"\x85",_:"\xA0",L:"\u2028",P:"\u2029"," ":" ",'"':'"',"/":"/","\\":"\\","\t":"\t"};function Rk(r,n,t,e){let i=r.substr(n,t),c=i.length===t&&/^[0-9a-fA-F]+$/.test(i)?parseInt(i,16):NaN;if(isNaN(c)){let u=r.substr(n-2,t+2);return e(n-2,"BAD_DQ_ESCAPE",`Invalid escape sequence ${u}`),u}return String.fromCodePoint(c)}Dk.resolveFlowScalar=wk});var xD=P((Sk)=>{var oi=C(),CD=Or(),qk=C6(),Tk=p6();function Nk(r,n,t,e){let{value:i,type:_,comment:c,range:u}=n.type==="block-scalar"?qk.resolveBlockScalar(r,n,e):Tk.resolveFlowScalar(n,r.options.strict,e),o=t?r.directives.tagName(t.source,(d)=>e(t,"TAG_RESOLVE_FAILED",d)):null,$;if(r.options.stringKeys&&r.atKey)$=r.schema[oi.SCALAR];else if(o)$=Lk(r.schema,i,o,t,e);else if(n.type==="scalar")$=zk(r,i,n,e);else $=r.schema[oi.SCALAR];let g;try{let d=$.resolve(i,(f)=>e(t??n,"TAG_RESOLVE_FAILED",f),r.options);g=oi.isScalar(d)?d:new CD.Scalar(d)}catch(d){let f=d instanceof Error?d.message:String(d);e(t??n,"TAG_RESOLVE_FAILED",f),g=new CD.Scalar(i)}if(g.range=u,g.source=i,_)g.type=_;if(o)g.tag=o;if($.format)g.format=$.format;if(c)g.comment=c;return g}function Lk(r,n,t,e,i){if(t==="!")return r[oi.SCALAR];let _=[];for(let u of r.tags)if(!u.collection&&u.tag===t)if(u.default&&u.test)_.push(u);else return u;for(let u of _)if(u.test?.test(n))return u;let c=r.knownTags[t];if(c&&!c.collection)return r.tags.push(Object.assign({},c,{default:!1,test:void 0})),c;return i(e,"TAG_RESOLVE_FAILED",`Unresolved tag: ${t}`,t!=="tag:yaml.org,2002:str"),r[oi.SCALAR]}function zk({atKey:r,directives:n,schema:t},e,i,_){let c=t.tags.find((u)=>(u.default===!0||r&&u.default==="key")&&u.test?.test(e))||t[oi.SCALAR];if(t.compat){let u=t.compat.find((o)=>o.default&&o.test?.test(e))??t[oi.SCALAR];if(c.tag!==u.tag){let o=n.tagString(c.tag),$=n.tagString(u.tag),g=`Value may be parsed as either ${o} or ${$}`;_(i,"TAG_RESOLVE_FAILED",g,!0)}}return c}Sk.composeScalar=Nk});var pD=P((jk)=>{function Ek(r,n,t){if(n){t??(t=n.length);for(let e=t-1;e>=0;--e){let i=n[e];switch(i.type){case"space":case"comment":case"newline":r-=i.source.length;continue}i=n[++e];while(i?.type==="space")r+=i.source.length,i=n[++e];break}}return r}jk.emptyScalarPosition=Ek});var n1=P((Fk)=>{var Ak=Q_(),Mk=C(),Pk=aD(),sD=xD(),kk=Oe(),Xk=pD(),Gk={composeNode:r1,composeEmptyNode:s6};function r1(r,n,t,e){let i=r.atKey,{spaceBefore:_,comment:c,anchor:u,tag:o}=t,$,g=!0;switch(n.type){case"alias":if($=Vk(r,n,e),u||o)e(n,"ALIAS_PROPS","An alias node must not specify any properties");break;case"scalar":case"single-quoted-scalar":case"double-quoted-scalar":case"block-scalar":if($=sD.composeScalar(r,n,o,e),u)$.anchor=u.source.substring(1);break;case"block-map":case"block-seq":case"flow-collection":try{if($=Pk.composeCollection(Gk,r,n,t,e),u)$.anchor=u.source.substring(1)}catch(d){let f=d instanceof Error?d.message:String(d);e(n,"RESOURCE_EXHAUSTION",f)}break;default:{let d=n.type==="error"?n.message:`Unsupported token (type: ${n.type})`;e(n,"UNEXPECTED_TOKEN",d),g=!1}}if($??($=s6(r,n.offset,void 0,null,t,e)),u&&$.anchor==="")e(u,"BAD_ALIAS","Anchor cannot be an empty string");if(i&&r.options.stringKeys&&(!Mk.isScalar($)||typeof $.value!=="string"||$.tag&&$.tag!=="tag:yaml.org,2002:str"))e(o??n,"NON_STRING_KEY","With stringKeys, all keys must be strings");if(_)$.spaceBefore=!0;if(c)if(n.type==="scalar"&&n.source==="")$.comment=c;else $.commentBefore=c;if(r.options.keepSourceTokens&&g)$.srcToken=n;return $}function s6(r,n,t,e,{spaceBefore:i,comment:_,anchor:c,tag:u,end:o},$){let g={type:"scalar",offset:Xk.emptyScalarPosition(n,t,e),indent:-1,source:""},d=sD.composeScalar(r,g,u,$);if(c){if(d.anchor=c.source.substring(1),d.anchor==="")$(c,"BAD_ALIAS","Anchor cannot be an empty string")}if(i)d.spaceBefore=!0;if(_)d.comment=_,d.range[2]=o;return d}function Vk({options:r},{offset:n,source:t,end:e},i){let _=new Ak.Alias(t.substring(1));if(_.source==="")i(n,"BAD_ALIAS","Alias cannot be an empty string");if(_.source.endsWith(":"))i(n+t.length-1,"BAD_ALIAS","Alias ending in : is ambiguous",!0);let c=n+t.length,u=kk.resolveEnd(e,c,r.strict,i);if(_.range=[n,c,u.offset],u.comment)_.comment=u.comment;return _}Fk.composeEmptyNode=s6;Fk.composeNode=r1});var i1=P((Kk)=>{var Yk=uc(),t1=n1(),Hk=Oe(),Bk=$c();function Qk(r,n,{offset:t,start:e,value:i,end:_},c){let u=Object.assign({_directives:n},r),o=new Yk.Document(void 0,u),$={atKey:!1,atRoot:!0,directives:o.directives,options:o.options,schema:o.schema},g=Bk.resolveProps(e,{indicator:"doc-start",next:i??_?.[0],offset:t,onError:c,parentIndent:0,startOnNewline:!0});if(g.found){if(o.directives.docStart=!0,i&&(i.type==="block-map"||i.type==="block-seq")&&!g.hasNewline)c(g.end,"MISSING_CHAR","Block collection cannot start on same line with directives-end marker")}o.contents=i?t1.composeNode($,i,g,c):t1.composeEmptyNode($,g.end,e,null,g,c);let d=o.contents.range[2],f=Hk.resolveEnd(_,d,!1,c);if(f.comment)o.comment=f.comment;return o.range=[t,d,f.offset],o}Kk.composeDoc=Qk});var r4=P((rX)=>{var Zk=Kc("process"),Ck=e6(),xk=uc(),gc=oc(),e1=C(),pk=i1(),sk=Oe();function dc(r){if(typeof r==="number")return[r,r+1];if(Array.isArray(r))return r.length===2?r:[r[0],r[1]];let{offset:n,source:t}=r;return[n,n+(typeof t==="string"?t.length:1)]}function _1(r){let n="",t=!1,e=!1;for(let i=0;i<r.length;++i){let _=r[i];switch(_[0]){case"#":n+=(n===""?"":e?`
|
|
141
|
-
|
|
142
|
-
`:`
|
|
143
|
-
`)+(_.substring(1)||" "),t=!0,e=!1;break;case"%":if(r[i+1]?.[0]!=="#")i+=1;t=!1;break;default:if(!t)e=!0;t=!1}}return{comment:n,afterEmptyLine:e}}class c1{constructor(r={}){this.doc=null,this.atDirectives=!1,this.prelude=[],this.errors=[],this.warnings=[],this.onError=(n,t,e,i)=>{let _=dc(n);if(i)this.warnings.push(new gc.YAMLWarning(_,t,e));else this.errors.push(new gc.YAMLParseError(_,t,e))},this.directives=new Ck.Directives({version:r.version||"1.2"}),this.options=r}decorate(r,n){let{comment:t,afterEmptyLine:e}=_1(this.prelude);if(t){let i=r.contents;if(n)r.comment=r.comment?`${r.comment}
|
|
144
|
-
${t}`:t;else if(e||r.directives.docStart||!i)r.commentBefore=t;else if(e1.isCollection(i)&&!i.flow&&i.items.length>0){let _=i.items[0];if(e1.isPair(_))_=_.key;let c=_.commentBefore;_.commentBefore=c?`${t}
|
|
145
|
-
${c}`:t}else{let _=i.commentBefore;i.commentBefore=_?`${t}
|
|
146
|
-
${_}`:t}}if(n)Array.prototype.push.apply(r.errors,this.errors),Array.prototype.push.apply(r.warnings,this.warnings);else r.errors=this.errors,r.warnings=this.warnings;this.prelude=[],this.errors=[],this.warnings=[]}streamInfo(){return{comment:_1(this.prelude).comment,directives:this.directives,errors:this.errors,warnings:this.warnings}}*compose(r,n=!1,t=-1){for(let e of r)yield*this.next(e);yield*this.end(n,t)}*next(r){if(Zk.env.LOG_STREAM)console.dir(r,{depth:null});switch(r.type){case"directive":this.directives.add(r.source,(n,t,e)=>{let i=dc(r);i[0]+=n,this.onError(i,"BAD_DIRECTIVE",t,e)}),this.prelude.push(r.source),this.atDirectives=!0;break;case"document":{let n=pk.composeDoc(this.options,this.directives,r,this.onError);if(this.atDirectives&&!n.directives.docStart)this.onError(r,"MISSING_CHAR","Missing directives-end/doc-start indicator line");if(this.decorate(n,!1),this.doc)yield this.doc;this.doc=n,this.atDirectives=!1;break}case"byte-order-mark":case"space":break;case"comment":case"newline":this.prelude.push(r.source);break;case"error":{let n=r.source?`${r.message}: ${JSON.stringify(r.source)}`:r.message,t=new gc.YAMLParseError(dc(r),"UNEXPECTED_TOKEN",n);if(this.atDirectives||!this.doc)this.errors.push(t);else this.doc.errors.push(t);break}case"doc-end":{if(!this.doc){this.errors.push(new gc.YAMLParseError(dc(r),"UNEXPECTED_TOKEN","Unexpected doc-end without preceding document"));break}this.doc.directives.docEnd=!0;let n=sk.resolveEnd(r.end,r.offset+r.source.length,this.doc.options.strict,this.onError);if(this.decorate(this.doc,!0),n.comment){let t=this.doc.comment;this.doc.comment=t?`${t}
|
|
147
|
-
${n.comment}`:n.comment}this.doc.range[2]=n.offset;break}default:this.errors.push(new gc.YAMLParseError(dc(r),"UNEXPECTED_TOKEN",`Unsupported token ${r.type}`))}}*end(r=!1,n=-1){if(this.doc)this.decorate(this.doc,!0),yield this.doc,this.doc=null;else if(r){let t=Object.assign({_directives:this.directives},this.options),e=new xk.Document(void 0,t);if(this.atDirectives)this.onError(n,"MISSING_CHAR","Missing directives-end indicator line");e.range=[0,n,n],this.decorate(e,!1),yield e}}}rX.Composer=c1});var $1=P(($X)=>{var tX=C6(),iX=p6(),eX=oc(),u1=C_();function _X(r,n=!0,t){if(r){let e=(i,_,c)=>{let u=typeof i==="number"?i:Array.isArray(i)?i[0]:i.offset;if(t)t(u,_,c);else throw new eX.YAMLParseError([u,u+1],_,c)};switch(r.type){case"scalar":case"single-quoted-scalar":case"double-quoted-scalar":return iX.resolveFlowScalar(r,n,e);case"block-scalar":return tX.resolveBlockScalar({options:{strict:n}},r,e)}}return null}function cX(r,n){let{implicitKey:t=!1,indent:e,inFlow:i=!1,offset:_=-1,type:c="PLAIN"}=n,u=u1.stringifyString({type:c,value:r},{implicitKey:t,indent:e>0?" ".repeat(e):"",inFlow:i,options:{blockQuote:!0,lineWidth:-1}}),o=n.end??[{type:"newline",offset:-1,indent:e,source:`
|
|
148
|
-
`}];switch(u[0]){case"|":case">":{let $=u.indexOf(`
|
|
149
|
-
`),g=u.substring(0,$),d=u.substring($+1)+`
|
|
150
|
-
`,f=[{type:"block-scalar-header",offset:_,indent:e,source:g}];if(!o1(f,o))f.push({type:"newline",offset:-1,indent:e,source:`
|
|
151
|
-
`});return{type:"block-scalar",offset:_,indent:e,props:f,source:d}}case'"':return{type:"double-quoted-scalar",offset:_,indent:e,source:u,end:o};case"'":return{type:"single-quoted-scalar",offset:_,indent:e,source:u,end:o};default:return{type:"scalar",offset:_,indent:e,source:u,end:o}}}function uX(r,n,t={}){let{afterKey:e=!1,implicitKey:i=!1,inFlow:_=!1,type:c}=t,u="indent"in r?r.indent:null;if(e&&typeof u==="number")u+=2;if(!c)switch(r.type){case"single-quoted-scalar":c="QUOTE_SINGLE";break;case"double-quoted-scalar":c="QUOTE_DOUBLE";break;case"block-scalar":{let $=r.props[0];if($.type!=="block-scalar-header")throw Error("Invalid block scalar header");c=$.source[0]===">"?"BLOCK_FOLDED":"BLOCK_LITERAL";break}default:c="PLAIN"}let o=u1.stringifyString({type:c,value:n},{implicitKey:i||u===null,indent:u!==null&&u>0?" ".repeat(u):"",inFlow:_,options:{blockQuote:!0,lineWidth:-1}});switch(o[0]){case"|":case">":oX(r,o);break;case'"':n4(r,o,"double-quoted-scalar");break;case"'":n4(r,o,"single-quoted-scalar");break;default:n4(r,o,"scalar")}}function oX(r,n){let t=n.indexOf(`
|
|
152
|
-
`),e=n.substring(0,t),i=n.substring(t+1)+`
|
|
153
|
-
`;if(r.type==="block-scalar"){let _=r.props[0];if(_.type!=="block-scalar-header")throw Error("Invalid block scalar header");_.source=e,r.source=i}else{let{offset:_}=r,c="indent"in r?r.indent:-1,u=[{type:"block-scalar-header",offset:_,indent:c,source:e}];if(!o1(u,"end"in r?r.end:void 0))u.push({type:"newline",offset:-1,indent:c,source:`
|
|
154
|
-
`});for(let o of Object.keys(r))if(o!=="type"&&o!=="offset")delete r[o];Object.assign(r,{type:"block-scalar",indent:c,props:u,source:i})}}function o1(r,n){if(n)for(let t of n)switch(t.type){case"space":case"comment":r.push(t);break;case"newline":return r.push(t),!0}return!1}function n4(r,n,t){switch(r.type){case"scalar":case"double-quoted-scalar":case"single-quoted-scalar":r.type=t,r.source=n;break;case"block-scalar":{let e=r.props.slice(1),i=n.length;if(r.props[0].type==="block-scalar-header")i-=r.props[0].source.length;for(let _ of e)_.offset+=i;delete r.props,Object.assign(r,{type:t,source:n,end:e});break}case"block-map":case"block-seq":{let i={type:"newline",offset:r.offset+n.length,indent:r.indent,source:`
|
|
155
|
-
`};delete r.items,Object.assign(r,{type:t,source:n,end:[i]});break}default:{let e="indent"in r?r.indent:-1,i="end"in r&&Array.isArray(r.end)?r.end.filter((_)=>_.type==="space"||_.type==="comment"||_.type==="newline"):[];for(let _ of Object.keys(r))if(_!=="type"&&_!=="offset")delete r[_];Object.assign(r,{type:t,indent:e,source:n,end:i})}}}$X.createScalarToken=cX;$X.resolveAsScalar=_X;$X.setScalarValue=uX});var g1=P((wX)=>{var bX=(r)=>("type"in r)?R$(r):h$(r);function R$(r){switch(r.type){case"block-scalar":{let n="";for(let t of r.props)n+=R$(t);return n+r.source}case"block-map":case"block-seq":{let n="";for(let t of r.items)n+=h$(t);return n}case"flow-collection":{let n=r.start.source;for(let t of r.items)n+=h$(t);for(let t of r.end)n+=t.source;return n}case"document":{let n=h$(r);if(r.end)for(let t of r.end)n+=t.source;return n}default:{let n=r.source;if("end"in r&&r.end)for(let t of r.end)n+=t.source;return n}}}function h$({start:r,key:n,sep:t,value:e}){let i="";for(let _ of r)i+=_.source;if(n)i+=R$(n);if(t)for(let _ of t)i+=_.source;if(e)i+=R$(e);return i}wX.stringify=bX});var b1=P((OX)=>{var t4=Symbol("break visit"),IX=Symbol("skip children"),d1=Symbol("remove item");function $i(r,n){if("type"in r&&r.type==="document")r={start:r.start,value:r.value};f1(Object.freeze([]),r,n)}$i.BREAK=t4;$i.SKIP=IX;$i.REMOVE=d1;$i.itemAtPath=(r,n)=>{let t=r;for(let[e,i]of n){let _=t?.[e];if(_&&"items"in _)t=_.items[i];else return}return t};$i.parentCollection=(r,n)=>{let t=$i.itemAtPath(r,n.slice(0,-1)),e=n[n.length-1][0],i=t?.[e];if(i&&"items"in i)return i;throw Error("Parent collection not found")};function f1(r,n,t){let e=t(n,r);if(typeof e==="symbol")return e;for(let i of["key","value"]){let _=n[i];if(_&&"items"in _){for(let c=0;c<_.items.length;++c){let u=f1(Object.freeze(r.concat([[i,c]])),_.items[c],t);if(typeof u==="number")c=u-1;else if(u===t4)return t4;else if(u===d1)_.items.splice(c,1),c-=1}if(typeof e==="function"&&i==="key")e=e(n,r)}}return typeof e==="function"?e(n,r):e}OX.visit=$i});var D$=P((NX)=>{var i4=$1(),hX=g1(),RX=b1(),e4="\uFEFF",_4="\x02",c4="\x18",u4="\x1F",DX=(r)=>!!r&&("items"in r),yX=(r)=>!!r&&(r.type==="scalar"||r.type==="single-quoted-scalar"||r.type==="double-quoted-scalar"||r.type==="block-scalar");function qX(r){switch(r){case e4:return"<BOM>";case _4:return"<DOC>";case c4:return"<FLOW_END>";case u4:return"<SCALAR>";default:return JSON.stringify(r)}}function TX(r){switch(r){case e4:return"byte-order-mark";case _4:return"doc-mode";case c4:return"flow-error-end";case u4:return"scalar";case"---":return"doc-start";case"...":return"doc-end";case"":case`
|
|
156
|
-
`:case`\r
|
|
157
|
-
`:return"newline";case"-":return"seq-item-ind";case"?":return"explicit-key-ind";case":":return"map-value-ind";case"{":return"flow-map-start";case"}":return"flow-map-end";case"[":return"flow-seq-start";case"]":return"flow-seq-end";case",":return"comma"}switch(r[0]){case" ":case"\t":return"space";case"#":return"comment";case"%":return"directive-line";case"*":return"alias";case"&":return"anchor";case"!":return"tag";case"'":return"single-quoted-scalar";case'"':return"double-quoted-scalar";case"|":case">":return"block-scalar-header"}return null}NX.createScalarToken=i4.createScalarToken;NX.resolveAsScalar=i4.resolveAsScalar;NX.setScalarValue=i4.setScalarValue;NX.stringify=hX.stringify;NX.visit=RX.visit;NX.BOM=e4;NX.DOCUMENT=_4;NX.FLOW_END=c4;NX.SCALAR=u4;NX.isCollection=DX;NX.isScalar=yX;NX.prettyToken=qX;NX.tokenType=TX});var $4=P((lX)=>{var fc=D$();function zn(r){switch(r){case void 0:case" ":case`
|
|
158
|
-
`:case"\r":case"\t":return!0;default:return!1}}var w1=new Set("0123456789ABCDEFabcdef"),VX=new Set("0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz-#;/?:@&=+$_.!~*'()"),y$=new Set(",[]{}"),FX=new Set(` ,[]{}
|
|
159
|
-
\r `),o4=(r)=>!r||FX.has(r);class m1{constructor(){this.atEnd=!1,this.blockScalarIndent=-1,this.blockScalarKeep=!1,this.buffer="",this.flowKey=!1,this.flowLevel=0,this.indentNext=0,this.indentValue=0,this.lineEndPos=null,this.next=null,this.pos=0}*lex(r,n=!1){if(r){if(typeof r!=="string")throw TypeError("source is not a string");this.buffer=this.buffer?this.buffer+r:r,this.lineEndPos=null}this.atEnd=!n;let t=this.next??"stream";while(t&&(n||this.hasChars(1)))t=yield*this.parseNext(t)}atLineEnd(){let r=this.pos,n=this.buffer[r];while(n===" "||n==="\t")n=this.buffer[++r];if(!n||n==="#"||n===`
|
|
160
|
-
`)return!0;if(n==="\r")return this.buffer[r+1]===`
|
|
161
|
-
`;return!1}charAt(r){return this.buffer[this.pos+r]}continueScalar(r){let n=this.buffer[r];if(this.indentNext>0){let t=0;while(n===" ")n=this.buffer[++t+r];if(n==="\r"){let e=this.buffer[t+r+1];if(e===`
|
|
162
|
-
`||!e&&!this.atEnd)return r+t+1}return n===`
|
|
163
|
-
`||t>=this.indentNext||!n&&!this.atEnd?r+t:-1}if(n==="-"||n==="."){let t=this.buffer.substr(r,3);if((t==="---"||t==="...")&&zn(this.buffer[r+3]))return-1}return r}getLine(){let r=this.lineEndPos;if(typeof r!=="number"||r!==-1&&r<this.pos)r=this.buffer.indexOf(`
|
|
164
|
-
`,this.pos),this.lineEndPos=r;if(r===-1)return this.atEnd?this.buffer.substring(this.pos):null;if(this.buffer[r-1]==="\r")r-=1;return this.buffer.substring(this.pos,r)}hasChars(r){return this.pos+r<=this.buffer.length}setNext(r){return this.buffer=this.buffer.substring(this.pos),this.pos=0,this.lineEndPos=null,this.next=r,null}peek(r){return this.buffer.substr(this.pos,r)}*parseNext(r){switch(r){case"stream":return yield*this.parseStream();case"line-start":return yield*this.parseLineStart();case"block-start":return yield*this.parseBlockStart();case"doc":return yield*this.parseDocument();case"flow":return yield*this.parseFlowCollection();case"quoted-scalar":return yield*this.parseQuotedScalar();case"block-scalar":return yield*this.parseBlockScalar();case"plain-scalar":return yield*this.parsePlainScalar()}}*parseStream(){let r=this.getLine();if(r===null)return this.setNext("stream");if(r[0]===fc.BOM)yield*this.pushCount(1),r=r.substring(1);if(r[0]==="%"){let n=r.length,t=r.indexOf("#");while(t!==-1){let i=r[t-1];if(i===" "||i==="\t"){n=t-1;break}else t=r.indexOf("#",t+1)}while(!0){let i=r[n-1];if(i===" "||i==="\t")n-=1;else break}let e=(yield*this.pushCount(n))+(yield*this.pushSpaces(!0));return yield*this.pushCount(r.length-e),this.pushNewline(),"stream"}if(this.atLineEnd()){let n=yield*this.pushSpaces(!0);return yield*this.pushCount(r.length-n),yield*this.pushNewline(),"stream"}return yield fc.DOCUMENT,yield*this.parseLineStart()}*parseLineStart(){let r=this.charAt(0);if(!r&&!this.atEnd)return this.setNext("line-start");if(r==="-"||r==="."){if(!this.atEnd&&!this.hasChars(4))return this.setNext("line-start");let n=this.peek(3);if((n==="---"||n==="...")&&zn(this.charAt(3)))return yield*this.pushCount(3),this.indentValue=0,this.indentNext=0,n==="---"?"doc":"stream"}if(this.indentValue=yield*this.pushSpaces(!1),this.indentNext>this.indentValue&&!zn(this.charAt(1)))this.indentNext=this.indentValue;return yield*this.parseBlockStart()}*parseBlockStart(){let[r,n]=this.peek(2);if(!n&&!this.atEnd)return this.setNext("block-start");if((r==="-"||r==="?"||r===":")&&zn(n)){let t=(yield*this.pushCount(1))+(yield*this.pushSpaces(!0));return this.indentNext=this.indentValue+1,this.indentValue+=t,yield*this.parseBlockStart()}return"doc"}*parseDocument(){yield*this.pushSpaces(!0);let r=this.getLine();if(r===null)return this.setNext("doc");let n=yield*this.pushIndicators();switch(r[n]){case"#":yield*this.pushCount(r.length-n);case void 0:return yield*this.pushNewline(),yield*this.parseLineStart();case"{":case"[":return yield*this.pushCount(1),this.flowKey=!1,this.flowLevel=1,"flow";case"}":case"]":return yield*this.pushCount(1),"doc";case"*":return yield*this.pushUntil(o4),"doc";case'"':case"'":return yield*this.parseQuotedScalar();case"|":case">":return n+=yield*this.parseBlockScalarHeader(),n+=yield*this.pushSpaces(!0),yield*this.pushCount(r.length-n),yield*this.pushNewline(),yield*this.parseBlockScalar();default:return yield*this.parsePlainScalar()}}*parseFlowCollection(){let r,n,t=-1;do{if(r=yield*this.pushNewline(),r>0)n=yield*this.pushSpaces(!1),this.indentValue=t=n;else n=0;n+=yield*this.pushSpaces(!0)}while(r+n>0);let e=this.getLine();if(e===null)return this.setNext("flow");if(t!==-1&&t<this.indentNext&&e[0]!=="#"||t===0&&(e.startsWith("---")||e.startsWith("..."))&&zn(e[3])){if(!(t===this.indentNext-1&&this.flowLevel===1&&(e[0]==="]"||e[0]==="}")))return this.flowLevel=0,yield fc.FLOW_END,yield*this.parseLineStart()}let i=0;while(e[i]===",")i+=yield*this.pushCount(1),i+=yield*this.pushSpaces(!0),this.flowKey=!1;switch(i+=yield*this.pushIndicators(),e[i]){case void 0:return"flow";case"#":return yield*this.pushCount(e.length-i),"flow";case"{":case"[":return yield*this.pushCount(1),this.flowKey=!1,this.flowLevel+=1,"flow";case"}":case"]":return yield*this.pushCount(1),this.flowKey=!0,this.flowLevel-=1,this.flowLevel?"flow":"doc";case"*":return yield*this.pushUntil(o4),"flow";case'"':case"'":return this.flowKey=!0,yield*this.parseQuotedScalar();case":":{let _=this.charAt(1);if(this.flowKey||zn(_)||_===",")return this.flowKey=!1,yield*this.pushCount(1),yield*this.pushSpaces(!0),"flow"}default:return this.flowKey=!1,yield*this.parsePlainScalar()}}*parseQuotedScalar(){let r=this.charAt(0),n=this.buffer.indexOf(r,this.pos+1);if(r==="'")while(n!==-1&&this.buffer[n+1]==="'")n=this.buffer.indexOf("'",n+2);else while(n!==-1){let i=0;while(this.buffer[n-1-i]==="\\")i+=1;if(i%2===0)break;n=this.buffer.indexOf('"',n+1)}let t=this.buffer.substring(0,n),e=t.indexOf(`
|
|
165
|
-
`,this.pos);if(e!==-1){while(e!==-1){let i=this.continueScalar(e+1);if(i===-1)break;e=t.indexOf(`
|
|
166
|
-
`,i)}if(e!==-1)n=e-(t[e-1]==="\r"?2:1)}if(n===-1){if(!this.atEnd)return this.setNext("quoted-scalar");n=this.buffer.length}return yield*this.pushToIndex(n+1,!1),this.flowLevel?"flow":"doc"}*parseBlockScalarHeader(){this.blockScalarIndent=-1,this.blockScalarKeep=!1;let r=this.pos;while(!0){let n=this.buffer[++r];if(n==="+")this.blockScalarKeep=!0;else if(n>"0"&&n<="9")this.blockScalarIndent=Number(n)-1;else if(n!=="-")break}return yield*this.pushUntil((n)=>zn(n)||n==="#")}*parseBlockScalar(){let r=this.pos-1,n=0,t;r:for(let i=this.pos;t=this.buffer[i];++i)switch(t){case" ":n+=1;break;case`
|
|
167
|
-
`:r=i,n=0;break;case"\r":{let _=this.buffer[i+1];if(!_&&!this.atEnd)return this.setNext("block-scalar");if(_===`
|
|
168
|
-
`)break}default:break r}if(!t&&!this.atEnd)return this.setNext("block-scalar");if(n>=this.indentNext){if(this.blockScalarIndent===-1)this.indentNext=n;else this.indentNext=this.blockScalarIndent+(this.indentNext===0?1:this.indentNext);do{let i=this.continueScalar(r+1);if(i===-1)break;r=this.buffer.indexOf(`
|
|
169
|
-
`,i)}while(r!==-1);if(r===-1){if(!this.atEnd)return this.setNext("block-scalar");r=this.buffer.length}}let e=r+1;t=this.buffer[e];while(t===" ")t=this.buffer[++e];if(t==="\t"){while(t==="\t"||t===" "||t==="\r"||t===`
|
|
170
|
-
`)t=this.buffer[++e];r=e-1}else if(!this.blockScalarKeep)do{let i=r-1,_=this.buffer[i];if(_==="\r")_=this.buffer[--i];let c=i;while(_===" ")_=this.buffer[--i];if(_===`
|
|
171
|
-
`&&i>=this.pos&&i+1+n>c)r=i;else break}while(!0);return yield fc.SCALAR,yield*this.pushToIndex(r+1,!0),yield*this.parseLineStart()}*parsePlainScalar(){let r=this.flowLevel>0,n=this.pos-1,t=this.pos-1,e;while(e=this.buffer[++t])if(e===":"){let i=this.buffer[t+1];if(zn(i)||r&&y$.has(i))break;n=t}else if(zn(e)){let i=this.buffer[t+1];if(e==="\r")if(i===`
|
|
172
|
-
`)t+=1,e=`
|
|
173
|
-
`,i=this.buffer[t+1];else n=t;if(i==="#"||r&&y$.has(i))break;if(e===`
|
|
174
|
-
`){let _=this.continueScalar(t+1);if(_===-1)break;t=Math.max(t,_-2)}}else{if(r&&y$.has(e))break;n=t}if(!e&&!this.atEnd)return this.setNext("plain-scalar");return yield fc.SCALAR,yield*this.pushToIndex(n+1,!0),r?"flow":"doc"}*pushCount(r){if(r>0)return yield this.buffer.substr(this.pos,r),this.pos+=r,r;return 0}*pushToIndex(r,n){let t=this.buffer.slice(this.pos,r);if(t)return yield t,this.pos+=t.length,t.length;else if(n)yield"";return 0}*pushIndicators(){switch(this.charAt(0)){case"!":return(yield*this.pushTag())+(yield*this.pushSpaces(!0))+(yield*this.pushIndicators());case"&":return(yield*this.pushUntil(o4))+(yield*this.pushSpaces(!0))+(yield*this.pushIndicators());case"-":case"?":case":":{let r=this.flowLevel>0,n=this.charAt(1);if(zn(n)||r&&y$.has(n)){if(!r)this.indentNext=this.indentValue+1;else if(this.flowKey)this.flowKey=!1;return(yield*this.pushCount(1))+(yield*this.pushSpaces(!0))+(yield*this.pushIndicators())}}}return 0}*pushTag(){if(this.charAt(1)==="<"){let r=this.pos+2,n=this.buffer[r];while(!zn(n)&&n!==">")n=this.buffer[++r];return yield*this.pushToIndex(n===">"?r+1:r,!1)}else{let r=this.pos+1,n=this.buffer[r];while(n)if(VX.has(n))n=this.buffer[++r];else if(n==="%"&&w1.has(this.buffer[r+1])&&w1.has(this.buffer[r+2]))n=this.buffer[r+=3];else break;return yield*this.pushToIndex(r,!1)}}*pushNewline(){let r=this.buffer[this.pos];if(r===`
|
|
175
|
-
`)return yield*this.pushCount(1);else if(r==="\r"&&this.charAt(1)===`
|
|
176
|
-
`)return yield*this.pushCount(2);else return 0}*pushSpaces(r){let n=this.pos-1,t;do t=this.buffer[++n];while(t===" "||r&&t==="\t");let e=n-this.pos;if(e>0)yield this.buffer.substr(this.pos,e),this.pos=n;return e}*pushUntil(r){let n=this.pos,t=this.buffer[n];while(!r(t))t=this.buffer[++n];return yield*this.pushToIndex(n,!1)}}lX.Lexer=m1});var g4=P((YX)=>{class I1{constructor(){this.lineStarts=[],this.addNewLine=(r)=>this.lineStarts.push(r),this.linePos=(r)=>{let n=0,t=this.lineStarts.length;while(n<t){let i=n+t>>1;if(this.lineStarts[i]<r)n=i+1;else t=i}if(this.lineStarts[n]===r)return{line:n+1,col:1};if(n===0)return{line:0,col:r};let e=this.lineStarts[n-1];return{line:n,col:r-e+1}}}}YX.LineCounter=I1});var d4=P((KX)=>{var BX=Kc("process"),O1=D$(),QX=$4();function Et(r,n){for(let t=0;t<r.length;++t)if(r[t].type===n)return!0;return!1}function U1(r){for(let n=0;n<r.length;++n)switch(r[n].type){case"space":case"comment":case"newline":break;default:return n}return-1}function R1(r){switch(r?.type){case"alias":case"scalar":case"single-quoted-scalar":case"double-quoted-scalar":case"flow-collection":return!0;default:return!1}}function q$(r){switch(r.type){case"document":return r.start;case"block-map":{let n=r.items[r.items.length-1];return n.sep??n.start}case"block-seq":return r.items[r.items.length-1].start;default:return[]}}function Ue(r){if(r.length===0)return[];let n=r.length;r:while(--n>=0)switch(r[n].type){case"doc-start":case"explicit-key-ind":case"map-value-ind":case"seq-item-ind":case"newline":break r}while(r[++n]?.type==="space");return r.splice(n,r.length)}function h1(r){if(r.start.type==="flow-seq-start"){for(let n of r.items)if(n.sep&&!n.value&&!Et(n.start,"explicit-key-ind")&&!Et(n.sep,"map-value-ind")){if(n.key)n.value=n.key;if(delete n.key,R1(n.value))if(n.value.end)Array.prototype.push.apply(n.value.end,n.sep);else n.value.end=n.sep;else Array.prototype.push.apply(n.start,n.sep);delete n.sep}}}class D1{constructor(r){this.atNewLine=!0,this.atScalar=!1,this.indent=0,this.offset=0,this.onKeyLine=!1,this.stack=[],this.source="",this.type="",this.lexer=new QX.Lexer,this.onNewLine=r}*parse(r,n=!1){if(this.onNewLine&&this.offset===0)this.onNewLine(0);for(let t of this.lexer.lex(r,n))yield*this.next(t);if(!n)yield*this.end()}*next(r){if(this.source=r,BX.env.LOG_TOKENS)console.log("|",O1.prettyToken(r));if(this.atScalar){this.atScalar=!1,yield*this.step(),this.offset+=r.length;return}let n=O1.tokenType(r);if(!n){let t=`Not a YAML token: ${r}`;yield*this.pop({type:"error",offset:this.offset,message:t,source:r}),this.offset+=r.length}else if(n==="scalar")this.atNewLine=!1,this.atScalar=!0,this.type="scalar";else{switch(this.type=n,yield*this.step(),n){case"newline":if(this.atNewLine=!0,this.indent=0,this.onNewLine)this.onNewLine(this.offset+r.length);break;case"space":if(this.atNewLine&&r[0]===" ")this.indent+=r.length;break;case"explicit-key-ind":case"map-value-ind":case"seq-item-ind":if(this.atNewLine)this.indent+=r.length;break;case"doc-mode":case"flow-error-end":return;default:this.atNewLine=!1}this.offset+=r.length}}*end(){while(this.stack.length>0)yield*this.pop()}get sourceToken(){return{type:this.type,offset:this.offset,indent:this.indent,source:this.source}}*step(){let r=this.peek(1);if(this.type==="doc-end"&&r?.type!=="doc-end"){while(this.stack.length>0)yield*this.pop();this.stack.push({type:"doc-end",offset:this.offset,source:this.source});return}if(!r)return yield*this.stream();switch(r.type){case"document":return yield*this.document(r);case"alias":case"scalar":case"single-quoted-scalar":case"double-quoted-scalar":return yield*this.scalar(r);case"block-scalar":return yield*this.blockScalar(r);case"block-map":return yield*this.blockMap(r);case"block-seq":return yield*this.blockSequence(r);case"flow-collection":return yield*this.flowCollection(r);case"doc-end":return yield*this.documentEnd(r)}yield*this.pop()}peek(r){return this.stack[this.stack.length-r]}*pop(r){let n=r??this.stack.pop();if(!n)yield{type:"error",offset:this.offset,source:"",message:"Tried to pop an empty stack"};else if(this.stack.length===0)yield n;else{let t=this.peek(1);if(n.type==="block-scalar")n.indent="indent"in t?t.indent:0;else if(n.type==="flow-collection"&&t.type==="document")n.indent=0;if(n.type==="flow-collection")h1(n);switch(t.type){case"document":t.value=n;break;case"block-scalar":t.props.push(n);break;case"block-map":{let e=t.items[t.items.length-1];if(e.value){t.items.push({start:[],key:n,sep:[]}),this.onKeyLine=!0;return}else if(e.sep)e.value=n;else{Object.assign(e,{key:n,sep:[]}),this.onKeyLine=!e.explicitKey;return}break}case"block-seq":{let e=t.items[t.items.length-1];if(e.value)t.items.push({start:[],value:n});else e.value=n;break}case"flow-collection":{let e=t.items[t.items.length-1];if(!e||e.value)t.items.push({start:[],key:n,sep:[]});else if(e.sep)e.value=n;else Object.assign(e,{key:n,sep:[]});return}default:yield*this.pop(),yield*this.pop(n)}if((t.type==="document"||t.type==="block-map"||t.type==="block-seq")&&(n.type==="block-map"||n.type==="block-seq")){let e=n.items[n.items.length-1];if(e&&!e.sep&&!e.value&&e.start.length>0&&U1(e.start)===-1&&(n.indent===0||e.start.every((i)=>i.type!=="comment"||i.indent<n.indent))){if(t.type==="document")t.end=e.start;else t.items.push({start:e.start});n.items.splice(-1,1)}}}}*stream(){switch(this.type){case"directive-line":yield{type:"directive",offset:this.offset,source:this.source};return;case"byte-order-mark":case"space":case"comment":case"newline":yield this.sourceToken;return;case"doc-mode":case"doc-start":{let r={type:"document",offset:this.offset,start:[]};if(this.type==="doc-start")r.start.push(this.sourceToken);this.stack.push(r);return}}yield{type:"error",offset:this.offset,message:`Unexpected ${this.type} token in YAML stream`,source:this.source}}*document(r){if(r.value)return yield*this.lineEnd(r);switch(this.type){case"doc-start":{if(U1(r.start)!==-1)yield*this.pop(),yield*this.step();else r.start.push(this.sourceToken);return}case"anchor":case"tag":case"space":case"comment":case"newline":r.start.push(this.sourceToken);return}let n=this.startBlockValue(r);if(n)this.stack.push(n);else yield{type:"error",offset:this.offset,message:`Unexpected ${this.type} token in YAML document`,source:this.source}}*scalar(r){if(this.type==="map-value-ind"){let n=q$(this.peek(2)),t=Ue(n),e;if(r.end)e=r.end,e.push(this.sourceToken),delete r.end;else e=[this.sourceToken];let i={type:"block-map",offset:r.offset,indent:r.indent,items:[{start:t,key:r,sep:e}]};this.onKeyLine=!0,this.stack[this.stack.length-1]=i}else yield*this.lineEnd(r)}*blockScalar(r){switch(this.type){case"space":case"comment":case"newline":r.props.push(this.sourceToken);return;case"scalar":if(r.source=this.source,this.atNewLine=!0,this.indent=0,this.onNewLine){let n=this.source.indexOf(`
|
|
177
|
-
`)+1;while(n!==0)this.onNewLine(this.offset+n),n=this.source.indexOf(`
|
|
178
|
-
`,n)+1}yield*this.pop();break;default:yield*this.pop(),yield*this.step()}}*blockMap(r){let n=r.items[r.items.length-1];switch(this.type){case"newline":if(this.onKeyLine=!1,n.value){let t="end"in n.value?n.value.end:void 0;if((Array.isArray(t)?t[t.length-1]:void 0)?.type==="comment")t?.push(this.sourceToken);else r.items.push({start:[this.sourceToken]})}else if(n.sep)n.sep.push(this.sourceToken);else n.start.push(this.sourceToken);return;case"space":case"comment":if(n.value)r.items.push({start:[this.sourceToken]});else if(n.sep)n.sep.push(this.sourceToken);else{if(this.atIndentedComment(n.start,r.indent)){let e=r.items[r.items.length-2]?.value?.end;if(Array.isArray(e)){Array.prototype.push.apply(e,n.start),e.push(this.sourceToken),r.items.pop();return}}n.start.push(this.sourceToken)}return}if(this.indent>=r.indent){let t=!this.onKeyLine&&this.indent===r.indent,e=t&&(n.sep||n.explicitKey)&&this.type!=="seq-item-ind",i=[];if(e&&n.sep&&!n.value){let _=[];for(let c=0;c<n.sep.length;++c){let u=n.sep[c];switch(u.type){case"newline":_.push(c);break;case"space":break;case"comment":if(u.indent>r.indent)_.length=0;break;default:_.length=0}}if(_.length>=2)i=n.sep.splice(_[1])}switch(this.type){case"anchor":case"tag":if(e||n.value)i.push(this.sourceToken),r.items.push({start:i}),this.onKeyLine=!0;else if(n.sep)n.sep.push(this.sourceToken);else n.start.push(this.sourceToken);return;case"explicit-key-ind":if(!n.sep&&!n.explicitKey)n.start.push(this.sourceToken),n.explicitKey=!0;else if(e||n.value)i.push(this.sourceToken),r.items.push({start:i,explicitKey:!0});else this.stack.push({type:"block-map",offset:this.offset,indent:this.indent,items:[{start:[this.sourceToken],explicitKey:!0}]});this.onKeyLine=!0;return;case"map-value-ind":if(n.explicitKey)if(!n.sep)if(Et(n.start,"newline"))Object.assign(n,{key:null,sep:[this.sourceToken]});else{let _=Ue(n.start);this.stack.push({type:"block-map",offset:this.offset,indent:this.indent,items:[{start:_,key:null,sep:[this.sourceToken]}]})}else if(n.value)r.items.push({start:[],key:null,sep:[this.sourceToken]});else if(Et(n.sep,"map-value-ind"))this.stack.push({type:"block-map",offset:this.offset,indent:this.indent,items:[{start:i,key:null,sep:[this.sourceToken]}]});else if(R1(n.key)&&!Et(n.sep,"newline")){let _=Ue(n.start),c=n.key,u=n.sep;u.push(this.sourceToken),delete n.key,delete n.sep,this.stack.push({type:"block-map",offset:this.offset,indent:this.indent,items:[{start:_,key:c,sep:u}]})}else if(i.length>0)n.sep=n.sep.concat(i,this.sourceToken);else n.sep.push(this.sourceToken);else if(!n.sep)Object.assign(n,{key:null,sep:[this.sourceToken]});else if(n.value||e)r.items.push({start:i,key:null,sep:[this.sourceToken]});else if(Et(n.sep,"map-value-ind"))this.stack.push({type:"block-map",offset:this.offset,indent:this.indent,items:[{start:[],key:null,sep:[this.sourceToken]}]});else n.sep.push(this.sourceToken);this.onKeyLine=!0;return;case"alias":case"scalar":case"single-quoted-scalar":case"double-quoted-scalar":{let _=this.flowScalar(this.type);if(e||n.value)r.items.push({start:i,key:_,sep:[]}),this.onKeyLine=!0;else if(n.sep)this.stack.push(_);else Object.assign(n,{key:_,sep:[]}),this.onKeyLine=!0;return}default:{let _=this.startBlockValue(r);if(_){if(_.type==="block-seq"){if(!n.explicitKey&&n.sep&&!Et(n.sep,"newline")){yield*this.pop({type:"error",offset:this.offset,message:"Unexpected block-seq-ind on same line with key",source:this.source});return}}else if(t)r.items.push({start:i});this.stack.push(_);return}}}}yield*this.pop(),yield*this.step()}*blockSequence(r){let n=r.items[r.items.length-1];switch(this.type){case"newline":if(n.value){let t="end"in n.value?n.value.end:void 0;if((Array.isArray(t)?t[t.length-1]:void 0)?.type==="comment")t?.push(this.sourceToken);else r.items.push({start:[this.sourceToken]})}else n.start.push(this.sourceToken);return;case"space":case"comment":if(n.value)r.items.push({start:[this.sourceToken]});else{if(this.atIndentedComment(n.start,r.indent)){let e=r.items[r.items.length-2]?.value?.end;if(Array.isArray(e)){Array.prototype.push.apply(e,n.start),e.push(this.sourceToken),r.items.pop();return}}n.start.push(this.sourceToken)}return;case"anchor":case"tag":if(n.value||this.indent<=r.indent)break;n.start.push(this.sourceToken);return;case"seq-item-ind":if(this.indent!==r.indent)break;if(n.value||Et(n.start,"seq-item-ind"))r.items.push({start:[this.sourceToken]});else n.start.push(this.sourceToken);return}if(this.indent>r.indent){let t=this.startBlockValue(r);if(t){this.stack.push(t);return}}yield*this.pop(),yield*this.step()}*flowCollection(r){let n=r.items[r.items.length-1];if(this.type==="flow-error-end"){let t;do yield*this.pop(),t=this.peek(1);while(t?.type==="flow-collection")}else if(r.end.length===0){switch(this.type){case"comma":case"explicit-key-ind":if(!n||n.sep)r.items.push({start:[this.sourceToken]});else n.start.push(this.sourceToken);return;case"map-value-ind":if(!n||n.value)r.items.push({start:[],key:null,sep:[this.sourceToken]});else if(n.sep)n.sep.push(this.sourceToken);else Object.assign(n,{key:null,sep:[this.sourceToken]});return;case"space":case"comment":case"newline":case"anchor":case"tag":if(!n||n.value)r.items.push({start:[this.sourceToken]});else if(n.sep)n.sep.push(this.sourceToken);else n.start.push(this.sourceToken);return;case"alias":case"scalar":case"single-quoted-scalar":case"double-quoted-scalar":{let e=this.flowScalar(this.type);if(!n||n.value)r.items.push({start:[],key:e,sep:[]});else if(n.sep)this.stack.push(e);else Object.assign(n,{key:e,sep:[]});return}case"flow-map-end":case"flow-seq-end":r.end.push(this.sourceToken);return}let t=this.startBlockValue(r);if(t)this.stack.push(t);else yield*this.pop(),yield*this.step()}else{let t=this.peek(2);if(t.type==="block-map"&&(this.type==="map-value-ind"&&t.indent===r.indent||this.type==="newline"&&!t.items[t.items.length-1].sep))yield*this.pop(),yield*this.step();else if(this.type==="map-value-ind"&&t.type!=="flow-collection"){let e=q$(t),i=Ue(e);h1(r);let _=r.end.splice(1,r.end.length);_.push(this.sourceToken);let c={type:"block-map",offset:r.offset,indent:r.indent,items:[{start:i,key:r,sep:_}]};this.onKeyLine=!0,this.stack[this.stack.length-1]=c}else yield*this.lineEnd(r)}}flowScalar(r){if(this.onNewLine){let n=this.source.indexOf(`
|
|
179
|
-
`)+1;while(n!==0)this.onNewLine(this.offset+n),n=this.source.indexOf(`
|
|
180
|
-
`,n)+1}return{type:r,offset:this.offset,indent:this.indent,source:this.source}}startBlockValue(r){switch(this.type){case"alias":case"scalar":case"single-quoted-scalar":case"double-quoted-scalar":return this.flowScalar(this.type);case"block-scalar-header":return{type:"block-scalar",offset:this.offset,indent:this.indent,props:[this.sourceToken],source:""};case"flow-map-start":case"flow-seq-start":return{type:"flow-collection",offset:this.offset,indent:this.indent,start:this.sourceToken,items:[],end:[]};case"seq-item-ind":return{type:"block-seq",offset:this.offset,indent:this.indent,items:[{start:[this.sourceToken]}]};case"explicit-key-ind":{this.onKeyLine=!0;let n=q$(r),t=Ue(n);return t.push(this.sourceToken),{type:"block-map",offset:this.offset,indent:this.indent,items:[{start:t,explicitKey:!0}]}}case"map-value-ind":{this.onKeyLine=!0;let n=q$(r),t=Ue(n);return{type:"block-map",offset:this.offset,indent:this.indent,items:[{start:t,key:null,sep:[this.sourceToken]}]}}}return null}atIndentedComment(r,n){if(this.type!=="comment")return!1;if(this.indent<=n)return!1;return r.every((t)=>t.type==="newline"||t.type==="space")}*documentEnd(r){if(this.type!=="doc-mode"){if(r.end)r.end.push(this.sourceToken);else r.end=[this.sourceToken];if(this.type==="newline")yield*this.pop()}}*lineEnd(r){switch(this.type){case"comma":case"doc-start":case"doc-end":case"flow-seq-end":case"flow-map-end":case"map-value-ind":yield*this.pop(),yield*this.step();break;case"newline":this.onKeyLine=!1;case"space":case"comment":default:if(r.end)r.end.push(this.sourceToken);else r.end=[this.sourceToken];if(this.type==="newline")yield*this.pop()}}}KX.Parser=D1});var L1=P((tG)=>{var y1=r4(),ZX=uc(),bc=oc(),CX=g6(),xX=C(),pX=g4(),q1=d4();function T1(r){let n=r.prettyErrors!==!1;return{lineCounter:r.lineCounter||n&&new pX.LineCounter||null,prettyErrors:n}}function sX(r,n={}){let{lineCounter:t,prettyErrors:e}=T1(n),i=new q1.Parser(t?.addNewLine),_=new y1.Composer(n),c=Array.from(_.compose(i.parse(r)));if(e&&t)for(let u of c)u.errors.forEach(bc.prettifyError(r,t)),u.warnings.forEach(bc.prettifyError(r,t));if(c.length>0)return c;return Object.assign([],{empty:!0},_.streamInfo())}function N1(r,n={}){let{lineCounter:t,prettyErrors:e}=T1(n),i=new q1.Parser(t?.addNewLine),_=new y1.Composer(n),c=null;for(let u of _.compose(i.parse(r),!0,r.length))if(!c)c=u;else if(c.options.logLevel!=="silent"){c.errors.push(new bc.YAMLParseError(u.range.slice(0,2),"MULTIPLE_DOCS","Source contains multiple documents; please use YAML.parseAllDocuments()"));break}if(e&&t)c.errors.forEach(bc.prettifyError(r,t)),c.warnings.forEach(bc.prettifyError(r,t));return c}function rG(r,n,t){let e=void 0;if(typeof n==="function")e=n;else if(t===void 0&&n&&typeof n==="object")t=n;let i=N1(r,t);if(!i)return null;if(i.warnings.forEach((_)=>CX.warn(i.options.logLevel,_)),i.errors.length>0)if(i.options.logLevel!=="silent")throw i.errors[0];else i.errors=[];return i.toJS(Object.assign({reviver:e},t))}function nG(r,n,t){let e=null;if(typeof n==="function"||Array.isArray(n))e=n;else if(t===void 0&&n)t=n;if(typeof t==="string")t=t.length;if(typeof t==="number"){let i=Math.round(t);t=i<1?void 0:i>8?{indent:8}:{indent:i}}if(r===void 0){let{keepUndefined:i}=t??n??{};if(!i)return}if(xX.isDocument(r)&&!e)return r.toString(t);return new ZX.Document(r,e,t).toString(t)}tG.parse=rG;tG.parseAllDocuments=sX;tG.parseDocument=N1;tG.stringify=nG});function tL(){return["etiquette \u2014 govern agent-assisted engineering work with seats, evidence,","and promotion gates. Local-first: your repo is the ledger.","","First run (copy-paste, inside your project):"," etiquette init --project ."," etiquette bootstrap local --project . --profile codex-cc-gemini --task-prefix APP"," etiquette join --seat codex-seat --project ."," etiquette pickup --seat codex-seat --task APP-001 --allow-current-project --text","","Then: do the work -> write the receipt at the path pickup names ->"," etiquette post --role implementation-return --lane APP-001 --from codex-seat --to manager-seat --project ."," etiquette return check --task APP-001 --seat codex-seat --project .","","Every command prints its own next step. You can ignore everything else","until you need it.","","Commands: etiquette help \xB7 full surface: etiquette help advanced \xB7 docs: https://etiquekit.com/docs/"].join(`
|
|
181
|
-
`)}function Qe(){return["etiquette","","Govern agent-assisted engineering work with seats, evidence, and promotion gates.","","Start here:"," etiquette setup [--target auto|codex|claude-code|gemini|all] [--project <path>] [--yes]"," etiquette handoff [--project <path>] [--profile codex-cc-gemini|lead-review] [--task-prefix <id>]"," etiquette init [--project <path>]"," etiquette bootstrap local [--project <path>] [--profile codex-cc-gemini|lead-review]"," etiquette whereami [--project <path>] [--seat <id>] [--task <ref>] [--json]"," etiquette resume check --seat <id> [--task <ref>] [--expect-project-id <id>] [--project <path>] [--json]"," etiquette doctor [--project <path>]"," etiquette status [--project <path>]","","Daily work:"," etiquette join --seat <id> [--project <path>] [--json]"," etiquette pickup --seat <id> --task <ref> --expect-project-id <id> [--project <path>] [--text|--json]"," etiquette enter <task> --seat <id> --operator <principal> [--project <path>]"," etiquette session create --seat <id> --task <ref> [--project <path>]"," etiquette notify poll --seat <id> [--project <path>] [--after-seq <n>] [--json]"," etiquette notify webhook github --payload <file> --delivery <id> --event push --signature-256 <sha256=...> [--json]"," etiquette post --role <role> --lane <task-ref> --from <seat> --to <seat> [--emit] [--project <path>]"," etiquette tag compile <thread-file|-> --channel <id> [--user <chat-user>] [--project <path>]"," etiquette tag bindings verify [--project <path>] [--json]"," etiquette tag roster resolve <chat-user> [--project <path>] [--json]"," etiquette receipt scaffold --task <ref> --seat <id> [--project <path>] [--out <path>] [--force] [--json]"," etiquette return check --task <ref> --seat <id> [--remote-runner] [--project <path>] [--json]"," etiquette retire <path> --reason <kind> --evidence-ref <ref> --removed-by <seat> [--project <path>]"," etiquette diagnostics runner-glitch --symptom <text> [--session <id>] [--project <path>]"," etiquette diagnostics no-return --task <ref> --seat <id> [--project <path>] [--json]"," etiquette dispatch scaffold [--project <path>] [--task-id <id>] [--seat <id>] [--out <dir>]"," etiquette dispatch check --mode <path> --task <path> [--project <path>] [--json]"," etiquette dispatch record --mode <path> --task <path> [--project <path>] [--json]"," etiquette bus view [--project <path>] [--lane <id>] [--seat <id>] [--since <n>] [--format text|json|markdown]"," etiquette timeline view [--project <path>] [--scope project|seat|lane|principal] [--seat <id>] [--lane <id>]"," etiquette timeline preview [--project <path>] [--scope project|seat|lane|principal] [--seat <id>] [--lane <id>] [--host 127.0.0.1] [--port 4174] # loopback only"," etiquette ledger index|search|show ...","","Seats and readiness:"," etiquette seat readiness --seat <id> [--project <path>] [--json]"," etiquette seat status [--project <path>] [--json]"," etiquette seat owner-card --manifest <path> [--project <path>] [--json]","","Management views:"," etiquette console board [--project <path>] [--seat <id>] [--text]"," etiquette console serve [--project <path>] [--host 127.0.0.1] [--port 4173]","","Release checks:"," etiquette release readiness [--project <path>] [--json]"," etiquette release ga-readiness [--project <path>] --channel <name> --verify-tag-remote <remote> [--json]","","Advanced surfaces:"," etiquette help advanced"," etiquette-core help","","Authority boundary:"," commands can initialize, check, record evidence, and project read models;"," they do not grant authority, merge, close work, publish, or promote truth."].join(`
|
|
182
|
-
`)}function iL(){return["etiquette advanced command catalog","","usage (supervision \u2014 Phase 1, etiquette/internal/docs/supervision/PHASE1.md):"," discipline session-open <session-id> --campaign-root <path> --objective <text> --lead <seat> --responder <seat>"," --escalation-owner <seat> --time-cap <minutes> --turn-cap <n> --source-ref a,b [--topic <text>] [--seat-manifest <path>]"," discipline session-status <session-id> --campaign-root <path> [--json] [--seat-manifest <path>]"," discipline turn-open <session-id> --campaign-root <path> --owner <seat> --action-class <class>"," --max-duration <minutes> --allowed-command a,b --repo-root a,b --owned-path a,b"," --forbidden-path a,b --verify-command a,b [--requires-human-approval]"," [--projection-policy on_state_change|on_command_only] [--seat-manifest <path>]"," discipline turn-close <session-id> --campaign-root <path> --turn <turn-id>"," --result <done|blocked|handed_off|stopped|timed_out> --summary <text> [--evidence-ref a,b]"," discipline session-command <session-id> <command> --campaign-root <path>"," [--actor <seat>] [--payload <json>] [--seat-manifest <path>]"," discipline session-project <session-id> --campaign-root <path>"," discipline session-rebuild <session-id> --campaign-root <path>"," discipline seat-validate [--manifest <path>]","","usage (memory journal \u2014 local-first, compact-then-exact):"," etiquette memory index [--project <path>] [--db <path>] [--local-private] [--json]"," etiquette memory index --export [<dir>] --org-id <opaque-id> --confirm-shared-export"," [--workspace-id <opaque-id>] [--project <path>] [--db <path>] [--json]"," etiquette memory search <query> [--project <path>] [--db <path>] [--limit <n>] [--json]"," etiquette memory show <capsule-id> [--project <path>] [--db <path>]"," etiquette memory preflight <lane-or-task> [--project <path>] [--db <path>] [--limit <n>] [--json]"," etiquette memory context [<query>] [--lane <ref>] [--task <ref>] [--query <text>]"," [--workspace-id <opaque-id>] [--org-id <opaque-id>] [--project <path>] [--db <path>] [--limit <n>] [--json]"," etiquette memory status [--project <path>] [--db <path>] [--root <path>] [--json]"," etiquette memory store init --store <id> --scope org|workspace|lane|seat|session --access read_only|read_write"," [--mount-mode filesystem_like|context_pack|mcp_resource] [--write-policy none|candidate_only|curator_promoted]"," [--project <path>] [--root <path>] [--at <iso8601>] [--json]"," etiquette memory store add --store <id> --path <repo-relative> --content <text> --evidence <type:ref,...>"," [--project <path>] [--root <path>] [--at <iso8601>] [--json]"," etiquette memory store list [--project <path>] [--root <path>] [--json]"," etiquette memory store show --store <id> [--project <path>] [--root <path>] [--json]"," etiquette memory consolidate --input <store-id,...> --out <store-id> [--project <path>] [--root <path>] [--at <iso8601>] [--json]"," etiquette memory drain-import --from-project <child-path> --from-store <id> --to-store <id>"," [--project <parent-path>] [--from-root <path>] [--to-root <path>] [--source-ref <ref>] [--target-ref <ref>]"," [--path-prefix <repo-relative>] [--receipt <path>] [--at <iso8601>] [--json]"," etiquette memory sharded-drain-import --shard <id=child-path,...> --from-store <id> --to-store <id>"," [--project <parent-path>] [--target-ref <ref>] [--receipt-dir <repo-dir>] [--receipt <path>] [--json]"," etiquette memory stale [--project <path>] [--db <path>] [--limit <n>] [--json]"," etiquette memory rejected [--project <path>] [--db <path>] [--limit <n>] [--json]","","usage (console v0 - read-only local management view):"," etiquette console snapshot [--project <path>] [--json]"," etiquette console board [--project <path>] [--seat <id>] [--text]"," etiquette console serve [--project <path>] [--host 127.0.0.1] [--port 4173]","","usage (local workspace workflow v0 - repo-local onboarding, no hidden authority):"," etiquette setup [--target auto|all|codex|claude-code|gemini] [--project <path>]"," [--dry-run] [--force] [--eject] [--json]"," etiquette handoff [--project <path>] [--profile codex-cc-gemini|lead-review] [--task-prefix <id>] [--json]"," etiquette init [--project <path>]"," etiquette bootstrap local [--project <path>] [--profile codex-cc-gemini|lead-review]"," [--task-prefix <id>] [--lead-seat <id>] [--lead-principal <id>]"," [--review-seat <id>] [--review-principal <id>] [--qa-seat <id>] [--qa-principal <id>]"," [--bootstrap-seat <id>] [--bootstrap-principal <id>] [--no-qa] [--force] [--json]"," etiquette whereami [--project <path>] [--seat <id>] [--task <ref>] [--json]"," etiquette resume check --seat <id> [--task <ref>] [--expect-project-id <id>] [--project <path>] [--json]"," etiquette join --seat <id> [--project <path>] [--json]"," etiquette pickup --seat <id> --task <ref> [--project <path>] [--text|--json]"," etiquette enter <task> --seat <id> --operator <principal> [--project <path>]"," etiquette session create --seat <id> --task <ref> [--session-id <id>] [--operator <id>]"," [--owner <id>] [--target-ref <ref>] [--creation-mode explicit|dynamic] [--project <path>] [--json]"," etiquette session note --session <id> --section plan|tool|retry|evidence|note --message <text>"," [--project <path>] [--json]"," etiquette session migrate-project [--project <path>] [--dry-run] [--json]"," etiquette audit append --actor <id> --action <id> [--project <path>] [--refs a,b]"," etiquette roster card validate --card <path>"," etiquette roster enroll <seat> --card <path> --operator-principal <id> --execution-seat <id>"," --as-role <role> --authority-scope <scope> --mode <mode> --orientation-ref <path> [--project <path>]"," etiquette roster ready <seat> --ack-ref <ref> --orientation-ref <path> [--project <path>]"," etiquette roster list|show|posture <seat> [--project <path>] [--json]"," etiquette roster doctor [--project <path>] [--cards <dir>] [--json]"," etiquette post --role <role> --lane <id> --from <seat> --to <seat> [--emit] [--project <path>]"," etiquette notify subscribe --seat <id> --lane <id> [--roles a,b] [--project <path>]"," etiquette notify feed --seat <id> [--project <path>] [--text]"," etiquette notify poll --seat <id> [--project <path>] [--after-seq <n>] [--limit <n>] [--text|--json]"," etiquette notify queue --seat <id> [--project <path>] [--text|--json]"," etiquette notify webhook github --payload <file> --delivery <id> --event push --signature-256 <sha256=...>"," [--secret-env ETIQUETTE_GITHUB_WEBHOOK_SECRET] [--text|--json]"," etiquette receipt scaffold --task <ref> --seat <id> [--project <path>] [--out <path>]"," [--at <iso8601>] [--force] [--json]"," etiquette return check --task <ref> --seat <id> [--role any|implementation-return|review-return]"," [--tier local-advisory|remote-runner-hard-gate] [--remote-runner] [--project <path>] [--json]"," etiquette retire <path> --reason superseded|rejected|closed|duplicate --evidence-ref <ref>"," --removed-by <seat> [--superseded-by <path>] [--project <path>] [--json]"," etiquette trash list|show|restore|rebuild ... [--project <path>] [--json]"," etiquette rig doctor [--project <path>]"," etiquette bus status [n] [--project <path>] [--text]"," etiquette bus inbox --addressee <seat> [--project <path>] [--text]"," etiquette bus view [--project <path>] [--lane <id>] [--seat <id>] [--role <role>]"," [--since <n|local://event/n>] [--until <n|local://event/n>] [--match <text>]"," [--kind all|events|packets] [--limit <n>] [--format text|json|markdown]"," etiquette timeline view [--project <path>] [--scope project|seat|lane|principal] [--seat <id>] [--lane <id>]"," [--since <n|local://event/n>] [--until <n|local://event/n>] [--match <text>] [--limit <n>]"," [--format text|json|markdown]"," etiquette timeline preview [--project <path>] [--scope project|seat|lane|principal] [--seat <id>] [--lane <id>]"," [--since <n|local://event/n>] [--until <n|local://event/n>] [--match <text>] [--limit <n>]"," [--host 127.0.0.1] [--port 4174] # loopback only"," etiquette diagnostics runner-glitch --symptom <text> [--runner <id>] [--session <id>]"," [--command-ref <summary>] [--severity info|warning|blocked] [--project <path>] [--json]"," etiquette diagnostics no-return --task <ref> --seat <id> [--role any|implementation-return|review-return]"," [--project <path>] [--json]"," etiquette status [--project <path>]","","usage (ledger retrieval v0.1 - local generated index, compact-then-exact):"," etiquette ledger index [--project <path>] [--db <path>] [--json]"," etiquette ledger search <query> [--project <path>] [--db <path>] [--limit <n>] [--json]"," etiquette ledger search --topic <slug> [--project <path>] [--db <path>] [--limit <n>] [--json]"," etiquette ledger show <entry-or-ref-id> [--project <path>] [--db <path>]","","usage (hook adapter v0.1 \u2014 optional, disabled-by-default, opt in via ETIQUETTE_HOOKS_ENABLED=1):"," etiquette hook session_start [--workspace <id>] [--payload <json>]"," etiquette hook user_prompt_submit [--workspace <id>] [--payload <json>]"," etiquette hook post_tool_use [--workspace <id>] [--payload <json>]"," etiquette hook stop [--workspace <id>] [--payload <json>]"," etiquette hook session_end [--workspace <id>] [--payload <json>]","","usage (harness maintenance v0 - pruning receipts, inventory, and canary checks; no deletion authority):"," etiquette harness receipt --receipt <path> [--json]"," etiquette harness inventory --manifest <path> [--project <path>] [--json]"," etiquette harness canary --receipt <path> [--json]","","usage (rubric runner v0.1 - local sandbox evidence, no authority activation):"," etiquette rubric validate --rubric <path> [--json]"," etiquette rubric sandbox --rubric <path> --fixtures <path> --run-by <seat>"," [--environment local|sandbox-isolated] [--at <iso8601>] [--receipt <path>] [--json]"," etiquette rubric promote-check --rubric <path> --receipt <path>"," [--policy <path>] [--grant-ref <ref>] [--json]","","usage (release readiness v0 - package/channel checks, no publish authority):"," etiquette release channels [--json]"," etiquette release readiness [--project <path>] [--json] [--fail-on-blocked]"," etiquette release ga-readiness [--project <path>] --channel <name>"," --verify-tag-remote <remote> [--json] [--fail-on-blocked]","","usage (infra runtime \u2014 source-only, not shipped in the local devkit):"," runtime verifier cells, kube plans, and EKS provisioning belong to an infra/runtime workspace.","","usage (seat capability heartbeat v0.1 - local-first routing metadata):"," etiquette seat readiness --seat <id> [--project <path>] [--state <path>]"," [--seat-type control_seat|execution_seat|review_seat|seat_maintainer]"," [--execution-surface <opaque-id>] [--capability-source config|local_validation|seat_doctor|agent_self_declared]"," [--operational-status operational|degraded|blocked|offline]"," [--model-tier lite_fast|balanced|frontier_high_reasoning|local_unknown] [--model-id <opaque-id>]"," [--active-workers <n>] [--max-recommended-workers <n>] [--supports-parallel true|false]"," [--supported-strategies a,b] [--unsupported-strategies a,b] [--constraints a,b] [--json]"," etiquette seat heartbeat [--project <path>] [--state <path>] [--seat <id>]"," [--operational-status operational|degraded|blocked|offline] [--active-workers <n>] [--constraints a,b] [--json]"," etiquette seat status [--project <path>] [--state <path>] [--json]"," etiquette seat owner-card --manifest <path> [--project <path>] [--state <path>] [--at <iso8601>] [--json]","","usage (workflow mode consumer v0.1 - advisory-only policy preset checks):"," etiquette workflow validate --mode <path> [--json]"," etiquette workflow explain <deliberative|expedient|mixed> [--json]"," etiquette workflow check --mode <path> --task <path> [--json]","","usage (workspace authority v0 - personal-local, org-remote, managed-exec roots):"," etiquette workspace authority --profile <path> [--json]","","usage (operational dispatch consumer v0 - advisory wiring, no execution):"," etiquette dispatch scaffold [--project <path>] [--task-id <id>] [--seat <id>] [--out <dir>] [--json]"," etiquette dispatch check --mode <path> --task <path> [--project <path>] [--state <path>]"," [--sandbox-receipt <path>] [--strategy <id>] [--at <iso8601>] [--json]"," etiquette dispatch record --mode <path> --task <path> [--project <path>] [--state <path>]"," [--sandbox-receipt <path>] [--strategy <id>] [--at <iso8601>] [--recorded-by <seat>] [--json]"," etiquette dispatch projection --record <path> [--artifact-ref <ref>] [--receipt-ref <repo-ref>]"," [--status success|partial|blocked|failed] [--validation-summary <text>] [--json]","","usage (local-remote sync outbox v0 - local staging only, no network):"," etiquette sync stage [--project <path>] [--outbox <path>] [--workspace-id <opaque-id>]"," [--org-id <opaque-id>] [--seat-id <opaque-id>] [--at <iso8601>] [--json]"," etiquette sync join-plan --invite <path> --joined-by <seat> --claim-ref <ref>"," [--at <iso8601>] [--json]"," etiquette sync git-driver-status [--project <path>] [--driver-name etqseq] [--json]"," etiquette sync install-git-merge-driver [--project <path>] [--driver-name etqseq]"," [--driver-command <command>] [--skip-git-config] [--json]"].join(`
|
|
183
|
-
`)}import{homedir as LQ}from"os";import{join as Ce,resolve as aL}from"path";function wr(r){let n=aL(r),t=Ce(n,zQ);return{campaignRoot:n,runtimeDir:t,sqlitePath:Ce(t,"supervision.sqlite"),eventsPath:Ce(t,"events.jsonl"),latestStatePath:Ce(t,"latest-state.json"),latestProjectionPath:Ce(t,"latest-projection.json")}}function ZL(r){if(r&&r.trim().length>0)return aL(r);return SQ}var zQ=".etiquette/runtime/supervision",SQ;var tt=N(()=>{SQ=Ce(LQ(),".local","share","etiquette","seat-capabilities.json")});import{readFile as WQ}from"fs/promises";function xe(r){return typeof r==="string"}function Xt(r){return typeof r==="boolean"}function EQ(r){return xe(r)&&r_.includes(r)}function jQ(r){return xe(r)&&Bg.includes(r)}function JQ(r,n){let t=[];if(typeof r!=="object"||r===null||Array.isArray(r))throw new zi("manifest root is not an object",n,[`got ${Array.isArray(r)?"array":typeof r}`]);let e=r,i=[["schemaVersion",(_)=>_==="discipline-supervision-seat-capabilities.v1",'must equal "discipline-supervision-seat-capabilities.v1"'],["seatId",xe,"must be a non-empty string"],["displayName",xe,"must be a string"],["runtimeKind",jQ,`must be one of: ${Bg.join(", ")}`],["canReadHandshake",Xt,"must be a boolean"],["canWriteHandshake",Xt,"must be a boolean"],["canReadProductRepo",Xt,"must be a boolean"],["canRunBuilds",Xt,"must be a boolean"],["canWriteProductRepo",Xt,"must be a boolean"],["canLaunchRuntimeTargets",Xt,"must be a boolean"],["canAcceptMobileSteering",Xt,"must be a boolean"],["defaultRequiresHumanApprovalForProductMutation",Xt,"must be a boolean"],["updatedAt",xe,"must be an ISO-8601 string"]];for(let[_,c,u]of i){if(!(_ in e)){t.push(`${_} missing`);continue}if(!c(e[_]))t.push(`${_} invalid (${u})`)}if("seatId"in e&&xe(e.seatId)&&e.seatId.trim().length===0)t.push("seatId must not be empty");if(!("allowedActionClasses"in e))t.push("allowedActionClasses missing");else if(!Array.isArray(e.allowedActionClasses))t.push("allowedActionClasses must be an array");else{let _=e.allowedActionClasses.filter((c)=>!EQ(c));if(_.length>0)t.push(`allowedActionClasses contains unknown values: ${_.map(String).join(", ")}`)}if(t.length>0)throw new zi("seat manifest validation failed",n,t);return e}async function Gt(r){let n=ZL(r),t;try{t=await WQ(n,"utf-8")}catch(i){throw new zi("seat manifest could not be read",n,[i.code??String(i)])}let e;try{e=JSON.parse(t)}catch(i){throw new zi("seat manifest is not valid JSON",n,[String(i)])}return JQ(e,n)}var zi;var Bc=N(()=>{Xo();tt();zi=class zi extends Error{path;issues;constructor(r,n,t){super(`${r}: ${t.join("; ")}`);this.path=n;this.issues=t;this.name="SeatManifestError"}}});function Q0(r,n){let t=new Set(n);return r.every((e)=>t.has(e))}function CL(r){let n=[];if(!Number.isInteger(r.maxDurationMinutes)||r.maxDurationMinutes<=0)n.push("maxDurationMinutes must be a positive integer");switch(r.allowedActionClass){case"coordination_only":{if(!Q0(r.allowedCommands,["write_projection","append_evidence"]))n.push("allowedCommands must be a subset of {write_projection, append_evidence}");if(r.repoRoots.length>0)n.push("repoRoots must be empty");if(r.ownedPaths.length>0)n.push("ownedPaths must be empty");if(r.forbiddenPaths.length>0)n.push("forbiddenPaths must be empty");if(r.verifyCommands.length>0)n.push("verifyCommands must be empty");break}case"read_only_local":{if(!Q0(r.allowedCommands,["inspect_repo","write_projection","append_evidence"]))n.push("allowedCommands must be a subset of {inspect_repo, write_projection, append_evidence}");if(r.repoRoots.length===0)n.push("repoRoots must be non-empty");if(r.ownedPaths.length>0)n.push("ownedPaths must be empty");if(r.forbiddenPaths.length>0)n.push("forbiddenPaths must be empty");if(r.verifyCommands.length>0)n.push("verifyCommands must be empty");break}case"bounded_verification":{if(!r.allowedCommands.includes("run_verify"))n.push("allowedCommands must include run_verify");if(!Q0(r.allowedCommands,["inspect_repo","run_verify","write_projection","append_evidence"]))n.push("allowedCommands may only include {inspect_repo, run_verify, write_projection, append_evidence}");if(r.repoRoots.length===0)n.push("repoRoots must be non-empty");if(r.verifyCommands.length===0)n.push("verifyCommands must be non-empty");if(r.ownedPaths.length>0)n.push("ownedPaths must be empty");break}case"bounded_product_mutation":{if(!r.allowedCommands.includes("write_product_files"))n.push("allowedCommands must include write_product_files");if(r.repoRoots.length===0)n.push("repoRoots must be non-empty");if(r.ownedPaths.length===0)n.push("ownedPaths must be non-empty");if(r.verifyCommands.length===0)n.push("verifyCommands must be non-empty");if(!r.requiresHumanApproval)n.push("requiresHumanApproval must be true for bounded_product_mutation");break}case"human_only":{n.push("human_only turns may not be opened by automation");break}default:n.push(`unknown action class: ${r.allowedActionClass}`)}if(n.length>0)throw new Qc(r.allowedActionClass,n)}function xL(r,n){let t=[];if(!n.allowedActionClasses.includes(r.allowedActionClass))t.push(`seat ${n.seatId} does not allow action class ${r.allowedActionClass}`);if(r.allowedCommands.includes("run_verify")&&!n.canRunBuilds)t.push(`seat ${n.seatId} lacks canRunBuilds for run_verify`);if(r.allowedCommands.includes("write_product_files")&&!n.canWriteProductRepo)t.push(`seat ${n.seatId} lacks canWriteProductRepo for write_product_files`);if(r.allowedCommands.includes("launch_runtime_target")&&!n.canLaunchRuntimeTargets)t.push(`seat ${n.seatId} lacks canLaunchRuntimeTargets for launch_runtime_target`);if(r.allowedActionClass==="bounded_product_mutation"&&!r.requiresHumanApproval)t.push("bounded_product_mutation requires requiresHumanApproval=true");if(t.length>0)throw new Qc(r.allowedActionClass,t)}function pL(r,n){let t=[],e=(_,c,u)=>{if(_!==c)t.push(`${u}: requested=${String(_)} vs approved=${String(c)}`)},i=(_,c,u)=>{let o=[..._].sort(),$=[...c].sort();if(o.length!==$.length||o.some((g,d)=>g!==$[d]))t.push(`${u}: requested=[${o.join(",")}] vs approved=[${$.join(",")}]`)};return e(r.ownerSeat,n.ownerSeat,"ownerSeat"),e(r.allowedActionClass,n.allowedActionClass,"allowedActionClass"),e(r.maxDurationMinutes,n.maxDurationMinutes,"maxDurationMinutes"),e(r.requiresHumanApproval,n.requiresHumanApproval,"requiresHumanApproval"),e(r.projectionPolicy,n.projectionPolicy,"projectionPolicy"),i(r.allowedCommands,n.allowedCommands,"allowedCommands"),i(r.repoRoots,n.repoRoots,"repoRoots"),i(r.ownedPaths,n.ownedPaths,"ownedPaths"),i(r.forbiddenPaths,n.forbiddenPaths,"forbiddenPaths"),i(r.verifyCommands,n.verifyCommands,"verifyCommands"),{matches:t.length===0,diffs:t}}var Qc;var K0=N(()=>{Qc=class Qc extends Error{actionClass;issues;constructor(r,n){super(`action class ${r} violated: ${n.join("; ")}`);this.actionClass=r;this.issues=n;this.name="ActionClassViolation"}}});import{appendFile as AQ,mkdir as MQ,readFile as PQ}from"fs/promises";import{dirname as kQ}from"path";function XQ(r){let n={event_id:r.eventId,session_id:r.sessionId,turn_id:r.turnId,command_id:r.commandId,event_type:r.eventType,actor:r.actor,audience:r.audience,at:r.at,payload:r.payload??null};return`${JSON.stringify(n)}
|
|
184
|
-
`}async function Dr(r,n){await MQ(kQ(r),{recursive:!0}),await AQ(r,XQ(n),"utf-8")}async function Eg(r){let n;try{n=await PQ(r,"utf-8")}catch(e){if(e.code==="ENOENT")return[];throw e}return n.split(`
|
|
185
|
-
`).filter((e)=>e.trim().length>0).map((e,i)=>{let _;try{_=JSON.parse(e)}catch(c){throw Error(`events.jsonl line ${i+1} is not valid JSON: ${String(c)}`)}return{eventId:String(_.event_id),sessionId:String(_.session_id),turnId:_.turn_id===null||_.turn_id===void 0?null:String(_.turn_id),commandId:_.command_id===null||_.command_id===void 0?null:String(_.command_id),eventType:_.event_type,actor:String(_.actor),audience:_.audience,at:String(_.at),payload:_.payload}})}function Nr(r,n){return{eventId:r.randomId(),sessionId:n.sessionId,turnId:n.turnId,commandId:n.commandId,eventType:n.eventType,actor:n.actor,audience:n.audience,at:n.at,payload:n.payload}}var ft=()=>{};function nn(r){r.run(`
|
|
186
|
-
PRAGMA journal_mode = WAL;
|
|
187
|
-
|
|
188
|
-
CREATE TABLE IF NOT EXISTS sessions (
|
|
189
|
-
session_id TEXT PRIMARY KEY,
|
|
190
|
-
campaign_root TEXT NOT NULL,
|
|
191
|
-
topic TEXT NOT NULL,
|
|
192
|
-
objective TEXT NOT NULL,
|
|
193
|
-
status TEXT NOT NULL CHECK (status IN ('running','paused','blocked','awaiting_human','closed')),
|
|
194
|
-
lead_seat TEXT NOT NULL,
|
|
195
|
-
responder_seat TEXT NOT NULL,
|
|
196
|
-
escalation_owner TEXT NOT NULL,
|
|
197
|
-
time_cap_minutes INTEGER NOT NULL,
|
|
198
|
-
turn_cap INTEGER NOT NULL,
|
|
199
|
-
current_turn_id TEXT,
|
|
200
|
-
next_owner_hint TEXT,
|
|
201
|
-
approved_next_turn_json TEXT,
|
|
202
|
-
last_blocker_json TEXT,
|
|
203
|
-
source_refs_json TEXT NOT NULL,
|
|
204
|
-
created_at TEXT NOT NULL,
|
|
205
|
-
updated_at TEXT NOT NULL
|
|
206
|
-
);
|
|
207
|
-
|
|
208
|
-
CREATE TABLE IF NOT EXISTS turns (
|
|
209
|
-
turn_id TEXT PRIMARY KEY,
|
|
210
|
-
session_id TEXT NOT NULL REFERENCES sessions(session_id),
|
|
211
|
-
sequence_no INTEGER NOT NULL,
|
|
212
|
-
status TEXT NOT NULL CHECK (status IN ('open','closed')),
|
|
213
|
-
owner_seat TEXT NOT NULL,
|
|
214
|
-
allowed_action_class TEXT NOT NULL CHECK (allowed_action_class IN (
|
|
215
|
-
'coordination_only','read_only_local','bounded_verification','bounded_product_mutation','human_only'
|
|
216
|
-
)),
|
|
217
|
-
max_duration_minutes INTEGER NOT NULL,
|
|
218
|
-
allowed_commands_json TEXT NOT NULL,
|
|
219
|
-
repo_roots_json TEXT NOT NULL,
|
|
220
|
-
owned_paths_json TEXT NOT NULL,
|
|
221
|
-
forbidden_paths_json TEXT NOT NULL,
|
|
222
|
-
verify_commands_json TEXT NOT NULL,
|
|
223
|
-
requires_human_approval INTEGER NOT NULL CHECK (requires_human_approval IN (0,1)),
|
|
224
|
-
projection_policy TEXT NOT NULL CHECK (projection_policy IN ('on_state_change','on_command_only')),
|
|
225
|
-
started_at TEXT NOT NULL,
|
|
226
|
-
ended_at TEXT,
|
|
227
|
-
result TEXT CHECK (result IS NULL OR result IN ('done','blocked','handed_off','stopped','timed_out')),
|
|
228
|
-
summary TEXT,
|
|
229
|
-
evidence_refs_json TEXT NOT NULL,
|
|
230
|
-
UNIQUE (session_id, sequence_no)
|
|
231
|
-
);
|
|
232
|
-
|
|
233
|
-
CREATE TABLE IF NOT EXISTS commands (
|
|
234
|
-
command_id TEXT PRIMARY KEY,
|
|
235
|
-
session_id TEXT NOT NULL REFERENCES sessions(session_id),
|
|
236
|
-
turn_id TEXT REFERENCES turns(turn_id),
|
|
237
|
-
issued_by TEXT NOT NULL,
|
|
238
|
-
command TEXT NOT NULL CHECK (command IN (
|
|
239
|
-
'status','pause','resume','stop','approve_next_turn','redirect_owner',
|
|
240
|
-
'request_summary','mark_blocked','escalate_to_human'
|
|
241
|
-
)),
|
|
242
|
-
payload_json TEXT NOT NULL,
|
|
243
|
-
status TEXT NOT NULL CHECK (status IN ('queued','applied','rejected','expired')),
|
|
244
|
-
issued_at TEXT NOT NULL,
|
|
245
|
-
applied_at TEXT,
|
|
246
|
-
rejection_reason TEXT
|
|
247
|
-
);
|
|
248
|
-
|
|
249
|
-
CREATE TABLE IF NOT EXISTS events (
|
|
250
|
-
seq INTEGER PRIMARY KEY AUTOINCREMENT,
|
|
251
|
-
event_id TEXT UNIQUE NOT NULL,
|
|
252
|
-
session_id TEXT NOT NULL,
|
|
253
|
-
turn_id TEXT,
|
|
254
|
-
command_id TEXT,
|
|
255
|
-
event_type TEXT NOT NULL CHECK (event_type IN (
|
|
256
|
-
'session.opened','session.status_changed','session.next_owner_changed',
|
|
257
|
-
'turn.opened','turn.closed',
|
|
258
|
-
'command.queued','command.applied','command.rejected',
|
|
259
|
-
'projection.rendered','rebuild.completed'
|
|
260
|
-
)),
|
|
261
|
-
actor TEXT NOT NULL,
|
|
262
|
-
audience TEXT NOT NULL,
|
|
263
|
-
at TEXT NOT NULL,
|
|
264
|
-
payload_json TEXT NOT NULL
|
|
265
|
-
);
|
|
266
|
-
|
|
267
|
-
CREATE VIEW IF NOT EXISTS latest_session_state AS
|
|
268
|
-
SELECT
|
|
269
|
-
s.*,
|
|
270
|
-
t.turn_id AS current_turn_id_verified,
|
|
271
|
-
t.sequence_no AS current_turn_sequence_no,
|
|
272
|
-
t.status AS current_turn_status,
|
|
273
|
-
t.owner_seat AS current_turn_owner
|
|
274
|
-
FROM sessions s
|
|
275
|
-
LEFT JOIN turns t ON t.turn_id = s.current_turn_id;
|
|
276
|
-
|
|
277
|
-
CREATE VIEW IF NOT EXISTS latest_turn_state AS
|
|
278
|
-
SELECT * FROM turns
|
|
279
|
-
WHERE status = 'open'
|
|
280
|
-
ORDER BY started_at DESC;
|
|
281
|
-
|
|
282
|
-
CREATE VIEW IF NOT EXISTS pending_commands AS
|
|
283
|
-
SELECT * FROM commands
|
|
284
|
-
WHERE status = 'queued'
|
|
285
|
-
ORDER BY issued_at ASC;
|
|
286
|
-
`)}import{Database as GQ}from"bun:sqlite";function Br(r,n){r.run("BEGIN IMMEDIATE");try{let t=n();return r.run("COMMIT"),t}catch(t){try{r.run("ROLLBACK")}catch{}throw t}}function sL(r){let n=new GQ(r);return{run(t,e){if(!e||e.length===0){n.exec(t);return}n.query(t).run(...e)},all(t,e){let i=n.query(t);if(!e||e.length===0)return i.all();return i.all(...e)},get(t,e){let i=n.query(t);return(!e||e.length===0?i.get():i.get(...e))??void 0},close(){n.close()}}}var Vt=()=>{};var yr;var pe=N(()=>{yr=class yr extends Error{code;constructor(r,n){super(r);this.code=n;this.name="SupervisionRuntimeError"}}});import{mkdir as VQ,writeFile as FQ}from"fs/promises";import{join as lQ}from"path";async function Pn(r,n,t){let e=JSON.stringify({session:n,currentTurn:t},null,2);await VQ(lQ(r,".."),{recursive:!0}),await FQ(r,`${e}
|
|
287
|
-
`,"utf-8")}async function dn(r,n,t,e,i){let _={sessionId:t.sessionId,renderedAt:r.now().toISOString(),sessionSnapshot:t,currentTurn:e,pendingCommands:i};await r.projectionAdapter.writeLatestProjection(n.latestProjectionPath,_),await r.projectionAdapter.renderStatusBoard(_);let c=new Set([t.leadSeat,t.responderSeat,t.escalationOwner]);for(let u of c)await r.projectionAdapter.renderSeatChannel(_,u);return _}var Si=()=>{};function jg(r,n){r.run(`INSERT INTO sessions (
|
|
288
|
-
session_id, campaign_root, topic, objective, status,
|
|
289
|
-
lead_seat, responder_seat, escalation_owner,
|
|
290
|
-
time_cap_minutes, turn_cap,
|
|
291
|
-
current_turn_id, next_owner_hint, approved_next_turn_json, last_blocker_json,
|
|
292
|
-
source_refs_json, created_at, updated_at
|
|
293
|
-
) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)`,[n.sessionId,n.campaignRoot,n.topic,n.objective,n.status,n.leadSeat,n.responderSeat,n.escalationOwner,n.timeCapMinutes,n.turnCap,n.currentTurnId,n.nextOwnerHint,n.approvedNextTurnJson,n.lastBlockerJson,JSON.stringify(n.sourceRefs),n.createdAt,n.updatedAt])}function Jg(r,n){r.run(`INSERT INTO turns (
|
|
294
|
-
turn_id, session_id, sequence_no, status, owner_seat,
|
|
295
|
-
allowed_action_class, max_duration_minutes, allowed_commands_json,
|
|
296
|
-
repo_roots_json, owned_paths_json, forbidden_paths_json, verify_commands_json,
|
|
297
|
-
requires_human_approval, projection_policy,
|
|
298
|
-
started_at, ended_at, result, summary, evidence_refs_json
|
|
299
|
-
) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)`,[n.turnId,n.sessionId,n.sequenceNo,n.status,n.ownerSeat,n.allowedActionClass,n.maxDurationMinutes,JSON.stringify(n.allowedCommands),JSON.stringify(n.repoRoots),JSON.stringify(n.ownedPaths),JSON.stringify(n.forbiddenPaths),JSON.stringify(n.verifyCommands),n.requiresHumanApproval?1:0,n.projectionPolicy,n.startedAt,n.endedAt,n.result,n.summary,JSON.stringify(n.evidenceRefs)])}function Wi(r,n){r.run(`INSERT INTO commands (
|
|
300
|
-
command_id, session_id, turn_id, issued_by, command, payload_json,
|
|
301
|
-
status, issued_at, applied_at, rejection_reason
|
|
302
|
-
) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?)`,[n.commandId,n.sessionId,n.turnId,n.issuedBy,n.command,n.payloadJson,n.status,n.issuedAt,n.appliedAt,n.rejectionReason])}function dr(r,n){r.run(`INSERT INTO events (
|
|
303
|
-
event_id, session_id, turn_id, command_id, event_type,
|
|
304
|
-
actor, audience, at, payload_json
|
|
305
|
-
) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?)`,[n.eventId,n.sessionId,n.turnId,n.commandId,n.eventType,n.actor,n.audience,n.at,JSON.stringify(n.payload??null)])}function Ft(r,n,t,e){r.run("UPDATE sessions SET status = ?, updated_at = ? WHERE session_id = ?",[t,e,n])}function Ag(r,n,t,e){r.run("UPDATE sessions SET next_owner_hint = ?, updated_at = ? WHERE session_id = ?",[t,e,n])}function Mg(r,n,t,e){r.run("UPDATE sessions SET approved_next_turn_json = ?, updated_at = ? WHERE session_id = ?",[t,e,n])}function Pg(r,n,t,e){r.run("UPDATE sessions SET last_blocker_json = ?, updated_at = ? WHERE session_id = ?",[t,e,n])}function kg(r,n,t,e){r.run("UPDATE sessions SET current_turn_id = ?, updated_at = ? WHERE session_id = ?",[t,e,n])}function Xg(r,n,t){r.run("UPDATE sessions SET current_turn_id = NULL, updated_at = ? WHERE session_id = ?",[t,n])}function Gg(r,n,t){r.run("UPDATE sessions SET approved_next_turn_json = NULL, updated_at = ? WHERE session_id = ?",[t,n])}function Vg(r,n){r.run("UPDATE turns SET status = ?, ended_at = ?, result = ?, summary = ?, evidence_refs_json = ? WHERE turn_id = ?",[n.status,n.endedAt,n.result,n.summary,JSON.stringify(n.evidenceRefs),n.turnId])}function Fg(r,n,t){r.run("UPDATE commands SET status = 'applied', applied_at = ? WHERE command_id = ?",[t,n])}function lg(r,n,t,e){r.run("UPDATE commands SET status = 'rejected', applied_at = ?, rejection_reason = ? WHERE command_id = ?",[t,e,n])}function fn(r,n){let t=r.get("SELECT * FROM sessions WHERE session_id = ?",[n]);if(!t)throw new yr(`session ${n} not found`,"SESSION_NOT_FOUND");return vQ(t)}function vQ(r){return{sessionId:r.session_id,campaignRoot:r.campaign_root,topic:r.topic,objective:r.objective,status:r.status,leadSeat:r.lead_seat,responderSeat:r.responder_seat,escalationOwner:r.escalation_owner,timeCapMinutes:r.time_cap_minutes,turnCap:r.turn_cap,currentTurnId:r.current_turn_id,nextOwnerHint:r.next_owner_hint,approvedNextTurnJson:r.approved_next_turn_json,lastBlockerJson:r.last_blocker_json,sourceRefs:JSON.parse(r.source_refs_json),createdAt:r.created_at,updatedAt:r.updated_at}}function rz(r,n){let t=r.get("SELECT * FROM turns WHERE turn_id = ?",[n]);if(!t)throw new yr(`turn ${n} not found`,"TURN_NOT_FOUND");return nz(t)}function lt(r,n){if(!n.currentTurnId)return null;let t=r.get("SELECT * FROM turns WHERE turn_id = ?",[n.currentTurnId]);return t?nz(t):null}function nz(r){return{turnId:r.turn_id,sessionId:r.session_id,sequenceNo:r.sequence_no,status:r.status,ownerSeat:r.owner_seat,allowedActionClass:r.allowed_action_class,maxDurationMinutes:r.max_duration_minutes,allowedCommands:JSON.parse(r.allowed_commands_json),repoRoots:JSON.parse(r.repo_roots_json),ownedPaths:JSON.parse(r.owned_paths_json),forbiddenPaths:JSON.parse(r.forbidden_paths_json),verifyCommands:JSON.parse(r.verify_commands_json),requiresHumanApproval:r.requires_human_approval===1,projectionPolicy:r.projection_policy,startedAt:r.started_at,endedAt:r.ended_at,result:r.result,summary:r.summary,evidenceRefs:JSON.parse(r.evidence_refs_json)}}function qn(r,n){return r.all("SELECT * FROM commands WHERE session_id = ? AND status = ? ORDER BY issued_at ASC",[n,"queued"]).map(YQ)}function YQ(r){return{commandId:r.command_id,sessionId:r.session_id,turnId:r.turn_id,issuedBy:r.issued_by,command:r.command,payloadJson:r.payload_json,status:r.status,issuedAt:r.issued_at,appliedAt:r.applied_at,rejectionReason:r.rejection_reason}}var vt=N(()=>{pe()});import{existsSync as HQ}from"fs";import{appendFile as BQ,readFile as QQ}from"fs/promises";import{join as KQ}from"path";async function tz(r,n){await Gt(r.seatManifestOverride);let t=wr(r.campaignRoot);await n.mkdirp(t.runtimeDir),await aQ(r.campaignRoot);let e=n.openSqlite(t.sqlitePath);try{if(nn(e),e.get("SELECT session_id FROM sessions WHERE session_id = ?",[r.sessionId]))throw new yr(`session ${r.sessionId} already exists in ${t.sqlitePath}`,"SESSION_EXISTS");let _=n.now().toISOString(),c={sessionId:r.sessionId,campaignRoot:t.campaignRoot,topic:r.topic,objective:r.objective,status:"running",leadSeat:r.leadSeat,responderSeat:r.responderSeat,escalationOwner:r.escalationOwner,timeCapMinutes:r.timeCapMinutes,turnCap:r.turnCap,currentTurnId:null,nextOwnerHint:null,approvedNextTurnJson:null,lastBlockerJson:null,sourceRefs:[...r.sourceRefs],createdAt:_,updatedAt:_},u=Nr(n,{eventType:"session.opened",sessionId:c.sessionId,turnId:null,commandId:null,actor:r.leadSeat,audience:"all",at:_,payload:c});return await Dr(t.eventsPath,u),Br(e,()=>{jg(e,c),dr(e,u)}),await Pn(t.latestStatePath,c,null),await dn(n,t,c,null,[]),c}finally{e.close()}}async function aQ(r){let n=KQ(r,".git","info","exclude");if(!HQ(n))return;try{let t=await QQ(n,"utf-8"),e=".etiquette/runtime/";if(!t.split(`
|
|
306
|
-
`).some((i)=>i.trim()===".etiquette/runtime/")){let i=t.endsWith(`
|
|
307
|
-
`)?"":`
|
|
308
|
-
`;await BQ(n,`${i}.etiquette/runtime/
|
|
309
|
-
`)}}catch{}}var iz=N(()=>{pe();ft();Bc();tt();Si();Vt();vt()});async function ez(r,n){let t=wr(r.campaignRoot),e=n.openSqlite(t.sqlitePath);try{nn(e);let i=fn(e,r.sessionId),_=lt(e,i),c=qn(e,r.sessionId);return{sessionId:i.sessionId,renderedAt:n.now().toISOString(),sessionSnapshot:i,currentTurn:_,pendingCommands:c}}finally{e.close()}}async function _z(r,n){let t=wr(r.campaignRoot),e=n.openSqlite(t.sqlitePath);try{nn(e);let i=fn(e,r.sessionId),_=lt(e,i),c=qn(e,r.sessionId),u=await dn(n,t,i,_,c),o=u.renderedAt,$=Nr(n,{eventType:"projection.rendered",sessionId:i.sessionId,turnId:i.currentTurnId,commandId:null,actor:"system",audience:"all",at:o,payload:{renderedAt:o}});return await Dr(t.eventsPath,$),Br(e,()=>{dr(e,$)}),u}finally{e.close()}}var cz=N(()=>{ft();tt();Si();Vt();vt()});async function uz(r,n){let t=wr(r.campaignRoot),e=await Gt(r.seatManifestOverride);if(e.seatId!==r.ownerSeat)throw new yr(`seat manifest seatId (${e.seatId}) does not match turn owner (${r.ownerSeat}); each seat must load its own manifest`,"SEAT_MISMATCH");if(r.allowedActionClass==="human_only")throw await ZQ(t,n,r.sessionId,r.ownerSeat),new yr("human_only turns may not be opened by automation","HUMAN_ONLY");CL(r),xL(r,e);let i=n.openSqlite(t.sqlitePath);try{nn(i);let _=fn(i,r.sessionId);if(_.status!=="running")throw new yr(`cannot open turn while session status is ${_.status}`,"SESSION_NOT_RUNNING");let c=i.get("SELECT turn_id FROM turns WHERE session_id = ? AND status = ?",[r.sessionId,"open"]);if(c)throw new yr(`session ${r.sessionId} already has an open turn (${c.turn_id})`,"TURN_ALREADY_OPEN");let u=!1;if(_.approvedNextTurnJson){let m;try{m=JSON.parse(_.approvedNextTurnJson)}catch(O){throw new yr(`stored approvedNextTurnJson is not valid JSON: ${String(O)}`,"APPROVAL_CORRUPT")}let w=pL({...r,projectionPolicy:r.projectionPolicy},m);if(!w.matches)throw new yr(`requested turn does not match approved_next_turn: ${w.diffs.join("; ")}`,"APPROVAL_MISMATCH");u=!0}else if(r.allowedActionClass==="bounded_product_mutation")throw new yr("bounded_product_mutation requires a prior approve_next_turn; none is present","APPROVAL_REQUIRED");let $=(i.get("SELECT MAX(sequence_no) AS max_seq FROM turns WHERE session_id = ?",[r.sessionId])?.max_seq??0)+1;if($>_.turnCap)throw new yr(`turn cap exceeded: session allows ${_.turnCap}, this would be turn ${$}`,"TURN_CAP");let g=n.now().toISOString(),d={turnId:n.randomId(),sessionId:r.sessionId,sequenceNo:$,status:"open",ownerSeat:r.ownerSeat,allowedActionClass:r.allowedActionClass,maxDurationMinutes:r.maxDurationMinutes,allowedCommands:[...r.allowedCommands],repoRoots:[...r.repoRoots],ownedPaths:[...r.ownedPaths],forbiddenPaths:[...r.forbiddenPaths],verifyCommands:[...r.verifyCommands],requiresHumanApproval:r.requiresHumanApproval,projectionPolicy:r.projectionPolicy,startedAt:g,endedAt:null,result:null,summary:null,evidenceRefs:[]},f=Nr(n,{eventType:"turn.opened",sessionId:_.sessionId,turnId:d.turnId,commandId:null,actor:r.ownerSeat,audience:"all",at:g,payload:d});await Dr(t.eventsPath,f),Br(i,()=>{if(Jg(i,d),kg(i,_.sessionId,d.turnId,g),u)Gg(i,_.sessionId,g);dr(i,f)});let b={..._,currentTurnId:d.turnId,approvedNextTurnJson:u?null:_.approvedNextTurnJson,updatedAt:g};return await Pn(t.latestStatePath,b,d),await dn(n,t,b,d,qn(i,_.sessionId)),d}finally{i.close()}}async function ZQ(r,n,t,e){let i=n.openSqlite(r.sqlitePath);try{nn(i);let _=fn(i,t),c=n.now().toISOString(),o=_.status!=="awaiting_human"?Nr(n,{eventType:"session.status_changed",sessionId:t,turnId:null,commandId:null,actor:"system",audience:"all",at:c,payload:{from:_.status,to:"awaiting_human",reason:"human_only_turn_attempted"}}):null,$={commandId:n.randomId(),sessionId:t,turnId:null,issuedBy:e,command:"escalate_to_human",payloadJson:JSON.stringify({reason:"human_only_turn_attempted"}),status:"rejected",issuedAt:c,appliedAt:c,rejectionReason:"human_only turns may not be opened by automation"},g=Nr(n,{eventType:"command.rejected",sessionId:t,turnId:null,commandId:$.commandId,actor:"system",audience:"all",at:c,payload:{command:"turn-open:human_only",rejectedAt:c,reason:$.rejectionReason}});if(o)await Dr(r.eventsPath,o);await Dr(r.eventsPath,g),Br(i,()=>{if(o)Ft(i,t,"awaiting_human",c),dr(i,o);Wi(i,$),dr(i,g)});let d={..._,status:"awaiting_human",updatedAt:c};await Pn(r.latestStatePath,d,null),await dn(n,r,d,null,qn(i,t))}finally{i.close()}}var oz=N(()=>{K0();pe();ft();Bc();tt();Si();Vt();vt()});async function $z(r,n){let t=wr(r.campaignRoot),e=n.openSqlite(t.sqlitePath);try{nn(e);let i=fn(e,r.sessionId),_=rz(e,r.turnId);if(_.sessionId!==r.sessionId)throw new yr(`turn ${r.turnId} does not belong to session ${r.sessionId}`,"TURN_SESSION_MISMATCH");if(_.status!=="open")throw new yr(`turn ${r.turnId} is not open (status=${_.status})`,"TURN_NOT_OPEN");let c=n.now().toISOString(),u={..._,status:"closed",endedAt:c,result:r.result,summary:r.summary,evidenceRefs:[...r.evidenceRefs]},o=r.result==="done"||r.result==="handed_off"?"running":r.result==="blocked"?"blocked":"awaiting_human",$=o!==i.status,g=o==="awaiting_human"&&!!i.approvedNextTurnJson,d=Nr(n,{eventType:"turn.closed",sessionId:r.sessionId,turnId:_.turnId,commandId:null,actor:_.ownerSeat,audience:"all",at:c,payload:{endedAt:c,result:r.result,summary:r.summary,evidenceRefs:[...r.evidenceRefs]}}),f=$?Nr(n,{eventType:"session.status_changed",sessionId:i.sessionId,turnId:null,commandId:null,actor:"system",audience:"all",at:c,payload:{from:i.status,to:o,reason:`turn_closed:${r.result}`}}):null;if(await Dr(t.eventsPath,d),f)await Dr(t.eventsPath,f);Br(e,()=>{if(Vg(e,u),Xg(e,i.sessionId,c),dr(e,d),f)Ft(e,i.sessionId,o,c),dr(e,f);if(g)Gg(e,i.sessionId,c)});let b={...i,currentTurnId:null,status:o,approvedNextTurnJson:g?null:i.approvedNextTurnJson,updatedAt:c};return await Pn(t.latestStatePath,b,null),await dn(n,t,b,null,qn(e,i.sessionId)),u}finally{e.close()}}var gz=N(()=>{pe();ft();tt();Si();Vt();vt()});async function dz(r,n){await Gt(r.seatManifestOverride);let t=wr(r.campaignRoot),e=n.openSqlite(t.sqlitePath);try{nn(e);let i=fn(e,r.sessionId),_=n.now().toISOString(),c=n.randomId(),u={commandId:c,sessionId:r.sessionId,turnId:i.currentTurnId,issuedBy:r.actor,command:r.command,payloadJson:r.payloadJson,status:"queued",issuedAt:_,appliedAt:null,rejectionReason:null},o=Nr(n,{eventType:"command.queued",sessionId:r.sessionId,turnId:i.currentTurnId,commandId:c,actor:r.actor,audience:"all",at:_,payload:{command:r.command,issuedBy:r.actor,turnId:i.currentTurnId,payloadJson:r.payloadJson,issuedAt:_}}),$=CQ(i,r.command,r.payloadJson,_);if($.status==="rejected"){let q=$.reason??"unknown",T=Nr(n,{eventType:"command.rejected",sessionId:r.sessionId,turnId:i.currentTurnId,commandId:c,actor:"system",audience:"all",at:_,payload:{command:r.command,rejectedAt:_,reason:q}});return await Dr(t.eventsPath,o),await Dr(t.eventsPath,T),Br(e,()=>{Wi(e,u),dr(e,o),lg(e,c,_,q),dr(e,T)}),{...u,status:"rejected",appliedAt:_,rejectionReason:q}}let g=Nr(n,{eventType:"command.applied",sessionId:r.sessionId,turnId:i.currentTurnId,commandId:c,actor:"system",audience:"all",at:_,payload:{command:r.command,appliedAt:_,resultingState:$.resultingState??{}}}),d=!!($.statusTo&&$.statusTo!==i.status),f=$.nextOwnerTo!==void 0&&$.nextOwnerTo!==i.nextOwnerHint,b=d?Nr(n,{eventType:"session.status_changed",sessionId:r.sessionId,turnId:null,commandId:c,actor:"system",audience:"all",at:_,payload:{from:i.status,to:$.statusTo,reason:`command:${r.command}`}}):null,m=f?Nr(n,{eventType:"session.next_owner_changed",sessionId:r.sessionId,turnId:null,commandId:c,actor:"system",audience:"all",at:_,payload:{from:i.nextOwnerHint,to:$.nextOwnerTo}}):null;if(await Dr(t.eventsPath,o),await Dr(t.eventsPath,g),b)await Dr(t.eventsPath,b);if(m)await Dr(t.eventsPath,m);Br(e,()=>{if(Wi(e,u),dr(e,o),Fg(e,c,_),dr(e,g),b&&$.statusTo)Ft(e,r.sessionId,$.statusTo,_),dr(e,b);if(m)Ag(e,r.sessionId,$.nextOwnerTo??null,_),dr(e,m);if($.resultingState?.approvedNextTurnJson!==void 0)Mg(e,r.sessionId,$.resultingState.approvedNextTurnJson,_);if($.resultingState?.lastBlockerJson!==void 0)Pg(e,r.sessionId,$.resultingState.lastBlockerJson,_)});let w=fn(e,r.sessionId),O={...u,status:"applied",appliedAt:_};return await Pn(t.latestStatePath,w,lt(e,w)),await dn(n,t,w,lt(e,w),qn(e,r.sessionId)),O}finally{e.close()}}function CQ(r,n,t,e){switch(n){case"status":return{status:"applied"};case"pause":if(r.status!=="running")return{status:"rejected",reason:`pause requires status=running (current=${r.status})`};return{status:"applied",statusTo:"paused"};case"resume":if(r.status==="paused")return{status:"applied",statusTo:"running"};if(r.status==="awaiting_human"&&r.approvedNextTurnJson)return{status:"applied",statusTo:"running"};return{status:"rejected",reason:r.status==="awaiting_human"?"resume from awaiting_human requires prior approve_next_turn":`resume requires status=paused or awaiting_human+approval (current=${r.status})`};case"stop":if(r.status==="closed")return{status:"rejected",reason:"cannot stop a closed session"};return{status:"applied",statusTo:"awaiting_human",resultingState:{approvedNextTurnJson:null}};case"mark_blocked":{let i=a0(t);if(!i||typeof i!=="object")return{status:"rejected",reason:"mark_blocked requires a JSON object payload"};let _=i;if(!_.reason||typeof _.reason!=="string")return{status:"rejected",reason:'mark_blocked payload requires "reason" string'};let c={reason:_.reason,raisedBy:typeof _.raisedBy==="string"?_.raisedBy:"unknown",raisedAt:typeof _.raisedAt==="string"?_.raisedAt:e,escalationOwner:typeof _.escalationOwner==="string"?_.escalationOwner:r.escalationOwner,evidenceRefs:Array.isArray(_.evidenceRefs)?_.evidenceRefs.filter((u)=>typeof u==="string"):[]};return{status:"applied",statusTo:"blocked",resultingState:{lastBlockerJson:JSON.stringify(c)}}}case"request_summary":return{status:"applied"};case"redirect_owner":{let i=a0(t),_=i&&typeof i==="object"?i.nextOwnerHint:void 0;if(_!==null&&typeof _!=="string")return{status:"rejected",reason:"redirect_owner requires { nextOwnerHint: string | null }"};return{status:"applied",nextOwnerTo:_}}case"approve_next_turn":{let i=a0(t);if(!i||typeof i!=="object")return{status:"rejected",reason:"approve_next_turn requires a JSON object payload"};let _=i,c=["ownerSeat","allowedActionClass","projectionPolicy","issuedBy","issuedAt"];for(let o of c)if(typeof _[o]!=="string")return{status:"rejected",reason:`approve_next_turn payload missing "${o}"`};if(typeof _.maxDurationMinutes!=="number")return{status:"rejected",reason:'approve_next_turn payload "maxDurationMinutes" must be a number'};if(typeof _.requiresHumanApproval!=="boolean")return{status:"rejected",reason:'approve_next_turn payload "requiresHumanApproval" must be a boolean'};for(let o of["allowedCommands","repoRoots","ownedPaths","forbiddenPaths","verifyCommands"])if(!Array.isArray(_[o]))return{status:"rejected",reason:`approve_next_turn payload "${o}" must be an array`};return{status:"applied",statusTo:r.status==="awaiting_human"?"running":void 0,resultingState:{approvedNextTurnJson:t}}}case"escalate_to_human":return{status:"applied",statusTo:"awaiting_human"};default:return{status:"rejected",reason:`unknown command: ${String(n)}`}}}function a0(r){try{return JSON.parse(r)}catch{return}}var fz=N(()=>{ft();Bc();tt();Si();Vt();vt()});function bz(r,n){switch(n.eventType){case"session.opened":{let t=n.payload;jg(r,t);break}case"session.status_changed":{let t=n.payload;Ft(r,n.sessionId,t.to,n.at);break}case"session.next_owner_changed":{let t=n.payload;Ag(r,n.sessionId,t.to,n.at);break}case"turn.opened":{let t=n.payload;Jg(r,t),kg(r,n.sessionId,t.turnId,n.at);break}case"turn.closed":{let t=n.payload;Vg(r,{turnId:n.turnId??"",sessionId:n.sessionId,sequenceNo:0,status:"closed",ownerSeat:"",allowedActionClass:"coordination_only",maxDurationMinutes:0,allowedCommands:[],repoRoots:[],ownedPaths:[],forbiddenPaths:[],verifyCommands:[],requiresHumanApproval:!1,projectionPolicy:"on_state_change",startedAt:n.at,endedAt:t.endedAt,result:t.result,summary:t.summary,evidenceRefs:[...t.evidenceRefs]}),Xg(r,n.sessionId,n.at);break}case"command.queued":{let t=n.payload;Wi(r,{commandId:n.commandId??"",sessionId:n.sessionId,turnId:t.turnId,issuedBy:t.issuedBy,command:t.command,payloadJson:t.payloadJson,status:"queued",issuedAt:t.issuedAt,appliedAt:null,rejectionReason:null});break}case"command.applied":{let t=n.payload;if(Fg(r,n.commandId??"",t.appliedAt),t.resultingState?.approvedNextTurnJson!==void 0)Mg(r,n.sessionId,t.resultingState.approvedNextTurnJson,t.appliedAt);if(t.resultingState?.lastBlockerJson!==void 0)Pg(r,n.sessionId,t.resultingState.lastBlockerJson,t.appliedAt);break}case"command.rejected":{let t=n.payload;lg(r,n.commandId??"",t.rejectedAt,t.reason);break}case"projection.rendered":case"rebuild.completed":break}dr(r,n)}var wz=N(()=>{vt()});import{existsSync as xQ}from"fs";import{rm as Z0}from"fs/promises";async function mz(r,n){let t=wr(r.campaignRoot);if(xQ(t.sqlitePath))await Z0(t.sqlitePath,{force:!0});await Z0(`${t.sqlitePath}-wal`,{force:!0}),await Z0(`${t.sqlitePath}-shm`,{force:!0});let e=await Eg(t.eventsPath),i=n.openSqlite(t.sqlitePath);try{nn(i);let _=Br(i,()=>{let f=0;for(let b of e){if(b.sessionId!==r.sessionId)continue;bz(i,b),f+=1}return f}),c=fn(i,r.sessionId),u=lt(i,c),o=qn(i,r.sessionId);await Pn(t.latestStatePath,c,u);let $=await dn(n,t,c,u,o),g=n.now().toISOString(),d=Nr(n,{eventType:"rebuild.completed",sessionId:r.sessionId,turnId:c.currentTurnId,commandId:null,actor:"system",audience:"all",at:g,payload:{completedAt:g,eventCount:_}});return await Dr(t.eventsPath,d),Br(i,()=>{dr(i,d)}),$}finally{i.close()}}var Iz=N(()=>{ft();wz();tt();Si();Vt();vt()});var C0=N(()=>{tt();Bc();K0();ft();Vt();pe();iz();cz();oz();gz();fz();Iz()});import{mkdir as x0,writeFile as p0}from"fs/promises";import{dirname as pQ,join as Oz,resolve as Uz}from"path";function hz(r){let n=Uz(r.projectionDir),t=Uz(r.eventsPath),e=Oz(n,"STATUS_BOARD.md"),i=(_)=>{let c=_.replace(/[^A-Za-z0-9._@-]/g,"_");return Oz(n,`${c}.channel.md`)};return{async renderStatusBoard(_){let c=sQ(_);await x0(n,{recursive:!0}),await p0(e,c,"utf-8")},async renderSeatChannel(_,c){let u=await Eg(t),o=t5(_,c,u);await x0(n,{recursive:!0}),await p0(i(c),o,"utf-8")},async writeLatestProjection(_,c){let u=_5(c);await x0(pQ(_),{recursive:!0}),await p0(_,`${JSON.stringify(u,null,2)}
|
|
310
|
-
`,"utf-8")}}}function sQ(r){let n=r.sessionSnapshot,t=[];if(t.push("# Supervision Status Board"),t.push(""),t.push("> Generated by etiquette supervision sidecar."),t.push("> Source of truth: `events.jsonl` in the campaign runtime."),t.push("> If this file and supervision state disagree, regenerate; do not hand-edit."),t.push(""),t.push("## Session"),t.push(""),t.push(`- **session_id:** \`${n.sessionId}\``),t.push(`- **topic:** ${n.topic}`),t.push(`- **objective:** ${n.objective}`),t.push(`- **status:** \`${n.status}\``),t.push(`- **lead_seat:** \`${n.leadSeat}\``),t.push(`- **responder_seat:** \`${n.responderSeat}\``),t.push(`- **escalation_owner:** \`${n.escalationOwner}\``),t.push(`- **time_cap_minutes:** ${n.timeCapMinutes}`),t.push(`- **turn_cap:** ${n.turnCap}`),n.nextOwnerHint)t.push(`- **next_owner_hint:** \`${n.nextOwnerHint}\``);if(n.approvedNextTurnJson)t.push("- **approved_next_turn:** present (see events.jsonl for payload)");if(t.push(`- **created_at:** ${n.createdAt}`),t.push(`- **updated_at:** ${n.updatedAt}`),n.sourceRefs.length>0){t.push("- **source_refs:**");for(let e of[...n.sourceRefs].sort())t.push(` - ${e}`)}if(t.push(""),t.push("## Current turn"),t.push(""),r.currentTurn)r5(t,r.currentTurn);else t.push("_no open turn_");if(t.push(""),t.push("## Pending commands"),t.push(""),r.pendingCommands.length===0)t.push("_none_");else for(let e of[...r.pendingCommands].sort((i,_)=>i.issuedAt.localeCompare(_.issuedAt)))n5(t,e);if(n.lastBlockerJson)t.push(""),t.push("## Last blocker"),t.push(""),t.push("```json"),t.push(e5(n.lastBlockerJson)),t.push("```");return t.push(""),t.push("---"),t.push(`Rendered at ${r.renderedAt} by the supervision sidecar.`),t.push("Divergence rule: patch this file by regenerating, not by hand-edit."),t.push(""),t.join(`
|
|
311
|
-
`)}function r5(r,n){if(r.push(`- **turn_id:** \`${n.turnId}\``),r.push(`- **sequence_no:** ${n.sequenceNo}`),r.push(`- **status:** \`${n.status}\``),r.push(`- **owner:** \`${n.ownerSeat}\``),r.push(`- **action_class:** \`${n.allowedActionClass}\``),r.push(`- **max_duration_minutes:** ${n.maxDurationMinutes}`),r.push(`- **allowed_commands:** [${[...n.allowedCommands].sort().join(", ")}]`),n.repoRoots.length>0)r.push(`- **repo_roots:** [${[...n.repoRoots].sort().join(", ")}]`);if(n.ownedPaths.length>0)r.push(`- **owned_paths:** [${[...n.ownedPaths].sort().join(", ")}]`);if(n.forbiddenPaths.length>0)r.push(`- **forbidden_paths:** [${[...n.forbiddenPaths].sort().join(", ")}]`);if(n.verifyCommands.length>0)r.push(`- **verify_commands:** [${[...n.verifyCommands].sort().join(", ")}]`);r.push(`- **requires_human_approval:** ${n.requiresHumanApproval}`),r.push(`- **projection_policy:** \`${n.projectionPolicy}\``),r.push(`- **started_at:** ${n.startedAt}`)}function n5(r,n){r.push(`- \`${n.command}\` by \`${n.issuedBy}\` at ${n.issuedAt}`)}function t5(r,n,t){let e=r.sessionSnapshot,i=`seat:${n}`,_=[];if(e.leadSeat===n)_.push("lead");if(e.responderSeat===n)_.push("responder");if(e.escalationOwner===n)_.push("escalation_owner");let c=new Set(["projection.rendered","rebuild.completed"]),u=t.filter(($)=>{if(c.has($.eventType))return!1;if($.audience==="all")return!0;if($.audience===i)return!0;if($.audience==="lead"&&_.includes("lead"))return!0;if($.audience==="responder"&&_.includes("responder"))return!0;if($.audience==="escalation_owner"&&_.includes("escalation_owner"))return!0;return!1}),o=[];if(o.push(`# ${n} - Supervision Channel`),o.push(""),o.push(`- **session_id:** \`${e.sessionId}\``),o.push(`- **session_topic:** ${e.topic}`),o.push(`- **seat_roles_in_session:** ${_.length>0?_.join(", "):"_none_"}`),o.push(`- **generated_at:** ${r.renderedAt}`),o.push(""),o.push("> Auto-generated projection. Do not hand-edit."),o.push("> Authoritative source: `events.jsonl` filtered by seat audience."),o.push("> Regeneration overwrites this file on every state change."),o.push(""),o.push(`## Event log (${u.length} entries)`),o.push(""),u.length===0)o.push("_no events addressed to this seat yet_");else for(let $ of u)o.push(`- \`${$.at}\` \u2014 \`${$.eventType}\` \u2014 ${i5($)}`);return o.push(""),o.join(`
|
|
312
|
-
`)}function i5(r){switch(r.eventType){case"session.opened":return`session opened by ${r.actor}`;case"session.status_changed":{let n=r.payload??{};return`status ${n.from??"?"} -> ${n.to??"?"}`}case"session.next_owner_changed":{let n=r.payload??{};return`next_owner_hint ${n.from??"null"} -> ${n.to??"null"}`}case"turn.opened":{let n=r.payload??{};return`turn opened for ${n.ownerSeat??"?"} (${n.allowedActionClass??"?"})`}case"turn.closed":{let n=r.payload??{};return`turn closed (${n.result??"?"}): ${n.summary??""}`}case"command.queued":{let n=r.payload??{};return`${n.command??"?"} queued by ${n.issuedBy??"?"}`}case"command.applied":return`${(r.payload??{}).command??"?"} applied`;case"command.rejected":{let n=r.payload??{};return`${n.command??"?"} rejected: ${n.reason??""}`}case"projection.rendered":return"projection rendered";case"rebuild.completed":return`rebuild completed (${(r.payload??{}).eventCount??"?"} events replayed)`;default:return`(event type ${String(r.eventType)})`}}function e5(r){try{return JSON.stringify(JSON.parse(r),null,2)}catch{return r}}function _5(r){let n=[...r.sessionSnapshot.sourceRefs].sort(),t=[...r.pendingCommands].sort((e,i)=>e.issuedAt.localeCompare(i.issuedAt)||e.commandId.localeCompare(i.commandId));return{...r,sessionSnapshot:{...r.sessionSnapshot,sourceRefs:n},pendingCommands:t}}var Rz=N(()=>{ft()});import{randomUUID as c5}from"crypto";import{appendFile as u5,mkdir as o5,readFile as $5,writeFile as g5}from"fs/promises";import{resolve as Dz}from"path";function Yt(r,n){let t=hz({projectionDir:r,eventsPath:n});return{now:()=>new Date,randomId:()=>c5(),readFile:(e)=>$5(e,"utf-8"),writeFile:(e,i)=>g5(e,i,"utf-8"),appendFile:(e,i)=>u5(e,i,"utf-8"),mkdirp:async(e)=>{await o5(e,{recursive:!0})},openSqlite:(e)=>sL(e),projectionAdapter:t}}function Ht(r,n,t){let e=I(r,"projection-dir");if(e)return Dz(e);return Dz(n,".etiquette","projections",t)}var yz=N(()=>{C0();Rz();Ir()});var qz={};kn(qz,{dispatchSupervision:()=>f5,SUPERVISION_COMMANDS_CLI:()=>d5});import{resolve as Ei}from"path";async function f5(r,n,t){try{switch(r){case"seat-validate":{let e=I(t,"manifest"),i=await Gt(e);if(t.json===!0)console.log(JSON.stringify(i,null,2));else console.log(`seat ${i.seatId} (${i.runtimeKind}) \u2014 manifest OK`),console.log(` allowedActionClasses: ${i.allowedActionClasses.join(", ")}`),console.log(` canWriteProductRepo: ${i.canWriteProductRepo}`),console.log(` canRunBuilds: ${i.canRunBuilds}`),console.log(` canAcceptMobileSteering: ${i.canAcceptMobileSteering}`);return}case"session-open":{let e=$r(n,1,"session-id"),i=Ei(D(t,"campaign-root")),_=wr(i),c=Ht(t,i,e),u=Yt(c,_.eventsPath),o=await tz({sessionId:e,campaignRoot:i,topic:I(t,"topic")??e,objective:D(t,"objective"),leadSeat:D(t,"lead"),responderSeat:D(t,"responder"),escalationOwner:D(t,"escalation-owner"),timeCapMinutes:mn(t["time-cap"],"time-cap"),turnCap:mn(t["turn-cap"],"turn-cap"),sourceRefs:mr(t["source-ref"]),seatManifestOverride:I(t,"seat-manifest")},u);console.log(`opened session ${o.sessionId} (status=${o.status})`);return}case"session-status":{let e=$r(n,1,"session-id"),i=Ei(D(t,"campaign-root")),_=wr(i),c=Ht(t,i,e),u=Yt(c,_.eventsPath),o=await ez({sessionId:e,campaignRoot:i},u);if(t.json===!0)console.log(JSON.stringify(o,null,2));else{let $=o.sessionSnapshot;console.log(`session ${$.sessionId} \u2014 ${$.status}`),console.log(` topic: ${$.topic}`),console.log(` lead/responder/escalation: ${$.leadSeat} / ${$.responderSeat} / ${$.escalationOwner}`),console.log(` current_turn: ${o.currentTurn?.turnId??"(none)"}`),console.log(` pending_commands: ${o.pendingCommands.length}`)}return}case"turn-open":{let e=$r(n,1,"session-id"),i=Ei(D(t,"campaign-root")),_=wr(i),c=Ht(t,i,e),u=Yt(c,_.eventsPath),o=await uz({sessionId:e,campaignRoot:i,ownerSeat:D(t,"owner"),allowedActionClass:IR(t["action-class"],"action-class"),maxDurationMinutes:mn(t["max-duration"],"max-duration"),allowedCommands:mR(t["allowed-command"],"allowed-command"),repoRoots:mr(t["repo-root"]),ownedPaths:mr(t["owned-path"]),forbiddenPaths:mr(t["forbidden-path"]),verifyCommands:mr(t["verify-command"]),requiresHumanApproval:t["requires-human-approval"]===!0,projectionPolicy:OR(t["projection-policy"]),seatManifestOverride:I(t,"seat-manifest")},u);console.log(`opened turn ${o.turnId} (seq=${o.sequenceNo}, class=${o.allowedActionClass})`);return}case"turn-close":{let e=$r(n,1,"session-id"),i=Ei(D(t,"campaign-root")),_=wr(i),c=Ht(t,i,e),u=Yt(c,_.eventsPath),o=await $z({sessionId:e,campaignRoot:i,turnId:D(t,"turn"),result:UR(t.result),summary:D(t,"summary"),evidenceRefs:mr(t["evidence-ref"])},u);console.log(`closed turn ${o.turnId} (result=${o.result})`);return}case"session-command":{let e=$r(n,1,"session-id"),i=hR(n[2]),_=Ei(D(t,"campaign-root")),c=wr(_),u=Ht(t,_,e),o=Yt(u,c.eventsPath),$=await dz({sessionId:e,campaignRoot:_,command:i,actor:I(t,"actor")??"operator",payloadJson:I(t,"payload")??"{}",seatManifestOverride:I(t,"seat-manifest")},o);if($.status==="rejected")console.error(`command ${i} rejected: ${$.rejectionReason}`),process.exit(3);console.log(`command ${i} applied (id=${$.commandId})`);return}case"session-project":{let e=$r(n,1,"session-id"),i=Ei(D(t,"campaign-root")),_=wr(i),c=Ht(t,i,e),u=Yt(c,_.eventsPath),o=await _z({sessionId:e,campaignRoot:i},u);console.log(`projected session ${o.sessionId} at ${o.renderedAt}`);return}case"session-rebuild":{let e=$r(n,1,"session-id"),i=Ei(D(t,"campaign-root")),_=wr(i),c=Ht(t,i,e),u=Yt(c,_.eventsPath),o=await mz({sessionId:e,campaignRoot:i},u);console.log(`rebuilt session ${o.sessionId} (current_status=${o.sessionSnapshot.status})`);return}default:console.error(`unknown supervision command: ${r}`),console.error(Qe()),process.exit(1)}}catch(e){if(e instanceof zi){console.error(`seat manifest invalid (${e.path}):`);for(let i of e.issues)console.error(` - ${i}`);process.exit(2)}if(e instanceof Qc){console.error(`action class violation (${e.actionClass}):`);for(let i of e.issues)console.error(` - ${i}`);process.exit(4)}if(e instanceof yr)console.error(`supervision error [${e.code}]: ${e.message}`),process.exit(5);throw e}}var d5;var Tz=N(()=>{C0();tt();Ir();yz();d5=new Set(["session-open","session-status","turn-open","turn-close","session-command","session-project","session-rebuild","seat-validate"])});Ir();Ir();import{resolve as D9}from"path";import{spawnSync as X$}from"child_process";import{createHash as nl,createHmac as tl,timingSafeEqual as il}from"crypto";import{existsSync as or}from"fs";import{appendFile as zc,mkdir as _r,readFile as ze,readdir as Ee,rm as l4,writeFile as an}from"fs/promises";import{dirname as Wc,join as M,relative as el,resolve as Zn}from"path";var uG=r4(),oG=uc(),$G=G6(),f4=oc(),gG=Q_(),jt=C(),dG=Lt(),fG=Or(),bG=St(),wG=Wt(),uC=D$(),mG=$4(),IG=g4(),OG=d4(),T$=L1(),z1=H_();var UG=uG.Composer,hG=oG.Document,RG=$G.Schema,DG=f4.YAMLError,yG=f4.YAMLParseError,qG=f4.YAMLWarning,TG=gG.Alias,NG=jt.isAlias,LG=jt.isCollection,zG=jt.isDocument,SG=jt.isMap,WG=jt.isNode,EG=jt.isPair,jG=jt.isScalar,JG=jt.isSeq,AG=dG.Pair,MG=fG.Scalar,PG=bG.YAMLMap,kG=wG.YAMLSeq;var XG=mG.Lexer,GG=IG.LineCounter,VG=OG.Parser,p=T$.parse,FG=T$.parseAllDocuments,lG=T$.parseDocument,Cr=T$.stringify,vG=z1.visit,YG=z1.visitAsync;Ir();import{randomUUID as HG}from"crypto";import{existsSync as b4}from"fs";import{mkdir as BG,readdir as QG,readFile as S1,writeFile as W1}from"fs/promises";import{basename as KG,dirname as aG,join as w4,resolve as m4}from"path";var N$="project-binding.v0",ZG=/^[A-Za-z0-9][A-Za-z0-9_-]{0,79}$/;function he(r){return w4(m4(r),".etiquette","project.yaml")}function CG(r){return KG(m4(r)).toLowerCase().replace(/[^a-z0-9._-]+/g,"-").replace(/^-+|-+$/g,"")||"project"}function E1(r,n="project_id"){if(!ZG.test(r))throw Error(`${n} must be an opaque id using letters, numbers, hyphen, or underscore`)}function j1(r,n){if(!Number.isFinite(Date.parse(r)))throw Error(`${n} must be an ISO-8601 timestamp`)}function xG(r){return[`schema: ${r.schema}`,`project_id: ${r.project_id}`,`project_name: ${r.project_name}`,"project_ref: .",`created_at: ${r.created_at}`,"authority_boundary:"," project_binding_authorizes_work: false"," can_merge: false"," can_close: false"," can_grant: false"," can_write_global_ledger: false",""].join(`
|
|
313
|
-
`)}function pG(r){if(typeof r!=="object"||r===null||Array.isArray(r))throw Error("project binding must be an object");let n=r;if(n.schema!==N$)throw Error(`project binding schema must be ${N$}`);if(typeof n.project_id!=="string")throw Error("project_id is required");if(typeof n.project_name!=="string"||n.project_name.trim().length===0)throw Error("project_name is required");if(n.project_ref!==".")throw Error("project_ref must be .");if(typeof n.created_at!=="string")throw Error("created_at is required");E1(n.project_id),j1(n.created_at,"created_at");let t=n.authority_boundary;if(typeof t!=="object"||t===null||Array.isArray(t))throw Error("authority_boundary is required");for(let e of["project_binding_authorizes_work","can_merge","can_close","can_grant","can_write_global_ledger"])if(t[e]!==!1)throw Error(`authority_boundary.${e} must be false`);return{schema:N$,project_id:n.project_id,project_name:n.project_name.trim(),project_ref:".",created_at:new Date(n.created_at).toISOString(),authority_boundary:{project_binding_authorizes_work:!1,can_merge:!1,can_close:!1,can_grant:!1,can_write_global_ledger:!1}}}async function wc(r){let n=he(r);if(!b4(n))return null;return pG(p(await S1(n,"utf-8")))}async function sG(r,n){let t=w4(r,"docs","work","sessions");if(!b4(t))return;let e=await QG(t,{withFileTypes:!0});for(let i of e){if(!i.isDirectory())continue;let _=w4(t,i.name,"session.json");if(!b4(_))continue;let c;try{c=JSON.parse(await S1(_,"utf-8"))}catch{continue}if(typeof c!=="object"||c===null||Array.isArray(c))continue;let u=c;if(u.schema!=="session-runbook.v0")continue;if(typeof u.project_id==="string"&&u.project_id.trim().length>0)continue;await W1(_,`${JSON.stringify({...u,project_id:n,project_ref:"."},null,2)}
|
|
314
|
-
`)}}async function lr(r,n){let t=await wc(r);if(t)return t;let e=m4(r),i=n?new Date(n).toISOString():new Date().toISOString();j1(i,"created_at");let _=CG(e),c={schema:N$,project_id:`${_}-${HG().slice(0,8)}`,project_name:_,project_ref:".",created_at:i,authority_boundary:{project_binding_authorizes_work:!1,can_merge:!1,can_close:!1,can_grant:!1,can_write_global_ledger:!1}};return await BG(aG(he(e)),{recursive:!0}),await W1(he(e),xG(c)),await sG(e,c.project_id),c}function L$(r,n,t){if(!n)return;if(E1(n,"--expect-project-id"),!r)throw Error(`engagement mismatch: ${t} has no project_id; expected ${n}`);if(r!==n)throw Error(`ERROR: different engagement - ${t} project_id=${r} does not match expected project_id=${n}`)}function Re(r,n,t){if(!r)throw Error(`engagement mismatch: ${t} has no project_id; recreate the session under the current project`);if(r!==n)throw Error(`ERROR: different engagement - ${t} project_id=${r} does not match current project_id=${n}`)}import{randomUUID as oV}from"crypto";import{existsSync as Ic}from"fs";import{appendFile as $V,mkdir as J1,readFile as mc,readdir as gV,writeFile as Oc}from"fs/promises";import{dirname as U4,join as gi,relative as dV,resolve as Uc}from"path";var rV=/(?:\/Users\/|\/home\/|\/private\/|\/tmp\/|\$HOME|~\/|[A-Za-z]:\\)/,nV=/\b[a-z0-9][a-z0-9-]*(?:\.[a-z0-9][a-z0-9-]*)*\.(?:local|lan|internal|intranet|localdomain)\b/i,tV=/\b\d{1,3}(?:\.\d{1,3}){3}\b/,iV=/\b(?:[0-9a-f]{1,4}:){2,}[0-9a-f]{0,4}\b/i,eV=/\b(?:ANTHROPIC_API_KEY|OPENAI_API_KEY|GEMINI_API_KEY|api[_-]?key|token|secret)\b\s*[:=]|sk-[A-Za-z0-9_-]{12,}/i,_V=/\b(raw prompt|user prompt|prompt transcript|UserPromptSubmit)\b/i,cV=/\b(raw tool output|tool transcript|PostToolUse output|stdout:|stderr:)\b/i,uV=/```/;function tr(r){let n=new Set;if(rV.test(r))n.add("contains_local_path");if(nV.test(r)||tV.test(r)||iV.test(r))n.add("contains_hostname");if(eV.test(r))n.add("contains_credential");if(_V.test(r))n.add("contains_raw_prompt");if(cV.test(r))n.add("contains_raw_tool_output");if(uV.test(r))n.add("contains_source_snippet");return[...n]}function H(r,n){let t=tr(r);if(t.length>0)throw Error(`${n} contains restricted shared-memory content: ${t.join(", ")}`)}function X(r,n){if(H(r,n),!/^[A-Za-z0-9][A-Za-z0-9_.:-]{0,79}$/.test(r))throw Error(`${n} must be an opaque id using only letters, numbers, _, ., :, or -`)}var hc=["plan","tool","retry","evidence","note"],fV=/^[A-Za-z0-9][A-Za-z0-9_.-]{0,79}$/;function bV(r){if(!Number.isFinite(Date.parse(r)))throw Error("--at must be an ISO-8601 timestamp")}function A1(r){let n=r??new Date().toISOString();return bV(n),new Date(n).toISOString()}function wV(r){return r.replace(/[-:.]/g,"").replace(/\.\d+Z$/,"Z")}function mV(r){return`session-${wV(r)}-${oV().slice(0,8)}`}function M1(r){if(!fV.test(r))throw Error("session id must be an opaque id using letters, numbers, _, ., or -")}function I4(r,n){if(r===void 0)return null;return X(r,n),r}function z$(r,n){let t=Uc(r),e=Uc(n),i=dV(t,e);if(i.length===0||i.startsWith("..")||i.includes("\\"))throw Error(`path must stay inside project root: ${n}`);return i}function h4(r,n){return gi(r,"docs","work","sessions",n)}function P1(r,n){return gi(h4(r,n),"session.json")}function k1(r,n){return gi(h4(r,n),"RUNBOOK.md")}async function IV(r){let n=gi(r,"docs","work","sessions");if(!Ic(n))return[];return(await gV(n,{withFileTypes:!0})).filter((e)=>e.isDirectory()).map((e)=>gi(n,e.name,"session.json")).filter((e)=>Ic(e))}function O4(r){return r??"none"}function OV(r){return[`# Session Runbook: ${r.session_id}`,"",`- Schema: \`${r.schema}\``,`- Project ID: \`${r.project_id}\``,`- Seat: \`${r.seat}\``,`- Operator Principal: \`${O4(r.operator_principal)}\``,`- Owner Principal: \`${O4(r.owner_principal)}\``,`- Task: \`${r.task_ref}\``,`- Target Ref: \`${O4(r.target_ref)}\``,`- Created At: \`${r.created_at}\``,`- Creation Mode: \`${r.creation_mode}\``,`- Manifest Ref: \`${r.manifest_ref}\``,`- Runbook Ref: \`${r.runbook_ref}\``,"","## Ledger Boundary","","- Global governance ledger: receipt/ref only.","- Repo-local session ledger: this runbook and `session.json` manifest.","- Ephemeral workspace logs: summarize outcomes; do not paste raw prompts, secrets, or full tool output.","- Authority: this session record is evidence only; it cannot authorize, merge, close, promote, or write global ledger truth.","","## Assumptions & Plan","","- _No entries yet._","","## Tool Summary","","- _No entries yet._","","## Retries & Corrections","","- _No entries yet._","","## Exit Evidence","","- _No entries yet._","","## Notes","","- _No entries yet._",""].join(`
|
|
315
|
-
`)}function UV(r){switch(r){case"plan":return"Assumptions & Plan";case"tool":return"Tool Summary";case"retry":return"Retries & Corrections";case"evidence":return"Exit Evidence";case"note":return"Notes"}}function hV(r,n,t){let e=`## ${UV(n)}
|
|
316
|
-
|
|
317
|
-
`,i=r.indexOf(e);if(i<0)throw Error(`runbook missing section: ${n}`);let _=i+e.length,c=r.indexOf(`
|
|
318
|
-
## `,_),u=c<0?r.length:c,o=r.slice(_,u);if(o=o.replace(`- _No entries yet._
|
|
319
|
-
`,""),o.length>0&&!o.endsWith(`
|
|
320
|
-
`))o=`${o}
|
|
321
|
-
`;return o=`${o}${t}
|
|
322
|
-
`,`${r.slice(0,_)}${o}${r.slice(u)}`}async function X1(r,n){await J1(U4(r),{recursive:!0}),await Oc(r,`${JSON.stringify(n,null,2)}
|
|
323
|
-
`)}async function RV(r){let n=JSON.parse(await mc(r,"utf-8"));if(n.schema!=="session-runbook.v0")throw Error("session manifest schema must be session-runbook.v0");return n}function DV(r,n){if(r.includes("- Project ID:"))return r;let t="- Schema: `session-runbook.v0`",e=r.indexOf(t);if(e<0)return r;let i=r.indexOf(`
|
|
324
|
-
`,e);if(i<0)return r;return`${r.slice(0,i+1)}- Project ID: \`${n}\`
|
|
325
|
-
${r.slice(i+1)}`}async function G1(r){let n=Uc(r.projectRoot),t=await lr(n,r.at),e=await IV(n),i=[],_=[],c=[];for(let u of e){let o=JSON.parse(await mc(u,"utf-8"));if(o.schema!=="session-runbook.v0")throw Error(`session manifest schema must be session-runbook.v0: ${z$(n,u)}`);let $=typeof o.session_id==="string"?o.session_id:z$(n,u);if(typeof o.project_id==="string"){if(o.project_id===t.project_id)_.push($);else c.push(`${$}=${o.project_id}`);continue}i.push($)}if(c.length>0)throw Error(`session project_id mismatch; refusing migration: ${c.join(", ")}; inspect or recreate those sessions`);if(!r.dryRun)for(let u of e){let o=JSON.parse(await mc(u,"utf-8"));if(typeof o.project_id==="string")continue;let $={...o,project_id:t.project_id,project_ref:"."};await Oc(u,`${JSON.stringify($,null,2)}
|
|
326
|
-
`);let g=gi(U4(u),"RUNBOOK.md");if(Ic(g)){let d=await mc(g,"utf-8");await Oc(g,DV(d,t.project_id))}}return{schema:"session-project-binding-migration.v0",project_id:t.project_id,project_ref:".etiquette/project.yaml",dry_run:Boolean(r.dryRun),migrated:i,unchanged:_,authority_boundary:{can_authorize:!1,can_merge:!1,can_close:!1,can_write_global_ledger:!1}}}async function S$(r){let n=Uc(r.projectRoot),t=await lr(n,r.at),e=A1(r.at),i=r.sessionId??mV(e);M1(i),X(r.seat,"--seat"),X(r.taskRef,"--task");let _=I4(r.operatorPrincipal,"--operator"),c=I4(r.ownerPrincipal,"--owner"),u=I4(r.targetRef,"--target-ref"),o=r.creationMode??"explicit";if(o!=="explicit"&&o!=="dynamic")throw Error("--creation-mode must be explicit or dynamic");let $=P1(n,i),g=k1(n,i);if(Ic($)||Ic(g))throw Error(`session already exists: ${i}`);let d={schema:"session-runbook.v0",session_id:i,created_at:e,updated_at:e,creation_mode:o,project_id:t.project_id,project_ref:".",task_ref:r.taskRef,seat:r.seat,operator_principal:_,owner_principal:c,target_ref:u,runbook_ref:z$(n,g),manifest_ref:z$(n,$),note_count:0,ledger_boundary:{global_governance_ledger:"receipt_ref_only",repo_local_session_ledger:"runbook_and_manifest",ephemeral_workspace:"summarized_only"},authority_boundary:{can_authorize:!1,can_merge:!1,can_close:!1,can_write_global_ledger:!1,session_record_is_authority:!1}};return await J1(U4(g),{recursive:!0}),await Oc(g,OV(d)),await X1($,d),{manifest:d,manifestPath:$,runbookPath:g}}async function Rc(r){let n=Uc(r.projectRoot),t=await lr(n,r.at);if(M1(r.sessionId),!hc.includes(r.section))throw Error(`--section must be one of: ${hc.join(", ")}`);H(r.message,"--message");let e=A1(r.at),i=P1(n,r.sessionId),_=k1(n,r.sessionId),c=await RV(i);Re(c.project_id,t.project_id,`session ${r.sessionId}`);let u=await mc(_,"utf-8"),o=`- ${e} - ${r.message}`;await Oc(_,hV(u,r.section,o));let $={...c,updated_at:e,note_count:c.note_count+1};return await X1(i,$),await $V(gi(h4(n,r.sessionId),"events.ndjson"),`${JSON.stringify({schema:"session-note-event.v0",session_id:r.sessionId,project_id:t.project_id,at:e,section:r.section,message:r.message,authority_boundary:{can_authorize:!1,can_write_global_ledger:!1}})}
|
|
327
|
-
`),{manifest:$,manifestPath:i,runbookPath:_,section:r.section,appended_at:e}}import{appendFile as NV,mkdir as LV,readFile as zV}from"fs/promises";import{dirname as v1,join as D4,resolve as E$}from"path";import{mkdir as yV,readFile as TC,writeFile as qV}from"fs/promises";import{dirname as TV}from"path";function V1(r){return r.toLowerCase().replace(/[^a-z0-9]+/g,"-").replace(/^-+|-+$/g,"")}async function F1(r,n){await yV(TV(r),{recursive:!0}),await qV(r,`${JSON.stringify(n,null,2)}
|
|
328
|
-
`)}var SV="seat-readiness.v0.1",WV="seat-readiness-event.v0.1";var y4=["control_seat","execution_seat","review_seat","seat_maintainer"],j$=["operational","degraded","blocked","offline"],q4=["config","local_validation","seat_doctor","agent_self_declared"],T4=["lite_fast","balanced","frontier_high_reasoning","local_unknown"];function N4(r){return D4(E$(r),".etiquette","state","seat-readiness.json")}function L4(r){return D4(E$(r),".etiquette","state","seat-readiness-events.ndjson")}function Y1(r,n){return n?E$(n):N4(r)}function EV(r,n){if(!n)return L4(r);return D4(v1(E$(n)),"seat-readiness-events.ndjson")}function Dc(r,n,t){if(!r.includes(n))throw Error(`${t} must be one of: ${r.join(", ")}`)}function H1(r,n){if(!Number.isInteger(r)||r<0)throw Error(`${n} must be a non-negative integer`)}function jV(r,n){if(!Number.isInteger(r)||r<1)throw Error(`${n} must be a positive integer`)}function l1(r,n){if(!/^[A-Za-z0-9][A-Za-z0-9_-]{0,63}$/.test(r))throw Error(`${n} must be an opaque id using letters, numbers, hyphen, or underscore`)}function R4(r,n){if(!/^[A-Za-z0-9][A-Za-z0-9_-]{0,63}$/.test(r))throw Error(`${n} must contain only letters, numbers, hyphen, or underscore`)}function JV(r,n){if(!/^[A-Za-z0-9][A-Za-z0-9._:-]{0,127}$/.test(r))throw Error(`${n} must be an opaque model id without whitespace, paths, or hostnames`)}function W$(r,n){if(!Number.isFinite(Date.parse(r)))throw Error(`${n} must be an ISO-8601 timestamp`)}function z4(r){if(!r)return new Date().toISOString();return W$(r,"--at"),new Date(r).toISOString()}function AV(r){return 86400}function B1(r,n){return new Date(Date.parse(r)+n*1000).toISOString()}function MV(r){return r!=="agent_self_declared"}function Q1(r){if(Dc(y4,r.seat_type,"seat_type"),Dc(j$,r.operational_status,"operational_status"),Dc(q4,r.capability_source,"capability_source"),Dc(T4,r.model_tier,"model_tier"),Dc(["operator_principal","config"],r.declared_by,"declared_by"),l1(r.seat,"seat"),l1(r.execution_surface,"execution_surface"),r.model_id)JV(r.model_id,"model_id");H1(r.active_workers,"active_workers"),jV(r.max_recommended_workers,"max_recommended_workers");for(let n of r.supported_strategies)R4(n,"supported_strategies[]");for(let n of r.unsupported_strategies)R4(n,"unsupported_strategies[]");for(let n of r.constraints)R4(n,"constraints[]");W$(r.last_checked_at,"last_checked_at"),W$(r.last_heartbeat_at,"last_heartbeat_at"),W$(r.stale_after,"stale_after")}async function K1(r,n,t){let e=EV(r,n);await LV(v1(e),{recursive:!0}),await NV(e,`${JSON.stringify({schema_version:WV,...t})}
|
|
329
|
-
`)}async function a1(r,n,t){Q1(t),await F1(Y1(r,n),t)}async function di(r,n){let t=Y1(r,n),e;try{e=JSON.parse(await zV(t,"utf-8"))}catch(i){throw Error(`seat readiness state could not be read at ${t}: ${i.code??String(i)}`)}return Q1(e),e}async function J$(r){let n=z4(r.at),t=AV(r.modelTier),e={schema_version:SV,seat:r.seat,seat_type:r.seatType,execution_surface:r.executionSurface,declared_by:r.declaredBy,capability_source:r.capabilitySource,capability_trusted:MV(r.capabilitySource),operational_status:r.operationalStatus,model_tier:r.modelTier,...r.modelId?{model_id:r.modelId}:{},active_workers:r.activeWorkers,max_recommended_workers:r.maxRecommendedWorkers,supports_parallel:r.supportsParallel,supported_strategies:r.supportedStrategies,unsupported_strategies:r.unsupportedStrategies,constraints:r.constraints,last_checked_at:n,last_heartbeat_at:n,ttl_seconds:t,stale_after:B1(n,t)};return await a1(r.projectRoot,r.statePath,e),await K1(r.projectRoot,r.statePath,{event_type:"seat_readiness_reported",at:n,seat:e.seat,operational_status:e.operational_status,model_tier:e.model_tier,capability_source:e.capability_source,capability_trusted:e.capability_trusted,active_workers:e.active_workers,max_recommended_workers:e.max_recommended_workers}),e}async function Z1(r){let n=await di(r.projectRoot,r.statePath);if(r.seat&&r.seat!==n.seat)throw Error(`heartbeat seat mismatch: expected ${n.seat}, got ${r.seat}`);let t=z4(r.at),e=r.activeWorkers??n.active_workers;H1(e,"active_workers");let i={...n,operational_status:r.operationalStatus??n.operational_status,active_workers:e,constraints:r.constraints??n.constraints,last_heartbeat_at:t,last_checked_at:t,stale_after:B1(t,n.ttl_seconds)};return await a1(r.projectRoot,r.statePath,i),await K1(r.projectRoot,r.statePath,{event_type:"seat_heartbeat",at:t,seat:i.seat,operational_status:i.operational_status,active_workers:i.active_workers,max_recommended_workers:i.max_recommended_workers}),i}function De(r,n){let t=z4(n),e=Date.parse(t)>Date.parse(r.stale_after),i="route_if_policy_allows";if(e)i="reject_or_refresh";else if(r.operational_status==="blocked"||r.operational_status==="offline")i="defer_with_reason";else if(!r.capability_trusted)i="seek_validation";return{...r,checked_at:t,is_stale:e,effective_model_tier:e?"local_unknown":r.model_tier,routing_recommendation:i}}import{spawnSync as PV}from"child_process";import{createHash as kV}from"crypto";import{existsSync as p1}from"fs";import{readFile as XV,readdir as GV}from"fs/promises";import{join as S4,relative as VV,resolve as FV}from"path";function s1(r){return S4(r,".etiquette","events","local.ndjson")}function lV(r,n){let t=VV(r,FV(n));if(t.length===0||t.startsWith("..")||t.includes("\\"))throw Error(`path must stay inside project root: ${n}`);return t}function vV(r,n){if(typeof r!=="object"||r===null||Array.isArray(r))throw Error(`${n} must be an object`);return r}function xr(r,n){let t=r[n];return typeof t==="string"&&t.trim().length>0?t.trim():void 0}function YV(r,n){let t=r[n];return typeof t==="boolean"?t:void 0}function ry(r,n){let t=r[n];return typeof t==="number"&&Number.isFinite(t)?t:void 0}function ny(r,n){let t=r[n];if(!Array.isArray(t))return[];return t.filter((e)=>typeof e==="string"&&e.trim().length>0).map((e)=>e.trim())}async function W4(r){try{return await XV(r,"utf-8")}catch(n){if(n.code==="ENOENT")return null;throw n}}async function HV(r){if(!p1(r))return[];return(await GV(r,{withFileTypes:!0})).filter((t)=>t.isFile()&&t.name.endsWith(".json")).map((t)=>S4(r,t.name))}async function BV(r,n){let t=await W4(r);return t?JSON.parse(t):n}async function QV(r){let n=await W4(s1(r));if(!n)return[];return n.split(`
|
|
330
|
-
`).map((t)=>t.trim()).filter(Boolean).map((t)=>JSON.parse(t))}function C1(r,n){if(r===void 0||r===null)return null;if(typeof r==="number"){if(!Number.isFinite(r)||r<0)throw Error(`--${n} must be a non-negative event sequence`);return r}let t=r.startsWith("local://event/")?r.slice(14):r,e=Number.parseInt(t,10);if(!Number.isFinite(e)||e<0)throw Error(`--${n} must be a non-negative event sequence`);return e}function KV(r){return`sha256:${kV("sha256").update(r??"").digest("hex")}`}function aV(r){let n=PV("git",["rev-parse","HEAD"],{cwd:r,encoding:"utf-8"});if(n.status!==0)return"unavailable";return n.stdout.trim()||"unavailable"}function ty(r){return[r.event_ref??r.packet_ref??r.kind,r.type,r.role?`role=${r.role}`:null,r.lane?`lane=${r.lane}`:null,r.from?`from=${r.from}`:null,r.to?`to=${r.to}`:null,r.next_owner?`next_owner=${r.next_owner}`:null,r.requires_ack===!0?"requires_ack=true":null,r.packet_ref?`packet_ref=${r.packet_ref}`:null,r.verdict?`verdict=${r.verdict}`:null,r.status_effect&&r.status_effect!=="none"?`status_effect=${r.status_effect}`:null,r.topic_hints.length>0?`topic_hints=${r.topic_hints.join(",")}`:null,r.in_reply_to?`in_reply_to=${r.in_reply_to}`:null].filter((t)=>t!==null&&t!==void 0&&t.length>0).join(" ")}function ZV(r){let n=typeof r.actor==="string"?r.actor:null,t={kind:"event",seq:r.seq,event_ref:r.event_ref,created_at:r.created_at,type:r.type,role:typeof r.role==="string"?r.role:null,lane:typeof r.lane==="string"?r.lane:null,from:typeof r.from==="string"?r.from:n,to:typeof r.to==="string"?r.to:null,next_owner:typeof r.next_owner==="string"?r.next_owner:null,packet_ref:typeof r.packet_ref==="string"?r.packet_ref:null,requires_ack:typeof r.requires_ack==="boolean"?r.requires_ack:null,verdict:typeof r.verdict==="string"?r.verdict:null,status_effect:typeof r.status_effect==="string"?r.status_effect:null,topic_hints:ny(r,"topic_hints"),in_reply_to:typeof r.in_reply_to==="string"?r.in_reply_to:null,parent_event_ref:typeof r.parent_event_ref==="string"?r.parent_event_ref:null,parent_event_seq:ry(r,"parent_event_seq")??null,mode:typeof r.mode==="string"?r.mode:null,packet_tier:typeof r.packet_tier==="string"?r.packet_tier:null,text:""};return{...t,text:ty(t)}}function CV(r,n,t){let e={kind:"packet",seq:t,event_ref:null,created_at:xr(r,"created_at")??null,type:xr(r,"action")??xr(r,"type")??null,role:xr(r,"role")??null,lane:xr(r,"lane")??null,from:xr(r,"from")??null,to:xr(r,"to")??null,next_owner:xr(r,"next_owner")??null,packet_ref:n,requires_ack:YV(r,"requires_ack")??null,verdict:xr(r,"verdict")??null,status_effect:xr(r,"status_effect")??null,topic_hints:ny(r,"topic_hints"),in_reply_to:xr(r,"in_reply_to")??null,parent_event_ref:xr(r,"parent_event_ref")??null,parent_event_seq:ry(r,"parent_event_seq")??null,mode:xr(r,"mode")??null,packet_tier:xr(r,"packet_tier")??null,text:""};return{...e,text:ty(e)}}async function xV(r,n){let t=S4(r,"docs","work","packets");if(!p1(t))return[];let e=await HV(t),i=new Map(n.filter((c)=>typeof c.packet_ref==="string").map((c)=>[String(c.packet_ref),c.seq])),_=[];for(let c of e.sort()){let u=lV(r,c),o=vV(await BV(c,{}),"local packet");_.push(CV(o,u,i.get(u)??null))}return _}function x1(r,n){let t=C1(n.since,"since"),e=C1(n.until,"until");if(t!==null&&(r.seq===null||r.seq<t))return!1;if(e!==null&&(r.seq===null||r.seq>e))return!1;if(n.lane&&r.lane!==n.lane)return!1;if(n.role&&r.role!==n.role)return!1;if(n.action&&r.type!==n.action)return!1;if(n.from&&r.from!==n.from)return!1;if(n.to&&r.to!==n.to&&r.next_owner!==n.to)return!1;if(n.seat&&r.from!==n.seat&&r.to!==n.seat&&r.next_owner!==n.seat&&!r.text.includes(n.seat))return!1;if(n.match&&!r.text.toLowerCase().includes(n.match.toLowerCase()))return!1;return!0}async function ye(r,n={}){let t=await W4(s1(r)),e=await QV(r),i=await xV(r,e),_=n.limit??20,c=n.kind??"all";if(_<0)throw Error("--limit must be a non-negative integer");let u=e.map(ZV).filter((f)=>x1(f,n)),o=i.filter((f)=>x1(f,n)),$=e.reduce((f,b)=>Math.max(f,b.seq),0),g=$>0?`local://event/${$}`:"local://event/0",d=(f)=>_===0?[]:f.slice(-_);return{schema:"local-ledger-view.v0",watermark:{latest_event_ref:g,latest_seq:$,commit_sha:aV(r),event_log_hash:KV(t),computed_at:n.computedAt??new Date().toISOString()},filters:{since:n.since??null,until:n.until??null,lane:n.lane??null,seat:n.seat??null,from:n.from??null,to:n.to??null,role:n.role??null,action:n.action??null,match:n.match??null,kind:c,limit:_},boundary:"authority-false stdout-only rebuildable local projection; cannot authorize, assign, close, merge, mutate local events, write global ledger, or read external buses",events_matched:u.length,packets_matched:o.length,events:c==="packets"?[]:d(u),packets:c==="events"?[]:d(o),authority_boundary:{stdout_only:!0,rebuildable_projection:!0,can_authorize:!1,can_assign:!1,can_close:!1,can_merge:!1,can_mutate_bus:!1,can_write_global_ledger:!1}}}function iy(r){return[`schema: ${r.schema}`,`watermark: ${r.watermark.latest_event_ref} commit_sha=${r.watermark.commit_sha}`,`event_log_hash: ${r.watermark.event_log_hash}`,`computed_at: ${r.watermark.computed_at}`,`filters: ${Object.entries(r.filters).filter(([,n])=>n!==null).map(([n,t])=>`${n}=${String(t)}`).join(", ")||"none"}`,`boundary: ${r.boundary}`,`events_matched: ${r.events_matched} showing: ${r.events.length}`,...r.events.map((n)=>` - ${n.text}`),`packets_matched: ${r.packets_matched} showing: ${r.packets.length}`,...r.packets.map((n)=>` - ${n.text}`)].join(`
|
|
331
|
-
`)}function ey(r){return["# Local Etiquette Bus View","",`- Schema: \`${r.schema}\``,`- Watermark: \`${r.watermark.latest_event_ref}\``,`- Commit: \`${r.watermark.commit_sha}\``,`- Event log hash: \`${r.watermark.event_log_hash}\``,`- Computed at: \`${r.watermark.computed_at}\``,`- Boundary: ${r.boundary}`,"",`## Events (${r.events_matched} matched, ${r.events.length} shown)`,"",...r.events.length===0?["_No events._"]:r.events.map((n)=>`- ${n.text}`),"",`## Packets (${r.packets_matched} matched, ${r.packets.length} shown)`,"",...r.packets.length===0?["_No packets._"]:r.packets.map((n)=>`- ${n.text}`),""].join(`
|
|
332
|
-
`)}import{existsSync as pV}from"fs";import{readFile as sV,readdir as rF}from"fs/promises";import{join as _y}from"path";var cy=["decision","grant","approval","approve","escalate","policy","closeout"],nF=["task_card","return","receipt","decision","chatter"];function A$(r,n){let t=r[n];return typeof t==="string"&&t.trim().length>0?t.trim():null}function tF(r,n){return r[n]===!0}function iF(r){return r.toLowerCase().replace(/[^a-z0-9._-]+/g,"-").replace(/^-+|-+$/g,"")||"seat"}async function eF(r){try{return JSON.parse(await sV(r,"utf-8"))}catch(n){if(n.code==="ENOENT")return null;throw n}}async function _F(r){let n=_y(r,".etiquette","roster","enrollments");if(!pV(n))return[];let t=await rF(n,{withFileTypes:!0}),e=[];for(let i of t){if(!i.isFile()||!i.name.endsWith(".json"))continue;let _=await eF(_y(n,i.name));if(_)e.push(_)}return e.sort((i,_)=>String(i.seat_id??"").localeCompare(String(_.seat_id??"")))}function cF(r){let n=r.role?.toLowerCase()??"",t=r.type?.toLowerCase()??"",e=r.text.toLowerCase();if(n.includes("task")||t.includes("task"))return"task_card";if(n.includes("return")||t.includes("return"))return"return";if(n.includes("receipt")||t.includes("receipt"))return"receipt";if(cy.some((i)=>n.includes(i)||t.includes(i)||e.includes(i)))return"decision";return"chatter"}function uF(r){let n=[r.role,r.type,r.from,r.to,r.next_owner,r.text].filter((t)=>Boolean(t)).join(" ").toLowerCase();return r.requires_ack===!0||Boolean(r.next_owner)||cy.some((t)=>n.includes(t))}function oF(r,n,t){if(n==="project")return!0;if(n==="principal")return uF(r);if(n==="lane")return Boolean(t.lane)&&r.lane===t.lane;if(n==="seat"){let e=t.seat;return Boolean(e)&&(r.from===e||r.to===e||r.next_owner===e||r.text.includes(String(e)))}return!1}function $F(r,n){let t=n.replace("_"," "),e=r.lane?` for ${r.lane}`:"",i=r.role?` (${r.role})`:"";return`${t}${e}${i}`}function gF(r){return[r.from&&r.to?`${r.from} -> ${r.to}`:r.from??r.to??null,r.next_owner?`next_owner=${r.next_owner}`:null,r.requires_ack===!0?"requires_ack=true":null,r.verdict?`verdict=${r.verdict}`:null,r.status_effect&&r.status_effect!=="none"?`status_effect=${r.status_effect}`:null,r.packet_ref?`packet=${r.packet_ref}`:null,r.event_ref?`event=${r.event_ref}`:null].filter((t)=>Boolean(t)).join(" | ")||r.text}function uy(r){return r.event_ref??r.packet_ref??`${r.kind}:${r.seq??"unsequenced"}`}function dF(r){return r.event_ref??r.packet_ref??"unsequenced"}function fF(r){if(r.lane)return`lane:${r.lane}`;if(r.in_reply_to)return`reply:${r.in_reply_to}`;if(r.parent_event_ref)return`reply:${r.parent_event_ref}`;if(r.parent_event_seq!==null)return`reply:local://event/${r.parent_event_seq}`;return`item:${uy(r)}`}function bF(r){if(r.in_reply_to)return r.in_reply_to;if(r.parent_event_ref)return r.parent_event_ref;if(r.parent_event_seq!==null)return`local://event/${r.parent_event_seq}`;return null}function wF(r){if(r.verdict)return r.verdict;let n=r.text.match(/\b(CONFIRM_WITH_AMENDMENTS|CONFIRM|COUNTER|PASS|FAIL|HOLD|GO|NO_GO)\b/i);return n?n[1].toUpperCase():null}function mF(r){let n=[r.from?`from=${r.from}`:null,r.to?`to=${r.to}`:null,r.next_owner?`next_owner=${r.next_owner}`:null,r.mode?`mode=${r.mode}`:null].filter((i)=>Boolean(i)).join(" | ")||"routing unresolved in projection",t=[r.event_ref?`event=${r.event_ref}`:null,r.packet_ref?`packet=${r.packet_ref}`:null,r.packet_tier?`packet_tier=${r.packet_tier}`:null].filter((i)=>Boolean(i)).join(" | ")||dF(r),e=r.seq!==null?`sequenced local event seq=${r.seq}; rebuild from local event log and packet refs`:"legacy packet fallback; unsequenced packet row remains projection-only";return[{label:"Routing",body:n},{label:"Evidence",body:t},{label:"Failure modes",body:"display-only projection; no comments, writes, mentions, grants, closes, merges, or execution"},{label:"Confidence calibration",body:e}]}function IF(r){let n=new Map;for(let t of r){let e=n.get(t.thread.thread_id)??[];e.push(t),n.set(t.thread.thread_id,e)}return Array.from(n.entries()).map(([t,e])=>{let i=[...e].sort((u,o)=>(u.source.seq??0)-(o.source.seq??0)),_=i.reduce((u,o)=>o.source.seq===null?u:Math.max(u??0,o.source.seq),null),c=i.find((u)=>u.lane)?.lane??null;return{thread_id:t,lane:c,title:c?`Thread ${c}`:`Thread ${t}`,item_ids:i.map((u)=>u.item_id),latest_seq:_,item_count:i.length}}).sort((t,e)=>(e.latest_seq??0)-(t.latest_seq??0))}function OF(r,n){let t=new Map(n.map((e)=>[e.thread_id,e.item_count]));return r.map((e)=>({...e,thread:{...e.thread,thread_item_count:t.get(e.thread.thread_id)??1}}))}function oy(r){return r.charAt(0).toUpperCase()+r.slice(1)}function $y(r){switch(r){case"task_card":return"TASK";case"return":return"RETURN";case"receipt":return"RECEIPT";case"decision":return"DECISION";case"chatter":return"CHATTER"}}function E4(r){return r.source.event_ref??r.source.packet_ref??"unsequenced"}function gy(r){let n=[r.actor_seat_id?`from=${r.actor_seat_id}`:null,r.seat_id?`seat=${r.seat_id}`:null,r.operator_principal?`operator=${r.operator_principal}`:null].filter((t)=>Boolean(t));return n.length>0?n.join(" "):"seat=unresolved"}function UF(r,n,t){let e=cF(r),i=uy(r),_=fF(r),c=bF(r),u=wF(r);return{item_id:`timeline:${i}`,item_type:e,scope:n,lane:r.lane,seat_id:r.to??r.next_owner??r.from,operator_principal:null,actor_seat_id:r.from,created_at:r.created_at,next_owner:r.next_owner,role:r.role,verdict:u,status_effect:r.status_effect,topic_hints:r.topic_hints,requires_ack:r.requires_ack,display:{role_chip:r.role,lane_chip:r.lane,seat_badge:r.to??r.next_owner??r.from,verdict_pill:u,status_subtitle:r.status_effect&&r.status_effect!=="none"?r.status_effect:null,topic_chips:r.topic_hints,sections:mF(r)},thread:{thread_id:_,parent_ref:c,depth:c?1:0,is_thread_root:c===null,thread_item_count:1},title:$F(r,e),body:gF(r),source:{kind:r.kind,seq:r.seq,event_ref:r.event_ref,packet_ref:r.packet_ref,commit_sha:t.commit_sha,event_log_hash:t.event_log_hash},authority_boundary:{projection_item_only:!0,can_execute:!1,can_trigger_mention:!1,can_write_back:!1,can_grant:!1,can_close:!1,can_merge:!1,can_sign:!1}}}function hF(r){let n=new Set;for(let t of r)for(let e of[t.from,t.to,t.next_owner])if(e)n.add(e);return n}async function RF(r,n,t,e){let i=await _F(r),_=new Map;for(let $ of i){let g=A$($,"seat_id");if(g)_.set(g,$)}let c=new Set([...hF(n),..._.keys()]),u=nF.reduce(($,g)=>{return $[g]=0,$},{task_card:0,return:0,receipt:0,decision:0,chatter:0});for(let $ of t)u[$.item_type]+=1;let o=t.filter(($)=>$.requires_ack===!0||$.item_type==="decision"||Boolean($.status_effect&&$.status_effect!=="none")).map(($)=>({item_id:$.item_id,source_ref:E4($),lane:$.lane,next_owner:$.next_owner,reason:$.requires_ack===!0?"requires_ack":$.status_effect&&$.status_effect!=="none"?`status_effect:${$.status_effect}`:"decision"}));return{schema:"timeline-curator-portal.v0",health_board:{registry_ref:".etiquette/roster/enrollments/*.json",seats:Array.from(c).sort().map(($)=>{let g=_.get($),d=iF($);return{seat_id:$,lifecycle_state:A$(g??{},"lifecycle_state")??(g?"enrolled":"observed"),ready:g?tF(g,"ready"):!1,operator_principal:g?A$(g,"operator_principal"):null,execution_seat:g?A$(g,"execution_seat"):null,source:g?"roster":"ledger-observed",sentinel_state_ref:`.etiquette/state/sentinel/${d}.json`,cursor_ref:`.etiquette/state/sentinel/${d}.cursor.json`}})},digest_view:{window:"current_projection",items_by_type:u,threads:e.length,requires_ack:t.filter(($)=>$.requires_ack===!0).length},promotion_queue:{display_only:!0,items:o},authority_boundary:{display_only:!0,can_execute:!1,can_write_back:!1,can_promote:!1,can_grant:!1,can_close:!1,can_merge:!1}}}async function j4(r,n={}){let t=n.scope??"project";if(t==="seat"&&!n.seat)throw Error("--seat is required when --scope seat");if(t==="lane"&&!n.lane)throw Error("--lane is required when --scope lane");let e=await ye(r,{...n,kind:"all"}),i=[...e.events,...e.packets].filter((o)=>oF(o,t,n)).sort((o,$)=>(o.seq??Number.MAX_SAFE_INTEGER)-($.seq??Number.MAX_SAFE_INTEGER)),_=i.map((o)=>UF(o,t,e.watermark)),c=IF(_),u=OF(_,c);return{schema:"timeline-projection.v0",project:r,scope:t,watermark:e.watermark,source:{mode:"projection-only",projection_schema:"local-ledger-view.v0",event_log_ref:".etiquette/events/local.ndjson",packet_glob_ref:"docs/work/packets/*.json",roster_ref:".etiquette/roster/enrollments/*.json"},identity_resolution:{source:"one-roster",seat_filter:n.seat??null,lane_filter:n.lane??null,chat_nicknames_are_identity:!1,parallel_identity_store:!1},feed:{items:u,items_matched:i.length,display_modes:["stream","thread"],deep_link:{query_param:"seq",item_id:null,event_ref:null},threads:c},curator_portal:await RF(r,i,u,c),boundary:"read-only rebuildable timeline projection; chatter is projection, not canonical; mentions cannot execute in v0",authority_boundary:{read_only_projection:!0,rebuildable_projection:!0,can_execute:!1,can_trigger_mention:!1,can_write_back:!1,can_create_canonical_chatter:!1,can_grant:!1,can_mint_or_widen_lease:!1,can_close:!1,can_merge:!1,can_sign:!1,can_use_hosted_backend:!1},next_step:"use normal ledger workflow for any canonical post, grant, closeout, execution, or mention-trigger experiment"}}function J4(r,n){if(n===null||!Number.isFinite(n))return r;let t=r.feed.items.find((e)=>e.source.seq===n)??null;return{...r,feed:{...r.feed,deep_link:{query_param:"seq",item_id:t?.item_id??null,event_ref:t?.source.event_ref??null}}}}function dy(r){return[`timeline_feed: ${oy(r.scope)}`,`schema: ${r.schema}`,`scope: ${r.scope}`,`source: ${r.source.projection_schema}`,`watermark: ${r.watermark.latest_event_ref} commit_sha=${r.watermark.commit_sha}`,`event_log_hash: ${r.watermark.event_log_hash}`,`identity: ${r.identity_resolution.source} (chat nicknames are not identity)`,"boundary: read-only projection; no execution, no write-back, no grants",`items_matched: ${r.feed.items_matched}`,`display_modes: ${r.feed.display_modes.join(",")}`,`threads: ${r.feed.threads.length}`,`health_board_seats: ${r.curator_portal.health_board.seats.map((n)=>n.seat_id).join(",")||"none"}`,`promotion_queue: ${r.curator_portal.promotion_queue.items.length} display_only=true`,...r.feed.items.map((n)=>[`[${$y(n.item_type)}] ${n.title}`,` ${gy(n)}`,` source: ${E4(n)} seq=${String(n.source.seq??"none")}`,` thread: ${n.thread.thread_id} items=${n.thread.thread_item_count}`,n.lane?` lane: ${n.lane}`:null,n.role?` role: ${n.role}`:null,n.verdict?` verdict: ${n.verdict}`:null,n.status_effect&&n.status_effect!=="none"?` status_effect: ${n.status_effect}`:null,n.topic_hints.length>0?` topics: ${n.topic_hints.join(",")}`:null,` body: ${n.body}`," authority: projection-only; cannot execute, write back, grant, close, merge, or sign"].filter((t)=>t!==null).join(`
|
|
333
|
-
`)),"can_execute: false","can_write_back: false","can_grant: false"].join(`
|
|
334
|
-
`)}function fy(r){return[`# Timeline Feed: ${oy(r.scope)}`,"","| Field | Value |","| --- | --- |",`| Schema | \`${r.schema}\` |`,`| Source | \`${r.source.projection_schema}\` |`,`| Watermark | \`${r.watermark.latest_event_ref}\` |`,`| Commit | \`${r.watermark.commit_sha}\` |`,`| Event log hash | \`${r.watermark.event_log_hash}\` |`,`| Identity | ${r.identity_resolution.source}; chat nicknames are not identity |`,"| Boundary | read-only projection; no execution, no write-back, no grants |",`| Display modes | ${r.feed.display_modes.map((n)=>`\`${n}\``).join(", ")} |`,`| Threads | ${r.feed.threads.length} |`,`| Health board seats | ${r.curator_portal.health_board.seats.map((n)=>`\`${n.seat_id}\``).join(", ")||"_none_"} |`,"","## Feed","",...r.feed.items.length===0?["_No timeline items._"]:r.feed.items.map((n)=>[`### [${$y(n.item_type)}] ${n.title}`,"","| Field | Value |","| --- | --- |",`| Type | \`${n.item_type}\` |`,`| Source | \`${E4(n)}\` |`,`| Commit | \`${n.source.commit_sha}\` |`,`| Thread | \`${n.thread.thread_id}\` (${n.thread.thread_item_count} item${n.thread.thread_item_count===1?"":"s"}) |`,n.lane?`| Lane | \`${n.lane}\` |`:null,n.role?`| Role | \`${n.role}\` |`:null,n.verdict?`| Verdict | \`${n.verdict}\` |`:null,n.topic_hints.length>0?`| Topics | ${n.topic_hints.map((t)=>`\`${t}\``).join(", ")} |`:null,`| Audience | ${gy(n)} |`,`| Body | ${n.body} |`,"| Authority | projection-only; cannot execute, write back, grant, close, merge, or sign |"].filter((t)=>t!==null).join(`
|
|
335
|
-
`)),"","## Curator Portal","",`- Health board seats: ${r.curator_portal.health_board.seats.map((n)=>`\`${n.seat_id}\``).join(", ")||"_none_"}`,`- Digest threads: ${r.curator_portal.digest_view.threads}`,`- Promotion queue: ${r.curator_portal.promotion_queue.items.length} display-only item${r.curator_portal.promotion_queue.items.length===1?"":"s"}`,"- Authority: display-only; cannot execute, write back, promote, grant, close, or merge.",""].join(`
|
|
336
|
-
`)}var wy=["GET","HEAD","OPTIONS"];function Z(r){return r.replace(/&/g,"&").replace(/</g,"<").replace(/>/g,">").replace(/"/g,""").replace(/'/g,"'")}function DF(r){return r.charAt(0).toUpperCase()+r.slice(1)}function yF(r){switch(r){case"task_card":return"TASK";case"return":return"RETURN";case"receipt":return"RECEIPT";case"decision":return"DECISION";case"chatter":return"CHATTER"}}function qF(r){switch(r){case"task_card":return"task";case"return":return"return";case"receipt":return"receipt";case"decision":return"decision";case"chatter":return"chatter"}}function TF(r){return r.source.event_ref??r.source.packet_ref??"unsequenced"}function NF(r){let n=[r.actor_seat_id?`from ${r.actor_seat_id}`:null,r.seat_id?`seat ${r.seat_id}`:null,r.operator_principal?`operator ${r.operator_principal}`:null].filter((t)=>Boolean(t));return n.length>0?n.join(" / "):"seat unresolved"}function qe(r,n,t=""){return n?`<span class="chip ${Z(t)}"><strong>${Z(r)}</strong>${Z(n)}</span>`:""}function LF(r){return`<div class="sections" role="tablist" aria-label="Card sections">
|
|
337
|
-
${r.display.sections.map((n,t)=>`<section class="card-section" role="tabpanel" aria-labelledby="${Z(r.item_id)}-tab-${t}">
|
|
338
|
-
<button id="${Z(r.item_id)}-tab-${t}" type="button" class="section-tab">${Z(n.label)}</button>
|
|
339
|
-
<p>${Z(n.body)}</p>
|
|
340
|
-
</section>`).join(`
|
|
341
|
-
`)}
|
|
342
|
-
</div>`}function zF(r){let n=qF(r.item_type);return`<article id="${r.source.seq===null?Z(r.item_id):`seq-${String(r.source.seq)}`}" class="feed-item ${n}" data-item-type="${Z(r.item_type)}" data-thread-id="${Z(r.thread.thread_id)}" data-depth="${String(r.thread.depth)}">
|
|
343
|
-
<div class="item-head">
|
|
344
|
-
<span class="badge ${n}">${Z(yF(r.item_type))}</span>
|
|
345
|
-
<time>${Z(r.created_at??"time unknown")}</time>
|
|
346
|
-
</div>
|
|
347
|
-
<div class="chips" aria-label="Timeline metadata">
|
|
348
|
-
${qe("seat",r.display.seat_badge,"seat")}
|
|
349
|
-
${qe("role",r.display.role_chip,"role")}
|
|
350
|
-
${qe("lane",r.display.lane_chip,"lane")}
|
|
351
|
-
${qe("verdict",r.display.verdict_pill,"verdict-pill")}
|
|
352
|
-
${qe("status",r.display.status_subtitle,"status")}
|
|
353
|
-
${r.display.topic_chips.map((e)=>qe("topic",e,"topic")).join("")}
|
|
354
|
-
${r.requires_ack===!0?'<span class="chip ack"><strong>ack</strong>requires_ack</span>':""}
|
|
355
|
-
</div>
|
|
356
|
-
<h2>${Z(r.title)}</h2>
|
|
357
|
-
<p class="body">${Z(r.body)}</p>
|
|
358
|
-
${LF(r)}
|
|
359
|
-
<dl>
|
|
360
|
-
<div><dt>Source</dt><dd><code>${Z(TF(r))}</code></dd></div>
|
|
361
|
-
<div><dt>Participants</dt><dd>${Z(NF(r))}</dd></div>
|
|
362
|
-
${r.lane?`<div><dt>Lane</dt><dd><code>${Z(r.lane)}</code></dd></div>`:""}
|
|
363
|
-
<div><dt>Thread</dt><dd><code>${Z(r.thread.thread_id)}</code> - ${String(r.thread.thread_item_count)} item${r.thread.thread_item_count===1?"":"s"}</dd></div>
|
|
364
|
-
<div><dt>Authority</dt><dd>projection only; cannot execute, write back, grant, close, merge, or sign</dd></div>
|
|
365
|
-
</dl>
|
|
366
|
-
</article>`}function SF(r){if(r.feed.threads.length===0)return'<section class="empty">No threads found for this scope.</section>';return`<ol class="thread-index">
|
|
367
|
-
${r.feed.threads.map((n)=>`<li>
|
|
368
|
-
<a href="#${Z(n.latest_seq===null?n.item_ids[0]:`seq-${n.latest_seq}`)}">${Z(n.title)}</a>
|
|
369
|
-
<span>${String(n.item_count)} items</span>
|
|
370
|
-
</li>`).join(`
|
|
371
|
-
`)}
|
|
372
|
-
</ol>`}function WF(r){let n=r.curator_portal.health_board.seats.length>0?r.curator_portal.health_board.seats.map((e)=>`<tr>
|
|
373
|
-
<td><code>${Z(e.seat_id)}</code></td>
|
|
374
|
-
<td>${Z(e.lifecycle_state)}</td>
|
|
375
|
-
<td>${e.ready?"ready":"not ready"}</td>
|
|
376
|
-
<td>${Z(e.source)}</td>
|
|
377
|
-
<td><code>${Z(e.sentinel_state_ref)}</code></td>
|
|
378
|
-
</tr>`).join(`
|
|
379
|
-
`):'<tr><td colspan="5">No seats in this projection.</td></tr>',t=r.curator_portal.promotion_queue.items.length>0?r.curator_portal.promotion_queue.items.map((e)=>`<li><code>${Z(e.source_ref)}</code> ${Z(e.reason)} ${e.next_owner?`- next ${Z(e.next_owner)}`:""}</li>`).join(`
|
|
380
|
-
`):"<li>No display-only queue items.</li>";return`<section class="curator" aria-label="Curator Portal">
|
|
381
|
-
<div class="section-title">
|
|
382
|
-
<h2>Curator Portal</h2>
|
|
383
|
-
<span>display-only</span>
|
|
384
|
-
</div>
|
|
385
|
-
<div class="curator-grid">
|
|
386
|
-
<section>
|
|
387
|
-
<h3>Health board</h3>
|
|
388
|
-
<table>
|
|
389
|
-
<thead><tr><th>Seat</th><th>Lifecycle</th><th>Ready</th><th>Source</th><th>Sentinel</th></tr></thead>
|
|
390
|
-
<tbody>${n}</tbody>
|
|
391
|
-
</table>
|
|
392
|
-
</section>
|
|
393
|
-
<section>
|
|
394
|
-
<h3>Digest view</h3>
|
|
395
|
-
<dl>
|
|
396
|
-
<div><dt>Threads</dt><dd>${String(r.curator_portal.digest_view.threads)}</dd></div>
|
|
397
|
-
<div><dt>Requires ack</dt><dd>${String(r.curator_portal.digest_view.requires_ack)}</dd></div>
|
|
398
|
-
<div><dt>Tasks</dt><dd>${String(r.curator_portal.digest_view.items_by_type.task_card)}</dd></div>
|
|
399
|
-
<div><dt>Returns</dt><dd>${String(r.curator_portal.digest_view.items_by_type.return)}</dd></div>
|
|
400
|
-
</dl>
|
|
401
|
-
</section>
|
|
402
|
-
<section>
|
|
403
|
-
<h3>Promotion queue</h3>
|
|
404
|
-
<p>Display-only; cannot promote, grant, close, merge, execute, or write back.</p>
|
|
405
|
-
<ul>${t}</ul>
|
|
406
|
-
</section>
|
|
407
|
-
</div>
|
|
408
|
-
</section>`}function EF(r){let n=r.feed.items.length>0?r.feed.items.map((i)=>zF(i)).join(`
|
|
409
|
-
`):'<section class="empty">No timeline items found for this scope.</section>',t=r.feed.deep_link.item_id?`Selected ${r.feed.deep_link.event_ref??r.feed.deep_link.item_id}`:"No deep link selected",e=DF(r.scope);return`<!doctype html>
|
|
410
|
-
<html lang="en">
|
|
411
|
-
<head>
|
|
412
|
-
<meta charset="utf-8">
|
|
413
|
-
<meta name="viewport" content="width=device-width, initial-scale=1">
|
|
414
|
-
<title>Etiquette Timeline Preview</title>
|
|
415
|
-
<style>
|
|
416
|
-
:root {
|
|
417
|
-
color-scheme: light;
|
|
418
|
-
--ink: #172026;
|
|
419
|
-
--muted: #5d6973;
|
|
420
|
-
--line: #d7dee5;
|
|
421
|
-
--surface: #ffffff;
|
|
422
|
-
--page: #f6f7f8;
|
|
423
|
-
--teal: #0f766e;
|
|
424
|
-
--amber: #a15c00;
|
|
425
|
-
--red: #b42318;
|
|
426
|
-
--blue: #2563eb;
|
|
427
|
-
--violet: #6d28d9;
|
|
428
|
-
}
|
|
429
|
-
* { box-sizing: border-box; }
|
|
430
|
-
body {
|
|
431
|
-
margin: 0;
|
|
432
|
-
font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
|
|
433
|
-
color: var(--ink);
|
|
434
|
-
background: var(--page);
|
|
435
|
-
}
|
|
436
|
-
main { width: min(1120px, calc(100% - 32px)); margin: 0 auto; padding: 24px 0 40px; }
|
|
437
|
-
header {
|
|
438
|
-
display: grid;
|
|
439
|
-
grid-template-columns: minmax(0, 1fr) auto;
|
|
440
|
-
gap: 16px;
|
|
441
|
-
align-items: end;
|
|
442
|
-
padding: 18px 0 16px;
|
|
443
|
-
border-bottom: 1px solid var(--line);
|
|
444
|
-
}
|
|
445
|
-
h1 { margin: 0; font-size: 28px; line-height: 1.15; letter-spacing: 0; }
|
|
446
|
-
.subhead { margin: 6px 0 0; color: var(--muted); line-height: 1.45; }
|
|
447
|
-
.scope {
|
|
448
|
-
display: inline-flex;
|
|
449
|
-
align-items: center;
|
|
450
|
-
min-height: 32px;
|
|
451
|
-
padding: 6px 10px;
|
|
452
|
-
border-radius: 8px;
|
|
453
|
-
background: #e6f4f1;
|
|
454
|
-
color: #075e57;
|
|
455
|
-
font-weight: 700;
|
|
456
|
-
white-space: nowrap;
|
|
457
|
-
}
|
|
458
|
-
.summary {
|
|
459
|
-
display: grid;
|
|
460
|
-
grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
|
|
461
|
-
gap: 10px;
|
|
462
|
-
margin: 18px 0;
|
|
463
|
-
}
|
|
464
|
-
.metric {
|
|
465
|
-
background: var(--surface);
|
|
466
|
-
border: 1px solid var(--line);
|
|
467
|
-
border-radius: 8px;
|
|
468
|
-
padding: 12px;
|
|
469
|
-
min-width: 0;
|
|
470
|
-
}
|
|
471
|
-
.metric span { display: block; color: var(--muted); font-size: 12px; }
|
|
472
|
-
.metric strong { display: block; margin-top: 4px; font-size: 18px; overflow-wrap: anywhere; }
|
|
473
|
-
.boundary {
|
|
474
|
-
display: grid;
|
|
475
|
-
gap: 8px;
|
|
476
|
-
margin: 18px 0;
|
|
477
|
-
padding: 14px;
|
|
478
|
-
border: 1px solid #f0c36d;
|
|
479
|
-
border-left: 4px solid var(--amber);
|
|
480
|
-
border-radius: 8px;
|
|
481
|
-
background: #fff8eb;
|
|
482
|
-
}
|
|
483
|
-
.boundary strong { color: #7a4100; }
|
|
484
|
-
.view-controls {
|
|
485
|
-
display: flex;
|
|
486
|
-
flex-wrap: wrap;
|
|
487
|
-
align-items: center;
|
|
488
|
-
justify-content: space-between;
|
|
489
|
-
gap: 10px;
|
|
490
|
-
margin: 18px 0 10px;
|
|
491
|
-
}
|
|
492
|
-
.toggle {
|
|
493
|
-
display: inline-flex;
|
|
494
|
-
overflow: hidden;
|
|
495
|
-
border: 1px solid var(--line);
|
|
496
|
-
border-radius: 8px;
|
|
497
|
-
background: var(--surface);
|
|
498
|
-
}
|
|
499
|
-
.toggle a {
|
|
500
|
-
min-height: 34px;
|
|
501
|
-
padding: 8px 12px;
|
|
502
|
-
border-right: 1px solid var(--line);
|
|
503
|
-
color: var(--ink);
|
|
504
|
-
text-decoration: none;
|
|
505
|
-
font-weight: 700;
|
|
506
|
-
}
|
|
507
|
-
.toggle a:last-child { border-right: 0; }
|
|
508
|
-
.toggle a[aria-current="true"] { background: #e6f4f1; color: #075e57; }
|
|
509
|
-
.thread-index {
|
|
510
|
-
display: grid;
|
|
511
|
-
gap: 8px;
|
|
512
|
-
margin: 0 0 18px;
|
|
513
|
-
padding: 0;
|
|
514
|
-
list-style: none;
|
|
515
|
-
}
|
|
516
|
-
.thread-index li {
|
|
517
|
-
display: flex;
|
|
518
|
-
gap: 10px;
|
|
519
|
-
justify-content: space-between;
|
|
520
|
-
padding: 10px 12px;
|
|
521
|
-
border: 1px solid var(--line);
|
|
522
|
-
border-radius: 8px;
|
|
523
|
-
background: var(--surface);
|
|
524
|
-
}
|
|
525
|
-
.thread-index a { color: var(--blue); font-weight: 700; overflow-wrap: anywhere; }
|
|
526
|
-
.feed { display: grid; gap: 12px; margin-top: 18px; }
|
|
527
|
-
.feed-item {
|
|
528
|
-
background: var(--surface);
|
|
529
|
-
border: 1px solid var(--line);
|
|
530
|
-
border-left: 4px solid var(--teal);
|
|
531
|
-
border-radius: 8px;
|
|
532
|
-
padding: 14px;
|
|
533
|
-
}
|
|
534
|
-
.feed-item.return { border-left-color: var(--blue); }
|
|
535
|
-
.feed-item.receipt { border-left-color: var(--violet); }
|
|
536
|
-
.feed-item.decision { border-left-color: var(--red); }
|
|
537
|
-
.feed-item.chatter { border-left-color: #64748b; }
|
|
538
|
-
.item-head { display: flex; gap: 10px; align-items: center; justify-content: space-between; }
|
|
539
|
-
.badge {
|
|
540
|
-
display: inline-flex;
|
|
541
|
-
min-height: 24px;
|
|
542
|
-
align-items: center;
|
|
543
|
-
padding: 3px 8px;
|
|
544
|
-
border-radius: 6px;
|
|
545
|
-
background: #e6f4f1;
|
|
546
|
-
color: #075e57;
|
|
547
|
-
font-size: 12px;
|
|
548
|
-
font-weight: 800;
|
|
549
|
-
}
|
|
550
|
-
.badge.return { background: #eaf1ff; color: #1d4ed8; }
|
|
551
|
-
.badge.receipt { background: #f1eafe; color: #5b21b6; }
|
|
552
|
-
.badge.decision { background: #feeceb; color: #991b1b; }
|
|
553
|
-
.badge.chatter { background: #eef2f5; color: #475569; }
|
|
554
|
-
.chips {
|
|
555
|
-
display: flex;
|
|
556
|
-
flex-wrap: wrap;
|
|
557
|
-
gap: 6px;
|
|
558
|
-
margin-top: 10px;
|
|
559
|
-
}
|
|
560
|
-
.chip {
|
|
561
|
-
display: inline-flex;
|
|
562
|
-
gap: 6px;
|
|
563
|
-
align-items: center;
|
|
564
|
-
min-height: 24px;
|
|
565
|
-
padding: 3px 8px;
|
|
566
|
-
border: 1px solid #d5dde6;
|
|
567
|
-
border-radius: 999px;
|
|
568
|
-
background: #f8fafc;
|
|
569
|
-
color: #334155;
|
|
570
|
-
font-size: 12px;
|
|
571
|
-
}
|
|
572
|
-
.chip strong { color: #64748b; font-weight: 800; }
|
|
573
|
-
.chip.verdict-pill { border-color: #bfd1ff; background: #eaf1ff; color: #1d4ed8; }
|
|
574
|
-
.chip.ack { border-color: #f5c2c0; background: #feeceb; color: #991b1b; }
|
|
575
|
-
time { color: var(--muted); font-size: 12px; text-align: right; }
|
|
576
|
-
h2 { margin: 10px 0 6px; font-size: 17px; letter-spacing: 0; line-height: 1.25; }
|
|
577
|
-
.body { margin: 0 0 12px; color: #334155; overflow-wrap: anywhere; }
|
|
578
|
-
.sections {
|
|
579
|
-
display: grid;
|
|
580
|
-
grid-template-columns: repeat(auto-fit, minmax(210px, 1fr));
|
|
581
|
-
gap: 8px;
|
|
582
|
-
margin: 12px 0;
|
|
583
|
-
}
|
|
584
|
-
.card-section {
|
|
585
|
-
padding: 8px;
|
|
586
|
-
border: 1px solid var(--line);
|
|
587
|
-
border-radius: 8px;
|
|
588
|
-
background: #fbfcfd;
|
|
589
|
-
}
|
|
590
|
-
.section-tab {
|
|
591
|
-
border: 0;
|
|
592
|
-
padding: 0;
|
|
593
|
-
background: transparent;
|
|
594
|
-
color: var(--ink);
|
|
595
|
-
font-weight: 800;
|
|
596
|
-
text-align: left;
|
|
597
|
-
}
|
|
598
|
-
.card-section p { margin: 6px 0 0; color: var(--muted); font-size: 13px; line-height: 1.35; }
|
|
599
|
-
dl {
|
|
600
|
-
display: grid;
|
|
601
|
-
grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
|
|
602
|
-
gap: 8px 14px;
|
|
603
|
-
margin: 0;
|
|
604
|
-
}
|
|
605
|
-
dl div { min-width: 0; }
|
|
606
|
-
dt { color: var(--muted); font-size: 12px; }
|
|
607
|
-
dd { margin: 2px 0 0; overflow-wrap: anywhere; }
|
|
608
|
-
code {
|
|
609
|
-
padding: 2px 5px;
|
|
610
|
-
border-radius: 4px;
|
|
611
|
-
background: #eef2f5;
|
|
612
|
-
color: #263238;
|
|
613
|
-
font-size: 12px;
|
|
614
|
-
}
|
|
615
|
-
.empty {
|
|
616
|
-
padding: 20px;
|
|
617
|
-
border: 1px solid var(--line);
|
|
618
|
-
border-radius: 8px;
|
|
619
|
-
background: var(--surface);
|
|
620
|
-
color: var(--muted);
|
|
621
|
-
}
|
|
622
|
-
.curator {
|
|
623
|
-
margin-top: 22px;
|
|
624
|
-
padding-top: 18px;
|
|
625
|
-
border-top: 1px solid var(--line);
|
|
626
|
-
}
|
|
627
|
-
.section-title {
|
|
628
|
-
display: flex;
|
|
629
|
-
align-items: center;
|
|
630
|
-
justify-content: space-between;
|
|
631
|
-
gap: 12px;
|
|
632
|
-
margin-bottom: 10px;
|
|
633
|
-
}
|
|
634
|
-
.section-title h2 { margin: 0; }
|
|
635
|
-
.section-title span {
|
|
636
|
-
padding: 4px 8px;
|
|
637
|
-
border-radius: 999px;
|
|
638
|
-
background: #eef2f5;
|
|
639
|
-
color: #475569;
|
|
640
|
-
font-size: 12px;
|
|
641
|
-
font-weight: 800;
|
|
642
|
-
}
|
|
643
|
-
.curator-grid {
|
|
644
|
-
display: grid;
|
|
645
|
-
grid-template-columns: minmax(0, 1.4fr) minmax(220px, .8fr);
|
|
646
|
-
gap: 12px;
|
|
647
|
-
}
|
|
648
|
-
.curator-grid section {
|
|
649
|
-
min-width: 0;
|
|
650
|
-
padding: 12px;
|
|
651
|
-
border: 1px solid var(--line);
|
|
652
|
-
border-radius: 8px;
|
|
653
|
-
background: var(--surface);
|
|
654
|
-
}
|
|
655
|
-
.curator-grid section:first-child { grid-row: span 2; }
|
|
656
|
-
.curator h3 { margin: 0 0 8px; font-size: 16px; }
|
|
657
|
-
table {
|
|
658
|
-
width: 100%;
|
|
659
|
-
border-collapse: collapse;
|
|
660
|
-
font-size: 13px;
|
|
661
|
-
}
|
|
662
|
-
th, td {
|
|
663
|
-
padding: 7px 6px;
|
|
664
|
-
border-bottom: 1px solid var(--line);
|
|
665
|
-
text-align: left;
|
|
666
|
-
vertical-align: top;
|
|
667
|
-
overflow-wrap: anywhere;
|
|
668
|
-
}
|
|
669
|
-
th { color: var(--muted); font-size: 12px; }
|
|
670
|
-
ul { margin: 8px 0 0; padding-left: 18px; }
|
|
671
|
-
@media (max-width: 640px) {
|
|
672
|
-
main { width: min(100% - 20px, 1120px); padding-top: 12px; }
|
|
673
|
-
header { grid-template-columns: 1fr; align-items: start; }
|
|
674
|
-
.scope { justify-self: start; }
|
|
675
|
-
.item-head { align-items: flex-start; flex-direction: column; }
|
|
676
|
-
time { text-align: left; }
|
|
677
|
-
.curator-grid { grid-template-columns: 1fr; }
|
|
678
|
-
}
|
|
679
|
-
</style>
|
|
680
|
-
</head>
|
|
681
|
-
<body data-authority="projection-only" data-ledger-write-path="false">
|
|
682
|
-
<main>
|
|
683
|
-
<header>
|
|
684
|
-
<div>
|
|
685
|
-
<h1>Etiquette Timeline Preview</h1>
|
|
686
|
-
<p class="subhead">Read-only loopback panel over the existing timeline projection.</p>
|
|
687
|
-
</div>
|
|
688
|
-
<span class="scope">${Z(e)}</span>
|
|
689
|
-
</header>
|
|
690
|
-
<section class="summary" aria-label="Projection summary">
|
|
691
|
-
<div class="metric"><span>Schema</span><strong>${Z(r.schema)}</strong></div>
|
|
692
|
-
<div class="metric"><span>Items</span><strong>${String(r.feed.items_matched)}</strong></div>
|
|
693
|
-
<div class="metric"><span>Source</span><strong>${Z(r.source.projection_schema)}</strong></div>
|
|
694
|
-
<div class="metric"><span>Watermark</span><strong>${Z(r.watermark.latest_event_ref)}</strong></div>
|
|
695
|
-
<div class="metric"><span>Commit</span><strong>${Z(r.watermark.commit_sha)}</strong></div>
|
|
696
|
-
<div class="metric"><span>Event log hash</span><strong>${Z(r.watermark.event_log_hash)}</strong></div>
|
|
697
|
-
</section>
|
|
698
|
-
<section class="boundary">
|
|
699
|
-
<strong>Boundary</strong>
|
|
700
|
-
<span>${Z(r.boundary)}</span>
|
|
701
|
-
<span>GET/HEAD/OPTIONS only; no hosted backend, no auth provider, no impersonation, no execution, no write-back.</span>
|
|
702
|
-
</section>
|
|
703
|
-
<section class="view-controls" aria-label="Feed modes">
|
|
704
|
-
<nav class="toggle" aria-label="Timeline display modes">
|
|
705
|
-
<a href="#stream" aria-current="true">Stream</a>
|
|
706
|
-
<a href="#threads">Thread</a>
|
|
707
|
-
</nav>
|
|
708
|
-
<span>${Z(t)}</span>
|
|
709
|
-
</section>
|
|
710
|
-
<section id="threads" aria-label="Thread index">
|
|
711
|
-
${SF(r)}
|
|
712
|
-
</section>
|
|
713
|
-
<section id="stream" class="feed" aria-label="Timeline feed">
|
|
714
|
-
${n}
|
|
715
|
-
</section>
|
|
716
|
-
${WF(r)}
|
|
717
|
-
</main>
|
|
718
|
-
</body>
|
|
719
|
-
</html>`}function yc(r){return new Headers({allow:wy.join(", "),"cache-control":"no-store","content-type":r,"x-etiquette-authority":"projection-only","x-etiquette-ledger-write-path":"false"})}function by(r,n){return r.method==="HEAD"?null:n}async function my(r,n){if(r.method==="OPTIONS")return new Response(null,{status:204,headers:yc("text/plain; charset=utf-8")});if(r.method!=="GET"&&r.method!=="HEAD")return Response.json({error:"method_not_allowed",allowed_methods:wy,authority_boundary:{request_can_write_ledger:!1,request_can_execute:!1,request_can_grant:!1}},{status:405,headers:yc("application/json; charset=utf-8")});let t=new URL(r.url),e=Number.parseInt(t.searchParams.get("seq")??"",10),i=Number.isFinite(e)?e:null;if(t.pathname==="/api/timeline"){let _=J4(await n(),i);return new Response(by(r,JSON.stringify(_,null,2)),{headers:yc("application/json; charset=utf-8")})}if(t.pathname==="/"||t.pathname==="/index.html"){let _=J4(await n(),i);return new Response(by(r,EF(_)),{headers:yc("text/html; charset=utf-8")})}return Response.json({error:"not_found",authority_boundary:{request_can_write_ledger:!1,request_can_execute:!1,request_can_grant:!1}},{status:404,headers:yc("application/json; charset=utf-8")})}function A4(r,n){let t=r.packets.filter((_)=>_.kind==="packet"&&_.lane===n.task&&_.from===n.seat&&n.expectedRoles.includes(_.role)),e=t.filter((_)=>_.seq!==null),i=e.length>0?"pass":t.length>0?"unposted_return":"missing_return";return{task:n.task,seat:n.seat,expected_roles:n.expectedRoles,verdict:i,matched_return_packets:t,posted_return_packets:e,latest_event_ref:r.watermark.latest_event_ref,event_log_hash:r.watermark.event_log_hash}}var jF=["solo","tango","rig","shadow"],JF=["rig_opened","child_spawned","child_returned","rig_closed"],Iy=["pass","fail","not_run","not_applicable"],AF=["shadow"],MF=[".etiquette/events",".etiquette/notify","docs/work/ledger","docs/work/packets","docs/work/lanes","artifacts/"],PF=["bus_write","ledger_write","merge","push","protected_branch_push","close_lane","grant","sign","rotate_secret","mutate_authority"];function Oy(r){return typeof r==="object"&&r!==null&&!Array.isArray(r)}function Qn(r,n){if(!Oy(r))throw Error(`${n} must be an object`);return r}function gr(r,n){let t=r[n];if(typeof t!=="string"||t.trim().length===0)throw Error(`${n} must be a non-empty string`);return t.trim()}function M4(r,n){let t=r[n];if(t===void 0)return;if(typeof t!=="string"||t.trim().length===0)throw Error(`${n} must be a non-empty string when present`);return t.trim()}function Bn(r,n){let t=r[n];if(!Array.isArray(t))throw Error(`${n} must be a string array`);return t.map((e)=>{if(typeof e!=="string"||e.trim().length===0)throw Error(`${n} must contain only non-empty strings`);return e.trim()})}function qc(r,n){let t=r[n];if(!Number.isInteger(t)||Number(t)<0)throw Error(`${n} must be a non-negative integer`);return Number(t)}function kF(r,n){if(r[n]===void 0)return;return qc(r,n)}function XF(r,n){let t=r[n];if(typeof t!=="boolean")throw Error(`${n} must be a boolean`);return t}function Uy(r,n){let t=r[n];if(t===void 0)return!0;if(t!==!0)throw Error(`${n} must be true`);return!0}function Te(r,n){if(r[n]!==!1)throw Error(`authority_boundary.${n} must be false`);return!1}function Ne(r,n,t){if(typeof n!=="string"||!r.includes(n))throw Error(`${t} must be one of: ${r.join(", ")}`);return n}function Hn(r,n){if(r.startsWith("/")||r.startsWith("\\")||/^[A-Za-z]:[\\/]/.test(r))throw Error(`${n} must be an opaque or repo-relative ref, not a local absolute path`);if(/[a-z][a-z0-9+.-]*:\/\//i.test(r))throw Error(`${n} must be an opaque or repo-relative ref, not a URL`)}function GF(r){let n=Qn(r,"authority_boundary");return{topology_grants_authority:Te(n,"topology_grants_authority"),parenthood_grants_authority:Te(n,"parenthood_grants_authority"),child_mints_authority:Te(n,"child_mints_authority"),child_can_write_parent_ledger:Te(n,"child_can_write_parent_ledger"),station_role_grants_authority:Te(n,"station_role_grants_authority"),validation_is_authorization:Te(n,"validation_is_authorization")}}function VF(r){let n=Qn(r,"stations");return{orchestration_lead:gr(n,"orchestration_lead"),rig_lead:gr(n,"rig_lead"),synthesis_owner:gr(n,"synthesis_owner"),reviewer:gr(n,"reviewer")}}function FF(r){let n=Qn(r,"station edge");return{from:Ne(["orchestration_lead","rig_lead","synthesis_owner","reviewer"],n.from,"station_edges.from"),to:Ne(["orchestration_lead","rig_lead","synthesis_owner","reviewer"],n.to,"station_edges.to")}}function lF(r){let n=Qn(r,"return_contract");return{return_to:gr(n,"return_to"),required_refs:Bn(n,"required_refs"),disposal_confirmed_required:Uy(n,"disposal_confirmed_required")}}function vF(r){let n=Qn(r,"task_spec"),t=gr(n,"task_id"),e=gr(n,"lane");Hn(t,"task_spec.task_id"),Hn(e,"task_spec.lane");let i=Bn(n,"allowed_writes");for(let _ of i)Hn(_,"task_spec.allowed_writes");return{task_id:t,lane:e,assigned_to:gr(n,"assigned_to"),allowed_writes:i,validation:Bn(n,"validation"),return_contract:lF(n.return_contract)}}function YF(r){let n=Qn(r,"structured check");return{name:gr(n,"name"),compile_status:n.compile_status===void 0?void 0:Ne(Iy,n.compile_status,"checks.compile_status"),gate_status:n.gate_status===void 0?void 0:Ne(Iy,n.gate_status,"checks.gate_status"),tests_failed:kF(n,"tests_failed"),blocking:XF(n,"blocking")}}function HF(r){let n=Qn(r,"child node"),t=gr(n,"node_id"),e=gr(n,"lane");if(Hn(t,"child_nodes.node_id"),Hn(e,"child_nodes.lane"),"depth"in n)throw Error("child_nodes.depth is derived from parent_node chain and must not be declared");let i=M4(n,"scratch_ref");if(i!==void 0)Hn(i,"child_nodes.scratch_ref");let _=Bn(n,"allowed_writes");for(let c of _)Hn(c,"child_nodes.allowed_writes");return{node_id:t,parent_node:gr(n,"parent_node"),return_to:gr(n,"return_to"),lane:e,assigned_to:gr(n,"assigned_to"),scratch_ref:i,allowed_writes:_,allowed_tools:Bn(n,"allowed_tools"),forbidden_actions:Bn(n,"forbidden_actions"),child_spawn_budget:qc(n,"child_spawn_budget"),task_spec:vF(n.task_spec)}}function BF(r){let n=Qn(r,"lifecycle event"),t=n.checks===void 0?void 0:n.checks;if(t!==void 0&&!Array.isArray(t))throw Error("lifecycle_events.checks must be an array when present");return{type:Ne(JF,n.type,"lifecycle_events.type"),node_id:M4(n,"node_id"),ref:M4(n,"ref"),disposal_confirmed:typeof n.disposal_confirmed==="boolean"?n.disposal_confirmed:void 0,checks:Array.isArray(t)?t.map(YF):void 0}}function QF(r){if(r===void 0)return;let n=Qn(r,"synthesis");return{owner:gr(n,"owner"),return_to:gr(n,"return_to"),child_return_refs:Bn(n,"child_return_refs"),disposal_confirmed:n.disposal_confirmed===!0}}function KF(r){let n=Qn(r,"rig conductor envelope");if(n.schema!=="rig_conductor.v0")throw Error("schema must be rig_conductor.v0");let t=gr(n,"rig_id"),e=gr(n,"lane");Hn(t,"rig_id"),Hn(e,"lane");let i=Bn(n,"allowed_writes");for(let o of i)Hn(o,"allowed_writes");let _=n.child_nodes??[];if(!Array.isArray(_))throw Error("child_nodes must be an array");let c=n.lifecycle_events??[];if(!Array.isArray(c))throw Error("lifecycle_events must be an array");let u=n.station_edges??[];if(!Array.isArray(u))throw Error("station_edges must be an array");return{schema:"rig_conductor.v0",rig_id:t,workflow_id:gr(n,"workflow_id"),lane:e,execution_strategy:Ne(jF,n.execution_strategy,"execution_strategy"),parent_node:gr(n,"parent_node"),return_to:gr(n,"return_to"),synthesis_owner:gr(n,"synthesis_owner"),allowed_writes:i,allowed_tools:Bn(n,"allowed_tools"),forbidden_actions:Bn(n,"forbidden_actions"),child_spawn_budget:qc(n,"child_spawn_budget"),max_depth:qc(n,"max_depth"),total_descendant_budget:qc(n,"total_descendant_budget"),ephemeral_children:Uy(n,"ephemeral_children"),stations:VF(n.stations),station_edges:u.map(FF),child_nodes:_.map(HF),lifecycle_events:c.map(BF),synthesis:QF(n.synthesis),authority_boundary:GF(n.authority_boundary)}}function M$(r,n){return r.every((t)=>n.includes(t))}function aF(r){let n=new Map;for(let _ of r)n.set(_.from,[...n.get(_.from)??[],_.to]);let t=new Set,e=new Set,i=(_)=>{if(t.has(_))return!0;if(e.has(_))return!1;t.add(_);for(let c of n.get(_)??[])if(i(c))return!0;return t.delete(_),e.add(_),!1};return["orchestration_lead","rig_lead","synthesis_owner","reviewer"].some(i)}function ZF(r){return r.allowed_writes.some((n)=>MF.some((t)=>n===t||n.startsWith(`${t}/`)))||r.allowed_tools.some((n)=>PF.includes(n))}function CF(r){let n=new Set;for(let t of r.child_nodes){if(t.allowed_writes.length===0)continue;if(t.scratch_ref===void 0)return!1;if(n.has(t.scratch_ref))return!1;n.add(t.scratch_ref)}return!0}function hy(r){if(!Oy(r))return!1;for(let[n,t]of Object.entries(r)){let e=n.toLowerCase();if(!(e.includes("cannot")||e.includes("requires")||e.includes("read_only")||e.includes("false"))&&/(authority|authorize|grant|merge|close|promote|push|sign|mint)/i.test(n)&&t===!0)return!0;if(hy(t))return!0}return!1}function xF(r){let n=new Map;for(let i of r.child_nodes)n.set(i.parent_node,[...n.get(i.parent_node)??[],i]);let t=new Map,e=(i,_,c)=>{for(let u of n.get(i)??[]){if(c.has(u.node_id)){t.set(u.node_id,Number.POSITIVE_INFINITY);continue}t.set(u.node_id,_),e(u.node_id,_+1,new Set([...c,u.node_id]))}};return e(r.parent_node,1,new Set([r.parent_node])),t}function pF(r){let n=new Set(r.child_nodes.map((t)=>t.node_id));return r.lifecycle_events.every((t)=>{if(t.type==="rig_opened"||t.type==="rig_closed")return t.node_id===void 0||t.node_id===r.rig_id;return typeof t.node_id==="string"&&n.has(t.node_id)})}function P4(r){return r.lifecycle_events.some((n)=>n.type==="rig_closed")}function Ry(r){let n=new Map;for(let t of r.lifecycle_events){if(t.type!=="child_returned"||t.node_id===void 0)continue;n.set(t.node_id,[...n.get(t.node_id)??[],t])}return n}function sF(r){if(!P4(r))return!0;let n=Ry(r);return r.child_nodes.every((t)=>(n.get(t.node_id)??[]).some((e)=>(e.checks??[]).length>0))}function rl(r){if(!P4(r))return!0;let n=Ry(r);return r.child_nodes.every((t)=>{let e=(n.get(t.node_id)??[]).flatMap((i)=>i.checks??[]);return e.length>0&&e.every((i)=>i.blocking===!1)})}function vr(r,n,t){if(!n)r.push(t)}function Dy(r){let n=KF(r),t=[],e=new Set(n.lifecycle_events.filter((V)=>V.type==="child_returned"&&typeof V.ref==="string").map((V)=>V.ref)),i=new Set(n.child_nodes.map((V)=>V.node_id)),_=xF(n),c=[..._.values()],u=c.length===0?0:Math.max(...c),o=n.child_nodes.length+n.child_nodes.reduce((V,Sr)=>V+Sr.child_spawn_budget,0),$=!AF.includes(n.execution_strategy),g=!aF(n.station_edges),d=n.child_nodes.every((V)=>V.assigned_to!==n.stations.reviewer&&V.node_id!==n.stations.reviewer),f=n.child_nodes.every((V)=>V.lane===n.lane&&M$(V.allowed_writes,n.allowed_writes)&&M$(V.allowed_tools,n.allowed_tools)&&M$(n.forbidden_actions,V.forbidden_actions)),b=n.child_nodes.every((V)=>V.task_spec.lane===V.lane&&V.task_spec.assigned_to===V.assigned_to&&M$(V.task_spec.allowed_writes,V.allowed_writes)&&V.task_spec.return_contract.return_to===V.return_to&&V.task_spec.return_contract.disposal_confirmed_required===!0&&V.task_spec.return_contract.required_refs.length>0&&V.task_spec.validation.length>0),m=CF(n),w=n.child_nodes.every((V)=>!ZF(V)),O=n.child_nodes.length<=n.child_spawn_budget&&o<=n.total_descendant_budget&&n.child_nodes.every((V)=>{let Sr=V.parent_node===n.parent_node?n.child_spawn_budget:n.child_nodes.find((ur)=>ur.node_id===V.parent_node)?.child_spawn_budget??-1;return Sr>0&&V.child_spawn_budget<Sr}),q=u<=n.max_depth&&c.every(Number.isFinite)&&_.size===i.size,T=P4(n),R=!T||n.synthesis!==void 0&&n.synthesis.owner===n.synthesis_owner&&n.synthesis.return_to===n.return_to&&n.child_nodes.every((V)=>n.synthesis?.child_return_refs.includes(V.node_id)||n.synthesis?.child_return_refs.some((Sr)=>e.has(Sr)&&V.task_spec.return_contract.required_refs.includes(Sr))),j=!T||n.synthesis?.disposal_confirmed===!0&&n.lifecycle_events.filter((V)=>V.type==="child_returned").every((V)=>V.disposal_confirmed===!0),J=sF(n),k=rl(n),Q=pF(n),L=!hy(r),Y={strategy_supported:$,station_graph_acyclic:g,reviewer_not_implementer:d,child_envelopes_subset_parent:f,child_task_specs_subset_envelopes:b,child_scratch_isolated:m,children_not_canonical_writers:w,child_budget_within_parent:O,depth_within_max:q,synthesis_has_child_refs:R,child_return_checks_present:J,child_return_checks_nonblocking:k,disposal_confirmed:j,lifecycle_events_valid:Q,authority_boundary_false:L};return vr(t,Y.strategy_supported,"strategy_reserved"),vr(t,Y.station_graph_acyclic,"station_cycle"),vr(t,Y.reviewer_not_implementer,"reviewer_is_implementer"),vr(t,Y.child_envelopes_subset_parent,"child_envelope_widens_parent"),vr(t,Y.child_task_specs_subset_envelopes,"task_spec_not_subset_or_missing_return_contract"),vr(t,Y.child_scratch_isolated,"child_scratch_not_isolated"),vr(t,Y.children_not_canonical_writers,"child_canonical_write_surface"),vr(t,Y.child_budget_within_parent,"child_budget_exhausted"),vr(t,Y.depth_within_max,"depth_exceeds_max"),vr(t,Y.synthesis_has_child_refs,"synthesis_missing_child_refs"),vr(t,Y.child_return_checks_present,"child_return_checks_missing"),vr(t,Y.child_return_checks_nonblocking,"child_return_blocking"),vr(t,Y.disposal_confirmed,"disposal_unconfirmed"),vr(t,Y.lifecycle_events_valid,"lifecycle_event_invalid"),vr(t,Y.authority_boundary_false,"authority_field_write_attempt"),{schema:"rig-conductor-validation.v0",rig_ref:n.rig_id,verdict:t.length===0?"legitimate":"blocked",reasons:t,checks:Y,derived:{max_observed_depth:u,child_count:n.child_nodes.length,descendant_budget_requested:o},authority_boundary:{...n.authority_boundary,validation_grants_authority:!1,topology_is_routing_only:!0}}}var G$="seat_lifecycle.v0",yy=["enrolled","provisioned","ready","assigned","active","idle","away","absent","stale","resuming","retired"],Jy=new Set(["ready","idle"]),qy=28800;function v4(){return{mode:"local-poll",webhook_enabled:!1,sns_sqs_enabled:!1,external_delivery_enabled:!1}}function Y4(){return{pointers_only:!0,packet_body_included:!1,raw_prompt_included:!1,diff_included:!1,secret_values_included:!1}}function H4(){return{queue_is_authority:!1,notification_can_authorize:!1,notification_can_grant:!1,notification_can_merge:!1,notification_can_close:!1,can_write_global_ledger:!1}}function _l(r){return{...r,transport:r.transport??v4(),payload_boundary:r.payload_boundary??Y4(),authority_boundary:{...H4(),...r.authority_boundary??{}}}}function Ay(){return{mode:"github-webhook",webhook_enabled:!0,signature_verified:!0,receiver_network_required:!0,receiver_must_fetch_and_verify:!0,webhook_payload_trusted_as_truth:!1,sns_sqs_enabled:!1,aws_enabled:!1}}function cl(){return{...Ay(),receiver_must_fetch_and_verify:!1}}function Ty(){return{pointers_only:!0,raw_payload_included:!1,commit_messages_included:!1,diff_included:!1,secret_values_included:!1}}function Ny(){return{notification_is_authority:!1,webhook_can_authorize:!1,webhook_can_grant:!1,webhook_can_merge:!1,webhook_can_close:!1,webhook_can_write_global_ledger:!1,webhook_can_write_local_ledger:!1}}var ul=new Set(["setup","handoff","init","bootstrap","whereami","resume","join","pickup","enter","audit","roster","post","notify","return","retire","rig","doctor","bus","timeline","status","diagnostics","trash"]),ol=["can_authorize_work","can_close_lane_without_grant","can_merge_or_push_without_grant"],Ly=["solo","tango","rig","shadow"],$l=[".etiquette/events/local.ndjson",".etiquette/notify/","docs/work/ledger/","docs/work/packets/","docs/work/receipts/","docs/work/sessions/"];function My(r){return ul.has(r)}function br(r){return Zn(I(r,"project")??process.cwd())}function Ur(r){let t=(r?I(r,"at"):void 0)??new Date().toISOString();if(!Number.isFinite(Date.parse(t)))throw Error("--at must be an ISO-8601 timestamp");return new Date(t).toISOString()}function $t(r){return M(r,".etiquette","events","local.ndjson")}function Se(r){return M(r,"docs","work","ledger","LEDGER.md")}function gl(r){return or(he(r))&&or($t(r))}function cr(r,n){let t=el(r,Zn(n));if(t.length===0||t.startsWith("..")||t.includes("\\"))throw Error(`path must stay inside project root: ${n}`);return t}function We(r,n,t){let e=t?` --expect-project-id ${t}`:"";return`etiquette pickup --project . --seat ${r} --task ${n}${e} --text`}function dl(r,n,t){let e=n?` --task ${n}`:"",i=t?` --expect-project-id ${t}`:"";return`etiquette resume check --project . --seat ${r}${e}${i} --json`}function fl(r,n){let t=I(n,"expect-project-id");if(t){L$(r,t,"current project");return}if(Boolean(n["allow-current-project"]))return;throw Error("pickup requires --expect-project-id <project_id>; run etiquette whereami --project . --json or use a generated pickup command. For manual local-only pickup, pass --allow-current-project.")}function Wn(r){return r.toLowerCase().replace(/[^a-z0-9._-]+/g,"-").replace(/^-+|-+$/g,"")||"item"}function wi(r,n=" "){if(r.length===0)return`${n}[]`;return r.map((t)=>`${n}- ${t}`).join(`
|
|
720
|
-
`)}function bl(r){return[".etiquette/events/local.ndjson",`.etiquette/notify/queues/${r.assignedTo.seatId}.json`,"docs/work/ledger/LEDGER.md",`docs/work/packets/*${Wn(r.id)}*.json`]}function Py(r){return[...r.allowedWrites,...bl(r)]}function wl(r){return r.mode==="read-only-audit"?"tango":"solo"}function ml(r){return r.mode==="product-implementation"?"implementation-return":"review-return"}function zy(r,n){return n.mode==="product-implementation"?r.reviewers[0]?.seatId??r.lead.seatId:r.lead.seatId}function Il(r){return r==="implementation-return"||r==="review-return"}function Kn(r,n,t){return I(r,n)??t}function P$(r){return{activeWorkers:r.activeWorkers??0,maxRecommendedWorkers:r.maxRecommendedWorkers??1,supportsParallel:r.supportsParallel??!1,...r}}function ky(r){let n=Kn(r,"profile","codex-cc-gemini"),t=Kn(r,"task-prefix","ETQ-BOOTSTRAP"),e=P$({seatId:Kn(r,"bootstrap-seat","manager-seat"),operatorPrincipal:Kn(r,"bootstrap-principal","manager"),displayName:"Bootstrap Provisioner Seat",seatType:"control_seat",asRole:"observer",authorityScope:"bootstrap-provenance",mode:"docs-only",modelRef:"bootstrap-provenance",modelTier:"local_unknown",modelId:"bootstrap-provenance",supportedStrategies:["bootstrap-provenance"],allowedWork:["repo-local bootstrap provenance","lead handoff records"],forbiddenWork:["routine task ownership after lead handoff","external ledger writes for routine execution","merge, push, closeout, promotion, or grants"]}),i=n==="lead-review";if(n!=="codex-cc-gemini"&&n!=="lead-review")throw Error("--profile must be codex-cc-gemini or lead-review");let _=P$({seatId:Kn(r,"lead-seat",i?"impl-seat":"codex-seat"),operatorPrincipal:Kn(r,"lead-principal",i?"impl":"codex"),displayName:"Local Lead Seat",seatType:"control_seat",asRole:"principal",authorityScope:"repo-local-routing",mode:"product-implementation",modelRef:i?"local-implementation-session":"local-codex-session",modelTier:"frontier_high_reasoning",modelId:i?"local-implementation-session":"local-codex-session",supportedStrategies:["local-routing","product-implementation","validation","review-gate"],activeWorkers:1,maxRecommendedWorkers:2,supportsParallel:!0,allowedWork:["repo-local task routing","repo-local board updates","repo-local session creation","assigned implementation","local receipt review"],forbiddenWork:["external ledger writes for routine execution","merge, push, closeout, promotion, or grants without explicit decision"]}),c=P$({seatId:Kn(r,"review-seat",i?"review-seat":"cc-seat"),operatorPrincipal:Kn(r,"review-principal",i?"review":"cc"),displayName:i?"Local Review Seat":"Claude Code Review Seat",seatType:"review_seat",asRole:"reviewer",authorityScope:"review-only",mode:"read-only-audit",modelRef:i?"local-review-session":"local-claude-code-session",modelTier:"local_unknown",modelId:i?"local-review-session":"local-claude-code-session",supportedStrategies:["read-only-audit","receipt-review"],allowedWork:["repo-local read-only review","product and docs critique","bounded session notes","receipt writing under docs/work/receipts"],forbiddenWork:["external ledger writes","product file edits without a later implementation task","merge, push, closeout, promotion, or grants"]}),u=[c],o=I(r,"qa-seat");if(r["no-qa"]!==!0&&(!i||o!==void 0))u.push(P$({seatId:Kn(r,"qa-seat","gemini-seat"),operatorPrincipal:Kn(r,"qa-principal","gemini"),displayName:"Gemini QA Seat",seatType:"review_seat",asRole:"reviewer",authorityScope:"review-only",mode:"read-only-audit",modelRef:"local-gemini-session",modelTier:"local_unknown",modelId:"local-gemini-session",supportedStrategies:["read-only-audit","adversarial-qa","receipt-review"],allowedWork:["repo-local adversarial review","edge-case review","mobile usability review","bounded session notes","receipt writing under docs/work/receipts"],forbiddenWork:["external ledger writes","product file edits without a later implementation task","merge, push, closeout, promotion, or grants"]}));let g=[{id:`${t}-001`,title:"First local implementation lane",mode:"product-implementation",assignedTo:_,allowedWrites:["src/**","app/**","test/**","tests/**",`docs/work/receipts/${t}-001-*.md`,`docs/work/sessions/session-${t}-001/**`],validation:["git diff --check"],planNote:`Lead pickup: execute ${t}-001 using repo-local Etiquette only.`},{id:`${t}-002`,title:"Review first local implementation lane",mode:"read-only-audit",assignedTo:c,allowedWrites:[`docs/work/receipts/${t}-002-*.md`,`docs/work/sessions/session-${t}-002/**`],validation:["etiquette doctor --project .",`etiquette console board --project . --seat ${c.seatId} --text`],planNote:`Review pickup: pressure-test ${t}-001 for scope, validation, and authority drift.`}],d=u[1];if(d)g.push({id:`${t}-003`,title:"Adversarial QA for the first local implementation lane",mode:"read-only-audit",assignedTo:d,allowedWrites:[`docs/work/receipts/${t}-003-*.md`,`docs/work/sessions/session-${t}-003/**`],validation:["git diff --check"],reviewFocus:["edge-case behavior","validation blind spots","mobile or repeated-use ergonomics","authority drift"],planNote:`QA pickup: adversarial review for ${t}-001 edge cases and validation gaps.`});return{profile:n,taskPrefix:t,lead:_,reviewers:u,bootstrapSeat:e,tasks:g}}function pr(r,n){if(typeof r!=="object"||r===null||Array.isArray(r))throw Error(`${n} must be an object`);return r}function F(r,n){let t=r[n];return typeof t==="string"&&t.trim().length>0?t.trim():void 0}function Tc(r,n){let t=r[n];return typeof t==="boolean"?t:void 0}function V$(r,n){let t=r[n];return Array.isArray(t)?t:void 0}function Xy(r,n="lifecycle_state"){if(!yy.includes(r))throw Error(`${n} must be one of: ${yy.join(", ")}`)}function Ol(r,n){return new Date(Date.parse(r)+n*1000).toISOString()}function Cn(r){let n=F(r,"lifecycle_state");if(n)return Xy(n),n;return r.ready===!0?"ready":"enrolled"}function Sn(r){return r}function F$(r){return{runner_provider:r.runnerProvider,execution_surface:r.executionSurface,model_id:r.modelId??null,model_tier:r.modelTier??"local_unknown",permission_profile_ref:r.permissionProfileRef??null,capability_source:r.capabilitySource??"config",runner_permission_profile_verified:!0,capability_tier_revalidated:!0,...r.previous?{previous:r.previous}:{},authority_boundary:{runner_binding_grants_authority:!1,runner_switch_grants_authority:!1}}}function Gy(r){return{lifecycle_schema:G$,lifecycle_state:"ready",workflow_id:Sn(r.projectId),ready:!0,ready_at:r.at,readiness_ttl_seconds:qy,readiness_expires_at:Ol(r.at,qy),lifecycle_checks:{remote_synced:!0,inbox_read:!0,workflow_binding_confirmed:!0,runner_binding_confirmed:!0,runner_permission_profile_verified:!0,capability_tier_revalidated:!0,stale_tasks_cleared:!0},...r.runnerBinding?{runner_binding:r.runnerBinding}:{},authority_granted:!1,lifecycle_authority_boundary:{lifecycle_grants_authority:!1,readiness_authorizes_work:!1,can_merge:!1,can_close:!1,can_grant:!1}}}function B4(r,n,t,e=new Date().toISOString()){let i=Cn(r);if(!Jy.has(i))throw Error(`seat lifecycle not routable: ${t} state=${i}; run etiquette roster ready ${t} after lifecycle preflight`);let _=F(r,"workflow_id");if(_&&_!==Sn(n))throw Error(`seat workflow mismatch: ${t} workflow_id=${_} current=${Sn(n)}`);let c=F(r,"readiness_expires_at");if(c){let o=Date.parse(e),$=Date.parse(c);if(!Number.isFinite(o)||!Number.isFinite($))throw Error(`seat lifecycle readiness timestamp unparseable: ${t}`);if(o>$)throw Error(`seat lifecycle readiness expired: ${t}; run etiquette roster ready ${t} after preflight`)}if(r.authority_granted===!0)throw Error(`seat lifecycle must not grant authority: ${t}`);let u=r.runner_binding===void 0?null:pr(r.runner_binding,`${t} runner_binding`);if(!u)return;if(F(u,"capability_source")==="agent_self_declared")throw Error(`seat runner capability is self-declared: ${t}; require local validation before pickup`);if(u.runner_switch_requires_preflight===!0)throw Error(`seat runner binding requires lifecycle preflight: ${t}`);if(u.runner_permission_profile_verified===!1)throw Error(`seat runner permission profile not verified: ${t}`);if(u.capability_tier_revalidated===!1)throw Error(`seat runner capability tier not revalidated: ${t}`)}async function En(r){try{return await ze(r,"utf-8")}catch(n){if(n.code==="ENOENT")return null;throw n}}async function Yr(r,n){let t=await En(r);return t?JSON.parse(t):n}async function jn(r,n){await _r(Wc(r),{recursive:!0}),await an(r,`${JSON.stringify(n,null,2)}
|
|
721
|
-
`)}var Ul=[".etiquette/state/",".etiquette/diagnostics/",".etiquette/notify/queues/",".etiquette/events/*.lock/"];async function hl(r,n){let e=M(r,".gitignore"),i=await En(e),_=new Set((i??"").split(/\r?\n/).map((o)=>o.trim()).filter(Boolean)),c=Ul.filter((o)=>!_.has(o));if(c.length===0){n.skipped.push(".gitignore");return}let u=i&&i.length>0?`${i.replace(/\s*$/,`
|
|
722
|
-
`)}
|
|
723
|
-
`:"";await an(e,[u,"# Etiquette transient machine state",...c,""].join(`
|
|
724
|
-
`)),n.generated.push(".gitignore")}async function Un(r,n,t,e,i){let _=M(r,n);if(or(_)&&!e){i.skipped.push(n);return}await _r(Wc(_),{recursive:!0}),await an(_,t.endsWith(`
|
|
725
|
-
`)?t:`${t}
|
|
726
|
-
`),i.generated.push(n)}var X4=[{target:"codex",display:"Codex",cliCommand:"codex",configDir:".codex",skillRef:".codex/skills/etiquette/SKILL.md",notesRef:".codex/etiquette-setup.md"},{target:"claude-code",display:"Claude Code",cliCommand:"claude",configDir:".claude",skillRef:".claude/skills/etiquette/SKILL.md",notesRef:".claude/etiquette-setup.md"},{target:"gemini",display:"Gemini CLI",cliCommand:"gemini",configDir:".gemini",skillRef:".gemini/skills/etiquette/SKILL.md",notesRef:".gemini/etiquette-setup.md"}];function Vy(r){return X$("which",[r],{encoding:"utf-8"}).status===0}function Rl(r){let n=X4.find((t)=>t.target===r);if(!n)throw Error(`unsupported setup target: ${r}`);return n}function Dl(r,n){let t=I(n,"target")??"auto";if(n.global===!0)throw Error("setup --global is not available in v0; use project-local setup only");if(t==="all")return{mode:t,targets:[...X4]};if(t==="auto"){let i=X4.filter((_)=>Vy(_.cliCommand)||or(M(r,_.configDir)));if(i.length===0)throw Error("setup --target auto found no supported agent host; rerun with --target codex, --target claude-code, --target gemini, or --target all");return{mode:t,targets:i}}let e=t.split(",").map((i)=>i.trim()).filter(Boolean).map((i)=>{if(!["codex","claude-code","gemini"].includes(i))throw Error("--target must be one of: auto, all, codex, claude-code, gemini");return Rl(i)});return{mode:t,targets:e}}function yl(r){return["---","name: etiquette-seat-pickup","description: Use when entering or resuming an Etiquette-managed project. Read the project head-start docs, orient with whereami, join the assigned seat, read the task envelope and runbook, respect allowed writes, run validation, and write a receipt before asking for promotion.","---","","# Etiquette Seat Pickup","",`This project installed Etiquette guidance for ${r.display}.`,"","## Start Here","","Before pickup, read the repo-local head-start surfaces when they exist:","","- `AGENTS.md`","- `docs/work/BOARD.md`","- `docs/work/runbooks/SESSION_PICKUP.md`","- `docs/work/manuals/SEAT_OPERATING_MANUAL.md`","- `docs/work/cookbooks/ADD_A_LANE.md`","","If the seat is returning from stale context, resume, runner/model/profile","swap, or workflow migration, re-orient with `etiquette whereami` before","pickup. For notification polling, use `etiquette notify poll --seat <seat>`;","it is cursor-based, read-only, and never grants authority.","","When a task gives you a seat id and task id, run:","","```sh","etiquette whereami --project . --seat <seat-id> --task <task-id>","etiquette join --project . --seat <seat-id>","etiquette pickup --project . --seat <seat-id> --task <task-id> --text","```","","If `pickup` prints an `--expect-project-id` command, use that exact command.","","## Operating Rules","","- Treat the task envelope as the write boundary.","- Read the runbook before editing.","- Hooks and readiness are evidence only; they never grant task authority.","- Use repo-local `.etiquette` and `docs/work` surfaces, not a global bus, unless explicitly routed.","- Run the task validation before returning.","- Write a receipt under `docs/work/receipts/` when the task asks for one.","- Stop if authority is unclear, validation cannot run, a secret appears, or writes exceed the envelope.","- Propulsion: never stop silently - state WORKING, GATED (present the decision card), or BLOCKED (name the unblock); end every return with `Next:`.","","## Authority Boundary","","This skill does not grant authority. It cannot merge, close, promote, push, sign, or approve work."].join(`
|
|
727
|
-
`)}function ql(r){return["# Etiquette Agent Host Setup","",`Target: ${r.display}`,"","This directory contains project-local guidance for using Etiquette in this repository.","","The installed guidance is intentionally advisory:","","- no lifecycle hooks are installed in v0;","- no global agent config is written;","- no project bootstrap is performed;","- no seat is joined;","- no task is picked up;","- no authority is granted.","","Head-start read order for fresh sessions:","","1. `AGENTS.md`","2. `docs/work/BOARD.md`","3. `docs/work/runbooks/SESSION_PICKUP.md`","4. `docs/work/manuals/SEAT_OPERATING_MANUAL.md`","5. `docs/work/cookbooks/ADD_A_LANE.md`","","Re-orient with `etiquette whereami` before pickup after stale context,","resume, runner/model/profile swaps, or workflow migration. Orientation is","evidence only; it does not authorize work.","","A live seat should still run:","","```sh","etiquette whereami --project . --seat <seat-id> --task <task-id>","etiquette join --project . --seat <seat-id>","etiquette pickup --project . --seat <seat-id> --task <task-id> --text","```"].join(`
|
|
728
|
-
`)}async function Tl(r){let n=br(r),t=r["dry-run"]===!0,e=r.eject===!0,i=r.force===!0,{mode:_,targets:c}=Dl(n,r),u={schema:"agent-host-setup.v0",project:n,target_mode:_,targets:[],dry_run:t,ejected:e,authority_boundary:{setup_installs_project_guidance_only:!0,can_install_hooks:!1,can_write_global_config:!1,can_bootstrap_project:!1,can_join_seat:!1,can_pickup_task:!1,can_grant:!1,can_merge:!1,can_close:!1,can_push:!1},next_step:e?"project-local Etiquette agent guidance removed; reinstall with etiquette setup --target <host>":"restart or refresh the agent session, then run etiquette whereami/join/pickup for the assigned seat and task"};for(let o of c){let $=Vy(o.cliCommand),g=or(M(n,o.configDir)),d=$||g,f=$?"cli":g?"project-config":"none",b=[],m=[],w=[],O=[{ref:o.skillRef,content:yl(o)},{ref:o.notesRef,content:ql(o)}];if(e)for(let q of O){let T=M(n,q.ref);if(or(T)){if(!t)await l4(T,{force:!0});w.push(q.ref)}else m.push(q.ref)}else for(let q of O){if(t){b.push(q.ref);continue}await Un(n,q.ref,q.content,i,{generated:b,skipped:m})}u.targets.push({target:o.target,display:o.display,detected:d,detected_via:f,config_dir:o.configDir,skill_ref:o.skillRef,notes_ref:o.notesRef,action:t?"dry-run":e?"ejected":b.length>0?"installed":"skipped",generated:b,skipped:m,removed:w})}if(r.json){console.log(JSON.stringify(u,null,2));return}console.log(["agent_host_setup:",` project: ${u.project}`,` target_mode: ${u.target_mode}`,` dry_run: ${String(u.dry_run)}`,` eject: ${String(u.ejected)}`," authority_boundary: project-local guidance only; no hooks, global config, bootstrap, join, pickup, push, merge, close, or grant","targets:",...u.targets.flatMap((o)=>[` - ${o.target} detected=${String(o.detected)}${o.detected?`(${o.detected_via})`:""} action=${o.action}`,` skill_ref: ${o.skill_ref}`,` notes_ref: ${o.notes_ref}`,` generated: ${o.generated.join(", ")||"none"}`,` skipped: ${o.skipped.join(", ")||"none"}`,` removed: ${o.removed.join(", ")||"none"}`]),`next_step: ${u.next_step}`].join(`
|
|
729
|
-
`))}async function hr(r){if(await _r(M(r,".etiquette","events"),{recursive:!0}),await _r(M(r,".etiquette","audit"),{recursive:!0}),await _r(M(r,".etiquette","diagnostics"),{recursive:!0}),await _r(M(r,".etiquette","notify","queues"),{recursive:!0}),await _r(M(r,".etiquette","notify","subscriptions"),{recursive:!0}),await _r(M(r,".etiquette","roster","enrollments"),{recursive:!0}),await _r(M(r,".etiquette","state"),{recursive:!0}),await _r(M(r,"docs","work","cookbooks"),{recursive:!0}),await _r(M(r,"docs","work","huddle-cards"),{recursive:!0}),await _r(M(r,"docs","work","ledger"),{recursive:!0}),await _r(M(r,"docs","work","manuals"),{recursive:!0}),await _r(M(r,"docs","work","onboarding"),{recursive:!0}),await _r(M(r,"docs","work","packets"),{recursive:!0}),await _r(M(r,"docs","work","receipts"),{recursive:!0}),await _r(M(r,"docs","work","runbooks"),{recursive:!0}),await _r(M(r,"docs","work","seat-cards"),{recursive:!0}),await _r(M(r,"docs","work","sessions"),{recursive:!0}),await _r(M(r,"docs","work","tasks"),{recursive:!0}),await _r(M(r,"docs","work","trash"),{recursive:!0}),await lr(r),!or($t(r)))await an($t(r),"");if(!or(Se(r)))await an(Se(r),`# Local Etiquette Ledger
|
|
730
|
-
|
|
731
|
-
`)}async function Oi(r){return await hr(r),(await ze($t(r),"utf-8")).split(`
|
|
732
|
-
`).map((t)=>t.trim()).filter(Boolean).map((t)=>JSON.parse(t))}async function Fy(r){let n=await En($t(r));if(!n)return[];return n.split(`
|
|
733
|
-
`).map((t)=>t.trim()).filter(Boolean).map((t)=>JSON.parse(t))}function Nl(r){return new Promise((n)=>{setTimeout(n,r)})}async function ly(r,n){let t=M(r,".etiquette","events","local.ndjson.lock");for(let e=0;e<200;e+=1)try{await _r(t);try{return await n()}finally{await l4(t,{recursive:!0,force:!0})}}catch(i){if(i.code!=="EEXIST")throw i;await Nl(10)}throw Error("timed out waiting for local event lock")}async function Ll(r,n){let t=[`type=${n.type}`,typeof n.lane==="string"?`lane=${n.lane}`:void 0,typeof n.from==="string"?`from=${n.from}`:void 0,typeof n.to==="string"?`to=${n.to}`:void 0,typeof n.next_owner==="string"?`next_owner=${n.next_owner}`:void 0].filter(Boolean).join(" ");await zc(Se(r),`- ${n.created_at} ${n.event_ref} ${t}
|
|
734
|
-
`)}async function vy(r,n,t,e){let _=(await Oi(r)).reduce((u,o)=>Math.max(u,o.seq),0)+1,c={schema:"local-event.v0",seq:_,event_ref:`local://event/${_}`,created_at:Ur(e),type:n,...t};return await zc($t(r),`${JSON.stringify(c)}
|
|
735
|
-
`),await Ll(r,c),c}async function Pr(r,n,t,e){return await hr(r),ly(r,()=>vy(r,n,t,e))}function zl(r){return["schema: seat-model-card.v0",`seat_id: ${r.seatId}`,`display_name: ${r.displayName}`,`operator_principal: ${r.operatorPrincipal}`,"execution_surface: local-etiquette",`seat_type: ${r.seatType}`,`model_ref: ${r.modelRef}`,"model_posture_ref: docs/work/onboarding/local-etiquette-canary.md","authority_boundary:"," can_authorize_work: false"," can_close_lane_without_grant: false"," can_merge_or_push_without_grant: false","allowed_work:",wi(r.allowedWork),"forbidden_work:",wi(r.forbiddenWork),""].join(`
|
|
736
|
-
`)}function Sl(r,n,t){let e=t.id.slice(n.taskPrefix.length+1),i=t.reviewFocus?["review_focus:",wi(t.reviewFocus)]:[];return["schema: task-envelope.v0",`task_id: ${t.id}`,`title: ${t.title}`,`mode: ${t.mode}`,`owner: ${n.lead.seatId}`,`assigned_to: ${t.assignedTo.seatId}`,"project_ref: .","startup_docs:"," - AGENTS.md"," - docs/work/BOARD.md"," - docs/work/onboarding/local-etiquette-canary.md",` - docs/work/huddle-cards/${t.id}.yaml`,"allowed_writes:",wi(Py(t)),"forbidden_sources:"," - external coordination repos unless explicitly routed"," - raw chat transcripts","validation:",wi(t.validation),"execution_strategy:",` strategy: ${wl(t)}`," strategy_policy: executor_selected"," authority_boundary:"," strategy_metadata_grants_authority: false"," can_authorize: false"," can_merge: false"," can_close: false"," can_grant: false"," can_sign: false","topology_constraints:"," reviewers_read_only: true"," child_agents_cannot_promote: true"," one_writer_per_worktree: true"," runner_swaps_require_lifecycle_preflight: true"," strategy_metadata_grants_authority: false"," topology_grants_authority: false"," can_promote: false"," can_merge: false"," can_close: false"," can_grant: false"," can_sign: false","expected_return:",` receipt: docs/work/receipts/${t.id}-${t.assignedTo.seatId}.md`,...i,"stop_conditions:",t.mode==="product-implementation"?" - edit outside allowed_writes required":" - product edit requested"," - authority-bearing action requested","evidence_sink:",` session: session-${t.id}`,` runbook: docs/work/sessions/session-${t.id}/RUNBOOK.md`,"authority_boundary:"," can_authorize: false"," can_merge: false"," can_close: false"," can_write_global_ledger: false",`# task_index: ${e}`,""].join(`
|
|
737
|
-
`)}function Wl(r,n,t){return["schema_version: huddle-card.v1",`repo: ${Wn(r.split("/").pop()??"repo")}`,"repo_path: .",`lane: ${t.id}`,`task_id: ${t.id}`,"status: open",`mode: ${t.mode}`,"startup_docs:"," - AGENTS.md"," - docs/work/BOARD.md"," - docs/work/onboarding/local-etiquette-canary.md",` - docs/work/tasks/${t.id}.yaml`,"allowed_writes:",wi(Py(t)),"forbidden_sources:"," - external coordination repos unless explicitly routed"," - raw chat transcripts","validation:",wi(t.validation),`current_owner: ${t.assignedTo.seatId}`,`next_owner: ${t.assignedTo.seatId}`,"expires_or_refresh_after: 2099-01-01T00:00:00Z",`task_packet: docs/work/tasks/${t.id}.yaml`,`evidence_sink: docs/work/sessions/session-${t.id}/RUNBOOK.md`,""].join(`
|
|
738
|
-
`)}function El(r,n){return`${JSON.stringify({schema:"workspace-principal.v0",workspace:r.split("/").pop()??"workspace",principal_seat:n.lead.seatId,operator_principal:n.lead.operatorPrincipal,execution_surface:"local-etiquette",bootstrap_profile:n.profile,authority_model:{scope:"repo-local",source_of_truth:"this repository's .etiquette and docs/work surfaces",global_bus_authority:!1,can_delegate_tasks:!0,delegation_grants_merge:!1,delegation_grants_close:!1,delegation_grants_push:!1},notes:[`${n.lead.seatId} is the local orchestration lead.`,`${n.reviewers.map((t)=>t.seatId).join(", ")} review or pressure-test the lead's work.`,`${n.bootstrapSeat.seatId} is bootstrap provenance only after handoff.`]},null,2)}
|
|
739
|
-
`}function jl(r){return["# Local Etiquette Onboarding","","## Local Lead","",`\`${r.lead.seatId}\` is the repo-local orchestration lead for this workspace.`,...r.reviewers.map((n)=>`\`${n.seatId}\` is a review/pressure-test seat.`),`\`${r.bootstrapSeat.seatId}\` is bootstrap provenance only after lead handoff.`,"","## Boundaries","","- Use this repository's `.etiquette` and `docs/work/*` only.","- Do not use an external ledger for routine task pickup, execution notes, diagnostics, or receipts.","- Session runbooks are the bounded evidence sink for task-level detail.","- The task card controls allowed writes.","- No seat may merge, push, close, promote, or grant authority from readiness alone.",""].join(`
|
|
740
|
-
`)}function Jl(r){return["# AGENTS.md","","## Local Etiquette Workspace","",`- Principal seat: \`${r.lead.seatId}\``,`- Review seats: ${r.reviewers.map((n)=>`\`${n.seatId}\``).join(", ")}`,`- Bootstrap provenance seat: \`${r.bootstrapSeat.seatId}\``,"- Board: `docs/work/BOARD.md`","- Local event log: `.etiquette/events/local.ndjson`","","## Start Every Session","","1. Run `etiquette whereami --project . --seat <seat> --task <task>`.","2. Read `docs/work/BOARD.md`.","3. Read `docs/work/runbooks/SESSION_PICKUP.md`.","4. Read `docs/work/manuals/SEAT_OPERATING_MANUAL.md`.","5. Read `docs/work/cookbooks/ADD_A_LANE.md` when adding or routing work.","6. Re-orient with `etiquette whereami --project . --seat <seat> --task <task>` after stale context, resume, runner/model/profile swaps, or workflow migration.","7. Run `etiquette join --project . --seat <seat>`.","8. Run the generated pickup command with `--expect-project-id <project_id>`.","","The task envelope and session runbook are the active work contract.","","## Propulsion","","- Silence is never neutral. At every stop, state which you are: WORKING (progress note), GATED (present the decision card and a minted authority phrase - before being asked), or BLOCKED (blocker, smallest unblock, owner).",'- End every return with `Next:` - the recommended next lane, what you need, who acts. If the operator must ask "what now?", propulsion already failed.',"- Genesis mode: when the ledger is empty or the operator is new, lean hardest forward - propose the first lanes unprompted, teach the loop while using it, pre-stage the first review moment.","- Daring inside the envelope: for reversible in-envelope work, act and show receipts; bring one concrete proposal, not an option menu.",'- Propulsion carries you TO gates fully prepared - never through them. "continue"/"proceed" are scheduling nudges; gated acts need their minted phrase.',"","## Boundary","","- Use this repository's `.etiquette` and `docs/work/*`.","- Do not use an external ledger for routine task execution.","- Do not merge, push, close, promote, or grant authority from readiness alone.",""].join(`
|
|
741
|
-
`)}function Al(r){return["# Local Etiquette Board","","## Local Lead","",`- \`${r.lead.seatId}\``,` - Operator principal: \`${r.lead.operatorPrincipal}\``," - Scope: repo-local orchestration."," - Principal record: `docs/work/workspace-principal.v0.json`",...r.reviewers.flatMap((n)=>[`- \`${n.seatId}\``,` - Operator principal: \`${n.operatorPrincipal}\``,` - Role: ${n.allowedWork[1]??"review/pressure-test"}.`]),`- \`${r.bootstrapSeat.seatId}\``,` - Operator principal: \`${r.bootstrapSeat.operatorPrincipal}\``," - Role: bootstrap provenance only after handoff.","","## Active Tasks","",...r.tasks.map((n)=>`- \`${n.id}\`: ${n.title} for \`${n.assignedTo.seatId}\``),"","## Boundary","","- Repo-local read model only.","- No external-ledger traffic for routine execution.","- No merge, push, close, promote, or grants from readiness.",""].join(`
|
|
742
|
-
`)}function Ml(r){return["# Seat Operating Manual","","## Roles","",`- \`${r.lead.seatId}\`: routes local work, updates board/task evidence, and performs assigned implementation.`,...r.reviewers.map((n)=>`- \`${n.seatId}\`: reviews and challenges the lead's returns.`),`- \`${r.bootstrapSeat.seatId}\`: records bootstrap provenance only after handoff.`,"","## Authority","","Readiness is not authority. These seats cannot merge, push, close, promote, or","grant authority unless a later explicit decision says so.","","## Lifecycle Preflight","","Re-orient with `etiquette whereami` before pickup after stale context,","resume, runner/model/profile swaps, or workflow migration. Orientation is","readiness evidence only; the task envelope remains the work authority.","","## Evidence","","Use local sessions for detail:","",...r.tasks.map((n)=>`- \`docs/work/sessions/session-${n.id}/RUNBOOK.md\``),"","Use local receipts for completion summaries:","",...r.tasks.map((n)=>`- \`docs/work/receipts/${n.id}-${n.assignedTo.seatId}.md\``),""].join(`
|
|
743
|
-
`)}function Pl(){return["# Working Discipline","","Judgment rules for any seat working this repo. Mechanics say what to do;","discipline says when to distrust yourself. Read once at pickup; re-read the","relevant section at the moment it names.","","## Before Claiming Anything","","- Verify at claim time: re-read the source at the moment you assert it,"," never from memory of an earlier read.","- Check the live tip, not your notes: board notes lag integrations.","- When another seat or a human holds the ground truth, ask \u2014 do not"," solo-reconstruct their state.","","## Before Writing","","- Read the machine fields, not the title: the envelope's mode and allowed"," writes decide what a task may do; prose is not authority.","- Search the exact target surface before classifying work as new \u2014 most",' "add X" tasks are "finish the X that half-exists."',"- One writer per canonical mutation. Design in parallel; mutate single-file.","","## While Working","","- Technical register on the record: schemas, fields, commands, refs."," Metaphor stays in chat; the record is for the next reader.","- No person or vendor names in artifacts. Attribute external material at"," the moment of incorporation, with license.","- One meaningful update per note. Runbook notes, not transcript dumps.","","## Before Returning","","- Receipt first: outcome, changed files, validation command and result,"," blockers, next owner. No raw logs \u2014 cite paths to them.",'- A red validation is reported red; "done" without proof is a defect.',"- If your change altered a source shape, refresh its recorded evidence in"," the same commit.","- Run `git diff --check HEAD~..HEAD` after committing \u2014 pre-commit checks"," miss freshly added files.","","## At Authority Edges","","- Stop when authority is unclear, validation cannot run, writes would"," exceed the envelope, a secret appears, or the session is unbounded.","- Never claim work was authorized without decision language from the"," authority holder. Enthusiasm is not routing.","- Memory proposes. Ledgers authorize. Receipts prove. Audit accounts.","","## When Blocked","","- Use `etiquette doctor` and the diagnostics verbs before hand-debugging;"," walk the recovery path from the user's seat before declaring a state"," recoverable.","- Escalate with a concrete blocker, not a vibe. Quiet is not a finding.","","## Growing Local Discipline","","When a correction lands, record it as one small note (what, why, how to","apply), and re-read it at the moment you would otherwise repeat the","mistake. Corrections never recorded are corrections paid for twice.",""].join(`
|
|
744
|
-
`)}function kl(r){return["# Session Pickup Runbook","","## Before Pickup","","1. Read `AGENTS.md` and `docs/work/BOARD.md`.","2. Read `docs/work/manuals/SEAT_OPERATING_MANUAL.md`.","3. Read `docs/work/runbooks/WORKING_DISCIPLINE.md` \u2014 judgment rules for claiming, writing, and returning.","4. Re-orient with `etiquette whereami` first after stale context, resume, runner/model/profile swaps, or workflow migration.","5. Treat hooks and readiness as evidence only, not authority.","",...r.tasks.flatMap((n)=>[`## ${n.assignedTo.displayName}`,"","```bash",'ETQ_BIN="${ETQ_BIN:-etiquette}"',`"$ETQ_BIN" notify poll --project . --seat ${n.assignedTo.seatId} --text`,`"$ETQ_BIN" console board --project . --seat ${n.assignedTo.seatId} --text`,`"$ETQ_BIN" notify feed --project . --seat ${n.assignedTo.seatId} --text`,`"$ETQ_BIN" bus inbox --addressee ${n.assignedTo.seatId} --project . --text`,`"$ETQ_BIN" session note --project . --session session-${n.id} --section note --message "Started pickup."`,"```","",`Work from \`docs/work/tasks/${n.id}.yaml\`.`,`Write task detail to \`docs/work/sessions/session-${n.id}/RUNBOOK.md\`.`,n.mode==="read-only-audit"?"Do not edit product files unless a later task envelope allows it.":"Stay inside the task envelope allowed writes.","","After writing the receipt, post the local return so the next seat can see it:","","```bash",'ETQ_BIN="${ETQ_BIN:-etiquette}"',`"$ETQ_BIN" post --project . --role ${ml(n)} --lane ${n.id} --from ${n.assignedTo.seatId} --to ${zy(r,n)} --emit`,`"$ETQ_BIN" notify feed --project . --seat ${zy(r,n)} --text`,"```",""])].join(`
|
|
745
|
-
`)}function Xl(r){return["# Add A Local Lane","","1. Create a task envelope under `docs/work/tasks/<task-id>.yaml`.","2. Create a huddle card under `docs/work/huddle-cards/<task-id>.yaml`.","3. Create a bounded session:","","```bash",'ETQ_BIN="${ETQ_BIN:-etiquette}"',`"$ETQ_BIN" session create --project . --seat ${r.lead.seatId} --task <task-id> --session-id session-<task-id> --operator ${r.lead.operatorPrincipal} --owner ${r.lead.seatId}`,"```","","4. Subscribe the target seat:","","```bash",'ETQ_BIN="${ETQ_BIN:-etiquette}"','"$ETQ_BIN" notify subscribe --project . --seat <seat-id> --lane <task-id> --roles task-bundle,implementation-return',"```","","5. Poll the local wake queue:","","```bash",'ETQ_BIN="${ETQ_BIN:-etiquette}"','"$ETQ_BIN" notify poll --project . --seat <seat-id> --text',"```","","6. Post the local packet:","","```bash",'ETQ_BIN="${ETQ_BIN:-etiquette}"',`"$ETQ_BIN" post --project . --role task-bundle --lane <task-id> --from ${r.lead.seatId} --to <seat-id> --mode product-implementation --next-owner <seat-id> --emit`,"```","","Keep routine execution in this repo. Do not write an external ledger for local task","pickup, retries, diagnostics, or runbook detail.",""].join(`
|
|
746
|
-
`)}async function Q4(r){let n=await ze(r,"utf-8");if(r.endsWith(".json"))return JSON.parse(n);return p(n)}function Gl(r){if(r.schema!=="seat-model-card.v0")throw Error("seat card schema must be seat-model-card.v0");let n=F(r,"seat_id");if(!n)throw Error("seat_id is required");let t=pr(r.authority_boundary,"authority_boundary");for(let e of ol)if(Tc(t,e)!==!1)throw Error(`authority_boundary.${e} must be false`);return n}async function Nc(r){return Gl(pr(await Q4(r),"seat card"))}async function Yy(r){try{let t=(await Ee(M(r,".etiquette","roster","enrollments"))).filter((e)=>e.endsWith(".json")).map((e)=>e.slice(0,-5)).sort();return t.length?` (enrolled seats: ${t.join(", ")})`:""}catch{return""}}async function Le(r,n){return await hr(r),M(r,".etiquette","roster","enrollments",`${Wn(n)}.json`)}async function bi(r,n){return await hr(r),M(r,".etiquette","notify","subscriptions",`${Wn(n)}.json`)}async function G4(r,n){return await hr(r),M(r,".etiquette","notify","queues",`${Wn(n)}.json`)}function Ii(r,n,t){if(r===void 0||r===!1)return t;if(r===!0)throw Error(`--${n} must be an integer`);let e=Number.parseInt(r,10);if(!Number.isFinite(e)||e<0)throw Error(`--${n} must be a non-negative integer`);return e}async function Sc(r){if(!or(r))return[];return(await Ee(r,{withFileTypes:!0})).filter((t)=>t.isFile()&&t.name.endsWith(".json")).map((t)=>M(r,t.name))}function l$(r){if(r.length===0)return"no local events";return r.map((n)=>{return[`${n.event_ref}`,n.type,typeof n.lane==="string"?`lane=${n.lane}`:void 0,typeof n.from==="string"?`from=${n.from}`:void 0,typeof n.to==="string"?`to=${n.to}`:void 0,typeof n.next_owner==="string"?`next_owner=${n.next_owner}`:void 0].filter(Boolean).join(" ")}).join(`
|
|
747
|
-
`)}function Hy(r){let n=I(r,"format")??(r.json===!0?"json":"text");if(n!=="text"&&n!=="json"&&n!=="markdown")throw Error("--format must be one of: text, json, markdown");return n}function Vl(r){let n=I(r,"kind")??"all";if(n!=="all"&&n!=="events"&&n!=="packets")throw Error("--kind must be one of: all, events, packets");return n}function Fl(r){let n=I(r,"scope")??"project";if(n!=="project"&&n!=="seat"&&n!=="lane"&&n!=="principal")throw Error("--scope must be one of: project, seat, lane, principal");return n}function ll(r,n){let t=r[n];return t===!0||t==="true"||t==="1"||t==="yes"}function vl(r){if(ll(r,"remote-runner"))return"remote-runner-hard-gate";let n=I(r,"tier")??"local-advisory";if(n!=="local-advisory"&&n!=="remote-runner-hard-gate")throw Error("--tier must be one of: local-advisory, remote-runner-hard-gate");return n}function By(r){let n=I(r,"role")??"any";if(n==="any")return["implementation-return","review-return"];if(n==="implementation-return"||n==="review-return")return[n];throw Error("--role must be one of: any, implementation-return, review-return")}function Yl(r){return[`return_check: ${r.verdict}`,`task: ${r.task}`,`seat: ${r.seat}`,r.seat_alias?`seat_alias: ${r.seat_alias} -> ${r.seat}`:null,`expected_roles: ${r.expected_roles.join(",")}`,r.expected_receipt?`expected_receipt: ${r.expected_receipt} (present: ${String(r.receipt_present)})`:null,`enforcement_tier: ${r.enforcement_tier}`,`completion_gate_hard: ${String(r.completion_gate_hard)}`,`matched_return_packets: ${r.matched_return_packets.length}`,`posted_return_packets: ${r.posted_return_packets.length}`,`latest_event_ref: ${r.latest_event_ref}`,`event_log_hash: ${r.event_log_hash}`,`advisory: ${r.advisory}`,"authority_boundary: read-only check; cannot authorize, execute, write, post returns, merge, close, grant, or write global ledger"].filter((n)=>n!==null).join(`
|
|
748
|
-
`)}function Qy(r,n,t){if(r.to===n)return"direct";if(r.next_owner===n)return"next_owner";if(typeof r.lane==="string"&&t.has(r.lane))return"subscription";return null}function Hl(r,n){return{seq:r.seq,event_ref:r.event_ref,created_at:r.created_at,type:r.type,lane:typeof r.lane==="string"?r.lane:null,role:typeof r.role==="string"?r.role:null,to:typeof r.to==="string"?r.to:null,next_owner:typeof r.next_owner==="string"?r.next_owner:null,packet_ref:typeof r.packet_ref==="string"?r.packet_ref:null,requires_ack:r.requires_ack===!0,match:n}}async function Y$(r,n,t){X(n,"--seat");let e=await bi(r,n),i=await Yr(e,{subscriptions:[]}),_=new Set(i.subscriptions.map((g)=>F(g,"lane")).filter((g)=>Boolean(g))),c=Ii(t["after-seq"],"after-seq",0),u=Ii(t.limit,"limit",50),o=await Oi(r),$=o.filter((g)=>g.seq>c).map((g)=>{let d=Qy(g,n,_);return d?Hl(g,d):null}).filter((g)=>g!==null).slice(-u);return{schema:"remote-wake-queue.v0",seat:n,updated_at:Ur(t),source:{event_log_ref:".etiquette/events/local.ndjson",after_seq:c,max_seq_seen:o.reduce((g,d)=>Math.max(g,d.seq),0),subscriptions_ref:cr(r,e)},transport:v4(),payload_boundary:Y4(),items:$,authority_boundary:H4()}}async function Bl(r,n){let t=new Set;if(typeof n.to==="string")t.add(n.to);if(typeof n.next_owner==="string")t.add(n.next_owner);let e=await Sc(M(r,".etiquette","notify","subscriptions"));for(let i of e){let _=await Yr(i,{subscriptions:[]}),c=typeof _.seat==="string"?_.seat:null;if(!c)continue;let u=new Set((_.subscriptions??[]).map((o)=>F(o,"lane")).filter((o)=>Boolean(o)));if(Qy(n,c,u))t.add(c)}return[...t].sort()}async function H$(r,n,t){for(let e of await Bl(r,n)){let i=await Y$(r,e,t);await jn(await G4(r,e),i)}}function V4(r){let n=r.items.length===0?["no queued wake items"]:r.items.map((t)=>[t.event_ref,t.type,t.lane?`lane=${t.lane}`:void 0,t.role?`role=${t.role}`:void 0,t.to?`to=${t.to}`:void 0,t.next_owner?`next_owner=${t.next_owner}`:void 0,`match=${t.match}`,t.requires_ack?"requires_ack=true":void 0,t.packet_ref?`packet_ref=${t.packet_ref}`:void 0].filter(Boolean).join(" "));return[`wake_queue: ${r.seat}`,`items: ${r.items.length}`,`after_seq: ${r.source.after_seq}`,`max_seq_seen: ${r.source.max_seq_seen}`,`transport: ${r.transport.mode}`,`pointers_only: ${String(r.payload_boundary.pointers_only)}`,`queue_is_authority: ${String(r.authority_boundary.queue_is_authority)}`,...n].join(`
|
|
749
|
-
`)}function Ql(r){if(!r.startsWith("sha256="))throw Error("--signature-256 must start with sha256=");let t=r.slice(7);if(!/^[0-9a-fA-F]{64}$/.test(t))throw Error("--signature-256 must be a sha256 hex digest");return Buffer.from(t,"hex")}function Kl(r,n,t){let e=tl("sha256",t).update(r).digest(),i=Ql(n);if(i.length!==e.length||!il(i,e))throw Error("github webhook signature verification failed")}function Sy(r,n){if(!r)return null;if(!/^[0-9a-f]{40}$/i.test(r))throw Error(`GitHub webhook ${n} must be a full commit SHA`);return r}function al(r){if(r.schema==="github-webhook-ping.v0")return[`github_webhook_ping: ${r.repository.full_name}`,`event: ${r.event}`,`delivery_id: ${r.delivery_id}`,`signature_verified: ${String(r.transport.signature_verified)}`,`pointers_only: ${String(r.payload_boundary.pointers_only)}`,`notification_is_authority: ${String(r.authority_boundary.notification_is_authority)}`,`next_action: ${r.next_action}`].join(`
|
|
750
|
-
`);return[`github_webhook_wake: ${r.repository.full_name}`,`event: ${r.event}`,`delivery_id: ${r.delivery_id}`,`ref: ${r.ref}`,`after: ${r.after}`,r.before?`before: ${r.before}`:null,`signature_verified: ${String(r.transport.signature_verified)}`,`pointers_only: ${String(r.payload_boundary.pointers_only)}`,`notification_is_authority: ${String(r.authority_boundary.notification_is_authority)}`,`next_action: ${r.next_action}`].filter((n)=>n!==null).join(`
|
|
751
|
-
`)}async function Zl(r){if((I(r,"provider")??"github")!=="github")throw Error("--provider must be github");let t=I(r,"event")??"push";if(t!=="push"&&t!=="ping")throw Error("W1 supports only GitHub push and ping webhook events");let e=D(r,"delivery");X(e,"--delivery");let i=D(r,"signature-256"),_=I(r,"secret-env")??"ETIQUETTE_GITHUB_WEBHOOK_SECRET";X(_,"--secret-env");let c=process.env[_];if(!c)throw Error(`missing GitHub webhook secret in ${_}`);let u=Zn(D(r,"payload")),o=await ze(u);Kl(o,i,c);let $=pr(JSON.parse(o.toString("utf-8")),"GitHub webhook payload"),g=pr($.repository,"GitHub webhook repository"),d=$.sender?pr($.sender,"GitHub webhook sender"):null,f=F(g,"full_name");if(!f)throw Error("GitHub webhook repository.full_name is required");let b={payload_ref:`github://delivery/${e}`,payload_sha256:nl("sha256").update(o).digest("hex"),signature_header:"X-Hub-Signature-256",delivery_header:"X-GitHub-Delivery",event_header:"X-GitHub-Event"};if(t==="ping")return{schema:"github-webhook-ping.v0",provider:"github",event:t,delivery_id:e,received_at:Ur(r),repository:{full_name:f,html_url:F(g,"html_url")??null,default_branch:F(g,"default_branch")??null},sender:d?F(d,"login")??null:null,hook_id:$.hook_id===void 0||$.hook_id===null?null:String($.hook_id),source:b,transport:cl(),payload_boundary:Ty(),authority_boundary:Ny(),next_action:"receiver_acknowledged_github_ping"};let m=$.pusher?pr($.pusher,"GitHub webhook pusher"):null,w=F($,"ref"),O=Sy(F($,"after"),"after");if(!w)throw Error("GitHub webhook ref is required");if(!O)throw Error("GitHub webhook after is required");return{schema:"github-webhook-wake.v0",provider:"github",event:"push",delivery_id:e,received_at:Ur(r),repository:{full_name:f,html_url:F(g,"html_url")??null,default_branch:F(g,"default_branch")??null},ref:w,before:Sy(F($,"before"),"before"),after:O,compare_url:F($,"compare")??null,pusher:m?F(m,"name")??null:null,sender:d?F(d,"login")??null:null,source:b,transport:Ay(),payload_boundary:Ty(),authority_boundary:Ny(),next_action:"receiver_fetch_and_verify_git_ref"}}function mi(r){return M(r,"docs","work","trash","TRASH.ndjson")}function v$(r){return r.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}function Cl(r,n){if(n.endsWith("/**"))return r.startsWith(n.slice(0,-3));return r===n}function Lc(r,n,t){let e=t.map(v$).join("|");return new RegExp(`(?:^|\\n)\\s*${v$(n)}\\s*:\\s*(${e})\\s*(?:\\n|$)`,"i").test(r)}function Ky(r,n){return new RegExp(`(?:^|\\n)\\s*${v$(n)}\\s*:\\s*true\\s*(?:\\n|$)`,"i").test(r)}function xl(r){if(!["superseded","rejected","closed","duplicate"].includes(r))throw Error("--reason must be one of: superseded, rejected, closed, duplicate")}function pl(r,n){let e=[".etiquette/events/**","docs/work/ledger/**","docs/work/receipts/**","docs/work/trash/**","scripts/release-sign.sh","scripts/release-checksum.sh"].find((i)=>Cl(r,i));if(e)return`protected path pattern: ${e}`;if(Ky(n,"append_only"))return"content marker append_only:true";if(Lc(n,"content_class",["append-only","canonical-evidence","decision","evidence","ledger","release-receipt","trusted-checksum"]))return"protected content_class marker";if(Lc(n,"role",["closeout","decision","review-return","implementation-return"]))return"protected role marker";return null}function sl(r,n,t){if(Ky(n,"retirable"))return"explicit-retirable-marker";if(Lc(n,"content_class",["draft","rejected-draft","resolved-task-envelope","superseded-proposal"]))return"content-class-allowlist";if(r.startsWith("docs/work/drafts/")&&["rejected","duplicate"].includes(t))return"draft-path-allowlist";if(r.startsWith("docs/work/proposals/")&&["superseded","rejected"].includes(t)&&Lc(n,"status",["superseded","rejected"]))return"proposal-status-allowlist";if(r.startsWith("docs/work/tasks/")&&t==="closed"&&Lc(n,"status",["closed","resolved"]))return"resolved-task-envelope-allowlist";return null}function r8(r,n){let t=v$(n),e=new RegExp(`(?:^|\\n)\\s*supersedes\\s*:\\s*["']?${t}["']?\\s*(?:\\n|$)`),i=new RegExp(`(?:^|\\n)\\s*-\\s*["']?${t}["']?\\s*(?:\\n|$)`);return e.test(r)||/(?:^|\n)\s*supersedes\s*:\s*\n/.test(r)&&i.test(r)}function cn(r,n,t=!1){let e=X$("git",n,{cwd:r,encoding:"utf-8"}),i=e.status??1,_={status:i,stdout:e.stdout??"",stderr:e.stderr??""};if(!t&&i!==0)throw Error(_.stderr.trim()||_.stdout.trim()||`git ${n.join(" ")} failed`);return _}function n8(r,n){if(cn(r,["ls-files","--error-unmatch","--",n]),cn(r,["status","--porcelain","--",n]).stdout.trim().length>0)throw Error(`retire refuses dirty or staged path: ${n}`)}function k4(r,n){if(cn(r,["ls-files","--error-unmatch","--",n],!0).status!==0)return;if(cn(r,["status","--porcelain","--",n]).stdout.trim().length>0)throw Error(`retire refuses dirty or staged evidence surface: ${n}`)}function t8(r){return cn(r,["rev-parse","HEAD"]).stdout.trim()}async function k$(r){let n=await En(mi(r));if(!n)return[];return n.split(`
|
|
752
|
-
`).map((t)=>t.trim()).filter(Boolean).map((t)=>JSON.parse(t))}async function ay(r,n){let t=mi(r);await _r(Wc(t),{recursive:!0});let e=new Set,i=n.filter((_)=>{if(e.has(_.trash_id))return!1;return e.add(_.trash_id),!0});await an(t,i.map((_)=>JSON.stringify(_)).join(`
|
|
753
|
-
`)+(i.length>0?`
|
|
754
|
-
`:""))}function i8(r,n){if(n.length===0)return"trash: empty";return[`trash: ${n.length}`,...n.map((t)=>`${t.trash_id} ${t.reason} ${t.path} restore_hint=${t.restore_hint}`),`trash_index_ref: ${cr(r,mi(r))}`,"trash_index_is_authority: false"].join(`
|
|
755
|
-
`)}async function Zy(r,n){let t=br(n);await hr(t);let e=cr(t,Zn(t,r)),i=D(n,"evidence-ref"),_=D(n,"removed-by"),c=D(n,"reason");xl(c),X(_,"--removed-by"),H(i,"--evidence-ref"),await ly(t,async()=>{let u=M(t,e);if(!or(u))throw Error(`retire target does not exist: ${e}`);let o=await ze(u,"utf-8"),$=pl(e,o);if($)throw Error(`retire refused protected evidence (${$}): ${e}`);let g=sl(e,o,c);if(!g)throw Error(`retire refused; path is not in the retirable allowlist: ${e}`);let d=null;if(c==="superseded"){let j=D(n,"superseded-by");d=cr(t,Zn(t,j));let J=await ze(M(t,d),"utf-8");if(!r8(J,e))throw Error(`--superseded-by must declare supersedes: ${e}`)}n8(t,e),k4(t,".etiquette/events/local.ndjson"),k4(t,"docs/work/ledger/LEDGER.md"),k4(t,"docs/work/trash/TRASH.ndjson");let f=t8(t);cn(t,["show",`${f}:${e}`]);let b=Ur(n),m={schema:"trash-index-entry.v0",trash_id:`trash-${b.replace(/[^0-9TZ]/g,"")}-${Wn(e)}`,path:e,removed_at:b,removed_by:_,reason:c,retirable_class:g,superseded_by:d,evidence_ref:i,last_commit:f,restore_hint:`git show ${f}:${e}`,authority_boundary:{trash_index_is_authority:!1,can_close:!1,can_merge:!1,can_grant:!1}},w=mi(t),O=await En(w),q=await En($t(t)),T=await En(Se(t)),R=await k$(t);cn(t,["rm","--",e]);try{await ay(t,[...R,m]);let j=await vy(t,"trash_retired",{trash_entry:m,authority_boundary:{retirement_authorizes_work:!1,can_close:!1,can_merge:!1,can_grant:!1}},n);if(cn(t,["add","--",cr(t,w),".etiquette/events/local.ndjson","docs/work/ledger/LEDGER.md"]),n.json){console.log(JSON.stringify({...m,event_ref:j.event_ref,trash_index_ref:cr(t,w)},null,2));return}console.log([`trash_retired: ${m.trash_id}`,`path: ${m.path}`,`event: ${j.event_ref}`,`trash_index_ref: ${cr(t,w)}`,"trash_index_is_authority: false"].join(`
|
|
756
|
-
`))}catch(j){if(O===null)await l4(w,{force:!0});else await an(w,O);if(q!==null)await an($t(t),q);if(T!==null)await an(Se(t),T);throw cn(t,["checkout","--",e],!0),j}})}async function e8(r,n){let t=r[1],e=br(n);if(await hr(e),t==="retire"){await Zy($r(r,2,"path"),n);return}if(t==="list"){let i=await k$(e);console.log(n.json?JSON.stringify({schema:"trash-index.v0",entries:i,trash_index_ref:cr(e,mi(e))},null,2):i8(e,i));return}if(t==="show"){let i=$r(r,2,"trash-id"),_=(await k$(e)).find((c)=>c.trash_id===i);if(!_)throw Error(`trash entry not found: ${i}`);console.log(n.json?JSON.stringify(_,null,2):[`trash_id: ${_.trash_id}`,`path: ${_.path}`,`reason: ${_.reason}`,`superseded_by: ${_.superseded_by??"none"}`,`restore_hint: ${_.restore_hint}`,"trash_index_is_authority: false"].join(`
|
|
757
|
-
`));return}if(t==="restore"){let i=$r(r,2,"trash-id"),c=(await k$(e)).find((d)=>d.trash_id===i);if(!c)throw Error(`trash entry not found: ${i}`);let u=I(n,"to")?cr(e,Zn(e,I(n,"to"))):c.path,o=M(e,u);if(or(o))throw Error(`restore refuses to overwrite existing path: ${u}`);let $=cn(e,["show",`${c.last_commit}:${c.path}`]).stdout;await _r(Wc(o),{recursive:!0}),await an(o,$);let g=await Pr(e,"trash_restored",{trash_id:c.trash_id,restored_path:u,source_path:c.path,restore_is_content_only:!0,authority_boundary:{restore_authorizes_work:!1,can_close:!1,can_merge:!1,can_grant:!1}},n);console.log(n.json?JSON.stringify({trash_id:c.trash_id,restored_path:u,event_ref:g.event_ref,restore_is_content_only:!0},null,2):[`trash_restored: ${c.trash_id}`,`path: ${u}`,`event: ${g.event_ref}`,"restore_is_content_only: true"].join(`
|
|
758
|
-
`));return}if(t==="rebuild"){let _=(await Oi(e)).map((c)=>pr(c,"local event").trash_entry).filter((c)=>typeof c==="object"&&c!==null&&c.schema==="trash-index-entry.v0");await ay(e,_),console.log(n.json?JSON.stringify({schema:"trash-rebuild-result.v0",rebuilt_entries:_.length,trash_index_ref:cr(e,mi(e))},null,2):[`trash_rebuild: ok entries=${_.length}`,`trash_index_ref: ${cr(e,mi(e))}`].join(`
|
|
759
|
-
`));return}throw Error("trash verb must be one of: retire, list, show, restore, rebuild")}async function _8(r){let n=br(r),t=await lr(n,I(r,"at"));await hr(n);let e=await Pr(n,"workspace_initialized",{project_ref:".",project_id:t.project_id,authority_boundary:{can_authorize_work:!1,can_merge:!1,can_close:!1}},r);console.log(`initialized: ${n}`),console.log(`project_id: ${t.project_id}`),console.log(`event: ${e.event_ref}`)}async function c8(r,n,t,e){let i=`docs/work/seat-cards/${n.seatId}.yaml`,_=M(r,i),c=await Nc(_);if(c!==n.seatId)throw Error(`seat card seat_id ${c} does not match ${n.seatId}`);let u={schema:"seat-enrollment.v0",seat_id:n.seatId,card_ref:i,operator_principal:n.operatorPrincipal,execution_seat:"local-etiquette",as_role:n.asRole,authority_scope:n.authorityScope,mode:n.mode,orientation_ref:n.authorityScope==="bootstrap-provenance"?"docs/work/workspace-principal.v0.json":"docs/work/onboarding/local-etiquette-canary.md",ready:!1,lifecycle_schema:G$,lifecycle_state:"enrolled",workflow_id:Sn(t),runner_binding:F$({runnerProvider:n.modelRef,executionSurface:"local-etiquette",modelId:n.modelId,modelTier:n.modelTier,capabilitySource:"config"}),authority_granted:!1,lifecycle_authority_boundary:{lifecycle_grants_authority:!1,readiness_authorizes_work:!1,can_merge:!1,can_close:!1,can_grant:!1},enrolled_at:Ur(e),authority_boundary:{enrollment_authorizes_work:!1,can_merge:!1,can_close:!1}};return await jn(await Le(r,n.seatId),u),Pr(r,"seat_enrolled",u,e)}async function u8(r,n,t,e){let i=await Le(r,n.seatId),_=await Yr(i,null);if(!_)throw Error(`seat is not enrolled: ${n.seatId}${await Yy(r)}`);let c=n.authorityScope==="bootstrap-provenance"?"docs/work/workspace-principal.v0.json":"docs/work/onboarding/local-etiquette-canary.md",u=Ur(e),o={..._,...Gy({projectId:t,at:u,runnerBinding:F$({runnerProvider:n.modelRef,executionSurface:"local-etiquette",modelId:n.modelId,modelTier:n.modelTier,capabilitySource:"config"})}),ack_ref:`docs/work/seat-cards/${n.seatId}.yaml`,orientation_ref:c};return await jn(i,o),Pr(r,"seat_ready",{seat_id:n.seatId,lifecycle_state:"ready",workflow_id:Sn(t),ack_ref:o.ack_ref,orientation_ref:o.orientation_ref,authority_granted:!1,authority_boundary:{readiness_authorizes_work:!1,can_merge:!1,can_close:!1}},e)}async function o8(r,n,t,e){let i=await Yr(await bi(r,n.seatId),{schema:"seat-subscriptions.v0",seat:n.seatId,subscriptions:[]});i.subscriptions.push({lane:t.id,roles:t.mode==="product-implementation"?["task-bundle","implementation-return"]:["task-bundle","review-return"],subscribed_at:Ur(e)}),await jn(await bi(r,n.seatId),i)}async function $8(r,n,t,e){let i={schema:"local-packet.v0",role:"task-bundle",lane:t.id,from:n.lead.seatId,to:t.assignedTo.seatId,verdict:"routed",packet_tier:"3",mode:t.mode,next_owner:t.assignedTo.seatId,created_at:Ur(e),changes_state:!0,authority_boundary:{packet_authorizes_work:!1,can_merge:!1,can_close:!1,can_grant:!1}},_=`${Wn(i.created_at)}-${Wn(t.id)}-task-bundle.json`,c=M(r,"docs","work","packets",_);await jn(c,i);let u=await Pr(r,"packet_posted",{...i,packet_ref:cr(r,c)},e);return await H$(r,u,e),u}async function g8(r,n){if(r[1]!=="local")throw Error("bootstrap verb must be: local");let e=br(n),i=n.force===!0,_=Boolean(n.json),c=ky(n),u={schema:"local-bootstrap-result.v0",profile:c.profile,project:e,project_id:null,lead_start:null,generated:[],skipped:[],events:[],seats:[c.lead,...c.reviewers,c.bootstrapSeat].map((f)=>f.seatId),tasks:c.tasks.map((f)=>f.id),sessions:c.tasks.map((f)=>`session-${f.id}`),authority_boundary:{can_authorize:!1,can_merge:!1,can_close:!1,can_write_global_ledger:!1}},o=await lr(e,I(n,"at"));await hr(e),await hl(e,u),u.project_id=o.project_id;let $=c.tasks[0]?.id??`${c.taskPrefix}-001`;if(u.lead_start={seat:c.lead.seatId,operator_principal:c.lead.operatorPrincipal,task:$,task_ref:`docs/work/tasks/${$}.yaml`,runbook_ref:`docs/work/sessions/session-${$}/RUNBOOK.md`,commands:[`etiquette whereami --project . --seat ${c.lead.seatId} --task ${$} --expect-project-id ${o.project_id}`,`etiquette join --project . --seat ${c.lead.seatId}`,We(c.lead.seatId,$,o.project_id),`etiquette console board --project . --seat ${c.lead.seatId} --text`,`etiquette notify feed --project . --seat ${c.lead.seatId} --text`]},u.events.push((await Pr(e,"workspace_initialized",{project_ref:".",project_id:o.project_id,bootstrap_profile:c.profile,authority_boundary:{can_authorize_work:!1,can_merge:!1,can_close:!1}},n)).event_ref),await Un(e,"docs/work/workspace-principal.v0.json",El(e,c),i,u),await Un(e,"docs/work/onboarding/local-etiquette-canary.md",jl(c),i,u),await Un(e,"docs/work/BOARD.md",Al(c),i,u),await Un(e,"docs/work/manuals/SEAT_OPERATING_MANUAL.md",Ml(c),i,u),await Un(e,"docs/work/runbooks/SESSION_PICKUP.md",kl(c),i,u),await Un(e,"docs/work/runbooks/WORKING_DISCIPLINE.md",Pl(),i,u),await Un(e,"docs/work/cookbooks/ADD_A_LANE.md",Xl(c),i,u),!or(M(e,"AGENTS.md")))await Un(e,"AGENTS.md",Jl(c),i,u);else u.skipped.push("AGENTS.md");for(let f of[c.lead,...c.reviewers,c.bootstrapSeat])await Un(e,`docs/work/seat-cards/${f.seatId}.yaml`,zl(f),i,u);for(let f of c.tasks)await Un(e,`docs/work/tasks/${f.id}.yaml`,Sl(e,c,f),i,u),await Un(e,`docs/work/huddle-cards/${f.id}.yaml`,Wl(e,c,f),i,u);for(let f of[c.lead,...c.reviewers,c.bootstrapSeat])u.events.push((await c8(e,f,o.project_id,n)).event_ref),u.events.push((await u8(e,f,o.project_id,n)).event_ref),await J$({projectRoot:e,seat:f.seatId,seatType:f.seatType,executionSurface:"local-etiquette",declaredBy:"config",capabilitySource:"config",operationalStatus:"operational",modelTier:f.modelTier,modelId:f.modelId,activeWorkers:f.activeWorkers,maxRecommendedWorkers:f.maxRecommendedWorkers,supportsParallel:f.supportsParallel,supportedStrategies:f.supportedStrategies,unsupportedStrategies:[],constraints:[],at:I(n,"at")});for(let f of c.tasks)await S$({projectRoot:e,seat:f.assignedTo.seatId,taskRef:f.id,sessionId:`session-${f.id}`,operatorPrincipal:f.assignedTo.operatorPrincipal,ownerPrincipal:c.lead.seatId,creationMode:"explicit",at:I(n,"at")}),await Rc({projectRoot:e,sessionId:`session-${f.id}`,section:"plan",message:f.planNote,at:I(n,"at")}),await o8(e,f.assignedTo,f,n),u.events.push((await $8(e,c,f,n)).event_ref);let g=M(e,"docs","work","seat-cards"),d=await Ee(g,{withFileTypes:!0});for(let f of d)if(f.isFile()&&(f.name.endsWith(".yaml")||f.name.endsWith(".yml")||f.name.endsWith(".json")))await Nc(M(g,f.name));if(_){console.log(JSON.stringify(u,null,2));return}console.log([`bootstrap_local: ok project=${e}`,`project_id: ${o.project_id}`,`profile: ${c.profile}`,`seats: ${u.seats.join(", ")}`,`tasks: ${u.tasks.join(", ")}`,`sessions: ${u.sessions.join(", ")}`,`events: ${u.events.join(", ")}`,`generated: ${u.generated.length}`,`skipped: ${u.skipped.length}`,"lead_start:",` seat: ${c.lead.seatId}`,` operator_principal: ${c.lead.operatorPrincipal}`,` task: ${$}`,` task_ref: docs/work/tasks/${$}.yaml`,` runbook_ref: docs/work/sessions/session-${$}/RUNBOOK.md`," commands:",...(u.lead_start?.commands??[]).map((f)=>` ${f}`),"next:",` etiquette console board --project . --seat ${c.lead.seatId} --text`,` etiquette notify feed --project . --seat ${c.lead.seatId} --text`,` etiquette bus inbox --addressee ${c.lead.seatId} --project . --text`].join(`
|
|
760
|
-
`))}async function d8(r,n){let t=br(n),e=$r(r,1,"task"),i=D(n,"seat"),_=D(n,"operator"),c=await Pr(t,"seat_entered",{task:e,seat:i,operator_principal:_,authority_boundary:{authentication_authorizes_work:!1,can_merge:!1,can_close:!1}},n);console.log(`entered: ${i} task=${e} operator=${_}`),console.log(`event: ${c.event_ref}`)}async function f8(r){let n=br(r),t=ky(r),e=or(M(n,".etiquette"))&&or(M(n,"docs","work")),i=e?await wc(n):null,_=e?await B$(n):t.tasks.map((d)=>d.id),c=_.find((d)=>d.endsWith("-001"))??t.tasks[0]?.id??`${t.taskPrefix}-001`,u=_.find((d)=>d.endsWith("-002"))??t.tasks[1]?.id??`${t.taskPrefix}-002`,o=_.find((d)=>d.endsWith("-003"))??t.tasks[2]?.id??null,$=[{label:"lead",seat:t.lead.seatId,principal:t.lead.operatorPrincipal,task:c},{label:"review",seat:t.reviewers[0]?.seatId??"review-seat",principal:t.reviewers[0]?.operatorPrincipal??"reviewer",task:u},...o&&t.reviewers[1]?[{label:"qa",seat:t.reviewers[1].seatId,principal:t.reviewers[1].operatorPrincipal,task:o}]:[]],g={schema:"local-handoff-plan.v0",project_ref:".",initialized:e,profile:t.profile,task_prefix:t.taskPrefix,seats:$,install_env:{ETQ_VERSION:"<release-version>",ETQ_INSTALLER_URL:"<signed-installer-url>",ETQ_RELEASES_URL:"<signed-release-base-url>",ETQ_PUBLIC_KEY:"<public-key-path-or-url>"},commands:{install:['curl -fsSL "$ETQ_INSTALLER_URL" -o "${TMPDIR:-.}/etiquette-install.sh"','sh "${TMPDIR:-.}/etiquette-install.sh" --version "$ETQ_VERSION" --base-url "$ETQ_RELEASES_URL" --public-key "$ETQ_PUBLIC_KEY" --install-root "$HOME/.etiquette" --modify-profile','export PATH="$HOME/.etiquette/bin:$PATH"',"etiquette help"],bootstrap:[`etiquette bootstrap local --project . --profile ${t.profile} --task-prefix ${t.taskPrefix}`,"etiquette doctor --project .","etiquette console board --project . --text"],seats:$.flatMap((d)=>[`etiquette whereami --project . --seat ${d.principal} --task ${d.task}`,`etiquette join --project . --seat ${d.principal}`,We(d.principal,d.task,i?.project_id??null)])},docs:["AGENTS.md","docs/work/BOARD.md","docs/work/onboarding/local-etiquette-canary.md","docs/work/runbooks/SESSION_PICKUP.md","docs/work/runbooks/WORKING_DISCIPLINE.md","docs/work/manuals/SEAT_OPERATING_MANUAL.md","docs/work/cookbooks/ADD_A_LANE.md"],authority_boundary:{handoff_is_read_only:!0,handoff_installs_nothing:!0,handoff_bootstraps_nothing:!0,can_merge:!1,can_push:!1,can_close:!1,can_grant:!1,can_write_global_ledger:!1}};if(r.json){console.log(JSON.stringify(g,null,2));return}console.log(["handoff_plan:",` project: ${g.project_ref}`,` initialized: ${String(g.initialized)}`,` profile: ${g.profile}`,` task_prefix: ${g.task_prefix}`," authority_boundary: read-only guide; installs nothing, bootstraps nothing, grants nothing","","install_env:",...Object.entries(g.install_env).map(([d,f])=>` ${d}=${f}`),"","install:",...g.commands.install.map((d)=>` ${d}`),"","bootstrap:",...g.commands.bootstrap.map((d)=>` ${d}`),"","seat_pickups:",...$.flatMap((d)=>[` # ${d.label}: ${d.seat} (${d.principal})`,` etiquette whereami --project . --seat ${d.principal} --task ${d.task}`,` etiquette join --project . --seat ${d.principal}`,` ${We(d.principal,d.task,i?.project_id??null)}`]),"","docs:",...g.docs.map((d)=>` - ${d}`),"","stop_conditions:"," - task needs writes outside its envelope"," - secret or credential appears"," - validation cannot run"," - authority is unclear"].join(`
|
|
761
|
-
`))}async function b8(r){let n=br(r);await hr(n);let t=await lr(n,I(r,"at"));L$(t.project_id,I(r,"expect-project-id"),"current project");let e=D(r,"seat"),i=hn(await un(n),e),_=i.seat,c=i.enrollment;if(!c)throw Error(`seat is not enrolled: ${e}${await Yy(n)}`);let u=await Y$(n,_,r),o=u.items.find((g)=>g.lane)?.lane??null,$={schema:"seat-join.v0",requested_seat:e,seat:_,seat_alias_used:i.aliasUsed,project_id:t.project_id,ready:c.ready===!0,lifecycle_state:Cn(c),workflow_id:c.workflow_id??null,operator_principal:F(c,"operator_principal")??null,orientation_ref:F(c,"orientation_ref")??null,board_ref:"docs/work/BOARD.md",event_log_ref:".etiquette/events/local.ndjson",queued_items:u.items.length,next_task:o,next_commands:[`etiquette console board --project . --seat ${_} --text`,`etiquette notify feed --project . --seat ${_} --text`,o?We(_,o,t.project_id):null].filter((g)=>Boolean(g)),authority_boundary:{join_authorizes_work:!1,can_merge:!1,can_close:!1,can_grant:!1,can_write_global_ledger:!1}};if(r.json){console.log(JSON.stringify($,null,2));return}console.log([`seat_join: ${_}`,i.aliasUsed?`seat_alias: ${e} -> ${_}`:null,`project_id: ${t.project_id}`,`ready: ${String($.ready)}`,`lifecycle_state: ${$.lifecycle_state}`,`workflow_id: ${String($.workflow_id??"legacy")}`,`operator_principal: ${$.operator_principal??"unknown"}`,`orientation_ref: ${$.orientation_ref??"none"}`,`queued_items: ${$.queued_items}`,`next_task: ${$.next_task??"none"}`,"next:",...$.next_commands.map((g)=>` ${g}`),"can_authorize: false"].filter((g)=>g!==null).join(`
|
|
762
|
-
`))}async function B$(r){let n=M(r,"docs","work","tasks");if(!or(n))return[];return(await Ee(n,{withFileTypes:!0})).filter((e)=>e.isFile()&&(e.name.endsWith(".yaml")||e.name.endsWith(".yml")||e.name.endsWith(".json"))).map((e)=>e.name.replace(/\.(ya?ml|json)$/i,"")).sort()}async function K4(r){let n=M(r,"docs","work","sessions");if(!or(n))return[];let t=await Ee(n,{withFileTypes:!0}),e=[];for(let i of t){if(!i.isDirectory())continue;let _=M("docs","work","sessions",i.name,"session.json"),c=await Yr(M(r,_),null);e.push(c??{session_id:i.name,manifest_ref:_,runbook_ref:M("docs","work","sessions",i.name,"RUNBOOK.md")})}return e.sort((i,_)=>String(i.session_id??"").localeCompare(String(_.session_id??"")))}async function Q$(r,n){return pr(await Q4(M(r,"docs","work","tasks",`${n}.yaml`)),`task envelope ${n}`)}async function un(r){let n=await Sc(M(r,".etiquette","roster","enrollments"));return(await Promise.all(n.map((e)=>Yr(e,{})))).sort((e,i)=>String(e.seat_id??"").localeCompare(String(i.seat_id??"")))}function w8(r,n,t){if(!r.enrollment)throw Error(`seat is not enrolled: ${r.requestedSeat}`);if(r.enrollment.ready!==!0)throw Error(`seat is not ready: ${r.seat}; run etiquette roster ready ${r.seat} after onboarding`);if(n)B4(r.enrollment,n,r.seat,t)}function Cy(r,n,t){let e=pr(r.authority_boundary,`${n} authority_boundary`);for(let i of t)if(Tc(e,i)!==!1)throw Error(`${n} authority_boundary.${i} must be false`)}function m8(r,n){if(!Ly.includes(r))throw Error(`${n} execution_strategy.strategy must be one of: ${Ly.join(", ")}`)}function F4(r,n){if(!r||typeof r!=="object"||Array.isArray(r))return;for(let[t,e]of Object.entries(r)){let i=`${n}.${t}`,_=t.toLowerCase();if(!(_.includes("cannot")||_.includes("require")||_.includes("read_only")||_.includes("one_writer"))&&/(authorize|authority|grant|merge|close|promote|push|sign)/i.test(t)&&e===!0)throw Error(`${i} must not claim authority`);F4(e,i)}}function I8(r){return $l.some((n)=>n.endsWith("/")?r.startsWith(n):r===n)}function O8(r,n){let t;if(r.execution_strategy!==void 0){let c=pr(r.execution_strategy,`task envelope ${n} execution_strategy`);if(t=F(c,"strategy"),!t)throw Error(`task envelope ${n} execution_strategy.strategy is required`);if(m8(t,`task envelope ${n}`),t==="shadow")throw Error(`task envelope ${n} execution_strategy.strategy=shadow is reserved and not executable in V0`);F4(c,`task envelope ${n} execution_strategy`)}if(r.rig_conductor!==void 0){if(t!=="rig")throw Error(`task envelope ${n} rig_conductor requires execution_strategy.strategy=rig`);let c=Dy(r.rig_conductor);if(c.verdict!=="legitimate")throw Error(`task envelope ${n} rig_conductor blocked: ${c.reasons.join(", ")}`)}else if(t==="rig")throw Error(`task envelope ${n} execution_strategy.strategy=rig requires rig_conductor`);if(r.topology_constraints===void 0)return;let e=pr(r.topology_constraints,`task envelope ${n} topology_constraints`);for(let c of["reviewers_read_only","child_agents_cannot_promote","one_writer_per_worktree","runner_swaps_require_lifecycle_preflight"])if(Tc(e,c)!==!0)throw Error(`task envelope ${n} topology_constraints.${c} must be true`);if(F4(e,`task envelope ${n} topology_constraints`),F(r,"mode")==="read-only-audit"&&Tc(e,"reviewers_read_only")===!0){for(let c of V$(r,"allowed_writes")??[])if(typeof c!=="string"||!I8(c))throw Error(`task envelope ${n} reviewers_read_only prohibits write path: ${String(c)}`)}let _=r.max_parallel_writers;if(Tc(e,"one_writer_per_worktree")===!0&&_!==void 0&&_!==1)throw Error(`task envelope ${n} max_parallel_writers must be 1 when one_writer_per_worktree is true`)}function xy(r,n,t){if(r.schema!=="task-envelope.v0")throw Error(`task envelope ${n} schema must be task-envelope.v0`);if(F(r,"task_id")!==n)throw Error(`task envelope mismatch: ${n} has task_id=${String(r.task_id??"missing")}`);let e=F(r,"assigned_to");if(!e)throw Error(`task envelope ${n} missing assigned_to`);if(e!==t)throw Error(`task/seat mismatch: ${n} assigned_to=${e} but pickup seat=${t}`);if(!F(r,"mode"))throw Error(`task envelope ${n} missing mode`);if((V$(r,"allowed_writes")??[]).length===0)throw Error(`task envelope ${n} missing allowed_writes`);if((V$(r,"validation")??[]).length===0)throw Error(`task envelope ${n} missing validation`);Cy(r,`task envelope ${n}`,["can_authorize","can_merge","can_close","can_write_global_ledger"]),O8(r,n)}function py(r,n,t){if(r.schema!=="session-runbook.v0")throw Error(`session session-${n} schema must be session-runbook.v0`);if(F(r,"session_id")!==`session-${n}`)throw Error(`session manifest mismatch: expected session-${n} got ${String(r.session_id??"missing")}`);if(F(r,"task_ref")!==n)throw Error(`session/task mismatch: session-${n} task_ref=${String(r.task_ref??"missing")} expected ${n}`);if(F(r,"seat")!==t)throw Error(`session/seat mismatch: session-${n} seat=${String(r.seat??"missing")} expected ${t}`);Cy(r,`session session-${n}`,["can_authorize","can_merge","can_close","can_write_global_ledger"])}async function U8(r,n){let t=[],e=await un(r),i=new Set(e.map((u)=>F(u,"seat_id")).filter((u)=>Boolean(u))),_=new Set(e.filter((u)=>u.ready===!0).map((u)=>F(u,"seat_id")).filter((u)=>Boolean(u))),c=new Map(e.map((u)=>[F(u,"seat_id"),u]).filter((u)=>Boolean(u[0])));for(let u of await B$(r)){let o;try{o=await Q$(r,u)}catch(f){t.push(f.message);continue}let $=F(o,"assigned_to"),g=await Yr(M(r,"docs","work","sessions",`session-${u}`,"session.json"),null);if(!$&&!g)continue;if(!$){t.push(`task envelope ${u} missing assigned_to`);continue}if(!i.has($))t.push(`task envelope ${u} assigned_to ${$} is not enrolled`);if(!_.has($))t.push(`task envelope ${u} assigned_to ${$} is not ready`);let d=c.get($);if(d)try{B4(d,n,$)}catch(f){t.push(f.message)}try{xy(o,u,$)}catch(f){t.push(f.message)}if(!g){t.push(`session manifest missing: docs/work/sessions/session-${u}/session.json`);continue}try{Re(typeof g.project_id==="string"?g.project_id:null,n,`session session-${u}`),py(g,u,$)}catch(f){t.push(f.message)}}return[...new Set(t)]}function hn(r,n,t="--seat"){X(n,t);let e=r.find((_)=>F(_,"seat_id")===n)??null;if(e)return{requestedSeat:n,seat:n,enrollment:e,aliasUsed:!1};let i=r.filter((_)=>F(_,"operator_principal")===n);if(i.length===1){let _=F(i[0],"seat_id");if(_)return{requestedSeat:n,seat:_,enrollment:i[0],aliasUsed:!0}}if(i.length>1)throw Error(`seat alias is ambiguous: ${n}`);return{requestedSeat:n,seat:n,enrollment:null,aliasUsed:!1}}function h8(r){let n=cn(r,["rev-parse","--show-toplevel"],!0);if(n.status!==0)return{inside_worktree:!1,root:null,branch:null,dirty:null,status_ref:"git unavailable"};let t=cn(r,["rev-parse","--abbrev-ref","HEAD"],!0),i=cn(r,["status","--short","--branch"],!0).stdout.split(`
|
|
763
|
-
`).filter((c)=>c.trim().length>0),_=i.filter((c)=>!c.startsWith("## "));return{inside_worktree:!0,root:n.stdout.trim(),branch:t.status===0?t.stdout.trim():null,dirty:_.length>0,status_ref:i[0]??null,dirty_entries:_.length}}function Mr(r,n){if(r.some((t)=>t.code===n.code&&t.detail===n.detail))return;r.push(n)}function fi(r,n){return r.filter((t)=>!n||t.severity===n).map((t)=>t.code)}function Wy(r){if(!r)return null;return typeof r.project_id==="string"&&r.project_id.trim().length>0?r.project_id.trim():null}async function R8(r,n){if(r[1]!=="check")throw Error("resume verb must be: check");await D8(n)}async function D8(r){let n=br(r),t=Ur(r),e=D(r,"seat"),i=I(r,"task")??null;if(i)X(i,"--task");let _=I(r,"expect-project-id")??null,c=I(r,"runner-session")??I(r,"resume-hash")??I(r,"session-hash")??null,u=I(r,"workflow-id")??I(r,"workflow")??null,o=await wc(n),$=o?.project_id??null,g=await un(n),d=await B$(n),f=await K4(n),b=await Fy(n),m=[],w;try{w=hn(g,e)}catch(L){w={requestedSeat:e,seat:e,enrollment:null,aliasUsed:!1},Mr(m,{code:"seat_alias_ambiguous",detail:L.message,severity:"blocked"})}let{seat:O,enrollment:q}=w,R=(i?f.filter((L)=>L.task_ref===i||L.session_id===`session-${i}`):[])[0]??null;if(!$)Mr(m,{code:"project_binding_missing",detail:"no .etiquette/project.yaml found; resume cannot prove the current project identity",severity:"blocked"});if(_&&$!==_)Mr(m,{code:$?"project_id_mismatch":"project_binding_missing",detail:`expected project_id=${_}, current=${$??"missing"}`,severity:"blocked"});if(u&&$&&u!==Sn($))Mr(m,{code:"workflow_id_mismatch",detail:`requested workflow_id=${u}, current=${Sn($)}`,severity:"stale"});if(!q)Mr(m,{code:"seat_not_enrolled",detail:`seat is not enrolled: ${e}`,severity:"blocked"});else{let L=Cn(q);if(!Jy.has(L)||q.ready!==!0)Mr(m,{code:"seat_not_ready",detail:`seat ${O} state=${L} ready=${String(q.ready===!0)}`,severity:"stale"});if($)try{B4(q,$,O,t)}catch(Y){Mr(m,{code:"seat_lifecycle_preflight_required",detail:Y.message,severity:"stale"})}}let j=null;if(i){if(!d.includes(i))Mr(m,{code:"task_missing",detail:`task envelope not found: docs/work/tasks/${i}.yaml`,severity:"blocked"});else try{j=await Q$(n,i);let L=F(j,"assigned_to");if(L&&L!==O)Mr(m,{code:"task_seat_mismatch",detail:`task ${i} assigned_to=${L}, requested seat=${O}`,severity:"stale"})}catch(L){Mr(m,{code:"task_envelope_unreadable",detail:L.message,severity:"blocked"})}if(!R)Mr(m,{code:"session_missing",detail:`session manifest not found for ${i}; expected docs/work/sessions/session-${i}/session.json`,severity:"blocked"});else{if(R.schema!=="session-runbook.v0")Mr(m,{code:"session_schema_mismatch",detail:`session ${String(R.session_id??"unknown")} schema=${String(R.schema??"missing")}`,severity:"stale"});let L=Wy(R);if($&&!L)Mr(m,{code:"session_project_id_missing",detail:`session ${String(R.session_id??"unknown")} has no project_id; recreate or rebind the session under ${$}`,severity:"stale"});else if($&&L!==$)Mr(m,{code:"session_project_id_mismatch",detail:`session project_id=${L} current=${$}`,severity:"stale"});if(F(R,"task_ref")!==i)Mr(m,{code:"session_task_mismatch",detail:`session task_ref=${String(R.task_ref??"missing")} expected=${i}`,severity:"stale"});if(F(R,"seat")!==O)Mr(m,{code:"session_seat_mismatch",detail:`session seat=${String(R.seat??"missing")} expected=${O}`,severity:"stale"})}}let k=m.filter((L)=>L.severity!=="warning").length===0?"ready":"rebind_required",Q={schema:"resume-check.v0",verdict:k,pickup_allowed:k==="ready",cwd:process.cwd(),project:n,project_id:$,project_ref:o?".etiquette/project.yaml":null,checked_at:t,latest_local_seq:b.at(-1)?.seq??0,requested:{seat_input:e,seat:O,seat_alias_used:w.aliasUsed,task:i,expect_project_id:_,workflow_id:u,runner_session:c},runner_resume:{runner_session_ref:c,runner_resume_is_binding:!1,restores_conversation_context_only:!0},seat:q?{enrolled:!0,ready:q.ready===!0,lifecycle_state:Cn(q),workflow_id:q.workflow_id??null,runner_binding:q.runner_binding??null}:{enrolled:!1,ready:!1,lifecycle_state:null,workflow_id:null,runner_binding:null},task:i?{task_ref:d.includes(i)?`docs/work/tasks/${i}.yaml`:null,assigned_to:j?.assigned_to??null,session_ref:R?`docs/work/sessions/${String(R.session_id??`session-${i}`)}/session.json`:null,session_project_id:Wy(R),session_seat:R?.seat??null,session_task_ref:R?.task_ref??null}:null,stale_signals:fi(m,"stale"),blocked_signals:fi(m,"blocked"),warnings:[...c?["runner_resume_hash_is_chat_only"]:[],...fi(m,"warning")],issues:m,next_commands:[`cd ${n}`,dl(O,i,$),`etiquette whereami --project . --seat ${O}${i?` --task ${i}`:""} --json`,k==="ready"&&i?We(O,i,$):null,k!=="ready"?"Use $etiquette-seat-rebind, then $etiquette-seat-lifecycle, before pickup.":null,k!=="ready"?"Do not read old docs/work/sessions/session-<task>/ files as assignment until this check is ready.":null].filter((L)=>Boolean(L)),authority_boundary:{resume_check_authorizes_work:!1,runner_resume_authorizes_work:!1,readiness_authorizes_work:!1,can_pickup_task:k==="ready",can_merge:!1,can_close:!1,can_grant:!1,can_write_global_ledger:!1}};if(r.json)console.log(JSON.stringify(Q,null,2));else console.log([`resume_check: ${k}`,`pickup_allowed: ${String(k==="ready")}`,`project_id: ${$??"none"}`,`requested_seat: ${O}${w.aliasUsed?` (alias ${e})`:""}`,i?`requested_task: ${i}`:null,`runner_resume_is_binding: false${c?` (${c})`:""}`,`latest_local_seq: ${String(b.at(-1)?.seq??0)}`,"stale_signals:",...fi(m,"stale").length>0?fi(m,"stale").map((L)=>` - ${L}`):[" - none"],"blocked_signals:",...fi(m,"blocked").length>0?fi(m,"blocked").map((L)=>` - ${L}`):[" - none"],"next:",...Q.next_commands.map((L)=>` ${L}`),"authority_boundary: read-only; no resume hash, readiness check, or rebind grants merge, close, push, or global-ledger authority"].filter((L)=>L!==null).join(`
|
|
764
|
-
`));if(k!=="ready")process.exit(2)}async function y8(r){let n=br(r),t=or(M(n,".etiquette"))||or(M(n,"docs","work")),e=t?await wc(n):null;L$(e?.project_id,I(r,"expect-project-id"),"current project");let i=await Fy(n),_=await un(n),c=await B$(n),u=await K4(n),o=I(r,"seat")??null,$=I(r,"task")??null;if($)X($,"--task");let g=o?hn(_,o):null,d=g?.seat??null,f=g?.enrollment??null,b=$?`docs/work/tasks/${$}.yaml`:null,m=$?`docs/work/sessions/session-${$}/RUNBOOK.md`:null,w=$?u.filter((R)=>R.task_ref===$||R.session_id===`session-${$}`):u;if(e&&$)for(let R of w)Re(typeof R.project_id==="string"?R.project_id:null,e.project_id,`session ${String(R.session_id??"unknown")}`);let O={schema:"workspace-context-readback.v0",cwd:process.cwd(),project:n,project_id:e?.project_id??null,project_ref:e?".etiquette/project.yaml":null,initialized:t,git:h8(n),events:i.length,seats:_.map((R)=>({seat_id:R.seat_id,ready:R.ready===!0,lifecycle_state:Cn(R),workflow_id:R.workflow_id??null,operator_principal:R.operator_principal??null})),tasks:c,sessions:w.map((R)=>({session_id:R.session_id??null,project_id:R.project_id??null,seat:R.seat??null,task_ref:R.task_ref??null,runbook_ref:R.runbook_ref??null,manifest_ref:R.manifest_ref??null})),requested:{seat_input:o,seat:d,seat_alias_used:g?.aliasUsed??!1,seat_ready:f?f.ready===!0:null,lifecycle_state:f?Cn(f):null,workflow_id:f?.workflow_id??null,task:$,task_ref:b&&or(M(n,b))?b:null,runbook_ref:m&&or(M(n,m))?m:null},guidance:{resume_conversation:"Use your agent runner resume command for chat context; do not git checkout for conversation history.",enter_code_context:"Use the project/worktree path shown here for code context.",avoid_checkout_when_dirty:"If git_dirty is true, do not checkout another branch until the dirty worktree is triaged or moved to a separate worktree."},next_commands:[`cd ${n}`,d?`etiquette join --project . --seat ${d}`:null,d&&$?We(d,$,e?.project_id??null):null,"etiquette status --project ."].filter((R)=>Boolean(R)),authority_boundary:{whereami_authorizes_work:!1,can_checkout:!1,can_merge:!1,can_close:!1,can_grant:!1,can_write_global_ledger:!1}};if(r.json){console.log(JSON.stringify(O,null,2));return}let q=O.git,T=["whereami:",` cwd: ${O.cwd}`,` project: ${O.project}`,` project_id: ${O.project_id??"none"}`,` initialized: ${String(O.initialized)}`,` git_root: ${String(q.root??"none")}`,` git_branch: ${String(q.branch??"none")}`,` git_dirty: ${String(q.dirty??"unknown")}`,` events: ${O.events}`,` seats: ${O.seats.length===0?"none":O.seats.map((R)=>`${String(R.seat_id)}(ready=${String(R.ready)} lifecycle=${R.lifecycle_state})`).join(", ")}`,` tasks: ${O.tasks.length===0?"none":O.tasks.join(", ")}`,` sessions: ${O.sessions.length===0?"none":O.sessions.map((R)=>String(R.session_id??"unknown")).join(", ")}`];if(d){if(g?.aliasUsed)T.push(` seat_alias: ${g.requestedSeat} -> ${d}`);T.push(` requested_seat: ${d} ready=${String(O.requested.seat_ready??"unknown")}`),T.push(` lifecycle_state: ${String(O.requested.lifecycle_state??"unknown")}`),T.push(` workflow_id: ${String(O.requested.workflow_id??"legacy")}`)}if($)T.push(` requested_task: ${$}`),T.push(` task_ref: ${O.requested.task_ref??"missing"}`),T.push(` runbook_ref: ${O.requested.runbook_ref??"missing"}`);T.push("next:",...O.next_commands.map((R)=>` ${R}`),"guidance:",` ${O.guidance.resume_conversation}`,` ${O.guidance.enter_code_context}`,` ${O.guidance.avoid_checkout_when_dirty}`,"authority_boundary: read-only; no checkout, merge, close, grant, or global ledger write"),console.log(T.join(`
|
|
765
|
-
`))}async function q8(r){let n=br(r);await hr(n);let t=await lr(n,I(r,"at"));fl(t.project_id,r);let e=D(r,"seat"),i=D(r,"task"),_=hn(await un(n),e),c=_.seat;w8(_,t.project_id,I(r,"at")),X(i,"--task");let u=`docs/work/tasks/${i}.yaml`,o=`docs/work/sessions/session-${i}/RUNBOOK.md`,$=await En(M(n,u));if(!$)throw Error(`task envelope not found: ${u}`);let g=await Q$(n,i);xy(g,i,c);let d=await En(M(n,o));if(!d)throw Error(`session runbook not found: ${o}`);let f=await Yr(M(n,"docs","work","sessions",`session-${i}`,"session.json"),null);if(!f)throw Error(`session manifest not found: docs/work/sessions/session-${i}/session.json`);Re(typeof f.project_id==="string"?f.project_id:null,t.project_id,`session session-${i}`),py(f,i,c);let b=await Y$(n,c,r),m={schema:"seat-pickup.v0",requested_seat:e,seat:c,seat_alias_used:_.aliasUsed,project_id:t.project_id,task:i,task_ref:u,runbook_ref:o,roster_integrity:"pass",lifecycle_state:Cn(_.enrollment??{}),workflow_id:_.enrollment?.workflow_id??null,feed_items:b.items.length,authority_boundary:{pickup_authorizes_work:!1,can_merge:!1,can_close:!1,can_grant:!1,can_write_global_ledger:!1}};if(r.json){console.log(JSON.stringify(m,null,2));return}console.log([`pickup: ${c} task=${i}`,_.aliasUsed?`seat_alias: ${e} -> ${c}`:null,`project_id: ${t.project_id}`,`task_ref: ${u}`,`runbook_ref: ${o}`,"roster_integrity: pass",`lifecycle_state: ${Cn(_.enrollment??{})}`,`workflow_id: ${String(_.enrollment?.workflow_id??"legacy")}`,"authority_boundary: read-only; no grants, merge, close, push, or global ledger writes","","## Wake Queue","",V4(b),"","## Task Envelope","",$.trim(),"","## Runbook","",d.trim(),""].filter((w)=>w!==null).join(`
|
|
766
|
-
`))}async function T8(r,n){if(r[1]!=="append")throw Error("audit verb must be: append");let e=br(n);await hr(e);let i=await Pr(e,"audit_appended",{audit_schema:I(n,"schema")??"audit-event.v0",actor:D(n,"actor"),org_id:I(n,"org-id"),workspace_id:I(n,"workspace-id"),action:D(n,"action"),target_type:I(n,"target-type"),target_id:I(n,"target-id"),grant_ref:I(n,"grant-ref"),result:I(n,"result")??"recorded",reason:I(n,"reason"),refs:mr(n.refs)},n);await zc(M(e,".etiquette","audit","audit.ndjson"),`${JSON.stringify(i)}
|
|
767
|
-
`),console.log(`audit_appended: ${i.event_ref}`)}async function N8(r,n){let t=r[1],e=br(n);if(await hr(e),t==="card"){if(r[2]!=="validate")throw Error("roster card verb must be: validate");let _=Zn(D(n,"card")),c=await Nc(_);console.log(`seat_card_valid: ${c}`);return}if(t==="enroll"){let i=$r(r,2,"seat"),_=await lr(e,I(n,"at")),c=D(n,"card"),u=Zn(e,c),o=await Nc(u),$=D(n,"execution-seat");if(o!==i)throw Error(`seat card seat_id ${o} does not match ${i}`);let g={schema:"seat-enrollment.v0",seat_id:i,card_ref:cr(e,u),operator_principal:D(n,"operator-principal"),execution_seat:$,as_role:D(n,"as-role"),authority_scope:D(n,"authority-scope"),mode:D(n,"mode"),orientation_ref:D(n,"orientation-ref"),ready:!1,lifecycle_schema:G$,lifecycle_state:"enrolled",workflow_id:Sn(_.project_id),runner_binding:F$({runnerProvider:I(n,"runner-provider")??$,executionSurface:I(n,"execution-surface")??$,modelId:I(n,"model-id"),modelTier:I(n,"model-tier"),permissionProfileRef:I(n,"permission-profile-ref"),capabilitySource:I(n,"capability-source")??"config"}),authority_granted:!1,lifecycle_authority_boundary:{lifecycle_grants_authority:!1,readiness_authorizes_work:!1,can_merge:!1,can_close:!1,can_grant:!1},enrolled_at:Ur(n),authority_boundary:{enrollment_authorizes_work:!1,can_merge:!1,can_close:!1}};await jn(await Le(e,i),g);let d=await Pr(e,"seat_enrolled",g,n);console.log(`seat_enrolled: ${i} ${d.event_ref}`);return}if(t==="ready"){let i=$r(r,2,"seat"),_=await lr(e,I(n,"at")),c=await Le(e,i),u=await Yr(c,null);if(!u)throw Error(`seat is not enrolled: ${i}`);let o=Ur(n),$=u.runner_binding===void 0?null:pr(u.runner_binding,`${i} runner_binding`),g=I(n,"execution-surface")??F($??{},"execution_surface")??F(u,"execution_seat")??"local-etiquette",d={...u,...Gy({projectId:_.project_id,at:o,runnerBinding:F$({runnerProvider:I(n,"runner-provider")??F($??{},"runner_provider")??g,executionSurface:g,modelId:I(n,"model-id")??F($??{},"model_id")??null,modelTier:I(n,"model-tier")??F($??{},"model_tier")??null,permissionProfileRef:I(n,"permission-profile-ref")??F($??{},"permission_profile_ref")??null,capabilitySource:I(n,"capability-source")??F($??{},"capability_source")??"config",previous:$})}),ack_ref:D(n,"ack-ref"),orientation_ref:D(n,"orientation-ref")};await jn(c,d);let f=await Pr(e,"seat_ready",{seat_id:i,lifecycle_state:"ready",workflow_id:Sn(_.project_id),ack_ref:d.ack_ref,orientation_ref:d.orientation_ref,authority_granted:!1,authority_boundary:{readiness_authorizes_work:!1,can_merge:!1,can_close:!1}},n);console.log(`seat_ready: ${i} ${f.event_ref}`);return}if(t==="lifecycle"){let i=$r(r,2,"seat"),_=D(n,"state");if(Xy(_,"--state"),_==="ready"||_==="idle")throw Error("use roster ready to move a seat to ready/idle after preflight");let c=await lr(e,I(n,"at")),u=await Le(e,i),o=await Yr(u,null);if(!o)throw Error(`seat is not enrolled: ${i}`);let $=Ur(n),g={...o,ready:!1,lifecycle_schema:G$,lifecycle_state:_,workflow_id:Sn(c.project_id),lifecycle_reason:D(n,"reason"),lifecycle_updated_at:$,authority_granted:!1,lifecycle_authority_boundary:{lifecycle_grants_authority:!1,readiness_authorizes_work:!1,can_merge:!1,can_close:!1,can_grant:!1}};await jn(u,g);let d=await Pr(e,"seat_lifecycle",{seat_id:i,workflow_id:Sn(c.project_id),lifecycle_state:_,reason:g.lifecycle_reason,authority_granted:!1,authority_boundary:{lifecycle_authorizes_work:!1,can_merge:!1,can_close:!1,can_grant:!1}},n);console.log(`seat_lifecycle: ${i} state=${_} ${d.event_ref}`);return}if(t==="list"){let i=await Sc(M(e,".etiquette","roster","enrollments")),_=await Promise.all(i.map(async(c)=>Yr(c,{})));if(n.json){console.log(JSON.stringify(_,null,2));return}console.log(_.length===0?"no enrolled seats":_.map((c)=>`${c.seat_id} ready=${String(c.ready)} lifecycle=${Cn(c)} operator=${c.operator_principal}`).join(`
|
|
768
|
-
`));return}if(t==="show"||t==="posture"){let i=$r(r,2,"seat"),_=await Yr(await Le(e,i),null);if(!_)throw Error(`seat is not enrolled: ${i}`);if(t==="show"){console.log(n.json?JSON.stringify(_,null,2):[`seat: ${_.seat_id}`,`operator_principal: ${_.operator_principal}`,`execution_seat: ${_.execution_seat}`,`as_role: ${_.as_role}`,`authority_scope: ${_.authority_scope}`,`mode: ${_.mode}`,`ready: ${String(_.ready)}`,`lifecycle_state: ${Cn(_)}`,`workflow_id: ${String(_.workflow_id??"legacy")}`].join(`
|
|
769
|
-
`));return}let c=F(_,"card_ref"),u=c?pr(await Q4(M(e,c)),"seat card"):{};console.log(n.json?JSON.stringify({enrollment:_,card:u},null,2):[`seat_posture: ${i}`,`model_ref: ${String(u.model_ref??"unknown")}`,`model_posture_ref: ${String(u.model_posture_ref??"unknown")}`,"authority_boundary:"," can_authorize_work: false"," can_close_lane_without_grant: false"," can_merge_or_push_without_grant: false"].join(`
|
|
770
|
-
`));return}if(t==="doctor"){let i=Zn(e,I(n,"cards")??M("docs","work","seat-cards")),_=or(i)?(await Ee(i,{withFileTypes:!0})).filter(($)=>$.isFile()).map(($)=>M(i,$.name)):[],c=[];for(let $ of _){if(!$.endsWith(".yaml")&&!$.endsWith(".yml")&&!$.endsWith(".json"))continue;c.push(await Nc($))}let u=await Sc(M(e,".etiquette","roster","enrollments")),o={schema:"roster-doctor.v0",verdict:"pass",cards_validated:c.length,enrolled_seats:u.length,authority_boundary:{can_authorize_work:!1,can_merge:!1,can_close:!1}};console.log(n.json?JSON.stringify(o,null,2):`roster_doctor: pass cards=${c.length} enrolled=${u.length}`);return}throw Error("roster verb must be one of: card, enroll, ready, lifecycle, list, show, posture, doctor")}async function L8(r){let n=br(r);await hr(n);let t=D(r,"role"),e=r.emit===!0||Il(t),i=D(r,"lane"),_={schema:"local-packet.v0",role:t,lane:i,from:D(r,"from"),to:D(r,"to"),verdict:I(r,"verdict")??"routed",packet_tier:I(r,"tier")??"3",mode:I(r,"mode")??"read-only-audit",next_owner:I(r,"next-owner")??D(r,"to"),created_at:Ur(r),changes_state:e,authority_boundary:{packet_authorizes_work:!1,can_merge:!1,can_close:!1,can_grant:!1}},c=`${Wn(_.created_at)}-${Wn(i)}-${Wn(t)}.json`,u=M(n,"docs","work","packets",c);if(await jn(u,_),e){let o=await Pr(n,"packet_posted",{..._,packet_ref:cr(n,u)},r);await H$(n,o,r),console.log(`packet_posted: ${o.event_ref} ${cr(n,u)}`);return}console.log(`packet_written: ${cr(n,u)}`)}async function z8(r,n){let t=r[1],e=br(n);if(t==="webhook"){let i=r[2]??I(n,"provider")??"github",_=await Zl({...n,provider:i});if(n.json){console.log(JSON.stringify(_,null,2));return}console.log(al(_));return}if(await hr(e),t==="subscribe"){let i=D(n,"seat"),_=hn(await un(e),i),c=_.seat,u=await Yr(await bi(e,c),{schema:"seat-subscriptions.v0",seat:c,subscriptions:[]});if(u.subscriptions.push({lane:D(n,"lane"),roles:mr(n.roles),subscribed_at:Ur(n)}),await jn(await bi(e,c),u),_.aliasUsed)console.log(`seat_alias: ${i} -> ${c}`);console.log(`subscribed: ${c} lane=${D(n,"lane")}`);return}if(t==="feed"){let i=D(n,"seat"),_=hn(await un(e),i),c=_.seat,u=await Yr(await bi(e,c),{subscriptions:[]}),o=new Set(u.subscriptions.map((g)=>F(g,"lane")).filter((g)=>Boolean(g))),$=(await Oi(e)).filter((g)=>g.to===c||g.next_owner===c||typeof g.lane==="string"&&o.has(g.lane));console.log([`feed: ${c}`,_.aliasUsed?`seat_alias: ${i} -> ${c}`:null,`subscriptions: ${u.subscriptions.length}`,l$($)].filter((g)=>g!==null).join(`
|
|
771
|
-
`));return}if(t==="poll"){let i=D(n,"seat"),_=hn(await un(e),i),c=_.seat,u=await Y$(e,c,n),o=await G4(e,c);if(await jn(o,u),n.json){console.log(JSON.stringify({...u,queue_ref:cr(e,o)},null,2));return}console.log([_.aliasUsed?`seat_alias: ${i} -> ${c}`:null,V4(u),`queue_ref: ${cr(e,o)}`].filter(($)=>$!==null).join(`
|
|
772
|
-
`));return}if(t==="queue"){let i=D(n,"seat"),_=hn(await un(e),i),c=_.seat,u=await G4(e,c),o=_l(await Yr(u,{schema:"remote-wake-queue.v0",seat:c,updated_at:Ur(n),source:{event_log_ref:".etiquette/events/local.ndjson",after_seq:0,max_seq_seen:0,subscriptions_ref:cr(e,await bi(e,c))},transport:v4(),payload_boundary:Y4(),items:[],authority_boundary:H4()}));if(n.json){console.log(JSON.stringify({...o,queue_ref:cr(e,u)},null,2));return}console.log([_.aliasUsed?`seat_alias: ${i} -> ${c}`:null,V4(o)].filter(($)=>$!==null).join(`
|
|
773
|
-
`));return}throw Error("notify verb must be one of: subscribe, feed, poll, queue, webhook")}async function S8(r,n){if(r[1]!=="check")throw Error("return verb must be: check");let e=br(n),i=I(n,"task")??$r(r,2,"task"),_=D(n,"seat");X(i,"--task"),X(_,"--seat");let c=hn(await un(e),_),u=c.seat,o=By(n),$=vl(n),g=await ye(e,{lane:i,from:u,kind:"packets",limit:Ii(n.limit,"limit",50),computedAt:Ur(n)}),d=A4(g,{task:i,seat:u,expectedRoles:o}),f=null;try{let q=(await Q$(e,i)).expected_return;if(q&&typeof q==="object"&&!Array.isArray(q)){let T=q.receipt;if(typeof T==="string"&&T.length>0)f=T}}catch{f=null}let b=f===null?null:or(M(e,f)),m=d.verdict==="pass"&&b===!1?"missing_return":d.verdict,w={schema:"return-enforcement-check.v0",task:i,seat:u,seat_alias:c.aliasUsed?_:null,expected_roles:o,enforcement_tier:$,verdict:m,expected_receipt:f,receipt_present:b,completion_gate_hard:$==="remote-runner-hard-gate",matched_return_packets:d.matched_return_packets,posted_return_packets:d.posted_return_packets,latest_event_ref:d.latest_event_ref,event_log_hash:d.event_log_hash,advisory:m==="pass"?"posted return found; expected receipt present":d.verdict==="pass"&&b===!1?`return packet posted but expected receipt missing at ${f}`:$==="remote-runner-hard-gate"?"remote runner completion must stop until the seat emits a return packet":"local advisory only; write the receipt and emit the return packet so the next seat can wake",authority_boundary:{check_can_authorize:!1,check_can_execute:!1,check_can_write:!1,check_can_post_return:!1,check_can_merge:!1,check_can_close:!1,check_can_grant:!1,check_can_write_global_ledger:!1}};if(console.log(n.json?JSON.stringify(w,null,2):Yl(w)),$==="remote-runner-hard-gate"&&m!=="pass")process.exit(1)}async function Ey(r,n){if(r[1]!=="doctor")throw Error("rig verb must be: doctor");let e=br(n);await hr(e);let _=[he(e),$t(e),Se(e),M(e,"docs","work","tasks")].filter((m)=>!or(m));if(_.length>0)throw Error(`rig doctor failed; missing: ${_.map((m)=>cr(e,m)).join(", ")}`);let c=await lr(e,I(n,"at")),o=(await K4(e)).filter((m)=>m.project_id!==c.project_id);if(o.length>0)throw Error(`rig doctor failed; session project_id mismatch: ${o.map((m)=>String(m.session_id??"unknown")).join(", ")}`);let $=await U8(e,c.project_id);if($.length>0)throw Error(`rig doctor failed; roster/session integrity: ${$.join("; ")}`);let g=X$("git",["-C",e,"rev-parse","--is-inside-work-tree"],{encoding:"utf8"});if(!(g.status===0&&g.stdout.trim()==="true"))console.log("rig_doctor: warn git_repository=missing \u2014 generated task validations (git diff --check) cannot run; fix: git init && git add -A && git commit -m init");let f=X$("git",["--version"],{encoding:"utf8"}),b=f.status===0?/(\d+)\.(\d+)/.exec(f.stdout):null;if(b){let m=Number(b[1]),w=Number(b[2]);if(m<2||m===2&&w<40)console.log(`rig_doctor: warn git_version=${b[0]} below documented minimum 2.40`)}else console.log("rig_doctor: warn git_version=unknown \u2014 git not found on PATH");console.log(`rig_doctor: pass project_id=${c.project_id} roster_session_integrity=pass`)}async function W8(r,n){let t=r[1];if(t!=="view"&&t!=="preview")throw Error("timeline verb must be one of: view, preview");let e=br(n),i={scope:Fl(n),since:I(n,"since")??null,until:I(n,"until")??null,lane:I(n,"lane")??null,seat:I(n,"seat")??null,from:I(n,"from")??null,to:I(n,"to")??null,role:I(n,"role")??null,action:I(n,"action")??null,match:I(n,"match")??null,limit:Ii(n.limit,"limit",20),computedAt:Ur(n)};if(t==="preview"){await J8(e,n,i);return}let _=await j4(e,i),c=Hy(n);if(c==="json"){console.log(JSON.stringify(_,null,2));return}console.log(c==="markdown"?fy(_):dy(_))}function E8(r){let n=Ii(r.port,"port",4174);if(n>65535)throw Error("--port must be between 1 and 65535");return n}function j8(r){let n=r.trim().toLowerCase();if(n==="127.0.0.1"||n==="localhost"||n==="::1")return n;throw Error("--host for timeline preview must be loopback-only in v0: use 127.0.0.1, localhost, or ::1")}async function J8(r,n,t){let e=j8(I(n,"host")??"127.0.0.1"),i=E8(n),_=Bun.serve({hostname:e,port:i,fetch:(c)=>my(c,()=>j4(r,t))});return console.log(`etiquette timeline preview listening on http://${_.hostname}:${_.port}/`),console.log("boundary: read-only loopback GET/HEAD/OPTIONS surface; no auth, hosted backend, execution, write-back, grants, merge, close, or signing"),new Promise(()=>{})}async function A8(r,n){let t=r[1],e=br(n);if(t==="view"){let _=await ye(e,{since:I(n,"since")??null,until:I(n,"until")??null,lane:I(n,"lane")??null,seat:I(n,"seat")??null,from:I(n,"from")??null,to:I(n,"to")??null,role:I(n,"role")??null,action:I(n,"action")??null,match:I(n,"match")??null,kind:Vl(n),limit:Ii(n.limit,"limit",20),computedAt:Ur(n)}),c=Hy(n);if(c==="json"){console.log(JSON.stringify(_,null,2));return}console.log(c==="markdown"?ey(_):iy(_));return}await hr(e);let i=await Oi(e);if(t==="status"){let _=r[2]?Number.parseInt(r[2],10):20,c=Number.isFinite(_)?_:20;console.log(l$(i.slice(-c)));return}if(t==="inbox"){let _=D(n,"addressee"),c=hn(await un(e),_,"--addressee"),u=c.seat,o=i.filter(($)=>$.to===u||$.next_owner===u);console.log([c.aliasUsed?`addressee_alias: ${_} -> ${u}`:null,l$(o)].filter(($)=>$!==null).join(`
|
|
774
|
-
`));return}throw Error("bus verb must be one of: status, inbox, view")}async function M8(r){let n=br(r);await hr(n);let t=await lr(n,I(r,"at")),e=await Oi(n),i=await Sc(M(n,".etiquette","roster","enrollments"));console.log(["workspace_status:",` project: ${n}`,` project_id: ${t.project_id}`,` events: ${e.length}`,` enrolled_seats: ${i.length}`," authority_boundary: read_only_without_grant"].join(`
|
|
775
|
-
`))}function P8(r){let n=r.toLowerCase();if(n.includes("unsupported content type"))return"unsupported_content_type";if(n.includes("content type"))return"tool_result_transport_error";if(n.includes("render"))return"rendering_error";return"unknown_runner_glitch"}function k8(r,n){let t=I(r,"severity");if(t){if(t!=="info"&&t!=="warning"&&t!=="blocked")throw Error("--severity must be one of: info, warning, blocked");return t}return n==="unknown_runner_glitch"?"info":"warning"}function X8(r){return r==="pass"?"info":"warning"}function G8(r){if(r==="pass")return"none";if(r==="unposted_return")return"emit_return_packet";return"write_and_emit_return_packet"}function V8(r,n){if(!r||r.length!==n.length)return!1;return r.every((t,e)=>t===n[e])}function jy(r,n){let t=r[n];return typeof t==="number"&&Number.isFinite(t)?t:void 0}async function F8(r){let n=await En(r);if(!n)return[];return n.split(`
|
|
776
|
-
`).map((t)=>t.trim()).filter(Boolean).map((t)=>JSON.parse(t))}function l8(r,n){let t=r.filter((e)=>F(e,"schema")==="no-return-diagnostic.v0"&&F(e,"task")===n.task&&F(e,"seat")===n.seat&&V8(V$(e,"expected_roles"),n.expectedRoles)&&F(e,"verdict")===n.verdict&&F(e,"severity")===n.severity&&jy(e,"matched_return_packets")===n.matchedReturnPackets&&jy(e,"posted_return_packets")===n.postedReturnPackets&&F(e,"next_action")===n.nextAction);return t.length>0?t[t.length-1]:null}async function v8(r,n){let t=r[1],e=br(n);if(t==="no-return"){if(!gl(e))throw Error("diagnostics no-return requires an initialized local Etiquette project; run etiquette init --project <path> first");let w=I(n,"task")??$r(r,2,"task"),O=D(n,"seat");X(w,"--task"),X(O,"--seat");let q=hn(await un(e),O),T=q.seat,R=By(n),j=await ye(e,{lane:w,from:T,kind:"packets",limit:Ii(n.limit,"limit",50),computedAt:Ur(n)}),J=A4(j,{task:w,seat:T,expectedRoles:R}),k=X8(J.verdict),Q=G8(J.verdict),L=M(e,".etiquette","diagnostics","no-return.ndjson"),Y=l8(await F8(L),{task:w,seat:T,expectedRoles:R,verdict:J.verdict,severity:k,matchedReturnPackets:J.matched_return_packets.length,postedReturnPackets:J.posted_return_packets.length,nextAction:Q});if(Y){let se={...Y,deduped:!0,diagnostic_ref:cr(e,L)};if(n.json){console.log(JSON.stringify(se,null,2));return}console.log([`no_return_diagnostic: ${F(Y,"diagnostic_id")??"existing"}`,`event: ${F(Y,"event_ref")??"existing"}`,`verdict: ${J.verdict}`,`severity: ${k}`,`task: ${w}`,`seat: ${T}`,`diagnostic_ref: ${se.diagnostic_ref}`,"deduped: true","can_authorize: false",`next_action: ${Q}`].join(`
|
|
777
|
-
`));return}await _r(Wc(L),{recursive:!0});let V=await Pr(e,"no_return_diagnostic",{diagnostic_schema:"no-return-diagnostic.v0",task:w,seat:T,seat_alias:q.aliasUsed?O:null,expected_roles:R,verdict:J.verdict,severity:k,matched_return_packets:J.matched_return_packets.length,posted_return_packets:J.posted_return_packets.length,latest_event_ref:J.latest_event_ref,event_log_hash:J.event_log_hash,next_action:Q,authority_boundary:{diagnostic_can_authorize:!1,diagnostic_can_merge:!1,diagnostic_can_close:!1,diagnostic_can_promote:!1,diagnostic_can_post_return:!1,diagnostic_can_write_global_ledger:!1}},n),Sr={schema:"no-return-diagnostic.v0",diagnostic_id:`no-return-${V.seq}`,event_ref:V.event_ref,created_at:V.created_at,task:w,seat:T,seat_alias:q.aliasUsed?O:null,expected_roles:R,verdict:J.verdict,severity:k,matched_return_packets:J.matched_return_packets.length,posted_return_packets:J.posted_return_packets.length,latest_event_ref:J.latest_event_ref,event_log_hash:J.event_log_hash,next_action:Q,authority_boundary:{diagnostic_can_authorize:!1,diagnostic_can_merge:!1,diagnostic_can_close:!1,diagnostic_can_promote:!1,diagnostic_can_post_return:!1,diagnostic_can_write_global_ledger:!1}};await zc(L,`${JSON.stringify(Sr)}
|
|
778
|
-
`);let ur={...Sr,deduped:!1,diagnostic_ref:cr(e,L)};if(n.json){console.log(JSON.stringify(ur,null,2));return}console.log([`no_return_diagnostic: ${Sr.diagnostic_id}`,`event: ${V.event_ref}`,`verdict: ${J.verdict}`,`severity: ${k}`,`task: ${w}`,`seat: ${T}`,`diagnostic_ref: ${ur.diagnostic_ref}`,"can_authorize: false",`next_action: ${Q}`].join(`
|
|
779
|
-
`));return}if(await hr(e),t!=="runner-glitch")throw Error("diagnostics verb must be one of: runner-glitch, no-return");let i=I(n,"runner")??"codex",_=D(n,"symptom"),c=I(n,"session"),u=I(n,"command-ref");if(X(i,"--runner"),H(_,"--symptom"),c){X(c,"--session");let w=M(e,"docs","work","sessions",c,"session.json");if(!or(w))throw Error(`session does not exist: ${c}`)}if(u)H(u,"--command-ref");let o=P8(_),$=k8(n,o),g=await Pr(e,"runner_glitch_diagnostic",{diagnostic_schema:"runner-glitch-diagnostic.v0",runner:i,kind:o,severity:$,symptom:_,command_ref:u??null,session_id:c??null,next_action:"verify_underlying_command_directly",authority_boundary:{diagnostic_can_authorize:!1,diagnostic_can_merge:!1,diagnostic_can_close:!1,diagnostic_can_promote:!1,diagnostic_can_write_global_ledger:!1}},n),d={schema:"runner-glitch-diagnostic.v0",diagnostic_id:`runner-glitch-${g.seq}`,event_ref:g.event_ref,created_at:g.created_at,runner:i,kind:o,severity:$,symptom:_,command_ref:u??null,session_id:c??null,next_action:"verify_underlying_command_directly",authority_boundary:{diagnostic_can_authorize:!1,diagnostic_can_merge:!1,diagnostic_can_close:!1,diagnostic_can_promote:!1,diagnostic_can_write_global_ledger:!1}},f=M(e,".etiquette","diagnostics","runner-glitches.ndjson");await zc(f,`${JSON.stringify(d)}
|
|
780
|
-
`);let b=null;if(c){let w=[`Runner diagnostic ${d.diagnostic_id} recorded ${o};`,"verify underlying command directly before treating client output as truth.",u?`Command ref: ${u}.`:""].filter(Boolean).join(" "),O=await Rc({projectRoot:e,sessionId:c,section:"retry",message:w,at:I(n,"at")});b=cr(e,O.runbookPath)}let m={...d,diagnostic_ref:cr(e,f),session_note_ref:b};if(n.json){console.log(JSON.stringify(m,null,2));return}console.log([`runner_glitch_diagnostic: ${d.diagnostic_id}`,`event: ${g.event_ref}`,`kind: ${o}`,`severity: ${$}`,`runner: ${i}`,`diagnostic_ref: ${m.diagnostic_ref}`,`session_note_ref: ${b??"none"}`,"can_authorize: false","next_action: verify_underlying_command_directly"].join(`
|
|
781
|
-
`))}async function sy(r,n){let t=r[0];switch(t){case"setup":await Tl(n);return;case"handoff":await f8(n);return;case"init":await _8(n);return;case"bootstrap":await g8(r,n);return;case"whereami":await y8(n);return;case"resume":await R8(r,n);return;case"join":await b8(n);return;case"pickup":await q8(n);return;case"enter":await d8(r,n);return;case"audit":await T8(r,n);return;case"roster":await N8(r,n);return;case"post":await L8(n);return;case"notify":await z8(r,n);return;case"return":await S8(r,n);return;case"retire":await Zy($r(r,1,"path"),n);return;case"rig":await Ey(r,n);return;case"doctor":await Ey(["rig","doctor"],n);return;case"bus":await A8(r,n);return;case"timeline":await W8(r,n);return;case"status":await M8(n);return;case"diagnostics":await v8(r,n);return;case"trash":await e8(r,n);return;default:throw Error(`unknown local workflow command: ${t}`)}}async function rq(r,n){let t=Zn(r);await hr(t);let e=n?hn(await un(t),n):null,i=e?.seat??null,_=await En(M(t,"docs","work","BOARD.md")),c=await Oi(t);return[`console_board: ${i??"all-seats"}`,e?.aliasUsed?`seat_alias: ${e.requestedSeat} -> ${i}`:null,"",_?.trim()||"No docs/work/BOARD.md found.","","Recent events:",l$(c.slice(-10)),"","authority_boundary: read-only; no grants, merge, or close"].filter((o)=>o!==null).join(`
|
|
782
|
-
`)}import{existsSync as e0}from"fs";import{mkdir as Lx,readdir as Dq,readFile as yq,writeFile as zx}from"fs/promises";import{dirname as Wx,extname as _0,join as jr,relative as I9,resolve as t0}from"path";import{createHash as H8}from"crypto";import{readFile as B8}from"fs/promises";import{extname as Q8}from"path";function Y8(r){if(r.source_refs.length===0)return["no_durable_evidence"];return r.source_refs.flatMap((t)=>tr(t.ref))}function a4(r,n={}){let t=new Set(r.risk_flags);for(let e of Y8(r))t.add(e);for(let e of[r.title,r.summary,r.query])for(let i of tr(e))t.add(i);if(n.localPrivate)t.delete("contains_private_context");return[...t]}function nq(r){if(r.scope.org_id)X(r.scope.org_id,"scope.org_id");if(r.scope.workspace_id)X(r.scope.workspace_id,"scope.workspace_id");if(r.scope.repo_ref)H(r.scope.repo_ref,"scope.repo_ref");if(r.scope.lane_ref)H(r.scope.lane_ref,"scope.lane_ref");H(r.title,"title"),H(r.summary,"summary"),H(r.why_it_matters,"why_it_matters");for(let n of r.evidence_refs)H(n.ref,`evidence_ref:${n.type}`)}var tq=["prompt","skill","schema","adapter","ui","runbook","infra","other"],iq=["ergonomic","evidence","authority","recovery","unknown"],eq=["active","nascent","stale","unknown"],K8=["keep","consolidate","quarantine","delete-ready","blocked"],_q=["ordinary-run","onboarding","recovery","auth-drift","single-writer-or-drain","receipt-verification","degraded-fail-closed"];function a8(r){return H8("sha256").update(JSON.stringify(r)).digest("hex").slice(0,16)}function a$(r,n){if(typeof r!=="object"||r===null||Array.isArray(r))throw Error(`${n} must be an object`);return r}function Z4(r,n){let t=r[n];if(typeof t!=="string"||t.trim().length===0)throw Error(`${n} must be a non-empty string`);return t.trim()}function K$(r,n){let t=r[n];if(t===void 0)return;if(typeof t!=="string"||t.trim().length===0)throw Error(`${n} must be a non-empty string when present`);return t.trim()}function cq(r,n){let t=r[n];if(!Array.isArray(t)||t.some((e)=>typeof e!=="string"||e.trim().length===0))throw Error(`${n} must be a non-empty string array`);return t.map((e)=>e.trim())}function xn(r,n,t){if(typeof n!=="string"||!r.includes(n))throw Error(`${t} must be one of: ${r.join(", ")}`);return n}function Z8(r,n,t){if(!Array.isArray(n)||n.length===0)throw Error(`${t} must be a non-empty array`);return n.map((e,i)=>xn(r,e,`${t}[${i}]`))}function je(r,n){if(H(r,n),r.startsWith("/")||r.startsWith("\\")||/^[A-Za-z]:[\\/]/.test(r))throw Error(`${n} must be opaque or repo-relative, not an absolute local path`);if(/[a-z][a-z0-9+.-]*:\/\//i.test(r))throw Error(`${n} must not be a URL`)}function C8(r){let n=a$(r,"authority"),t={can_grant:n.can_grant,can_close_lane:n.can_close_lane,can_merge:n.can_merge,can_delete:n.can_delete};for(let[e,i]of Object.entries(t))if(i!==!1)throw Error(`authority.${e} must be false`);return t}function x8(r){let n=a$(r,"harness_prune_receipt"),t={schema:xn(["harness-prune-receipt.v0"],n.schema,"schema"),object_id:Z4(n,"object_id"),object_class:xn(tq,n.object_class,"object_class"),authority_class:xn(iq,n.authority_class,"authority_class"),consumer_status:xn(eq,n.consumer_status,"consumer_status"),proposed_disposition:xn(K8,n.proposed_disposition,"proposed_disposition"),evidence_refs:cq(n,"evidence_refs"),canary_set:Z8(_q,n.canary_set,"canary_set"),quarantine_until:K$(n,"quarantine_until"),next_owner:Z4(n,"next_owner"),authority:C8(n.authority)};return $q(t),t}function p8(r){let n=a$(r,"harness_inventory");if(xn(["harness-inventory.v0"],n.schema,"schema")!=="harness-inventory.v0")throw Error("schema must be harness-inventory.v0");let t=n.items;if(!Array.isArray(t)||t.length===0)throw Error("items must be a non-empty array");let e=t.map((_,c)=>{let u=a$(_,`items[${c}]`),o={object_id:Z4(u,"object_id"),object_class:xn(tq,u.object_class,`items[${c}].object_class`),authority_class:xn(iq,u.authority_class,`items[${c}].authority_class`),consumer_status:xn(eq,u.consumer_status,`items[${c}].consumer_status`),evidence_refs:cq(u,"evidence_refs"),roadmap_ref:K$(u,"roadmap_ref"),last_seen_ref:K$(u,"last_seen_ref")};return s8(o,`items[${c}]`),o}),i=K$(n,"generated_by");if(i)X(i,"generated_by");return{schema:"harness-inventory.v0",...i?{generated_by:i}:{},items:e}}async function uq(r){let n=await B8(r,"utf-8");if(Q8(r).toLowerCase()===".json")return JSON.parse(n);return p(n)}function oq(r,n){for(let[t,e]of r.entries())je(e,`${n}[${t}]`)}function s8(r,n){if(je(r.object_id,`${n}.object_id`),oq(r.evidence_refs,`${n}.evidence_refs`),r.roadmap_ref)je(r.roadmap_ref,`${n}.roadmap_ref`);if(r.last_seen_ref)je(r.last_seen_ref,`${n}.last_seen_ref`)}function r9(r){if(r.proposed_disposition==="delete-ready")return[..._q];return["ordinary-run","receipt-verification"]}function Z$(r){let n=r9(r),t=[...new Set(r.canary_set)],e=n.filter((i)=>!t.includes(i));return{schema:"harness-canary-result.v0",object_id:r.object_id,required_canaries:n,observed_canaries:t,missing_canaries:e,verdict:e.length===0?"pass":"blocked"}}function $q(r){if(je(r.object_id,"object_id"),oq(r.evidence_refs,"evidence_refs"),X(r.next_owner,"next_owner"),r.quarantine_until)je(r.quarantine_until,"quarantine_until");let n=r.evidence_refs.flatMap((t)=>tr(t));if(n.length>0)throw Error(`evidence_refs contain restricted shared content: ${[...new Set(n)].join(", ")}`)}function n9(r){if($q(r),r.consumer_status==="nascent"&&r.proposed_disposition==="delete-ready")throw Error("nascent harness surfaces must be quarantined or kept, not delete-ready");if((r.authority_class==="authority"||r.authority_class==="recovery")&&r.proposed_disposition==="delete-ready")throw Error("authority and recovery surfaces cannot be delete-ready in V0; route principal-gated obsolescence separately");if(r.authority_class==="unknown"&&r.proposed_disposition!=="blocked")throw Error("unknown authority class must use proposed_disposition: blocked");if(r.consumer_status==="unknown"&&r.proposed_disposition!=="blocked")throw Error("unknown consumer status must use proposed_disposition: blocked");if(r.proposed_disposition==="delete-ready"){if(r.authority_class!=="ergonomic")throw Error("delete-ready is only valid for ergonomic scaffolding in V0");if(r.consumer_status!=="stale")throw Error("delete-ready requires consumer_status: stale");if(!r.quarantine_until)throw Error("delete-ready requires quarantine_until")}let n=Z$(r);if(n.verdict!=="pass")throw Error(`missing canaries: ${n.missing_canaries.join(", ")}`)}async function C4(r){return x8(await uq(r))}async function C$(r){let n=await C4(r);return n9(n),{schema:"harness-prune-receipt-validation.v0",receipt_id:`harness-prune:${a8(n)}`,object_id:n.object_id,verdict:"valid",proposed_disposition:n.proposed_disposition,canary:Z$(n),authority_boundary:{...n.authority,receipt_can_authorize_pruning:!1,human_disposition_required:!0}}}function t9(r){if(r.authority_class==="unknown"||r.consumer_status==="unknown")return{suggested_disposition:"blocked",reason:"authority or consumer reach is unknown"};if(r.consumer_status==="active")return{suggested_disposition:"keep",reason:"active consumer evidence exists"};if(r.consumer_status==="nascent")return{suggested_disposition:"quarantine",reason:"roadmap-aware grace: built ahead of consumer"};if(r.authority_class==="authority"||r.authority_class==="recovery")return{suggested_disposition:"blocked",reason:"authority and recovery surfaces require principal-gated obsolescence review"};if(r.authority_class==="ergonomic"&&r.consumer_status==="stale")return{suggested_disposition:"quarantine",reason:"stale ergonomic scaffolding; pruning receipt and canary-without required before delete-ready"};return{suggested_disposition:"consolidate",reason:"stale non-authority surface should be simplified before deletion"}}function i9(r){let n={keep:0,consolidate:0,quarantine:0,"delete-ready":0,blocked:0},t=r.items.map((e)=>{let i=t9(e);return n[i.suggested_disposition]+=1,{...e,...i}});return{schema:"harness-inventory-report.v0",item_count:t.length,counts:n,items:t,authority_boundary:{inventory_can_delete:!1,inventory_can_grant:!1,inventory_can_close_lane:!1,pruning_receipt_required:!0,human_disposition_required:!0}}}async function x$(r){return i9(p8(await uq(r)))}import{existsSync as dq}from"fs";import{readdir as e9,readFile as _9}from"fs/promises";import{extname as fq,join as Je,relative as c9,resolve as Ae}from"path";var x4="agent-owner-card-source.v0",u9="agent-owner-card.v0",o9="agent-owner-card-projection.v0",$9=["model_switch","new_failure_mode","authority_change","seat_readiness_stale"];function bq(r){let n=r??new Date().toISOString();if(!Number.isFinite(Date.parse(n)))throw Error("--at must be an ISO-8601 timestamp");return new Date(n).toISOString()}function g9(r){return typeof r==="object"&&r!==null&&!Array.isArray(r)}function p4(r,n){if(!g9(r))throw Error(`${n} must be an object`);return r}function pn(r,n){let t=r[n];if(typeof t!=="string"||t.trim().length===0)throw Error(`${n} is required`);return mq(t,n),t.trim()}function wq(r,n){let t=r[n];if(t===void 0)return[];if(!Array.isArray(t))throw Error(`${n} must be a string array`);return t.map((e,i)=>{if(typeof e!=="string"||e.trim().length===0)throw Error(`${n}[${i}] must be a non-empty string`);return mq(e,`${n}[${i}]`),e.trim()})}function p$(r,n){let t=wq(r,n);if(t.length===0)throw Error(`${n} must contain at least one item`);return t}function s$(r,n){if(!/^[A-Za-z0-9][A-Za-z0-9_-]{0,63}$/.test(r))throw Error(`${n} must be an opaque id using letters, numbers, hyphen, or underscore`)}function mq(r,n){if(r.length>512)throw Error(`${n} must be 512 characters or fewer`);if(/[\u0000-\u001f]/.test(r))throw Error(`${n} must not contain control characters`)}function gq(r,n){if(!Number.isFinite(Date.parse(r)))throw Error(`${n} must be an ISO-8601 timestamp`)}function d9(r){if(!Array.isArray(r)||r.length===0)throw Error("failure_modes must contain at least one item");return r.map((n,t)=>{let e=p4(n,`failure_modes[${t}]`),i=pn(e,"id");s$(i,`failure_modes[${t}].id`);let _=pn(e,"description"),c=p$(e,"evidence_refs");return{id:i,description:_,evidence_refs:c}})}function f9(r){let n=p4(r,"agent owner card source");if(n.schema!==x4)throw Error(`schema must be ${x4}`);if("current_occupant"in n||"occupant"in n||"model_id"in n||"model_tier"in n)throw Error("current occupant and model posture are derived from seat-readiness, not authored on the owner card source");let t=pn(n,"seat_id");s$(t,"seat_id");let e=pn(n,"owner_principal");s$(e,"owner_principal");let i=pn(n,"maintainer");s$(i,"maintainer");let _=p4(n.review,"review"),c=pn(_,"last_reviewed_at"),u=pn(_,"stale_after");return gq(c,"review.last_reviewed_at"),gq(u,"review.stale_after"),{schema:x4,seat_id:t,job:pn(n,"job"),owner_principal:e,maintainer:i,diet_refs:p$(n,"diet_refs"),authority_contract_ref:pn(n,"authority_contract_ref"),allowed_work:p$(n,"allowed_work"),forbidden_work:p$(n,"forbidden_work"),review:{cadence:pn(_,"cadence"),last_reviewed_at:new Date(c).toISOString(),stale_after:new Date(u).toISOString(),event_triggers:wq(_,"event_triggers")},failure_modes:d9(n.failure_modes)}}async function b9(r){let n=await _9(r,"utf-8");if(fq(r).toLowerCase()===".json")return JSON.parse(n);return p(n)}function s4(r,n){let t=c9(Ae(r),Ae(n));if(t.length===0||t.startsWith("..")||t.includes("\\"))throw Error(`path must stay inside project root: ${n}`);return t}function w9(r){return[...new Set(r)]}function m9(r,n){if(!r)return null;return{source:"seat-readiness.v0.1",readiness_ref:n,seat:r.seat,execution_surface:r.execution_surface,model_tier:r.model_tier,effective_model_tier:r.effective_model_tier,model_id:r.model_id??null,operational_status:r.operational_status,capability_trusted:r.capability_trusted,is_stale:r.is_stale,last_heartbeat_at:r.last_heartbeat_at,stale_after:r.stale_after}}function Iq(){return{read_model_only:!0,can_authorize:!1,can_attach_grant:!1,can_change_owner:!1,can_edit_authority:!1,can_mutate_readiness:!1,can_merge:!1,can_close:!1}}async function n0(r){let n=Ae(r.projectRoot),t=bq(r.at),e=Ae(r.manifestPath),i=f9(await b9(e)),_=s4(n,e),c=r.statePath?s4(n,Ae(r.statePath)):".etiquette/state/seat-readiness.json",u=null,o=[];try{let g=await di(n,r.statePath);if(u=De(g,t),u.seat!==i.seat_id)o.push("seat_readiness_mismatch");if(u.is_stale)o.push("seat_readiness_stale")}catch(g){o.push(`seat_readiness_unavailable:${g instanceof Error?g.message:String(g)}`)}let $=Date.parse(t)>Date.parse(i.review.stale_after);if($)o.push("owner_card_review_stale");return{schema:u9,generated_at:t,source_ref:_,seat_id:i.seat_id,job:i.job,accountability:{owner_principal:i.owner_principal,maintainer:i.maintainer,operator_principal_scope:"per_run_receipts_only",owner_is_not_operator:!0},diet_refs:i.diet_refs,current_occupant:m9(u,c),authority:{source_ref:i.authority_contract_ref,allowed_work:i.allowed_work,forbidden_work:i.forbidden_work,derived_from_contract:!0,card_may_edit_authority:!1},review:{cadence:i.review.cadence,last_reviewed_at:i.review.last_reviewed_at,stale_after:i.review.stale_after,is_stale:$,event_driven_triggers:w9([...$9,...i.review.event_triggers])},failure_modes:i.failure_modes,warnings:o,authority_boundary:Iq()}}async function r0(r){if(!dq(r))return[];let n=await e9(r,{withFileTypes:!0});return(await Promise.all(n.map(async(e)=>{let i=Je(r,e.name);if(e.isDirectory())return r0(i);return e.isFile()?[i]:[]}))).flat().sort()}async function Oq(r){let n=Ae(r.projectRoot),t=bq(r.at),e=[Je(n,".etiquette","seats","owner-card.yaml"),Je(n,".etiquette","seats","owner-card.yml"),Je(n,".etiquette","seats","owner-card.json"),...await r0(Je(n,".etiquette","seats","owner-cards")),...await r0(Je(n,"docs","work","seats","owner-cards"))].filter((c,u,o)=>{let $=fq(c).toLowerCase();return dq(c)&&[".yaml",".yml",".json"].includes($)&&o.indexOf(c)===u}),i=[],_=[];for(let c of e)try{i.push(await n0({projectRoot:n,manifestPath:c,statePath:r.statePath,at:t}))}catch(u){_.push({ref:s4(n,c),reason:u instanceof Error?u.message:String(u)})}return{schema:o9,generated_at:t,cards:i,validation_errors:_,authority_boundary:Iq()}}function O9(r){let n=r??new Date().toISOString();if(!Number.isFinite(Date.parse(n)))throw Error("--at must be an ISO-8601 timestamp");return new Date(n).toISOString()}function Uq(r){return typeof r==="object"&&r!==null&&!Array.isArray(r)}function Jn(r,n){let t=r[n];return typeof t==="string"&&t.trim().length>0?t.trim():void 0}async function U9(r){let n=await yq(r,"utf-8");if(_0(r).toLowerCase()===".json")return JSON.parse(n);return p(n)}async function ng(r,n){let t=t0(r),e=jr(t,"docs","work","ledger","LEDGER.md"),i=await i0(e),_=i?i.split(`
|
|
783
|
-
`).map((m)=>m.trim()).filter((m)=>m.startsWith("- ")):[],c=await rg(jr(t,"docs","work","receipts")),u=await rg(jr(t,"docs","work","tasks")),o=await rg(jr(t,".etiquette","outbox")),$=await h9(jr(t,".etiquette","provisioning","events")),g=await R9(t),d=await Oq({projectRoot:t,at:n}),f=await i0(jr(t,".etiquette","state","seat-readiness.json")),b=f?JSON.parse(f):null;return{schema:"console-read-model.v0",generated_at:O9(n),project_ref:".",counts:{ledger_entries:_.length,receipts:c,tasks:u,outbox_items:o,provisioning_events:$.length,owner_cards:d.cards.length},seat_readiness:b,owner_cards:d,provisioning_events:$.slice(-8),harness_maintenance:g,recent_ledger:_.slice(-8),authority_boundary:{read_only:!0,can_emit_events:!1,can_attach_grants:!1,can_merge:!1,can_close:!1}}}async function i0(r){try{return await yq(r,"utf-8")}catch(n){if(n.code==="ENOENT")return null;throw n}}async function rg(r){if(!e0(r))return 0;let n=await Dq(r,{withFileTypes:!0});return(await Promise.all(n.map(async(e)=>{let i=jr(r,e.name);if(e.isDirectory())return rg(i);return e.isFile()?1:0}))).reduce((e,i)=>e+i,0)}async function c0(r){if(!e0(r))return[];let n=await Dq(r,{withFileTypes:!0});return(await Promise.all(n.map(async(e)=>{let i=jr(r,e.name);if(e.isDirectory())return c0(i);return e.isFile()?[i]:[]}))).flat().sort()}async function h9(r){let n=(await c0(r)).filter((e)=>[".yaml",".yml",".json"].includes(_0(e).toLowerCase()));return(await Promise.all(n.map(async(e)=>{let i=await U9(e);if(!Uq(i)||i.schema!=="provisioning-event.v0")return null;let _=i.target;if(!Uq(_))return null;let c=Jn(i,"event_id"),u=Jn(i,"created_at"),o=Jn(i,"event_kind"),$=Jn(i,"plan_ref"),g=Jn(i,"terraform_ref"),d=Jn(i,"summary"),f=Jn(_,"provider"),b=Jn(_,"substrate"),m=Jn(_,"cluster_name"),w=Jn(_,"region"),O=Jn(_,"namespace");if(!c||!u||!o||!$||!g||!d||!f||!b||!m||!w||!O)return null;return{event_id:c,created_at:u,event_kind:o,plan_ref:$,terraform_ref:g,target:{provider:f,substrate:b,cluster_name:m,region:w,namespace:O},summary:d}}))).filter((e)=>e!==null).sort((e,i)=>e.created_at.localeCompare(i.created_at))}async function R9(r){let n={keep:0,consolidate:0,quarantine:0,"delete-ready":0,blocked:0,inventory_items:0,pruning_receipts:0,validation_errors:0},t=[],e=[],i=[],_=[jr(r,".etiquette","harness","inventory.yaml"),jr(r,".etiquette","harness","inventory.yml"),jr(r,"docs","work","harness-inventory.yaml"),jr(r,"docs","work","harness-inventory.yml"),jr(r,"docs","work","harness","inventory.yaml"),jr(r,"docs","work","harness","inventory.yml")].filter((o,$,g)=>e0(o)&&g.indexOf(o)===$);for(let o of _){let $=Rq(r,o);try{let g=await x$(o);t.push({manifest_ref:$,item_count:g.item_count,counts:g.counts}),n.inventory_items+=g.item_count;for(let d of Object.keys(g.counts))n[d]+=g.counts[d]}catch(g){i.push({ref:$,reason:hq(g)})}}let c=[jr(r,".etiquette","harness","receipts"),jr(r,"docs","work","harness","receipts"),jr(r,"docs","work","receipts")],u=[...new Set((await Promise.all(c.map(c0))).flat())].filter((o)=>[".yaml",".yml",".json"].includes(_0(o).toLowerCase()));for(let o of u){if(!(await i0(o))?.includes("harness-prune-receipt.v0"))continue;let g=Rq(r,o);try{let d=await C$(o);e.push({receipt_ref:g,object_id:d.object_id,proposed_disposition:d.proposed_disposition,canary_verdict:d.canary.verdict,human_disposition_required:!0}),n.pruning_receipts+=1}catch(d){i.push({ref:g,reason:hq(d)})}}return n.validation_errors=i.length,{schema:"harness-maintenance-console-projection.v0",counts:n,inventory_reports:t,pruning_receipts:e,validation_errors:i,authority_boundary:{read_only:!0,can_prune:!1,can_delete:!1,can_grant:!1,can_close_lane:!1}}}function hq(r){return r instanceof Error?r.message:String(r)}function Rq(r,n){let t=I9(t0(r),t0(n));if(t.length===0||t.startsWith("..")||t.includes("\\"))throw Error(`path must stay inside project root: ${n}`);return t}var qq=new Set(["snapshot","serve","board"]);function Tq(r){return r==="console"}function y9(r){if(r===void 0)return 4173;let n=mn(r,"port");if(n<1||n>65535)throw Error("--port must be between 1 and 65535");return n}function q9(r){return["console_read_model:",` generated_at: ${r.generated_at}`,` ledger_entries: ${r.counts.ledger_entries}`,` receipts: ${r.counts.receipts}`,` tasks: ${r.counts.tasks}`,` outbox_items: ${r.counts.outbox_items}`,` provisioning_events: ${r.counts.provisioning_events}`,` owner_cards: ${r.counts.owner_cards}`,` harness_inventory_items: ${r.harness_maintenance.counts.inventory_items}`,` harness_pruning_receipts: ${r.harness_maintenance.counts.pruning_receipts}`,` harness_validation_errors: ${r.harness_maintenance.counts.validation_errors}`,` read_only: ${String(r.authority_boundary.read_only)}`].join(`
|
|
784
|
-
`)}function Tr(r){return r.replace(/&/g,"&").replace(/</g,"<").replace(/>/g,">").replace(/"/g,""")}function T9(r){let n=r.seat_readiness?.seat?String(r.seat_readiness.seat):"none",t=r.recent_ledger.length>0?r.recent_ledger.map((o)=>`<li>${Tr(o.replace(/^- /,""))}</li>`).join(""):"<li>No ledger entries found.</li>",e=r.provisioning_events.length>0?r.provisioning_events.map((o)=>`<li><strong>${Tr(o.target.cluster_name)}</strong> ${Tr(o.event_kind)}`+` \u2014 <code>${Tr(o.plan_ref)}</code></li>`).join(""):"<li>No provisioning events found.</li>",i=r.owner_cards.cards.length>0?r.owner_cards.cards.map((o)=>`<li><strong>${Tr(o.seat_id)}</strong> owned by <code>${Tr(o.accountability.owner_principal)}</code>`+` \u2014 ${Tr(o.job)}`+` \u2014 review stale: ${Tr(String(o.review.is_stale))}`+` \u2014 warnings: ${Tr(o.warnings.join(", ")||"none")}</li>`).join(""):"<li>No owner cards found.</li>",_=r.owner_cards.validation_errors.length>0?r.owner_cards.validation_errors.map((o)=>`<li><code>${Tr(o.ref)}</code> \u2014 ${Tr(o.reason)}</li>`).join(""):"<li>No owner card validation errors found.</li>",c=r.harness_maintenance.pruning_receipts.length>0?r.harness_maintenance.pruning_receipts.map((o)=>`<li><strong>${Tr(o.object_id)}</strong> ${Tr(o.proposed_disposition)}`+` \u2014 canary ${Tr(o.canary_verdict)}`+` \u2014 <code>${Tr(o.receipt_ref)}</code></li>`).join(""):"<li>No harness pruning receipts found.</li>",u=r.harness_maintenance.validation_errors.length>0?r.harness_maintenance.validation_errors.map((o)=>`<li><code>${Tr(o.ref)}</code> \u2014 ${Tr(o.reason)}</li>`).join(""):"<li>No harness validation errors found.</li>";return`<!doctype html>
|
|
785
|
-
<html lang="en">
|
|
786
|
-
<head>
|
|
787
|
-
<meta charset="utf-8">
|
|
788
|
-
<meta name="viewport" content="width=device-width, initial-scale=1">
|
|
789
|
-
<title>Etiquette Console</title>
|
|
790
|
-
<style>
|
|
791
|
-
body { margin: 0; font-family: ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif; color: #1f2937; background: #f8fafc; }
|
|
792
|
-
main { max-width: 980px; margin: 0 auto; padding: 32px 20px 48px; }
|
|
793
|
-
h1 { font-size: 30px; margin: 0 0 8px; letter-spacing: 0; }
|
|
794
|
-
.subtle { color: #64748b; margin: 0 0 24px; }
|
|
795
|
-
.grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(160px, 1fr)); gap: 12px; margin: 18px 0 28px; }
|
|
796
|
-
.metric { border: 1px solid #dbe3ef; border-radius: 8px; padding: 14px; background: #fff; }
|
|
797
|
-
.metric span { display: block; font-size: 13px; color: #64748b; }
|
|
798
|
-
.metric strong { display: block; font-size: 28px; margin-top: 4px; }
|
|
799
|
-
section { margin-top: 28px; }
|
|
800
|
-
code { background: #e2e8f0; padding: 2px 5px; border-radius: 4px; }
|
|
801
|
-
ul { padding-left: 20px; }
|
|
802
|
-
.boundary { border-left: 4px solid #2563eb; padding: 10px 14px; background: #eff6ff; }
|
|
803
|
-
</style>
|
|
804
|
-
</head>
|
|
805
|
-
<body>
|
|
806
|
-
<main>
|
|
807
|
-
<h1>Etiquette Console</h1>
|
|
808
|
-
<p class="subtle">Read-only workspace view generated ${Tr(r.generated_at)}.</p>
|
|
809
|
-
<div class="grid">
|
|
810
|
-
<div class="metric"><span>Ledger entries</span><strong>${r.counts.ledger_entries}</strong></div>
|
|
811
|
-
<div class="metric"><span>Receipts</span><strong>${r.counts.receipts}</strong></div>
|
|
812
|
-
<div class="metric"><span>Tasks</span><strong>${r.counts.tasks}</strong></div>
|
|
813
|
-
<div class="metric"><span>Outbox items</span><strong>${r.counts.outbox_items}</strong></div>
|
|
814
|
-
<div class="metric"><span>Provisioning events</span><strong>${r.counts.provisioning_events}</strong></div>
|
|
815
|
-
<div class="metric"><span>Owner cards</span><strong>${r.counts.owner_cards}</strong></div>
|
|
816
|
-
<div class="metric"><span>Harness inventory</span><strong>${r.harness_maintenance.counts.inventory_items}</strong></div>
|
|
817
|
-
<div class="metric"><span>Pruning receipts</span><strong>${r.harness_maintenance.counts.pruning_receipts}</strong></div>
|
|
818
|
-
<div class="metric"><span>Harness errors</span><strong>${r.harness_maintenance.counts.validation_errors}</strong></div>
|
|
819
|
-
</div>
|
|
820
|
-
<section class="boundary">
|
|
821
|
-
<strong>Authority boundary:</strong> this console cannot emit events, attach grants, merge, or close work.
|
|
822
|
-
</section>
|
|
823
|
-
<section>
|
|
824
|
-
<h2>Seat readiness</h2>
|
|
825
|
-
<p>Current seat: <code>${Tr(n)}</code></p>
|
|
826
|
-
</section>
|
|
827
|
-
<section>
|
|
828
|
-
<h2>Seat ownership</h2>
|
|
829
|
-
<ul>${i}</ul>
|
|
830
|
-
<h3>Validation</h3>
|
|
831
|
-
<ul>${_}</ul>
|
|
832
|
-
</section>
|
|
833
|
-
<section>
|
|
834
|
-
<h2>Recent ledger</h2>
|
|
835
|
-
<ul>${t}</ul>
|
|
836
|
-
</section>
|
|
837
|
-
<section>
|
|
838
|
-
<h2>Provisioning</h2>
|
|
839
|
-
<ul>${e}</ul>
|
|
840
|
-
</section>
|
|
841
|
-
<section>
|
|
842
|
-
<h2>Harness maintenance</h2>
|
|
843
|
-
<p>Keep ${r.harness_maintenance.counts.keep}; consolidate ${r.harness_maintenance.counts.consolidate}; quarantine ${r.harness_maintenance.counts.quarantine}; blocked ${r.harness_maintenance.counts.blocked}; delete-ready ${r.harness_maintenance.counts["delete-ready"]}.</p>
|
|
844
|
-
<h3>Pruning receipts</h3>
|
|
845
|
-
<ul>${c}</ul>
|
|
846
|
-
<h3>Validation</h3>
|
|
847
|
-
<ul>${u}</ul>
|
|
848
|
-
</section>
|
|
849
|
-
</main>
|
|
850
|
-
</body>
|
|
851
|
-
</html>`}async function N9(r,n,t){let e=Bun.serve({hostname:n,port:t,async fetch(i){let _=new URL(i.url);if(i.method!=="GET")return Response.json({error:"method_not_allowed"},{status:405});if(_.pathname==="/api/read-model")return Response.json(await ng(r));if(_.pathname!=="/"&&_.pathname!=="/index.html")return Response.json({error:"not_found"},{status:404});let c=await ng(r);return new Response(T9(c),{headers:{"content-type":"text/html; charset=utf-8"}})}});return console.log(`etiquette console listening on http://${e.hostname}:${e.port}/`),console.log("boundary: read-only GET surface; no grants, events, merge, or close"),new Promise(()=>{})}async function Nq(r,n){let t=r[1];if(!t||!qq.has(t))throw Error(`console verb must be one of: ${[...qq].join(", ")}`);let e=D9(I(n,"project")??process.cwd());if(t==="snapshot"){let i=await ng(e,I(n,"at"));console.log(n.json?JSON.stringify(i,null,2):q9(i));return}if(t==="board"){console.log(await rq(e,I(n,"seat")));return}await N9(e,I(n,"host")??"127.0.0.1",y9(n.port))}Ir();import{mkdir as Sv,writeFile as mg}from"fs/promises";import{join as Ac,relative as Wv,resolve as Ri}from"path";function Lq(r){return[...new Set(r)]}function L9(r){return r.missing.length>0&&r.missing.every((n)=>n==="grant_ref")}function z9(r,n){if(!n)return{supported:null,unsupported:null};return{supported:r.supported_strategies.includes(n),unsupported:r.unsupported_strategies.includes(n)}}function S9(r){if(!r)return null;return r.summary.unexpected_outcomes===0}function zq(r){let n=[],t=[...r.workflow.warnings],e="dispatch_ready",i=null,_=r.requestedStrategy??null,c=z9(r.seat,_),u=S9(r.sandboxReceipt);if(r.envelope.advisory_consensus_claims_authority)e="quarantine_hold",i="quarantine_hold",n.push("advisory_consensus_claims_authority");if(e==="dispatch_ready"&&r.seat.routing_recommendation!=="route_if_policy_allows")e="blocked_by_capability",n.push(`seat_routing_${r.seat.routing_recommendation}`);if(e==="dispatch_ready"&&r.seat.active_workers>=r.seat.max_recommended_workers)e="blocked_by_capability",n.push("seat_at_worker_capacity");if(e==="dispatch_ready"&&_&&c.unsupported&&r.mode.execution.strategy_policy==="required")e="blocked_by_capability",n.push("required_strategy_unsupported");else if(_&&c.unsupported)t.push("requested_strategy_unsupported_downshift_allowed");if(e==="dispatch_ready"&&r.workflow.recommendation==="block")if(L9(r.workflow))e="hold_for_grant",n.push("grant_ref_required");else if(r.workflow.missing.includes("validation_refs")||r.workflow.missing.includes("receipt_ref"))e="blocked_by_validation",n.push(...r.workflow.missing.filter((o)=>o==="validation_refs"||o==="receipt_ref"));else e="quarantine_hold",i="quarantine_hold",n.push(...r.workflow.missing);if(e==="dispatch_ready"&&r.mode.execution.rubric_required&&!r.sandboxReceipt)e="blocked_by_validation",n.push("sandbox_run_receipt_required");if(e==="dispatch_ready"&&u===!1)e="blocked_by_validation",n.push("sandbox_run_receipt_unexpected_outcomes");if(e==="dispatch_ready"&&r.mode.mode_type==="deliberative")i="sabbatical_improvement";return{schema:"operational-dispatch-decision.v0",task_ref:r.envelope.task_ref,seat:r.seat.seat,decision:e,reasons:Lq(n),warnings:Lq(t),profile_hint:i,inputs:{seat_readiness:{operational_status:r.seat.operational_status,routing_recommendation:r.seat.routing_recommendation,capability_trusted:r.seat.capability_trusted,model_tier:r.seat.model_tier,effective_model_tier:r.seat.effective_model_tier,active_workers:r.seat.active_workers,max_recommended_workers:r.seat.max_recommended_workers,is_stale:r.seat.is_stale},workflow_check:{mode_id:r.workflow.mode_id,mode_type:r.workflow.mode_type,recommendation:r.workflow.recommendation,missing:r.workflow.missing,warnings:r.workflow.warnings},strategy:{requested_strategy:_,policy:r.mode.execution.strategy_policy,supported:c.supported,unsupported:c.unsupported},rubric_receipt:{receipt_id:r.sandboxReceipt?.receipt_id??null,unexpected_outcomes:r.sandboxReceipt?.summary.unexpected_outcomes??null,accepted:u}},authority_boundary:{can_dispatch:!1,can_authorize:!1,can_attach_grant:!1,can_execute:!1,consumer_is_engine:!1}}}import{createHash as W9}from"crypto";import{readFile as E9}from"fs/promises";var Sq=["success","partial","blocked","failed"],Eq=["/Users/","/home/","$HOME","/private/","/tmp/"];function tg(r,n){if(typeof r!=="string")throw Error(`${n} must be a string`);return r.trim()}function jq(r){return Eq.some((n)=>r.includes(n))||/^[A-Za-z]:[\\/]/.test(r)||r.startsWith("/")||r.startsWith("\\")}function Jq(r){return Eq.some((n)=>r.includes(n))||/^[A-Za-z]:[\\/]/.test(r)}function ig(r){return/\.(local|lan|internal|intranet|localdomain)(\/.*)?$/i.test(r)||/^[0-9]{1,3}(\.[0-9]{1,3}){3}/.test(r)||/\b[0-9a-f]{1,4}:[0-9a-f]{1,4}:/i.test(r)}function eg(r){return/(api[_-]?key|secret|token|password|credential)/i.test(r)}function _g(r){return/(raw[_ -]?prompt|tool[_ -]?output|tool_use|assistant_thought|chain[_ -]?of[_ -]?thought)/i.test(r)}function j9(r,n){if(r.length===0)throw Error(`${n} must not be empty`);if(/[\s\x00-\x1f\x7f]/.test(r))throw Error(`${n} must not contain whitespace or control characters`);if(Jq(r))throw Error(`${n} must not contain local path markers`);if(ig(r))throw Error(`${n} must not contain hostnames or IP addresses`);if(eg(r))throw Error(`${n} must not contain credential-shaped text`);if(_g(r))throw Error(`${n} must not contain prompt/tool-output markers`)}function Me(r,n,t){let e=tg(r,n);if(e.length>t)throw Error(`${n} length must be <= ${t}`);if(j9(e,n),/[^A-Za-z0-9._:-]/.test(e))throw Error(`${n} contains unsafe characters`);return e}function u0(r,n){let t=tg(r,n);if(t.length>256)throw Error(`${n} length must be <= 256`);if(jq(t))throw Error(`${n} must be repo-relative and must not contain local path markers`);if(ig(t))throw Error(`${n} must not contain hostnames or IP addresses`);if(eg(t)||_g(t))throw Error(`${n} must not contain sensitive markers`);return t}function J9(r,n){let t=tg(r,n);if(t.length>128)throw Error(`${n} length must be <= 128`);if(jq(t))throw Error(`${n} must not be an absolute path or local path marker`);if(ig(t))throw Error(`${n} must not contain hostnames or IP addresses`);if(eg(t)||_g(t))throw Error(`${n} must not contain sensitive markers`);return t}function Aq(r){let n=r.trim().slice(0,200);if(Jq(n)||ig(n))throw Error("--validation-summary must not contain path or hostname markers");if(eg(n)||_g(n))throw Error("--validation-summary must not contain sensitive markers");return n}function Wq(r,n){if(!Array.isArray(r)||!r.every((t)=>typeof t==="string"))throw Error(`${n} must be a string array`);return r}function A9(r){if(r!=="dispatch_ready"&&r!=="hold_for_grant"&&r!=="blocked_by_capability"&&r!=="blocked_by_validation"&&r!=="quarantine_hold")throw Error("record.decision must be an operational dispatch decision");return r}function M9(r){if(!r||typeof r!=="object")throw Error("record.authority_boundary must be an object");let n=r,t=["can_dispatch","can_authorize","can_attach_grant","can_execute","consumer_is_engine"];for(let e of t)if(n[e]!==!1)throw Error(`record.authority_boundary.${e} must be false`);return n}function P9(r){if(!Sq.includes(r))throw Error(`--status must be one of: ${Sq.join(", ")}`);return r}function k9(r){return r==="dispatch_ready"?"success":"blocked"}function X9(r){let n=r.reasons.join(",")||"none",t=r.warnings.join(",")||"none";return Aq(`dispatch=${r.decision}; reasons=${n}; warnings=${t}; authority=advisory-only`)}function G9(r,n){return`hosted-receipt:${W9("sha256").update(JSON.stringify({recordId:n,payload:r})).digest("hex").slice(0,12)}`}function V9(r){if(!r||typeof r!=="object")throw Error("record must be a YAML object");let n=r;if(n.schema!=="operational-dispatch-record.v0")throw Error("record schema must be operational-dispatch-record.v0");return{schema:"operational-dispatch-record.v0",record_id:Me(n.record_id,"record.record_id",128),recorded_at:tg(n.recorded_at,"record.recorded_at"),recorded_by:Me(n.recorded_by,"record.recorded_by",64),task_ref:Me(n.task_ref,"record.task_ref",128),seat:Me(n.seat,"record.seat",64),decision:A9(n.decision),reasons:Wq(n.reasons,"record.reasons"),warnings:Wq(n.warnings,"record.warnings"),profile_hint:n.profile_hint,receipt_ref:u0(n.receipt_ref,"record.receipt_ref"),ledger_ref:u0(n.ledger_ref,"record.ledger_ref"),authority_boundary:M9(n.authority_boundary),source_decision:n.source_decision}}async function Mq(r){return V9(p(await E9(r,"utf-8")))}function Pq(r){let n=r.status?P9(r.status):k9(r.record.decision),t={task_id:Me(r.record.task_ref,"hosted_payload.task_id",128),seat_id:Me(r.record.seat,"hosted_payload.seat_id",64),status:n,receipt_ref:u0(r.receiptRef??r.record.receipt_ref,"hosted_payload.receipt_ref"),validation_summary:Aq(r.validationSummary??X9(r.record))},e=r.artifactRef?J9(r.artifactRef,"hosted_payload.artifact_ref"):void 0;if(e)t.artifact_ref=e;return{schema:"hosted-receipt-metadata-projection.v0",projection_id:G9(t,r.record.record_id),source_schema:"operational-dispatch-record.v0",source_record_id:r.record.record_id,hosted_payload:t,authority_boundary:{hosted_plane_can_execute:!1,hosted_plane_can_authorize:!1,hosted_plane_can_attach_grant:!1,hosted_plane_can_change_local_ledger:!1},projection_boundary:{metadata_only:!0,raw_receipt_body_included:!1,source_decision_included:!1,local_paths_included:!1}}}import{createHash as a9}from"crypto";import{appendFile as Z9,mkdir as Fq,readFile as C9,writeFile as lq}from"fs/promises";import{dirname as vq,join as Gq,relative as x9,resolve as $0}from"path";var cg=["none","observed","changed","gap_found","reserved","closed","proved"];function F9(r){if(!Number.isFinite(Date.parse(r)))throw Error("ledger entry created_at must be an ISO-8601 timestamp")}function kq(r,n){if(!/^[A-Za-z0-9][A-Za-z0-9:._/@-]{0,255}$/.test(r))throw Error(`${n} must be a compact opaque or repo-relative ref`)}function l9(r){if(r.length===0||r.length>240||/\s{2,}/.test(r))throw Error("ledger entry summary must be compact and single-spaced")}function ug(r){if(r===void 0)return;if(r.length>8)throw Error("ledger entry topic_hints may contain at most 8 items");let n=new Set;for(let t of r){if(!/^[a-z0-9][a-z0-9-]{0,63}$/.test(t))throw Error("ledger entry topic_hints must be kebab-case slugs");if(n.has(t))throw Error("ledger entry topic_hints must not contain duplicates");n.add(t)}}function v9(r){return Object.values(r).reduce((n,t)=>n+(t?.length??0),0)}function Y9(r){let n=[];for(let t of["lanes","commits","prs","bus","artifacts","receipts"])for(let e of r[t]??[])kq(e,`refs.${t}`),n.push(`${t}:${e}`);return n.join(",")||"none"}function o0(r){if(F9(r.created_at),kq(r.entry_id,"entry_id"),l9(r.summary),r.authority.grants_execution&&r.authority.class!=="grant")throw Error("only grant authority entries may set grants_execution=true");if(r.authority.class!=="advisory"&&v9(r.refs)===0)throw Error("non-advisory ledger entries require at least one durable ref")}function H9(r){if(o0(r),r.entry_type==="retroactive_import")throw Error("retroactive_import entries require schema ledger-entry.v0.2")}function B9(r){if(o0(r),ug(r.topic_hints),r.status_effect!==void 0&&!cg.includes(r.status_effect))throw Error("ledger entry status_effect is not supported");if(r.entry_type==="retroactive_import")throw Error("retroactive_import entries require schema ledger-entry.v0.2")}function Q9(r){if(o0(r),ug(r.topic_hints),r.status_effect!==void 0&&!cg.includes(r.status_effect))throw Error("ledger entry status_effect is not supported");if(r.valid_time!==void 0){if(!Number.isFinite(Date.parse(r.valid_time)))throw Error("ledger entry valid_time must be an ISO-8601 timestamp");if(Date.parse(r.valid_time)>Date.parse(r.created_at))throw Error("ledger entry valid_time must not be after created_at (no future coverage, no backdated recording)")}if(r.valid_time_end!==void 0){if(r.valid_time===void 0)throw Error("ledger entry valid_time_end requires valid_time");if(!Number.isFinite(Date.parse(r.valid_time_end)))throw Error("ledger entry valid_time_end must be an ISO-8601 timestamp");if(Date.parse(r.valid_time_end)<Date.parse(r.valid_time))throw Error("ledger entry valid_time_end must not precede valid_time");if(Date.parse(r.valid_time_end)>Date.parse(r.created_at))throw Error("ledger entry valid_time_end must not be after created_at")}if(r.entry_type==="retroactive_import"){if(r.valid_time===void 0)throw Error("retroactive_import entries must declare valid_time");if((r.refs.commits?.length??0)+(r.refs.receipts?.length??0)+(r.refs.artifacts?.length??0)===0)throw Error("retroactive_import entries require contemporaneous evidence refs (commits, receipts, or artifacts)");if(r.authority.class!=="advisory"&&r.authority.class!=="audit")throw Error("retroactive_import entries must carry advisory or audit authority; late entries never mint grants")}}function K9(r){if(r.schema==="ledger-entry.v0.2"){Q9(r);return}if(r.schema==="ledger-entry.v0.1"){B9(r);return}H9(r)}function Xq(r,n={}){K9(r);let t=[`- ${r.created_at}`,`schema=${r.schema}`,`entry_id=${r.entry_id}`,`entry_type=${r.entry_type}`,`spine_eligible=${r.spine_eligible}`,`authority_class=${r.authority.class}`,`grants_execution=${r.authority.grants_execution}`,`export_class=${r.export_class}`,`refs=${Y9(r.refs)}`];if(r.schema==="ledger-entry.v0.1"||r.schema==="ledger-entry.v0.2"){let e=r.topic_hints??[],i=r.status_effect??"none";if(e.length>0)t.push(`topic_hints=${e.join(",")}`);if(i!=="none")t.push(`status_effect=${i}`)}if(r.schema==="ledger-entry.v0.2"){if(r.valid_time!==void 0)t.push(`valid_time=${r.valid_time}`);if(r.valid_time_end!==void 0)t.push(`valid_time_end=${r.valid_time_end}`)}for(let[e,i]of Object.entries(n))t.push(`${e}=${i}`);return t.join(" ")}function p9(r){if(!Number.isFinite(Date.parse(r)))throw Error("--at must be an ISO-8601 timestamp")}function s9(r){let n=r??new Date().toISOString();return p9(n),new Date(n).toISOString()}function rv(r,n){if(!/^[A-Za-z0-9][A-Za-z0-9_-]{0,63}$/.test(r))throw Error(`${n} must be an opaque id using letters, numbers, hyphen, or underscore`)}function Vq(r,n){let t=$0(r),e=$0(n),i=x9(t,e);if(i.length===0||i.startsWith("..")||i.includes("\\"))throw Error(`path must stay inside project root: ${n}`);return i}function nv(r,n){return a9("sha256").update(JSON.stringify({decision:r,recordedAt:n})).digest("hex").slice(0,12)}function tv(r){return V1(r).slice(0,48)||"task"}async function iv(r){await Fq(vq(r),{recursive:!0});try{await C9(r,"utf-8")}catch(n){if(n.code!=="ENOENT")throw n;await lq(r,`# Local Ledger
|
|
852
|
-
|
|
853
|
-
`)}}function ev(r){let n=r.reasons.join(",")||"none",t={schema:"ledger-entry.v0",entry_id:`ledger-entry:${r.record_id}`,created_at:r.recorded_at,entry_type:"decision",spine_eligible:!0,authority:{class:"advisory",grants_execution:!1},refs:{receipts:[r.receipt_ref]},export_class:"workspace_shared",summary:`dispatch ${r.decision} for ${r.task_ref}`};return Xq(t,{task:r.task_ref,seat:r.seat,decision:r.decision,reasons:n,receipt:r.receipt_ref,authority:"advisory-only"})}async function Yq(r){let n=$0(r.projectRoot),t=s9(r.at),e=r.recordedBy??r.decision.seat;rv(e,"--recorded-by");let i=tv(r.decision.task_ref),_=nv(r.decision,t),c=`dispatch-record:${i}:${_}`,u=t.replace(/[:.]/g,"-"),o=Gq(n,"docs","work","receipts",`${u}-${i}-${_}.yaml`),$=Gq(n,"docs","work","ledger","LEDGER.md"),g=Vq(n,o),d=Vq(n,$),f={schema:"operational-dispatch-record.v0",record_id:c,recorded_at:t,recorded_by:e,task_ref:r.decision.task_ref,seat:r.decision.seat,decision:r.decision.decision,reasons:r.decision.reasons,warnings:r.decision.warnings,profile_hint:r.decision.profile_hint,receipt_ref:g,ledger_ref:d,authority_boundary:r.decision.authority_boundary,source_decision:r.decision};return await Fq(vq(o),{recursive:!0}),await lq(o,Cr(f)),await iv($),await Z9($,`${ev(f)}
|
|
854
|
-
`),{record:f,receiptPath:o,ledgerPath:$}}import{readFile as _v}from"fs/promises";import{extname as cv}from"path";var Hq=["rubric_candidate","active_rubric","retired"],Bq=["block","warn","info"],Qq=["deterministic","reviewer_judgment","external_tool"],Ec=["local_path","hostname","credential","raw_prompt","raw_tool_output","source_snippet","uncited_claim","unsupported_schema_field"],Kq=["known_bad","known_good"],og=["pass","warn","reject"],Jt=["local","sandbox-isolated"],$g=["schema_valid_rubric","schema_valid_fixture_set","sandbox_run_receipt","known_bad_rejection","known_good_acceptance"];function uv(r){return typeof r==="object"&&r!==null&&!Array.isArray(r)}async function gg(r){let n=await _v(r,"utf-8");if(cv(r).toLowerCase()===".json")return JSON.parse(n);return p(n)}function At(r,n){if(!uv(r))throw Error(`${n} must be an object`);return r}function Rr(r,n){let t=r[n];if(typeof t!=="string"||t.trim().length===0)throw Error(`${n} must be a non-empty string`);return t}function ke(r,n){let t=r[n];if(t===void 0)return[];if(!Array.isArray(t)||t.some((e)=>typeof e!=="string"))throw Error(`${n} must be a string array`);return t}function Xe(r,n){let t=r[n];if(!Array.isArray(t)||t.some((e)=>typeof e!=="string"))throw Error(`${n} must be a string array`);return t}function sr(r,n,t){if(typeof n!=="string"||!r.includes(n))throw Error(`${t} must be one of: ${r.join(", ")}`);return n}function ov(r,n){return Xe(r,n).map((t)=>sr(Ec,t,`${n}[]`))}function Rn(r,n){X(r,n)}function Dn(r,n){H(r,n)}function Pe(r,n){let t=tr(r).filter((e)=>e!=="contains_raw_prompt"&&e!=="contains_raw_tool_output");if(t.length>0)throw Error(`${n} contains restricted shared-memory content: ${t.join(", ")}`)}function jc(r,n){if(!/^\d+\.\d+\.\d+(?:[-+][A-Za-z0-9_.-]+)?$/.test(r))throw Error(`${n} must be semver-like (x.y.z)`)}function aq(r,n){let t=ke(r,n);for(let e of t)Dn(e,`${n}[]`);return t}function $v(r){if(!Array.isArray(r)||r.length===0)throw Error("checks must be a non-empty array");return r.map((n,t)=>{let e=At(n,`checks[${t}]`),i={check_id:Rr(e,"check_id"),description:Rr(e,"description"),severity:sr(Bq,e.severity,"severity"),evaluation:sr(Qq,e.evaluation,"evaluation"),evidence_required:Xe(e,"evidence_required")};Rn(i.check_id,"check_id"),Pe(i.description,"description");for(let _ of i.evidence_required)Rn(_,"evidence_required[]");return i})}function gv(r){let n=Rr(r,"rubric_id"),t=Rr(r,"rubric_version");Rn(n,"rubric_id"),jc(t,"rubric_version");let e=Rr(r,"owner_principal_ref");return Dn(e,"owner_principal_ref"),{rubric_id:n,rubric_version:t,known_bad_fixtures:aq(r,"known_bad_fixtures"),known_good_fixtures:aq(r,"known_good_fixtures"),owner_principal_ref:e,status:sr(Hq,r.status,"status")}}function dv(r){let n=At(r,"rubric"),t=gv(n);if(typeof n.protocol_surface==="string"){let i=At(n.failure_semantics,"failure_semantics"),_={kind:"conformance",...t,protocol_surface:Rr(n,"protocol_surface"),schema_refs:Xe(n,"schema_refs"),forbidden_content_classes:ov(n,"forbidden_content_classes"),citation_rules:ke(n,"citation_rules"),sanitizer_expectations:ke(n,"sanitizer_expectations"),failure_semantics:{on_reject:sr(["block","warn"],i.on_reject,"failure_semantics.on_reject"),on_uncertain:sr(["warn","require_review"],i.on_uncertain,"failure_semantics.on_uncertain")}};if(Rn(_.protocol_surface,"protocol_surface"),_.schema_refs.length===0)throw Error("schema_refs must not be empty");for(let c of _.schema_refs)Dn(c,"schema_refs[]");for(let c of _.citation_rules)Pe(c,"citation_rules[]");for(let c of _.sanitizer_expectations)Pe(c,"sanitizer_expectations[]");return _}let e={kind:"validation",...t,domain:Rr(n,"domain"),artifact_type:Rr(n,"artifact_type"),title:Rr(n,"title"),summary:Rr(n,"summary"),checks:$v(n.checks),evidence_requirements:Xe(n,"evidence_requirements")};Rn(e.domain,"domain"),Rn(e.artifact_type,"artifact_type"),Pe(e.title,"title"),Pe(e.summary,"summary");for(let i of e.evidence_requirements)Rn(i,"evidence_requirements[]");return e}async function dg(r){return dv(await gg(r))}function fv(r){if(r.input!==void 0)return r.input;if(r.input_text!==void 0)return r.input_text;if(r.artifact!==void 0)return r.artifact;if(r.payload!==void 0)return r.payload;if(r.metadata!==void 0)return r.metadata;if(r.sample!==void 0)return r.sample;return}function bv(r,n){let t=At(r,`fixtures[${n}]`),e={fixture_id:Rr(t,"fixture_id"),fixture_version:Rr(t,"fixture_version"),content_class:sr(Ec,t.content_class,"content_class"),fixture_kind:sr(Kq,t.fixture_kind,"fixture_kind"),artifact_type:Rr(t,"artifact_type"),input_ref:Rr(t,"input_ref"),expected:sr(og,t.expected,"expected"),rationale:Rr(t,"rationale"),input:fv(t)};return Rn(e.fixture_id,"fixture_id"),jc(e.fixture_version,"fixture_version"),Rn(e.artifact_type,"artifact_type"),Dn(e.input_ref,"input_ref"),Pe(e.rationale,"rationale"),e}function wv(r){let n=At(r,"fixture_set"),t=n.fixtures;if(!Array.isArray(t)||t.length===0)throw Error("fixtures must be a non-empty array");let e={fixture_set_id:Rr(n,"fixture_set_id"),fixture_set_version:typeof n.fixture_set_version==="string"?n.fixture_set_version:"0.1.0",fixtures:t.map(bv)};return Dn(e.fixture_set_id,"fixture_set_id"),jc(e.fixture_set_version,"fixture_set_version"),e}async function Zq(r){return wv(await gg(r))}function g0(r){if(r.schema!=="sandbox-run-receipt.v0")throw Error("receipt schema must be sandbox-run-receipt.v0");if(Dn(r.receipt_id,"receipt_id"),Rn(r.rubric_id,"rubric_id"),jc(r.rubric_version,"rubric_version"),Dn(r.fixture_set_ref,"fixture_set_ref"),!Number.isFinite(Date.parse(r.run_at)))throw Error("run_at must be an ISO-8601 timestamp");if(Dn(r.run_by,"run_by"),sr(Jt,r.run_environment,"run_environment"),!Array.isArray(r.results))throw Error("results must be an array");for(let[t,e]of r.results.entries())Rn(e.fixture_id,`results[${t}].fixture_id`),sr(og,e.expected,`results[${t}].expected`),sr(og,e.actual,`results[${t}].actual`),Dn(e.reason,`results[${t}].reason`);let n=tr(JSON.stringify(r));if(n.length>0)throw Error(`sandbox receipt contains restricted shared content: ${n.join(", ")}`)}function mv(r){let n=At(r,"sandbox_run_receipt");return g0(n),n}async function fg(r){return mv(await gg(r))}function Iv(r){let n=At(r,"promotion_policy"),t=At(n.applies_to,"applies_to"),e={policy_id:Rr(n,"policy_id"),policy_version:Rr(n,"policy_version"),applies_to:{domains:ke(t,"domains"),artifact_types:ke(t,"artifact_types"),protocol_surfaces:ke(t,"protocol_surfaces")},proposer_actor:Rr(n,"proposer_actor"),reviewer_set:Xe(n,"reviewer_set"),required_evidence:Xe(n,"required_evidence").map((i)=>sr($g,i,"required_evidence[]")),grant_ref:n.grant_ref===null||n.grant_ref===void 0?null:Rr(n,"grant_ref"),activation_status:sr(["proposed","ready_for_grant","active","rejected","retired"],n.activation_status,"activation_status")};Rn(e.policy_id,"policy_id"),jc(e.policy_version,"policy_version"),Dn(e.proposer_actor,"proposer_actor");for(let i of e.reviewer_set)Dn(i,"reviewer_set[]");if(e.grant_ref)Dn(e.grant_ref,"grant_ref");return e}async function Cq(r){return Iv(await gg(r))}function Ov(r,n){return n===r.mode_id||n===`workflow-mode:${r.mode_id}`}function kr(r,n,t){return{check_id:n,status:r,summary:t}}function Uv(r,n){if(r.length>0)return"block";if(n.length>0)return"warn";return"pass"}function xq(r){if(r==="deliberative")return{mode_type:r,summary:"Slow, human-reviewed, grant-heavy workflow posture.",use_when:["doctrine","architecture","security posture","subjective tradeoffs"],boundary:["consensus recommends only","explicit grant required before mutation","dissent must be preserved"]};if(r==="expedient")return{mode_type:r,summary:"Fast, bounded, rubric-heavy, evidence-first workflow posture.",use_when:["health checks","fixture runs","known-safe mechanical work","local status probes"],boundary:["not a shortcut","not lower safety","requires bounded scope, validation, and receipt proof"]};return{mode_type:r,summary:"Slow upstream drafting, explicit grant hinge, fast local execution, receipt proof.",use_when:["current v3/Etiquette implementation lanes","reviewed doctrine feeding bounded local execution"],boundary:["grant_ref is the phase boundary","execution cannot begin before the grant hinge when mutating state"]}}function bg(r,n){let t=[],e=[],i=[];if(!Ov(r,n.workflow_mode_ref))e.push("workflow_mode_ref_mismatch"),i.push(kr("warn","workflow_mode_ref_matches","Envelope workflow_mode_ref does not match the loaded mode id."));else i.push(kr("pass","workflow_mode_ref_matches","Envelope references the loaded workflow mode."));if(n.requested_mode_type!==r.mode_type)t.push("requested_mode_type"),i.push(kr("block","requested_mode_type_matches","Envelope requested mode type does not match loaded mode."));else i.push(kr("pass","requested_mode_type_matches","Envelope requested mode type matches loaded mode."));if(n.advisory_consensus_claims_authority)t.push("advisory_consensus_claims_authority_false"),i.push(kr("block","advisory_consensus_not_authority","Advisory consensus cannot authorize work."));else i.push(kr("pass","advisory_consensus_not_authority","No advisory consensus authority claim present."));if(n.mutates_state&&r.grant.required&&!n.grant_ref)t.push("grant_ref"),i.push(kr("block","grant_hinge_satisfied","Mutating execution under this mode requires grant_ref."));else i.push(kr("pass","grant_hinge_satisfied","Grant hinge is satisfied or not required for this envelope."));if(n.mutates_state&&r.proof.receipt_required&&!n.receipt_ref)t.push("receipt_ref"),i.push(kr("block","receipt_proof_declared","Mutating execution requires a receipt_ref or receipt plan."));else i.push(kr("pass","receipt_proof_declared","Receipt proof is declared or not required."));if(r.proof.validation_required&&n.validation_refs.length===0)t.push("validation_refs"),i.push(kr("block","validation_evidence_present","Mode requires validation evidence refs."));else i.push(kr("pass","validation_evidence_present","Validation evidence is present or not required."));if(r.mode_type==="expedient"){if(!n.bounded)t.push("bounded");if(!n.preauthorized)t.push("preauthorized");if(n.risk==="high")t.push("risk_not_high");i.push(kr(n.bounded&&n.preauthorized&&n.risk!=="high"?"pass":"block","expedient_claim_is_valid","Expedient mode requires bounded scope, preauthorization, non-high risk, validation, and receipt proof."))}if(r.mode_type==="deliberative"&&r.drafting.requires_review&&!n.consensus_ref)e.push("deliberative_without_consensus_ref"),i.push(kr("warn","deliberative_review_visible","Deliberative mode should cite consensus or review state."));if(r.mode_type==="mixed"&&r.execution.dispatch==="immediate_after_grant"&&n.mutates_state&&!n.grant_ref){if(!t.includes("grant_ref"))t.push("grant_ref");i.push(kr("block","mixed_grant_before_execution","Mixed mode cannot execute mutating work before grant_ref."))}else if(r.mode_type==="mixed")i.push(kr("pass","mixed_grant_before_execution","Mixed grant hinge is satisfied or work is non-mutating."));return{schema:"workflow-check-receipt.v0",task_ref:n.task_ref,mode_id:r.mode_id,mode_type:r.mode_type,recommendation:Uv([...new Set(t)],[...new Set(e)]),missing:[...new Set(t)],warnings:[...new Set(e)],checks:i,authority_boundary:{can_authorize:!1,can_attach_grant:!1,consensus_can_authorize:!1,mode_is_engine:!1,requires_grant:r.grant.required}}}import{readFile as hv}from"fs/promises";import{extname as Rv}from"path";var Ge=["deliberative","expedient","mixed"],pq=["manual","immediate","immediate_after_grant"],sq=["executor_selected","suggested","required"],rT=["operator_principal","delegated_control_seat"],nT=["low","medium","high"];function Dv(r){return typeof r==="object"&&r!==null&&!Array.isArray(r)}async function tT(r){let n=await hv(r,"utf-8");if(Rv(r).toLowerCase()===".json")return JSON.parse(n);return p(n)}function Ui(r,n){if(!Dv(r))throw Error(`${n} must be an object`);return r}function Ve(r,n){let t=r[n];if(typeof t!=="string"||t.trim().length===0)throw Error(`${n} must be a non-empty string`);return t}function d0(r,n){let t=r[n];if(t===null||t===void 0)return null;if(typeof t!=="string"||t.trim().length===0)throw Error(`${n} must be null or a non-empty string`);return t}function yv(r,n){let t=r[n];if(!Array.isArray(t)||t.some((e)=>typeof e!=="string"))throw Error(`${n} must be a string array`);return t}function Jr(r,n){let t=r[n];if(typeof t!=="boolean")throw Error(`${n} must be a boolean`);return t}function qv(r,n){let t=r[n];if(typeof t!=="number"||!Number.isInteger(t)||t<0)throw Error(`${n} must be a non-negative integer`);return t}function hi(r,n,t){if(typeof n!=="string"||!r.includes(n))throw Error(`${t} must be one of: ${r.join(", ")}`);return n}function Tv(r,n){if(!/^\d+\.\d+\.\d+(?:[-+][A-Za-z0-9_.-]+)?$/.test(r))throw Error(`${n} must be semver-like (x.y.z)`)}function f0(r,n){if(r!==null)H(r,n)}function Nv(r){if(r.authority_status!=="policy_preset_only")throw Error("authority_status must be policy_preset_only");if(r.grant.advisory_consensus_can_authorize!==!1)throw Error("grant.advisory_consensus_can_authorize must be false");if(r.drafting.min_reviewers>0&&!r.drafting.requires_review)throw Error("drafting.min_reviewers requires drafting.requires_review");if(r.mode_type==="mixed"&&r.execution.dispatch==="immediate")throw Error("mixed mode must not dispatch immediate before a grant hinge");if(r.mode_type==="expedient"&&!r.proof.receipt_required)throw Error("expedient mode must require receipt proof");if(r.mode_type==="expedient"&&!r.proof.validation_required)throw Error("expedient mode must require validation evidence")}function Lv(r){let n=Ui(r,"workflow_mode"),t=Ui(n.drafting,"drafting"),e=Ui(n.grant,"grant"),i=Ui(n.execution,"execution"),_=Ui(n.proof,"proof"),c=Ui(n.audit,"audit"),u={mode_id:Ve(n,"mode_id"),mode_version:Ve(n,"mode_version"),mode_type:hi(Ge,n.mode_type,"mode_type"),drafting:{surface:Ve(t,"surface"),requires_review:Jr(t,"requires_review"),min_reviewers:qv(t,"min_reviewers"),amendment_rounds_allowed:Jr(t,"amendment_rounds_allowed"),adversarial_review_required:Jr(t,"adversarial_review_required"),compact_reason_required:Jr(t,"compact_reason_required")},grant:{required:Jr(e,"required"),preauthorization_allowed:Jr(e,"preauthorization_allowed"),granted_by:hi(rT,e.granted_by,"granted_by"),advisory_consensus_can_authorize:Jr(e,"advisory_consensus_can_authorize")},execution:{surface:Ve(i,"surface"),dispatch:hi(pq,i.dispatch,"dispatch"),strategy_policy:hi(sq,i.strategy_policy,"strategy_policy"),rubric_required:Jr(i,"rubric_required")},proof:{receipt_required:Jr(_,"receipt_required"),validation_required:Jr(_,"validation_required"),closeout_requires_receipt:Jr(_,"closeout_requires_receipt")},audit:{event_log_required:Jr(c,"event_log_required"),dissent_capture_required:Jr(c,"dissent_capture_required")},authority_status:hi(["policy_preset_only"],n.authority_status,"authority_status")};return X(u.mode_id,"mode_id"),Tv(u.mode_version,"mode_version"),X(u.drafting.surface,"drafting.surface"),X(u.execution.surface,"execution.surface"),Nv(u),u}async function Jc(r){return Lv(await tT(r))}function zv(r){let n=Ui(r,"workflow_check_envelope"),t={task_ref:Ve(n,"task_ref"),workflow_mode_ref:Ve(n,"workflow_mode_ref"),requested_mode_type:hi(Ge,n.requested_mode_type,"requested_mode_type"),mutates_state:Jr(n,"mutates_state"),grant_ref:d0(n,"grant_ref"),consensus_ref:d0(n,"consensus_ref"),receipt_ref:d0(n,"receipt_ref"),validation_refs:yv(n,"validation_refs"),bounded:Jr(n,"bounded"),preauthorized:Jr(n,"preauthorized"),advisory_consensus_claims_authority:Jr(n,"advisory_consensus_claims_authority"),risk:hi(nT,n.risk,"risk")};H(t.task_ref,"task_ref"),H(t.workflow_mode_ref,"workflow_mode_ref"),f0(t.grant_ref,"grant_ref"),f0(t.consensus_ref,"consensus_ref"),f0(t.receipt_ref,"receipt_ref");for(let e of t.validation_refs)H(e,"validation_refs[]");return t}async function wg(r){return zv(await tT(r))}var iT=new Set(["check","record","projection","scaffold"]);function eT(r){return r==="dispatch"}function Ev(r){return["operational_dispatch_decision:",` task_ref: ${r.task_ref}`,` seat: ${r.seat}`,` decision: ${r.decision}`,` reasons: ${r.reasons.join(", ")||"none"}`,` warnings: ${r.warnings.join(", ")||"none"}`,` profile_hint: ${r.profile_hint??"none"}`,` seat_routing: ${r.inputs.seat_readiness.routing_recommendation}`,` workflow_recommendation: ${r.inputs.workflow_check.recommendation}`,` rubric_receipt_accepted: ${String(r.inputs.rubric_receipt.accepted)}`,` can_dispatch: ${String(r.authority_boundary.can_dispatch)}`,` can_authorize: ${String(r.authority_boundary.can_authorize)}`,` consumer_is_engine: ${String(r.authority_boundary.consumer_is_engine)}`].join(`
|
|
855
|
-
`)}function jv(r){return["operational_dispatch_record:",` record_id: ${r.record.record_id}`,` task_ref: ${r.record.task_ref}`,` seat: ${r.record.seat}`,` decision: ${r.record.decision}`,` reasons: ${r.record.reasons.join(", ")||"none"}`,` warnings: ${r.record.warnings.join(", ")||"none"}`,` receipt_ref: ${r.record.receipt_ref}`,` ledger_ref: ${r.record.ledger_ref}`,` can_execute: ${String(r.record.authority_boundary.can_execute)}`].join(`
|
|
856
|
-
`)}function Jv(r){let n=r.hosted_payload;return["hosted_receipt_metadata_projection:",` projection_id: ${r.projection_id}`,` source_record_id: ${r.source_record_id}`,` task_id: ${n.task_id}`,` seat_id: ${n.seat_id}`,` status: ${n.status}`,` artifact_ref: ${n.artifact_ref??"none"}`,` receipt_ref: ${n.receipt_ref}`,` validation_summary: ${n.validation_summary}`," boundary: metadata-only; hosted plane cannot execute, authorize, attach grants, or mutate the local ledger"].join(`
|
|
857
|
-
`)}function Av(r,n){let t=new Date(r);if(Number.isNaN(t.getTime()))throw Error("--at must be an ISO-8601 timestamp");return t.setUTCHours(t.getUTCHours()+n),t.toISOString()}function Mc(r,n){let t=Wv(r,n);return t&&!t.startsWith("..")?t:n}function Mv(r){return["dispatch_scaffold:",` out: ${r.out_ref}`,` mode: ${r.files.mode_ref}`,` task: ${r.files.task_ref}`,` sandbox_receipt: ${r.files.sandbox_receipt_ref}`,` state: ${r.files.state_ref}`,` check_command: ${r.check_command}`," boundary: scaffold only; does not record dispatch, authorize, grant, merge, close, or execute"].join(`
|
|
858
|
-
`)}async function Pv(r){let n=Ri(I(r,"project")??process.cwd()),t=I(r,"task-id")??I(r,"task")??"APP-001",e=I(r,"seat")??"codex-seat",i=I(r,"mode-id")??"dispatch-mixed-mode-v0",_=I(r,"strategy")??"local_adversarial_tango",c=I(r,"at")??new Date().toISOString(),u=Ri(I(r,"out")??Ac(n,"docs","work","dispatch",t)),o=Ac(u,"mode.yaml"),$=Ac(u,"task.yaml"),g=Ac(u,"receipt.yaml"),d=Ac(u,"seat-readiness.json"),f=`sandbox-run:${t}`,b=`mode_id: ${i}
|
|
859
|
-
mode_version: 0.1.0
|
|
860
|
-
mode_type: mixed
|
|
861
|
-
drafting:
|
|
862
|
-
surface: coordination-ledger
|
|
863
|
-
requires_review: true
|
|
864
|
-
min_reviewers: 1
|
|
865
|
-
amendment_rounds_allowed: true
|
|
866
|
-
adversarial_review_required: false
|
|
867
|
-
compact_reason_required: false
|
|
868
|
-
grant:
|
|
869
|
-
required: true
|
|
870
|
-
preauthorization_allowed: false
|
|
871
|
-
granted_by: operator_principal
|
|
872
|
-
advisory_consensus_can_authorize: false
|
|
873
|
-
execution:
|
|
874
|
-
surface: local-etiquette
|
|
875
|
-
dispatch: immediate_after_grant
|
|
876
|
-
strategy_policy: executor_selected
|
|
877
|
-
rubric_required: true
|
|
878
|
-
proof:
|
|
879
|
-
receipt_required: true
|
|
880
|
-
validation_required: true
|
|
881
|
-
closeout_requires_receipt: true
|
|
882
|
-
audit:
|
|
883
|
-
event_log_required: true
|
|
884
|
-
dissent_capture_required: true
|
|
885
|
-
authority_status: policy_preset_only
|
|
886
|
-
`,m=`task_ref: task:${t}
|
|
887
|
-
workflow_mode_ref: workflow-mode:${i}
|
|
888
|
-
requested_mode_type: mixed
|
|
889
|
-
mutates_state: true
|
|
890
|
-
grant_ref: grant:${t}
|
|
891
|
-
consensus_ref: consensus:${t}
|
|
892
|
-
receipt_ref: receipt:${t}
|
|
893
|
-
validation_refs:
|
|
894
|
-
- ${f}
|
|
895
|
-
bounded: true
|
|
896
|
-
preauthorized: false
|
|
897
|
-
advisory_consensus_claims_authority: false
|
|
898
|
-
risk: medium
|
|
899
|
-
`,w=`schema: sandbox-run-receipt.v0
|
|
900
|
-
receipt_id: ${f}
|
|
901
|
-
rubric_id: ${t}
|
|
902
|
-
rubric_version: 0.1.0
|
|
903
|
-
fixture_set_ref: fixture-set:${t}
|
|
904
|
-
results:
|
|
905
|
-
- fixture_id: ready
|
|
906
|
-
expected: pass
|
|
907
|
-
actual: pass
|
|
908
|
-
reason: scaffolded receipt example
|
|
909
|
-
summary:
|
|
910
|
-
total_fixtures: 1
|
|
911
|
-
known_bad_rejected: 0
|
|
912
|
-
known_good_accepted: 1
|
|
913
|
-
unexpected_outcomes: 0
|
|
914
|
-
run_at: ${c}
|
|
915
|
-
run_by: ${e}
|
|
916
|
-
run_environment: local
|
|
917
|
-
`,O={schema_version:"seat-readiness.v0.1",seat:e,seat_type:"control_seat",execution_surface:"local-etiquette",declared_by:"config",capability_source:"local_validation",capability_trusted:!0,operational_status:"operational",model_tier:"local_unknown",model_id:"local-session",active_workers:0,max_recommended_workers:1,supports_parallel:!1,supported_strategies:[_],unsupported_strategies:[],constraints:["scaffold-example"],last_checked_at:c,last_heartbeat_at:c,ttl_seconds:86400,stale_after:Av(c,24)};await Sv(u,{recursive:!0}),await mg(o,b),await mg($,m),await mg(g,w),await mg(d,`${JSON.stringify(O,null,2)}
|
|
918
|
-
`);let q={mode_ref:Mc(n,o),task_ref:Mc(n,$),sandbox_receipt_ref:Mc(n,g),state_ref:Mc(n,d)};return{schema:"dispatch-scaffold.v0",out_ref:Mc(n,u),task_id:t,seat:e,files:q,check_command:`etiquette dispatch check --project . --mode ${q.mode_ref} --task ${q.task_ref} --sandbox-receipt ${q.sandbox_receipt_ref} --state ${q.state_ref} --strategy ${_}`,authority_boundary:{scaffold_only:!0,can_record_dispatch:!1,can_authorize:!1,can_attach_grant:!1,can_execute:!1,can_merge:!1,can_close:!1}}}async function _T(r,n){let t=r[1];if(!t||!iT.has(t))throw Error(`dispatch verb must be one of: ${[...iT].join(", ")}`);let e=Boolean(n.json);if(t==="scaffold"){let d=await Pv(n);console.log(e?JSON.stringify(d,null,2):Mv(d));return}if(t==="projection"){let d=await Mq(Ri(D(n,"record"))),f=Pq({record:d,artifactRef:I(n,"artifact-ref"),receiptRef:I(n,"receipt-ref"),status:I(n,"status"),validationSummary:I(n,"validation-summary")});console.log(e?JSON.stringify(f,null,2):Jv(f));return}let i=Ri(I(n,"project")??process.cwd()),_=await Jc(Ri(D(n,"mode"))),c=await wg(Ri(D(n,"task"))),u=De(await di(i,I(n,"state")),I(n,"at")),o=I(n,"sandbox-receipt"),$=o?await fg(Ri(o)):null,g=zq({seat:u,mode:_,envelope:c,workflow:bg(_,c),sandboxReceipt:$,requestedStrategy:I(n,"strategy")});if(t==="record"){let d=await Yq({projectRoot:i,decision:g,recordedBy:I(n,"recorded-by"),at:I(n,"at")});console.log(e?JSON.stringify(d.record,null,2):jv(d));return}console.log(e?JSON.stringify(g,null,2):Ev(g))}Ir();import{resolve as b0}from"path";var cT=new Set(["receipt","inventory","canary"]);function uT(r){return r==="harness"}function kv(r){return["harness_prune_receipt:",` receipt_id: ${r.receipt_id}`,` object_id: ${r.object_id}`,` verdict: ${r.verdict}`,` proposed_disposition: ${r.proposed_disposition}`,` canary_verdict: ${r.canary.verdict}`,` can_authorize_pruning: ${String(r.authority_boundary.receipt_can_authorize_pruning)}`,` human_disposition_required: ${String(r.authority_boundary.human_disposition_required)}`].join(`
|
|
919
|
-
`)}function Xv(r){return["harness_canary:",` object_id: ${r.object_id}`,` verdict: ${r.verdict}`,` required: ${r.required_canaries.join(", ")}`,` observed: ${r.observed_canaries.join(", ")}`,` missing: ${r.missing_canaries.join(", ")||"none"}`].join(`
|
|
920
|
-
`)}function Gv(r){return["harness_inventory:",` item_count: ${r.item_count}`,` keep: ${r.counts.keep}`,` consolidate: ${r.counts.consolidate}`,` quarantine: ${r.counts.quarantine}`,` delete_ready: ${r.counts["delete-ready"]}`,` blocked: ${r.counts.blocked}`,` can_delete: ${String(r.authority_boundary.inventory_can_delete)}`,` pruning_receipt_required: ${String(r.authority_boundary.pruning_receipt_required)}`,...r.items.map((n)=>` - ${n.object_id}: ${n.suggested_disposition} (${n.reason})`)].join(`
|
|
921
|
-
`)}async function oT(r,n){let t=r[1];if(!t||!cT.has(t))throw Error(`harness verb must be one of: ${[...cT].join(", ")}`);let e=Boolean(n.json);if(t==="receipt"){let _=await C$(b0(D(n,"receipt")));console.log(e?JSON.stringify(_,null,2):kv(_));return}if(t==="canary"){let _=await C4(b0(D(n,"receipt"))),c=Z$(_);console.log(e?JSON.stringify(c,null,2):Xv(c));return}let i=await x$(b0(D(n,"manifest")));if(I(n,"project"));console.log(e?JSON.stringify(i,null,2):Gv(i))}import{randomUUID as Qv}from"crypto";import{homedir as Kv}from"os";import{appendFileSync as Vv,existsSync as Jp,mkdirSync as $T,rmdirSync as Fv}from"fs";import{join as w0}from"path";function gT(r,n){return w0(r,".etiquette","state","workspaces",n)}function lv(r,n){return w0(gT(r,n),"outbox.ndjson")}var vv=".outbox.lock",dT=100,Yv=50;function Hv(r){for(let n=0;n<dT;n+=1)try{return $T(r),!0}catch{let t=Date.now()+Yv;while(Date.now()<t);}return!1}function Bv(r){try{Fv(r)}catch{}}function fT(r,n,t){let e=gT(r,n);try{$T(e,{recursive:!0})}catch(c){return{written:!1,reason:`outbox-dir-unavailable: ${c.message}`}}let i=w0(e,vv);if(!Hv(i))return{written:!1,reason:`lock-timeout after ${dT} attempts`};let _=lv(r,n);try{return Vv(_,`${JSON.stringify(t)}
|
|
922
|
-
`,"utf-8"),{written:!0}}catch(c){return{written:!1,reason:`append-failed: ${c.message}`}}finally{Bv(i)}}var Ig=["session_start","user_prompt_submit","post_tool_use","stop","session_end"],bT={session_start:"seat:session_started",user_prompt_submit:"trace:prompt_boundary",post_tool_use:"trace:tool_used",stop:"playback:candidate_observed",session_end:"seat:session_completed"};var av="ETIQUETTE_HOOKS_ENABLED",Zv="ETIQUETTE_WORKSPACE_ID";function wT(r){let n=r.enabled_env??av,t=r.workspace_env??Zv;if(process.env[n]!=="1")return{status:"disabled"};let e=(r.workspace_id??process.env[t])?.trim();if(!e||e.trim()==="")return{status:"skipped",reasons:[`no-workspace-id (set ${t} env var or pass --workspace)`]};try{X(e,"workspace_id")}catch(d){return{status:"skipped",reasons:[`invalid-workspace-id: ${d.message}`]}}let i=r.payload??{},_={},c=[];for(let[d,f]of Object.entries(i))if(typeof f==="string"){let b=tr(f);if(b.length>0){c.push(`${d}(${b.join(",")})`);continue}_[d]=f}else if(typeof f==="number"||typeof f==="boolean"||f===null)_[d]=f;else c.push(`${d}(non-scalar)`);let u={event_id:Qv(),stage:r.stage,event_type:bT[r.stage],occurred_at:new Date().toISOString(),workspace_id:e,payload:_},o=r.home??Kv(),$=fT(o,e,u);if(!$.written)return{status:"skipped",reasons:[$.reason??"outbox-write-failed"]};let g=c.length>0?[`sanitizer-stripped: ${c.join(", ")}`]:void 0;return{status:"written",event_id:u.event_id,reasons:g}}Ir();function mT(r){return r==="hook"}async function IT(r,n){let t=r[1];if(!t)console.error(`hook: missing stage (one of: ${Ig.join(", ")})`),process.exit(2);if(!Ig.includes(t))console.error(`hook: unknown stage "${t}"; expected one of: ${Ig.join(", ")}`),process.exit(2);let e=I(n,"workspace"),i=I(n,"payload"),_={};if(i)try{let u=JSON.parse(i);if(typeof u!=="object"||u===null||Array.isArray(u))throw Error("payload must be a JSON object");_=u}catch(u){console.error(`hook: --payload must be valid JSON object: ${u.message}`),process.exit(2)}let c=wT({stage:t,workspace_id:e??void 0,payload:_});console.log(JSON.stringify(c)),process.exit(0)}Ir();import{existsSync as OY,readFileSync as UY}from"fs";import{join as hY,resolve as RY}from"path";import{Database as m0}from"bun:sqlite";import{existsSync as Og,mkdirSync as Cv,rmSync as xv,statSync as OT}from"fs";import{readFile as RT,readdir as pv}from"fs/promises";import{dirname as sv,extname as rY,join as Fe,relative as DT,resolve as yT}from"path";var qT=["docs/work/ledger","docs/work/receipts","docs/work/topic-snapshots","docs/work/ledger-digests","docs/work/consumer-registry","docs/work/bus-feed"],nY=new Set([".md",".yaml",".yml",".json",".jsonl",".ndjson",".txt"]);function Ug(r){return Fe(r,".etiquette","state","ledger","index.db")}async function TT(r){let n=yT(r.projectRoot),t=r.dbPath??Ug(n);if(!Og(t))return!0;let e=OT(t).mtimeMs,i=await Promise.all(qT.map((_)=>zT(n,_)));for(let _ of new Set(i.flat()))if(OT(Fe(n,_)).mtimeMs>e)return!0;return!1}function NT(r){return r.replace(/\s+/g," ").trim()}function tY(r){return NT(r.replace(/^#+\s*/,""))}function iY(r,n){let t=r.split(`
|
|
923
|
-
`).find((e)=>e.startsWith("# "));return t?tY(t):n}function eY(r){let n=/^-\s+(\S+)\s+(.*)$/.exec(r.trim());if(!n)return null;let[,t,e]=n,i={};for(let _ of e.split(/\s+/)){let c=_.indexOf("=");if(c<=0)continue;i[_.slice(0,c)]=_.slice(c+1)}return{created_at:t,fields:i}}function UT(r){return r==="true"}function LT(r){if(!r||r==="none")return[];return r.split(",").map((n)=>n.trim()).filter(Boolean)}function _Y(r){let n={};for(let t of LT(r)){let e=t.indexOf(":");if(e<=0)continue;let i=t.slice(0,e),_=t.slice(e+1);if(!["lanes","commits","prs","bus","artifacts","receipts"].includes(i))continue;n[i]=[...n[i]??[],_]}return n}function I0(r){let n=[];for(let t of["lanes","commits","prs","bus","artifacts","receipts"])for(let e of r[t]??[])n.push({type:t,ref:e});return n}function cY(r){if(!r)return"none";if(cg.includes(r))return r;throw Error(`unsupported ledger status_effect: ${r}`)}function uY(r,n="docs/work/ledger/LEDGER.md",t=0){let e=eY(r);if(!e)return null;let{created_at:i,fields:_}=e;if(_.schema!=="ledger-entry.v0"&&_.schema!=="ledger-entry.v0.1"&&_.schema!=="ledger-entry.v0.2")return null;let c=_.entry_id;if(!c)return null;let u=LT(_.topic_hints);ug(u);let o=cY(_.status_effect),$=new Set(["schema","entry_id","entry_type","spine_eligible","authority_class","grants_execution","export_class","refs","topic_hints","status_effect"]),g=Object.fromEntries(Object.entries(_).filter(([d])=>!$.has(d)));return{entry_id:c,schema:_.schema,created_at:i,entry_type:_.entry_type??"event",spine_eligible:UT(_.spine_eligible),authority_class:_.authority_class??"advisory",grants_execution:UT(_.grants_execution),export_class:_.export_class??"local_private",refs:_Y(_.refs),topic_hints:u,status_effect:o,source_path:n,line_no:t,extra:g}}function oY(r){for(let n of[r,`${r}-wal`,`${r}-shm`])if(Og(n))xv(n,{force:!0})}function $Y(r){r.exec(`
|
|
924
|
-
PRAGMA journal_mode = DELETE;
|
|
925
|
-
PRAGMA busy_timeout = 5000;
|
|
926
|
-
CREATE TABLE IF NOT EXISTS ledger_entries (
|
|
927
|
-
entry_id TEXT PRIMARY KEY,
|
|
928
|
-
schema TEXT NOT NULL,
|
|
929
|
-
created_at TEXT NOT NULL,
|
|
930
|
-
entry_type TEXT NOT NULL,
|
|
931
|
-
spine_eligible INTEGER NOT NULL,
|
|
932
|
-
authority_class TEXT NOT NULL,
|
|
933
|
-
grants_execution INTEGER NOT NULL,
|
|
934
|
-
export_class TEXT NOT NULL,
|
|
935
|
-
summary TEXT NOT NULL,
|
|
936
|
-
topic_hints_json TEXT NOT NULL,
|
|
937
|
-
status_effect TEXT NOT NULL,
|
|
938
|
-
refs_json TEXT NOT NULL,
|
|
939
|
-
source_path TEXT NOT NULL,
|
|
940
|
-
line_no INTEGER NOT NULL,
|
|
941
|
-
extra_json TEXT NOT NULL,
|
|
942
|
-
is_canonical INTEGER NOT NULL DEFAULT 0,
|
|
943
|
-
regenerable INTEGER NOT NULL DEFAULT 1,
|
|
944
|
-
can_authorize INTEGER NOT NULL DEFAULT 0,
|
|
945
|
-
indexed_at TEXT NOT NULL
|
|
946
|
-
);
|
|
947
|
-
CREATE TABLE IF NOT EXISTS refs (
|
|
948
|
-
entry_id TEXT NOT NULL,
|
|
949
|
-
ref_type TEXT NOT NULL,
|
|
950
|
-
ref TEXT NOT NULL,
|
|
951
|
-
FOREIGN KEY(entry_id) REFERENCES ledger_entries(entry_id)
|
|
952
|
-
);
|
|
953
|
-
CREATE TABLE IF NOT EXISTS topics (
|
|
954
|
-
entry_id TEXT NOT NULL,
|
|
955
|
-
topic TEXT NOT NULL,
|
|
956
|
-
source TEXT NOT NULL,
|
|
957
|
-
FOREIGN KEY(entry_id) REFERENCES ledger_entries(entry_id)
|
|
958
|
-
);
|
|
959
|
-
CREATE TABLE IF NOT EXISTS documents (
|
|
960
|
-
document_id TEXT PRIMARY KEY,
|
|
961
|
-
doc_type TEXT NOT NULL,
|
|
962
|
-
path TEXT NOT NULL,
|
|
963
|
-
title TEXT NOT NULL,
|
|
964
|
-
indexed_at TEXT NOT NULL
|
|
965
|
-
);
|
|
966
|
-
CREATE VIRTUAL TABLE IF NOT EXISTS fts_chunks
|
|
967
|
-
USING fts5(chunk_id UNINDEXED, source_type UNINDEXED, source_id UNINDEXED, title, body, ref UNINDEXED);
|
|
968
|
-
`)}function gY(r){if(r.includes("/topic-snapshots/"))return"topic_snapshot";if(r.includes("/ledger-digests/"))return"ledger_digest";if(r.includes("/consumer-registry/"))return"consumer_registry";if(r.includes("/bus-feed/"))return"bus_feed";if(r.includes("/receipts/"))return"receipt";if(r.includes("/ledger/"))return"ledger";return"document"}async function zT(r,n){let t=Fe(r,n);if(!Og(t))return[];let e=[];async function i(_){let c=await pv(_,{withFileTypes:!0});for(let u of c){let o=Fe(_,u.name);if(u.isDirectory()){if(u.name==="node_modules"||u.name===".git"||u.name==="_worktrees")continue;await i(o);continue}if(!u.isFile()||!nY.has(rY(u.name)))continue;e.push(DT(r,o))}}return await i(t),e.sort()}async function dY(r,n,t){let e=await Promise.all(qT.map((u)=>zT(n,u))),i=[...new Set(e.flat())].sort(),_=r.query(`
|
|
969
|
-
INSERT OR REPLACE INTO documents (document_id, doc_type, path, title, indexed_at)
|
|
970
|
-
VALUES (?, ?, ?, ?, ?)
|
|
971
|
-
`),c=r.query(`
|
|
972
|
-
INSERT INTO fts_chunks (chunk_id, source_type, source_id, title, body, ref)
|
|
973
|
-
VALUES (?, ?, ?, ?, ?, ?)
|
|
974
|
-
`);for(let u of i){let o=await RT(Fe(n,u),"utf-8"),$=iY(o,u.split("/").at(-1)??u),g=`doc:${u}`,d=gY(u);_.run(g,d,u,$,t),c.run(`doc:${u}`,"document",g,$,`${d} ${$} ${u}`,u)}return i.length}function fY(r){return I0(r).map((n)=>`${n.type}:${n.ref}`).join(" ")}function bY(r,n,t){let e=[n.entry_type,n.entry_id,n.status_effect!=="none"?n.status_effect:"",n.topic_hints.join(" "),fY(n.refs)].filter(Boolean).join(" ");r.query(`
|
|
975
|
-
INSERT OR REPLACE INTO ledger_entries
|
|
976
|
-
(entry_id, schema, created_at, entry_type, spine_eligible, authority_class,
|
|
977
|
-
grants_execution, export_class, summary, topic_hints_json, status_effect,
|
|
978
|
-
refs_json, source_path, line_no, extra_json, is_canonical, regenerable,
|
|
979
|
-
can_authorize, indexed_at)
|
|
980
|
-
VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, 0, 1, 0, ?)
|
|
981
|
-
`).run(n.entry_id,n.schema,n.created_at,n.entry_type,n.spine_eligible?1:0,n.authority_class,n.grants_execution?1:0,n.export_class,e,JSON.stringify(n.topic_hints),n.status_effect,JSON.stringify(n.refs),n.source_path,n.line_no,JSON.stringify(n.extra),t),r.query(`
|
|
982
|
-
INSERT INTO fts_chunks (chunk_id, source_type, source_id, title, body, ref)
|
|
983
|
-
VALUES (?, 'ledger_entry', ?, ?, ?, ?)
|
|
984
|
-
`).run(`ledger:${n.entry_id}`,n.entry_id,n.entry_id,e,`${n.source_path}:${n.line_no}`);let i=0;for(let c of I0(n.refs))r.query("INSERT INTO refs (entry_id, ref_type, ref) VALUES (?, ?, ?)").run(n.entry_id,c.type,c.ref),i+=1;let _=0;for(let c of n.topic_hints)r.query("INSERT INTO topics (entry_id, topic, source) VALUES (?, ?, ?)").run(n.entry_id,c,"topic_hints"),_+=1;return{refs:i,topics:_}}async function ST(r){let n=yT(r.projectRoot),t=r.dbPath??Ug(n);Cv(sv(t),{recursive:!0}),oY(t);let e=new m0(t),i=new Date().toISOString();try{$Y(e);let _=Fe(n,"docs","work","ledger","LEDGER.md"),c=0,u=0,o=0;if(Og(_)){let g=DT(n,_),d=(await RT(_,"utf-8")).split(`
|
|
985
|
-
`);for(let[f,b]of d.entries()){let m=uY(b,g,f+1);if(!m)continue;let w=bY(e,m,i);c+=1,u+=w.refs,o+=w.topics}}let $=await dY(e,n,i);return{dbPath:t,ledger_entries:c,refs:u,topics:o,documents:$}}finally{e.close()}}function WT(r){let n=I0(JSON.parse(r.refs_json)).map((t)=>`${t.type}:${t.ref}`);return{entry_id:r.entry_id,title:r.entry_id,type:r.entry_type,topic_hints:JSON.parse(r.topic_hints_json),status_effect:r.status_effect,refs:n,confidence:"metadata",is_canonical:!1,regenerable:!0,can_authorize:!1}}function wY(r){return{...WT(r),source_path:r.source_path,line_no:r.line_no}}function mY(r){return NT(r.toLowerCase()).split(/[^a-z0-9]+/).filter(Boolean).slice(0,8)}function IY(r){return r.map((n)=>`"${n.replace(/"/g,'""')}"`).join(" ")}function hT(r,n,t){let e=`%${n.join("%")}%`;return r.query(`
|
|
986
|
-
SELECT entry_id, entry_type, topic_hints_json, status_effect, refs_json
|
|
987
|
-
FROM ledger_entries
|
|
988
|
-
WHERE lower(summary) LIKE ?
|
|
989
|
-
OR lower(entry_id) LIKE ?
|
|
990
|
-
OR lower(topic_hints_json) LIKE ?
|
|
991
|
-
ORDER BY created_at DESC, entry_id ASC
|
|
992
|
-
LIMIT ?
|
|
993
|
-
`).all(e,e,e,t)}function ET(r){let n=new m0(r.dbPath,{readonly:!0});try{let t=mY(r.query);if(t.length===0)return[];let e=r.limit??10,i;try{i=n.query(`
|
|
994
|
-
WITH matches AS (
|
|
995
|
-
SELECT source_id, bm25(fts_chunks) AS rank
|
|
996
|
-
FROM fts_chunks
|
|
997
|
-
WHERE fts_chunks MATCH ?
|
|
998
|
-
AND source_type = 'ledger_entry'
|
|
999
|
-
)
|
|
1000
|
-
SELECT le.entry_id, le.entry_type, le.topic_hints_json, le.status_effect, le.refs_json
|
|
1001
|
-
FROM ledger_entries le
|
|
1002
|
-
JOIN matches ON matches.source_id = le.entry_id
|
|
1003
|
-
ORDER BY matches.rank ASC, le.created_at DESC, le.entry_id ASC
|
|
1004
|
-
LIMIT ?
|
|
1005
|
-
`).all(IY(t),e)}catch{i=hT(n,t,e)}if(i.length===0)i=hT(n,t,e);return i.map(WT)}finally{n.close()}}function jT(r){let n=new m0(r.dbPath,{readonly:!0});try{let t=n.query(`
|
|
1006
|
-
SELECT entry_id, entry_type, topic_hints_json, status_effect, refs_json, source_path, line_no
|
|
1007
|
-
FROM ledger_entries
|
|
1008
|
-
WHERE entry_id = ?
|
|
1009
|
-
OR entry_id = (
|
|
1010
|
-
SELECT entry_id FROM refs WHERE ref = ? ORDER BY entry_id ASC LIMIT 1
|
|
1011
|
-
)
|
|
1012
|
-
ORDER BY entry_id ASC
|
|
1013
|
-
LIMIT 1
|
|
1014
|
-
`).get(r.entryIdOrRef,r.entryIdOrRef);return t?wY(t):null}finally{n.close()}}var JT=new Set(["index","search","show"]);function MT(r){return r==="ledger"}function DY(r,n){if(r===void 0)return n;let t=mn(r,"limit");if(t<1||t>50)throw Error("--limit must be between 1 and 50");return t}function yY(r){if(r.length===0)return`ledger: no matching entries
|
|
1015
|
-
`;return`${r.map((n)=>[`entry: ${n.entry_id}`,`type: ${n.type}`,`topic_hints: ${n.topic_hints.join(", ")||"none"}`,`status_effect: ${n.status_effect}`,`refs: ${n.refs.join(", ")||"none"}`,`confidence: ${n.confidence}`,`is_canonical: ${n.is_canonical}`,`regenerable: ${n.regenerable}`,`can_authorize: ${n.can_authorize}`].join(`
|
|
1016
|
-
`)).join(`
|
|
1017
|
-
---
|
|
1018
|
-
`)}
|
|
1019
|
-
`}function qY(r){let n=hY(r,"docs","work","ledger","LEDGER.md");if(!OY(n))return!1;try{return UY(n,"utf-8").split(`
|
|
1020
|
-
`).some((t)=>t.trimStart().startsWith("- "))}catch{return!1}}async function AT(r,n){if(await TT({projectRoot:r,dbPath:n}))throw Error("ledger index is missing or stale; run `etiquette ledger index` first")}async function PT(r,n){let t=r[1];if(!t||!JT.has(t))throw Error(`ledger verb must be one of: ${[...JT].join(", ")}`);let e=RY(I(n,"project")??process.cwd()),i=I(n,"db")??Ug(e),_=Boolean(n.json);if(t==="index"){let c=await ST({projectRoot:e,dbPath:i});if(_){console.log(JSON.stringify(c,null,2));return}let u=["ledger_index:",` db: ${c.dbPath}`,` ledger_entries: ${c.ledger_entries}`,` refs: ${c.refs}`,` topics: ${c.topics}`,` documents: ${c.documents}`];if(c.ledger_entries===0&&qY(e))u.push("hint: the durable record lives in docs/work/ledger/LEDGER.md; this index is a separate query store over typed ledger-entry lines. See docs/CONCEPTS.md (Ledger: Durable Record vs Query Index).");console.log(u.join(`
|
|
1021
|
-
`));return}if(t==="search"){let u=I(n,"topic")??r.slice(2).join(" ").trim();if(!u)throw Error("<query> or --topic is required");await AT(e,i);let o=ET({dbPath:i,query:u,limit:DY(n.limit,10)});console.log(_?JSON.stringify(o,null,2):yY(o));return}if(t==="show"){let c=r[2];if(!c)throw Error("<entry_or_ref_id> is required");await AT(e,i);let u=jT({dbPath:i,entryIdOrRef:c});if(!u)throw Error(`unknown ledger entry or ref: ${c}`);console.log(JSON.stringify(u,null,2))}}Ir();import{resolve as yn}from"path";import{resolve as sY}from"path";import{createHash as JY}from"crypto";import{existsSync as AY,statSync as MY}from"fs";import{readdir as PY,readFile as kY,writeFile as XY,mkdir as GY}from"fs/promises";import{homedir as VY}from"os";import{basename as GT,dirname as FY,extname as VT,join as le,relative as lY,resolve as FT}from"path";import{Database as TY}from"bun:sqlite";import{mkdirSync as NY}from"fs";import{dirname as LY}from"path";function zY(r,n,t){return r.query(`PRAGMA table_info(${n})`).all().some((i)=>i.name===t)}function hg(r,n,t,e){if(!zY(r,n,t))r.exec(`ALTER TABLE ${n} ADD COLUMN ${e}`)}function SY(r){let n=r.query("PRAGMA table_info(memory_capsule_fts)").all();if(n.length>0&&!n.some((t)=>t.name==="search_text"))r.exec("DROP TABLE memory_capsule_fts;");r.exec(`
|
|
1022
|
-
CREATE VIRTUAL TABLE IF NOT EXISTS memory_capsule_fts
|
|
1023
|
-
USING fts5(capsule_id UNINDEXED, title, summary, category, evidence_refs_text, search_text);
|
|
1024
|
-
`)}function WY(r){return[...new Set(r.toLowerCase().split(/[^a-z0-9_]+/).filter((n)=>n.length>=2))]}function EY(r){return r.replace(/"/g,'""')}function jY(r,n){return r.map((t)=>`"${EY(t)}"*`).join(` ${n} `)}function kT(r,n,t){let e=new Set(r.map((i)=>i.capsule_id));for(let i of n){if(e.has(i.capsule_id))continue;if(r.push(i),e.add(i.capsule_id),r.length>=t)return}}function An(r){NY(LY(r),{recursive:!0});let n=new TY(r);n.exec(`
|
|
1025
|
-
PRAGMA journal_mode = WAL;
|
|
1026
|
-
PRAGMA busy_timeout = 5000;
|
|
1027
|
-
CREATE TABLE IF NOT EXISTS memory_candidates (
|
|
1028
|
-
candidate_id TEXT PRIMARY KEY,
|
|
1029
|
-
category TEXT NOT NULL,
|
|
1030
|
-
title TEXT NOT NULL,
|
|
1031
|
-
summary TEXT NOT NULL,
|
|
1032
|
-
risk_flags_json TEXT NOT NULL,
|
|
1033
|
-
candidate_json TEXT NOT NULL,
|
|
1034
|
-
promotion_status TEXT NOT NULL DEFAULT 'pending',
|
|
1035
|
-
rejection_reasons_json TEXT NOT NULL DEFAULT '[]',
|
|
1036
|
-
indexed_at TEXT NOT NULL
|
|
1037
|
-
);
|
|
1038
|
-
CREATE TABLE IF NOT EXISTS recall_capsules (
|
|
1039
|
-
capsule_id TEXT PRIMARY KEY,
|
|
1040
|
-
title TEXT NOT NULL,
|
|
1041
|
-
category TEXT NOT NULL,
|
|
1042
|
-
summary TEXT NOT NULL,
|
|
1043
|
-
confidence TEXT NOT NULL,
|
|
1044
|
-
stale_status TEXT NOT NULL,
|
|
1045
|
-
evidence_count INTEGER NOT NULL,
|
|
1046
|
-
evidence_refs_text TEXT NOT NULL DEFAULT '',
|
|
1047
|
-
capsule_json TEXT NOT NULL,
|
|
1048
|
-
updated_at TEXT NOT NULL
|
|
1049
|
-
);
|
|
1050
|
-
`),hg(n,"memory_candidates","promotion_status","promotion_status TEXT NOT NULL DEFAULT 'pending'"),hg(n,"memory_candidates","rejection_reasons_json","rejection_reasons_json TEXT NOT NULL DEFAULT '[]'"),hg(n,"recall_capsules","evidence_refs_text","evidence_refs_text TEXT NOT NULL DEFAULT ''"),hg(n,"recall_capsules","search_text","search_text TEXT NOT NULL DEFAULT ''"),SY(n);let t=(e)=>({capsule_id:e.capsule_id,title:e.title,category:e.category,confidence:e.confidence,stale_status:e.stale_status,evidence_count:e.evidence_count});return{dbPath:r,close:()=>n.close(),reset:()=>{n.exec("DELETE FROM memory_candidates; DELETE FROM recall_capsules;"),n.exec("DELETE FROM memory_capsule_fts;")},stats:()=>{let e=(i)=>n.query(i).get()?.count??0;return{candidates:{total:e("SELECT COUNT(*) AS count FROM memory_candidates"),pending:e("SELECT COUNT(*) AS count FROM memory_candidates WHERE promotion_status = 'pending'"),promoted:e("SELECT COUNT(*) AS count FROM memory_candidates WHERE promotion_status = 'promoted'"),rejected:e("SELECT COUNT(*) AS count FROM memory_candidates WHERE promotion_status = 'rejected'")},recall_capsules:e("SELECT COUNT(*) AS count FROM recall_capsules")}},insertCandidate:(e)=>{n.query(`
|
|
1051
|
-
INSERT OR REPLACE INTO memory_candidates
|
|
1052
|
-
(candidate_id, category, title, summary, risk_flags_json, candidate_json, promotion_status, rejection_reasons_json, indexed_at)
|
|
1053
|
-
VALUES (?, ?, ?, ?, ?, ?, 'pending', '[]', ?)
|
|
1054
|
-
`).run(e.candidate_id,e.category,e.title,e.summary,JSON.stringify(e.risk_flags),JSON.stringify(e),new Date().toISOString())},markCandidate:(e,i,_)=>{n.query(`
|
|
1055
|
-
UPDATE memory_candidates
|
|
1056
|
-
SET promotion_status = ?, rejection_reasons_json = ?
|
|
1057
|
-
WHERE candidate_id = ?
|
|
1058
|
-
`).run(i,JSON.stringify(_),e)},insertCapsule:(e,i="")=>{let _=e.evidence_refs.map((c)=>`${c.type}:${c.ref}`).join(" ");n.query(`
|
|
1059
|
-
INSERT OR REPLACE INTO recall_capsules
|
|
1060
|
-
(capsule_id, title, category, summary, confidence, stale_status, evidence_count, evidence_refs_text, search_text, capsule_json, updated_at)
|
|
1061
|
-
VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)
|
|
1062
|
-
`).run(e.capsule_id,e.title,e.category,e.summary,e.confidence,e.staleness.status,e.evidence_refs.length,_,i,JSON.stringify(e),e.updated_at),n.query("DELETE FROM memory_capsule_fts WHERE capsule_id = ?").run(e.capsule_id),n.query(`
|
|
1063
|
-
INSERT INTO memory_capsule_fts (capsule_id, title, summary, category, evidence_refs_text, search_text)
|
|
1064
|
-
VALUES (?, ?, ?, ?, ?, ?)
|
|
1065
|
-
`).run(e.capsule_id,e.title,e.summary,e.category,_,i)},search:(e,i)=>{let _=WY(e);if(_.length===0)return[];let c=_.some(($)=>$.includes("_")),u=[],o=($)=>n.query(`
|
|
1066
|
-
SELECT c.capsule_id, c.title, c.category, c.confidence, c.stale_status, c.evidence_count, c.capsule_json
|
|
1067
|
-
FROM memory_capsule_fts
|
|
1068
|
-
JOIN recall_capsules c ON c.capsule_id = memory_capsule_fts.capsule_id
|
|
1069
|
-
WHERE memory_capsule_fts MATCH ?
|
|
1070
|
-
ORDER BY bm25(memory_capsule_fts, 0.0, 3.0, 1.5, 1.0, 2.0, 0.6), c.updated_at DESC, c.capsule_id ASC
|
|
1071
|
-
LIMIT ?
|
|
1072
|
-
`).all(jY(_,"AND"),$);if(!c)try{kT(u,o(i),i)}catch{}if(u.length<i){let $=_.map(()=>["lower(title) LIKE ?","lower(summary) LIKE ?","lower(category) LIKE ?","lower(evidence_refs_text) LIKE ?","lower(search_text) LIKE ?"].join(" OR ")),g=_.flatMap((f)=>Array(5).fill(`%${f}%`)),d=n.query(`
|
|
1073
|
-
SELECT capsule_id, title, category, confidence, stale_status, evidence_count, capsule_json
|
|
1074
|
-
FROM recall_capsules
|
|
1075
|
-
WHERE ${$.map((f)=>`(${f})`).join(" AND ")}
|
|
1076
|
-
ORDER BY updated_at DESC, capsule_id ASC
|
|
1077
|
-
LIMIT ?
|
|
1078
|
-
`).all(...g,i-u.length);kT(u,d,i)}return u.map(t)},show:(e)=>{let i=n.query("SELECT capsule_json FROM recall_capsules WHERE capsule_id = ?").get(e);return i?JSON.parse(i.capsule_json):null},stale:(e)=>{return n.query(`
|
|
1079
|
-
SELECT capsule_id, title, category, confidence, stale_status, evidence_count, capsule_json
|
|
1080
|
-
FROM recall_capsules
|
|
1081
|
-
WHERE stale_status != 'current'
|
|
1082
|
-
ORDER BY updated_at DESC, capsule_id ASC
|
|
1083
|
-
LIMIT ?
|
|
1084
|
-
`).all(e).map(t)},rejected:(e)=>{return n.query(`
|
|
1085
|
-
SELECT candidate_id, title, category, risk_flags_json, rejection_reasons_json, candidate_json
|
|
1086
|
-
FROM memory_candidates
|
|
1087
|
-
WHERE promotion_status = 'rejected'
|
|
1088
|
-
ORDER BY indexed_at DESC, candidate_id ASC
|
|
1089
|
-
LIMIT ?
|
|
1090
|
-
`).all(e).map((_)=>{let c=JSON.parse(_.candidate_json);return{candidate_id:_.candidate_id,title:_.title,category:_.category,risk_flags:JSON.parse(_.risk_flags_json),rejection_reasons:JSON.parse(_.rejection_reasons_json),source_refs:c.source_refs}})}}}var O0=["docs/work/ledger","docs/work/tasks","docs/work/playbacks","internal/docs/playbacks","internal/docs/contracts",".etiquette/events"],vY=new Set([".md",".yaml",".yml",".json",".jsonl",".ndjson",".txt"]),XT=8000;function sn(r){return le(r,".etiquette","state","memory","index.db")}function YY(r){return r.replace(/[^A-Za-z0-9_.:-]+/g,"-").replace(/^-+|-+$/g,"")||"workspace"}function lT(r,n,t=new Date){let e=YY(n??GT(FT(r))),i=t.toISOString().slice(0,10);return le(VY(),".etiquette","exports",e,i)}function vT(r){return JY("sha256").update(r).digest("hex").slice(0,16)}function Rg(r){return r.replace(/\s+/g," ").trim()}function HY(r){let n=Rg(r.replace(/[`*_>#-]/g," "));return n.length>260?`${n.slice(0,257)}...`:n}function BY(r,n){let t=r.split(`
|
|
1091
|
-
`).find((e)=>e.startsWith("# "));if(!t)return n;return Rg(t.replace(/^#+\s*/,""))}function QY(r,n){let t=r.split(/\n\s*\n/).map((e)=>e.trim()).find((e)=>e.length>0&&!e.startsWith("#")&&!e.startsWith("```"));return HY(t??n)}function KY(r){let n=[];for(let e of r.split(`
|
|
1092
|
-
`)){let i=e.replace(/```[A-Za-z0-9_-]*/g," ");if(tr(i).filter((o)=>o!=="contains_source_snippet").length>0)continue;let c=i.replace(/[`*_>#|\[\]{}()]/g," "),u=Rg(c);if(u.length>0)n.push(u)}let t=Rg(n.join(" "));return t.length>XT?t.slice(0,XT):t}function aY(r){if(r.includes("/playbacks/"))return"playback_candidate";if(r.includes("/ledger/")||r.includes("/tasks/"))return"pattern";if(r.includes("hosted-pass-plane")||r.includes("event-spine"))return"decision";if(r.includes("workflow-memory"))return"adapter_note";return"onboarding"}function ZY(r){if(r.includes("/ledger/"))return{type:"ledger",ref:r};if(r.includes("/playbacks/"))return{type:"playback",ref:r};if(r.includes(".etiquette/events/"))return{type:"event",ref:r};return{type:"doc",ref:r}}async function CY(r,n){let t=le(r,n);if(!AY(t))return[];let e=[];async function i(_){let c=await PY(_,{withFileTypes:!0});for(let u of c){let o=le(_,u.name);if(u.isDirectory()){if(u.name==="node_modules"||u.name===".git"||u.name==="_worktrees")continue;await i(o);continue}if(!u.isFile())continue;if(!vY.has(VT(u.name)))continue;e.push(lY(r,o))}}return await i(t),e.sort()}async function U0(r){return(await Promise.all(O0.map((t)=>CY(r,t)))).flat().sort()}async function xY(r,n){let t=le(r,n),e=await kY(t,"utf-8"),i=GT(n,VT(n)).replace(/[-_]+/g," "),_=BY(e,i),c=QY(e,_),u=new Set;for(let $ of tr(`${_}
|
|
1093
|
-
${c}`))u.add($);let o=MY(t);return{candidate:{candidate_id:`cand_${vT(`${n}:${o.mtimeMs}:${o.size}`)}`,adapter:"local_importer",query:n,category:aY(n),title:_,summary:c,source_refs:[ZY(n)],confidence:"medium",risk_flags:[...u]},searchText:KY(e)}}function pY(r,n={}){let t=a4(r,n);if(t.filter((u)=>u!=="stale"&&u!=="contradicts_current_ledger").length>0)return null;let i=n.now??new Date().toISOString(),_=t.includes("stale")||t.includes("contradicts_current_ledger"),c={schema:"recall-capsule.v0",capsule_id:`mem_${vT(`${r.title}:${r.source_refs.map((u)=>u.ref).join("|")}`)}`,created_at:i,updated_at:i,scope:n.scope??{},category:r.category,title:r.title,summary:r.summary,why_it_matters:`Imported from ${r.source_refs[0]?.ref}; use as cited context, not authority.`,evidence_refs:r.source_refs,confidence:r.confidence,staleness:{status:_?"watch":"current",stale_if:_?"current ledger or receipt contradicts this capsule":void 0},recommended_action:{type:r.category==="playback_candidate"?"run_playback":"read_before_work"},authority_boundary:{can_authorize_work:!1,can_close_task:!1,can_replace_receipt:!1}};return nq(c),c}async function YT(r){let n=FT(r.projectRoot),t=r.dbPath??sn(n),e=r.exportDir!==void 0;if(e){if(r.localPrivate)throw Error("--local-private cannot be combined with shared capsule export");if(!r.confirmSharedExport)throw Error("--confirm-shared-export is required when writing shared capsule exports");if(!r.orgId)throw Error("--org-id is required when writing shared capsule exports");if(X(r.orgId,"--org-id"),r.workspaceId)X(r.workspaceId,"--workspace-id")}let i=An(t);try{i.reset();let _=await U0(n),c=[],u=0;for(let o of _){let{candidate:$,searchText:g}=await xY(n,o);i.insertCandidate($);let f=a4($,{localPrivate:r.localPrivate}).filter((m)=>m!=="stale"&&m!=="contradicts_current_ledger");if(f.length>0){u+=1,i.markCandidate($.candidate_id,"rejected",f);continue}if(e&&$.confidence==="low"){u+=1,i.markCandidate($.candidate_id,"rejected",["confidence_low_for_shared_export"]);continue}let b=pY($,{localPrivate:r.localPrivate,scope:e?{org_id:r.orgId,workspace_id:r.workspaceId}:{}});if(!b){u+=1,i.markCandidate($.candidate_id,"rejected",["no_durable_evidence"]);continue}if(i.markCandidate($.candidate_id,"promoted",[]),i.insertCapsule(b,g),c.push(b.capsule_id),r.exportDir){let m=le(r.exportDir,`${b.capsule_id}.json`);await GY(FY(m),{recursive:!0}),await XY(m,`${JSON.stringify(b,null,2)}
|
|
1094
|
-
`,"utf-8")}}return{candidates:_.length,promoted:c.length,rejected:u,capsuleIds:c}}finally{i.close()}}function rH(r){if(r.query?.trim()){let e=r.query.trim();return H(e,"memory context query"),e}let n=[r.laneRef,r.taskRef].map((e)=>e?.trim()).filter((e)=>Boolean(e));if(n.length===0)throw Error("memory context requires --lane, --task, or --query");let t=n.join(" ");return H(t,"memory context query"),t}function nH(r){if(r.orgId)X(r.orgId,"scope.org_id");if(r.workspaceId)X(r.workspaceId,"scope.workspace_id");if(r.laneRef)H(r.laneRef,"scope.lane_ref");if(r.taskRef)H(r.taskRef,"scope.task_ref");return{...r.orgId?{org_id:r.orgId}:{},...r.workspaceId?{workspace_id:r.workspaceId}:{},...r.laneRef?{lane_ref:r.laneRef}:{},...r.taskRef?{task_ref:r.taskRef}:{}}}function tH(r){return{capsule_id:r.capsule_id,title:r.title,category:r.category,summary:r.summary,why_it_matters:r.why_it_matters,confidence:r.confidence,stale_status:r.staleness.status,evidence_refs:r.evidence_refs,recommended_action:r.recommended_action}}function HT(r){if(r.limit<1||r.limit>50)throw Error("memory context limit must be between 1 and 50");let n=sY(r.projectRoot),t=rH(r),e=nH(r),i=r.at??new Date().toISOString();if(!Number.isFinite(Date.parse(i)))throw Error("--at must be an ISO-8601 timestamp");let _=An(r.dbPath??sn(n));try{let u=_.search(t,r.limit).map((o)=>_.show(o.capsule_id)).filter((o)=>o!==null).map(tH);return{schema:"memory-context.v0",generated_at:new Date(i).toISOString(),query:t,scope:e,items:u,content_boundary:{summaries_only:!0,raw_ledger_body_included:!1,raw_event_body_included:!1,raw_prompt_included:!1,raw_tool_output_included:!1,source_snippets_included:!1,local_paths_included:!1},authority_boundary:{can_authorize_work:!1,can_close_task:!1,can_replace_receipt:!1,can_mutate_ledger:!1,memory_is_execution_truth:!1}}}finally{_.close()}}import{createHash as MH}from"crypto";import{mkdir as PH,writeFile as kH}from"fs/promises";import{dirname as XH,posix as GH,resolve as q0}from"path";import{createHash as LH}from"crypto";import{mkdir as Vc,readdir as R0,readFile as CT,writeFile as xT}from"fs/promises";import{dirname as pT,join as Xr,posix as sT,resolve as kt,sep as zH}from"path";import{readFile as iH}from"fs/promises";import{extname as eH}from"path";var _H=["workspace-authority.v0"],cH=["personal_local","org_remote","runtime_cell"],uH=["local_workspace","org_workspace","none"],Pc=["org","workspace","lane","seat","session"],kc=["read_only","read_write"],Xc=["filesystem_like","context_pack","mcp_resource"],Gc=["none","candidate_only","curator_promoted"],oH=["disabled","scheduled_rollup","async_rollup"],$H=["creator_only","explicit_grant","org_admin_quorum","board_policy"],gH=["workspace","plane"];function dH(r){return typeof r==="object"&&r!==null&&!Array.isArray(r)}function Di(r,n){if(!dH(r))throw Error(`${n} must be an object`);return r}function Mt(r,n){let t=r[n];if(typeof t!=="string"||t.trim().length===0)throw Error(`${n} must be a non-empty string`);return t.trim()}function ve(r,n){let t=r[n];if(t===void 0)return;if(typeof t!=="string"||t.trim().length===0)throw Error(`${n} must be a non-empty string when present`);return t.trim()}function on(r,n){let t=r[n];if(typeof t!=="boolean")throw Error(`${n} must be a boolean`);return t}function Mn(r,n,t){if(typeof n!=="string"||!r.includes(n))throw Error(`${t} must be one of: ${r.join(", ")}`);return n}function fH(r,n){let t=r[n];if(!Array.isArray(t)||t.some((e)=>typeof e!=="string"||e.trim().length===0))throw Error(`${n} must be a string array`);return t.map((e)=>e.trim())}function bH(r,n){if(r.length>160)throw Error(`${n} must be <= 160 chars`);if(r.startsWith("/")||r.startsWith("\\")||/^[A-Za-z]:[\\/]/.test(r))throw Error(`${n} must be opaque or repo-relative, not a local absolute path`);if(/[a-z][a-z0-9+.-]*:\/\//i.test(r))throw Error(`${n} must be an opaque ref, not a URL`);let t=tr(r);if(t.length>0)throw Error(`${n} contains restricted shared content: ${t.join(", ")}`)}function gt(r,n){X(r,n)}function QT(r,n){H(r,n),bH(r,n)}async function wH(r){let n=await iH(r,"utf-8");if(eH(r).toLowerCase()===".json")return JSON.parse(n);return p(n)}function mH(r){let n=Di(r,"canonical_refs"),t={ledger_ref:ve(n,"ledger_ref"),memory_ref:ve(n,"memory_ref"),policy_ref:ve(n,"policy_ref"),roster_ref:ve(n,"roster_ref"),signing_ref:ve(n,"signing_ref")};for(let[e,i]of Object.entries(t))if(i)QT(i,`canonical_refs.${e}`);return t}function IH(r){let n=Di(r,"owner_role"),t={role_id:Mt(n,"role_id"),occupant_principal:Mt(n,"occupant_principal"),grant_ref:Mt(n,"grant_ref"),replacement_policy:Mn($H,n.replacement_policy,"owner_role.replacement_policy")};return gt(t.role_id,"owner_role.role_id"),gt(t.occupant_principal,"owner_role.occupant_principal"),QT(t.grant_ref,"owner_role.grant_ref"),t}function OH(r){if(r===void 0)return;let n=Di(r,"tenancy"),t={initiation_level:Mn(gH,n.initiation_level,"tenancy.initiation_level"),initiator_principal:Mt(n,"initiator_principal"),verify_before_initiate:on(n,"verify_before_initiate"),initiator_becomes_owner_role:on(n,"initiator_becomes_owner_role"),workspace_owner_may_delegate:on(n,"workspace_owner_may_delegate"),plane_authority_granted:on(n,"plane_authority_granted"),host_can_forge_workflow_truth:on(n,"host_can_forge_workflow_truth")};return gt(t.initiator_principal,"tenancy.initiator_principal"),t}function UH(r){if(!Array.isArray(r)||r.length===0)throw Error("memory_stores must be a non-empty array");return r.map((n,t)=>{let e=Di(n,`memory_stores[${t}]`),i={store_id:Mt(e,"store_id"),scope:Mn(Pc,e.scope,`memory_stores[${t}].scope`),access:Mn(kc,e.access,`memory_stores[${t}].access`),mount_mode:Mn(Xc,e.mount_mode,`memory_stores[${t}].mount_mode`),write_policy:Mn(Gc,e.write_policy,`memory_stores[${t}].write_policy`),evidence_required:on(e,"evidence_required")};if(gt(i.store_id,`memory_stores[${t}].store_id`),i.access==="read_only"&&i.write_policy!=="none")throw Error(`memory_stores[${t}] read_only stores must use write_policy: none`);if(i.access==="read_write"&&i.write_policy==="none")throw Error(`memory_stores[${t}] read_write stores require candidate_only or curator_promoted write_policy`);if(i.scope==="org"&&i.access==="read_write"&&i.write_policy!=="curator_promoted")throw Error(`memory_stores[${t}] org shared read_write stores require write_policy: curator_promoted`);if(i.scope==="workspace"&&i.access==="read_write"&&i.write_policy==="candidate_only")throw Error(`memory_stores[${t}] workspace shared read_write stores require curator_promoted writes`);if(i.access==="read_write"&&i.evidence_required!==!0)throw Error(`memory_stores[${t}] read_write stores must require evidence`);return i})}function hH(r,n){if(r===void 0)return;let t=Di(r,"consolidation"),e={mode:Mn(oH,t.mode,"consolidation.mode"),input_stores:fH(t,"input_stores"),output_store:Mt(t,"output_store"),mutates_input_store:on(t,"mutates_input_store"),output_policy:Mn(["candidate_only","curator_promoted"],t.output_policy,"consolidation.output_policy")},i=new Set(n.map((c)=>c.store_id));for(let c of e.input_stores)if(gt(c,"consolidation.input_stores[]"),!i.has(c))throw Error(`consolidation input store is not declared: ${c}`);if(gt(e.output_store,"consolidation.output_store"),!i.has(e.output_store))throw Error(`consolidation output store is not declared: ${e.output_store}`);if(e.mode!=="disabled"&&e.input_stores.length===0)throw Error("consolidation input_stores must not be empty unless mode is disabled");if(e.mode!=="disabled"&&e.mutates_input_store!==!1)throw Error("evidence consolidation must not mutate input memory stores");let _=n.find((c)=>c.store_id===e.output_store);if(e.mode!=="disabled"){if(!_||_.access!=="read_write")throw Error("consolidation output_store must be read_write");if(_.write_policy!==e.output_policy)throw Error("consolidation output_policy must match the output store write_policy")}return e}function RH(r){let n=Di(r,"authority_boundary");return{local_workspace_is_canonical:on(n,"local_workspace_is_canonical"),org_workspace_is_canonical:on(n,"org_workspace_is_canonical"),runtime_cell_can_mutate_canonical_truth:on(n,"runtime_cell_can_mutate_canonical_truth"),creator_is_root_authority:on(n,"creator_is_root_authority"),portal_rbac_is_workflow_authority:on(n,"portal_rbac_is_workflow_authority"),memory_can_authorize_work:on(n,"memory_can_authorize_work")}}function DH(r){let n=Di(r,"workspace_authority"),t=UH(n.memory_stores),e={schema:Mn(_H,n.schema,"schema"),workspace_id:Mt(n,"workspace_id"),org_id:ve(n,"org_id"),authority_mode:Mn(cH,n.authority_mode,"authority_mode"),canonical_location:Mn(uH,n.canonical_location,"canonical_location"),creator_principal:Mt(n,"creator_principal"),owner_role:IH(n.owner_role),tenancy:OH(n.tenancy),canonical_refs:mH(n.canonical_refs),memory_stores:t,consolidation:hH(n.consolidation,t),authority_boundary:RH(n.authority_boundary)};return KT(e),e}async function yH(r){return DH(await wH(r))}function BT(r,n){for(let t of n)if(!r.canonical_refs[t])throw Error(`canonical_refs.${t} is required for ${r.authority_mode}`)}function KT(r){if(gt(r.workspace_id,"workspace_id"),r.org_id)gt(r.org_id,"org_id");if(gt(r.creator_principal,"creator_principal"),r.authority_boundary.portal_rbac_is_workflow_authority!==!1)throw Error("portal RBAC cannot be workflow authority");if(r.authority_boundary.memory_can_authorize_work!==!1)throw Error("memory cannot authorize workflow actions");if(r.tenancy){if(r.tenancy.initiation_level!=="workspace")throw Error("workspace-authority cannot grant plane provisioning authority");if(r.tenancy.initiator_principal!==r.creator_principal)throw Error("tenancy initiator_principal must match creator_principal");if(r.tenancy.plane_authority_granted!==!1)throw Error("workspace provisioning must not grant plane authority");if(r.tenancy.host_can_forge_workflow_truth!==!1)throw Error("workspace host must not be able to forge workflow truth")}if(r.authority_mode==="personal_local"){if(r.canonical_location!=="local_workspace")throw Error("personal_local workspaces require canonical_location: local_workspace");if(r.authority_boundary.local_workspace_is_canonical!==!0)throw Error("personal_local workspaces must mark local_workspace_is_canonical true");if(r.authority_boundary.org_workspace_is_canonical!==!1)throw Error("personal_local workspaces must mark org_workspace_is_canonical false");if(r.authority_boundary.runtime_cell_can_mutate_canonical_truth!==!1)throw Error("managed execution contexts must not mutate canonical truth");BT(r,["ledger_ref","memory_ref","policy_ref","roster_ref"])}if(r.authority_mode==="org_remote"){if(!r.org_id)throw Error("org_remote workspaces require org_id");if(!r.tenancy)throw Error("org_remote workspaces require tenancy policy");if(r.tenancy.verify_before_initiate!==!0)throw Error("org_remote workspace initiation requires verified principal");if(r.tenancy.initiator_becomes_owner_role!==!0)throw Error("org_remote workspace initiator must create the owner role");if(r.tenancy.workspace_owner_may_delegate!==!0)throw Error("org_remote workspace owner role must be delegatable");if(r.canonical_location!=="org_workspace")throw Error("org_remote workspaces require canonical_location: org_workspace");if(r.authority_boundary.local_workspace_is_canonical!==!1)throw Error("org_remote local working copies must not be canonical truth");if(r.authority_boundary.org_workspace_is_canonical!==!0)throw Error("org_remote workspaces must mark org_workspace_is_canonical true");if(r.authority_boundary.creator_is_root_authority!==!1)throw Error("org_remote creator is provenance only, not root authority");if(r.owner_role.replacement_policy==="creator_only")throw Error("org_remote owner role must be replaceable by org policy");if(r.authority_boundary.runtime_cell_can_mutate_canonical_truth!==!1)throw Error("managed execution contexts must not mutate canonical truth");BT(r,["ledger_ref","memory_ref","policy_ref","roster_ref","signing_ref"])}if(r.authority_mode==="runtime_cell"){if(r.tenancy)throw Error("managed execution profiles must not carry tenancy authority");if(r.canonical_location!=="none")throw Error("managed execution profiles require canonical_location: none");if(r.authority_boundary.local_workspace_is_canonical!==!1||r.authority_boundary.org_workspace_is_canonical!==!1||r.authority_boundary.runtime_cell_can_mutate_canonical_truth!==!1||r.authority_boundary.creator_is_root_authority!==!1)throw Error("managed execution profiles must be authority-false")}}function aT(r){return yH(r).then(qH)}function qH(r){KT(r);let n=r.consolidation?.mode??"disabled",t=r.tenancy;return{schema:"workspace-authority-validation.v0",workspace_id:r.workspace_id,...r.org_id?{org_id:r.org_id}:{},verdict:"valid",authority_mode:r.authority_mode,canonical_location:r.canonical_location,creator_is_root_authority:r.authority_boundary.creator_is_root_authority,local_workspace_is_canonical:r.authority_boundary.local_workspace_is_canonical,org_workspace_is_canonical:r.authority_boundary.org_workspace_is_canonical,runtime_cell_can_mutate_canonical_truth:r.authority_boundary.runtime_cell_can_mutate_canonical_truth,owner_role:{role_id:r.owner_role.role_id,occupant_principal:r.owner_role.occupant_principal,replacement_policy:r.owner_role.replacement_policy},tenancy_summary:{initiation_level:t?.initiation_level??(r.authority_mode==="runtime_cell"?"none":"workspace"),initiator_principal:t?.initiator_principal??(r.authority_mode==="runtime_cell"?null:r.creator_principal),verify_before_initiate:t?.verify_before_initiate??r.authority_mode==="org_remote",plane_authority_granted:t?.plane_authority_granted??!1,host_can_forge_workflow_truth:t?.host_can_forge_workflow_truth??!1,workspace_owner_may_delegate:t?.workspace_owner_may_delegate??r.owner_role.replacement_policy!=="creator_only"},memory_summary:{stores:r.memory_stores.length,filesystem_like_stores:r.memory_stores.filter((e)=>e.mount_mode==="filesystem_like").length,shared_read_write_stores:r.memory_stores.filter((e)=>e.access==="read_write"&&(e.scope==="org"||e.scope==="workspace")).length,consolidation_mode:n,runner_memory_boundary:"external_runner_recall_not_etiquette_authority",consolidation_mutates_input_store:r.consolidation?.mutates_input_store??!1},authority_boundary:r.authority_boundary}}var Dg=["ledger","receipt","playback","event","doc","bus","commit"];var TH=["local_importer","manual"],NH=["claude_memory","claude_mem","mempalace","vector_search"],Ls=[...TH,...NH];var $n={manifest_ref:"store.yaml",candidate_files_dir:"candidates/files",candidate_entries_dir:"candidates/entries",rollups_dir:"rollups"};function rt(r){return Xr(r,".etiquette","memory","stores")}function D0(r){let n=r??new Date().toISOString();if(!Number.isFinite(Date.parse(n)))throw Error("--at must be an ISO-8601 timestamp");return new Date(n).toISOString()}function rN(r){return LH("sha256").update(JSON.stringify(r)).digest("hex").slice(0,16)}function h0(r,n){if(typeof r!=="object"||r===null||Array.isArray(r))throw Error(`${n} must be an object`);return r}function Pt(r,n){let t=r[n];if(typeof t!=="string"||t.trim().length===0)throw Error(`${n} must be a non-empty string`);return t.trim()}function SH(r,n){let t=r[n];if(typeof t!=="boolean")throw Error(`${n} must be a boolean`);return t}function yi(r,n,t){if(typeof n!=="string"||!r.includes(n))throw Error(`${t} must be one of: ${r.join(", ")}`);return n}function qi(r,n){return Xr(r,n)}function Ye(r){return X(r,"store_id"),r}function WH(r){let n=r.trim();if(!n)throw Error("--path is required");if(n.startsWith("/")||n.startsWith("\\")||/^[A-Za-z]:[\\/]/.test(n))throw Error("--path must be repo-relative, not an absolute local path");if(n.includes("\\"))throw Error("--path must use POSIX / separators");let t=sT.normalize(n);if(t==="."||t.startsWith("../")||t==="..")throw Error("--path must stay inside the memory store");return H(t,"path"),t}function EH(r,n){let t=r.trim();if(!t)throw Error(`${n} is required`);if(t.startsWith("/")||t.startsWith("\\")||/^[A-Za-z]:[\\/]/.test(t))throw Error(`${n} must be store-relative, not an absolute local path`);if(t.includes("\\"))throw Error(`${n} must use POSIX / separators`);let e=sT.normalize(t);if(e==="."||e.startsWith("../")||e==="..")throw Error(`${n} must stay inside the memory store`);return H(e,n),e.replace(/^\.\/+/,"")}function jH(...r){return r.join("/").replaceAll(zH,"/")}async function nN(r){let n=await CT(r,"utf-8");return p(n)}async function y0(r,n){await Vc(pT(r),{recursive:!0}),await xT(r,Cr(n))}function tN(r,n="memory store"){if(Ye(r.store_id),r.access==="read_only"&&r.write_policy!=="none")throw Error(`${n} read_only stores must use write_policy: none`);if(r.access==="read_write"&&r.write_policy==="none")throw Error(`${n} read_write stores require candidate_only or curator_promoted write_policy`);if(r.scope==="org"&&r.access==="read_write"&&r.write_policy!=="curator_promoted")throw Error(`${n} org shared read_write stores require write_policy: curator_promoted`);if(r.scope==="workspace"&&r.access==="read_write"&&r.write_policy==="candidate_only")throw Error(`${n} workspace shared read_write stores require curator_promoted writes`);if(r.access==="read_write"&&r.evidence_required!==!0)throw Error(`${n} read_write stores must require evidence`)}function JH(r){let n=h0(r,"memory_store");if(yi(["memory-store.v0"],n.schema,"schema")!=="memory-store.v0")throw Error("schema must be memory-store.v0");let t={schema:"memory-store.v0",store_id:Pt(n,"store_id"),scope:yi(Pc,n.scope,"scope"),access:yi(kc,n.access,"access"),mount_mode:yi(Xc,n.mount_mode,"mount_mode"),write_policy:yi(Gc,n.write_policy,"write_policy"),evidence_required:SH(n,"evidence_required"),created_at:Pt(n,"created_at"),storage_layout:$n,authority_boundary:{store_can_authorize_work:!1,agent_can_write_canonical_memory:!1,shared_write_back_requires_promotion:!0}};return tN(t),t}function AH(r){let n=h0(r,"memory_store_entry");if(yi(["memory-store-entry.v0"],n.schema,"schema")!=="memory-store-entry.v0")throw Error("schema must be memory-store-entry.v0");let t=n.evidence_refs;if(!Array.isArray(t))throw Error("evidence_refs must be an array");return{schema:"memory-store-entry.v0",entry_id:Pt(n,"entry_id"),store_id:Pt(n,"store_id"),path:Pt(n,"path"),status:"candidate",created_at:Pt(n,"created_at"),content_ref:Pt(n,"content_ref"),evidence_refs:t.map((e,i)=>{let _=h0(e,`evidence_refs[${i}]`);return{type:yi(Dg,_.type,`evidence_refs[${i}].type`),ref:Pt(_,"ref")}}),risk_flags:Array.isArray(n.risk_flags)?n.risk_flags.map(String):[],authority_boundary:{entry_can_authorize_work:!1,entry_can_replace_canonical_memory:!1,agent_wrote_canonical_memory:!1}}}function iN(r){let n=r.split(",").map((t)=>t.trim()).filter(Boolean).map((t)=>{let e=t.indexOf(":");if(e<=0||e===t.length-1)throw Error("--evidence entries must use type:ref, for example receipt:abc");let i=t.slice(0,e),_=t.slice(e+1);if(!Dg.includes(i))throw Error(`--evidence type must be one of: ${Dg.join(", ")}`);return H(_,"evidence.ref"),{type:i,ref:_}});if(n.length===0)throw Error("--evidence must include at least one type:ref");return n}async function eN(r){let n={schema:"memory-store.v0",store_id:Ye(r.storeId),scope:r.scope,access:r.access,mount_mode:r.mountMode??"filesystem_like",write_policy:r.writePolicy??(r.access==="read_only"?"none":"candidate_only"),evidence_required:r.evidenceRequired??r.access==="read_write",created_at:D0(r.at),storage_layout:$n,authority_boundary:{store_can_authorize_work:!1,agent_can_write_canonical_memory:!1,shared_write_back_requires_promotion:!0}};tN(n);let t=kt(r.storesRoot??rt(r.projectRoot)),e=qi(t,n.store_id);return await Vc(Xr(e,$n.candidate_files_dir),{recursive:!0}),await Vc(Xr(e,$n.candidate_entries_dir),{recursive:!0}),await Vc(Xr(e,$n.rollups_dir),{recursive:!0}),await y0(Xr(e,$n.manifest_ref),n),n}async function Ti(r){let n=kt(r.storesRoot??rt(r.projectRoot));return JH(await nN(Xr(qi(n,Ye(r.storeId)),$n.manifest_ref)))}async function ZT(r){try{return(await R0(r,{withFileTypes:!0})).filter((t)=>t.isFile()&&/\.ya?ml$/i.test(t.name)).length}catch(n){if(n.code==="ENOENT")return 0;throw n}}async function _N(r,n,t){let e=kt(n??rt(r)),i=qi(e,t.store_id);return{store:t,counts:{candidate_entries:await ZT(Xr(i,$n.candidate_entries_dir)),rollups:await ZT(Xr(i,$n.rollups_dir))}}}async function cN(r){let n=await Ti(r);return _N(r.projectRoot,r.storesRoot,n)}async function yg(r){let n=kt(r.storesRoot??rt(r.projectRoot)),t;try{t=await R0(n,{withFileTypes:!0})}catch(i){if(i.code==="ENOENT")return[];throw i}let e=[];for(let i of t){if(!i.isDirectory())continue;let _=await Ti({...r,storeId:i.name});e.push(await _N(r.projectRoot,r.storesRoot,_))}return e.sort((i,_)=>i.store.store_id.localeCompare(_.store.store_id))}async function qg(r){let n=await Ti(r);if(n.access==="read_only"||n.write_policy==="none")throw Error(`memory store ${n.store_id} is read-only and cannot accept candidates`);if(n.evidence_required&&r.evidenceRefs.length===0)throw Error(`memory store ${n.store_id} requires evidence refs`);let t=WH(r.path);H(r.content,"content");let e=D0(r.at),i=`mem-entry:${rN({store_id:n.store_id,path:t,content:r.content,evidence_refs:r.evidenceRefs})}`,_=kt(r.storesRoot??rt(r.projectRoot)),c=qi(_,n.store_id),u=jH($n.candidate_files_dir,t),o={schema:"memory-store-entry.v0",entry_id:i,store_id:n.store_id,path:t,status:"candidate",created_at:e,content_ref:u,evidence_refs:r.evidenceRefs,risk_flags:tr(r.content),authority_boundary:{entry_can_authorize_work:!1,entry_can_replace_canonical_memory:!1,agent_wrote_canonical_memory:!1}};return await Vc(pT(Xr(c,u)),{recursive:!0}),await xT(Xr(c,u),r.content),await y0(Xr(c,$n.candidate_entries_dir,`${i.replace(":","-")}.yaml`),o),o}async function uN(r,n,t){let e=kt(n??rt(r)),i=Xr(qi(e,Ye(t)),$n.candidate_entries_dir),_;try{_=await R0(i,{withFileTypes:!0})}catch(u){if(u.code==="ENOENT")return[];throw u}let c=[];for(let u of _){if(!u.isFile()||!/\.ya?ml$/i.test(u.name))continue;c.push(AH(await nN(Xr(i,u.name))))}return c.sort((u,o)=>u.entry_id.localeCompare(o.entry_id))}async function oN(r){return uN(r.projectRoot,r.storesRoot,r.storeId)}async function $N(r){if(r.entry.store_id!==r.storeId)throw Error(`entry ${r.entry.entry_id} belongs to store ${r.entry.store_id}, not ${r.storeId}`);let n=kt(r.storesRoot??rt(r.projectRoot)),t=EH(r.entry.content_ref,"content_ref");return CT(Xr(qi(n,Ye(r.storeId)),t),"utf-8")}async function gN(r){if(r.inputStores.length===0)throw Error("--input must include at least one store id");let n=await Ti({...r,storeId:r.outputStore});if(n.access!=="read_write"||n.write_policy==="none")throw Error(`consolidation output store ${n.store_id} must be read_write`);let t=(await Promise.all(r.inputStores.map((u)=>uN(r.projectRoot,r.storesRoot,u)))).flat(),e=D0(r.at),i=`mem-rollup:${rN({input_stores:r.inputStores,output_store:n.store_id,entries:t.map((u)=>u.entry_id),at:e})}`,_={schema:"memory-consolidation-rollup.v0",rollup_id:i,created_at:e,input_stores:r.inputStores.map(Ye),output_store:n.store_id,candidate_count:t.length,entry_refs:t.map((u)=>`${u.store_id}:${u.entry_id}`),summary:t.length===0?"No candidate memory entries were available for consolidation.":`Consolidated ${t.length} candidate memory entr${t.length===1?"y":"ies"} from ${r.inputStores.join(", ")}.`,output_policy:n.write_policy,status:"candidate",authority_boundary:{rollup_can_authorize_work:!1,mutates_input_store:!1,promotes_without_curator:!1}},c=kt(r.storesRoot??rt(r.projectRoot));return await y0(Xr(qi(c,n.store_id),$n.rollups_dir,`${i.replace(":","-")}.yaml`),_),_}function VH(r){let n=r??new Date().toISOString();if(!Number.isFinite(Date.parse(n)))throw Error("--at must be an ISO-8601 timestamp");return new Date(n).toISOString()}function FH(r){return MH("sha256").update(JSON.stringify(r)).digest("hex").slice(0,16)}function dN(r,n){if(H(r,n),r.startsWith("/")||r.startsWith("\\")||/^[A-Za-z]:[\\/]/.test(r))throw Error(`${n} must be opaque or repo-relative, not a local absolute path`);return r}function fN(r,n){return X(r,n),r}function lH(r,n){let t=r??`imports/${n}`;if(t.startsWith("/")||t.startsWith("\\")||/^[A-Za-z]:[\\/]/.test(t))throw Error("--path-prefix must be repo-relative");if(t.includes("\\"))throw Error("--path-prefix must use POSIX / separators");let e=GH.normalize(t);if(e==="."||e===".."||e.startsWith("../"))throw Error("--path-prefix must stay inside the target store");return H(e,"path_prefix"),e.replace(/\/+$/g,"")}function vH(r){let n=[...r.evidence_refs,{type:"doc",ref:`memory-entry:${r.entry_id}`}],t=new Set;return n.filter((e)=>{let i=`${e.type}:${e.ref}`;if(t.has(i))return!1;return t.add(i),!0})}async function Tg(r){let n=VH(r.at),t=q0(r.sourceProjectRoot),e=q0(r.targetProjectRoot),i=fN(r.sourceStoreId,"source_store"),_=fN(r.targetStoreId,"target_store"),c=dN(r.sourceWorkspaceRef??"child-workspace","source_workspace_ref"),u=dN(r.targetWorkspaceRef??"parent-workspace","target_workspace_ref"),o=lH(r.pathPrefix,i);await Ti({projectRoot:t,storesRoot:r.sourceStoresRoot,storeId:i});let $=await Ti({projectRoot:e,storesRoot:r.targetStoresRoot,storeId:_});if($.access!=="read_write"||$.write_policy==="none")throw Error(`target memory store ${_} must be read_write`);let g=await oN({projectRoot:t,storesRoot:r.sourceStoresRoot,storeId:i}),d=[];for(let b of g){let m=await $N({projectRoot:t,storesRoot:r.sourceStoresRoot,storeId:i,entry:b}),w=vH(b),O=await qg({projectRoot:e,storesRoot:r.targetStoresRoot,storeId:_,path:`${o}/${b.path}`,content:m,evidenceRefs:w,at:n});d.push({source_entry_id:b.entry_id,source_content_ref:b.content_ref,target_entry_id:O.entry_id,target_content_ref:O.content_ref,target_path:O.path,evidence_refs:w})}let f={schema:"memory-drain-import-receipt.v0",receipt_id:`memory-drain-import:${FH({sourceWorkspaceRef:c,targetWorkspaceRef:u,sourceStoreId:i,targetStoreId:_,imported:d.map((b)=>`${b.source_entry_id}->${b.target_entry_id}`)})}`,created_at:n,source:{workspace_ref:c,store_id:i,candidate_count:g.length},target:{workspace_ref:u,store_id:_,imported_count:d.length},imported_entries:d,authority_boundary:{drain_can_authorize_work:!1,drain_can_promote_memory:!1,drain_can_write_parent_ledger:!1,runtime_pod_can_write_parent_ledger:!1,imported_entries_are_candidates:!0,source_store_mutated:!1}};if(r.receiptPath){let b=q0(r.receiptPath);await PH(XH(b),{recursive:!0}),await kH(b,Cr(f))}return f}import{createHash as YH}from"crypto";import{mkdir as HH,writeFile as BH}from"fs/promises";import{dirname as QH,posix as KH,resolve as T0}from"path";function aH(r){let n=r??new Date().toISOString();if(!Number.isFinite(Date.parse(n)))throw Error("--at must be an ISO-8601 timestamp");return new Date(n).toISOString()}function ZH(r){return YH("sha256").update(JSON.stringify(r)).digest("hex").slice(0,16)}function bN(r,n){return X(r,n),r}function CH(r){return X(r,"shard_id"),r}function wN(r,n){if(H(r,n),r.startsWith("/")||r.startsWith("\\")||/^[A-Za-z]:[\\/]/.test(r))throw Error(`${n} must be opaque or repo-relative, not a local absolute path`);return r}function xH(r){if(!r)return;if(r.startsWith("/")||r.startsWith("\\")||/^[A-Za-z]:[\\/]/.test(r))throw Error("--receipt-dir must be repo-relative");if(r.includes("\\"))throw Error("--receipt-dir must use POSIX / separators");let n=KH.normalize(r);if(n==="."||n===".."||n.startsWith("../"))throw Error("--receipt-dir must stay inside the target project");return H(n,"receipt_dir"),n.replace(/\/+$/g,"")}function pH(r,n){return r?`${r}/${n}.memory-drain-import-receipt.yaml`:void 0}function sH(r,n){return n?T0(r,n):void 0}function r3(r,n){return`imports/${r}/${n}`}async function mN(r){let n=aH(r.at),t=T0(r.targetProjectRoot),e=bN(r.sourceStoreId,"source_store"),i=bN(r.targetStoreId,"target_store"),_=wN(r.targetWorkspaceRef??"org-workspace","target_workspace_ref"),c=xH(r.receiptDir);if(r.shards.length===0)throw Error("--shard must include at least one id=path entry");let u=new Set,o=[];for(let g of r.shards){let d=CH(g.shardId);if(u.has(d))throw Error(`duplicate shard id: ${d}`);u.add(d);let f=wN(g.sourceWorkspaceRef??d,"source_workspace_ref"),b=pH(c,d),m=await Tg({sourceProjectRoot:g.sourceProjectRoot,targetProjectRoot:t,sourceStoresRoot:r.sourceStoresRoot,targetStoresRoot:r.targetStoresRoot,sourceStoreId:e,targetStoreId:i,sourceWorkspaceRef:f,targetWorkspaceRef:_,pathPrefix:r3(d,e),receiptPath:sH(t,b),at:n});o.push({shardId:d,sourceWorkspaceRef:f,receipt:m,receiptRef:b})}let $={schema:"memory-sharded-drain-import-receipt.v0",receipt_id:`memory-sharded-drain-import:${ZH({targetWorkspaceRef:_,sourceStoreId:e,targetStoreId:i,shards:o.map((g)=>`${g.shardId}:${g.receipt.receipt_id}`)})}`,created_at:n,topology:{drain_topology:"sharded_workspace_drains",shard_key:"workspace_or_team",shard_count:o.length,candidate_import_surface:"candidate_import",promotion_surface:"authority_promotion_gate",single_global_drain_is_demo_only:!0},source:{source_store_id:e,target_workspace_ref:_,target_store_id:i},shards:o.map((g)=>({shard_id:g.shardId,source_workspace_ref:g.sourceWorkspaceRef,source_store_id:e,target_store_id:i,child_receipt_id:g.receipt.receipt_id,...g.receiptRef?{child_receipt_ref:g.receiptRef}:{},candidate_count:g.receipt.source.candidate_count,imported_count:g.receipt.target.imported_count})),totals:{candidate_count:o.reduce((g,d)=>g+d.receipt.source.candidate_count,0),imported_count:o.reduce((g,d)=>g+d.receipt.target.imported_count,0)},authority_boundary:{sharded_drain_can_authorize_work:!1,sharded_drain_can_promote_candidates:!1,sharded_drain_can_write_parent_ledger:!1,child_drains_can_write_parent_ledger:!1,candidate_import_is_canonical_truth:!1,imported_entries_are_candidates:!0,promotion_gate_required:!0}};if(r.receiptPath){let g=T0(r.receiptPath);await HH(QH(g),{recursive:!0}),await BH(g,Cr($))}return $}import{resolve as Ng}from"path";function N0(r){let n=Ng(r.projectRoot),t=An(r.dbPath??sn(n));try{return t.search(r.query,r.limit)}finally{t.close()}}function IN(r){let n=Ng(r.projectRoot),t=An(r.dbPath??sn(n));try{return t.show(r.capsuleId)}finally{t.close()}}function ON(r){let n=Ng(r.projectRoot),t=An(r.dbPath??sn(n));try{return t.stale(r.limit)}finally{t.close()}}function UN(r){let n=Ng(r.projectRoot),t=An(r.dbPath??sn(n));try{return t.rejected(r.limit)}finally{t.close()}}function hN(r){return N0({projectRoot:r.projectRoot,dbPath:r.dbPath,query:r.topic,limit:r.limit})}import{existsSync as He}from"fs";import{readdir as DN,readFile as n3}from"fs/promises";import{extname as yN,join as Fc,resolve as RN}from"path";var qN=new Set([".md",".yaml",".yml",".json",".jsonl",".ndjson",".txt"]);async function t3(r,n){let t=Fc(r,n);if(!He(t))return 0;let e=0;async function i(_){let c=await DN(_,{withFileTypes:!0});for(let u of c){let o=Fc(_,u.name);if(u.isDirectory()){if(u.name==="node_modules"||u.name===".git"||u.name==="_worktrees")continue;await i(o);continue}if(u.isFile()&&qN.has(yN(u.name)))e+=1}}return await i(t),e}async function i3(r){let n=Fc(r,"docs","work","receipts");if(!He(n))return 0;let t=0;async function e(i){let _=await DN(i,{withFileTypes:!0});for(let c of _){let u=Fc(i,c.name);if(c.isDirectory()){await e(u);continue}if(!c.isFile()||!qN.has(yN(c.name)))continue;try{let o=await n3(u,"utf-8"),$=p(o);if(typeof $==="object"&&$!==null&&!Array.isArray($)&&$.schema==="memory-drain-import-receipt.v0")t+=1}catch{}}}return await e(n),t}function e3(r){return r.reduce((n,t)=>({candidate_entries:n.candidate_entries+t.counts.candidate_entries,rollups:n.rollups+t.counts.rollups}),{candidate_entries:0,rollups:0})}async function TN(r){let n=RN(r.projectRoot),t=r.dbPath??sn(n),e=RN(r.storesRoot??rt(n)),i=await U0(n),_=await Promise.all(O0.map(async(g)=>({path:g,present:He(Fc(n,g)),file_count:await t3(n,g)}))),c;if(He(t)){let g=An(t);try{c=g.stats()}finally{g.close()}}else c={candidates:{total:0,pending:0,promoted:0,rejected:0},recall_capsules:0};let u=await yg({projectRoot:n,storesRoot:e}),o=e3(u),$=await i3(n);return{schema:"memory-capability-status.v0",module_status:"experimental",parity_posture:{managed_runtime_filesystem_memory:"partial",mem0_style_semantic_memory:"reserved",full_feature_parity_claimed:!1},evidence_sources:{approved_scan_dirs:_,approved_file_count:i.length,active_import_adapters:["local_importer","manual"],reserved_import_adapters:["provider_memory_importers"]},recall_index:{db_initialized:He(t),search_adapter:"sqlite_fts",vector_adapter:"reserved",stats:c},store_lifecycle:{stores_root_initialized:He(e),store_count:u.length,candidate_entries:o.candidate_entries,rollups:o.rollups,stores:u},remote_writeback:{mode:"candidate_only",drain_import_receipts:$,drain_can_write_parent_ledger:!1},consolidation:{status:"candidate_rollups_available",rollups:o.rollups,marination_is_same_primitive:!1},authority_boundary:{memory_can_authorize_work:!1,memory_can_close_task:!1,memory_can_merge:!1,memory_can_mutate_ledger:!1,memory_is_execution_truth:!1},missing_for_full_parity:["semantic vector adapter","scheduled curator promotion job","org_remote memory promotion policy UI","provider memory importer adapters"]}}var NN=new Set(["index","search","show","preflight","context","status","stale","rejected","store","consolidate","drain-import","sharded-drain-import"]);function LN(r){return r==="memory"}function lc(r,n){if(r===void 0)return n;let t=mn(r,"limit");if(t<1||t>50)throw Error("--limit must be between 1 and 50");return t}function L0(r){if(r.length===0)return`memory: no matching capsules
|
|
1095
|
-
`;return`${r.map((n)=>[`capsule: ${n.capsule_id}`,`title: ${n.title}`,`category: ${n.category}`,`confidence: ${n.confidence}`,`stale_status: ${n.stale_status}`,`evidence_count: ${n.evidence_count}`].join(`
|
|
1096
|
-
`)).join(`
|
|
1097
|
-
---
|
|
1098
|
-
`)}
|
|
1099
|
-
`}function _3(r){if(r.length===0)return`memory: no rejected candidates
|
|
1100
|
-
`;return`${r.map((n)=>[`candidate: ${n.candidate_id}`,`title: ${n.title}`,`category: ${n.category}`,`risk_flags: ${n.risk_flags.join(", ")||"none"}`,`rejection_reasons: ${n.rejection_reasons.join(", ")||"none"}`,`source_refs: ${n.source_refs.map((t)=>`${t.type}:${t.ref}`).join(", ")}`].join(`
|
|
1101
|
-
`)).join(`
|
|
1102
|
-
---
|
|
1103
|
-
`)}
|
|
1104
|
-
`}function c3(r){let n=[r.scope.org_id?`org_id=${r.scope.org_id}`:void 0,r.scope.workspace_id?`workspace_id=${r.scope.workspace_id}`:void 0,r.scope.lane_ref?`lane_ref=${r.scope.lane_ref}`:void 0,r.scope.task_ref?`task_ref=${r.scope.task_ref}`:void 0].filter(Boolean).join(" "),t=r.items.length===0?[" capsules: none"]:r.items.flatMap((e)=>[` - ${e.capsule_id}`,` title: ${e.title}`,` category: ${e.category}`,` confidence: ${e.confidence}`,` stale_status: ${e.stale_status}`,` evidence_refs: ${e.evidence_refs.map((i)=>`${i.type}:${i.ref}`).join(", ")}`]);return["memory_context:",` schema: ${r.schema}`,` query: ${r.query}`,` scope: ${n||"workspace_local"}`," boundary: summaries-only; advisory memory; cannot authorize, close, replace receipts, or mutate ledger",...t].join(`
|
|
1105
|
-
`)+`
|
|
1106
|
-
`}function Lg(r,n,t){if(!r.includes(n))throw Error(`--${t} must be one of: ${r.join(", ")}`);return n}function u3(r,n){let t=r[n];if(t===void 0)return;if(t===!0)return!0;if(t==="true")return!0;if(t==="false")return!1;throw Error(`--${n} must be true or false`)}function zN(r){return[`store: ${r.store.store_id}`,`scope: ${r.store.scope}`,`access: ${r.store.access}`,`mount_mode: ${r.store.mount_mode}`,`write_policy: ${r.store.write_policy}`,`evidence_required: ${String(r.store.evidence_required)}`,`candidate_entries: ${r.counts.candidate_entries}`,`rollups: ${r.counts.rollups}`,`agent_can_write_canonical_memory: ${String(r.store.authority_boundary.agent_can_write_canonical_memory)}`].join(`
|
|
1107
|
-
`)}function o3(r){if(r.length===0)return`memory_stores: none
|
|
1108
|
-
`;return`${r.map(zN).join(`
|
|
1109
|
-
---
|
|
1110
|
-
`)}
|
|
1111
|
-
`}function $3(r){return["memory_capability_status:",` schema: ${r.schema}`,` module_status: ${r.module_status}`,` full_feature_parity_claimed: ${String(r.parity_posture.full_feature_parity_claimed)}`,` managed_runtime_filesystem_memory: ${r.parity_posture.managed_runtime_filesystem_memory}`,` mem0_style_semantic_memory: ${r.parity_posture.mem0_style_semantic_memory}`,` approved_file_count: ${r.evidence_sources.approved_file_count}`,` recall_capsules: ${r.recall_index.stats.recall_capsules}`,` memory_candidates: ${r.recall_index.stats.candidates.total}`,` rejected_candidates: ${r.recall_index.stats.candidates.rejected}`,` search_adapter: ${r.recall_index.search_adapter}`,` vector_adapter: ${r.recall_index.vector_adapter}`,` store_count: ${r.store_lifecycle.store_count}`,` store_candidate_entries: ${r.store_lifecycle.candidate_entries}`,` rollups: ${r.store_lifecycle.rollups}`,` drain_import_receipts: ${r.remote_writeback.drain_import_receipts}`,` memory_can_authorize_work: ${String(r.authority_boundary.memory_can_authorize_work)}`,` memory_can_mutate_ledger: ${String(r.authority_boundary.memory_can_mutate_ledger)}`,` memory_is_execution_truth: ${String(r.authority_boundary.memory_is_execution_truth)}`,` marination_is_same_primitive: ${String(r.consolidation.marination_is_same_primitive)}`,` missing_for_full_parity: ${r.missing_for_full_parity.join(", ")}`].join(`
|
|
1112
|
-
`)+`
|
|
1113
|
-
`}function g3(r){let n=mr(r);if(n.length===0)throw Error("--shard must include at least one id=path entry");return n.map((t)=>{let e=t.indexOf("=");if(e<=0||e===t.length-1)throw Error("--shard entries must use id=path");let i=t.slice(e+1).trim();if(i.length===0)throw Error("--shard entries must use id=path");return{shardId:t.slice(0,e).trim(),sourceProjectRoot:yn(i)}})}async function SN(r,n){let t=r[1];if(!t||!NN.has(t))throw Error(`memory verb must be one of: ${[...NN].join(", ")}`);let e=yn(I(n,"project")??process.cwd()),i=I(n,"db"),_=Boolean(n.json);if(t==="index"){let u=n.export===!0?lT(e,I(n,"workspace-id")):I(n,"export"),o=Boolean(n["local-private"]);if(o&&!_)console.error(["WARNING: --local-private bypasses only the private-context promotion guard.","Local-private capsules stay local and must not be shared, exported, or used as authority."].join(`
|
|
1114
|
-
`));let $=await YT({projectRoot:e,dbPath:i,exportDir:u,localPrivate:o,orgId:I(n,"org-id"),workspaceId:I(n,"workspace-id"),confirmSharedExport:Boolean(n["confirm-shared-export"])});console.log(_?JSON.stringify($,null,2):["memory_index:",` candidates: ${$.candidates}`,` promoted: ${$.promoted}`,` rejected: ${$.rejected}`].join(`
|
|
1115
|
-
`));return}if(t==="status"){let c=I(n,"root")?yn(D(n,"root")):void 0,u=await TN({projectRoot:e,dbPath:i,storesRoot:c});console.log(_?JSON.stringify(u,null,2):$3(u));return}if(t==="store"){let c=r[2];if(!c||!["init","list","show","add"].includes(c))throw Error("memory store verb must be one of: init, list, show, add");let u=I(n,"root")?yn(D(n,"root")):void 0;if(c==="init"){let $=Lg(kc,D(n,"access"),"access"),g=await eN({projectRoot:e,storesRoot:u,storeId:D(n,"store"),scope:Lg(Pc,D(n,"scope"),"scope"),access:$,mountMode:I(n,"mount-mode")?Lg(Xc,D(n,"mount-mode"),"mount-mode"):void 0,writePolicy:I(n,"write-policy")?Lg(Gc,D(n,"write-policy"),"write-policy"):void 0,evidenceRequired:u3(n,"evidence-required"),at:I(n,"at")});console.log(_?JSON.stringify(g,null,2):["memory_store_init:",` store_id: ${g.store_id}`,` scope: ${g.scope}`,` access: ${g.access}`,` write_policy: ${g.write_policy}`,` agent_can_write_canonical_memory: ${String(g.authority_boundary.agent_can_write_canonical_memory)}`].join(`
|
|
1116
|
-
`));return}if(c==="list"){let $=await yg({projectRoot:e,storesRoot:u});console.log(_?JSON.stringify($,null,2):o3($));return}if(c==="show"){let $=await cN({projectRoot:e,storesRoot:u,storeId:D(n,"store")});console.log(_?JSON.stringify($,null,2):`${zN($)}
|
|
1117
|
-
`);return}let o=await qg({projectRoot:e,storesRoot:u,storeId:D(n,"store"),path:D(n,"path"),content:D(n,"content"),evidenceRefs:iN(D(n,"evidence")),at:I(n,"at")});console.log(_?JSON.stringify(o,null,2):["memory_store_candidate:",` entry_id: ${o.entry_id}`,` store_id: ${o.store_id}`,` path: ${o.path}`,` content_ref: ${o.content_ref}`,` evidence_refs: ${o.evidence_refs.map(($)=>`${$.type}:${$.ref}`).join(", ")}`,` agent_wrote_canonical_memory: ${String(o.authority_boundary.agent_wrote_canonical_memory)}`].join(`
|
|
1118
|
-
`));return}if(t==="consolidate"){let c=I(n,"root")?yn(D(n,"root")):void 0,u=await gN({projectRoot:e,storesRoot:c,inputStores:mr(n.input),outputStore:D(n,"out"),at:I(n,"at")});console.log(_?JSON.stringify(u,null,2):["memory_consolidation_rollup:",` rollup_id: ${u.rollup_id}`,` input_stores: ${u.input_stores.join(", ")}`,` output_store: ${u.output_store}`,` candidate_count: ${u.candidate_count}`,` output_policy: ${u.output_policy}`,` mutates_input_store: ${String(u.authority_boundary.mutates_input_store)}`,` promotes_without_curator: ${String(u.authority_boundary.promotes_without_curator)}`].join(`
|
|
1119
|
-
`));return}if(t==="drain-import"){let c=await Tg({sourceProjectRoot:yn(D(n,"from-project")),targetProjectRoot:e,sourceStoresRoot:I(n,"from-root")?yn(D(n,"from-root")):void 0,targetStoresRoot:I(n,"to-root")?yn(D(n,"to-root")):void 0,sourceStoreId:D(n,"from-store"),targetStoreId:D(n,"to-store"),sourceWorkspaceRef:I(n,"source-ref"),targetWorkspaceRef:I(n,"target-ref"),pathPrefix:I(n,"path-prefix"),receiptPath:I(n,"receipt")?yn(D(n,"receipt")):void 0,at:I(n,"at")});console.log(_?JSON.stringify(c,null,2):["memory_drain_import:",` receipt_id: ${c.receipt_id}`,` source: ${c.source.workspace_ref}/${c.source.store_id}`,` target: ${c.target.workspace_ref}/${c.target.store_id}`,` imported_count: ${c.target.imported_count}`,` drain_can_write_parent_ledger: ${String(c.authority_boundary.drain_can_write_parent_ledger)}`,` imported_entries_are_candidates: ${String(c.authority_boundary.imported_entries_are_candidates)}`,` source_store_mutated: ${String(c.authority_boundary.source_store_mutated)}`].join(`
|
|
1120
|
-
`));return}if(t==="sharded-drain-import"){let c=await mN({targetProjectRoot:e,sourceStoreId:D(n,"from-store"),targetStoreId:D(n,"to-store"),shards:g3(n.shard),sourceStoresRoot:I(n,"from-root")?yn(D(n,"from-root")):void 0,targetStoresRoot:I(n,"to-root")?yn(D(n,"to-root")):void 0,targetWorkspaceRef:I(n,"target-ref"),receiptDir:I(n,"receipt-dir"),receiptPath:I(n,"receipt")?yn(D(n,"receipt")):void 0,at:I(n,"at")});console.log(_?JSON.stringify(c,null,2):["memory_sharded_drain_import:",` receipt_id: ${c.receipt_id}`,` drain_topology: ${c.topology.drain_topology}`,` shard_key: ${c.topology.shard_key}`,` shard_count: ${c.topology.shard_count}`,` imported_count: ${c.totals.imported_count}`,` promotion_gate_required: ${String(c.authority_boundary.promotion_gate_required)}`,` sharded_drain_can_write_parent_ledger: ${String(c.authority_boundary.sharded_drain_can_write_parent_ledger)}`,` candidate_import_is_canonical_truth: ${String(c.authority_boundary.candidate_import_is_canonical_truth)}`].join(`
|
|
1121
|
-
`));return}if(t==="search"){let c=r.slice(2).join(" ").trim();if(!c)throw Error("<query> is required");let u=N0({projectRoot:e,dbPath:i,query:c,limit:lc(n.limit,10)});console.log(_?JSON.stringify(u,null,2):L0(u));return}if(t==="show"){let c=r[2];if(!c)throw Error("<capsule_id> is required");let u=IN({projectRoot:e,dbPath:i,capsuleId:c});if(!u)throw Error(`unknown capsule: ${c}`);console.log(JSON.stringify(u,null,2));return}if(t==="preflight"){let c=r.slice(2).join(" ").trim();if(!c)throw Error("<lane-or-task> is required");let u=hN({projectRoot:e,dbPath:i,topic:c,limit:lc(n.limit,5)});console.log(_?JSON.stringify(u,null,2):L0(u));return}if(t==="context"){let c=r.slice(2).join(" ").trim(),u=I(n,"query")??(c||void 0),o=HT({projectRoot:e,dbPath:i,query:u,laneRef:I(n,"lane"),taskRef:I(n,"task"),orgId:I(n,"org-id"),workspaceId:I(n,"workspace-id"),limit:lc(n.limit,5)});console.log(_?JSON.stringify(o,null,2):c3(o));return}if(t==="stale"){let c=ON({projectRoot:e,dbPath:i,limit:lc(n.limit,10)});console.log(_?JSON.stringify(c,null,2):L0(c));return}if(t==="rejected"){let c=UN({projectRoot:e,dbPath:i,limit:lc(n.limit,10)});console.log(_?JSON.stringify(c,null,2):_3(c))}}Ir();import{existsSync as d3}from"fs";import{mkdir as f3,writeFile as b3}from"fs/promises";import{dirname as w3,join as m3,relative as I3,resolve as WN}from"path";var EN=new Set(["scaffold"]);function jN(r){return r==="receipt"}function O3(r,n){let t=I3(r,n);return t&&!t.startsWith("..")?t:n}function U3(r){let t=I(r,"at")??new Date().toISOString();if(!Number.isFinite(Date.parse(t)))throw Error("--at must be an ISO-8601 timestamp");return new Date(t).toISOString()}function h3(r,n,t){return["---","schema: receipt.v0",`task_id: ${r}`,`execution_seat: ${n}`,"status: partial # success | partial | blocked | failed \u2014 set before posting",`created_at: ${t}`,"sources_read: []","files_changed: []","validation: []","risks: []","next_owner:","---","",`# Receipt: ${r} \u2014 ${n}`,"","## Verdict","","<!-- One or two lines: what was done and the outcome. Match the status above. -->","","## Evidence","","<!-- What proves the work happened: commits, diffs, artifact refs, session runbook refs. -->","","## Validation","","<!-- Commands run and observed results (build/test/lint output tails). -->","","## Next Steps","","<!-- Follow-ups, open risks, and the next owner if any. -->",""].join(`
|
|
1122
|
-
`)}async function R3(r){let n=WN(I(r,"project")??process.cwd()),t=D(r,"task"),e=D(r,"seat"),i=U3(r),_=WN(I(r,"out")??m3(n,"docs","work","receipts",`${t}-${e}.md`)),c=O3(n,_);if(d3(_)&&!r.force)throw Error(`receipt already exists: ${c} (pass --force to overwrite)`);return await f3(w3(_),{recursive:!0}),await b3(_,h3(t,e,i)),{schema:"receipt-scaffold.v0",receipt_ref:c,task:t,seat:e,created_at:i,next_steps:["fill Verdict, Evidence, Validation, and Next Steps; set status",`etiquette post --role implementation-return --lane ${t} --from ${e} --to <seat> --project .`,`etiquette return check --task ${t} --seat ${e} --project .`],authority_boundary:{scaffold_only:!0,scaffold_is_completion_evidence:!1,can_authorize:!1,can_grant:!1,can_merge:!1,can_close:!1}}}function D3(r){return["receipt_scaffold:",` receipt: ${r.receipt_ref}`,` task: ${r.task}`,` seat: ${r.seat}`,"next_steps:",...r.next_steps.map((n)=>` - ${n}`)," boundary: scaffold only; a scaffolded receipt is not completion evidence and does not authorize, grant, merge, or close"].join(`
|
|
1123
|
-
`)}async function JN(r,n){let t=r[1];if(!t||!EN.has(t))throw Error(`receipt verb must be one of: ${[...EN].join(", ")}`);let e=await R3(n);console.log(n.json?JSON.stringify(e,null,2):D3(e))}Ir();import{resolve as Ni}from"path";import{createHash as y3}from"crypto";import{mkdir as q3,writeFile as T3}from"fs/promises";import{dirname as N3}from"path";function L3(r){return y3("sha256").update(r).digest("hex").slice(0,12)}function z3(r,n){if(r===void 0)return n;if(typeof r==="string")return r;return JSON.stringify(r)}function S3(r){let n=new Set;for(let t of tr(r)){if(t==="contains_local_path")n.add("local_path");if(t==="contains_hostname")n.add("hostname");if(t==="contains_credential")n.add("credential");if(t==="contains_raw_prompt")n.add("raw_prompt");if(t==="contains_raw_tool_output")n.add("raw_tool_output");if(t==="contains_source_snippet")n.add("source_snippet")}if(/\b(?:uncited|citation missing|no evidence_ref|without citation)\b/i.test(r))n.add("uncited_claim");if(/\b(?:unsupported_schema_field|unknown field|extra field|not in schema)\b/i.test(r))n.add("unsupported_schema_field");return[...n]}function W3(r,n){if(r.kind==="conformance")return r.forbidden_content_classes;let t=n.filter((e)=>e.fixture_kind==="known_bad").map((e)=>e.content_class);return[...new Set(t)]}function E3(r,n){if(r.length===0)throw Error("rubric sandbox needs at least one declared content class");if(n.fixtures.filter((e)=>e.fixture_kind==="known_good").length<1)throw Error("fixture coverage requires at least one known_good fixture");for(let e of r)if(n.fixtures.filter((_)=>_.fixture_kind==="known_bad"&&_.content_class===e).length<2)throw Error(`fixture coverage requires at least 2 known_bad fixtures for ${e}`)}function j3(r){if(typeof r==="string"){let n=r.match(/\bvalidation_signal:(pass|warn|reject)\b/i);return n?n[1].toLowerCase():void 0}if(typeof r==="object"&&r!==null&&!Array.isArray(r)){let n=r.validation_signal;if(n==="pass"||n==="warn"||n==="reject")return n}return}function J3(r,n){let t=z3(n.input,n.input_ref);if(r.kind==="validation"){let c=j3(n.input);if(c)return{actual:c,reason:`validation fixture declared ${c}`}}let e=S3(t),i=r.kind==="conformance"?r.forbidden_content_classes:Ec.filter((c)=>c===n.content_class),_=e.filter((c)=>i.includes(c));if(_.length>0)return{actual:"reject",reason:`detected forbidden content class: ${_.sort().join(", ")}`};return{actual:"pass",reason:"no forbidden content classes detected"}}async function AN(r){let n=r.runEnvironment??"local";if(!Jt.includes(n))throw Error(`run_environment must be one of: ${Jt.join(", ")}`);let t=W3(r.rubric,r.fixtureSet.fixtures);E3(t,r.fixtureSet);let e=r.runAt?new Date(r.runAt).toISOString():new Date().toISOString(),i=r.fixtureSet.fixtures.map((c)=>{let u=J3(r.rubric,c);return{fixture_id:c.fixture_id,expected:c.expected,actual:u.actual,reason:u.reason}}),_={schema:"sandbox-run-receipt.v0",receipt_id:`sandbox-run:${r.rubric.rubric_id}:${L3(`${r.fixtureSet.fixture_set_id}:${e}`)}`,rubric_id:r.rubric.rubric_id,rubric_version:r.rubric.rubric_version,fixture_set_ref:`fixture-set:${r.fixtureSet.fixture_set_id}`,results:i,summary:{total_fixtures:i.length,known_bad_rejected:r.fixtureSet.fixtures.filter((c,u)=>c.fixture_kind==="known_bad"&&i[u]?.actual==="reject").length,known_good_accepted:r.fixtureSet.fixtures.filter((c,u)=>c.fixture_kind==="known_good"&&i[u]?.actual==="pass").length,unexpected_outcomes:i.filter((c)=>c.actual!==c.expected).length},run_at:e,run_by:r.runBy,run_environment:n};if(g0(_),r.receiptPath)await q3(N3(r.receiptPath),{recursive:!0}),await T3(r.receiptPath,Cr(_));return _}function MN(r){let n={schema_valid_rubric:!0,schema_valid_fixture_set:r.receipt.fixture_set_ref.startsWith("fixture-set:"),sandbox_run_receipt:r.receipt.summary.unexpected_outcomes===0,known_bad_rejection:r.receipt.summary.known_bad_rejected>0,known_good_acceptance:r.receipt.summary.known_good_accepted>0};if(r.receipt.rubric_id!==r.rubric.rubric_id)n.sandbox_run_receipt=!1;if(r.receipt.rubric_version!==r.rubric.rubric_version)n.sandbox_run_receipt=!1;let t=r.policy?.required_evidence??[...$g],e=t.filter((u)=>!n[u]),i=r.grantRef??r.policy?.grant_ref??null;if(!i)e.push("grant_ref");let c=!t.every((u)=>n[u])?"blocked":i?"ready_to_activate":"ready_for_grant";return{rubric_id:r.rubric.rubric_id,rubric_version:r.rubric.rubric_version,evidence:n,missing:e,grant_ref:i,recommendation:c,authority_boundary:{can_activate_rubric:!1,requires_operator_principal_grant:!0}}}var PN=new Set(["validate","sandbox","promote-check"]);function kN(r){return r==="rubric"}function A3(r){if(r===void 0)return"local";if(typeof r!=="string"||!Jt.includes(r))throw Error(`--environment must be one of: ${Jt.join(", ")}`);return r}function M3(r){return["rubric_validate:",` rubric_id: ${r.rubric_id}`,` rubric_version: ${r.rubric_version}`,` kind: ${r.kind}`,` status: ${r.status}`].join(`
|
|
1124
|
-
`)}function P3(r){return["rubric_sandbox:",` receipt_id: ${r.receipt_id}`,` rubric_id: ${r.rubric_id}`,` total_fixtures: ${r.summary.total_fixtures}`,` known_bad_rejected: ${r.summary.known_bad_rejected}`,` known_good_accepted: ${r.summary.known_good_accepted}`,` unexpected_outcomes: ${r.summary.unexpected_outcomes}`].join(`
|
|
1125
|
-
`)}function k3(r){return["rubric_promotion_check:",` rubric_id: ${r.rubric_id}`,` recommendation: ${r.recommendation}`,` missing: ${r.missing.join(", ")||"none"}`,` can_activate_rubric: ${String(r.authority_boundary.can_activate_rubric)}`].join(`
|
|
1126
|
-
`)}async function XN(r,n){let t=r[1];if(!t||!PN.has(t))throw Error(`rubric verb must be one of: ${[...PN].join(", ")}`);let e=Boolean(n.json);if(t==="validate"){let i=await dg(Ni(D(n,"rubric")));console.log(e?JSON.stringify(i,null,2):M3(i));return}if(t==="sandbox"){let i=await dg(Ni(D(n,"rubric"))),_=await Zq(Ni(D(n,"fixtures"))),c=await AN({rubric:i,fixtureSet:_,runBy:D(n,"run-by"),runEnvironment:A3(n.environment),runAt:I(n,"at"),receiptPath:I(n,"receipt")?Ni(D(n,"receipt")):void 0});console.log(e?JSON.stringify(c,null,2):P3(c));return}if(t==="promote-check"){let i=await dg(Ni(D(n,"rubric"))),_=await fg(Ni(D(n,"receipt"))),c=I(n,"policy"),u=c?await Cq(Ni(c)):void 0,o=MN({rubric:i,receipt:_,policy:u,grantRef:I(n,"grant-ref")});console.log(e?JSON.stringify(o,null,2):k3(o))}}Ir();import{resolve as p3}from"path";import{spawnSync as X3}from"child_process";import{access as G3,readFile as vN}from"fs/promises";import{join as rn,posix as V3}from"path";var E0="0.141.0",z0="docs/CODEX_CLIENT_COMPATIBILITY.md",F3="https://etiquette.example.com/releases",l3="packages/control/src/agent-plane/index.ts",GN="internal/docs/contracts/production-agent-plane";var v3=["remote-runtime app-server/exec-server canaries","plugin-scoped MCP adapter canaries","hook/action-auth resume canaries"],J0=[{id:"shell-installer",label:"signed shell installer",kind:"primary",private_repo_compatible:!0,artifact:`install.sh from https://etiquette.example.com over signed artifacts at ${F3}`,ga_note:"Use as the primary first-run path; install user-local and keep agent integrations explicit."},{id:"npm",label:"npm-compatible package registry",kind:"primary",private_repo_compatible:!0,artifact:"signed npm tarball or private npm registry package",ga_note:"Use for Node-heavy teams, CI, and npx-style checks while the source repo remains private."},{id:"homebrew-tap",label:"private Homebrew tap",kind:"wrapper",private_repo_compatible:!0,artifact:"formula wrapper over the same signed CLI artifact",ga_note:"Use for macOS convenience after the npm/global CLI artifact is proven."},{id:"github-release",label:"GitHub release artifact",kind:"primary",private_repo_compatible:!0,artifact:"signed tarball plus SHA256SUMS",ga_note:"Use as a universal artifact channel; the repository may stay private."},{id:"codex-plugin-private",label:"private Codex plugin channel",kind:"plugin",private_repo_compatible:!0,artifact:"Codex plugin/skills/MCP bundle",ga_note:"Use for Codex seat ergonomics; it must not add authority semantics."},{id:"claude-code-plugin-private",label:"private Claude Code plugin channel",kind:"plugin",private_repo_compatible:!0,artifact:"Claude Code plugin/skills/hooks/MCP bundle",ga_note:"Use for Claude Code seat ergonomics; receipts remain workflow proof."},{id:"chocolatey-internal",label:"internal Chocolatey feed",kind:"wrapper",private_repo_compatible:!0,artifact:"Windows wrapper over the same signed CLI artifact",ga_note:"Use after the primary CLI artifact is proven."},{id:"winget-private",label:"private WinGet source",kind:"wrapper",private_repo_compatible:!0,artifact:"Windows manifest over the same signed CLI artifact",ga_note:"Use after the primary CLI artifact is proven."},{id:"secure-addon",label:"secure access-assurance add-on",kind:"secure-addon",private_repo_compatible:!0,artifact:"access-assurance and revocation overlay",ga_note:"Use only for teams that need restricted-seat admission."},{id:"runtime-oci",label:"managed execution OCI image",kind:"runtime-image",private_repo_compatible:!0,artifact:"container image for managed verification and execution",ga_note:"Use for managed execution, separate from Core CLI GA."}];async function nt(r){try{return await G3(r),!0}catch{return!1}}function YN(r){return typeof r==="object"&&r!==null&&!Array.isArray(r)?r:null}function VN(r){return typeof r==="string"&&r.trim().length>0?r.trim():null}function Y3(r){return Array.isArray(r)?r.filter((n)=>typeof n==="string"):[]}function FN(r){let n=YN(r);if(!n)return{};return Object.fromEntries(Object.entries(n).filter((t)=>typeof t[1]==="string"&&t[1].trim().length>0))}function l(r,n,t,e,i){return{id:n,status:r,summary:t,evidence_ref:e,...i?{next_action:i}:{}}}function S0(r,n){return typeof r[n]==="string"&&r[n].trim().length>0}async function W0(r,n,t){let e=r[n]?.trim();if(!e)return{declared:!1,present:!1,ref:"package.json"};let i=e.match(/\b(scripts\/[A-Za-z0-9._/-]+\.sh)\b/)?.[1]??null;if(!i)return{declared:!0,present:!0,ref:"package.json"};return{declared:!0,present:await nt(rn(t,i)),ref:i}}function H3(r){let n=V3.normalize(r.replaceAll("\\","/"));if(n.startsWith("../")||n===".."||n.startsWith("/")||/^[A-Za-z]:\//.test(n))return null;return n}function B3(r,n){if(!r||!n)return null;return`${r.replace(/^@/,"").replaceAll("/","-")}-${n}.tgz`}function Q3(r){return typeof r==="string"&&/^\d+\.\d+\.\d+$/.test(r)}function K3(r){if(!r)return null;return/^[a-z0-9][a-z0-9._-]{1,62}[a-z0-9]$/.test(r)?r:null}function a3(r){if(!r)return[];return r.split(",").map((n)=>n.trim()).filter(Boolean)}function Z3(r,n,t){if(!t)return l("block","tag_uniqueness","cannot derive release tag for remote uniqueness check","package.json","set a GA package version before checking remote tags");let e=n.trim();if(!e||e.startsWith("-"))return l("block","tag_uniqueness","remote tag uniqueness check requires a safe remote name or URL","operator:--verify-tag-remote","rerun with --verify-tag-remote origin or a trusted remote URL");let i=`refs/tags/${t}`,_=X3("git",["ls-remote","--tags",e,i,`${i}^{}`],{cwd:r,encoding:"utf-8",env:{...process.env,GIT_TERMINAL_PROMPT:"0"},timeout:15000}),c=`git ls-remote --tags ${e} ${i}`;if(_.error)return l("block","tag_uniqueness",`remote tag uniqueness check failed: ${_.error.message}`,c,"verify credentials/network access, then rerun the remote tag check");if(_.status!==0){let u=(_.stderr||_.stdout||"git ls-remote returned non-zero").trim().split(`
|
|
1127
|
-
`)[0];return l("block","tag_uniqueness",`remote tag uniqueness check failed: ${u}`,c,"verify the release remote is reachable before GA")}if(_.stdout.trim().length>0)return l("block","tag_uniqueness",`release tag already exists on target remote: ${t}`,c,"choose a new version or reconcile the existing tag before GA");return l("pass","tag_uniqueness",`remote tag uniqueness verified for ${t} on ${e}`,c)}function C3(r){let n=a3(r),t=new Map(J0.map((c)=>[c.id,c])),e=[],i=[],_=new Set;for(let c of n){let u=K3(c);if(!u){i.push(c);continue}if(_.has(u))continue;_.add(u);let o=t.get(u);if(o)e.push(o);else i.push(u)}return{selected:e,unknown:i}}function HN(){return J0.map((r)=>({...r}))}async function j0(r){try{return await vN(r,"utf-8")}catch{return null}}async function x3(r,n){let t=await nt(rn(r,l3)),e=await nt(rn(r,GN,"README.md"));if(!t&&!e)return;n.push(l("block","production_agent_plane_profiles","agent-plane sources detected; validate from a source workspace, not the devkit package",GN,"run release readiness from a source workspace that carries the agent-plane validator"));return}async function A0(r){let t=rn(r,"package.json"),e=[],i=null;try{i=YN(JSON.parse(await vN(t,"utf-8")))}catch{i=null}if(!i)return e.push(l("block","package_json","package.json is missing or malformed","package.json","restore a valid root package.json before evaluating release readiness")),lN({name:null,version:null,private:null,bin:{},files:[]},e);let _=VN(i.name),c=VN(i.version),u=typeof i.private==="boolean"?i.private:null,o=FN(i.bin),$=Y3(i.files),g=FN(i.scripts);e.push(_&&c?l("pass","package_metadata",`package metadata present: ${_}@${c}`,"package.json"):l("block","package_metadata","package name and version are required","package.json","declare stable package name and version")),e.push(u===!1?l("pass","package_private_gate","package publishing is not blocked by private:true","package.json"):l("block","package_private_gate","package remains private; publish/global distro is intentionally blocked","package.json","flip private only in an explicit release/distribution decision"));let d=Object.entries(o);if(d.length===0)e.push(l("block","bin_entrypoint","no package bin entrypoint is declared","package.json","declare the etiquette CLI bin entrypoint"));else{let T=[],R=[];for(let[,j]of d){let J=H3(j);if(!J){R.push(j);continue}if(!await nt(rn(r,J)))T.push(J)}if(R.length>0)e.push(l("block","bin_entrypoint",`bin entrypoint paths must be repo-relative: ${R.join(", ")}`,"package.json","replace absolute or parent-relative bin paths"));else if(T.length>0)e.push(l("block","bin_entrypoint",`declared bin files are missing: ${T.join(", ")}`,"package.json","restore declared bin files"));else e.push(l("pass","bin_entrypoint",`declared bin entrypoint(s) exist: ${d.map(([j,J])=>`${j}->${J}`).join(", ")}`,"package.json"))}e.push($.length>0?l("pass","files_allowlist",`package files allowlist declared with ${$.length} entr${$.length===1?"y":"ies"}`,"package.json"):l("block","files_allowlist","package files allowlist is missing; pack output may include internal surfaces","package.json","declare package.json files before enabling distribution")),e.push(S0(g,"test")&&S0(g,"typecheck")?l("pass","validation_scripts","test and typecheck scripts are declared","package.json"):l("block","validation_scripts","test and typecheck scripts are required for release readiness","package.json","declare test and typecheck scripts"));let f=S0(g,"release:scan")&&await nt(rn(r,"scripts","release-scan.sh"));e.push(f?l("pass","release_scan","release scan script is declared and present","scripts/release-scan.sh"):l("block","release_scan","release scan script must be declared and present","package.json","wire npm run release:scan to scripts/release-scan.sh"));let b=await W0(g,"release:pack",r);if(!b.declared)e.push(l("block","pack_canary","no release pack canary script is declared","package.json","add a script that proves tarball contents from a fresh package output"));else if(!b.present)e.push(l("block","pack_canary",`release pack script is declared but missing: ${b.ref}`,b.ref,"restore the referenced pack canary script"));else e.push(l("pass","pack_canary","release pack canary script is declared and present",b.ref));let m=await W0(g,"release:checksum",r),w=await W0(g,"release:sign",r);if(!m.declared||!w.declared)e.push(l("block","checksum_signature","checksum/signature posture is not declared","package.json","add checksum and signing scripts or record an explicit internal-channel waiver"));else if(!m.present||!w.present){let T=[m,w].filter((R)=>!R.present).map((R)=>R.ref).join(", ");e.push(l("block","checksum_signature",`checksum/signature script is declared but missing: ${T}`,"package.json","restore the referenced checksum/signing scripts"))}else e.push(l("pass","checksum_signature","checksum and signature scripts are declared and present",`${m.ref}, ${w.ref}`));let O=await nt(rn(r,"scripts","install.sh"));if(e.push(O?l("pass","shell_installer","signed shell installer is present for user-local bootstrap","scripts/install.sh"):l("warn","shell_installer","signed shell installer is not present; package-manager channels remain the only bootstrap path","scripts/install.sh","add a user-local installer before org-wide onboarding")),O){let T=await j0(rn(r,"scripts","install.sh")),R=T?.includes("--public-key-url")&&T.includes("--public-key-sha256")&&T.includes("public key SHA-256 mismatch");e.push(R?l("pass","installer_trust_bootstrap","installer supports hosted public key URL with SHA-256 pin","scripts/install.sh"):l("warn","installer_trust_bootstrap","installer does not expose a pinned hosted public-key bootstrap path","scripts/install.sh","require public-key URL plus SHA-256 pin before org-wide curl bootstrap"))}e.push(l("warn","package_manager_wrappers","Homebrew, Chocolatey, WinGet, and registry wrappers are not proven by this command","site/guide/distribution.md","treat wrappers as follow-up channels after the signed installer and core tarball are green"));let q=await nt(rn(r,z0));return e.push(q?l("pass","codex_client_compatibility",`Codex client policy documented; ${E0}+ recommended and required for remote/plugin-MCP canaries`,z0):l("warn","codex_client_compatibility",`Codex client policy is not documented; ${E0}+ should be treated as the remote/plugin-MCP canary floor`,z0,"add client compatibility guidance before routing remote-runtime or plugin-MCP pilots")),await x3(r,e),lN({name:_,version:c,private:u,bin:o,files:$},e)}async function BN(r,n={}){let t=await A0(r),e=[],i=t.package.version?`v${t.package.version}`:null,{selected:_,unknown:c}=C3(n.channel??null),u=_.length>0?_.map((m)=>m.id).join(","):null,o=B3(t.package.name,t.package.version);if(e.push(t.verdict==="ready"?l("pass","package_readiness","base release readiness is ready","package.json"):l("block","package_readiness",`base release readiness is blocked: ${t.blockers.join(", ")||"unknown"}`,"package.json","resolve base readiness blockers first")),e.push(Q3(t.package.version)?l("pass","ga_version",`package version is GA-shaped: ${t.package.version}`,"package.json"):l("block","ga_version",`package version is not GA-shaped: ${t.package.version??"unknown"}`,"package.json","set a non-prerelease semver version before GA")),_.length>0&&c.length===0)e.push(l("pass","distribution_channel",`distribution channel(s) declared: ${u}`,"operator:--channel"));else if(c.length>0)e.push(l("block","distribution_channel",`unknown distribution channel(s): ${c.join(", ")}`,"operator:--channel",`choose one or more known channels: ${J0.map((m)=>m.id).join(", ")}`));else e.push(l("block","distribution_channel","GA requires at least one named distribution channel","operator:--channel","rerun with --channel shell-installer,npm or another known channel"));if(n.verifyTagRemote)e.push(Z3(r,n.verifyTagRemote,i));else if(n.tagFreeConfirmed===!0)e.push(l("block","tag_uniqueness",`manual confirmation is insufficient for GA tag ${i??"unknown"}; verify the remote directly`,"operator:--tag-free-confirmed","rerun with --verify-tag-remote origin after credentials are available"));else e.push(l("block","tag_uniqueness",`GA requires remote verification that tag ${i??"unknown"} is unused`,"operator:--verify-tag-remote","rerun with --verify-tag-remote origin or another trusted release remote"));if(!o)e.push(l("block","release_artifact","cannot derive package tarball name","package.json","restore package name and version"));else{let m=rn(r,"dist",o),w=rn(r,"dist","SHA256SUMS"),O=await j0(w);if(!await nt(m))e.push(l("block","release_artifact",`missing release tarball: dist/${o}`,"dist/","run npm run release:checksum after setting the GA version"));else if(!O?.includes(o))e.push(l("block","release_artifact",`dist/SHA256SUMS does not reference ${o}`,"dist/SHA256SUMS","regenerate checksums from the final GA tarball"));else e.push(l("pass","release_artifact",`tarball and checksum manifest present for ${o}`,"dist/SHA256SUMS"))}let $=await j0(rn(r,"dist","SIGNATURE_MANIFEST.txt")),g=$?.includes("method=openssl-rsa-sha256")&&await nt(rn(r,"dist","SHA256SUMS.sig")),d=$?.includes("method=hmac-sha256")||await nt(rn(r,"dist","SHA256SUMS.hmac"));if(g)e.push(l("pass","trusted_signature","trusted RSA signature exists for dist/SHA256SUMS","dist/SIGNATURE_MANIFEST.txt"));else if(d)e.push(l("block","trusted_signature","HMAC signature is canary-only and cannot satisfy GA","dist/SIGNATURE_MANIFEST.txt","sign dist/SHA256SUMS with ETIQUETTE_RELEASE_SIGNING_KEY"));else e.push(l("block","trusted_signature","trusted release signature is missing","dist/SIGNATURE_REQUIRED.txt","set ETIQUETTE_RELEASE_SIGNING_KEY and run npm run release:sign"));let f=e.filter((m)=>m.status==="block").map((m)=>m.id),b=e.filter((m)=>m.status==="warn").map((m)=>m.id);return{schema:"release-ga-readiness.v0",verdict:f.length===0?"ready":"blocked",channel:u,channels:_,tag:i,package_readiness:t.verdict,checks:e,blockers:f,warnings:b,authority_boundary:{command_can_publish:!1,command_can_sign:!1,command_can_tag:!1,command_can_create_distribution_channel:!1}}}function lN(r,n){let t=n.filter((i)=>i.status==="block").map((i)=>i.id),e=n.filter((i)=>i.status==="warn").map((i)=>i.id);return{schema:"release-readiness.v0",verdict:t.length===0?"ready":"blocked",package:r,client_compatibility:{codex_recommended_minimum:E0,codex_required_for:v3,core_release_requires_codex:!1},checks:n,blockers:t,warnings:e,authority_boundary:{command_can_publish:!1,command_can_flip_private:!1,command_can_create_distribution_channel:!1}}}var QN=new Set(["readiness","ga-readiness","channels"]);function KN(r){return r==="release"}function s3(r){let n=["release_readiness:",` schema: ${r.schema}`,` verdict: ${r.verdict}`,` package: ${r.package.name??"unknown"}@${r.package.version??"unknown"}`,` private: ${String(r.package.private)}`,` codex_recommended_minimum: ${r.client_compatibility.codex_recommended_minimum}`,` core_release_requires_codex: ${String(r.client_compatibility.core_release_requires_codex)}`,` blockers: ${r.blockers.join(", ")||"none"}`,` warnings: ${r.warnings.join(", ")||"none"}`,` command_can_publish: ${String(r.authority_boundary.command_can_publish)}`,` command_can_flip_private: ${String(r.authority_boundary.command_can_flip_private)}`,` command_can_create_distribution_channel: ${String(r.authority_boundary.command_can_create_distribution_channel)}`];for(let t of r.checks)if(n.push(` - ${t.id}: ${t.status} (${t.summary})`),t.next_action)n.push(` next: ${t.next_action}`);return`${n.join(`
|
|
1128
|
-
`)}
|
|
1129
|
-
`}function rB(r){let n=["release_ga_readiness:",` schema: ${r.schema}`,` verdict: ${r.verdict}`,` channel: ${r.channel??"missing"}`,` tag: ${r.tag??"unknown"}`,` channels: ${r.channels.map((t)=>`${t.id}(${t.kind})`).join(", ")||"none"}`,` package_readiness: ${r.package_readiness}`,` blockers: ${r.blockers.join(", ")||"none"}`,` warnings: ${r.warnings.join(", ")||"none"}`,` command_can_publish: ${String(r.authority_boundary.command_can_publish)}`,` command_can_sign: ${String(r.authority_boundary.command_can_sign)}`,` command_can_tag: ${String(r.authority_boundary.command_can_tag)}`,` command_can_create_distribution_channel: ${String(r.authority_boundary.command_can_create_distribution_channel)}`];for(let t of r.checks)if(n.push(` - ${t.id}: ${t.status} (${t.summary})`),t.next_action)n.push(` next: ${t.next_action}`);return`${n.join(`
|
|
1130
|
-
`)}
|
|
1131
|
-
`}function nB(r){let n=["release_channels:"];for(let t of r)n.push(` - ${t.id}: ${t.kind}`),n.push(` label: ${t.label}`),n.push(` private_repo_compatible: ${String(t.private_repo_compatible)}`),n.push(` artifact: ${t.artifact}`);return`${n.join(`
|
|
1132
|
-
`)}
|
|
1133
|
-
`}async function aN(r,n){let t=r[1];if(!t||!QN.has(t))throw Error(`release verb must be one of: ${[...QN].join(", ")}`);let e=p3(I(n,"project")??process.cwd());if(t==="channels"){let _=HN();console.log(Boolean(n.json)?JSON.stringify({schema:"release-channels.v0",channels:_},null,2):nB(_));return}if(t==="readiness"){let _=await A0(e);if(console.log(Boolean(n.json)?JSON.stringify(_,null,2):s3(_)),n["fail-on-blocked"]&&_.verdict==="blocked")process.exit(1);return}let i=await BN(e,{channel:I(n,"channel"),tagFreeConfirmed:Boolean(n["tag-free-confirmed"]),verifyTagRemote:I(n,"verify-tag-remote")});if(console.log(Boolean(n.json)?JSON.stringify(i,null,2):rB(i)),n["fail-on-blocked"]&&i.verdict==="blocked")process.exit(1)}Ir();import{resolve as ZN}from"path";var CN=new Set(["readiness","heartbeat","status","owner-card"]);function xN(r){return r==="seat"}function Be(r,n,t,e){if(n===void 0&&e!==void 0)return e;if(typeof n!=="string"||!r.includes(n))throw Error(`--${t} must be one of: ${r.join(", ")}`);return n}function tB(r,n){if(r===void 0)return n;if(r===!0)return!0;if(r==="true"||r==="1"||r==="yes")return!0;if(r==="false"||r==="0"||r==="no")return!1;throw Error("boolean flags must be true/false, 1/0, yes/no, or bare flag")}function M0(r,n){if(r===void 0)return;return mn(r,n)}function iB(r){return[`seat: ${r.seat}`,`operational_status: ${r.operational_status}`,`execution_surface: ${r.execution_surface}`,`model_tier: ${r.model_tier}`,`effective_model_tier: ${r.effective_model_tier}`,`capability_source: ${r.capability_source}`,`capability_trusted: ${String(r.capability_trusted)}`,`active_workers: ${r.active_workers}`,`max_recommended_workers: ${r.max_recommended_workers}`,`supports_parallel: ${String(r.supports_parallel)}`,`supported_strategies: ${r.supported_strategies.join(", ")||"none"}`,`unsupported_strategies: ${r.unsupported_strategies.join(", ")||"none"}`,`constraints: ${r.constraints.join(", ")||"none"}`,`last_heartbeat_at: ${r.last_heartbeat_at}`,`stale_after: ${r.stale_after}`,`is_stale: ${String(r.is_stale)}`,`routing_recommendation: ${r.routing_recommendation}`].join(`
|
|
1134
|
-
`)}function eB(r){return["agent_owner_card:",` seat_id: ${r.seat_id}`,` job: ${r.job}`,` owner_principal: ${r.accountability.owner_principal}`,` maintainer: ${r.accountability.maintainer}`,` current_occupant: ${r.current_occupant?.model_id??r.current_occupant?.execution_surface??"none"}`,` occupant_readiness_stale: ${String(r.current_occupant?.is_stale??!0)}`,` review_stale: ${String(r.review.is_stale)}`,` last_reviewed_at: ${r.review.last_reviewed_at}`,` authority_source_ref: ${r.authority.source_ref}`,` allowed_work: ${r.authority.allowed_work.join(", ")}`,` forbidden_work: ${r.authority.forbidden_work.join(", ")}`,` failure_modes: ${r.failure_modes.map((n)=>n.id).join(", ")}`,` warnings: ${r.warnings.join(", ")||"none"}`,` read_model_only: ${String(r.authority_boundary.read_model_only)}`].join(`
|
|
1135
|
-
`)}async function pN(r,n){let t=r[1];if(!t||!CN.has(t))throw Error(`seat verb must be one of: ${[...CN].join(", ")}`);let e=ZN(I(n,"project")??process.cwd()),i=I(n,"state"),_=Boolean(n.json),c=I(n,"at");if(t==="readiness"){let u=await J$({projectRoot:e,statePath:i,seat:D(n,"seat"),seatType:Be(y4,n["seat-type"],"seat-type","control_seat"),executionSurface:I(n,"execution-surface")??"generic",declaredBy:Be(["operator_principal","config"],n["declared-by"],"declared-by","operator_principal"),capabilitySource:Be(q4,n["capability-source"],"capability-source","config"),operationalStatus:Be(j$,n["operational-status"],"operational-status","operational"),modelTier:Be(T4,n["model-tier"],"model-tier","local_unknown"),modelId:I(n,"model-id"),activeWorkers:M0(n["active-workers"],"active-workers")??0,maxRecommendedWorkers:M0(n["max-recommended-workers"],"max-recommended-workers")??1,supportsParallel:tB(n["supports-parallel"],!1),supportedStrategies:mr(n["supported-strategies"]).length>0?mr(n["supported-strategies"]):["solo"],unsupportedStrategies:mr(n["unsupported-strategies"]),constraints:mr(n.constraints),at:c});console.log(_?JSON.stringify(u,null,2):["seat_readiness:",` seat: ${u.seat}`,` operational_status: ${u.operational_status}`,` model_tier: ${u.model_tier}`,` capability_trusted: ${String(u.capability_trusted)}`,` stale_after: ${u.stale_after}`].join(`
|
|
1136
|
-
`));return}if(t==="heartbeat"){let u=await Z1({projectRoot:e,statePath:i,seat:I(n,"seat"),operationalStatus:n["operational-status"]===void 0?void 0:Be(j$,n["operational-status"],"operational-status"),activeWorkers:M0(n["active-workers"],"active-workers"),constraints:n.constraints===void 0?void 0:mr(n.constraints),at:c});console.log(_?JSON.stringify(u,null,2):["seat_heartbeat:",` seat: ${u.seat}`,` operational_status: ${u.operational_status}`,` active_workers: ${u.active_workers}`,` last_heartbeat_at: ${u.last_heartbeat_at}`,` stale_after: ${u.stale_after}`].join(`
|
|
1137
|
-
`));return}if(t==="status"){let u=await di(e,i),o=De(u,c);console.log(_?JSON.stringify(o,null,2):iB(o));return}if(t==="owner-card"){let u=await n0({projectRoot:e,statePath:i,manifestPath:ZN(D(n,"manifest")),at:c});console.log(_?JSON.stringify(u,null,2):eB(u))}}Ir();import{resolve as _B}from"path";var sN=new Set(["create","note","migrate-project"]);function rL(r){return r==="session"}function cB(r){if(r===void 0)return"explicit";if(r==="explicit"||r==="dynamic")return r;throw Error("--creation-mode must be explicit or dynamic")}function uB(r){let n=r===void 0?"note":r;if(typeof n==="string"&&hc.includes(n))return n;throw Error(`--section must be one of: ${hc.join(", ")}`)}function oB(r){return["session_runbook:",` session_id: ${r.manifest.session_id}`,` project_id: ${r.manifest.project_id}`,` task_ref: ${r.manifest.task_ref}`,` seat: ${r.manifest.seat}`,` creation_mode: ${r.manifest.creation_mode}`,` runbook_ref: ${r.manifest.runbook_ref}`,` manifest_ref: ${r.manifest.manifest_ref}`,` global_governance_ledger: ${r.manifest.ledger_boundary.global_governance_ledger}`,` can_authorize: ${String(r.manifest.authority_boundary.can_authorize)}`,` can_write_global_ledger: ${String(r.manifest.authority_boundary.can_write_global_ledger)}`].join(`
|
|
1138
|
-
`)}function $B(r){return["session_runbook_note:",` session_id: ${r.manifest.session_id}`,` project_id: ${r.manifest.project_id}`,` section: ${r.section}`,` appended_at: ${r.appended_at}`,` note_count: ${r.manifest.note_count}`,` runbook_ref: ${r.manifest.runbook_ref}`,` can_authorize: ${String(r.manifest.authority_boundary.can_authorize)}`,` can_write_global_ledger: ${String(r.manifest.authority_boundary.can_write_global_ledger)}`].join(`
|
|
1139
|
-
`)}function gB(r){return["session_project_binding_migration:",` project_id: ${r.project_id}`,` dry_run: ${String(r.dry_run)}`,` migrated: ${r.migrated.length}`,` unchanged: ${r.unchanged.length}`,` can_authorize: ${String(r.authority_boundary.can_authorize)}`,r.migrated.length>0?` migrated_sessions: ${r.migrated.join(", ")}`:null].filter((n)=>n!==null).join(`
|
|
1140
|
-
`)}async function nL(r,n){let t=r[1];if(!t||!sN.has(t))throw Error(`session verb must be one of: ${[...sN].join(", ")}`);let e=_B(I(n,"project")??process.cwd()),i=Boolean(n.json),_=I(n,"at");if(t==="create"){let u=await S$({projectRoot:e,seat:D(n,"seat"),taskRef:D(n,"task"),sessionId:I(n,"session-id"),operatorPrincipal:I(n,"operator"),ownerPrincipal:I(n,"owner"),targetRef:I(n,"target-ref"),creationMode:cB(n["creation-mode"]),at:_});console.log(i?JSON.stringify(u.manifest,null,2):oB(u));return}if(t==="migrate-project"){let u=await G1({projectRoot:e,dryRun:Boolean(n["dry-run"]),at:_});console.log(i?JSON.stringify(u,null,2):gB(u));return}let c=await Rc({projectRoot:e,sessionId:D(n,"session"),section:uB(n.section),message:D(n,"message"),at:_});console.log(i?JSON.stringify({...c.manifest,appended_at:c.appended_at,section:c.section},null,2):$B(c))}Ir();import{resolve as Wg}from"path";import{spawnSync as k0}from"child_process";import{existsSync as dB,readFileSync as fB,writeFileSync as bB}from"fs";import{mkdir as wB,readFile as mB,writeFile as IB}from"fs/promises";import{dirname as uL,join as oL,resolve as zg}from"path";import{fileURLToPath as OB}from"url";var UB="event-log-merge-driver-install.v0",hB="event-log-merge-driver-status.v0",vc="etqseq",RB=".etiquette/events/*.ndjson";function $L(){return{can_authorize_work:!1,can_execute_work:!1,can_grant:!1,can_close_work:!1,can_merge_product_code:!1,configures_git_merge_driver_only:!0}}function gL(r){if(!/^[A-Za-z0-9][A-Za-z0-9_-]{0,31}$/.test(r))throw Error("--driver-name must be an opaque Git merge driver name");return r}function dL(r){return`${RB} merge=${r}`}async function fL(r){try{return await mB(r,"utf8")}catch(n){if(n.code==="ENOENT")return"";throw n}}function DB(r){return`'${r.replace(/'/g,"'\\''")}'`}function yB(){let r=process.argv[1]?zg(process.argv[1]):null,n=r&&dB(r)?r:zg(uL(OB(import.meta.url)),"..","cli.ts");return`bun ${DB(n)} sync event-log-merge-driver %O %A %B`}function qB(r,n){let t=k0("git",["-C",r,"config","--get",n],{encoding:"utf8"});if(t.status!==0)return null;return t.stdout.trim()||null}function eL(r,n,t){let e=k0("git",["-C",r,"config",n,t],{encoding:"utf8"});if(e.status!==0)throw Error(`git config failed for ${n}: ${e.stderr.trim()||e.status}`);return!0}function bL(r){return k0("git",["-C",r,"rev-parse","--is-inside-work-tree"],{encoding:"utf8"}).status===0}function wL(r,n){return r.split(/\r?\n/).map((t)=>t.trim()).some((t)=>t===dL(n))}function TB(r,n){let t=qB(r,`merge.${n}.driver`);return Boolean(t?.includes("sync event-log-merge-driver"))}async function mL(r){let n=zg(r.projectRoot),t=gL(r.driverName??vc),e=dL(t),i=oL(n,".gitattributes"),_=await fL(i),c=wL(_,t),u=!1;if(!c){let d=_.trim().length===0?`${e}
|
|
1141
|
-
`:`${_.replace(/\n*$/,`
|
|
1142
|
-
`)}${e}
|
|
1143
|
-
`;await wB(uL(i),{recursive:!0}),await IB(i,d),u=!0}let o=[],$=!1,g=bL(n);if(!g)o.push("project is not a Git worktree; local merge driver config was not written");else if(r.configureGit!==!1)eL(n,`merge.${t}.name`,"Etiquette event log seq resequencer"),eL(n,`merge.${t}.driver`,r.driverCommand??yB()),$=!0;return{schema:UB,driver_name:t,attributes_ref:".gitattributes",attributes_rule:e,gitattributes_updated:u,git_config_updated:$,git_config_present:g,warnings:o,authority_boundary:$L()}}async function IL(r){let n=zg(r.projectRoot),t=gL(r.driverName??vc),e=await fL(oL(n,".gitattributes")),i=wL(e,t),_=bL(n),c=_?TB(n,t):!1,u=[];if(!i)u.push("missing .gitattributes event-log merge rule");if(!_)u.push("project is not a Git worktree");else if(!c)u.push("missing local git merge driver config");return{schema:hB,driver_name:t,attributes_ref:".gitattributes",attributes_configured:i,git_config_present:_,git_config_configured:c,ready:i&&c,warnings:u,authority_boundary:$L()}}function P0(r){let n=fB(r,"utf8");if(n==="")return[];return n.replace(/\n+$/,"").split(`
|
|
1144
|
-
`)}function _L(r,n){return n.length<=r.length&&n.every((t,e)=>r[e]===t)}function cL(r,n,t){try{let e=JSON.parse(r);if(!Number.isInteger(e.seq))throw Error("seq is not an integer");return e}catch(e){throw Error(`${n} appended line ${t+1} is not a valid event: ${e.message}`)}}function NB(r){try{let n=JSON.parse(r);return typeof n.seq==="number"&&Number.isInteger(n.seq)?n.seq:null}catch{return null}}function OL(r){let n=P0(r.ancestorPath),t=P0(r.currentPath),e=P0(r.otherPath);if(!_L(t,n)||!_L(e,n))throw Error("non-append edit detected; refusing automatic event-log merge");let i=t.slice(n.length),_=e.slice(n.length);i.forEach((g,d)=>cL(g,"current",d));let c=[...n,...i],u=c.map(NB).filter((g)=>g!==null),o=(u.length?Math.max(...u):0)+1,$=_.map((g,d)=>{let f=cL(g,"other",d);return f.seq=o,o+=1,JSON.stringify(f)});bB(r.currentPath,`${[...c,...$].join(`
|
|
1145
|
-
`)}
|
|
1146
|
-
`)}import{createHash as LB}from"crypto";import{readFile as zB}from"fs/promises";var SB=86400000,WB=/\b[a-z][a-z0-9+.-]*:\/\//i,EB=/\b[a-z0-9][a-z0-9-]*(?:\.[a-z0-9][a-z0-9-]*)+\.[a-z]{2,}\b/i,jB=/(?:^|[\s:])(?:\/Users\/|\/home\/|\/private\/|\/tmp\/|~\/|\$HOME|[A-Za-z]:[\\/])/,JB=/(?:sk-[A-Za-z0-9_-]{12,}|ghp_[A-Za-z0-9]{20,}|github_pat_[A-Za-z0-9_]{20,}|xox[baprs]-[A-Za-z0-9-]+|AKIA[0-9A-Z]{16}|(?:^|[\s:=])(?:token|secret|password|api[_-]?key)\s*[:=])/i;function AB(r){let n=r??new Date().toISOString();if(!Number.isFinite(Date.parse(n)))throw Error("--at must be an ISO-8601 timestamp");return new Date(n).toISOString()}function MB(r){return LB("sha256").update(JSON.stringify(r)).digest("hex").slice(0,16)}function PB(r,n){let t=p(r);if(!t||typeof t!=="object"||Array.isArray(t))throw Error(`${n} must parse as an object`);return t}function Ke(r,n){let t=r[n];if(!t||typeof t!=="object"||Array.isArray(t))throw Error(`${n} must be an object`);return t}function Hr(r,n,t=n){let e=r[n];if(typeof e!=="string"||e.trim().length===0)throw Error(`${t} must be a non-empty string`);return e.trim()}function gn(r,n,t){if(r[n]!==t)throw Error(`${n} must be ${String(t)}`)}function dt(r,n,t={}){let e=r.trim();if(!e||e.length>240)throw Error(`${n} must be a non-empty ref <= 240 chars`);if(WB.test(e)||!t.allowHost&&EB.test(e))throw Error(`${n} must be an opaque ref, not a URL or host`);if(jB.test(e)||e.startsWith("/")||e.startsWith("\\")||/^[A-Za-z]:[\\/]/.test(e))throw Error(`${n} must not include a local path`);if(e.includes("..")||e.includes("\\"))throw Error(`${n} must not include path traversal`);if(JB.test(e))throw Error(`${n} must not include a raw secret or token`);let i=tr(e).filter((_)=>_!=="contains_hostname");if(i.length>0)throw Error(`${n} contains restricted shared-sync content: ${i.join(", ")}`);if(!/^[A-Za-z0-9][A-Za-z0-9._:@/+,-]{0,239}$/.test(e))throw Error(`${n} must be an opaque ref`);return e}function X0(r,n){return X(r,n),r}function UL(r,n){if(!Number.isFinite(Date.parse(r)))throw Error(`${n} must be an ISO-8601 timestamp`);return new Date(r).toISOString()}function kB(r,n,t){let e=Date.parse(r),i=Date.parse(n),_=Date.parse(t);if(i<=e)throw Error("expires_at must be after created_at");if(i-e>SB)throw Error("invite expiry must be short-lived (<= 24h)");if(_<e)throw Error("invite is not valid yet");if(_>=i)throw Error("invite is expired")}function hL(r,n,t){if(!n.includes(r))throw Error(`${t} must be one of: ${n.join(", ")}`);return r}async function RL(r){let n=AB(r.at),t=await zB(r.invitePath,"utf-8"),e=PB(t,r.invitePath);if(Hr(e,"schema")!=="sync-invite.v0")throw Error("invite schema must be sync-invite.v0");let i=dt(Hr(e,"invite_id"),"invite_id"),_=X0(Hr(e,"org_id"),"org_id"),c=X0(Hr(e,"workspace_id"),"workspace_id"),u=UL(Hr(e,"created_at"),"created_at"),o=UL(Hr(e,"expires_at"),"expires_at");kB(u,o,n);let $=Ke(e,"credential"),g=dt(Hr($,"ref","credential.ref"),"credential.ref");gn($,"single_use",!0),gn($,"scoped",!0),gn($,"revocable",!0);let d=Ke(e,"joiner");hL(Hr(d,"required_assurance","joiner.required_assurance"),["verified_identity"],"joiner.required_assurance");let f=Ke(e,"installer"),b=dt(Hr(f,"artifact_ref","installer.artifact_ref"),"installer.artifact_ref"),m=dt(Hr(f,"checksum_ref","installer.checksum_ref"),"installer.checksum_ref"),w=dt(Hr(f,"signature_ref","installer.signature_ref"),"installer.signature_ref");gn(f,"curl_pipe_allowed",!1),gn(f,"reviewable_download_required",!0);let O=Ke(e,"git"),q=dt(Hr(O,"remote_ref","git.remote_ref"),"git.remote_ref"),T=dt(Hr(O,"default_branch","git.default_branch"),"git.default_branch",{allowHost:!0}),R=dt(Hr(O,"protected_branch","git.protected_branch"),"git.protected_branch",{allowHost:!0});gn(O,"pull_request_required",!0),gn(O,"drain_required",!0);let j=Ke(e,"sync_policy");gn(j,"auto_fetch",!0),gn(j,"auto_merge",!1);let J=hL(Hr(j,"merge_control"),["developer_controlled","dev_controlled"],"sync_policy.merge_control");if(gn(j,"receipt_reverify_required",!0),gn(j,"ci_rubrics_required",!0),j.hosted_plane_source_of_truth!==void 0)gn(j,"hosted_plane_source_of_truth",!1);let k=e.webhook===void 0?void 0:Ke(e,"webhook");if(k)gn(k,"nudge_only",!0);let Q=X0(r.joinedBy,"--joined-by"),L=dt(r.claimRef,"--claim-ref");return{schema:"sync-join-plan.v0",plan_id:`sync-join:${MB({inviteId:i,orgId:_,workspaceId:c,joinedBy:Q,claimRef:L,createdAt:n})}`,created_at:n,joined_by:Q,identity_claim_ref:L,invite:{invite_id:i,org_id:_,workspace_id:c,expires_at:o,credential_ref:g,credential:{single_use:!0,scoped:!0,revocable:!0}},installer:{artifact_ref:b,checksum_ref:m,signature_ref:w,curl_pipe_allowed:!1,reviewable_download_required:!0},git_sync:{substrate:"git",remote_ref:q,default_branch:T,protected_branch:R,invite_maps_to:"git_clone",downstream_sync_maps_to:"git_fetch",upstream_maps_to:"protected_branch_pr",drain_maps_to:"single_writer_drain",auto_fetch:!0,auto_merge:!1,merge_control:J==="dev_controlled"?"developer_controlled":J,pull_request_required:!0,drain_required:!0,event_log_merge_driver_required:!0,webhook_is_nudge_only:!0,bespoke_sync_engine:!1},receipt_policy:{receipt_reverify_required:!0,local_receipt_is_claim_only:!0,ci_rubrics_required:!0,protected_branch_required:!0},authorization_policy:{joiner_verified:!0,workspace_admission_required:!0,action_authorization_required:!0,grant_required_for_mutation:!0},content_boundary:{raw_invite_secret_included:!1,raw_provider_token_included:!1,raw_git_remote_url_included:!1,local_paths_included:!1,install_pipe_included:!1},authority_boundary:{can_authorize_work:!1,can_execute_work:!1,can_grant:!1,can_close_work:!1,can_merge:!1,hosted_plane_is_source_of_truth:!1,sync_plan_is_source_of_truth:!1},next_steps:["verify installer signature and checksum before installing etiquette","resolve remote_ref through the organization credential broker, then git clone","run etiquette sync install-git-merge-driver once inside the clone","run workspace admission with the joined_by principal and identity_claim_ref","use git fetch for downstream updates; merges remain developer controlled","submit work through a protected branch and PR; drain serializes canonical ledger writes","re-run rubrics in CI before accepting any receipt projection"]}}function DL(r){return["sync_join_plan:",` plan_id: ${r.plan_id}`,` joined_by: ${r.joined_by}`,` workspace: ${r.invite.org_id}/${r.invite.workspace_id}`,` invite_expires_at: ${r.invite.expires_at}`,` remote_ref: ${r.git_sync.remote_ref}`,` installer_signature_required: ${String(Boolean(r.installer.signature_ref))}`,` installer_checksum_required: ${String(Boolean(r.installer.checksum_ref))}`,` curl_pipe_allowed: ${String(r.installer.curl_pipe_allowed)}`,` substrate: ${r.git_sync.substrate}`,` auto_fetch: ${String(r.git_sync.auto_fetch)}`,` auto_merge: ${String(r.git_sync.auto_merge)}`,` pull_request_required: ${String(r.git_sync.pull_request_required)}`,` drain_required: ${String(r.git_sync.drain_required)}`,` event_log_merge_driver_required: ${String(r.git_sync.event_log_merge_driver_required)}`,` receipt_reverify_required: ${String(r.receipt_policy.receipt_reverify_required)}`,` bespoke_sync_engine: ${String(r.git_sync.bespoke_sync_engine)}`,` hosted_plane_is_source_of_truth: ${String(r.authority_boundary.hosted_plane_is_source_of_truth)}`].join(`
|
|
1147
|
-
`)}import{createHash as XB}from"crypto";import{mkdir as yL,readdir as GB,readFile as V0,writeFile as VB}from"fs/promises";import{existsSync as FB}from"fs";import{dirname as lB,join as Hc,relative as qL,resolve as Ze}from"path";var vB="workspace-local",YB=".etiquette/outbox/sync";function HB(r){let n=r??new Date().toISOString();if(!Number.isFinite(Date.parse(n)))throw Error("--at must be an ISO-8601 timestamp");return new Date(n).toISOString()}function BB(r){return XB("sha256").update(JSON.stringify(r)).digest("hex").slice(0,16)}function TL(r,n){let t=tr(r).filter((e)=>e!=="contains_credential");if(/\b(?:ANTHROPIC_API_KEY|OPENAI_API_KEY|GEMINI_API_KEY|api[_-]?key|token|secret|credential)\b\s*[:=]/i.test(r)||/(?:^|[\s:=])sk-[A-Za-z0-9_-]{12,}/.test(r))t.push("contains_credential");if(t.length>0)throw Error(`${n} contains restricted shared-sync content: ${t.join(", ")}`)}function QB(r,n){let t=tr(r).filter((e)=>e!=="contains_credential");if(/(?:^|[/:=_-])(?:api[_-]?key|token|secret|credential)(?:[/:=_-]|$)/i.test(r)||/(?:^|[/:=_-])sk-[A-Za-z0-9_-]{12,}/.test(r))t.push("contains_credential");if(t.length>0)throw Error(`${n} contains restricted shared-sync content: ${t.join(", ")}`)}function Sg(r,n){if(r.length===0||r.length>256)throw Error(`${n} must be a non-empty repo-relative ref <= 256 chars`);if(r.startsWith("/")||r.startsWith("\\")||/^[A-Za-z]:[\\/]/.test(r))throw Error(`${n} must be repo-relative`);return QB(r,n),r}function KB(r,n){let t=r.trim().replace(/\s+/g," ").slice(0,200);if(!t)throw Error(`${n} must not be empty`);return H(t,n),t}function Yc(r,n){let t=qL(Ze(r),Ze(n));if(t.length===0||t.startsWith("..")||t.includes("\\"))throw Error(`path must stay inside project root: ${n}`);return Sg(t,"artifact_ref")}function F0(r,n){let t=qL(Ze(r),Ze(n));if(t.length===0||t.startsWith("..")||t.includes("\\"))throw Error(`outbox path must stay inside project root: ${n}`);return Sg(t,"outbox_ref")}function aB(r,n){let t=Ze(r,n??YB);return F0(r,t),t}async function G0(r){try{return await V0(r,"utf-8")}catch(n){if(n.code==="ENOENT")return null;throw n}}async function l0(r){if(!FB(r))return[];let n=await GB(r,{withFileTypes:!0});return(await Promise.all(n.map(async(e)=>{let i=Hc(r,e.name);if(e.isDirectory())return l0(i);if(e.isFile())return[i];return[]}))).flat().sort()}function ZB(r,n){let t=p(r);if(!t||typeof t!=="object"||Array.isArray(t))throw Error(`${n} must parse as an object`);return t}function NL(r,n){if(typeof r!=="string"||r.length===0)return n;return TL(r,"schema_ref"),r}function Li(r){return typeof r==="string"&&r.length>0?r:void 0}function ae(r){if(r==="workspace_local")return"projection-policy:local-to-workspace";if(r==="subscriber_targeted")return"projection-policy:workspace-to-subscriber";return"projection-policy:workspace-to-org"}function CB(r){let n=Sg(r.candidate.artifactRef,"artifact_ref"),t=NL(r.candidate.schemaRef,`${r.candidate.kind}.v0`),e=KB(r.candidate.summary,"summary"),i=Sg(n,"evidence_ref"),_=r.candidate.seatId??r.defaultSeatId;if(r.orgId)X(r.orgId,"source.org_id");if(X(r.workspaceId,"source.workspace_id"),_)X(_,"source.seat_id");if(r.candidate.rawForPolicy)TL(r.candidate.rawForPolicy,n);let c={kind:r.candidate.kind,schema:t,artifactRef:n,summary:e,targetScope:r.candidate.targetScope,policy:r.candidate.projectionPolicyRef};return{schema:"sync-envelope.v0",envelope_id:`sync:${BB(c)}`,created_at:r.createdAt,source:{scope:r.candidate.sourceScope,...r.orgId?{org_id:r.orgId}:{},workspace_id:r.workspaceId,..._?{seat_id:_}:{}},target:{scope:r.candidate.targetScope,...r.orgId?{org_id:r.orgId}:{},workspace_id:r.workspaceId,subscriber_refs:[]},artifact:{kind:r.candidate.kind,schema_ref:t,artifact_ref:n,summary:e,evidence_refs:[{type:r.candidate.evidenceType,ref:i}]},projection_policy_ref:r.candidate.projectionPolicyRef,visibility:r.candidate.targetScope,content_boundary:{metadata_only:!0,raw_ledger_body_included:!1,raw_event_body_included:!1,raw_prompt_included:!1,raw_tool_output_included:!1,source_snippets_included:!1,local_paths_included:!1},authority_boundary:{can_authorize_work:!1,can_execute_work:!1,can_attach_grant:!1,can_replace_local_ledger:!1,remote_is_execution_truth:!1}}}async function xB(r){let n=[],t,e=N4(r),i=await G0(e);if(i){let $=JSON.parse(i);t=$.seat,n.push({kind:"readiness_snapshot",sourceScope:"seat_local",targetScope:"org_projected",projectionPolicyRef:ae("org_projected"),schemaRef:$.schema_version,artifactRef:Yc(r,e),summary:`seat=${$.seat} status=${$.operational_status} model_tier=${$.model_tier}`,evidenceType:"event",rawForPolicy:i,seatId:$.seat})}let _=L4(r),c=await G0(_);if(c?.trim()){let $=c.trim().split(`
|
|
1148
|
-
`).length;n.push({kind:"event_summary",sourceScope:"seat_local",targetScope:"org_projected",projectionPolicyRef:ae("org_projected"),schemaRef:"seat-readiness-event.v0.1",artifactRef:Yc(r,_),summary:`seat readiness event summary count=${$}`,evidenceType:"event",rawForPolicy:c,seatId:t})}let u=Hc(r,"docs","work","ledger","LEDGER.md"),o=await G0(u);if(o?.trim())n.push({kind:"ledger_entry",sourceScope:"seat_local",targetScope:"workspace_local",projectionPolicyRef:ae("workspace_local"),schemaRef:"local-ledger.v0",artifactRef:Yc(r,u),summary:"local ledger available for workspace aggregation",evidenceType:"ledger",rawForPolicy:o,seatId:t});for(let $ of await l0(Hc(r,"docs","work","receipts"))){if(!/\.(ya?ml|json)$/i.test($))continue;let g=await V0($,"utf-8"),d=ZB(g,$),f=Yc(r,$),b=NL(d.schema,"receipt.v0"),m=Li(d.task_ref)??Li(d.receipt_id)??Li(d.record_id)??"unknown";if(n.push({kind:"receipt_metadata",sourceScope:"workspace_local",targetScope:"org_projected",projectionPolicyRef:ae("org_projected"),schemaRef:b,artifactRef:f,summary:`receipt metadata schema=${b} task=${m}`,evidenceType:"receipt",rawForPolicy:g,seatId:Li(d.seat)??t}),d.schema==="operational-dispatch-record.v0")n.push({kind:"dispatch_record",sourceScope:"workspace_local",targetScope:"org_projected",projectionPolicyRef:ae("org_projected"),schemaRef:"operational-dispatch-record.v0",artifactRef:f,summary:`dispatch record decision=${Li(d.decision)??"unknown"} task=${m}`,evidenceType:"receipt",rawForPolicy:g,seatId:Li(d.seat)??t})}for(let $ of await l0(Hc(r,".etiquette","exports"))){if(!/\.json$/i.test($))continue;let g=await V0($,"utf-8"),d=JSON.parse(g);if(d.schema!=="recall-capsule.v0")continue;let f=Li(d.title)??"recall capsule";n.push({kind:"memory_capsule",sourceScope:"workspace_local",targetScope:"org_projected",projectionPolicyRef:ae("org_projected"),schemaRef:"recall-capsule.v0",artifactRef:Yc(r,$),summary:`memory capsule title=${f}`,evidenceType:"memory",rawForPolicy:g,seatId:t})}return{candidates:n,defaultSeatId:t}}async function LL(r){let n=Ze(r.projectRoot),t=HB(r.at),e=r.workspaceId??vB;if(X(e,"--workspace-id"),r.orgId)X(r.orgId,"--org-id");if(r.seatId)X(r.seatId,"--seat-id");let i=aB(n,r.outboxDir),{candidates:_,defaultSeatId:c}=await xB(n);await yL(i,{recursive:!0});let u={schema:"sync-stage-result.v0",project_ref:".",outbox_ref:F0(n,i),staged:0,rejected:[],local_only:[],envelopes:[],authority_boundary:{can_authorize_work:!1,can_execute_work:!1,can_attach_grant:!1,can_replace_local_ledger:!1,hosted_plane_is_source_of_truth:!1}};for(let o of _)try{let $=CB({candidate:o,createdAt:t,orgId:r.orgId,workspaceId:e,defaultSeatId:r.seatId??c}),g=`${$.envelope_id.replace(/[^A-Za-z0-9_-]+/g,"-")}.json`,d=Hc(i,g);await yL(lB(d),{recursive:!0}),await VB(d,`${JSON.stringify($,null,2)}
|
|
1149
|
-
`),u.staged+=1,u.envelopes.push({envelope_id:$.envelope_id,kind:$.artifact.kind,artifact_ref:$.artifact.artifact_ref,outbox_ref:F0(n,d),target_scope:$.target.scope,projection_policy_ref:$.projection_policy_ref})}catch($){u.rejected.push({artifact_ref:o.artifactRef,kind:o.kind,reason:$.message})}return u}var zL=new Set(["stage","join-plan","install-git-merge-driver","git-driver-status","event-log-merge-driver"]);function SL(r){return r==="sync"}function pB(r){return["sync_stage:",` staged: ${r.staged}`,` rejected: ${r.rejected.length}`,` local_only: ${r.local_only.length}`,` outbox_ref: ${r.outbox_ref}`," boundary: local outbox only; no network, no execution, no authorization, no grant attachment",...r.envelopes.map((n)=>` - ${n.kind} ${n.artifact_ref} -> ${n.outbox_ref} (${n.target_scope})`),...r.rejected.map((n)=>` rejected: ${n.kind} ${n.artifact_ref} - ${n.reason}`)].join(`
|
|
1150
|
-
`)}function sB(r){return["event_log_merge_driver_install:",` driver_name: ${r.driver_name}`,` attributes_ref: ${r.attributes_ref}`,` attributes_rule: ${r.attributes_rule}`,` gitattributes_updated: ${String(r.gitattributes_updated)}`,` git_config_updated: ${String(r.git_config_updated)}`,` git_config_present: ${String(r.git_config_present)}`,` warnings: ${r.warnings.join(", ")||"none"}`," boundary: Git config only; no merge, push, grant, close, or ledger mutation"].join(`
|
|
1151
|
-
`)}function rQ(r){return["event_log_merge_driver_status:",` driver_name: ${r.driver_name}`,` attributes_configured: ${String(r.attributes_configured)}`,` git_config_present: ${String(r.git_config_present)}`,` git_config_configured: ${String(r.git_config_configured)}`,` ready: ${String(r.ready)}`,` warnings: ${r.warnings.join(", ")||"none"}`," boundary: read-only status; no merge, push, grant, close, or ledger mutation"].join(`
|
|
1152
|
-
`)}async function WL(r,n){let t=r[1];if(!t||!zL.has(t))throw Error(`sync verb must be one of: ${[...zL].join(", ")}`);if(t==="join-plan"){let i=await RL({invitePath:Wg(D(n,"invite")),joinedBy:D(n,"joined-by"),claimRef:D(n,"claim-ref"),at:I(n,"at")});console.log(n.json?JSON.stringify(i,null,2):DL(i));return}if(t==="install-git-merge-driver"){let i=await mL({projectRoot:Wg(I(n,"project")??process.cwd()),driverName:I(n,"driver-name")??vc,configureGit:n["skip-git-config"]!==!0,driverCommand:I(n,"driver-command")});console.log(n.json?JSON.stringify(i,null,2):sB(i));return}if(t==="git-driver-status"){let i=await IL({projectRoot:Wg(I(n,"project")??process.cwd()),driverName:I(n,"driver-name")??vc});console.log(n.json?JSON.stringify(i,null,2):rQ(i));return}if(t==="event-log-merge-driver"){let i=r[2],_=r[3],c=r[4];if(!i||!_||!c)throw Error("sync event-log-merge-driver requires <ancestor> <current> <other>");OL({ancestorPath:i,currentPath:_,otherPath:c});return}let e=await LL({projectRoot:Wg(I(n,"project")??process.cwd()),outboxDir:I(n,"outbox"),workspaceId:I(n,"workspace-id"),orgId:I(n,"org-id"),seatId:I(n,"seat-id"),at:I(n,"at")});console.log(n.json?JSON.stringify(e,null,2):pB(e))}import{createHash as nQ}from"crypto";import{existsSync as v0}from"fs";import{mkdir as tQ,readFile as JL,writeFile as iQ}from"fs/promises";import{dirname as eQ,join as AL,relative as _Q,resolve as ML}from"path";Ir();Xo();var cQ=new Set(["tag"]),Y0=".etiquette/bindings.yaml",PL=".etiquette/roster/mappings.yaml",uQ="docs/work/drafts";function kL(r){return cQ.has(r)}function H0(r){return ML(I(r,"project")??process.cwd())}function EL(r,n){let t=_Q(r,ML(n));if(t.length===0||t.startsWith("..")||t.includes("\\"))throw Error(`path must stay inside project root: ${n}`);return t}function oQ(r){let t=I(r,"at")??new Date().toISOString();if(!Number.isFinite(Date.parse(t)))throw Error("--at must be an ISO-8601 timestamp");return new Date(t).toISOString()}async function XL(r,n,t){let e=AL(r,n);if(!v0(e))throw Error(`${t}: ${n}`);return p(await JL(e,"utf-8"))}async function GL(r){return $R(await XL(r,Y0,"no channel bindings declared"))}async function VL(r){return dR(await XL(r,PL,"no roster mappings declared"))}function $Q(r,n){let t=gR(r,n);if(!t)throw Error(`unknown channel: ${n}; declare a channel-binding.v1 entry in ${Y0}`);return t}function FL(r,n){let t=fR(r,n);if(!t)throw Error(`unknown requesting user: ${n}; enroll them by adding a roster-mapping.v1 entry to ${PL}`);return t}var gQ=/^([A-Za-z0-9][A-Za-z0-9._:-]*):\s*(.*)$/;function dQ(r){let n=r.split(/\r?\n/);while(n.length>0&&n[n.length-1]==="")n.pop();return n}function fQ(r){let n=[];for(let[t,e]of r.entries()){let i=gQ.exec(e);if(i)n.push({line:t+1,speaker:i[1],text:i[2].trim()})}return n}var bQ=new RegExp(`^\\s*(?:${n6.join("|")})\\s*:`,"i"),wQ=/^\s*```\s*(?:sh|bash|zsh|shell)\b/i;function mQ(r,n){for(let[t,e]of r.entries())if(bQ.test(e)||wQ.test(e))throw Error(`execution content rejected at transcript line ${n+t}: compiled cards are strictly declarative; name capabilities, never scripts`)}function jL(r,n,t){let e=I(r,n);if(e===void 0)return t;let i=Number.parseInt(e,10);if(!Number.isFinite(i)||i<1)throw Error(`--${n} must be a positive line number`);return i}async function IQ(r){if(r==="-")return await new Response(Bun.stdin.stream()).text();if(!v0(r))throw Error(`transcript not found: ${r}`);return JL(r,"utf-8")}async function OQ(r,n){let t=H0(n),e=$r(r,2,"transcript file (or - for stdin)"),i=D(n,"channel"),_=$Q(await GL(t),i),c=await VL(t),u=dQ(await IQ(e));if(u.length===0)throw Error("transcript is empty; nothing to compile");let o=jL(n,"from-line",1),$=jL(n,"to-line",u.length);if(o>$||$>u.length)throw Error(`--from-line/--to-line must select a window inside the ${u.length}-line transcript`);let g=u.slice(o-1,$),d=fQ(g);if(d.length===0)throw Error('no chat messages found in the selected window; expected lines shaped like "<user>: <text>"');let f=I(n,"user")??d[0].speaker,b=FL(c,f);mQ(g,o);let m=oQ(n),w=I(n,"task")??`TAG-${i.toUpperCase().replace(/[^A-Z0-9]+/g,"-")}-${m.replace(/[-:.]/g,"").slice(0,15)}`,O=g.join(`
|
|
1153
|
-
`),q=eR({schema:"task-bundle.v1",task_id:w,title:d[0].text.slice(0,80)||`Compiled from ${i}`,mode:I(n,"mode")??"product-implementation",owner:_.notify_ref,project_ref:".",content_class:"draft",allowed_writes:_.allowed_writes,forbidden_sources:["external coordination repos unless explicitly routed","raw chat transcripts beyond the cited provenance window"],validation:[I(n,"validation")??"git diff --check"],stop_conditions:["edit outside allowed_writes required","authority-bearing action requested"],authority:"false",requested_by:{chat_user_id:b.chat_user_id,seat_card_ref:b.seat_card_ref},provenance_window:{source:"chat",channel_id:_.channel_id,range:{first_line:o,last_line:$},sha256:nQ("sha256").update(O,"utf-8").digest("hex")},authority_boundary:{can_authorize:!1,can_merge:!1,can_close:!1,can_write_global_ledger:!1}}),T=AL(t,uQ,`${w}.yaml`);if(v0(T))throw Error(`draft already exists: ${EL(t,T)}`);await tQ(eQ(T),{recursive:!0}),await iQ(T,Cr(q));let R=EL(t,T),j=await Pr(t,"tag_card_drafted",{lane:w,role:"task-bundle",from:b.chat_user_id,to:_.notify_ref,next_owner:_.notify_ref,packet_ref:R,channel:_.channel_id,authority_boundary:{notify_is_authority:!1,can_authorize:!1,can_merge:!1,can_close:!1,can_grant:!1}},n);await H$(t,j,n),console.log([`tag_card_drafted: ${R}`,`event: ${j.event_ref}`,`notified: ${_.notify_ref}`,`provenance: lines ${o}-${$} sha256=${q.provenance_window?.sha256}`,"status: draft (non-canonical until promoted through the existing card lifecycle)"].join(`
|
|
1154
|
-
`))}async function UQ(r){let n=H0(r),t=await GL(n);if(r.json){console.log(JSON.stringify(t,null,2));return}console.log(["channel_bindings: ok",`registry: ${Y0}`,`bindings: ${t.bindings.length}`,...t.bindings.map((e)=>` - ${e.channel_id} -> ${e.repository_ref} (notify: ${e.notify_ref}, allowed_writes: ${e.allowed_writes.length})`)].join(`
|
|
1155
|
-
`))}async function hQ(r,n){let t=H0(n),e=$r(r,3,"chat user id"),i=FL(await VL(t),e);if(n.json){console.log(JSON.stringify(i,null,2));return}console.log([`roster_mapping: ${i.chat_user_id}`,`seat_card_ref: ${i.seat_card_ref}`].join(`
|
|
1156
|
-
`))}async function lL(r,n){let t=r[1];if(t==="compile"){await OQ(r,n);return}if(t==="bindings"){if(r[2]!=="verify")throw Error("tag bindings verb must be: verify");await UQ(n);return}if(t==="roster"){if(r[2]!=="resolve")throw Error("tag roster verb must be: resolve");await hQ(r,n);return}throw Error("tag verb must be one of: compile, bindings verify, roster resolve")}Ir();import{resolve as B0}from"path";var vL=new Set(["validate","explain","check"]);function YL(r){return r==="workflow"}function RQ(r){if(!r||!Ge.includes(r))throw Error(`workflow mode type must be one of: ${Ge.join(", ")}`);return r}function DQ(r){return["workflow_mode_validate:",` mode_id: ${r.mode_id}`,` mode_version: ${r.mode_version}`,` mode_type: ${r.mode_type}`,` authority_status: ${r.authority_status}`,` advisory_consensus_can_authorize: ${String(r.grant.advisory_consensus_can_authorize)}`," can_authorize: false"," can_attach_grant: false"].join(`
|
|
1157
|
-
`)}function yQ(r){return["workflow_mode_explain:",` mode_type: ${r.mode_type}`,` summary: ${r.summary}`,` use_when: ${r.use_when.join(", ")}`,` boundary: ${r.boundary.join(", ")}`].join(`
|
|
1158
|
-
`)}function qQ(r){return["workflow_check:",` task_ref: ${r.task_ref}`,` mode_id: ${r.mode_id}`,` mode_type: ${r.mode_type}`,` recommendation: ${r.recommendation}`,` missing: ${r.missing.join(", ")||"none"}`,` warnings: ${r.warnings.join(", ")||"none"}`,` can_authorize: ${String(r.authority_boundary.can_authorize)}`,` can_attach_grant: ${String(r.authority_boundary.can_attach_grant)}`,` consensus_can_authorize: ${String(r.authority_boundary.consensus_can_authorize)}`].join(`
|
|
1159
|
-
`)}async function HL(r,n){let t=r[1];if(!t||!vL.has(t))throw Error(`workflow verb must be one of: ${[...vL].join(", ")}`);let e=Boolean(n.json);if(t==="validate"){let i=await Jc(B0(D(n,"mode")));console.log(e?JSON.stringify(i,null,2):DQ(i));return}if(t==="explain"){let i=xq(RQ(r[2]));console.log(e?JSON.stringify(i,null,2):yQ(i));return}if(t==="check"){let i=await Jc(B0(D(n,"mode"))),_=await wg(B0(D(n,"task"))),c=bg(i,_);console.log(e?JSON.stringify(c,null,2):qQ(c))}}Ir();import{resolve as TQ}from"path";var BL=new Set(["authority"]);function QL(r){return r==="workspace"}function NQ(r){return["workspace_authority_validation:",` workspace_id: ${r.workspace_id}`,r.org_id?` org_id: ${r.org_id}`:void 0,` verdict: ${r.verdict}`,` authority_mode: ${r.authority_mode}`,` canonical_location: ${r.canonical_location}`,` creator_is_root_authority: ${String(r.creator_is_root_authority)}`,` local_workspace_is_canonical: ${String(r.local_workspace_is_canonical)}`,` org_workspace_is_canonical: ${String(r.org_workspace_is_canonical)}`,` runtime_cell_can_mutate_canonical_truth: ${String(r.runtime_cell_can_mutate_canonical_truth)}`,` owner_role: ${r.owner_role.role_id}`,` owner_occupant: ${r.owner_role.occupant_principal}`,` owner_replacement_policy: ${r.owner_role.replacement_policy}`,` memory_stores: ${r.memory_summary.stores}`,` filesystem_like_memory_stores: ${r.memory_summary.filesystem_like_stores}`,` shared_read_write_memory_stores: ${r.memory_summary.shared_read_write_stores}`,` consolidation_mode: ${r.memory_summary.consolidation_mode}`,` runner_memory_boundary: ${r.memory_summary.runner_memory_boundary}`,` consolidation_mutates_input_store: ${String(r.memory_summary.consolidation_mutates_input_store)}`," boundary: authority roots in the declared canonical workspace; memory/consolidation cannot authorize work"].filter((n)=>Boolean(n)).join(`
|
|
1160
|
-
`)}async function KL(r,n){let t=r[1];if(!t||!BL.has(t))throw Error(`workspace verb must be one of: ${[...BL].join(", ")}`);let e=Boolean(n.json);if(t==="authority"){let i=await aT(TQ(D(n,"profile")));console.log(e?JSON.stringify(i,null,2):NQ(i))}}function Nz(r){let n=r instanceof Error?r.message:String(r);console.error(`error: ${n}`),process.exit(1)}process.on("uncaughtException",Nz);process.on("unhandledRejection",Nz);var{positionals:Lr,flags:zr}=wR(process.argv.slice(2)),s=Lr[0],b5=new Set(["session-open","session-status","turn-open","turn-close","session-command","session-project","session-rebuild","seat-validate"]);if(!s){if(zr.help)console.error(Qe()),process.exit(0);console.error(tL()),process.exit(1)}if(s==="help"||zr.help)console.error(Lr[1]==="advanced"?iL():Qe()),process.exit(0);if(b5.has(s)){let{dispatchSupervision:r}=await Promise.resolve().then(() => (Tz(),qz));await r(s,Lr,zr),process.exit(0)}if(s==="agent-plane")console.error("agent-plane commands are not included in the local devkit; they return with the remote runner-plane work."),process.exit(1);if(LN(s))await SN(Lr,zr),process.exit(0);if(s==="mcp")console.error("mcp commands are not included in the local devkit; use a source workspace."),process.exit(1);if(s==="parity")console.error("parity commands are not included in the local devkit; use a source workspace."),process.exit(1);if(Tq(s))await Nq(Lr,zr),process.exit(0);if(mT(s))await IT(Lr,zr),process.exit(0);if(uT(s))await oT(Lr,zr),process.exit(0);if(s==="hosted")console.error("hosted commands are not included in the local devkit; use a hosted/control-plane source workspace."),process.exit(1);if(s==="integration")console.error("integration commands are not included in the local devkit; use a source workspace."),process.exit(1);if(MT(s))await PT(Lr,zr),process.exit(0);if(s==="linear")console.error("linear commands are not included in the local devkit; use a source workspace."),process.exit(1);if(eT(s))await _T(Lr,zr),process.exit(0);if(jN(s))await JN(Lr,zr),process.exit(0);if(kN(s))await XN(Lr,zr),process.exit(0);if(KN(s))await aN(Lr,zr),process.exit(0);if(s==="remote")console.error("remote commands are not included in the local devkit; remote execution ships with the hosted workspace product later."),process.exit(1);if(s==="runtime")console.error("runtime commands are not included in the local devkit; use an infra/runtime source workspace."),process.exit(1);if(xN(s))await pN(Lr,zr),process.exit(0);if(rL(s))await nL(Lr,zr),process.exit(0);if(SL(s))await WL(Lr,zr),process.exit(0);if(kL(s))await lL(Lr,zr),process.exit(0);if(YL(s))await HL(Lr,zr),process.exit(0);if(My(s))await sy(Lr,zr),process.exit(0);if(QL(s))await KL(Lr,zr),process.exit(0);console.error(`unknown command: ${s}`);console.error("");console.error(Qe());process.exit(1);
|