pi-harness-runtime 0.9.15 → 0.9.16

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.
Files changed (101) hide show
  1. package/package.json +1 -1
  2. package/packages/autonomous-runtime/README.md +48 -0
  3. package/packages/autonomous-runtime/dist/inbox.d.ts +75 -0
  4. package/packages/autonomous-runtime/dist/inbox.d.ts.map +1 -0
  5. package/packages/autonomous-runtime/dist/inbox.js +212 -0
  6. package/packages/autonomous-runtime/dist/inbox.js.map +1 -0
  7. package/packages/autonomous-runtime/dist/index.d.ts +17 -0
  8. package/packages/autonomous-runtime/dist/index.d.ts.map +1 -0
  9. package/packages/autonomous-runtime/dist/index.js +17 -0
  10. package/packages/autonomous-runtime/dist/index.js.map +1 -0
  11. package/packages/autonomous-runtime/dist/lease.d.ts +78 -0
  12. package/packages/autonomous-runtime/dist/lease.d.ts.map +1 -0
  13. package/packages/autonomous-runtime/dist/lease.js +273 -0
  14. package/packages/autonomous-runtime/dist/lease.js.map +1 -0
  15. package/packages/autonomous-runtime/dist/types.d.ts +160 -0
  16. package/packages/autonomous-runtime/dist/types.d.ts.map +1 -0
  17. package/packages/autonomous-runtime/dist/types.js +31 -0
  18. package/packages/autonomous-runtime/dist/types.js.map +1 -0
  19. package/packages/autonomous-runtime/dist/worker.d.ts +63 -0
  20. package/packages/autonomous-runtime/dist/worker.d.ts.map +1 -0
  21. package/packages/autonomous-runtime/dist/worker.js +133 -0
  22. package/packages/autonomous-runtime/dist/worker.js.map +1 -0
  23. package/packages/autonomous-runtime/package.json +34 -0
  24. package/packages/autonomous-runtime/src/inbox.ts +266 -0
  25. package/packages/autonomous-runtime/src/index.ts +22 -0
  26. package/packages/autonomous-runtime/src/lease.ts +318 -0
  27. package/packages/autonomous-runtime/src/types.ts +257 -0
  28. package/packages/autonomous-runtime/test/autonomous-runtime.test.ts +194 -0
  29. package/packages/autonomous-runtime/test/inbox.test.mjs +266 -0
  30. package/packages/autonomous-runtime/test/inbox.test.ts +80 -0
  31. package/packages/autonomous-runtime/test/types.test.ts +68 -0
  32. package/packages/autonomous-runtime/tsconfig.json +22 -0
  33. package/packages/autonomous-runtime/tsconfig.tsbuildinfo +1 -0
  34. package/packages/privilege-broker/README.md +45 -0
  35. package/packages/privilege-broker/config/privileges.yaml.example +172 -0
  36. package/packages/privilege-broker/dist/approval.d.ts +23 -0
  37. package/packages/privilege-broker/dist/approval.d.ts.map +1 -0
  38. package/packages/privilege-broker/dist/approval.js +45 -0
  39. package/packages/privilege-broker/dist/approval.js.map +1 -0
  40. package/packages/privilege-broker/dist/audit.d.ts +38 -0
  41. package/packages/privilege-broker/dist/audit.d.ts.map +1 -0
  42. package/packages/privilege-broker/dist/audit.js +125 -0
  43. package/packages/privilege-broker/dist/audit.js.map +1 -0
  44. package/packages/privilege-broker/dist/executor.d.ts +25 -0
  45. package/packages/privilege-broker/dist/executor.d.ts.map +1 -0
  46. package/packages/privilege-broker/dist/executor.js +83 -0
  47. package/packages/privilege-broker/dist/executor.js.map +1 -0
  48. package/packages/privilege-broker/dist/index.d.ts +30 -0
  49. package/packages/privilege-broker/dist/index.d.ts.map +1 -0
  50. package/packages/privilege-broker/dist/index.js +5 -0
  51. package/packages/privilege-broker/dist/index.js.map +1 -0
  52. package/packages/privilege-broker/dist/registry.d.ts +15 -0
  53. package/packages/privilege-broker/dist/registry.d.ts.map +1 -0
  54. package/packages/privilege-broker/dist/registry.js +76 -0
  55. package/packages/privilege-broker/dist/registry.js.map +1 -0
  56. package/packages/privilege-broker/dist/types.d.ts +77 -0
  57. package/packages/privilege-broker/dist/types.d.ts.map +1 -0
  58. package/packages/privilege-broker/dist/types.js +11 -0
  59. package/packages/privilege-broker/dist/types.js.map +1 -0
  60. package/packages/privilege-broker/package.json +35 -0
  61. package/packages/privilege-broker/src/approval.ts +70 -0
  62. package/packages/privilege-broker/src/audit.ts +142 -0
  63. package/packages/privilege-broker/src/executor.ts +110 -0
  64. package/packages/privilege-broker/src/index.ts +46 -0
  65. package/packages/privilege-broker/src/registry.ts +98 -0
  66. package/packages/privilege-broker/src/types.ts +105 -0
  67. package/packages/privilege-broker/tsconfig.json +22 -0
  68. package/packages/privilege-broker/tsconfig.tsbuildinfo +1 -0
  69. package/packages/scheduler-adapter/README.md +36 -0
  70. package/packages/scheduler-adapter/dist/cron.d.ts +21 -0
  71. package/packages/scheduler-adapter/dist/cron.d.ts.map +1 -0
  72. package/packages/scheduler-adapter/dist/cron.js +116 -0
  73. package/packages/scheduler-adapter/dist/cron.js.map +1 -0
  74. package/packages/scheduler-adapter/dist/index.d.ts +9 -0
  75. package/packages/scheduler-adapter/dist/index.d.ts.map +1 -0
  76. package/packages/scheduler-adapter/dist/index.js +8 -0
  77. package/packages/scheduler-adapter/dist/index.js.map +1 -0
  78. package/packages/scheduler-adapter/dist/interface.d.ts +61 -0
  79. package/packages/scheduler-adapter/dist/interface.d.ts.map +1 -0
  80. package/packages/scheduler-adapter/dist/interface.js +2 -0
  81. package/packages/scheduler-adapter/dist/interface.js.map +1 -0
  82. package/packages/scheduler-adapter/dist/internal.d.ts +30 -0
  83. package/packages/scheduler-adapter/dist/internal.d.ts.map +1 -0
  84. package/packages/scheduler-adapter/dist/internal.js +82 -0
  85. package/packages/scheduler-adapter/dist/internal.js.map +1 -0
  86. package/packages/scheduler-adapter/dist/systemd.d.ts +31 -0
  87. package/packages/scheduler-adapter/dist/systemd.d.ts.map +1 -0
  88. package/packages/scheduler-adapter/dist/systemd.js +203 -0
  89. package/packages/scheduler-adapter/dist/systemd.js.map +1 -0
  90. package/packages/scheduler-adapter/package.json +32 -0
  91. package/packages/scheduler-adapter/src/cron.ts +123 -0
  92. package/packages/scheduler-adapter/src/index.ts +9 -0
  93. package/packages/scheduler-adapter/src/interface.ts +61 -0
  94. package/packages/scheduler-adapter/src/internal.ts +99 -0
  95. package/packages/scheduler-adapter/src/systemd.ts +221 -0
  96. package/packages/scheduler-adapter/tsconfig.json +22 -0
  97. package/packages/scheduler-adapter/tsconfig.tsbuildinfo +1 -0
  98. package/packages/types/dist/ai-providers.d.ts +0 -36
  99. package/packages/types/dist/ai-providers.d.ts.map +0 -1
  100. package/packages/types/dist/ai-providers.js +0 -66
  101. package/packages/types/dist/ai-providers.js.map +0 -1
