@mondaydotcomorg/atp-compiler 0.19.4 → 0.19.5
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js.map +1 -0
- package/dist/plugin-system/create-default-compiler.d.ts.map +1 -0
- package/dist/plugin-system/create-default-compiler.js.map +1 -0
- package/dist/plugin-system/default-plugins/array-transformer-plugin.d.ts.map +1 -0
- package/dist/plugin-system/default-plugins/array-transformer-plugin.js.map +1 -0
- package/dist/plugin-system/default-plugins/detection-plugin.d.ts.map +1 -0
- package/dist/plugin-system/default-plugins/detection-plugin.js.map +1 -0
- package/dist/plugin-system/default-plugins/index.d.ts.map +1 -0
- package/dist/plugin-system/default-plugins/index.js.map +1 -0
- package/dist/plugin-system/default-plugins/loop-transformer-plugin.d.ts.map +1 -0
- package/dist/plugin-system/default-plugins/loop-transformer-plugin.js.map +1 -0
- package/dist/plugin-system/default-plugins/promise-transformer-plugin.d.ts.map +1 -0
- package/dist/plugin-system/default-plugins/promise-transformer-plugin.js.map +1 -0
- package/dist/plugin-system/examples/loop-transformer-plugin.d.ts.map +1 -0
- package/dist/plugin-system/examples/loop-transformer-plugin.js.map +1 -0
- package/dist/plugin-system/examples/security-validator-plugin.d.ts.map +1 -0
- package/dist/plugin-system/examples/security-validator-plugin.js.map +1 -0
- package/dist/plugin-system/examples/timeout-plugin.d.ts.map +1 -0
- package/dist/plugin-system/examples/timeout-plugin.js.map +1 -0
- package/dist/plugin-system/index.d.ts.map +1 -0
- package/dist/plugin-system/index.js.map +1 -0
- package/dist/plugin-system/pluggable-compiler.d.ts.map +1 -0
- package/dist/plugin-system/pluggable-compiler.js.map +1 -0
- package/dist/plugin-system/plugin-api.d.ts.map +1 -0
- package/dist/plugin-system/plugin-api.js.map +1 -0
- package/dist/runtime/batch-parallel.d.ts.map +1 -0
- package/dist/runtime/batch-parallel.js.map +1 -0
- package/dist/runtime/checkpoint-manager.d.ts.map +1 -0
- package/dist/runtime/checkpoint-manager.js.map +1 -0
- package/dist/runtime/context.d.ts.map +1 -0
- package/dist/runtime/context.js.map +1 -0
- package/dist/runtime/errors.d.ts.map +1 -0
- package/dist/runtime/errors.js.map +1 -0
- package/dist/runtime/index.d.ts.map +1 -0
- package/dist/runtime/index.js.map +1 -0
- package/dist/runtime/resumable-arrays.d.ts.map +1 -0
- package/dist/runtime/resumable-arrays.js.map +1 -0
- package/dist/runtime/resumable-loops.d.ts.map +1 -0
- package/dist/runtime/resumable-loops.js.map +1 -0
- package/dist/runtime/resumable-parallel.d.ts.map +1 -0
- package/dist/runtime/resumable-parallel.js.map +1 -0
- package/dist/transformer/array-transformer-batch.d.ts.map +1 -0
- package/dist/transformer/array-transformer-batch.js.map +1 -0
- package/dist/transformer/array-transformer-sequential.d.ts.map +1 -0
- package/dist/transformer/array-transformer-sequential.js.map +1 -0
- package/dist/transformer/array-transformer-utils.d.ts.map +1 -0
- package/dist/transformer/array-transformer-utils.js.map +1 -0
- package/dist/transformer/array-transformer-wrappers.d.ts.map +1 -0
- package/dist/transformer/array-transformer-wrappers.js.map +1 -0
- package/dist/transformer/array-transformer.d.ts.map +1 -0
- package/dist/transformer/array-transformer.js.map +1 -0
- package/dist/transformer/batch-detector.d.ts.map +1 -0
- package/dist/transformer/batch-detector.js.map +1 -0
- package/dist/transformer/batch-optimizer.d.ts.map +1 -0
- package/dist/transformer/batch-optimizer.js.map +1 -0
- package/dist/transformer/detector.d.ts.map +1 -0
- package/dist/transformer/detector.js.map +1 -0
- package/dist/transformer/index.d.ts.map +1 -0
- package/dist/transformer/index.js.map +1 -0
- package/dist/transformer/loop-transformer.d.ts.map +1 -0
- package/dist/transformer/loop-transformer.js.map +1 -0
- package/dist/transformer/promise-transformer.d.ts.map +1 -0
- package/dist/transformer/promise-transformer.js.map +1 -0
- package/dist/transformer/utils.d.ts.map +1 -0
- package/dist/transformer/utils.js.map +1 -0
- package/dist/types/compiler-interface.d.ts.map +1 -0
- package/dist/types/compiler-interface.js.map +1 -0
- package/dist/types.d.ts.map +1 -0
- package/dist/types.js.map +1 -0
- package/package.json +5 -5
- package/tsconfig.json +10 -3
- package/tsconfig.tsbuildinfo +1 -0
- package/dist/atp-compiler/src/index.d.ts.map +0 -1
- package/dist/atp-compiler/src/index.js.map +0 -1
- package/dist/atp-compiler/src/plugin-system/create-default-compiler.d.ts.map +0 -1
- package/dist/atp-compiler/src/plugin-system/create-default-compiler.js.map +0 -1
- package/dist/atp-compiler/src/plugin-system/default-plugins/array-transformer-plugin.d.ts.map +0 -1
- package/dist/atp-compiler/src/plugin-system/default-plugins/array-transformer-plugin.js.map +0 -1
- package/dist/atp-compiler/src/plugin-system/default-plugins/detection-plugin.d.ts.map +0 -1
- package/dist/atp-compiler/src/plugin-system/default-plugins/detection-plugin.js.map +0 -1
- package/dist/atp-compiler/src/plugin-system/default-plugins/index.d.ts.map +0 -1
- package/dist/atp-compiler/src/plugin-system/default-plugins/index.js.map +0 -1
- package/dist/atp-compiler/src/plugin-system/default-plugins/loop-transformer-plugin.d.ts.map +0 -1
- package/dist/atp-compiler/src/plugin-system/default-plugins/loop-transformer-plugin.js.map +0 -1
- package/dist/atp-compiler/src/plugin-system/default-plugins/promise-transformer-plugin.d.ts.map +0 -1
- package/dist/atp-compiler/src/plugin-system/default-plugins/promise-transformer-plugin.js.map +0 -1
- package/dist/atp-compiler/src/plugin-system/examples/loop-transformer-plugin.d.ts.map +0 -1
- package/dist/atp-compiler/src/plugin-system/examples/loop-transformer-plugin.js.map +0 -1
- package/dist/atp-compiler/src/plugin-system/examples/security-validator-plugin.d.ts.map +0 -1
- package/dist/atp-compiler/src/plugin-system/examples/security-validator-plugin.js.map +0 -1
- package/dist/atp-compiler/src/plugin-system/examples/timeout-plugin.d.ts.map +0 -1
- package/dist/atp-compiler/src/plugin-system/examples/timeout-plugin.js.map +0 -1
- package/dist/atp-compiler/src/plugin-system/index.d.ts.map +0 -1
- package/dist/atp-compiler/src/plugin-system/index.js.map +0 -1
- package/dist/atp-compiler/src/plugin-system/pluggable-compiler.d.ts.map +0 -1
- package/dist/atp-compiler/src/plugin-system/pluggable-compiler.js.map +0 -1
- package/dist/atp-compiler/src/plugin-system/plugin-api.d.ts.map +0 -1
- package/dist/atp-compiler/src/plugin-system/plugin-api.js.map +0 -1
- package/dist/atp-compiler/src/runtime/batch-parallel.d.ts.map +0 -1
- package/dist/atp-compiler/src/runtime/batch-parallel.js.map +0 -1
- package/dist/atp-compiler/src/runtime/checkpoint-manager.d.ts.map +0 -1
- package/dist/atp-compiler/src/runtime/checkpoint-manager.js.map +0 -1
- package/dist/atp-compiler/src/runtime/context.d.ts.map +0 -1
- package/dist/atp-compiler/src/runtime/context.js.map +0 -1
- package/dist/atp-compiler/src/runtime/errors.d.ts.map +0 -1
- package/dist/atp-compiler/src/runtime/errors.js.map +0 -1
- package/dist/atp-compiler/src/runtime/index.d.ts.map +0 -1
- package/dist/atp-compiler/src/runtime/index.js.map +0 -1
- package/dist/atp-compiler/src/runtime/resumable-arrays.d.ts.map +0 -1
- package/dist/atp-compiler/src/runtime/resumable-arrays.js.map +0 -1
- package/dist/atp-compiler/src/runtime/resumable-loops.d.ts.map +0 -1
- package/dist/atp-compiler/src/runtime/resumable-loops.js.map +0 -1
- package/dist/atp-compiler/src/runtime/resumable-parallel.d.ts.map +0 -1
- package/dist/atp-compiler/src/runtime/resumable-parallel.js.map +0 -1
- package/dist/atp-compiler/src/transformer/array-transformer-batch.d.ts.map +0 -1
- package/dist/atp-compiler/src/transformer/array-transformer-batch.js.map +0 -1
- package/dist/atp-compiler/src/transformer/array-transformer-sequential.d.ts.map +0 -1
- package/dist/atp-compiler/src/transformer/array-transformer-sequential.js.map +0 -1
- package/dist/atp-compiler/src/transformer/array-transformer-utils.d.ts.map +0 -1
- package/dist/atp-compiler/src/transformer/array-transformer-utils.js.map +0 -1
- package/dist/atp-compiler/src/transformer/array-transformer-wrappers.d.ts.map +0 -1
- package/dist/atp-compiler/src/transformer/array-transformer-wrappers.js.map +0 -1
- package/dist/atp-compiler/src/transformer/array-transformer.d.ts.map +0 -1
- package/dist/atp-compiler/src/transformer/array-transformer.js.map +0 -1
- package/dist/atp-compiler/src/transformer/batch-detector.d.ts.map +0 -1
- package/dist/atp-compiler/src/transformer/batch-detector.js.map +0 -1
- package/dist/atp-compiler/src/transformer/batch-optimizer.d.ts.map +0 -1
- package/dist/atp-compiler/src/transformer/batch-optimizer.js.map +0 -1
- package/dist/atp-compiler/src/transformer/detector.d.ts.map +0 -1
- package/dist/atp-compiler/src/transformer/detector.js.map +0 -1
- package/dist/atp-compiler/src/transformer/index.d.ts.map +0 -1
- package/dist/atp-compiler/src/transformer/index.js.map +0 -1
- package/dist/atp-compiler/src/transformer/loop-transformer.d.ts.map +0 -1
- package/dist/atp-compiler/src/transformer/loop-transformer.js.map +0 -1
- package/dist/atp-compiler/src/transformer/promise-transformer.d.ts.map +0 -1
- package/dist/atp-compiler/src/transformer/promise-transformer.js.map +0 -1
- package/dist/atp-compiler/src/transformer/utils.d.ts.map +0 -1
- package/dist/atp-compiler/src/transformer/utils.js.map +0 -1
- package/dist/atp-compiler/src/types/compiler-interface.d.ts.map +0 -1
- package/dist/atp-compiler/src/types/compiler-interface.js.map +0 -1
- package/dist/atp-compiler/src/types.d.ts.map +0 -1
- package/dist/atp-compiler/src/types.js.map +0 -1
- package/dist/protocol/src/auth.d.ts +0 -173
- package/dist/protocol/src/auth.d.ts.map +0 -1
- package/dist/protocol/src/auth.js +0 -202
- package/dist/protocol/src/auth.js.map +0 -1
- package/dist/protocol/src/index.d.ts +0 -7
- package/dist/protocol/src/index.d.ts.map +0 -1
- package/dist/protocol/src/index.js +0 -7
- package/dist/protocol/src/index.js.map +0 -1
- package/dist/protocol/src/oauth.d.ts +0 -63
- package/dist/protocol/src/oauth.d.ts.map +0 -1
- package/dist/protocol/src/oauth.js +0 -5
- package/dist/protocol/src/oauth.js.map +0 -1
- package/dist/protocol/src/providers.d.ts +0 -167
- package/dist/protocol/src/providers.d.ts.map +0 -1
- package/dist/protocol/src/providers.js +0 -33
- package/dist/protocol/src/providers.js.map +0 -1
- package/dist/protocol/src/schemas.d.ts +0 -6
- package/dist/protocol/src/schemas.d.ts.map +0 -1
- package/dist/protocol/src/schemas.js +0 -51
- package/dist/protocol/src/schemas.js.map +0 -1
- package/dist/protocol/src/types.d.ts +0 -514
- package/dist/protocol/src/types.d.ts.map +0 -1
- package/dist/protocol/src/types.js +0 -88
- package/dist/protocol/src/types.js.map +0 -1
- package/dist/protocol/src/validation.d.ts +0 -76
- package/dist/protocol/src/validation.d.ts.map +0 -1
- package/dist/protocol/src/validation.js +0 -129
- package/dist/protocol/src/validation.js.map +0 -1
- package/dist/provenance/src/ast/instrumentor.d.ts +0 -37
- package/dist/provenance/src/ast/instrumentor.d.ts.map +0 -1
- package/dist/provenance/src/ast/instrumentor.js +0 -299
- package/dist/provenance/src/ast/instrumentor.js.map +0 -1
- package/dist/provenance/src/index.d.ts +0 -12
- package/dist/provenance/src/index.d.ts.map +0 -1
- package/dist/provenance/src/index.js +0 -12
- package/dist/provenance/src/index.js.map +0 -1
- package/dist/provenance/src/policies/builder.d.ts +0 -36
- package/dist/provenance/src/policies/builder.d.ts.map +0 -1
- package/dist/provenance/src/policies/builder.js +0 -77
- package/dist/provenance/src/policies/builder.js.map +0 -1
- package/dist/provenance/src/policies/declarative.d.ts +0 -47
- package/dist/provenance/src/policies/declarative.d.ts.map +0 -1
- package/dist/provenance/src/policies/declarative.js +0 -170
- package/dist/provenance/src/policies/declarative.js.map +0 -1
- package/dist/provenance/src/policies/dynamic.d.ts +0 -39
- package/dist/provenance/src/policies/dynamic.d.ts.map +0 -1
- package/dist/provenance/src/policies/dynamic.js +0 -75
- package/dist/provenance/src/policies/dynamic.js.map +0 -1
- package/dist/provenance/src/policies/engine.d.ts +0 -71
- package/dist/provenance/src/policies/engine.d.ts.map +0 -1
- package/dist/provenance/src/policies/engine.js +0 -433
- package/dist/provenance/src/policies/engine.js.map +0 -1
- package/dist/provenance/src/policies/schema.d.ts +0 -270
- package/dist/provenance/src/policies/schema.d.ts.map +0 -1
- package/dist/provenance/src/policies/schema.js +0 -42
- package/dist/provenance/src/policies/schema.js.map +0 -1
- package/dist/provenance/src/registry.d.ts +0 -109
- package/dist/provenance/src/registry.d.ts.map +0 -1
- package/dist/provenance/src/registry.js +0 -518
- package/dist/provenance/src/registry.js.map +0 -1
- package/dist/provenance/src/store.d.ts +0 -53
- package/dist/provenance/src/store.d.ts.map +0 -1
- package/dist/provenance/src/store.js +0 -78
- package/dist/provenance/src/store.js.map +0 -1
- package/dist/provenance/src/tokens.d.ts +0 -49
- package/dist/provenance/src/tokens.d.ts.map +0 -1
- package/dist/provenance/src/tokens.js +0 -239
- package/dist/provenance/src/tokens.js.map +0 -1
- package/dist/provenance/src/types.d.ts +0 -150
- package/dist/provenance/src/types.d.ts.map +0 -1
- package/dist/provenance/src/types.js +0 -47
- package/dist/provenance/src/types.js.map +0 -1
- package/dist/runtime/src/approval/handler.d.ts +0 -12
- package/dist/runtime/src/approval/handler.d.ts.map +0 -1
- package/dist/runtime/src/approval/handler.js +0 -17
- package/dist/runtime/src/approval/handler.js.map +0 -1
- package/dist/runtime/src/approval/index.d.ts +0 -17
- package/dist/runtime/src/approval/index.d.ts.map +0 -1
- package/dist/runtime/src/approval/index.js +0 -95
- package/dist/runtime/src/approval/index.js.map +0 -1
- package/dist/runtime/src/approval/types.d.ts +0 -21
- package/dist/runtime/src/approval/types.d.ts.map +0 -1
- package/dist/runtime/src/approval/types.js +0 -5
- package/dist/runtime/src/approval/types.js.map +0 -1
- package/dist/runtime/src/cache/backends.d.ts +0 -39
- package/dist/runtime/src/cache/backends.d.ts.map +0 -1
- package/dist/runtime/src/cache/backends.js +0 -167
- package/dist/runtime/src/cache/backends.js.map +0 -1
- package/dist/runtime/src/cache/index.d.ts +0 -32
- package/dist/runtime/src/cache/index.d.ts.map +0 -1
- package/dist/runtime/src/cache/index.js +0 -103
- package/dist/runtime/src/cache/index.js.map +0 -1
- package/dist/runtime/src/cache/types.d.ts +0 -20
- package/dist/runtime/src/cache/types.d.ts.map +0 -1
- package/dist/runtime/src/cache/types.js +0 -2
- package/dist/runtime/src/cache/types.js.map +0 -1
- package/dist/runtime/src/embedding/index.d.ts +0 -39
- package/dist/runtime/src/embedding/index.d.ts.map +0 -1
- package/dist/runtime/src/embedding/index.js +0 -162
- package/dist/runtime/src/embedding/index.js.map +0 -1
- package/dist/runtime/src/embedding/types.d.ts +0 -28
- package/dist/runtime/src/embedding/types.d.ts.map +0 -1
- package/dist/runtime/src/embedding/types.js +0 -5
- package/dist/runtime/src/embedding/types.js.map +0 -1
- package/dist/runtime/src/embedding/utils.d.ts +0 -11
- package/dist/runtime/src/embedding/utils.d.ts.map +0 -1
- package/dist/runtime/src/embedding/utils.js +0 -30
- package/dist/runtime/src/embedding/utils.js.map +0 -1
- package/dist/runtime/src/embedding/vector-store.d.ts +0 -64
- package/dist/runtime/src/embedding/vector-store.d.ts.map +0 -1
- package/dist/runtime/src/embedding/vector-store.js +0 -142
- package/dist/runtime/src/embedding/vector-store.js.map +0 -1
- package/dist/runtime/src/index.d.ts +0 -18
- package/dist/runtime/src/index.d.ts.map +0 -1
- package/dist/runtime/src/index.js +0 -17
- package/dist/runtime/src/index.js.map +0 -1
- package/dist/runtime/src/llm/callback.d.ts +0 -13
- package/dist/runtime/src/llm/callback.d.ts.map +0 -1
- package/dist/runtime/src/llm/callback.js +0 -19
- package/dist/runtime/src/llm/callback.js.map +0 -1
- package/dist/runtime/src/llm/index.d.ts +0 -29
- package/dist/runtime/src/llm/index.d.ts.map +0 -1
- package/dist/runtime/src/llm/index.js +0 -118
- package/dist/runtime/src/llm/index.js.map +0 -1
- package/dist/runtime/src/llm/replay.d.ts +0 -122
- package/dist/runtime/src/llm/replay.d.ts.map +0 -1
- package/dist/runtime/src/llm/replay.js +0 -308
- package/dist/runtime/src/llm/replay.js.map +0 -1
- package/dist/runtime/src/llm/types.d.ts +0 -24
- package/dist/runtime/src/llm/types.d.ts.map +0 -1
- package/dist/runtime/src/llm/types.js +0 -2
- package/dist/runtime/src/llm/types.js.map +0 -1
- package/dist/runtime/src/log/index.d.ts +0 -12
- package/dist/runtime/src/log/index.d.ts.map +0 -1
- package/dist/runtime/src/log/index.js +0 -166
- package/dist/runtime/src/log/index.js.map +0 -1
- package/dist/runtime/src/log/types.d.ts +0 -19
- package/dist/runtime/src/log/types.d.ts.map +0 -1
- package/dist/runtime/src/log/types.js +0 -5
- package/dist/runtime/src/log/types.js.map +0 -1
- package/dist/runtime/src/metadata/decorators.d.ts +0 -27
- package/dist/runtime/src/metadata/decorators.d.ts.map +0 -1
- package/dist/runtime/src/metadata/decorators.js +0 -38
- package/dist/runtime/src/metadata/decorators.js.map +0 -1
- package/dist/runtime/src/metadata/generated.d.ts +0 -22
- package/dist/runtime/src/metadata/generated.d.ts.map +0 -1
- package/dist/runtime/src/metadata/generated.js +0 -290
- package/dist/runtime/src/metadata/generated.js.map +0 -1
- package/dist/runtime/src/metadata/index.d.ts +0 -24
- package/dist/runtime/src/metadata/index.d.ts.map +0 -1
- package/dist/runtime/src/metadata/index.js +0 -87
- package/dist/runtime/src/metadata/index.js.map +0 -1
- package/dist/runtime/src/metadata/types.d.ts +0 -23
- package/dist/runtime/src/metadata/types.d.ts.map +0 -1
- package/dist/runtime/src/metadata/types.js +0 -6
- package/dist/runtime/src/metadata/types.js.map +0 -1
- package/dist/runtime/src/pause/index.d.ts +0 -11
- package/dist/runtime/src/pause/index.d.ts.map +0 -1
- package/dist/runtime/src/pause/index.js +0 -15
- package/dist/runtime/src/pause/index.js.map +0 -1
- package/dist/runtime/src/pause/types.d.ts +0 -46
- package/dist/runtime/src/pause/types.d.ts.map +0 -1
- package/dist/runtime/src/pause/types.js +0 -57
- package/dist/runtime/src/pause/types.js.map +0 -1
- package/dist/runtime/src/progress/index.d.ts +0 -19
- package/dist/runtime/src/progress/index.d.ts.map +0 -1
- package/dist/runtime/src/progress/index.js +0 -61
- package/dist/runtime/src/progress/index.js.map +0 -1
- package/dist/runtime/src/progress/types.d.ts +0 -7
- package/dist/runtime/src/progress/types.d.ts.map +0 -1
- package/dist/runtime/src/progress/types.js +0 -2
- package/dist/runtime/src/progress/types.js.map +0 -1
- package/dist/runtime/src/registry.d.ts +0 -16
- package/dist/runtime/src/registry.d.ts.map +0 -1
- package/dist/runtime/src/registry.js +0 -16
- package/dist/runtime/src/registry.js.map +0 -1
- package/dist/runtime/src/utils.d.ts +0 -11
- package/dist/runtime/src/utils.d.ts.map +0 -1
- package/dist/runtime/src/utils.js +0 -31
- package/dist/runtime/src/utils.js.map +0 -1
- package/dist/tsconfig.tsbuildinfo +0 -1
- /package/dist/{atp-compiler/src/index.d.ts → index.d.ts} +0 -0
- /package/dist/{atp-compiler/src/index.js → index.js} +0 -0
- /package/dist/{atp-compiler/src/plugin-system → plugin-system}/create-default-compiler.d.ts +0 -0
- /package/dist/{atp-compiler/src/plugin-system → plugin-system}/create-default-compiler.js +0 -0
- /package/dist/{atp-compiler/src/plugin-system → plugin-system}/default-plugins/array-transformer-plugin.d.ts +0 -0
- /package/dist/{atp-compiler/src/plugin-system → plugin-system}/default-plugins/array-transformer-plugin.js +0 -0
- /package/dist/{atp-compiler/src/plugin-system → plugin-system}/default-plugins/detection-plugin.d.ts +0 -0
- /package/dist/{atp-compiler/src/plugin-system → plugin-system}/default-plugins/detection-plugin.js +0 -0
- /package/dist/{atp-compiler/src/plugin-system → plugin-system}/default-plugins/index.d.ts +0 -0
- /package/dist/{atp-compiler/src/plugin-system → plugin-system}/default-plugins/index.js +0 -0
- /package/dist/{atp-compiler/src/plugin-system → plugin-system}/default-plugins/loop-transformer-plugin.d.ts +0 -0
- /package/dist/{atp-compiler/src/plugin-system → plugin-system}/default-plugins/loop-transformer-plugin.js +0 -0
- /package/dist/{atp-compiler/src/plugin-system → plugin-system}/default-plugins/promise-transformer-plugin.d.ts +0 -0
- /package/dist/{atp-compiler/src/plugin-system → plugin-system}/default-plugins/promise-transformer-plugin.js +0 -0
- /package/dist/{atp-compiler/src/plugin-system → plugin-system}/examples/loop-transformer-plugin.d.ts +0 -0
- /package/dist/{atp-compiler/src/plugin-system → plugin-system}/examples/loop-transformer-plugin.js +0 -0
- /package/dist/{atp-compiler/src/plugin-system → plugin-system}/examples/security-validator-plugin.d.ts +0 -0
- /package/dist/{atp-compiler/src/plugin-system → plugin-system}/examples/security-validator-plugin.js +0 -0
- /package/dist/{atp-compiler/src/plugin-system → plugin-system}/examples/timeout-plugin.d.ts +0 -0
- /package/dist/{atp-compiler/src/plugin-system → plugin-system}/examples/timeout-plugin.js +0 -0
- /package/dist/{atp-compiler/src/plugin-system → plugin-system}/index.d.ts +0 -0
- /package/dist/{atp-compiler/src/plugin-system → plugin-system}/index.js +0 -0
- /package/dist/{atp-compiler/src/plugin-system → plugin-system}/pluggable-compiler.d.ts +0 -0
- /package/dist/{atp-compiler/src/plugin-system → plugin-system}/pluggable-compiler.js +0 -0
- /package/dist/{atp-compiler/src/plugin-system → plugin-system}/plugin-api.d.ts +0 -0
- /package/dist/{atp-compiler/src/plugin-system → plugin-system}/plugin-api.js +0 -0
- /package/dist/{atp-compiler/src/runtime → runtime}/batch-parallel.d.ts +0 -0
- /package/dist/{atp-compiler/src/runtime → runtime}/batch-parallel.js +0 -0
- /package/dist/{atp-compiler/src/runtime → runtime}/checkpoint-manager.d.ts +0 -0
- /package/dist/{atp-compiler/src/runtime → runtime}/checkpoint-manager.js +0 -0
- /package/dist/{atp-compiler/src/runtime → runtime}/context.d.ts +0 -0
- /package/dist/{atp-compiler/src/runtime → runtime}/context.js +0 -0
- /package/dist/{atp-compiler/src/runtime → runtime}/errors.d.ts +0 -0
- /package/dist/{atp-compiler/src/runtime → runtime}/errors.js +0 -0
- /package/dist/{atp-compiler/src/runtime → runtime}/index.d.ts +0 -0
- /package/dist/{atp-compiler/src/runtime → runtime}/index.js +0 -0
- /package/dist/{atp-compiler/src/runtime → runtime}/resumable-arrays.d.ts +0 -0
- /package/dist/{atp-compiler/src/runtime → runtime}/resumable-arrays.js +0 -0
- /package/dist/{atp-compiler/src/runtime → runtime}/resumable-loops.d.ts +0 -0
- /package/dist/{atp-compiler/src/runtime → runtime}/resumable-loops.js +0 -0
- /package/dist/{atp-compiler/src/runtime → runtime}/resumable-parallel.d.ts +0 -0
- /package/dist/{atp-compiler/src/runtime → runtime}/resumable-parallel.js +0 -0
- /package/dist/{atp-compiler/src/transformer → transformer}/array-transformer-batch.d.ts +0 -0
- /package/dist/{atp-compiler/src/transformer → transformer}/array-transformer-batch.js +0 -0
- /package/dist/{atp-compiler/src/transformer → transformer}/array-transformer-sequential.d.ts +0 -0
- /package/dist/{atp-compiler/src/transformer → transformer}/array-transformer-sequential.js +0 -0
- /package/dist/{atp-compiler/src/transformer → transformer}/array-transformer-utils.d.ts +0 -0
- /package/dist/{atp-compiler/src/transformer → transformer}/array-transformer-utils.js +0 -0
- /package/dist/{atp-compiler/src/transformer → transformer}/array-transformer-wrappers.d.ts +0 -0
- /package/dist/{atp-compiler/src/transformer → transformer}/array-transformer-wrappers.js +0 -0
- /package/dist/{atp-compiler/src/transformer → transformer}/array-transformer.d.ts +0 -0
- /package/dist/{atp-compiler/src/transformer → transformer}/array-transformer.js +0 -0
- /package/dist/{atp-compiler/src/transformer → transformer}/batch-detector.d.ts +0 -0
- /package/dist/{atp-compiler/src/transformer → transformer}/batch-detector.js +0 -0
- /package/dist/{atp-compiler/src/transformer → transformer}/batch-optimizer.d.ts +0 -0
- /package/dist/{atp-compiler/src/transformer → transformer}/batch-optimizer.js +0 -0
- /package/dist/{atp-compiler/src/transformer → transformer}/detector.d.ts +0 -0
- /package/dist/{atp-compiler/src/transformer → transformer}/detector.js +0 -0
- /package/dist/{atp-compiler/src/transformer → transformer}/index.d.ts +0 -0
- /package/dist/{atp-compiler/src/transformer → transformer}/index.js +0 -0
- /package/dist/{atp-compiler/src/transformer → transformer}/loop-transformer.d.ts +0 -0
- /package/dist/{atp-compiler/src/transformer → transformer}/loop-transformer.js +0 -0
- /package/dist/{atp-compiler/src/transformer → transformer}/promise-transformer.d.ts +0 -0
- /package/dist/{atp-compiler/src/transformer → transformer}/promise-transformer.js +0 -0
- /package/dist/{atp-compiler/src/transformer → transformer}/utils.d.ts +0 -0
- /package/dist/{atp-compiler/src/transformer → transformer}/utils.js +0 -0
- /package/dist/{atp-compiler/src/types → types}/compiler-interface.d.ts +0 -0
- /package/dist/{atp-compiler/src/types → types}/compiler-interface.js +0 -0
- /package/dist/{atp-compiler/src/types.d.ts → types.d.ts} +0 -0
- /package/dist/{atp-compiler/src/types.js → types.js} +0 -0
|
@@ -1,77 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Helper class to build policy rules fluently
|
|
3
|
-
*/
|
|
4
|
-
export class RuleBuilder {
|
|
5
|
-
rule = {
|
|
6
|
-
action: 'log',
|
|
7
|
-
conditions: [],
|
|
8
|
-
};
|
|
9
|
-
constructor(action = 'log') {
|
|
10
|
-
this.rule.action = action;
|
|
11
|
-
}
|
|
12
|
-
action(action) {
|
|
13
|
-
this.rule.action = action;
|
|
14
|
-
return this;
|
|
15
|
-
}
|
|
16
|
-
id(id) {
|
|
17
|
-
this.rule.id = id;
|
|
18
|
-
return this;
|
|
19
|
-
}
|
|
20
|
-
reason(reason) {
|
|
21
|
-
this.rule.reason = reason;
|
|
22
|
-
return this;
|
|
23
|
-
}
|
|
24
|
-
condition(field, operator, value) {
|
|
25
|
-
this.rule.conditions.push({ field, operator, value });
|
|
26
|
-
return this;
|
|
27
|
-
}
|
|
28
|
-
build() {
|
|
29
|
-
return this.rule;
|
|
30
|
-
}
|
|
31
|
-
}
|
|
32
|
-
/**
|
|
33
|
-
* Helper class to build declarative policies fluently
|
|
34
|
-
*/
|
|
35
|
-
export class PolicyBuilder {
|
|
36
|
-
config;
|
|
37
|
-
constructor(id) {
|
|
38
|
-
this.config = {
|
|
39
|
-
id,
|
|
40
|
-
scope: {},
|
|
41
|
-
rules: [],
|
|
42
|
-
};
|
|
43
|
-
}
|
|
44
|
-
description(desc) {
|
|
45
|
-
this.config.description = desc;
|
|
46
|
-
return this;
|
|
47
|
-
}
|
|
48
|
-
scopeTool(toolNamePattern) {
|
|
49
|
-
this.config.scope.toolName = toolNamePattern;
|
|
50
|
-
return this;
|
|
51
|
-
}
|
|
52
|
-
scopeApiGroup(apiGroupPattern) {
|
|
53
|
-
this.config.scope.apiGroup = apiGroupPattern;
|
|
54
|
-
return this;
|
|
55
|
-
}
|
|
56
|
-
/**
|
|
57
|
-
* Add a rule using a builder callback
|
|
58
|
-
* @example
|
|
59
|
-
* .addRule(r => r.action('block').condition('args.amount', 'matches', '>1000'))
|
|
60
|
-
*/
|
|
61
|
-
addRule(buildFn) {
|
|
62
|
-
const builder = new RuleBuilder();
|
|
63
|
-
this.config.rules.push(buildFn(builder).build());
|
|
64
|
-
return this;
|
|
65
|
-
}
|
|
66
|
-
/**
|
|
67
|
-
* Add a fully formed rule object
|
|
68
|
-
*/
|
|
69
|
-
addRuleObject(rule) {
|
|
70
|
-
this.config.rules.push(rule);
|
|
71
|
-
return this;
|
|
72
|
-
}
|
|
73
|
-
build() {
|
|
74
|
-
return this.config;
|
|
75
|
-
}
|
|
76
|
-
}
|
|
77
|
-
//# sourceMappingURL=builder.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"builder.js","sourceRoot":"","sources":["../../../../../provenance/src/policies/builder.ts"],"names":[],"mappings":"AAGA;;GAEG;AACH,MAAM,OAAO,WAAW;IACf,IAAI,GAAe;QAC1B,MAAM,EAAE,KAAK;QACb,UAAU,EAAE,EAAE;KACd,CAAC;IAEF,YAAY,SAAuB,KAAK;QACvC,IAAI,CAAC,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;IAC3B,CAAC;IAED,MAAM,CAAC,MAAoB;QAC1B,IAAI,CAAC,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;QAC1B,OAAO,IAAI,CAAC;IACb,CAAC;IAED,EAAE,CAAC,EAAU;QACZ,IAAI,CAAC,IAAI,CAAC,EAAE,GAAG,EAAE,CAAC;QAClB,OAAO,IAAI,CAAC;IACb,CAAC;IAED,MAAM,CAAC,MAAc;QACpB,IAAI,CAAC,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;QAC1B,OAAO,IAAI,CAAC;IACb,CAAC;IAED,SAAS,CAAC,KAAa,EAAE,QAAkB,EAAE,KAAU;QACtD,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,QAAQ,EAAE,KAAK,EAAE,CAAC,CAAC;QACtD,OAAO,IAAI,CAAC;IACb,CAAC;IAED,KAAK;QACJ,OAAO,IAAI,CAAC,IAAI,CAAC;IAClB,CAAC;CACD;AAED;;GAEG;AACH,MAAM,OAAO,aAAa;IACjB,MAAM,CAA0B;IAExC,YAAY,EAAU;QACrB,IAAI,CAAC,MAAM,GAAG;YACb,EAAE;YACF,KAAK,EAAE,EAAE;YACT,KAAK,EAAE,EAAE;SACT,CAAC;IACH,CAAC;IAED,WAAW,CAAC,IAAY;QACvB,IAAI,CAAC,MAAM,CAAC,WAAW,GAAG,IAAI,CAAC;QAC/B,OAAO,IAAI,CAAC;IACb,CAAC;IAED,SAAS,CAAC,eAAuB;QAChC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,QAAQ,GAAG,eAAe,CAAC;QAC7C,OAAO,IAAI,CAAC;IACb,CAAC;IAED,aAAa,CAAC,eAAuB;QACpC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,QAAQ,GAAG,eAAe,CAAC;QAC7C,OAAO,IAAI,CAAC;IACb,CAAC;IAED;;;;OAIG;IACH,OAAO,CAAC,OAA8C;QACrD,MAAM,OAAO,GAAG,IAAI,WAAW,EAAE,CAAC;QAClC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC;QACjD,OAAO,IAAI,CAAC;IACb,CAAC;IAED;;OAEG;IACH,aAAa,CAAC,IAAgB;QAC7B,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC7B,OAAO,IAAI,CAAC;IACb,CAAC;IAED,KAAK;QACJ,OAAO,IAAI,CAAC,MAAM,CAAC;IACpB,CAAC;CACD"}
|
|
@@ -1,47 +0,0 @@
|
|
|
1
|
-
import type { SecurityPolicy, PolicyAction } from '../types.js';
|
|
2
|
-
export type Operator = 'equals' | 'notEquals' | 'contains' | 'notContains' | 'startsWith' | 'notStartsWith' | 'endsWith' | 'notEndsWith' | 'matches' | 'in' | 'notIn';
|
|
3
|
-
export interface Condition {
|
|
4
|
-
/**
|
|
5
|
-
* Field to check.
|
|
6
|
-
* - "args.paramName": Value of a tool argument
|
|
7
|
-
* - "provenance.args.paramName.source.type": Provenance metadata
|
|
8
|
-
* - "provenance.args.paramName.readers": Reader permissions
|
|
9
|
-
*/
|
|
10
|
-
field: string;
|
|
11
|
-
operator: Operator;
|
|
12
|
-
value: any;
|
|
13
|
-
}
|
|
14
|
-
export interface PolicyRule {
|
|
15
|
-
id?: string;
|
|
16
|
-
/** Action to take if conditions match */
|
|
17
|
-
action: PolicyAction;
|
|
18
|
-
/** Conditions (implicit AND) - all must match for the rule to trigger */
|
|
19
|
-
conditions: Condition[];
|
|
20
|
-
/** Custom reason message */
|
|
21
|
-
reason?: string;
|
|
22
|
-
}
|
|
23
|
-
export interface DeclarativePolicyConfig {
|
|
24
|
-
id: string;
|
|
25
|
-
description?: string;
|
|
26
|
-
scope: {
|
|
27
|
-
/** Regex pattern or exact match for tool name */
|
|
28
|
-
toolName?: string;
|
|
29
|
-
/** Regex pattern or exact match for API group */
|
|
30
|
-
apiGroup?: string;
|
|
31
|
-
};
|
|
32
|
-
/** Rules are evaluated in order. First match wins. */
|
|
33
|
-
rules: PolicyRule[];
|
|
34
|
-
}
|
|
35
|
-
export interface PolicyConfiguration {
|
|
36
|
-
version: string;
|
|
37
|
-
policies: DeclarativePolicyConfig[];
|
|
38
|
-
}
|
|
39
|
-
/**
|
|
40
|
-
* Create a SecurityPolicy from a declarative configuration
|
|
41
|
-
*/
|
|
42
|
-
export declare function createDeclarativePolicy(config: DeclarativePolicyConfig): SecurityPolicy;
|
|
43
|
-
/**
|
|
44
|
-
* Load policies from a full configuration object or array of policy configs
|
|
45
|
-
*/
|
|
46
|
-
export declare function loadDeclarativePolicies(config: PolicyConfiguration | DeclarativePolicyConfig[]): SecurityPolicy[];
|
|
47
|
-
//# sourceMappingURL=declarative.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"declarative.d.ts","sourceRoot":"","sources":["../../../../../provenance/src/policies/declarative.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAoC,YAAY,EAAE,MAAM,aAAa,CAAC;AAElG,MAAM,MAAM,QAAQ,GACjB,QAAQ,GACR,WAAW,GACX,UAAU,GACV,aAAa,GACb,YAAY,GACZ,eAAe,GACf,UAAU,GACV,aAAa,GACb,SAAS,GACT,IAAI,GACJ,OAAO,CAAC;AAEX,MAAM,WAAW,SAAS;IACzB;;;;;OAKG;IACH,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,QAAQ,CAAC;IACnB,KAAK,EAAE,GAAG,CAAC;CACX;AAED,MAAM,WAAW,UAAU;IAC1B,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,yCAAyC;IACzC,MAAM,EAAE,YAAY,CAAC;IACrB,yEAAyE;IACzE,UAAU,EAAE,SAAS,EAAE,CAAC;IACxB,4BAA4B;IAC5B,MAAM,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,uBAAuB;IACvC,EAAE,EAAE,MAAM,CAAC;IACX,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,KAAK,EAAE;QACN,iDAAiD;QACjD,QAAQ,CAAC,EAAE,MAAM,CAAC;QAClB,iDAAiD;QACjD,QAAQ,CAAC,EAAE,MAAM,CAAC;KAClB,CAAC;IACF,sDAAsD;IACtD,KAAK,EAAE,UAAU,EAAE,CAAC;CACpB;AAED,MAAM,WAAW,mBAAmB;IACnC,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,EAAE,uBAAuB,EAAE,CAAC;CACpC;AAuID;;GAEG;AACH,wBAAgB,uBAAuB,CAAC,MAAM,EAAE,uBAAuB,GAAG,cAAc,CAyCvF;AAED;;GAEG;AACH,wBAAgB,uBAAuB,CACtC,MAAM,EAAE,mBAAmB,GAAG,uBAAuB,EAAE,GACrD,cAAc,EAAE,CAKlB"}
|
|
@@ -1,170 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Resolve a value from a path in the arguments or provenance
|
|
3
|
-
*/
|
|
4
|
-
function resolveValue(path, args, getProvenance) {
|
|
5
|
-
const parts = path.split('.');
|
|
6
|
-
const root = parts.shift();
|
|
7
|
-
if (root === 'args') {
|
|
8
|
-
let current = args;
|
|
9
|
-
for (const part of parts) {
|
|
10
|
-
if (current === null || current === undefined) {
|
|
11
|
-
return undefined;
|
|
12
|
-
}
|
|
13
|
-
current = current[part];
|
|
14
|
-
}
|
|
15
|
-
return current;
|
|
16
|
-
}
|
|
17
|
-
if (root === 'provenance' && parts[0] === 'args') {
|
|
18
|
-
parts.shift(); // remove 'args'
|
|
19
|
-
const argName = parts.shift(); // get argument name
|
|
20
|
-
if (!argName)
|
|
21
|
-
return undefined;
|
|
22
|
-
const argValue = args[argName];
|
|
23
|
-
// Better approach:
|
|
24
|
-
// 1. Traverse args until we find the object.
|
|
25
|
-
// 2. Get provenance of that object.
|
|
26
|
-
// 3. Traverse provenance metadata.
|
|
27
|
-
let remainingParts = [...parts];
|
|
28
|
-
// We don't know where the split is.
|
|
29
|
-
// Let's try to find standard metadata keys in the path.
|
|
30
|
-
const metadataKeys = ['source', 'readers', 'dependencies', 'id', 'context'];
|
|
31
|
-
let splitIndex = -1;
|
|
32
|
-
for (let i = 0; i < remainingParts.length; i++) {
|
|
33
|
-
if (metadataKeys.includes(remainingParts[i])) {
|
|
34
|
-
splitIndex = i;
|
|
35
|
-
break;
|
|
36
|
-
}
|
|
37
|
-
}
|
|
38
|
-
if (splitIndex === -1) {
|
|
39
|
-
return undefined;
|
|
40
|
-
}
|
|
41
|
-
// Traverse to the value that should have provenance
|
|
42
|
-
let valuePath = remainingParts.slice(0, splitIndex);
|
|
43
|
-
let metaPath = remainingParts.slice(splitIndex);
|
|
44
|
-
let currentVal = argValue;
|
|
45
|
-
for (const part of valuePath) {
|
|
46
|
-
if (currentVal === null || currentVal === undefined)
|
|
47
|
-
return undefined;
|
|
48
|
-
currentVal = currentVal[part];
|
|
49
|
-
}
|
|
50
|
-
const metadata = getProvenance(currentVal);
|
|
51
|
-
if (!metadata)
|
|
52
|
-
return undefined;
|
|
53
|
-
// Now traverse metadata
|
|
54
|
-
let currentMeta = metadata;
|
|
55
|
-
for (const part of metaPath) {
|
|
56
|
-
if (currentMeta === null || currentMeta === undefined)
|
|
57
|
-
return undefined;
|
|
58
|
-
currentMeta = currentMeta[part];
|
|
59
|
-
}
|
|
60
|
-
return currentMeta;
|
|
61
|
-
}
|
|
62
|
-
return undefined;
|
|
63
|
-
}
|
|
64
|
-
function evaluateCondition(actual, operator, expected) {
|
|
65
|
-
switch (operator) {
|
|
66
|
-
case 'equals':
|
|
67
|
-
return actual === expected;
|
|
68
|
-
case 'notEquals':
|
|
69
|
-
return actual !== expected;
|
|
70
|
-
case 'contains':
|
|
71
|
-
return Array.isArray(actual) || typeof actual === 'string'
|
|
72
|
-
? actual.includes(expected)
|
|
73
|
-
: false;
|
|
74
|
-
case 'notContains':
|
|
75
|
-
return Array.isArray(actual) || typeof actual === 'string'
|
|
76
|
-
? !actual.includes(expected)
|
|
77
|
-
: true;
|
|
78
|
-
case 'startsWith':
|
|
79
|
-
return typeof actual === 'string' ? actual.startsWith(expected) : false;
|
|
80
|
-
case 'notStartsWith':
|
|
81
|
-
return typeof actual === 'string' ? !actual.startsWith(expected) : true;
|
|
82
|
-
case 'endsWith':
|
|
83
|
-
return typeof actual === 'string' ? actual.endsWith(expected) : false;
|
|
84
|
-
case 'notEndsWith':
|
|
85
|
-
return typeof actual === 'string' ? !actual.endsWith(expected) : true;
|
|
86
|
-
case 'matches':
|
|
87
|
-
if (typeof actual === 'string') {
|
|
88
|
-
return new RegExp(expected).test(actual);
|
|
89
|
-
}
|
|
90
|
-
if (typeof actual === 'number' && typeof expected === 'string') {
|
|
91
|
-
const match = expected.match(/^([<>]=?|==|!=)(\d+(?:\.\d+)?)$/);
|
|
92
|
-
if (match) {
|
|
93
|
-
const [, op, value] = match;
|
|
94
|
-
const numValue = parseFloat(value);
|
|
95
|
-
switch (op) {
|
|
96
|
-
case '>':
|
|
97
|
-
return actual > numValue;
|
|
98
|
-
case '>=':
|
|
99
|
-
return actual >= numValue;
|
|
100
|
-
case '<':
|
|
101
|
-
return actual < numValue;
|
|
102
|
-
case '<=':
|
|
103
|
-
return actual <= numValue;
|
|
104
|
-
case '==':
|
|
105
|
-
return actual === numValue;
|
|
106
|
-
case '!=':
|
|
107
|
-
return actual !== numValue;
|
|
108
|
-
}
|
|
109
|
-
}
|
|
110
|
-
}
|
|
111
|
-
return false;
|
|
112
|
-
case 'in':
|
|
113
|
-
return Array.isArray(expected) ? expected.includes(actual) : false;
|
|
114
|
-
case 'notIn':
|
|
115
|
-
return Array.isArray(expected) ? !expected.includes(actual) : true;
|
|
116
|
-
default:
|
|
117
|
-
return false;
|
|
118
|
-
}
|
|
119
|
-
}
|
|
120
|
-
/**
|
|
121
|
-
* Create a SecurityPolicy from a declarative configuration
|
|
122
|
-
*/
|
|
123
|
-
export function createDeclarativePolicy(config) {
|
|
124
|
-
return {
|
|
125
|
-
name: config.id,
|
|
126
|
-
description: config.description,
|
|
127
|
-
check: async (toolName, args, getProvenance) => {
|
|
128
|
-
if (config.scope.toolName) {
|
|
129
|
-
const toolRegex = new RegExp(`^${config.scope.toolName}$`);
|
|
130
|
-
if (!toolRegex.test(toolName)) {
|
|
131
|
-
return { action: 'log' };
|
|
132
|
-
}
|
|
133
|
-
}
|
|
134
|
-
if (config.scope.apiGroup) {
|
|
135
|
-
// Note: apiGroup is matched against the toolName prefix (e.g., "payment" from "payment.transfer")
|
|
136
|
-
// The SecurityPolicy interface doesn't receive apiGroup separately, but we can extract it from toolName
|
|
137
|
-
const extractedGroup = toolName.split('.')[0] || '';
|
|
138
|
-
const groupRegex = new RegExp(`^${config.scope.apiGroup}$`);
|
|
139
|
-
if (!groupRegex.test(extractedGroup)) {
|
|
140
|
-
return { action: 'log' };
|
|
141
|
-
}
|
|
142
|
-
}
|
|
143
|
-
for (const rule of config.rules) {
|
|
144
|
-
const allMatch = rule.conditions.every((condition) => {
|
|
145
|
-
const actualValue = resolveValue(condition.field, args, getProvenance);
|
|
146
|
-
return evaluateCondition(actualValue, condition.operator, condition.value);
|
|
147
|
-
});
|
|
148
|
-
if (allMatch) {
|
|
149
|
-
return {
|
|
150
|
-
action: rule.action,
|
|
151
|
-
reason: rule.reason || `Matched rule ${rule.id || 'unknown'} in policy ${config.id}`,
|
|
152
|
-
policy: config.id,
|
|
153
|
-
context: { ruleId: rule.id, conditions: rule.conditions },
|
|
154
|
-
};
|
|
155
|
-
}
|
|
156
|
-
}
|
|
157
|
-
return { action: 'log' };
|
|
158
|
-
},
|
|
159
|
-
};
|
|
160
|
-
}
|
|
161
|
-
/**
|
|
162
|
-
* Load policies from a full configuration object or array of policy configs
|
|
163
|
-
*/
|
|
164
|
-
export function loadDeclarativePolicies(config) {
|
|
165
|
-
if (Array.isArray(config)) {
|
|
166
|
-
return config.map(createDeclarativePolicy);
|
|
167
|
-
}
|
|
168
|
-
return config.policies.map(createDeclarativePolicy);
|
|
169
|
-
}
|
|
170
|
-
//# sourceMappingURL=declarative.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"declarative.js","sourceRoot":"","sources":["../../../../../provenance/src/policies/declarative.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,39 +0,0 @@
|
|
|
1
|
-
import type { SecurityPolicy, PolicyResult, ProvenanceMetadata } from '../types.js';
|
|
2
|
-
import { type DeclarativePolicyConfig } from './declarative.js';
|
|
3
|
-
/**
|
|
4
|
-
* A dynamic registry that manages multiple policies and acts as a single SecurityPolicy.
|
|
5
|
-
* This allows policies to be updated at runtime (e.g. from a UI or database) without restarting the server.
|
|
6
|
-
*/
|
|
7
|
-
export declare class DynamicPolicyRegistry implements SecurityPolicy {
|
|
8
|
-
name: string;
|
|
9
|
-
description: string;
|
|
10
|
-
private policies;
|
|
11
|
-
constructor(initialPolicies?: SecurityPolicy[]);
|
|
12
|
-
/**
|
|
13
|
-
* Add or update a policy
|
|
14
|
-
*/
|
|
15
|
-
addPolicy(policy: SecurityPolicy): void;
|
|
16
|
-
/**
|
|
17
|
-
* Remove a policy by name
|
|
18
|
-
*/
|
|
19
|
-
removePolicy(name: string): void;
|
|
20
|
-
/**
|
|
21
|
-
* clear all policies
|
|
22
|
-
*/
|
|
23
|
-
clear(): void;
|
|
24
|
-
/**
|
|
25
|
-
* Load policies from declarative configurations (JSON)
|
|
26
|
-
* This is useful for loading policies saved from a UI
|
|
27
|
-
*/
|
|
28
|
-
loadFromConfigs(configs: DeclarativePolicyConfig[], replace?: boolean): void;
|
|
29
|
-
/**
|
|
30
|
-
* Get all registered policies
|
|
31
|
-
*/
|
|
32
|
-
getPolicies(): SecurityPolicy[];
|
|
33
|
-
/**
|
|
34
|
-
* Implementation of the SecurityPolicy check interface.
|
|
35
|
-
* Delegates to all registered policies.
|
|
36
|
-
*/
|
|
37
|
-
check(toolName: string, args: Record<string, unknown>, getProvenance: (value: unknown) => ProvenanceMetadata | null): Promise<PolicyResult>;
|
|
38
|
-
}
|
|
39
|
-
//# sourceMappingURL=dynamic.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"dynamic.d.ts","sourceRoot":"","sources":["../../../../../provenance/src/policies/dynamic.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,YAAY,EAAE,kBAAkB,EAAE,MAAM,aAAa,CAAC;AACpF,OAAO,EAA2B,KAAK,uBAAuB,EAAE,MAAM,kBAAkB,CAAC;AAEzF;;;GAGG;AACH,qBAAa,qBAAsB,YAAW,cAAc;IAC3D,IAAI,SAA6B;IACjC,WAAW,SAAyD;IAEpE,OAAO,CAAC,QAAQ,CAA0C;gBAE9C,eAAe,GAAE,cAAc,EAAO;IAMlD;;OAEG;IACH,SAAS,CAAC,MAAM,EAAE,cAAc,GAAG,IAAI;IAIvC;;OAEG;IACH,YAAY,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI;IAIhC;;OAEG;IACH,KAAK,IAAI,IAAI;IAIb;;;OAGG;IACH,eAAe,CAAC,OAAO,EAAE,uBAAuB,EAAE,EAAE,OAAO,UAAQ,GAAG,IAAI;IAU1E;;OAEG;IACH,WAAW,IAAI,cAAc,EAAE;IAI/B;;;OAGG;IACG,KAAK,CACV,QAAQ,EAAE,MAAM,EAChB,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC7B,aAAa,EAAE,CAAC,KAAK,EAAE,OAAO,KAAK,kBAAkB,GAAG,IAAI,GAC1D,OAAO,CAAC,YAAY,CAAC;CAuBxB"}
|
|
@@ -1,75 +0,0 @@
|
|
|
1
|
-
import { createDeclarativePolicy } from './declarative.js';
|
|
2
|
-
/**
|
|
3
|
-
* A dynamic registry that manages multiple policies and acts as a single SecurityPolicy.
|
|
4
|
-
* This allows policies to be updated at runtime (e.g. from a UI or database) without restarting the server.
|
|
5
|
-
*/
|
|
6
|
-
export class DynamicPolicyRegistry {
|
|
7
|
-
name = 'dynamic-policy-registry';
|
|
8
|
-
description = 'Container for dynamically managed security policies';
|
|
9
|
-
policies = new Map();
|
|
10
|
-
constructor(initialPolicies = []) {
|
|
11
|
-
for (const policy of initialPolicies) {
|
|
12
|
-
this.policies.set(policy.name, policy);
|
|
13
|
-
}
|
|
14
|
-
}
|
|
15
|
-
/**
|
|
16
|
-
* Add or update a policy
|
|
17
|
-
*/
|
|
18
|
-
addPolicy(policy) {
|
|
19
|
-
this.policies.set(policy.name, policy);
|
|
20
|
-
}
|
|
21
|
-
/**
|
|
22
|
-
* Remove a policy by name
|
|
23
|
-
*/
|
|
24
|
-
removePolicy(name) {
|
|
25
|
-
this.policies.delete(name);
|
|
26
|
-
}
|
|
27
|
-
/**
|
|
28
|
-
* clear all policies
|
|
29
|
-
*/
|
|
30
|
-
clear() {
|
|
31
|
-
this.policies.clear();
|
|
32
|
-
}
|
|
33
|
-
/**
|
|
34
|
-
* Load policies from declarative configurations (JSON)
|
|
35
|
-
* This is useful for loading policies saved from a UI
|
|
36
|
-
*/
|
|
37
|
-
loadFromConfigs(configs, replace = false) {
|
|
38
|
-
if (replace) {
|
|
39
|
-
this.policies.clear();
|
|
40
|
-
}
|
|
41
|
-
for (const config of configs) {
|
|
42
|
-
const policy = createDeclarativePolicy(config);
|
|
43
|
-
this.policies.set(policy.name, policy);
|
|
44
|
-
}
|
|
45
|
-
}
|
|
46
|
-
/**
|
|
47
|
-
* Get all registered policies
|
|
48
|
-
*/
|
|
49
|
-
getPolicies() {
|
|
50
|
-
return Array.from(this.policies.values());
|
|
51
|
-
}
|
|
52
|
-
/**
|
|
53
|
-
* Implementation of the SecurityPolicy check interface.
|
|
54
|
-
* Delegates to all registered policies.
|
|
55
|
-
*/
|
|
56
|
-
async check(toolName, args, getProvenance) {
|
|
57
|
-
let requiresApproval = null;
|
|
58
|
-
for (const policy of this.policies.values()) {
|
|
59
|
-
const result = await policy.check(toolName, args, getProvenance);
|
|
60
|
-
if (result.action === 'block') {
|
|
61
|
-
return result;
|
|
62
|
-
}
|
|
63
|
-
if (result.action === 'approve') {
|
|
64
|
-
if (!requiresApproval) {
|
|
65
|
-
requiresApproval = result;
|
|
66
|
-
}
|
|
67
|
-
}
|
|
68
|
-
}
|
|
69
|
-
if (requiresApproval) {
|
|
70
|
-
return requiresApproval;
|
|
71
|
-
}
|
|
72
|
-
return { action: 'log' };
|
|
73
|
-
}
|
|
74
|
-
}
|
|
75
|
-
//# sourceMappingURL=dynamic.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"dynamic.js","sourceRoot":"","sources":["../../../../../provenance/src/policies/dynamic.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,uBAAuB,EAAgC,MAAM,kBAAkB,CAAC;AAEzF;;;GAGG;AACH,MAAM,OAAO,qBAAqB;IACjC,IAAI,GAAG,yBAAyB,CAAC;IACjC,WAAW,GAAG,qDAAqD,CAAC;IAE5D,QAAQ,GAAgC,IAAI,GAAG,EAAE,CAAC;IAE1D,YAAY,kBAAoC,EAAE;QACjD,KAAK,MAAM,MAAM,IAAI,eAAe,EAAE,CAAC;YACtC,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;QACxC,CAAC;IACF,CAAC;IAED;;OAEG;IACH,SAAS,CAAC,MAAsB;QAC/B,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;IACxC,CAAC;IAED;;OAEG;IACH,YAAY,CAAC,IAAY;QACxB,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;IAC5B,CAAC;IAED;;OAEG;IACH,KAAK;QACJ,IAAI,CAAC,QAAQ,CAAC,KAAK,EAAE,CAAC;IACvB,CAAC;IAED;;;OAGG;IACH,eAAe,CAAC,OAAkC,EAAE,OAAO,GAAG,KAAK;QAClE,IAAI,OAAO,EAAE,CAAC;YACb,IAAI,CAAC,QAAQ,CAAC,KAAK,EAAE,CAAC;QACvB,CAAC;QACD,KAAK,MAAM,MAAM,IAAI,OAAO,EAAE,CAAC;YAC9B,MAAM,MAAM,GAAG,uBAAuB,CAAC,MAAM,CAAC,CAAC;YAC/C,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;QACxC,CAAC;IACF,CAAC;IAED;;OAEG;IACH,WAAW;QACV,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,MAAM,EAAE,CAAC,CAAC;IAC3C,CAAC;IAED;;;OAGG;IACH,KAAK,CAAC,KAAK,CACV,QAAgB,EAChB,IAA6B,EAC7B,aAA4D;QAE5D,IAAI,gBAAgB,GAAwB,IAAI,CAAC;QAEjD,KAAK,MAAM,MAAM,IAAI,IAAI,CAAC,QAAQ,CAAC,MAAM,EAAE,EAAE,CAAC;YAC7C,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,KAAK,CAAC,QAAQ,EAAE,IAAI,EAAE,aAAa,CAAC,CAAC;YAEjE,IAAI,MAAM,CAAC,MAAM,KAAK,OAAO,EAAE,CAAC;gBAC/B,OAAO,MAAM,CAAC;YACf,CAAC;YAED,IAAI,MAAM,CAAC,MAAM,KAAK,SAAS,EAAE,CAAC;gBACjC,IAAI,CAAC,gBAAgB,EAAE,CAAC;oBACvB,gBAAgB,GAAG,MAAM,CAAC;gBAC3B,CAAC;YACF,CAAC;QACF,CAAC;QAED,IAAI,gBAAgB,EAAE,CAAC;YACtB,OAAO,gBAAgB,CAAC;QACzB,CAAC;QAED,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC;IAC1B,CAAC;CACD"}
|
|
@@ -1,71 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Security Policy Engine
|
|
3
|
-
*
|
|
4
|
-
*/
|
|
5
|
-
import type { SecurityPolicy } from '../types.js';
|
|
6
|
-
export interface Logger {
|
|
7
|
-
debug: (msg: string, obj?: any) => void;
|
|
8
|
-
info: (msg: string, obj?: any) => void;
|
|
9
|
-
warn: (msg: string, obj?: any) => void;
|
|
10
|
-
error: (msg: string, obj?: any) => void;
|
|
11
|
-
}
|
|
12
|
-
export declare class SecurityPolicyEngine {
|
|
13
|
-
private policies;
|
|
14
|
-
private logger;
|
|
15
|
-
private approvalCallback?;
|
|
16
|
-
private customGetProvenance?;
|
|
17
|
-
constructor(policies: SecurityPolicy[], logger: Logger, customGetProvenance?: (value: unknown) => any);
|
|
18
|
-
/**
|
|
19
|
-
* Set a custom getProvenance function (e.g., for AST mode)
|
|
20
|
-
*/
|
|
21
|
-
setGetProvenance(fn: (value: unknown) => any): void;
|
|
22
|
-
/**
|
|
23
|
-
* Set approval callback for policies that return action='approve'
|
|
24
|
-
*/
|
|
25
|
-
setApprovalCallback(callback: (message: string, context: Record<string, unknown>) => Promise<boolean>): void;
|
|
26
|
-
checkTool(toolName: string, apiGroup: string, args: Record<string, unknown>): Promise<void>;
|
|
27
|
-
private normalizeAction;
|
|
28
|
-
private requestApproval;
|
|
29
|
-
private sanitizeArgs;
|
|
30
|
-
}
|
|
31
|
-
/**
|
|
32
|
-
* Prevent data exfiltration - blocks sending private data to unauthorized recipients
|
|
33
|
-
*/
|
|
34
|
-
export declare const preventDataExfiltration: SecurityPolicy;
|
|
35
|
-
/**
|
|
36
|
-
* Prevent data exfiltration (approval mode) - requires approval for risky sends
|
|
37
|
-
*/
|
|
38
|
-
export declare const preventDataExfiltrationWithApproval: SecurityPolicy;
|
|
39
|
-
/**
|
|
40
|
-
* Require user origin - ensures sensitive operations only use user-provided data
|
|
41
|
-
*/
|
|
42
|
-
export declare const requireUserOrigin: SecurityPolicy;
|
|
43
|
-
/**
|
|
44
|
-
* Require user origin (approval mode) - requires approval for non-user-originated critical operations
|
|
45
|
-
*/
|
|
46
|
-
export declare const requireUserOriginWithApproval: SecurityPolicy;
|
|
47
|
-
/**
|
|
48
|
-
* Block LLM-generated recipients - prevents sending to LLM-extracted emails
|
|
49
|
-
*/
|
|
50
|
-
export declare const blockLLMRecipients: SecurityPolicy;
|
|
51
|
-
/**
|
|
52
|
-
* Block LLM-generated recipients (approval mode) - requires approval for LLM-extracted emails
|
|
53
|
-
*/
|
|
54
|
-
export declare const blockLLMRecipientsWithApproval: SecurityPolicy;
|
|
55
|
-
/**
|
|
56
|
-
* Audit sensitive data access - logs access without blocking
|
|
57
|
-
*/
|
|
58
|
-
export declare const auditSensitiveAccess: SecurityPolicy;
|
|
59
|
-
/**
|
|
60
|
-
* Helper: Create custom policy
|
|
61
|
-
*/
|
|
62
|
-
export declare function createCustomPolicy(name: string, description: string, checkFn: SecurityPolicy['check']): SecurityPolicy;
|
|
63
|
-
/**
|
|
64
|
-
* Get all built-in policies
|
|
65
|
-
*/
|
|
66
|
-
export declare function getBuiltInPolicies(): SecurityPolicy[];
|
|
67
|
-
/**
|
|
68
|
-
* Get all built-in policies with approval variants
|
|
69
|
-
*/
|
|
70
|
-
export declare function getBuiltInPoliciesWithApproval(): SecurityPolicy[];
|
|
71
|
-
//# sourceMappingURL=engine.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"engine.d.ts","sourceRoot":"","sources":["../../../../../provenance/src/policies/engine.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,OAAO,KAAK,EAAE,cAAc,EAAkD,MAAM,aAAa,CAAC;AASlG,MAAM,WAAW,MAAM;IACtB,KAAK,EAAE,CAAC,GAAG,EAAE,MAAM,EAAE,GAAG,CAAC,EAAE,GAAG,KAAK,IAAI,CAAC;IACxC,IAAI,EAAE,CAAC,GAAG,EAAE,MAAM,EAAE,GAAG,CAAC,EAAE,GAAG,KAAK,IAAI,CAAC;IACvC,IAAI,EAAE,CAAC,GAAG,EAAE,MAAM,EAAE,GAAG,CAAC,EAAE,GAAG,KAAK,IAAI,CAAC;IACvC,KAAK,EAAE,CAAC,GAAG,EAAE,MAAM,EAAE,GAAG,CAAC,EAAE,GAAG,KAAK,IAAI,CAAC;CACxC;AAED,qBAAa,oBAAoB;IAChC,OAAO,CAAC,QAAQ,CAAmB;IACnC,OAAO,CAAC,MAAM,CAAS;IACvB,OAAO,CAAC,gBAAgB,CAAC,CAGH;IACtB,OAAO,CAAC,mBAAmB,CAAC,CAA0B;gBAGrD,QAAQ,EAAE,cAAc,EAAE,EAC1B,MAAM,EAAE,MAAM,EACd,mBAAmB,CAAC,EAAE,CAAC,KAAK,EAAE,OAAO,KAAK,GAAG;IAO9C;;OAEG;IACH,gBAAgB,CAAC,EAAE,EAAE,CAAC,KAAK,EAAE,OAAO,KAAK,GAAG,GAAG,IAAI;IAInD;;OAEG;IACH,mBAAmB,CAClB,QAAQ,EAAE,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,KAAK,OAAO,CAAC,OAAO,CAAC,GAC/E,IAAI;IAID,SAAS,CACd,QAAQ,EAAE,MAAM,EAChB,QAAQ,EAAE,MAAM,EAChB,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAC3B,OAAO,CAAC,IAAI,CAAC;IA8EhB,OAAO,CAAC,eAAe;YAYT,eAAe;IAmC7B,OAAO,CAAC,YAAY;CAapB;AA+DD;;GAEG;AACH,eAAO,MAAM,uBAAuB,EAAE,cA0CrC,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,mCAAmC,EAAE,cA0CjD,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,iBAAiB,EAAE,cAkC/B,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,6BAA6B,EAAE,cAmC3C,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,kBAAkB,EAAE,cAyBhC,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,8BAA8B,EAAE,cA0B5C,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,oBAAoB,EAAE,cAyBlC,CAAC;AAEF;;GAEG;AACH,wBAAgB,kBAAkB,CACjC,IAAI,EAAE,MAAM,EACZ,WAAW,EAAE,MAAM,EACnB,OAAO,EAAE,cAAc,CAAC,OAAO,CAAC,GAC9B,cAAc,CAEhB;AAED;;GAEG;AACH,wBAAgB,kBAAkB,IAAI,cAAc,EAAE,CAErD;AAED;;GAEG;AACH,wBAAgB,8BAA8B,IAAI,cAAc,EAAE,CAOjE"}
|