@atlasauth/pca-verified-core 0.4.0 → 0.4.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -37,6 +37,8 @@ export interface PolicyVm {
37
37
  ok: boolean;
38
38
  failed: string[];
39
39
  };
40
+ /** policy-vm.ts rootCaveats over a grant's caveat list (0.4.1): every entry but the first `envelope`; a non-array is returned as is. */
41
+ rootCaveats(caveats: unknown): unknown;
40
42
  /** Visited condition nodes and the verdict (the proved bound: visited <= size of the tree). */
41
43
  evaluateConditionCounted(c: unknown, ctx: unknown): {
42
44
  tri: Tri;
@@ -226,6 +226,23 @@ function createPolicyVm(o) {
226
226
  const r = F.EvalCaveatList(toValue(caveats), ev);
227
227
  return { ok: r.dtor_ok === true, failed: Array.from(r.dtor_failed).map(fromStr) };
228
228
  },
229
+ rootCaveats(caveats) {
230
+ if (!Array.isArray(caveats))
231
+ return caveats;
232
+ // map the proved selection back to the ORIGINAL caveat objects (identity preserved for the evaluator's oracles)
233
+ const vs = caveats.map((c) => toValue(c));
234
+ const kept = Array.from(F.RootCaveats(D.Seq.of(...vs)));
235
+ const out = [];
236
+ let j = 0;
237
+ for (let i = 0; i < vs.length && j < kept.length; i++)
238
+ if (vs[i] === kept[j]) {
239
+ out.push(caveats[i]);
240
+ j++;
241
+ }
242
+ if (j !== kept.length)
243
+ throw new PolicyVmUnsupported('rootCaveats: selection is not a subsequence');
244
+ return out;
245
+ },
229
246
  evaluateConditionCounted(c, ctx) {
230
247
  const r = F.EvalTriC(toValue(c), toValue(ctx), rx);
231
248
  return { tri: triOf(r[0]), visited: r[1].toNumber() };
@@ -1 +1 @@
1
- {"version":3,"file":"ext-policyvm.js","sourceRoot":"","sources":["../src/ext-policyvm.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ext-policyvm.js","sourceRoot":"","sources":["../src/ext-policyvm.ts"],"names":[],"mappings":";;;;;;AAuBA,sBAIC;AACD,0BAKC;AAOD,sBAuBC;AAED,kCAMC;AAkBD,0BAgDC;AAsCD,wCAuEC;AAwBD,8DAGC;AAED,8DAEC;AAQD,sCAGC;AAQD,gDAGC;AA3SD,uDAAuD;AACvD,iIAAiI;AACjI,6HAA6H;AAC7H,uGAAuG;AACvG,EAAE;AACF,mHAAmH;AACnH,yIAAyI;AACzI,4GAA4G;AAC5G,gEAAqC;AACrC,iEAAiE;AACjE,MAAM,GAAG,GAAG,OAAO,CAAC,8BAA8B,CAAmC,CAAC;AACtF,MAAM,CAAC,GAAG,GAAG,CAAC,MAAM,CAAC;AACrB,MAAM,CAAC,GAAG,GAAG,CAAC,QAAQ,CAAC;AACvB,MAAM,CAAC,GAAG,CAAC,CAAC,SAAS,CAAC;AAEtB,MAAa,mBAAoB,SAAQ,KAAK;IAC5C,YAAY,CAAS;QACnB,KAAK,CAAC,kDAAkD,CAAC,GAAG,CAAC,CAAC;QAC9D,IAAI,CAAC,IAAI,GAAG,qBAAqB,CAAC;IACpC,CAAC;CACF;AALD,kDAKC;AAED,iIAAiI;AACjI,SAAgB,KAAK,CAAC,CAAS;IAC7B,MAAM,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,EAAE,EAAE,CAAC;IACrB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,CAAC,EAAE;QAAE,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC;IAC3D,OAAO,CAAC,CAAC;AACX,CAAC;AACD,SAAgB,OAAO,CAAC,CAAM;IAC5B,IAAI,GAAG,GAAG,EAAE,CAAC;IACb,MAAM,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC;IACnB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,IAAI;QAAE,GAAG,IAAI,MAAM,CAAC,YAAY,CAAC,KAAK,CAAC,IAAI,EAAE,KAAK,CAAC,SAAS,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC;IAClI,OAAO,GAAG,CAAC;AACb,CAAC;AAED,kIAAkI;AAClI,MAAM,GAAG,GAAG,IAAI,YAAY,CAAC,CAAC,CAAC,CAAC;AAChC,MAAM,GAAG,GAAG,IAAI,cAAc,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;AAC3C,MAAM,MAAM,GAAG,IAAI,CAAC,CAAC,WAAW,CAAC,IAAI,sBAAS,CAAC,CAAC,CAAC,EAAE,IAAI,sBAAS,CAAC,CAAC,CAAC,CAAC,CAAC;AACrE,8HAA8H;AAC9H,SAAgB,KAAK,CAAC,CAAS;IAC7B,IAAI,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,MAAM,CAAC,gBAAgB;QAAE,OAAO,IAAI,CAAC,CAAC,WAAW,CAAC,IAAI,sBAAS,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,IAAI,sBAAS,CAAC,CAAC,CAAC,CAAC,CAAC;IAC9I,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;IACX,MAAM,IAAI,GAAG,GAAG,CAAC,CAAC,CAAE,CAAC;IACrB,MAAM,IAAI,GAAG,IAAI,IAAI,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;IACpC,MAAM,CAAC,GAAG,MAAM,CAAC,CAAC,IAAI,IAAI,GAAG,CAAC,GAAG,MAAM,CAAC,CAAC;IACzC,IAAI,CAAC,GAAG,IAAI,GAAG,gBAAgB,CAAC;IAChC,IAAI,GAAW,CAAC;IAChB,IAAI,CAAC,KAAK,CAAC;QAAE,GAAG,GAAG,CAAC,IAAI,CAAC;SACpB,CAAC;QACJ,CAAC,IAAI,EAAE,IAAI,GAAG,CAAC;QACf,GAAG,GAAG,CAAC,GAAG,IAAI,CAAC;IACjB,CAAC;IACD,IAAI,CAAC,KAAK,EAAE;QAAE,OAAO,MAAM,CAAC;IAC5B,OAAO,CAAC,CAAC,GAAG,EAAE,CAAC,KAAK,EAAE,EAAE,CAAC;QACvB,CAAC,KAAK,EAAE,CAAC;QACT,GAAG,EAAE,CAAC;IACR,CAAC;IACD,IAAI,GAAG,GAAG,IAAI,sBAAS,CAAC,CAAC,IAAI,GAAG,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC,CAAC;IAC/C,IAAI,GAAG,GAAG,IAAI,sBAAS,CAAC,CAAC,CAAC,CAAC;IAC3B,IAAI,GAAG,IAAI,CAAC;QAAE,GAAG,GAAG,GAAG,CAAC,YAAY,CAAC,IAAI,sBAAS,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC;;QAC3D,GAAG,GAAG,IAAI,sBAAS,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC;IACtC,OAAO,IAAI,CAAC,CAAC,WAAW,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;AACrC,CAAC;AACD,yFAAyF;AACzF,SAAgB,WAAW,CAAC,CAAM;IAChC,MAAM,GAAG,GAAc,CAAC,CAAC,GAAG,CAAC;IAC7B,MAAM,GAAG,GAAc,CAAC,CAAC,GAAG,CAAC;IAC7B,IAAI,GAAG,CAAC,SAAS,CAAC,CAAC,CAAC;QAAE,OAAO,GAAG,CAAC,QAAQ,EAAE,CAAC;IAC5C,MAAM,CAAC,GAAG,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC;IACrC,OAAO,GAAG,CAAC,QAAQ,EAAE,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC;AAClC,CAAC;AACD,MAAM,IAAI,GAAG,IAAI,sBAAS,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;AACxC,6GAA6G;AAC7G,SAAS,QAAQ,CAAC,CAAS;IACzB,IAAI,CAAC,KAAK,QAAQ;QAAE,OAAO,IAAI,CAAC,CAAC,WAAW,CAAC,IAAI,EAAE,IAAI,sBAAS,CAAC,CAAC,CAAC,CAAC,CAAC;IACrE,IAAI,CAAC,KAAK,CAAC,QAAQ;QAAE,OAAO,IAAI,CAAC,CAAC,WAAW,CAAC,IAAI,CAAC,OAAO,EAAE,EAAE,IAAI,sBAAS,CAAC,CAAC,CAAC,CAAC,CAAC;IAChF,OAAO,KAAK,CAAC,CAAC,CAAC,CAAC;AAClB,CAAC;AAED,oIAAoI;AACpI,MAAM,IAAI,GAAG,IAAI,OAAO,EAAmB,CAAC,CAAC,8EAA8E;AAC3H,MAAM,KAAK,GAAG,CAAC,CAAC,KAAK,CAAC,YAAY,EAAE,CAAC;AACrC,MAAM,MAAM,GAAG,CAAC,CAAC,KAAK,CAAC,aAAa,EAAE,CAAC;AACvC,MAAM,UAAU,GAAG,CAAC,CAAC,KAAK,CAAC,iBAAiB,EAAE,CAAC;AAC/C,MAAM,GAAG,GAAG,CAAC,CAAC,KAAK,CAAC,UAAU,EAAE,CAAC;AACjC,MAAM,KAAK,GAAG,CAAC,CAAC,KAAK,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC;AACzC,MAAM,MAAM,GAAG,CAAC,CAAC,KAAK,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC;AAE3C,SAAgB,OAAO,CAAC,CAAU,EAAE,OAAiB,EAAE;IACrD,QAAQ,OAAO,CAAC,EAAE,CAAC;QACjB,KAAK,WAAW;YACd,OAAO,MAAM,CAAC;QAChB,KAAK,SAAS;YACZ,OAAO,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC;QAC5B,KAAK,QAAQ;YACX,OAAO,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC;QACzE,KAAK,QAAQ;YACX,OAAO,CAAC,CAAC,KAAK,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;QACvC,KAAK,UAAU,CAAC;QAChB,KAAK,QAAQ,CAAC;QACd,KAAK,QAAQ;YACX,OAAO,GAAG,CAAC;QACb;YACE,MAAM;IACV,CAAC;IACD,IAAI,CAAC,KAAK,IAAI;QAAE,OAAO,KAAK,CAAC;IAC7B,MAAM,CAAC,GAAG,CAAW,CAAC;IACtB,IAAI,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC;QAAE,MAAM,IAAI,mBAAmB,CAAC,cAAc,CAAC,CAAC;IACpE,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IACb,IAAI,CAAC;QACH,IAAI,CAAM,CAAC;QACX,IAAI,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC;YACrB,MAAM,EAAE,GAAG,CAAC,CAAC,GAAG,CAAC,EAAE,EAAE,CAAC;YACtB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;gBAClC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;oBAAE,MAAM,IAAI,mBAAmB,CAAC,cAAc,CAAC,CAAC;gBAC7D,EAAE,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC,CAAC;YAC/B,CAAC;YACD,CAAC,GAAG,CAAC,CAAC,KAAK,CAAC,WAAW,CAAC,EAAE,CAAC,CAAC;QAC9B,CAAC;aAAM,CAAC;YACN,MAAM,KAAK,GAAG,MAAM,CAAC,mBAAmB,CAAC,CAAC,CAAC,CAAC;YAC5C,MAAM,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YAC5B,IAAI,KAAK,CAAC,MAAM,KAAK,IAAI,CAAC,MAAM;gBAAE,MAAM,IAAI,mBAAmB,CAAC,6BAA6B,CAAC,CAAC;YAC/F,MAAM,EAAE,GAAG,CAAC,CAAC,GAAG,CAAC,EAAE,EAAE,CAAC;YACtB,KAAK,MAAM,CAAC,IAAI,IAAI,EAAE,CAAC;gBACrB,MAAM,CAAC,GAAG,MAAM,CAAC,wBAAwB,CAAC,CAAC,EAAE,CAAC,CAAE,CAAC;gBACjD,IAAI,CAAC,CAAC,OAAO,IAAI,CAAC,CAAC;oBAAE,MAAM,IAAI,mBAAmB,CAAC,mBAAmB,CAAC,CAAC;gBACxE,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,OAAO,CAAC,CAAC,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC;YAClE,CAAC;YACD,MAAM,KAAK,GAAG,MAAM,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC;YACvC,CAAC,GAAG,CAAC,CAAC,KAAK,CAAC,WAAW,CAAC,EAAE,EAAE,KAAK,KAAK,MAAM,CAAC,SAAS,IAAI,KAAK,KAAK,IAAI,CAAC,CAAC;QAC5E,CAAC;QACD,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;QACf,OAAO,CAAC,CAAC;IACX,CAAC;YAAS,CAAC;QACT,IAAI,CAAC,GAAG,EAAE,CAAC;IACb,CAAC;AACH,CAAC;AAaD,MAAM,KAAK,GAAG,CAAC,CAAM,EAAO,EAAE,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC;AAuBlF,MAAM,EAAE,GAAG,CAAC,GAAQ,EAAE,GAAQ,EAAO,EAAE,CAAC,QAAQ,CAAC,WAAW,CAAC,GAAG,CAAC,GAAG,WAAW,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC,CAAC;AAE7F,SAAgB,cAAc,CAAC,CAAkB;IAC/C,MAAM,EAAE,GAAG,CAAC,CAAC,EAAE,CAAC,SAAS,CACvB,CAAC,GAAQ,EAAE,EAAE;QACX,IAAI,CAAC;YACH,OAAO,CAAC,CAAC,SAAS,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,KAAK,IAAI,CAAC;QAC5C,CAAC;QAAC,MAAM,CAAC;YACP,OAAO,KAAK,CAAC;QACf,CAAC;IACH,CAAC,EACD,CAAC,GAAQ,EAAE,IAAS,EAAE,EAAE;QACtB,IAAI,CAAC;YACH,MAAM,CAAC,GAAG,CAAC,CAAC,cAAc,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC;YACxD,OAAO,CAAC,KAAK,IAAI,IAAI,CAAC,KAAK,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC,KAAK,IAAI,CAAC,CAAC;QACnG,CAAC;QAAC,MAAM,CAAC;YACP,OAAO,CAAC,CAAC,MAAM,CAAC,WAAW,EAAE,CAAC;QAChC,CAAC;IACH,CAAC,CACF,CAAC;IACF,MAAM,IAAI,GAAG,CAAC,EAAO,EAAE,GAAQ,EAAW,EAAE;QAC1C,IAAI,CAAC,CAAC,CAAC,UAAU;YAAE,OAAO,KAAK,CAAC;QAChC,IAAI,CAAC;YACH,OAAO,CAAC,CAAC,UAAU,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,KAAK,IAAI,CAAC;QAC5D,CAAC;QAAC,MAAM,CAAC;YACP,OAAO,KAAK,CAAC;QACf,CAAC;IACH,CAAC,CAAC;IACF,MAAM,UAAU,GAAG,CAAC,EAAO,EAAE,GAAQ,EAAE,EAAE,CAAC,CAAC,CAAC,UAAU,CAAC,EAAE,EAAE,GAAG,EAAE,EAAE,CAAC,CAAC;IACpE,MAAM,OAAO,GAAG,CAAC,EAAO,EAAE,GAAQ,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,EAAE,EAAE,GAAG,EAAE,EAAE,EAAE,EAAE,EAAE,IAAI,CAAC,CAAC;IACxE,OAAO;QACL,WAAW,CAAC,GAAG,EAAE,IAAI;YACnB,MAAM,CAAC,GAAG,CAAC,CAAC,WAAW,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC;YACrD,IAAI,CAAC,CAAC,CAAC,UAAU;gBAAE,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC;YAC3C,qHAAqH;YACrH,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,KAAK,EAAE,UAAU,CAAC,GAAG,EAAE,IAAc,CAAC,EAAE,CAAC;QACjE,CAAC;QACD,oBAAoB,EAAE,CAAC,CAAC,EAAE,GAAG,EAAE,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,OAAO,CAAC,GAAG,CAAC,EAAE,EAAE,CAAC,CAAC;QAChF,iBAAiB,EAAE,CAAC,CAAC,EAAE,GAAG,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,OAAO,CAAC,GAAG,CAAC,EAAE,EAAE,CAAC,CAAC,KAAK,KAAK,IAAI;QACrF,gBAAgB,EAAE,CAAC,CAAC,EAAE,GAAG,EAAE,EAAE,CAAC,CAAC,CAAC,gBAAgB,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,OAAO,CAAC,GAAG,CAAC,EAAE,EAAE,CAAC,KAAK,IAAI;QACvF,kBAAkB,CAAC,UAAU,EAAE,GAAG;YAChC,MAAM,EAAE,GAAG,OAAO,CAAC,UAAU,CAAC,CAAC;YAC/B,MAAM,EAAE,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC;YACxB,MAAM,CAAC,GAAG,CAAC,CAAC,cAAc,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,CAAC;YACvC,IAAI,CAAC,CAAC,YAAY;gBAAE,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,OAAO,EAAG,UAAwB,CAAC,CAAC,CAAC,QAAQ,CAAC,QAAQ,EAAE,CAAC,EAAE,CAAC;YACxG,IAAI,CAAC,CAAC,QAAQ,CAAC,QAAQ,EAAE,KAAK,CAAC;gBAAE,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,+BAA+B,EAAE,CAAC;YACpG,MAAM,CAAC,GAAI,GAAW,EAAE,MAAM,CAAC;YAC/B,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,wBAAwB,MAAM,CAAC,CAAC,EAAE,IAAI,CAAC,OAAO,MAAM,CAAC,CAAC,EAAE,QAAQ,CAAC,EAAE,EAAE,CAAC;QACzG,CAAC;QACD,uBAAuB,EAAE,CAAC,EAAE,EAAE,GAAG,EAAE,EAAE,CAAC,UAAU,CAAC,OAAO,CAAC,EAAE,CAAC,EAAE,OAAO,CAAC,GAAG,CAAC,CAAC,KAAK,IAAI;QACpF,0BAA0B,EAAE,CAAC,EAAE,EAAE,GAAG,EAAE,EAAE,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC,EAAE,OAAO,CAAC,GAAG,CAAC,CAAC,KAAK,IAAI;QACpF,eAAe,CAAC,OAAO,EAAE,GAAG,EAAE,SAAS,GAAG,UAAU;YAClD,MAAM,EAAE,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC;YACxB,MAAM,EAAE,GAAG,SAAS,KAAK,OAAO,CAAC,CAAC,CAAC,CAAC,EAAO,EAAE,EAAE,CAAC,OAAO,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,EAAO,EAAE,EAAE,CAAC,UAAU,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC;YAClG,MAAM,CAAC,GAAG,CAAC,CAAC,cAAc,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,EAAE,CAAC,CAAC;YACjD,OAAO,EAAE,EAAE,EAAE,CAAC,CAAC,OAAO,KAAK,IAAI,EAAE,MAAM,EAAG,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,WAAW,CAAW,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,CAAC;QAC/F,CAAC;QACD,WAAW,CAAC,OAAO;YACjB,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC;gBAAE,OAAO,OAAO,CAAC;YAC5C,gHAAgH;YAChH,MAAM,EAAE,GAAI,OAAqB,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC;YACzD,MAAM,IAAI,GAAG,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,EAAE,CAAC,CAAU,CAAC,CAAC;YACjE,MAAM,GAAG,GAAc,EAAE,CAAC;YAC1B,IAAI,CAAC,GAAG,CAAC,CAAC;YACV,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,EAAE,CAAC,MAAM,IAAI,CAAC,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC,EAAE;gBAAE,IAAI,EAAE,CAAC,CAAC,CAAC,KAAK,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC;oBAAC,GAAG,CAAC,IAAI,CAAE,OAAqB,CAAC,CAAC,CAAC,CAAC,CAAC;oBAAC,CAAC,EAAE,CAAC;gBAAC,CAAC;YAC3H,IAAI,CAAC,KAAK,IAAI,CAAC,MAAM;gBAAE,MAAM,IAAI,mBAAmB,CAAC,6CAA6C,CAAC,CAAC;YACpG,OAAO,GAAG,CAAC;QACb,CAAC;QACD,wBAAwB,CAAC,CAAC,EAAE,GAAG;YAC7B,MAAM,CAAC,GAAG,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,OAAO,CAAC,GAAG,CAAC,EAAE,EAAE,CAAC,CAAC;YACnD,OAAO,EAAE,GAAG,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,OAAO,EAAG,CAAC,CAAC,CAAC,CAAe,CAAC,QAAQ,EAAE,EAAE,CAAC;QACvE,CAAC;KACF,CAAC;AACJ,CAAC;AAED,SAAS,UAAU,CAAC,GAAY,EAAE,IAAY;IAC5C,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IAC7B,IAAI,GAAG,GAAS,GAAW,EAAE,CAAC,IAAI,CAAC,CAAC,CAAE,CAAC,CAAC;IACxC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC,EAAE;QAAE,GAAG,GAAG,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAE,CAAC,CAAC;IACtG,OAAO,GAAG,CAAC;AACb,CAAC;AAQD,MAAM,MAAM,GAAG,CAAC,OAAO,EAAE,UAAU,EAAE,QAAQ,CAAU,CAAC;AACxD,MAAM,KAAK,GAAG,CAAC,CAAM,EAAsB,EAAE,CAAC,CAAC;IAC7C,CAAC,EAAE,CAAC,CAAC,MAAM,CAAC,QAAQ,EAAe;IACnC,KAAK,EAAE,MAAM,CAAC,CAAC,CAAC,UAAU,CAAC,QAAQ,EAAE,CAAE;IACvC,iBAAiB,EAAE,CAAC,CAAC,QAAQ,KAAK,IAAI;CACvC,CAAC,CAAC;AACH,MAAM,KAAK,GAAG,CAAC,CAAqB,EAAO,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,UAAU,CAAC,IAAI,sBAAS,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,IAAI,sBAAS,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,iBAAiB,CAAC,CAAC;AAEhJ,+HAA+H;AAC/H,SAAgB,yBAAyB,CAAC,CAAS,EAAE,MAAc,EAAE,MAAc,EAAE,YAAqB;IACxG,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC;QAAE,MAAM,IAAI,mBAAmB,CAAC,kBAAkB,CAAC,CAAC;IAC5G,OAAO,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,KAAK,CAAC,MAAM,CAAC,EAAE,KAAK,CAAC,MAAM,CAAC,EAAE,YAAY,CAAC,CAAC,CAAC;AACxG,CAAC;AACD,mCAAmC;AACnC,SAAgB,yBAAyB,CAAC,EAAsB,EAAE,IAAe;IAC/E,OAAO,KAAK,CAAC,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE,CAAC,EAAE,IAAI,sBAAS,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;AAC3D,CAAC;AAOD,6HAA6H;AAC7H,SAAgB,aAAa,CAAC,CAAY,EAAE,gBAAyB;IACnE,MAAM,CAAC,GAAG,CAAC,CAAC,OAAO,CAAC,IAAI,sBAAS,CAAC,CAAC,CAAC,EAAE,gBAAgB,CAAC,CAAC;IACxD,OAAO,EAAE,KAAK,EAAE,CAAC,CAAC,UAAU,KAAK,IAAI,EAAE,UAAU,EAAE,CAAC,CAAC,eAAe,KAAK,IAAI,EAAE,CAAC,EAAE,CAAC,CAAC,MAAM,CAAC,QAAQ,EAAe,EAAE,OAAO,EAAE,CAAC,CAAC,YAAY,KAAK,IAAI,EAAE,CAAC;AACzJ,CAAC;AAQD,SAAgB,kBAAkB,CAAC,IAAa,EAAE,IAAa,EAAE,KAAc,EAAE,OAAgB,EAAE,EAAsB,EAAE,GAAe;IACxI,MAAM,CAAC,GAAG,CAAC,CAAC,UAAU,CAAC,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,OAAO,EAAE,KAAK,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,GAAG,CAAC,UAAU,CAAC,GAAG,CAAC,KAAK,EAAE,GAAG,CAAC,UAAU,EAAE,IAAI,sBAAS,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC;IAC9I,OAAO,EAAE,OAAO,EAAE,CAAC,CAAC,YAAY,KAAK,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC,UAAU,KAAK,IAAI,EAAE,UAAU,EAAE,CAAC,CAAC,eAAe,KAAK,IAAI,EAAE,SAAS,EAAE,KAAK,CAAC,CAAC,CAAC,QAAQ,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,UAAU,KAAK,IAAI,EAAE,CAAC;AAChL,CAAC"}
@@ -2432,11 +2432,39 @@ let PolicyVm = (function() {
2432
2432
  } else {
2433
2433
  return PolicyVm.__default.ExistsPred((_2_allow).dtor_xs, _1_a, rx);
2434
2434
  }
2435
+ } else if (_dafny.areEqual(_0_ty, PolicyVm.Value.create_VStr(PolicyVm.__default.S(_dafny.Seq.UnicodeFromString("max_spend"))))) {
2436
+ return PolicyVm.__default.MaxSpendEv(cv, ctx);
2435
2437
  } else {
2436
2438
  return PolicyVm.__default.EnvelopeEv(cv, ctx, fl);
2437
2439
  }
2438
2440
  }
2439
2441
  };
2442
+ static HasKey(v, k) {
2443
+ let _source0 = v;
2444
+ {
2445
+ if (_source0.is_VObj) {
2446
+ let _0_es = (_source0).es;
2447
+ return PolicyVm.__default.Has(_0_es, k);
2448
+ }
2449
+ }
2450
+ {
2451
+ return false;
2452
+ }
2453
+ };
2454
+ static SpendParams(ctx) {
2455
+ return PolicyVm.__default.Field(PolicyVm.__default.Field(PolicyVm.__default.Field(ctx, PolicyVm.__default.S(_dafny.Seq.UnicodeFromString("action"))), PolicyVm.__default.S(_dafny.Seq.UnicodeFromString("action"))), PolicyVm.__default.S(_dafny.Seq.UnicodeFromString("params")));
2456
+ };
2457
+ static CurrencyOk(ps) {
2458
+ return ((!(PolicyVm.__default.HasKey(ps, PolicyVm.__default.S(_dafny.Seq.UnicodeFromString("currency"))))) || (_dafny.areEqual(PolicyVm.__default.Field(ps, PolicyVm.__default.S(_dafny.Seq.UnicodeFromString("currency"))), PolicyVm.Value.create_VStr(PolicyVm.__default.S(_dafny.Seq.UnicodeFromString("usd")))))) || (_dafny.areEqual(PolicyVm.__default.Field(ps, PolicyVm.__default.S(_dafny.Seq.UnicodeFromString("currency"))), PolicyVm.Value.create_VStr(PolicyVm.__default.S(_dafny.Seq.UnicodeFromString("USD")))));
2459
+ };
2460
+ static MaxSpendEv(cv, ctx) {
2461
+ let _0_lim = PolicyVm.__default.Field(cv, PolicyVm.__default.S(_dafny.Seq.UnicodeFromString("usd")));
2462
+ let _1_a = PolicyVm.__default.Field(ctx, PolicyVm.__default.S(_dafny.Seq.UnicodeFromString("action")));
2463
+ let _2_act = PolicyVm.__default.Field(_1_a, PolicyVm.__default.S(_dafny.Seq.UnicodeFromString("action")));
2464
+ let _3_ps = PolicyVm.__default.Field(_2_act, PolicyVm.__default.S(_dafny.Seq.UnicodeFromString("params")));
2465
+ let _4_amt = PolicyVm.__default.Field(_3_ps, PolicyVm.__default.S(_dafny.Seq.UnicodeFromString("amount")));
2466
+ return (((((((((_0_lim).is_VNum) && ((new _dafny.BigRational(new BigNumber("0"))).isAtMost((_0_lim).dtor_r))) && (PolicyVm.__default.IsObjRec(_1_a))) && (PolicyVm.__default.IsObjRec(_2_act))) && (PolicyVm.__default.IsObjRec(_3_ps))) && ((_4_amt).is_VNum)) && ((new _dafny.BigRational(new BigNumber("0"))).isAtMost((_4_amt).dtor_r))) && (PolicyVm.__default.CurrencyOk(_3_ps))) && (((_4_amt).dtor_r).isAtMost((_0_lim).dtor_r));
2467
+ };
2440
2468
  static CavName(cv) {
2441
2469
  let _0_t = PolicyVm.__default.Field(cv, PolicyVm.__default.S(_dafny.Seq.UnicodeFromString("type")));
2442
2470
  if ((_0_t).is_VStr) {
@@ -2570,8 +2598,23 @@ let PolicyVm = (function() {
2570
2598
  return PolicyVm.__default.AgentEv(_4_cv, _0_cctx, _1_rx, _2_fl, _3_tool);
2571
2599
  })(cctx, rx, fl, tool);
2572
2600
  };
2573
- static ReleaseOf(preds, action, caveats, extra, cctx, chainOk, rx, fl, tool) {
2574
- return ((((PolicyVm.__default.EvalPredicates(preds, action, rx)).dtor_allowed) && ((PolicyVm.__default.EvalCaveatList(caveats, PolicyVm.__default.CaveatEvFor(cctx, rx, fl, tool))).dtor_ok)) && ((PolicyVm.__default.EvalCaveats(extra, PolicyVm.__default.CaveatEvFor(cctx, rx, fl, tool))).dtor_ok)) && (chainOk);
2601
+ static RootCaveats(cs) {
2602
+ let _0___accumulator = _dafny.Seq.of();
2603
+ TAIL_CALL_START: while (true) {
2604
+ if ((new BigNumber((cs).length)).isEqualTo(_dafny.ZERO)) {
2605
+ return _dafny.Seq.Concat(_0___accumulator, _dafny.Seq.of());
2606
+ } else if (_dafny.areEqual(PolicyVm.__default.Field((cs)[_dafny.ZERO], PolicyVm.__default.S(_dafny.Seq.UnicodeFromString("type"))), PolicyVm.Value.create_VStr(PolicyVm.__default.S(_dafny.Seq.UnicodeFromString("envelope"))))) {
2607
+ return _dafny.Seq.Concat(_0___accumulator, (cs).slice(_dafny.ONE));
2608
+ } else {
2609
+ _0___accumulator = _dafny.Seq.Concat(_0___accumulator, _dafny.Seq.of((cs)[_dafny.ZERO]));
2610
+ let _in0 = (cs).slice(_dafny.ONE);
2611
+ cs = _in0;
2612
+ continue TAIL_CALL_START;
2613
+ }
2614
+ }
2615
+ };
2616
+ static ReleaseOf(preds, action, caveats, root, extra, cctx, chainOk, rx, fl, tool) {
2617
+ return (((((PolicyVm.__default.EvalPredicates(preds, action, rx)).dtor_allowed) && ((PolicyVm.__default.EvalCaveatList(caveats, PolicyVm.__default.CaveatEvFor(cctx, rx, fl, tool))).dtor_ok)) && ((PolicyVm.__default.EvalCaveats(root, PolicyVm.__default.CaveatEvFor(cctx, rx, fl, tool))).dtor_ok)) && ((PolicyVm.__default.EvalCaveats(extra, PolicyVm.__default.CaveatEvFor(cctx, rx, fl, tool))).dtor_ok)) && (chainOk);
2575
2618
  };
2576
2619
  static get NotFound() {
2577
2620
  return PolicyVm.Res.create_Res(false, PolicyVm.Value.create_VUndef());
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@atlasauth/pca-verified-core",
3
- "version": "0.4.0",
3
+ "version": "0.4.1",
4
4
  "description": "The decision logic of the PCA verifier (capability-chain walk and attenuation, threshold distinct-role count, replay guard, check/verdict combinator, suite and PQ-pin binding rules), written and machine-proved in Dafny and compiled to JavaScript.",
5
5
  "keywords": [
6
6
  "formal verification",