@@ -0,0 +1 @@
1
+ {"version":"7.0.2","root":[[59,62]],"packageJsons":["../../node_modules/string_decoder/package.json","./node_modules/@types/node/node_modules/undici-types/package.json","./node_modules/@types/node/package.json","./package.json"],"missingPackageJsons":["../../node_modules/@types/assert/package.json","../../node_modules/@types/assert/strict/package.json","../../node_modules/@types/async_hooks/package.json","../../node_modules/@types/buffer/package.json","../../node_modules/@types/child_process/package.json","../../node_modules/@types/cluster/package.json","../../node_modules/@types/console/package.json","../../node_modules/@types/constants/package.json","../../node_modules/@types/crypto/package.json","../../node_modules/@types/dgram/package.json","../../node_modules/@types/diagnostics_channel/package.json","../../node_modules/@types/dns/package.json","../../node_modules/@types/dns/promises/package.json","../../node_modules/@types/domain/package.json","../../node_modules/@types/events/package.json","../../node_modules/@types/fs/package.json","../../node_modules/@types/fs/promises/package.json","../../node_modules/@types/http/package.json","../../node_modules/@types/http2/package.json","../../node_modules/@types/https/package.json","../../node_modules/@types/inspector/package.json","../../node_modules/@types/inspector/promises/package.json","../../node_modules/@types/module/package.json","../../node_modules/@types/net/package.json","../../node_modules/@types/os/package.json","../../node_modules/@types/path/package.json","../../node_modules/@types/path/posix/package.json","../../node_modules/@types/path/win32/package.json","../../node_modules/@types/perf_hooks/package.json","../../node_modules/@types/process/package.json","../../node_modules/@types/punycode/package.json","../../node_modules/@types/querystring/package.json","../../node_modules/@types/readline/package.json","../../node_modules/@types/readline/promises/package.json","../../node_modules/@types/repl/package.json","../../node_modules/@types/stream/consumers/package.json","../../node_modules/@types/stream/package.json","../../node_modules/@types/stream/promises/package.json","../../node_modules/@types/stream/web/package.json","../../node_modules/@types/string_decoder/package.json","../../node_modules/@types/timers/package.json","../../node_modules/@types/timers/promises/package.json","../../node_modules/@types/tls/package.json","../../node_modules/@types/trace_events/package.json","../../node_modules/@types/tty/package.json","../../node_modules/@types/url/package.json","../../node_modules/@types/util/package.json","../../node_modules/@types/util/types/package.json","../../node_modules/@types/v8/package.json","../../node_modules/@types/vm/package.json","../../node_modules/@types/wasi/package.json","../../node_modules/@types/worker_threads/package.json","../../node_modules/@types/zlib/package.json","../../node_modules/assert/package.json","../../node_modules/assert/strict/package.json","../../node_modules/async_hooks/package.json","../../node_modules/buffer/package.json","../../node_modules/child_process/package.json","../../node_modules/cluster/package.json","../../node_modules/console/package.json","../../node_modules/constants/package.json","../../node_modules/crypto/package.json","../../node_modules/dgram/package.json","../../node_modules/diagnostics_channel/package.json","../../node_modules/dns/package.json","../../node_modules/dns/promises/package.json","../../node_modules/domain/package.json","../../node_modules/events/package.json","../../node_modules/fs/package.json","../../node_modules/fs/promises/package.json","../../node_modules/http/package.json","../../node_modules/http2/package.json","../../node_modules/https/package.json","../../node_modules/inspector/package.json","../../node_modules/inspector/promises/package.json","../../node_modules/module/package.json","../../node_modules/net/package.json","../../node_modules/os/package.json","../../node_modules/path/package.json","../../node_modules/path/posix/package.json","../../node_modules/path/win32/package.json","../../node_modules/perf_hooks/package.json","../../node_modules/process/package.json","../../node_modules/punycode/package.json","../../node_modules/querystring/package.json","../../node_modules/readline/package.json","../../node_modules/readline/promises/package.json","../../node_modules/repl/package.json","../../node_modules/stream/consumers/package.json","../../node_modules/stream/package.json","../../node_modules/stream/promises/package.json","../../node_modules/stream/web/package.json","../../node_modules/timers/package.json","../../node_modules/timers/promises/package.json","../../node_modules/tls/package.json","../../node_modules/trace_events/package.json","../../node_modules/tty/package.json","../../node_modules/url/package.json","../../node_modules/util/package.json","../../node_modules/util/types/package.json","../../node_modules/v8/package.json","../../node_modules/vm/package.json","../../node_modules/wasi/package.json","../../node_modules/worker_threads/package.json","../../node_modules/zlib/package.json","./node_modules/@types/assert/package.json","./node_modules/@types/assert/strict/package.json","./node_modules/@types/async_hooks/package.json","./node_modules/@types/buffer/package.json","./node_modules/@types/child_process/package.json","./node_modules/@types/cluster/package.json","./node_modules/@types/console/package.json","./node_modules/@types/constants/package.json","./node_modules/@types/crypto/package.json","./node_modules/@types/dgram/package.json","./node_modules/@types/diagnostics_channel/package.json","./node_modules/@types/dns/package.json","./node_modules/@types/dns/promises/package.json","./node_modules/@types/domain/package.json","./node_modules/@types/events/package.json","./node_modules/@types/fs/package.json","./node_modules/@types/fs/promises/package.json","./node_modules/@types/http/package.json","./node_modules/@types/http2/package.json","./node_modules/@types/https/package.json","./node_modules/@types/inspector/package.json","./node_modules/@types/inspector/promises/package.json","./node_modules/@types/module/package.json","./node_modules/@types/net/package.json","./node_modules/@types/node/assert/package.json","./node_modules/@types/node/compatibility/package.json","./node_modules/@types/node/dns/package.json","./node_modules/@types/node/fs/package.json","./node_modules/@types/node/node_modules/assert/package.json","./node_modules/@types/node/node_modules/assert/strict/package.json","./node_modules/@types/node/node_modules/async_hooks/package.json","./node_modules/@types/node/node_modules/buffer/package.json","./node_modules/@types/node/node_modules/child_process/package.json","./node_modules/@types/node/node_modules/cluster/package.json","./node_modules/@types/node/node_modules/console/package.json","./node_modules/@types/node/node_modules/constants/package.json","./node_modules/@types/node/node_modules/crypto/package.json","./node_modules/@types/node/node_modules/dgram/package.json","./node_modules/@types/node/node_modules/diagnostics_channel/package.json","./node_modules/@types/node/node_modules/dns/package.json","./node_modules/@types/node/node_modules/dns/promises/package.json","./node_modules/@types/node/node_modules/domain/package.json","./node_modules/@types/node/node_modules/events/package.json","./node_modules/@types/node/node_modules/fs/package.json","./node_modules/@types/node/node_modules/fs/promises/package.json","./node_modules/@types/node/node_modules/http/package.json","./node_modules/@types/node/node_modules/http2/package.json","./node_modules/@types/node/node_modules/https/package.json","./node_modules/@types/node/node_modules/inspector/package.json","./node_modules/@types/node/node_modules/inspector/promises/package.json","./node_modules/@types/node/node_modules/module/package.json","./node_modules/@types/node/node_modules/net/package.json","./node_modules/@types/node/node_modules/os/package.json","./node_modules/@types/node/node_modules/path/package.json","./node_modules/@types/node/node_modules/path/posix/package.json","./node_modules/@types/node/node_modules/path/win32/package.json","./node_modules/@types/node/node_modules/perf_hooks/package.json","./node_modules/@types/node/node_modules/process/package.json","./node_modules/@types/node/node_modules/punycode/package.json","./node_modules/@types/node/node_modules/querystring/package.json","./node_modules/@types/node/node_modules/readline/package.json","./node_modules/@types/node/node_modules/readline/promises/package.json","./node_modules/@types/node/node_modules/repl/package.json","./node_modules/@types/node/node_modules/stream/consumers/package.json","./node_modules/@types/node/node_modules/stream/package.json","./node_modules/@types/node/node_modules/stream/promises/package.json","./node_modules/@types/node/node_modules/stream/web/package.json","./node_modules/@types/node/node_modules/string_decoder/package.json","./node_modules/@types/node/node_modules/timers/package.json","./node_modules/@types/node/node_modules/timers/promises/package.json","./node_modules/@types/node/node_modules/tls/package.json","./node_modules/@types/node/node_modules/trace_events/package.json","./node_modules/@types/node/node_modules/tty/package.json","./node_modules/@types/node/node_modules/url/package.json","./node_modules/@types/node/node_modules/util/package.json","./node_modules/@types/node/node_modules/util/types/package.json","./node_modules/@types/node/node_modules/v8/package.json","./node_modules/@types/node/node_modules/vm/package.json","./node_modules/@types/node/node_modules/wasi/package.json","./node_modules/@types/node/node_modules/worker_threads/package.json","./node_modules/@types/node/node_modules/zlib/package.json","./node_modules/@types/node/readline/package.json","./node_modules/@types/node/stream/package.json","./node_modules/@types/node/timers/package.json","./node_modules/@types/node/web-globals/package.json","./node_modules/@types/os/package.json","./node_modules/@types/path/package.json","./node_modules/@types/path/posix/package.json","./node_modules/@types/path/win32/package.json","./node_modules/@types/perf_hooks/package.json","./node_modules/@types/process/package.json","./node_modules/@types/punycode/package.json","./node_modules/@types/querystring/package.json","./node_modules/@types/readline/package.json","./node_modules/@types/readline/promises/package.json","./node_modules/@types/repl/package.json","./node_modules/@types/stream/consumers/package.json","./node_modules/@types/stream/package.json","./node_modules/@types/stream/promises/package.json","./node_modules/@types/stream/web/package.json","./node_modules/@types/string_decoder/package.json","./node_modules/@types/timers/package.json","./node_modules/@types/timers/promises/package.json","./node_modules/@types/tls/package.json","./node_modules/@types/trace_events/package.json","./node_modules/@types/tty/package.json","./node_modules/@types/url/package.json","./node_modules/@types/util/package.json","./node_modules/@types/util/types/package.json","./node_modules/@types/v8/package.json","./node_modules/@types/vm/package.json","./node_modules/@types/wasi/package.json","./node_modules/@types/worker_threads/package.json","./node_modules/@types/zlib/package.json","./node_modules/assert/package.json","./node_modules/assert/strict/package.json","./node_modules/async_hooks/package.json","./node_modules/buffer/package.json","./node_modules/child_process/package.json","./node_modules/cluster/package.json","./node_modules/console/package.json","./node_modules/constants/package.json","./node_modules/crypto/package.json","./node_modules/dgram/package.json","./node_modules/diagnostics_channel/package.json","./node_modules/dns/package.json","./node_modules/dns/promises/package.json","./node_modules/domain/package.json","./node_modules/events/package.json","./node_modules/fs/package.json","./node_modules/fs/promises/package.json","./node_modules/http/package.json","./node_modules/http2/package.json","./node_modules/https/package.json","./node_modules/inspector/package.json","./node_modules/inspector/promises/package.json","./node_modules/module/package.json","./node_modules/net/package.json","./node_modules/os/package.json","./node_modules/path/package.json","./node_modules/path/posix/package.json","./node_modules/path/win32/package.json","./node_modules/perf_hooks/package.json","./node_modules/process/package.json","./node_modules/punycode/package.json","./node_modules/querystring/package.json","./node_modules/readline/package.json","./node_modules/readline/promises/package.json","./node_modules/repl/package.json","./node_modules/stream/consumers/package.json","./node_modules/stream/package.json","./node_modules/stream/promises/package.json","./node_modules/stream/web/package.json","./node_modules/string_decoder/package.json","./node_modules/timers/package.json","./node_modules/timers/promises/package.json","./node_modules/tls/package.json","./node_modules/trace_events/package.json","./node_modules/tty/package.json","./node_modules/url/package.json","./node_modules/util/package.json","./node_modules/util/types/package.json","./node_modules/v8/package.json","./node_modules/vm/package.json","./node_modules/wasi/package.json","./node_modules/worker_threads/package.json","./node_modules/zlib/package.json"],"fileNames":["lib.es5.d.ts","lib.es2015.d.ts","lib.es2016.d.ts","lib.es2017.d.ts","lib.es2018.d.ts","lib.es2019.d.ts","lib.es2020.d.ts","lib.es2021.d.ts","lib.es2022.d.ts","lib.dom.d.ts","lib.es2015.core.d.ts","lib.es2015.collection.d.ts","lib.es2015.generator.d.ts","lib.es2015.iterable.d.ts","lib.es2015.promise.d.ts","lib.es2015.proxy.d.ts","lib.es2015.reflect.d.ts","lib.es2015.symbol.d.ts","lib.es2015.symbol.wellknown.d.ts","lib.es2016.array.include.d.ts","lib.es2016.intl.d.ts","lib.es2017.arraybuffer.d.ts","lib.es2017.date.d.ts","lib.es2017.object.d.ts","lib.es2017.sharedmemory.d.ts","lib.es2017.string.d.ts","lib.es2017.intl.d.ts","lib.es2017.typedarrays.d.ts","lib.es2018.asyncgenerator.d.ts","lib.es2018.asynciterable.d.ts","lib.es2018.intl.d.ts","lib.es2018.promise.d.ts","lib.es2018.regexp.d.ts","lib.es2019.array.d.ts","lib.es2019.object.d.ts","lib.es2019.string.d.ts","lib.es2019.symbol.d.ts","lib.es2019.intl.d.ts","lib.es2020.bigint.d.ts","lib.es2020.date.d.ts","lib.es2020.promise.d.ts","lib.es2020.sharedmemory.d.ts","lib.es2020.string.d.ts","lib.es2020.symbol.wellknown.d.ts","lib.es2020.intl.d.ts","lib.es2020.number.d.ts","lib.es2021.promise.d.ts","lib.es2021.string.d.ts","lib.es2021.weakref.d.ts","lib.es2021.intl.d.ts","lib.es2022.array.d.ts","lib.es2022.error.d.ts","lib.es2022.intl.d.ts","lib.es2022.object.d.ts","lib.es2022.string.d.ts","lib.es2022.regexp.d.ts","lib.decorators.d.ts","lib.decorators.legacy.d.ts","./src/types.ts","./src/inbox.ts","./src/lease.ts","./src/index.ts","./node_modules/@types/node/compatibility/disposable.d.ts","./node_modules/@types/node/compatibility/indexable.d.ts","./node_modules/@types/node/compatibility/iterators.d.ts","./node_modules/@types/node/compatibility/index.d.ts","./node_modules/@types/node/globals.typedarray.d.ts","./node_modules/@types/node/buffer.buffer.d.ts","./node_modules/@types/node/globals.d.ts","./node_modules/@types/node/web-globals/abortcontroller.d.ts","./node_modules/@types/node/web-globals/domexception.d.ts","./node_modules/@types/node/web-globals/events.d.ts","./node_modules/@types/node/node_modules/undici-types/header.d.ts","./node_modules/@types/node/node_modules/undici-types/readable.d.ts","./node_modules/@types/node/node_modules/undici-types/file.d.ts","./node_modules/@types/node/node_modules/undici-types/fetch.d.ts","./node_modules/@types/node/node_modules/undici-types/formdata.d.ts","./node_modules/@types/node/node_modules/undici-types/connector.d.ts","./node_modules/@types/node/node_modules/undici-types/client.d.ts","./node_modules/@types/node/node_modules/undici-types/errors.d.ts","./node_modules/@types/node/node_modules/undici-types/dispatcher.d.ts","./node_modules/@types/node/node_modules/undici-types/global-dispatcher.d.ts","./node_modules/@types/node/node_modules/undici-types/global-origin.d.ts","./node_modules/@types/node/node_modules/undici-types/pool-stats.d.ts","./node_modules/@types/node/node_modules/undici-types/pool.d.ts","./node_modules/@types/node/node_modules/undici-types/handlers.d.ts","./node_modules/@types/node/node_modules/undici-types/balanced-pool.d.ts","./node_modules/@types/node/node_modules/undici-types/agent.d.ts","./node_modules/@types/node/node_modules/undici-types/mock-interceptor.d.ts","./node_modules/@types/node/node_modules/undici-types/mock-agent.d.ts","./node_modules/@types/node/node_modules/undici-types/mock-client.d.ts","./node_modules/@types/node/node_modules/undici-types/mock-pool.d.ts","./node_modules/@types/node/node_modules/undici-types/mock-errors.d.ts","./node_modules/@types/node/node_modules/undici-types/proxy-agent.d.ts","./node_modules/@types/node/node_modules/undici-types/env-http-proxy-agent.d.ts","./node_modules/@types/node/node_modules/undici-types/retry-handler.d.ts","./node_modules/@types/node/node_modules/undici-types/retry-agent.d.ts","./node_modules/@types/node/node_modules/undici-types/api.d.ts","./node_modules/@types/node/node_modules/undici-types/interceptors.d.ts","./node_modules/@types/node/node_modules/undici-types/util.d.ts","./node_modules/@types/node/node_modules/undici-types/cookies.d.ts","./node_modules/@types/node/node_modules/undici-types/patch.d.ts","./node_modules/@types/node/node_modules/undici-types/websocket.d.ts","./node_modules/@types/node/node_modules/undici-types/eventsource.d.ts","./node_modules/@types/node/node_modules/undici-types/filereader.d.ts","./node_modules/@types/node/node_modules/undici-types/diagnostics-channel.d.ts","./node_modules/@types/node/node_modules/undici-types/content-type.d.ts","./node_modules/@types/node/node_modules/undici-types/cache.d.ts","./node_modules/@types/node/node_modules/undici-types/index.d.ts","./node_modules/@types/node/web-globals/fetch.d.ts","./node_modules/@types/node/assert.d.ts","./node_modules/@types/node/assert/strict.d.ts","./node_modules/@types/node/async_hooks.d.ts","./node_modules/@types/node/buffer.d.ts","./node_modules/@types/node/child_process.d.ts","./node_modules/@types/node/cluster.d.ts","./node_modules/@types/node/console.d.ts","./node_modules/@types/node/constants.d.ts","./node_modules/@types/node/crypto.d.ts","./node_modules/@types/node/dgram.d.ts","./node_modules/@types/node/diagnostics_channel.d.ts","./node_modules/@types/node/dns.d.ts","./node_modules/@types/node/dns/promises.d.ts","./node_modules/@types/node/domain.d.ts","./node_modules/@types/node/events.d.ts","./node_modules/@types/node/fs.d.ts","./node_modules/@types/node/fs/promises.d.ts","./node_modules/@types/node/http.d.ts","./node_modules/@types/node/http2.d.ts","./node_modules/@types/node/https.d.ts","./node_modules/@types/node/inspector.generated.d.ts","./node_modules/@types/node/module.d.ts","./node_modules/@types/node/net.d.ts","./node_modules/@types/node/os.d.ts","./node_modules/@types/node/path.d.ts","./node_modules/@types/node/perf_hooks.d.ts","./node_modules/@types/node/process.d.ts","./node_modules/@types/node/punycode.d.ts","./node_modules/@types/node/querystring.d.ts","./node_modules/@types/node/readline.d.ts","./node_modules/@types/node/readline/promises.d.ts","./node_modules/@types/node/repl.d.ts","./node_modules/@types/node/sea.d.ts","./node_modules/@types/node/stream.d.ts","./node_modules/@types/node/stream/promises.d.ts","./node_modules/@types/node/stream/consumers.d.ts","./node_modules/@types/node/stream/web.d.ts","./node_modules/@types/node/string_decoder.d.ts","./node_modules/@types/node/test.d.ts","./node_modules/@types/node/timers.d.ts","./node_modules/@types/node/timers/promises.d.ts","./node_modules/@types/node/tls.d.ts","./node_modules/@types/node/trace_events.d.ts","./node_modules/@types/node/tty.d.ts","./node_modules/@types/node/url.d.ts","./node_modules/@types/node/util.d.ts","./node_modules/@types/node/v8.d.ts","./node_modules/@types/node/vm.d.ts","./node_modules/@types/node/wasi.d.ts","./node_modules/@types/node/worker_threads.d.ts","./node_modules/@types/node/zlib.d.ts","./node_modules/@types/node/index.d.ts"],"fileInfos":[{"version":"16934abaab7026ac114da441aabea1a0","affectsGlobalScope":true,"impliedNodeFormat":1},"d4306fb2e47f74835e8674ffac07d76f","e437c5c1302869326c3bb93da85bbbcf","e4324975a566567b21d350615f1fc6ac","333b1b9a2a9ac3b8497dba5c63b5ba50","6cffacd662b6eb5fa7a36aa2ea366bfa","b4c34f9c23304dbef2d23698637ed638","e5cb86a5fc491796ecd1d2dd348d208f","feb6c6fb19cdb246a5d8acb36a6901c7",{"version":"aae8996e8b5684814785a42cbbefcd79","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"926204c28cd3d073865348473ae28d2e","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"f25e42c801b2cb3cf2b39792006a9beb","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"6344b55f26a4e81d9608777dbfb877dd","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"3c0ed28e53d3695b363e256ec1c023fd","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"4c2761daba7f17141c25baa0821ac5da","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"b87656acabd63e69379ff6ffcfe52fc7","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"597469522da047a5af5222cc6989f405","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"1708ea4d34dc37fadadc63ca01127e80","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"55d97a8c6fbf34a30450a7b1e5f7a298","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"0ee05eb59426d33e374226d8dcfa708b","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"e347c14030993906efcfbb88915b6a05","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"b0231263857c9b6a03641acdc9280ceb","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"3b15c4a83b598cacb4067676e6f0abed","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"b417d97b7934cef63b1889abec0bbfbf","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"09a6cf4032ebba60ce22a501e663f881","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"2b056277dd138e8f5650fc04e20eaa8d","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"e22cc07e3f3cc242ba52fa3f8ea1fc58","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"2c45da767a1bfbb220848df1bc4029e4","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"b44c3e0fbaf2130cdcf6ac38b120ffa1","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"b612fb5cf8e5d964b92063a75207632a","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"02705151a5e1551b9162a9ed8ab763f7","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"41025e398be9215d32e4337335da8f0b","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"52684c2b1f353a5538e4f275182a54cd","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"6dedb6a4f90d1df3a6fbe5693e44886c","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"ca3f36fe3562c07e0f0d71c2bebd3f6d","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"409974d6129befbb8226ddd1c6558568","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"4d9cfde2a1ae1b4925f1f9bc10848e5d","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"7e1daecc66dd564144e3bb1a0266b5fd","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"a8e1d9bb35fd0637f2f9fd2b2a54f2ec","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"4f168501772a6543182765bfd5f2fbfe","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"a19c80aad1b2162103496f5ba293a732","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"b69afa63cd5d059851c78adb2856ee09","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"ae2fc5d954e9b0f5feee3d481b953c27","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"1cfd3091a071d8b6feec15277643bafe","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"1da2c1f258970fd3cc91184f69e91a9d","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"a0d87491913d843139e0c993650a3235","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"4ef72aa378127e7b7abba915b0110b1e","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"3ec74c6a7d4463f0254db3a74cf75646","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"84c2bdfa470d075526cce6322d81b0b6","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"0b3844c2b8c73e4e1ab91431411cad11","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"4fc71cf4a15b8d99675a31df77f26e07","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"d1b49564ddaeca3df5b6dbae925d2242","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"6a25be566d60ccfc2d6e8b7bfdeefa83","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"8a20e27646985dfd58c57ca6566553dd","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"9969f02ad3cdcbf4f709405cda44167f","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"9c9be4792a7a4f42c15ae7360bf28779","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"f64453cbf9671f28158677fa5c43967a","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"33f317af5428801f944a478d2c1e38e5","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"db3d9d19cd91358571605ef2d58f3ed4","signature":"8ed6e3ce9499e38da236fd3c9c34aca7","impliedNodeFormat":1},{"version":"c4a8b5d81180bd5645f4868d465976cb","signature":"cf29baf9abcc3015c6dab7b6eedfe320","impliedNodeFormat":1},{"version":"9e1558bff6b9d17343abecd0ed112f1f","signature":"667b11f914f374faa50b92a5ebcd9c6a","impliedNodeFormat":1},{"version":"7db411290d282475c8604700c2bbc748","signature":"6e2fe660a0d70a18d6e3c957260f7d45","impliedNodeFormat":1},{"version":"90630acdc4134173bcf216f187bd3010","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"913b52a39743d1c11984e4e124b1f3a8","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"2514e9a2749c0fc18d2f478e9e1e641e","affectsGlobalScope":true,"impliedNodeFormat":1},"fe51d7a9bcdbcce1e65bbcf39b212298",{"version":"849a1873c4e917b0887368c1be897faa","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"c46c3108bde06d3b1fc6f802eb09eeeb","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"1332add604574cf529fb33b23304b296","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"9af0a7e3ef1c42cd066b9f8d365cc1ba","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"9eca652586205dc5b07f9ba57b1c8500","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"ec5f75939754ce94652189ec7d0d3058","affectsGlobalScope":true,"impliedNodeFormat":1},"628b774b54637325e286752c79c12432","bb1f9e3091b88e9d0e93b7198c736af3","514fd35e5eb35bb2e5cbb908af0a0aa2","ed57ae88565308729f2327f26d684976","dcd932d6b0038f2e250e30dc10125b22","9508c917bd7e458745e222a82dd24ef0","fabf86f455f96b90538cc26320ab2765","14550b4cd9f433e0addd8b6d67614d23","cf0ac6aebc25cb780674653aaeee688e","35fef7bac8048f583e4ce6eaa0c2a4c0","6752dc653fc7a333027249fd851fdb62","b9ad7e689b46dfba362c1bf174e69018","8b0a2930dfabdf27c69c6bb1eeabcdc8","4513b1ed15523d247040689f37fa9db2","5c0c499eed773a750903d9497beafacd","2377da227d1bac82ff7b3f2081ddf8d3","beef985b474fefeb80d27fb2c8778371","c79fc9d9f09ae598a374ae7c0b5284a4","f2caa3cebb1e6be855519004830a6be0","8ebc9f2a77c900e710801214c5cb994c","ec617a0e0577dd6a3210c3b067ecb325","1db5d06e485bd82d6d5f6e36925a8714","24b864518967840216c779b5e5f00975","8719cd8047700bfb6046798390053823","f2840afb502c94db92dab0fb8d27812f","a7e7d08b372210c203745d3eac61a411","531183cc80535e0e94226d720e5eb038","f627eb958ca52c85e42f04dce4661f86","9a43fc665bce9012a3d5fe1b574ff4dc","13f4b4da6546a34719fd6bde15fb63dd","a589216508844bfc00e62fc2d97fda45","865aea1c3209e31b076cb6fe780e769e","12e64aaf26af0f5c8f1b263dd66e3feb","928971ebbcdf5b093ef37669b33bddf6","b744265d8ad12b7d4d5c5dc35d18d44e","eff32168b8348b822afeed9cbf61afa7","9aafd1f29b4d8861c1c6c34bf83c0721",{"version":"a127795c4dad633990c87aa0b86831e5","affectsGlobalScope":true,"impliedNodeFormat":1},"4ef82d390af85e719a46d566e229dd83","7deced3ef46e082f97d49bb71622526a","fa7acb320bbf7da8f76e431437143034",{"version":"ee57e9bfec6167b488ced231a7bf233d","affectsGlobalScope":true,"impliedNodeFormat":1},"7aa99080b86233d5b21416907d7a75a6","7d6a8df1becce5c270da2093e7835920",{"version":"c37fea1584ced70492ff5748ed570abd","affectsGlobalScope":true,"impliedNodeFormat":1},"b2b472cd0bf0f8d5f022e00ca1c401f4",{"version":"e22c8fb0fc65df14299c6c94cf729b3c","affectsGlobalScope":true,"impliedNodeFormat":1},"a84efb87b57f78ea0b0577edaacd8b33","814e0c2cc2a92531b6dc5d2a1767a6e1","79ac55b2d493df83277d681e4d64a992","7ab3b7243211fa08af307609be231d6c","7fd0f028e135bdf15ff757781a2f4ba9",{"version":"cab5b406d3defff17c931e41fa98aeb1","affectsGlobalScope":true,"impliedNodeFormat":1},"aa7dc1db3d208fb91418794a18539d4c","e9b8fc3c9291fc5701e219c0407e973d","b8f5d7bb61117f48a99b0cecaa75d186","4eee02126a80c6573103e22b942b0386","1d3b57f542db6054f952f8076b3c6a3a","4e0ba29e69c1176d4b909ad8a85a2695",{"version":"e5d25a206975fb43b72d246ed86fd7fe","affectsGlobalScope":true,"impliedNodeFormat":1},"a5525d047b8b84dac8b2e21fa393f465","86308ea691fd06825dd9a3ce0f1e901a","44782881f424302151e0de8fdaa39575",{"version":"f0ef68e9c53d126a7b3bfc1ae9f2c7c4","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"71259a408a4178e5f0795188b4d802f1","affectsGlobalScope":true,"impliedNodeFormat":1},"eb80d821e5e931dcccee2697f3e249e2","961969874f5ee12ed3429d3d0c82de02","9a62058bc2d476e807cc6594eed72adb","40cbc4bb3b225b03c54255154dada07d","6534825a8bda3eeecde9bca9e3a99712","09a582ab2a73806ab5887ea413b3d55a","17bf20c066f28d82e59096464112bc39","c8206d568b54e5ea06131963eecd576a","15878f4f50c2e562c0768eb735c2aed5",{"version":"2939c9bf76087f5c43b7ed44aeab6853","affectsGlobalScope":true,"impliedNodeFormat":1},"7b844f3801adf7e09ea25ec5f39f9a86","46c937d243665015f13587ac0db55909",{"version":"1f29cf27395029939dd41fce4f0c5653","affectsGlobalScope":true,"impliedNodeFormat":1},"f026c594d60114f10583261f6499df38","1ac553606580aeec204cce24c38b2e3f","3c29bf7066a67e7151f563fc1c4e56cb","00d49834780046c2d6a7da3e50d83cca",{"version":"377c78771ee061f2b4e59d5eb5a28782","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"7293552290431bff8ef5f13e6f7fcbfc","affectsGlobalScope":true,"impliedNodeFormat":1},"9453ee3aca6a51ae747057fbc6388cf2","6c491c1508bd3e1df0f45f38b07243c2","1f99b8445612afcfaae0f8591d8d18ac",{"version":"bbd4e0ea8a847a4b60ba7d5741985c9d","affectsGlobalScope":true,"impliedNodeFormat":1},"f57ef54941c62bf28f3beafb86025735","7b6c16d46b33570aaef9d0fdc4f02f14"],"fileIdsList":[[68,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161],[68,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161],[68,111,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161],[68,111,112,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161],[111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161],[68,111,112,113,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161],[68,111,112,113,114,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161],[68,111,112,113,114,115,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161],[63,64,65,68,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161],[68,111,112,113,114,115,116,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161],[68,111,112,113,114,115,116,117,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161],[68,111,112,113,114,115,116,117,118,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161],[68,111,112,113,114,115,116,117,118,119,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161],[68,111,112,113,114,115,116,117,118,119,120,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161],[68,111,112,113,114,115,116,117,118,119,120,121,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161],[68,111,112,113,114,115,116,117,118,119,120,121,122,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161],[68,111,112,113,114,115,116,117,118,119,120,121,122,123,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161],[68,111,112,113,114,115,116,117,118,119,120,121,122,123,124,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161],[68,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161],[68,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161],[68,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161],[68,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161],[68,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161],[66,67,68,69,70,71,72,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161],[68,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161],[68,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161],[68,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161],[68,81,85,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161],[68,81,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161],[68,76,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161],[68,78,81,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161],[68,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162],[68,76,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162],[68,73,74,77,80,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161],[68,81,88,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161],[68,73,79,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161],[68,81,102,103,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161],[68,77,81,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162],[68,102,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162],[68,75,76,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162],[68,75,76,77,78,79,80,81,82,83,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,103,104,105,106,107,108,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161],[68,81,96,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161],[68,81,88,89,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161],[68,79,81,89,90,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161],[68,80,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161],[68,73,76,81,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161],[68,81,85,89,90,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161],[68,85,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161],[68,79,81,84,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161],[68,73,78,81,88,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161],[68,76,81,102,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162],[68,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161],[68,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161],[68,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161],[68,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161],[68,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161],[68,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161],[68,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161],[68,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161],[68,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161],[68,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161],[68,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161],[68,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161],[68,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161],[68,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,148,149,150,151,152,153,154,155,156,157,158,159,160,161],[68,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,149,150,151,152,153,154,155,156,157,158,159,160,161],[68,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,150,151,152,153,154,155,156,157,158,159,160,161],[68,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,151,152,153,154,155,156,157,158,159,160,161],[68,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,152,153,154,155,156,157,158,159,160,161],[68,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,153,154,155,156,157,158,159,160,161],[68,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,154,155,156,157,158,159,160,161],[68,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,155,156,157,158,159,160,161],[68,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,156,157,158,159,160,161],[68,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,157,158,159,160,161],[68,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,158,159,160,161],[68,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,159,160,161],[68,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,160,161],[68,109,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161],[68,109,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,161],[68,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160],[59,68,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161],[59,60,61,68,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161]],"options":{"composite":true,"declaration":true,"declarationMap":true,"module":7,"outDir":"./dist","rootDir":"./src","skipLibCheck":true,"strict":true,"sourceMap":true,"target":9,"esModuleInterop":true},"referencedMap":[[57,1],[58,1],[10,1],[12,1],[11,1],[2,1],[13,1],[14,1],[15,1],[16,1],[17,1],[18,1],[19,1],[20,1],[3,1],[21,1],[22,1],[4,1],[23,1],[27,1],[24,1],[25,1],[26,1],[28,1],[29,1],[30,1],[5,1],[31,1],[32,1],[33,1],[34,1],[6,1],[38,1],[35,1],[36,1],[37,1],[39,1],[7,1],[40,1],[45,1],[46,1],[41,1],[42,1],[43,1],[44,1],[8,1],[50,1],[47,1],[48,1],[49,1],[51,1],[9,1],[52,1],[53,1],[54,1],[56,1],[55,1],[1,1],[111,2],[112,3],[113,4],[68,5],[114,6],[115,7],[116,8],[63,1],[66,9],[64,1],[65,1],[117,10],[118,11],[119,12],[120,13],[121,14],[122,15],[123,16],[124,17],[125,18],[126,19],[127,20],[69,1],[67,1],[128,21],[129,22],[130,23],[162,24],[131,25],[132,26],[133,27],[88,28],[98,29],[87,28],[108,30],[79,31],[78,1],[107,32],[101,33],[106,31],[81,34],[95,35],[80,36],[104,37],[76,38],[75,32],[105,39],[77,40],[82,29],[83,1],[86,29],[73,1],[109,41],[99,42],[90,43],[91,44],[93,45],[89,46],[92,47],[102,32],[84,48],[85,49],[94,50],[74,1],[97,42],[96,29],[100,1],[103,51],[134,52],[135,53],[136,54],[137,55],[138,56],[139,57],[140,58],[141,59],[142,60],[143,61],[144,62],[146,63],[145,64],[147,65],[148,66],[149,67],[150,68],[151,69],[152,70],[153,71],[154,72],[155,73],[156,74],[157,75],[158,76],[159,77],[70,1],[71,1],[72,1],[110,78],[160,79],[161,80],[60,81],[62,82],[61,81],[59,1]],"latestChangedDtsFile":"./dist/worker.d.ts"}
@@ -0,0 +1,45 @@
1
+ # Privilege Broker — RFC-0101 §7
2
+
3
+ Safe privilege escalation for autonomous tasks.
4
+
5
+ ## Package
6
+
7
+ `@pi-harness/privilege-broker`
8
+
9
+ ## Capabilities
10
+
11
+ | Capability | Description | Auto-approve? |
12
+ |---|---|---|
13
+ | `read_files` | Read any file | Yes |
14
+ | `write_files` | Write to non-system paths | No |
15
+ | `run_command` | Execute shell commands | No |
16
+ | `sudo_command` | Execute with sudo | No |
17
+ | `network_request` | HTTP/HTTPS requests | Yes |
18
+ | `git_push` | Push to configured remotes | No |
19
+ | `package_install` | Install npm packages | No |
20
+ | `env_read` | Read environment variables | Yes |
21
+
22
+ ## Usage
23
+
24
+ ```ts
25
+ import { PrivilegeBroker, ConsoleAuditLogger } from "@pi-harness/privilege-broker";
26
+
27
+ const broker = new PrivilegeBroker({
28
+ audit: new ConsoleAuditLogger(),
29
+ });
30
+
31
+ // Check before running a command
32
+ const result = await broker.check(
33
+ "run_command",
34
+ { command: "ls /tmp", cwd: "/tmp" },
35
+ async (msg) => confirm(msg),
36
+ );
37
+
38
+ if (result.approved) {
39
+ await broker.execute("run_command", { command: "ls /tmp" });
40
+ }
41
+ ```
42
+
43
+ ## Status
44
+
45
+ Phase 1 done. Approval classes and conditions implemented.
@@ -0,0 +1,172 @@
1
+ # Privilege Registry — RFC-0101 §7
2
+ #
3
+ # Copy this file to `privileges.yaml` and review it before starting the worker.
4
+ # The worker will reject unknown capabilities and refuse to start if this file
5
+ # is missing or invalid.
6
+ #
7
+ # IMPORTANT: Only add entries that have been reviewed and approved by the operator.
8
+ # The broker uses these argv templates literally — no shell interpolation.
9
+ # Each argv element is passed directly to execve(2).
10
+
11
+ version: "1.0"
12
+ updatedAt: "2026-07-23T00:00:00Z"
13
+
14
+ entries:
15
+ # ── Git ────────────────────────────────────────────────────────────────────
16
+
17
+ - name: "git.commit"
18
+ description: "Commit staged changes to a git repository"
19
+ argv:
20
+ - "git"
21
+ - "commit"
22
+ - "-m"
23
+ - "{message}"
24
+ envWhitelist:
25
+ - "GIT_AUTHOR_NAME"
26
+ - "GIT_AUTHOR_EMAIL"
27
+ - "GIT_COMMITTER_NAME"
28
+ - "GIT_COMMITTER_EMAIL"
29
+ - "GIT_DIR"
30
+ user: "frappe"
31
+ timeoutMs: 30_000
32
+ production: false # requires operator review before enabling
33
+
34
+ - name: "git.push"
35
+ description: "Push commits to a remote git repository"
36
+ argv:
37
+ - "git"
38
+ - "push"
39
+ - "--quiet"
40
+ - "origin"
41
+ - "{branch}"
42
+ envWhitelist:
43
+ - "GIT_DIR"
44
+ - "GIT_SSH_COMMAND"
45
+ user: "frappe"
46
+ timeoutMs: 60_000
47
+ production: false
48
+
49
+ - name: "git.pull"
50
+ description: "Pull changes from a remote git repository"
51
+ argv:
52
+ - "git"
53
+ - "pull"
54
+ - "--quiet"
55
+ - "origin"
56
+ - "{branch}"
57
+ envWhitelist:
58
+ - "GIT_DIR"
59
+ - "GIT_SSH_COMMAND"
60
+ user: "frappe"
61
+ timeoutMs: 120_000
62
+ production: false
63
+
64
+ # ── Bench commands ──────────────────────────────────────────────────────────
65
+
66
+ - name: "bench.build"
67
+ description: "Build a Frappe/ERPNext app via bench"
68
+ argv:
69
+ - "bench"
70
+ - "--site"
71
+ - "{site}"
72
+ - "build"
73
+ - "--app"
74
+ - "{app}"
75
+ envWhitelist:
76
+ - "FRAPPE_SITE"
77
+ user: "frappe"
78
+ timeoutMs: 300_000
79
+ production: false
80
+
81
+ - name: "bench.migrate"
82
+ description: "Run database migrations via bench"
83
+ argv:
84
+ - "bench"
85
+ - "--site"
86
+ - "{site}"
87
+ - "migrate"
88
+ envWhitelist:
89
+ - "FRAPPE_SITE"
90
+ user: "frappe"
91
+ timeoutMs: 600_000
92
+ production: false
93
+
94
+ - name: "bench.restart"
95
+ description: "Restart the Frappe/ERPNext web workers"
96
+ argv:
97
+ - "bench"
98
+ - "restart"
99
+ user: "frappe"
100
+ timeoutMs: 30_000
101
+ production: false
102
+
103
+ # ── System ─────────────────────────────────────────────────────────────────
104
+
105
+ - name: "system.restart"
106
+ description: "Restart the pi-harness runtime service via systemctl"
107
+ argv:
108
+ - "systemctl"
109
+ - "restart"
110
+ - "pi-harness-runtime"
111
+ user: "root"
112
+ timeoutMs: 60_000
113
+ production: false
114
+
115
+ - name: "system.logs"
116
+ description: "Read recent systemd journal logs for the pi-harness runtime"
117
+ argv:
118
+ - "journalctl"
119
+ - "--no-pager"
120
+ - "-n"
121
+ - "100"
122
+ - "-u"
123
+ - "pi-harness-runtime"
124
+ user: "frappe"
125
+ timeoutMs: 15_000
126
+ production: true
127
+
128
+ # ── OKF ───────────────────────────────────────────────────────────────────
129
+
130
+ - name: "okf.promote-pattern"
131
+ description: "Promote a task result as a reusable pattern in the OKF"
132
+ argv:
133
+ - "okf"
134
+ - "promote"
135
+ - "pattern"
136
+ - "--path"
137
+ - "{path}"
138
+ - "--hash"
139
+ - "{contentHash}"
140
+ user: "frappe"
141
+ timeoutMs: 30_000
142
+ production: false
143
+
144
+ - name: "okf.promote-lesson"
145
+ description: "Promote a classified failure as a lesson in the OKF"
146
+ argv:
147
+ - "okf"
148
+ - "promote"
149
+ - "lesson"
150
+ - "--path"
151
+ - "{path}"
152
+ - "--category"
153
+ - "{category}"
154
+ user: "frappe"
155
+ timeoutMs: 30_000
156
+ production: false
157
+
158
+ # ── Notify ────────────────────────────────────────────────────────────────
159
+
160
+ - name: "notify.send"
161
+ description: "Send a notification via the notification runtime (RFC-0022)"
162
+ argv:
163
+ - "notify-send"
164
+ - "--title"
165
+ - "{title}"
166
+ - "--body"
167
+ - "{body}"
168
+ - "--urgency"
169
+ - "{urgency}"
170
+ user: "frappe"
171
+ timeoutMs: 10_000
172
+ production: true
@@ -0,0 +1,23 @@
1
+ /**
2
+ * Approval Class — RFC-0101 §8
3
+ *
4
+ * Replaces runtime-wide `require-approval` flag with per-capability policies.
5
+ * Human approves or denies on first use; decision is cached for subsequent uses
6
+ * within the same session.
7
+ */
8
+ import type { ApprovalClass, CapabilityName } from "./types.js";
9
+ /** Result of an approval check. */
10
+ export type ApprovalResult = "granted" | "denied" | "error";
11
+ /**
12
+ * Register an approval class by id.
13
+ * Must be called before any checkApproval() call.
14
+ */
15
+ export declare function registerApprovalClass(cls: ApprovalClass): void;
16
+ /**
17
+ * Check if a capability is approved for an actor.
18
+ * Asks the human via requestor() on first use; caches for the session.
19
+ */
20
+ export declare function checkApproval(capability: CapabilityName, actor: string, requestor: (msg: string) => Promise<boolean>): Promise<ApprovalResult>;
21
+ /** Clear the approval cache (e.g., at session start). */
22
+ export declare function clearApprovalCache(): void;
23
+ //# sourceMappingURL=approval.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"approval.d.ts","sourceRoot":"","sources":["../src/approval.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AACH,OAAO,KAAK,EAAE,aAAa,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;AAEhE,mCAAmC;AACnC,MAAM,MAAM,cAAc,GAAG,SAAS,GAAG,QAAQ,GAAG,OAAO,CAAC;AAY5D;;;GAGG;AACH,wBAAgB,qBAAqB,CAAC,GAAG,EAAE,aAAa,GAAG,IAAI,CAE9D;AAED;;;GAGG;AACH,wBAAsB,aAAa,CAClC,UAAU,EAAE,cAAc,EAC1B,KAAK,EAAE,MAAM,EACb,SAAS,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,OAAO,CAAC,OAAO,CAAC,GAC1C,OAAO,CAAC,cAAc,CAAC,CA0BzB;AAED,yDAAyD;AACzD,wBAAgB,kBAAkB,IAAI,IAAI,CAEzC"}
@@ -0,0 +1,45 @@
1
+ /** Cache of session-level approval decisions. */
2
+ const approved = new Map();
3
+ /** Map from class id → its policy. */
4
+ const classes = new Map();
5
+ function cacheKey(capability, actor) {
6
+ return `${actor}::${capability}`;
7
+ }
8
+ /**
9
+ * Register an approval class by id.
10
+ * Must be called before any checkApproval() call.
11
+ */
12
+ export function registerApprovalClass(cls) {
13
+ classes.set(cls.id, cls);
14
+ }
15
+ /**
16
+ * Check if a capability is approved for an actor.
17
+ * Asks the human via requestor() on first use; caches for the session.
18
+ */
19
+ export async function checkApproval(capability, actor, requestor) {
20
+ const key = cacheKey(capability, actor);
21
+ if (approved.has(key)) {
22
+ return approved.get(key);
23
+ }
24
+ // Find the approval class for this capability
25
+ const cls = classes.get(capability);
26
+ if (!cls) {
27
+ // No approval class registered — default deny
28
+ approved.set(key, "denied");
29
+ return "denied";
30
+ }
31
+ try {
32
+ const decision = await cls.prompt(capability, actor, `Allow capability "${capability}" for actor "${actor}"?`);
33
+ approved.set(key, decision);
34
+ return decision;
35
+ }
36
+ catch {
37
+ approved.set(key, "error");
38
+ return "error";
39
+ }
40
+ }
41
+ /** Clear the approval cache (e.g., at session start). */
42
+ export function clearApprovalCache() {
43
+ approved.clear();
44
+ }
45
+ //# sourceMappingURL=approval.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"approval.js","sourceRoot":"","sources":["../src/approval.ts"],"names":[],"mappings":"AAYA,iDAAiD;AACjD,MAAM,QAAQ,GAAG,IAAI,GAAG,EAA0B,CAAC;AAEnD,sCAAsC;AACtC,MAAM,OAAO,GAAG,IAAI,GAAG,EAAyB,CAAC;AAEjD,SAAS,QAAQ,CAAC,UAA0B,EAAE,KAAa;IAC1D,OAAO,GAAG,KAAK,KAAK,UAAU,EAAE,CAAC;AAClC,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,qBAAqB,CAAC,GAAkB;IACvD,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,EAAE,GAAG,CAAC,CAAC;AAC1B,CAAC;AAED;;;GAGG;AACH,MAAM,CAAC,KAAK,UAAU,aAAa,CAClC,UAA0B,EAC1B,KAAa,EACb,SAA4C;IAE5C,MAAM,GAAG,GAAG,QAAQ,CAAC,UAAU,EAAE,KAAK,CAAC,CAAC;IACxC,IAAI,QAAQ,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC;QACvB,OAAO,QAAQ,CAAC,GAAG,CAAC,GAAG,CAAE,CAAC;IAC3B,CAAC;IAED,8CAA8C;IAC9C,MAAM,GAAG,GAAG,OAAO,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;IACpC,IAAI,CAAC,GAAG,EAAE,CAAC;QACV,8CAA8C;QAC9C,QAAQ,CAAC,GAAG,CAAC,GAAG,EAAE,QAAQ,CAAC,CAAC;QAC5B,OAAO,QAAQ,CAAC;IACjB,CAAC;IAED,IAAI,CAAC;QACJ,MAAM,QAAQ,GAAG,MAAM,GAAG,CAAC,MAAM,CAChC,UAAU,EACV,KAAK,EACL,qBAAqB,UAAU,gBAAgB,KAAK,IAAI,CACxD,CAAC;QACF,QAAQ,CAAC,GAAG,CAAC,GAAG,EAAE,QAAQ,CAAC,CAAC;QAC5B,OAAO,QAAQ,CAAC;IACjB,CAAC;IAAC,MAAM,CAAC;QACR,QAAQ,CAAC,GAAG,CAAC,GAAG,EAAE,OAAO,CAAC,CAAC;QAC3B,OAAO,OAAO,CAAC;IAChB,CAAC;AACF,CAAC;AAED,yDAAyD;AACzD,MAAM,UAAU,kBAAkB;IACjC,QAAQ,CAAC,KAAK,EAAE,CAAC;AAClB,CAAC"}
@@ -0,0 +1,38 @@
1
+ import type { AuditEntry, AuditLogger } from "./types.js";
2
+ /** No-op logger — discards all events. */
3
+ export declare class NoOpAuditLogger implements AuditLogger {
4
+ log(_entry: AuditEntry): void;
5
+ }
6
+ /** Console logger — writes human-readable lines to stdout/stderr. */
7
+ export declare class ConsoleAuditLogger implements AuditLogger {
8
+ log(entry: AuditEntry): void;
9
+ }
10
+ /**
11
+ * JSON Lines file logger — appends one JSON object per event.
12
+ * Auto-creates parent directory. Auto-rotates when file exceeds maxSizeBytes.
13
+ */
14
+ export declare class FileAuditLogger implements AuditLogger {
15
+ private readonly logPath;
16
+ private readonly maxSizeBytes;
17
+ private readonly maxRotations;
18
+ constructor(options?: {
19
+ logPath?: string;
20
+ maxSizeBytes?: number;
21
+ maxRotations?: number;
22
+ });
23
+ log(entry: AuditEntry): void;
24
+ private _ensureDir;
25
+ private _rotateIfNeeded;
26
+ /**
27
+ * Read recent audit entries.
28
+ * Returns newest entries last.
29
+ */
30
+ query(options?: {
31
+ workerId?: string;
32
+ taskId?: string;
33
+ capability?: string;
34
+ success?: boolean;
35
+ limit?: number;
36
+ }): AuditEntry[];
37
+ }
38
+ //# sourceMappingURL=audit.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"audit.d.ts","sourceRoot":"","sources":["../src/audit.ts"],"names":[],"mappings":"AAeA,OAAO,KAAK,EAAE,UAAU,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AAE1D,0CAA0C;AAC1C,qBAAa,eAAgB,YAAW,WAAW;IAClD,GAAG,CAAC,MAAM,EAAE,UAAU,GAAG,IAAI,CAE5B;CACD;AAED,qEAAqE;AACrE,qBAAa,kBAAmB,YAAW,WAAW;IACrD,GAAG,CAAC,KAAK,EAAE,UAAU,GAAG,IAAI,CAsB3B;CACD;AAED;;;GAGG;AACH,qBAAa,eAAgB,YAAW,WAAW;IAClD,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAS;IACjC,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAS;IACtC,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAS;IAEtC,YACC,OAAO,GAAE;QACR,OAAO,CAAC,EAAE,MAAM,CAAC;QACjB,YAAY,CAAC,EAAE,MAAM,CAAC;QACtB,YAAY,CAAC,EAAE,MAAM,CAAC;KACjB,EAQN;IAED,GAAG,CAAC,KAAK,EAAE,UAAU,GAAG,IAAI,CAI3B;IAED,OAAO,CAAC,UAAU;IAOlB,OAAO,CAAC,eAAe;IAqBvB;;;OAGG;IACH,KAAK,CAAC,OAAO,CAAC,EAAE;QACf,QAAQ,CAAC,EAAE,MAAM,CAAC;QAClB,MAAM,CAAC,EAAE,MAAM,CAAC;QAChB,UAAU,CAAC,EAAE,MAAM,CAAC;QACpB,OAAO,CAAC,EAAE,OAAO,CAAC;QAClB,KAAK,CAAC,EAAE,MAAM,CAAC;KACf,GAAG,UAAU,EAAE,CAqBf;CACD"}
@@ -0,0 +1,125 @@
1
+ /**
2
+ * Audit Logger — RFC-0101 §7
3
+ *
4
+ * Logs every capability grant/denial with actor, target, reason, and outcome.
5
+ * Built-in implementations: Console, File, NoOp.
6
+ * Replace with your preferred audit backend (syslog, PostgreSQL, Loki, etc.)
7
+ */
8
+ import { existsSync, mkdirSync, readFileSync, writeFileSync, unlinkSync, } from "node:fs";
9
+ import { dirname, join } from "node:path";
10
+ /** No-op logger — discards all events. */
11
+ export class NoOpAuditLogger {
12
+ log(_entry) {
13
+ // no-op
14
+ }
15
+ }
16
+ /** Console logger — writes human-readable lines to stdout/stderr. */
17
+ export class ConsoleAuditLogger {
18
+ log(entry) {
19
+ const prefix = entry.outcome === "granted"
20
+ ? "✅"
21
+ : entry.outcome === "denied"
22
+ ? "❌"
23
+ : "⚠️";
24
+ const line = [
25
+ prefix,
26
+ `${entry.outcome.toUpperCase()}`,
27
+ `actor=${entry.actor}`,
28
+ `capability=${entry.capability}`,
29
+ `reason=${entry.reason}`,
30
+ entry.error ? `error=${entry.error}` : "",
31
+ ]
32
+ .filter(Boolean)
33
+ .join(" ");
34
+ if (entry.outcome === "error") {
35
+ console.error(`[AUDIT] ${line}`);
36
+ }
37
+ else {
38
+ console.log(`[AUDIT] ${line}`);
39
+ }
40
+ }
41
+ }
42
+ /**
43
+ * JSON Lines file logger — appends one JSON object per event.
44
+ * Auto-creates parent directory. Auto-rotates when file exceeds maxSizeBytes.
45
+ */
46
+ export class FileAuditLogger {
47
+ logPath;
48
+ maxSizeBytes;
49
+ maxRotations;
50
+ constructor(options = {}) {
51
+ const home = process.env["HOME"] ?? "/tmp";
52
+ this.logPath =
53
+ options.logPath ?? join(home, ".pi", "harness", "broker-audit.logl");
54
+ this.maxSizeBytes = options.maxSizeBytes ?? 10 * 1024 * 1024; // 10 MB
55
+ this.maxRotations = options.maxRotations ?? 5;
56
+ this._ensureDir();
57
+ }
58
+ log(entry) {
59
+ this._rotateIfNeeded();
60
+ const line = JSON.stringify(entry) + "\n";
61
+ writeFileSync(this.logPath, line, { flag: "a" });
62
+ }
63
+ _ensureDir() {
64
+ const dir = dirname(this.logPath);
65
+ if (!existsSync(dir)) {
66
+ mkdirSync(dir, { recursive: true });
67
+ }
68
+ }
69
+ _rotateIfNeeded() {
70
+ if (!existsSync(this.logPath))
71
+ return;
72
+ try {
73
+ const { statSync } = require("node:fs");
74
+ const stat = statSync(this.logPath);
75
+ if (stat.size < this.maxSizeBytes)
76
+ return;
77
+ // Rotate: broker-audit.log → broker-audit.log.1 → ...
78
+ const { renameSync, existsSync: exists } = require("node:fs");
79
+ for (let i = this.maxRotations - 1; i >= 1; i--) {
80
+ const from = `${this.logPath}.${i}`;
81
+ const to = `${this.logPath}.${i + 1}`;
82
+ if (exists(to))
83
+ unlinkSync(to);
84
+ if (exists(from))
85
+ renameSync(from, to);
86
+ }
87
+ renameSync(this.logPath, `${this.logPath}.1`);
88
+ }
89
+ catch {
90
+ // If rotation fails, continue writing to the existing file
91
+ }
92
+ }
93
+ /**
94
+ * Read recent audit entries.
95
+ * Returns newest entries last.
96
+ */
97
+ query(options) {
98
+ if (!existsSync(this.logPath))
99
+ return [];
100
+ const raw = readFileSync(this.logPath, "utf8");
101
+ const entries = [];
102
+ for (const line of raw.split("\n")) {
103
+ if (!line.trim())
104
+ continue;
105
+ try {
106
+ const e = JSON.parse(line);
107
+ if (options?.workerId && e.workerId !== options.workerId)
108
+ continue;
109
+ if (options?.taskId && e.taskId !== options.taskId)
110
+ continue;
111
+ if (options?.capability && e.capability !== options.capability)
112
+ continue;
113
+ if (options?.success !== undefined && e.success !== options.success)
114
+ continue;
115
+ entries.push(e);
116
+ }
117
+ catch {
118
+ // Skip malformed lines
119
+ }
120
+ }
121
+ const result = options?.limit ? entries.slice(-options.limit) : entries;
122
+ return result;
123
+ }
124
+ }
125
+ //# sourceMappingURL=audit.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"audit.js","sourceRoot":"","sources":["../src/audit.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,25 @@
1
+ import type { AuditLogger } from "./types.js";
2
+ /** The BrokerExecutor resolves and executes capability grants. */
3
+ export declare class BrokerExecutor {
4
+ private readonly audit;
5
+ constructor(audit: AuditLogger);
6
+ /**
7
+ * Execute a command as the configured service account.
8
+ * Throws on timeout or spawn error.
9
+ */
10
+ execute(options: {
11
+ command: string;
12
+ args: string[];
13
+ envWhitelist?: string[];
14
+ allowedCwd?: string;
15
+ timeoutMs?: number;
16
+ actor: string;
17
+ capability: string;
18
+ reason: string;
19
+ }): Promise<{
20
+ exitCode: number;
21
+ stdout: string;
22
+ stderr: string;
23
+ }>;
24
+ }
25
+ //# sourceMappingURL=executor.d.ts.map