@vurb/core 3.2.0
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/README.md +677 -0
- package/dist/cli/args.d.ts +26 -0
- package/dist/cli/args.d.ts.map +1 -0
- package/dist/cli/args.js +117 -0
- package/dist/cli/args.js.map +1 -0
- package/dist/cli/commands/create.d.ts +11 -0
- package/dist/cli/commands/create.d.ts.map +1 -0
- package/dist/cli/commands/create.js +121 -0
- package/dist/cli/commands/create.js.map +1 -0
- package/dist/cli/commands/deploy.d.ts +3 -0
- package/dist/cli/commands/deploy.d.ts.map +1 -0
- package/dist/cli/commands/deploy.js +268 -0
- package/dist/cli/commands/deploy.js.map +1 -0
- package/dist/cli/commands/dev.d.ts +9 -0
- package/dist/cli/commands/dev.d.ts.map +1 -0
- package/dist/cli/commands/dev.js +58 -0
- package/dist/cli/commands/dev.js.map +1 -0
- package/dist/cli/commands/lock.d.ts +5 -0
- package/dist/cli/commands/lock.d.ts.map +1 -0
- package/dist/cli/commands/lock.js +94 -0
- package/dist/cli/commands/lock.js.map +1 -0
- package/dist/cli/commands/remote.d.ts +3 -0
- package/dist/cli/commands/remote.d.ts.map +1 -0
- package/dist/cli/commands/remote.js +37 -0
- package/dist/cli/commands/remote.js.map +1 -0
- package/dist/cli/constants.d.ts +18 -0
- package/dist/cli/constants.d.ts.map +1 -0
- package/dist/cli/constants.js +95 -0
- package/dist/cli/constants.js.map +1 -0
- package/dist/cli/progress.d.ts +34 -0
- package/dist/cli/progress.d.ts.map +1 -0
- package/dist/cli/progress.js +102 -0
- package/dist/cli/progress.js.map +1 -0
- package/dist/cli/rc.d.ts +11 -0
- package/dist/cli/rc.d.ts.map +1 -0
- package/dist/cli/rc.js +75 -0
- package/dist/cli/rc.js.map +1 -0
- package/dist/cli/registry.d.ts +25 -0
- package/dist/cli/registry.d.ts.map +1 -0
- package/dist/cli/registry.js +86 -0
- package/dist/cli/registry.js.map +1 -0
- package/dist/cli/scaffold.d.ts +10 -0
- package/dist/cli/scaffold.d.ts.map +1 -0
- package/dist/cli/scaffold.js +105 -0
- package/dist/cli/scaffold.js.map +1 -0
- package/dist/cli/templates/config.d.ts +14 -0
- package/dist/cli/templates/config.d.ts.map +1 -0
- package/dist/cli/templates/config.js +133 -0
- package/dist/cli/templates/config.js.map +1 -0
- package/dist/cli/templates/constants.d.ts +9 -0
- package/dist/cli/templates/constants.d.ts.map +1 -0
- package/dist/cli/templates/constants.js +9 -0
- package/dist/cli/templates/constants.js.map +1 -0
- package/dist/cli/templates/core.d.ts +14 -0
- package/dist/cli/templates/core.d.ts.map +1 -0
- package/dist/cli/templates/core.js +186 -0
- package/dist/cli/templates/core.js.map +1 -0
- package/dist/cli/templates/cursor.d.ts +8 -0
- package/dist/cli/templates/cursor.d.ts.map +1 -0
- package/dist/cli/templates/cursor.js +13 -0
- package/dist/cli/templates/cursor.js.map +1 -0
- package/dist/cli/templates/index.d.ts +17 -0
- package/dist/cli/templates/index.d.ts.map +1 -0
- package/dist/cli/templates/index.js +27 -0
- package/dist/cli/templates/index.js.map +1 -0
- package/dist/cli/templates/middleware.d.ts +7 -0
- package/dist/cli/templates/middleware.d.ts.map +1 -0
- package/dist/cli/templates/middleware.js +34 -0
- package/dist/cli/templates/middleware.js.map +1 -0
- package/dist/cli/templates/presenter.d.ts +7 -0
- package/dist/cli/templates/presenter.d.ts.map +1 -0
- package/dist/cli/templates/presenter.js +46 -0
- package/dist/cli/templates/presenter.js.map +1 -0
- package/dist/cli/templates/prompt.d.ts +7 -0
- package/dist/cli/templates/prompt.d.ts.map +1 -0
- package/dist/cli/templates/prompt.js +42 -0
- package/dist/cli/templates/prompt.js.map +1 -0
- package/dist/cli/templates/readme.d.ts +8 -0
- package/dist/cli/templates/readme.d.ts.map +1 -0
- package/dist/cli/templates/readme.js +173 -0
- package/dist/cli/templates/readme.js.map +1 -0
- package/dist/cli/templates/testing.d.ts +11 -0
- package/dist/cli/templates/testing.d.ts.map +1 -0
- package/dist/cli/templates/testing.js +101 -0
- package/dist/cli/templates/testing.js.map +1 -0
- package/dist/cli/templates/tools.d.ts +13 -0
- package/dist/cli/templates/tools.d.ts.map +1 -0
- package/dist/cli/templates/tools.js +63 -0
- package/dist/cli/templates/tools.js.map +1 -0
- package/dist/cli/templates/vectors/database.d.ts +9 -0
- package/dist/cli/templates/vectors/database.d.ts.map +1 -0
- package/dist/cli/templates/vectors/database.js +82 -0
- package/dist/cli/templates/vectors/database.js.map +1 -0
- package/dist/cli/templates/vectors/index.d.ts +9 -0
- package/dist/cli/templates/vectors/index.d.ts.map +1 -0
- package/dist/cli/templates/vectors/index.js +9 -0
- package/dist/cli/templates/vectors/index.js.map +1 -0
- package/dist/cli/templates/vectors/oauth.d.ts +10 -0
- package/dist/cli/templates/vectors/oauth.d.ts.map +1 -0
- package/dist/cli/templates/vectors/oauth.js +76 -0
- package/dist/cli/templates/vectors/oauth.js.map +1 -0
- package/dist/cli/templates/vectors/openapi.d.ts +10 -0
- package/dist/cli/templates/vectors/openapi.d.ts.map +1 -0
- package/dist/cli/templates/vectors/openapi.js +106 -0
- package/dist/cli/templates/vectors/openapi.js.map +1 -0
- package/dist/cli/templates/vectors/workflow.d.ts +7 -0
- package/dist/cli/templates/vectors/workflow.d.ts.map +1 -0
- package/dist/cli/templates/vectors/workflow.js +49 -0
- package/dist/cli/templates/vectors/workflow.js.map +1 -0
- package/dist/cli/types.d.ts +36 -0
- package/dist/cli/types.d.ts.map +1 -0
- package/dist/cli/types.js +10 -0
- package/dist/cli/types.js.map +1 -0
- package/dist/cli/utils.d.ts +27 -0
- package/dist/cli/utils.d.ts.map +1 -0
- package/dist/cli/utils.js +73 -0
- package/dist/cli/utils.js.map +1 -0
- package/dist/cli/vurb.d.ts +15 -0
- package/dist/cli/vurb.d.ts.map +1 -0
- package/dist/cli/vurb.js +87 -0
- package/dist/cli/vurb.js.map +1 -0
- package/dist/client/InferRouter.d.ts +92 -0
- package/dist/client/InferRouter.d.ts.map +1 -0
- package/dist/client/InferRouter.js +31 -0
- package/dist/client/InferRouter.js.map +1 -0
- package/dist/client/VurbClient.d.ts +282 -0
- package/dist/client/VurbClient.d.ts.map +1 -0
- package/dist/client/VurbClient.js +287 -0
- package/dist/client/VurbClient.js.map +1 -0
- package/dist/client/createTypedRegistry.d.ts +25 -0
- package/dist/client/createTypedRegistry.d.ts.map +1 -0
- package/dist/client/createTypedRegistry.js +74 -0
- package/dist/client/createTypedRegistry.js.map +1 -0
- package/dist/client/index.d.ts +6 -0
- package/dist/client/index.d.ts.map +1 -0
- package/dist/client/index.js +4 -0
- package/dist/client/index.js.map +1 -0
- package/dist/converters/ConverterBase.d.ts +68 -0
- package/dist/converters/ConverterBase.d.ts.map +1 -0
- package/dist/converters/ConverterBase.js +62 -0
- package/dist/converters/ConverterBase.js.map +1 -0
- package/dist/converters/GroupConverter.d.ts +33 -0
- package/dist/converters/GroupConverter.d.ts.map +1 -0
- package/dist/converters/GroupConverter.js +26 -0
- package/dist/converters/GroupConverter.js.map +1 -0
- package/dist/converters/PromptConverter.d.ts +33 -0
- package/dist/converters/PromptConverter.d.ts.map +1 -0
- package/dist/converters/PromptConverter.js +26 -0
- package/dist/converters/PromptConverter.js.map +1 -0
- package/dist/converters/ResourceConverter.d.ts +35 -0
- package/dist/converters/ResourceConverter.d.ts.map +1 -0
- package/dist/converters/ResourceConverter.js +28 -0
- package/dist/converters/ResourceConverter.js.map +1 -0
- package/dist/converters/ToolAnnotationsConverter.d.ts +33 -0
- package/dist/converters/ToolAnnotationsConverter.d.ts.map +1 -0
- package/dist/converters/ToolAnnotationsConverter.js +26 -0
- package/dist/converters/ToolAnnotationsConverter.js.map +1 -0
- package/dist/converters/ToolConverter.d.ts +35 -0
- package/dist/converters/ToolConverter.d.ts.map +1 -0
- package/dist/converters/ToolConverter.js +28 -0
- package/dist/converters/ToolConverter.js.map +1 -0
- package/dist/converters/index.d.ts +7 -0
- package/dist/converters/index.d.ts.map +1 -0
- package/dist/converters/index.js +7 -0
- package/dist/converters/index.js.map +1 -0
- package/dist/core/StandardSchema.d.ts +178 -0
- package/dist/core/StandardSchema.d.ts.map +1 -0
- package/dist/core/StandardSchema.js +174 -0
- package/dist/core/StandardSchema.js.map +1 -0
- package/dist/core/builder/ActionGroupBuilder.d.ts +208 -0
- package/dist/core/builder/ActionGroupBuilder.d.ts.map +1 -0
- package/dist/core/builder/ActionGroupBuilder.js +193 -0
- package/dist/core/builder/ActionGroupBuilder.js.map +1 -0
- package/dist/core/builder/ErrorBuilder.d.ts +59 -0
- package/dist/core/builder/ErrorBuilder.d.ts.map +1 -0
- package/dist/core/builder/ErrorBuilder.js +99 -0
- package/dist/core/builder/ErrorBuilder.js.map +1 -0
- package/dist/core/builder/FluentRouter.d.ts +96 -0
- package/dist/core/builder/FluentRouter.d.ts.map +1 -0
- package/dist/core/builder/FluentRouter.js +116 -0
- package/dist/core/builder/FluentRouter.js.map +1 -0
- package/dist/core/builder/FluentSchemaHelpers.d.ts +237 -0
- package/dist/core/builder/FluentSchemaHelpers.d.ts.map +1 -0
- package/dist/core/builder/FluentSchemaHelpers.js +227 -0
- package/dist/core/builder/FluentSchemaHelpers.js.map +1 -0
- package/dist/core/builder/FluentToolBuilder.d.ts +419 -0
- package/dist/core/builder/FluentToolBuilder.d.ts.map +1 -0
- package/dist/core/builder/FluentToolBuilder.js +643 -0
- package/dist/core/builder/FluentToolBuilder.js.map +1 -0
- package/dist/core/builder/GroupedToolBuilder.d.ts +832 -0
- package/dist/core/builder/GroupedToolBuilder.d.ts.map +1 -0
- package/dist/core/builder/GroupedToolBuilder.js +1306 -0
- package/dist/core/builder/GroupedToolBuilder.js.map +1 -0
- package/dist/core/builder/ParamDescriptors.d.ts +142 -0
- package/dist/core/builder/ParamDescriptors.d.ts.map +1 -0
- package/dist/core/builder/ParamDescriptors.js +164 -0
- package/dist/core/builder/ParamDescriptors.js.map +1 -0
- package/dist/core/builder/ToolDefinitionCompiler.d.ts +37 -0
- package/dist/core/builder/ToolDefinitionCompiler.d.ts.map +1 -0
- package/dist/core/builder/ToolDefinitionCompiler.js +72 -0
- package/dist/core/builder/ToolDefinitionCompiler.js.map +1 -0
- package/dist/core/builder/defineTool.d.ts +180 -0
- package/dist/core/builder/defineTool.d.ts.map +1 -0
- package/dist/core/builder/defineTool.js +164 -0
- package/dist/core/builder/defineTool.js.map +1 -0
- package/dist/core/builder/index.d.ts +13 -0
- package/dist/core/builder/index.d.ts.map +1 -0
- package/dist/core/builder/index.js +13 -0
- package/dist/core/builder/index.js.map +1 -0
- package/dist/core/createGroup.d.ts +140 -0
- package/dist/core/createGroup.d.ts.map +1 -0
- package/dist/core/createGroup.js +144 -0
- package/dist/core/createGroup.js.map +1 -0
- package/dist/core/execution/ConcurrencyGuard.d.ts +103 -0
- package/dist/core/execution/ConcurrencyGuard.d.ts.map +1 -0
- package/dist/core/execution/ConcurrencyGuard.js +147 -0
- package/dist/core/execution/ConcurrencyGuard.js.map +1 -0
- package/dist/core/execution/EgressGuard.d.ts +72 -0
- package/dist/core/execution/EgressGuard.d.ts.map +1 -0
- package/dist/core/execution/EgressGuard.js +163 -0
- package/dist/core/execution/EgressGuard.js.map +1 -0
- package/dist/core/execution/ExecutionPipeline.d.ts +67 -0
- package/dist/core/execution/ExecutionPipeline.d.ts.map +1 -0
- package/dist/core/execution/ExecutionPipeline.js +176 -0
- package/dist/core/execution/ExecutionPipeline.js.map +1 -0
- package/dist/core/execution/MiddlewareCompiler.d.ts +35 -0
- package/dist/core/execution/MiddlewareCompiler.d.ts.map +1 -0
- package/dist/core/execution/MiddlewareCompiler.js +111 -0
- package/dist/core/execution/MiddlewareCompiler.js.map +1 -0
- package/dist/core/execution/MutationSerializer.d.ts +78 -0
- package/dist/core/execution/MutationSerializer.d.ts.map +1 -0
- package/dist/core/execution/MutationSerializer.js +106 -0
- package/dist/core/execution/MutationSerializer.js.map +1 -0
- package/dist/core/execution/PipelineHooks.d.ts +46 -0
- package/dist/core/execution/PipelineHooks.d.ts.map +1 -0
- package/dist/core/execution/PipelineHooks.js +66 -0
- package/dist/core/execution/PipelineHooks.js.map +1 -0
- package/dist/core/execution/ProgressHelper.d.ts +67 -0
- package/dist/core/execution/ProgressHelper.d.ts.map +1 -0
- package/dist/core/execution/ProgressHelper.js +59 -0
- package/dist/core/execution/ProgressHelper.js.map +1 -0
- package/dist/core/execution/ValidationErrorFormatter.d.ts +34 -0
- package/dist/core/execution/ValidationErrorFormatter.d.ts.map +1 -0
- package/dist/core/execution/ValidationErrorFormatter.js +193 -0
- package/dist/core/execution/ValidationErrorFormatter.js.map +1 -0
- package/dist/core/execution/index.d.ts +9 -0
- package/dist/core/execution/index.d.ts.map +1 -0
- package/dist/core/execution/index.js +9 -0
- package/dist/core/execution/index.js.map +1 -0
- package/dist/core/index.d.ts +34 -0
- package/dist/core/index.d.ts.map +1 -0
- package/dist/core/index.js +29 -0
- package/dist/core/index.js.map +1 -0
- package/dist/core/initVurb.d.ts +295 -0
- package/dist/core/initVurb.d.ts.map +1 -0
- package/dist/core/initVurb.js +171 -0
- package/dist/core/initVurb.js.map +1 -0
- package/dist/core/middleware/ContextDerivation.d.ts +124 -0
- package/dist/core/middleware/ContextDerivation.d.ts.map +1 -0
- package/dist/core/middleware/ContextDerivation.js +117 -0
- package/dist/core/middleware/ContextDerivation.js.map +1 -0
- package/dist/core/middleware/index.d.ts +4 -0
- package/dist/core/middleware/index.d.ts.map +1 -0
- package/dist/core/middleware/index.js +3 -0
- package/dist/core/middleware/index.js.map +1 -0
- package/dist/core/registry/ToolFilterEngine.d.ts +27 -0
- package/dist/core/registry/ToolFilterEngine.d.ts.map +1 -0
- package/dist/core/registry/ToolFilterEngine.js +45 -0
- package/dist/core/registry/ToolFilterEngine.js.map +1 -0
- package/dist/core/registry/ToolRegistry.d.ts +259 -0
- package/dist/core/registry/ToolRegistry.d.ts.map +1 -0
- package/dist/core/registry/ToolRegistry.js +343 -0
- package/dist/core/registry/ToolRegistry.js.map +1 -0
- package/dist/core/registry/index.d.ts +4 -0
- package/dist/core/registry/index.d.ts.map +1 -0
- package/dist/core/registry/index.js +3 -0
- package/dist/core/registry/index.js.map +1 -0
- package/dist/core/response.d.ts +289 -0
- package/dist/core/response.d.ts.map +1 -0
- package/dist/core/response.js +286 -0
- package/dist/core/response.js.map +1 -0
- package/dist/core/result.d.ts +93 -0
- package/dist/core/result.d.ts.map +1 -0
- package/dist/core/result.js +66 -0
- package/dist/core/result.js.map +1 -0
- package/dist/core/schema/AnnotationAggregator.d.ts +11 -0
- package/dist/core/schema/AnnotationAggregator.d.ts.map +1 -0
- package/dist/core/schema/AnnotationAggregator.js +40 -0
- package/dist/core/schema/AnnotationAggregator.js.map +1 -0
- package/dist/core/schema/DescriptionGenerator.d.ts +12 -0
- package/dist/core/schema/DescriptionGenerator.d.ts.map +1 -0
- package/dist/core/schema/DescriptionGenerator.js +81 -0
- package/dist/core/schema/DescriptionGenerator.js.map +1 -0
- package/dist/core/schema/SchemaGenerator.d.ts +15 -0
- package/dist/core/schema/SchemaGenerator.d.ts.map +1 -0
- package/dist/core/schema/SchemaGenerator.js +192 -0
- package/dist/core/schema/SchemaGenerator.js.map +1 -0
- package/dist/core/schema/SchemaUtils.d.ts +26 -0
- package/dist/core/schema/SchemaUtils.d.ts.map +1 -0
- package/dist/core/schema/SchemaUtils.js +85 -0
- package/dist/core/schema/SchemaUtils.js.map +1 -0
- package/dist/core/schema/ToonDescriptionGenerator.d.ts +3 -0
- package/dist/core/schema/ToonDescriptionGenerator.d.ts.map +1 -0
- package/dist/core/schema/ToonDescriptionGenerator.js +65 -0
- package/dist/core/schema/ToonDescriptionGenerator.js.map +1 -0
- package/dist/core/schema/index.d.ts +7 -0
- package/dist/core/schema/index.d.ts.map +1 -0
- package/dist/core/schema/index.js +7 -0
- package/dist/core/schema/index.js.map +1 -0
- package/dist/core/serialization/JsonSerializer.d.ts +71 -0
- package/dist/core/serialization/JsonSerializer.d.ts.map +1 -0
- package/dist/core/serialization/JsonSerializer.js +192 -0
- package/dist/core/serialization/JsonSerializer.js.map +1 -0
- package/dist/core/serialization/index.d.ts +7 -0
- package/dist/core/serialization/index.d.ts.map +1 -0
- package/dist/core/serialization/index.js +7 -0
- package/dist/core/serialization/index.js.map +1 -0
- package/dist/core/types.d.ts +303 -0
- package/dist/core/types.d.ts.map +1 -0
- package/dist/core/types.js +17 -0
- package/dist/core/types.js.map +1 -0
- package/dist/domain/Annotations.d.ts +42 -0
- package/dist/domain/Annotations.d.ts.map +1 -0
- package/dist/domain/Annotations.js +16 -0
- package/dist/domain/Annotations.js.map +1 -0
- package/dist/domain/BaseModel.d.ts +50 -0
- package/dist/domain/BaseModel.d.ts.map +1 -0
- package/dist/domain/BaseModel.js +41 -0
- package/dist/domain/BaseModel.js.map +1 -0
- package/dist/domain/Group.d.ts +99 -0
- package/dist/domain/Group.d.ts.map +1 -0
- package/dist/domain/Group.js +172 -0
- package/dist/domain/Group.js.map +1 -0
- package/dist/domain/GroupItem.d.ts +46 -0
- package/dist/domain/GroupItem.d.ts.map +1 -0
- package/dist/domain/GroupItem.js +58 -0
- package/dist/domain/GroupItem.js.map +1 -0
- package/dist/domain/Icon.d.ts +41 -0
- package/dist/domain/Icon.d.ts.map +1 -0
- package/dist/domain/Icon.js +15 -0
- package/dist/domain/Icon.js.map +1 -0
- package/dist/domain/Prompt.d.ts +49 -0
- package/dist/domain/Prompt.d.ts.map +1 -0
- package/dist/domain/Prompt.js +59 -0
- package/dist/domain/Prompt.js.map +1 -0
- package/dist/domain/PromptArgument.d.ts +23 -0
- package/dist/domain/PromptArgument.d.ts.map +1 -0
- package/dist/domain/PromptArgument.js +27 -0
- package/dist/domain/PromptArgument.js.map +1 -0
- package/dist/domain/Resource.d.ts +37 -0
- package/dist/domain/Resource.d.ts.map +1 -0
- package/dist/domain/Resource.js +39 -0
- package/dist/domain/Resource.js.map +1 -0
- package/dist/domain/Role.d.ts +23 -0
- package/dist/domain/Role.d.ts.map +1 -0
- package/dist/domain/Role.js +24 -0
- package/dist/domain/Role.js.map +1 -0
- package/dist/domain/Tool.d.ts +39 -0
- package/dist/domain/Tool.d.ts.map +1 -0
- package/dist/domain/Tool.js +41 -0
- package/dist/domain/Tool.js.map +1 -0
- package/dist/domain/ToolAnnotations.d.ts +48 -0
- package/dist/domain/ToolAnnotations.d.ts.map +1 -0
- package/dist/domain/ToolAnnotations.js +15 -0
- package/dist/domain/ToolAnnotations.js.map +1 -0
- package/dist/domain/index.d.ts +16 -0
- package/dist/domain/index.d.ts.map +1 -0
- package/dist/domain/index.js +13 -0
- package/dist/domain/index.js.map +1 -0
- package/dist/domain/utils.d.ts +6 -0
- package/dist/domain/utils.d.ts.map +1 -0
- package/dist/domain/utils.js +12 -0
- package/dist/domain/utils.js.map +1 -0
- package/dist/edge-stub.d.ts +73 -0
- package/dist/edge-stub.d.ts.map +1 -0
- package/dist/edge-stub.js +83 -0
- package/dist/edge-stub.js.map +1 -0
- package/dist/exposition/ExpositionCompiler.d.ts +66 -0
- package/dist/exposition/ExpositionCompiler.d.ts.map +1 -0
- package/dist/exposition/ExpositionCompiler.js +279 -0
- package/dist/exposition/ExpositionCompiler.js.map +1 -0
- package/dist/exposition/index.d.ts +4 -0
- package/dist/exposition/index.d.ts.map +1 -0
- package/dist/exposition/index.js +2 -0
- package/dist/exposition/index.js.map +1 -0
- package/dist/exposition/types.d.ts +58 -0
- package/dist/exposition/types.d.ts.map +1 -0
- package/dist/exposition/types.js +11 -0
- package/dist/exposition/types.js.map +1 -0
- package/dist/fsm/StateMachineGate.d.ts +294 -0
- package/dist/fsm/StateMachineGate.d.ts.map +1 -0
- package/dist/fsm/StateMachineGate.js +400 -0
- package/dist/fsm/StateMachineGate.js.map +1 -0
- package/dist/index.d.ts +148 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +112 -0
- package/dist/index.js.map +1 -0
- package/dist/introspection/BehaviorDigest.d.ts +112 -0
- package/dist/introspection/BehaviorDigest.d.ts.map +1 -0
- package/dist/introspection/BehaviorDigest.js +149 -0
- package/dist/introspection/BehaviorDigest.js.map +1 -0
- package/dist/introspection/CapabilityLockfile.d.ts +261 -0
- package/dist/introspection/CapabilityLockfile.d.ts.map +1 -0
- package/dist/introspection/CapabilityLockfile.js +395 -0
- package/dist/introspection/CapabilityLockfile.js.map +1 -0
- package/dist/introspection/ContractAwareSelfHealing.d.ts +90 -0
- package/dist/introspection/ContractAwareSelfHealing.d.ts.map +1 -0
- package/dist/introspection/ContractAwareSelfHealing.js +132 -0
- package/dist/introspection/ContractAwareSelfHealing.js.map +1 -0
- package/dist/introspection/ContractDiff.d.ts +91 -0
- package/dist/introspection/ContractDiff.d.ts.map +1 -0
- package/dist/introspection/ContractDiff.js +466 -0
- package/dist/introspection/ContractDiff.js.map +1 -0
- package/dist/introspection/CryptoAttestation.d.ts +143 -0
- package/dist/introspection/CryptoAttestation.d.ts.map +1 -0
- package/dist/introspection/CryptoAttestation.js +192 -0
- package/dist/introspection/CryptoAttestation.js.map +1 -0
- package/dist/introspection/EntitlementScanner.d.ts +177 -0
- package/dist/introspection/EntitlementScanner.d.ts.map +1 -0
- package/dist/introspection/EntitlementScanner.js +459 -0
- package/dist/introspection/EntitlementScanner.js.map +1 -0
- package/dist/introspection/GovernanceObserver.d.ts +88 -0
- package/dist/introspection/GovernanceObserver.d.ts.map +1 -0
- package/dist/introspection/GovernanceObserver.js +136 -0
- package/dist/introspection/GovernanceObserver.js.map +1 -0
- package/dist/introspection/IntrospectionResource.d.ts +20 -0
- package/dist/introspection/IntrospectionResource.d.ts.map +1 -0
- package/dist/introspection/IntrospectionResource.js +112 -0
- package/dist/introspection/IntrospectionResource.js.map +1 -0
- package/dist/introspection/ManifestCompiler.d.ts +33 -0
- package/dist/introspection/ManifestCompiler.d.ts.map +1 -0
- package/dist/introspection/ManifestCompiler.js +88 -0
- package/dist/introspection/ManifestCompiler.js.map +1 -0
- package/dist/introspection/SemanticProbe.d.ts +207 -0
- package/dist/introspection/SemanticProbe.d.ts.map +1 -0
- package/dist/introspection/SemanticProbe.js +274 -0
- package/dist/introspection/SemanticProbe.js.map +1 -0
- package/dist/introspection/TokenEconomics.d.ts +210 -0
- package/dist/introspection/TokenEconomics.d.ts.map +1 -0
- package/dist/introspection/TokenEconomics.js +292 -0
- package/dist/introspection/TokenEconomics.js.map +1 -0
- package/dist/introspection/ToolContract.d.ts +161 -0
- package/dist/introspection/ToolContract.d.ts.map +1 -0
- package/dist/introspection/ToolContract.js +218 -0
- package/dist/introspection/ToolContract.js.map +1 -0
- package/dist/introspection/canonicalize.d.ts +35 -0
- package/dist/introspection/canonicalize.d.ts.map +1 -0
- package/dist/introspection/canonicalize.js +72 -0
- package/dist/introspection/canonicalize.js.map +1 -0
- package/dist/introspection/index.d.ts +26 -0
- package/dist/introspection/index.d.ts.map +1 -0
- package/dist/introspection/index.js +24 -0
- package/dist/introspection/index.js.map +1 -0
- package/dist/introspection/types.d.ts +120 -0
- package/dist/introspection/types.d.ts.map +1 -0
- package/dist/introspection/types.js +13 -0
- package/dist/introspection/types.js.map +1 -0
- package/dist/observability/DebugObserver.d.ts +185 -0
- package/dist/observability/DebugObserver.d.ts.map +1 -0
- package/dist/observability/DebugObserver.js +102 -0
- package/dist/observability/DebugObserver.js.map +1 -0
- package/dist/observability/TelemetryBus.d.ts +88 -0
- package/dist/observability/TelemetryBus.d.ts.map +1 -0
- package/dist/observability/TelemetryBus.js +463 -0
- package/dist/observability/TelemetryBus.js.map +1 -0
- package/dist/observability/TelemetryEvent.d.ts +177 -0
- package/dist/observability/TelemetryEvent.d.ts.map +1 -0
- package/dist/observability/TelemetryEvent.js +2 -0
- package/dist/observability/TelemetryEvent.js.map +1 -0
- package/dist/observability/Tracing.d.ts +155 -0
- package/dist/observability/Tracing.d.ts.map +1 -0
- package/dist/observability/Tracing.js +67 -0
- package/dist/observability/Tracing.js.map +1 -0
- package/dist/observability/index.d.ts +13 -0
- package/dist/observability/index.d.ts.map +1 -0
- package/dist/observability/index.js +12 -0
- package/dist/observability/index.js.map +1 -0
- package/dist/presenter/PostProcessor.d.ts +52 -0
- package/dist/presenter/PostProcessor.d.ts.map +1 -0
- package/dist/presenter/PostProcessor.js +148 -0
- package/dist/presenter/PostProcessor.js.map +1 -0
- package/dist/presenter/Presenter.d.ts +575 -0
- package/dist/presenter/Presenter.d.ts.map +1 -0
- package/dist/presenter/Presenter.js +768 -0
- package/dist/presenter/Presenter.js.map +1 -0
- package/dist/presenter/PresenterValidationError.d.ts +42 -0
- package/dist/presenter/PresenterValidationError.d.ts.map +1 -0
- package/dist/presenter/PresenterValidationError.js +55 -0
- package/dist/presenter/PresenterValidationError.js.map +1 -0
- package/dist/presenter/RedactEngine.d.ts +110 -0
- package/dist/presenter/RedactEngine.d.ts.map +1 -0
- package/dist/presenter/RedactEngine.js +128 -0
- package/dist/presenter/RedactEngine.js.map +1 -0
- package/dist/presenter/ResponseBuilder.d.ts +262 -0
- package/dist/presenter/ResponseBuilder.d.ts.map +1 -0
- package/dist/presenter/ResponseBuilder.js +374 -0
- package/dist/presenter/ResponseBuilder.js.map +1 -0
- package/dist/presenter/SelectUtils.d.ts +78 -0
- package/dist/presenter/SelectUtils.d.ts.map +1 -0
- package/dist/presenter/SelectUtils.js +141 -0
- package/dist/presenter/SelectUtils.js.map +1 -0
- package/dist/presenter/ZodDescriptionExtractor.d.ts +54 -0
- package/dist/presenter/ZodDescriptionExtractor.d.ts.map +1 -0
- package/dist/presenter/ZodDescriptionExtractor.js +131 -0
- package/dist/presenter/ZodDescriptionExtractor.js.map +1 -0
- package/dist/presenter/definePresenter.d.ts +193 -0
- package/dist/presenter/definePresenter.d.ts.map +1 -0
- package/dist/presenter/definePresenter.js +99 -0
- package/dist/presenter/definePresenter.js.map +1 -0
- package/dist/presenter/index.d.ts +21 -0
- package/dist/presenter/index.d.ts.map +1 -0
- package/dist/presenter/index.js +28 -0
- package/dist/presenter/index.js.map +1 -0
- package/dist/presenter/suggest.d.ts +39 -0
- package/dist/presenter/suggest.d.ts.map +1 -0
- package/dist/presenter/suggest.js +41 -0
- package/dist/presenter/suggest.js.map +1 -0
- package/dist/presenter/typeHelpers.d.ts +147 -0
- package/dist/presenter/typeHelpers.d.ts.map +1 -0
- package/dist/presenter/typeHelpers.js +152 -0
- package/dist/presenter/typeHelpers.js.map +1 -0
- package/dist/presenter/ui.d.ts +205 -0
- package/dist/presenter/ui.d.ts.map +1 -0
- package/dist/presenter/ui.js +222 -0
- package/dist/presenter/ui.js.map +1 -0
- package/dist/prompt/CursorCodec.d.ts +43 -0
- package/dist/prompt/CursorCodec.d.ts.map +1 -0
- package/dist/prompt/CursorCodec.js +171 -0
- package/dist/prompt/CursorCodec.js.map +1 -0
- package/dist/prompt/FluentPromptBuilder.d.ts +155 -0
- package/dist/prompt/FluentPromptBuilder.d.ts.map +1 -0
- package/dist/prompt/FluentPromptBuilder.js +195 -0
- package/dist/prompt/FluentPromptBuilder.js.map +1 -0
- package/dist/prompt/HydrationSandbox.d.ts +55 -0
- package/dist/prompt/HydrationSandbox.d.ts.map +1 -0
- package/dist/prompt/HydrationSandbox.js +122 -0
- package/dist/prompt/HydrationSandbox.js.map +1 -0
- package/dist/prompt/PromptExecutionPipeline.d.ts +61 -0
- package/dist/prompt/PromptExecutionPipeline.d.ts.map +1 -0
- package/dist/prompt/PromptExecutionPipeline.js +177 -0
- package/dist/prompt/PromptExecutionPipeline.js.map +1 -0
- package/dist/prompt/PromptMessage.d.ts +133 -0
- package/dist/prompt/PromptMessage.d.ts.map +1 -0
- package/dist/prompt/PromptMessage.js +182 -0
- package/dist/prompt/PromptMessage.js.map +1 -0
- package/dist/prompt/PromptRegistry.d.ts +236 -0
- package/dist/prompt/PromptRegistry.d.ts.map +1 -0
- package/dist/prompt/PromptRegistry.js +399 -0
- package/dist/prompt/PromptRegistry.js.map +1 -0
- package/dist/prompt/definePrompt.d.ts +111 -0
- package/dist/prompt/definePrompt.d.ts.map +1 -0
- package/dist/prompt/definePrompt.js +130 -0
- package/dist/prompt/definePrompt.js.map +1 -0
- package/dist/prompt/index.d.ts +12 -0
- package/dist/prompt/index.d.ts.map +1 -0
- package/dist/prompt/index.js +13 -0
- package/dist/prompt/index.js.map +1 -0
- package/dist/prompt/types.d.ts +425 -0
- package/dist/prompt/types.d.ts.map +1 -0
- package/dist/prompt/types.js +19 -0
- package/dist/prompt/types.js.map +1 -0
- package/dist/sandbox/SandboxEngine.d.ts +225 -0
- package/dist/sandbox/SandboxEngine.d.ts.map +1 -0
- package/dist/sandbox/SandboxEngine.js +437 -0
- package/dist/sandbox/SandboxEngine.js.map +1 -0
- package/dist/sandbox/SandboxGuard.d.ts +47 -0
- package/dist/sandbox/SandboxGuard.d.ts.map +1 -0
- package/dist/sandbox/SandboxGuard.js +127 -0
- package/dist/sandbox/SandboxGuard.js.map +1 -0
- package/dist/sandbox/index.d.ts +23 -0
- package/dist/sandbox/index.d.ts.map +1 -0
- package/dist/sandbox/index.js +26 -0
- package/dist/sandbox/index.js.map +1 -0
- package/dist/server/DevServer.d.ts +120 -0
- package/dist/server/DevServer.d.ts.map +1 -0
- package/dist/server/DevServer.js +252 -0
- package/dist/server/DevServer.js.map +1 -0
- package/dist/server/ServerAttachment.d.ts +354 -0
- package/dist/server/ServerAttachment.d.ts.map +1 -0
- package/dist/server/ServerAttachment.js +709 -0
- package/dist/server/ServerAttachment.js.map +1 -0
- package/dist/server/ServerResolver.d.ts +24 -0
- package/dist/server/ServerResolver.d.ts.map +1 -0
- package/dist/server/ServerResolver.js +50 -0
- package/dist/server/ServerResolver.js.map +1 -0
- package/dist/server/autoDiscover.d.ts +75 -0
- package/dist/server/autoDiscover.d.ts.map +1 -0
- package/dist/server/autoDiscover.js +164 -0
- package/dist/server/autoDiscover.js.map +1 -0
- package/dist/server/index.d.ts +12 -0
- package/dist/server/index.d.ts.map +1 -0
- package/dist/server/index.js +11 -0
- package/dist/server/index.js.map +1 -0
- package/dist/server/startServer.d.ts +81 -0
- package/dist/server/startServer.d.ts.map +1 -0
- package/dist/server/startServer.js +143 -0
- package/dist/server/startServer.js.map +1 -0
- package/dist/state-sync/CausalEngine.d.ts +28 -0
- package/dist/state-sync/CausalEngine.d.ts.map +1 -0
- package/dist/state-sync/CausalEngine.js +17 -0
- package/dist/state-sync/CausalEngine.js.map +1 -0
- package/dist/state-sync/DescriptionDecorator.d.ts +31 -0
- package/dist/state-sync/DescriptionDecorator.d.ts.map +1 -0
- package/dist/state-sync/DescriptionDecorator.js +38 -0
- package/dist/state-sync/DescriptionDecorator.js.map +1 -0
- package/dist/state-sync/GlobMatcher.d.ts +29 -0
- package/dist/state-sync/GlobMatcher.d.ts.map +1 -0
- package/dist/state-sync/GlobMatcher.js +79 -0
- package/dist/state-sync/GlobMatcher.js.map +1 -0
- package/dist/state-sync/PolicyEngine.d.ts +75 -0
- package/dist/state-sync/PolicyEngine.d.ts.map +1 -0
- package/dist/state-sync/PolicyEngine.js +107 -0
- package/dist/state-sync/PolicyEngine.js.map +1 -0
- package/dist/state-sync/PolicyValidator.d.ts +67 -0
- package/dist/state-sync/PolicyValidator.d.ts.map +1 -0
- package/dist/state-sync/PolicyValidator.js +122 -0
- package/dist/state-sync/PolicyValidator.js.map +1 -0
- package/dist/state-sync/ResponseDecorator.d.ts +33 -0
- package/dist/state-sync/ResponseDecorator.d.ts.map +1 -0
- package/dist/state-sync/ResponseDecorator.js +20 -0
- package/dist/state-sync/ResponseDecorator.js.map +1 -0
- package/dist/state-sync/StateSyncBuilder.d.ts +77 -0
- package/dist/state-sync/StateSyncBuilder.d.ts.map +1 -0
- package/dist/state-sync/StateSyncBuilder.js +129 -0
- package/dist/state-sync/StateSyncBuilder.js.map +1 -0
- package/dist/state-sync/StateSyncLayer.d.ts +107 -0
- package/dist/state-sync/StateSyncLayer.d.ts.map +1 -0
- package/dist/state-sync/StateSyncLayer.js +158 -0
- package/dist/state-sync/StateSyncLayer.js.map +1 -0
- package/dist/state-sync/index.d.ts +27 -0
- package/dist/state-sync/index.d.ts.map +1 -0
- package/dist/state-sync/index.js +27 -0
- package/dist/state-sync/index.js.map +1 -0
- package/dist/state-sync/types.d.ts +174 -0
- package/dist/state-sync/types.d.ts.map +1 -0
- package/dist/state-sync/types.js +17 -0
- package/dist/state-sync/types.js.map +1 -0
- package/dist/testing/MvaMetaSymbol.d.ts +45 -0
- package/dist/testing/MvaMetaSymbol.d.ts.map +1 -0
- package/dist/testing/MvaMetaSymbol.js +34 -0
- package/dist/testing/MvaMetaSymbol.js.map +1 -0
- package/package.json +153 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Presenter.js","sourceRoot":"","sources":["../../src/presenter/Presenter.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* PresenterValidationError — Domain-Aware Validation Errors
|
|
3
|
+
*
|
|
4
|
+
* Wraps raw Zod validation errors with the Presenter's domain name,
|
|
5
|
+
* producing human-readable error messages that identify WHICH domain
|
|
6
|
+
* failed and WHAT fields were invalid.
|
|
7
|
+
*
|
|
8
|
+
* This is critical for DX: instead of seeing `"Expected string, received number"`,
|
|
9
|
+
* developers and LLMs see `"[Invoice Presenter] Field 'id': Expected string, received number"`.
|
|
10
|
+
*
|
|
11
|
+
* @example
|
|
12
|
+
* ```typescript
|
|
13
|
+
* try {
|
|
14
|
+
* InvoicePresenter.make({ id: 123 }); // ❌ invalid
|
|
15
|
+
* } catch (e) {
|
|
16
|
+
* if (e instanceof PresenterValidationError) {
|
|
17
|
+
* console.log(e.presenterName); // "Invoice"
|
|
18
|
+
* console.log(e.message); // "[Invoice Presenter] ..."
|
|
19
|
+
* console.log(e.cause); // Original ZodError
|
|
20
|
+
* }
|
|
21
|
+
* }
|
|
22
|
+
* ```
|
|
23
|
+
*
|
|
24
|
+
* @module
|
|
25
|
+
*/
|
|
26
|
+
import { type ZodError } from 'zod';
|
|
27
|
+
/**
|
|
28
|
+
* Error thrown when a Presenter's Zod schema validation fails.
|
|
29
|
+
*
|
|
30
|
+
* Provides:
|
|
31
|
+
* - `presenterName`: Which domain Presenter failed
|
|
32
|
+
* - `message`: Human-readable summary with field paths
|
|
33
|
+
* - `cause`: The original `ZodError` for programmatic access
|
|
34
|
+
*
|
|
35
|
+
* @see {@link Presenter} for where this error is thrown
|
|
36
|
+
*/
|
|
37
|
+
export declare class PresenterValidationError extends Error {
|
|
38
|
+
/** The domain name of the Presenter that failed validation */
|
|
39
|
+
readonly presenterName: string;
|
|
40
|
+
constructor(presenterName: string, zodError: ZodError);
|
|
41
|
+
}
|
|
42
|
+
//# sourceMappingURL=PresenterValidationError.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"PresenterValidationError.d.ts","sourceRoot":"","sources":["../../src/presenter/PresenterValidationError.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AACH,OAAO,EAAE,KAAK,QAAQ,EAAE,MAAM,KAAK,CAAC;AAEpC;;;;;;;;;GASG;AACH,qBAAa,wBAAyB,SAAQ,KAAK;IAC/C,8DAA8D;IAC9D,QAAQ,CAAC,aAAa,EAAE,MAAM,CAAC;gBAEnB,aAAa,EAAE,MAAM,EAAE,QAAQ,EAAE,QAAQ;CAiBxD"}
|
|
@@ -0,0 +1,55 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* PresenterValidationError — Domain-Aware Validation Errors
|
|
3
|
+
*
|
|
4
|
+
* Wraps raw Zod validation errors with the Presenter's domain name,
|
|
5
|
+
* producing human-readable error messages that identify WHICH domain
|
|
6
|
+
* failed and WHAT fields were invalid.
|
|
7
|
+
*
|
|
8
|
+
* This is critical for DX: instead of seeing `"Expected string, received number"`,
|
|
9
|
+
* developers and LLMs see `"[Invoice Presenter] Field 'id': Expected string, received number"`.
|
|
10
|
+
*
|
|
11
|
+
* @example
|
|
12
|
+
* ```typescript
|
|
13
|
+
* try {
|
|
14
|
+
* InvoicePresenter.make({ id: 123 }); // ❌ invalid
|
|
15
|
+
* } catch (e) {
|
|
16
|
+
* if (e instanceof PresenterValidationError) {
|
|
17
|
+
* console.log(e.presenterName); // "Invoice"
|
|
18
|
+
* console.log(e.message); // "[Invoice Presenter] ..."
|
|
19
|
+
* console.log(e.cause); // Original ZodError
|
|
20
|
+
* }
|
|
21
|
+
* }
|
|
22
|
+
* ```
|
|
23
|
+
*
|
|
24
|
+
* @module
|
|
25
|
+
*/
|
|
26
|
+
import {} from 'zod';
|
|
27
|
+
/**
|
|
28
|
+
* Error thrown when a Presenter's Zod schema validation fails.
|
|
29
|
+
*
|
|
30
|
+
* Provides:
|
|
31
|
+
* - `presenterName`: Which domain Presenter failed
|
|
32
|
+
* - `message`: Human-readable summary with field paths
|
|
33
|
+
* - `cause`: The original `ZodError` for programmatic access
|
|
34
|
+
*
|
|
35
|
+
* @see {@link Presenter} for where this error is thrown
|
|
36
|
+
*/
|
|
37
|
+
export class PresenterValidationError extends Error {
|
|
38
|
+
/** The domain name of the Presenter that failed validation */
|
|
39
|
+
presenterName;
|
|
40
|
+
constructor(presenterName, zodError) {
|
|
41
|
+
const fieldErrors = zodError.issues
|
|
42
|
+
.map(issue => {
|
|
43
|
+
const path = issue.path.length > 0
|
|
44
|
+
? `'${issue.path.join('.')}'`
|
|
45
|
+
: '(root)';
|
|
46
|
+
return ` • ${path}: ${issue.message}`;
|
|
47
|
+
})
|
|
48
|
+
.join('\n');
|
|
49
|
+
const message = `[${presenterName} Presenter] Validation failed:\n${fieldErrors}`;
|
|
50
|
+
super(message, { cause: zodError });
|
|
51
|
+
this.name = 'PresenterValidationError';
|
|
52
|
+
this.presenterName = presenterName;
|
|
53
|
+
}
|
|
54
|
+
}
|
|
55
|
+
//# sourceMappingURL=PresenterValidationError.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"PresenterValidationError.js","sourceRoot":"","sources":["../../src/presenter/PresenterValidationError.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AACH,OAAO,EAAiB,MAAM,KAAK,CAAC;AAEpC;;;;;;;;;GASG;AACH,MAAM,OAAO,wBAAyB,SAAQ,KAAK;IAC/C,8DAA8D;IACrD,aAAa,CAAS;IAE/B,YAAY,aAAqB,EAAE,QAAkB;QACjD,MAAM,WAAW,GAAG,QAAQ,CAAC,MAAM;aAC9B,GAAG,CAAC,KAAK,CAAC,EAAE;YACT,MAAM,IAAI,GAAG,KAAK,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC;gBAC9B,CAAC,CAAC,IAAI,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG;gBAC7B,CAAC,CAAC,QAAQ,CAAC;YACf,OAAO,OAAO,IAAI,KAAK,KAAK,CAAC,OAAO,EAAE,CAAC;QAC3C,CAAC,CAAC;aACD,IAAI,CAAC,IAAI,CAAC,CAAC;QAEhB,MAAM,OAAO,GACT,IAAI,aAAa,mCAAmC,WAAW,EAAE,CAAC;QAEtE,KAAK,CAAC,OAAO,EAAE,EAAE,KAAK,EAAE,QAAQ,EAAE,CAAC,CAAC;QACpC,IAAI,CAAC,IAAI,GAAG,0BAA0B,CAAC;QACvC,IAAI,CAAC,aAAa,GAAG,aAAa,CAAC;IACvC,CAAC;CACJ"}
|
|
@@ -0,0 +1,110 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* RedactEngine — DLP Compliance Engine (Zero-Leak PII Protection)
|
|
3
|
+
*
|
|
4
|
+
* Compiles object paths into V8-optimized redaction functions using
|
|
5
|
+
* `fast-redact` (the Pino logger serialization engine). Masks sensitive
|
|
6
|
+
* fields structurally before data leaves the framework.
|
|
7
|
+
*
|
|
8
|
+
* Architecture:
|
|
9
|
+
* ┌──────────────────────────────────────────────────┐
|
|
10
|
+
* │ Boot / .redactPII() call │
|
|
11
|
+
* │ │
|
|
12
|
+
* │ ['*.ssn', 'credit_card.number'] │
|
|
13
|
+
* │ │ │
|
|
14
|
+
* │ ▼ │
|
|
15
|
+
* │ fast-redact({ paths, censor, serialize: false })│
|
|
16
|
+
* │ │ │
|
|
17
|
+
* │ ▼ │
|
|
18
|
+
* │ Compiled RedactFn (V8-optimized) │
|
|
19
|
+
* │ Applied in Presenter.make() on wireData │
|
|
20
|
+
* └──────────────────────────────────────────────────┘
|
|
21
|
+
*
|
|
22
|
+
* Properties:
|
|
23
|
+
* - Compiles paths into V8-optimized functions at config time
|
|
24
|
+
* - Zero overhead on hot path (pre-compiled redaction)
|
|
25
|
+
* - Wildcards supported: `'*.ssn'`, `'patients[*].diagnosis'`
|
|
26
|
+
* - Custom censor: string or function `(value) => maskedValue`
|
|
27
|
+
* - Zero-risk fallback: if `fast-redact` is not installed, logs warning
|
|
28
|
+
* and passes data through unmodified
|
|
29
|
+
*
|
|
30
|
+
* @module
|
|
31
|
+
* @internal
|
|
32
|
+
*/
|
|
33
|
+
/**
|
|
34
|
+
* Configuration for PII redaction.
|
|
35
|
+
*
|
|
36
|
+
* @example
|
|
37
|
+
* ```typescript
|
|
38
|
+
* const config: RedactConfig = {
|
|
39
|
+
* paths: ['*.ssn', 'credit_card.number', 'patients[*].diagnosis'],
|
|
40
|
+
* censor: '[REDACTED]',
|
|
41
|
+
* };
|
|
42
|
+
* ```
|
|
43
|
+
*/
|
|
44
|
+
export interface RedactConfig {
|
|
45
|
+
/**
|
|
46
|
+
* Array of object paths to redact, using `fast-redact` syntax.
|
|
47
|
+
*
|
|
48
|
+
* Supports:
|
|
49
|
+
* - Dot notation: `'user.ssn'`
|
|
50
|
+
* - Bracket notation: `'user["ssn"]'`
|
|
51
|
+
* - Wildcards: `'*.ssn'`, `'patients[*].diagnosis'`
|
|
52
|
+
* - Array indices: `'items[0].secret'`
|
|
53
|
+
*
|
|
54
|
+
* @see https://github.com/davidmarkclements/fast-redact#paths--array
|
|
55
|
+
*/
|
|
56
|
+
readonly paths: readonly string[];
|
|
57
|
+
/**
|
|
58
|
+
* Replacement value for redacted fields.
|
|
59
|
+
*
|
|
60
|
+
* - **String**: Static replacement (default: `'[REDACTED]'`)
|
|
61
|
+
* - **Function**: Dynamic censor `(originalValue) => maskedValue`
|
|
62
|
+
* (e.g. `(v) => '***' + String(v).slice(-4)`)
|
|
63
|
+
*
|
|
64
|
+
* @default '[REDACTED]'
|
|
65
|
+
*/
|
|
66
|
+
readonly censor?: string | ((value: unknown) => string);
|
|
67
|
+
}
|
|
68
|
+
/**
|
|
69
|
+
* A compiled redaction function.
|
|
70
|
+
*
|
|
71
|
+
* Applies PII masking to an object. Uses `structuredClone` internally
|
|
72
|
+
* to preserve the original data for UI blocks and rules
|
|
73
|
+
* (Late Guillotine pattern).
|
|
74
|
+
*/
|
|
75
|
+
export type RedactFn = (data: unknown) => unknown;
|
|
76
|
+
/**
|
|
77
|
+
* Compile a redaction config into a V8-optimized redaction function.
|
|
78
|
+
*
|
|
79
|
+
* The compiled function uses `structuredClone` to avoid mutating the
|
|
80
|
+
* original data (required for Late Guillotine: UI blocks and rules
|
|
81
|
+
* need the full unmasked data).
|
|
82
|
+
*
|
|
83
|
+
* @param config - Redaction configuration (paths + optional censor)
|
|
84
|
+
* @returns A compiled `RedactFn`, or `undefined` if `fast-redact` is unavailable
|
|
85
|
+
*
|
|
86
|
+
* @example
|
|
87
|
+
* ```typescript
|
|
88
|
+
* const redact = compileRedactor({
|
|
89
|
+
* paths: ['*.ssn', 'credit_card.number'],
|
|
90
|
+
* censor: '[REDACTED]',
|
|
91
|
+
* });
|
|
92
|
+
*
|
|
93
|
+
* if (redact) {
|
|
94
|
+
* const safe = redact(sensitiveData);
|
|
95
|
+
* // safe.ssn === '[REDACTED]'
|
|
96
|
+
* }
|
|
97
|
+
* ```
|
|
98
|
+
*/
|
|
99
|
+
export declare function compileRedactor(config: RedactConfig): RedactFn | undefined;
|
|
100
|
+
/**
|
|
101
|
+
* Pre-load the `fast-redact` module.
|
|
102
|
+
*
|
|
103
|
+
* Called during `initVurb()` boot sequence alongside other
|
|
104
|
+
* optional dependencies. Not required — the engine degrades
|
|
105
|
+
* gracefully if `fast-redact` is not installed.
|
|
106
|
+
*
|
|
107
|
+
* @returns `true` if `fast-redact` is available
|
|
108
|
+
*/
|
|
109
|
+
export declare function initRedactEngine(): Promise<boolean>;
|
|
110
|
+
//# sourceMappingURL=RedactEngine.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"RedactEngine.d.ts","sourceRoot":"","sources":["../../src/presenter/RedactEngine.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA+BG;AAIH;;;;;;;;;;GAUG;AACH,MAAM,WAAW,YAAY;IACzB;;;;;;;;;;OAUG;IACH,QAAQ,CAAC,KAAK,EAAE,SAAS,MAAM,EAAE,CAAC;IAElC;;;;;;;;OAQG;IACH,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,GAAG,CAAC,CAAC,KAAK,EAAE,OAAO,KAAK,MAAM,CAAC,CAAC;CAC3D;AAED;;;;;;GAMG;AACH,MAAM,MAAM,QAAQ,GAAG,CAAC,IAAI,EAAE,OAAO,KAAK,OAAO,CAAC;AAmClD;;;;;;;;;;;;;;;;;;;;;;GAsBG;AACH,wBAAgB,eAAe,CAAC,MAAM,EAAE,YAAY,GAAG,QAAQ,GAAG,SAAS,CAiC1E;AAID;;;;;;;;GAQG;AACH,wBAAsB,gBAAgB,IAAI,OAAO,CAAC,OAAO,CAAC,CAGzD"}
|
|
@@ -0,0 +1,128 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* RedactEngine — DLP Compliance Engine (Zero-Leak PII Protection)
|
|
3
|
+
*
|
|
4
|
+
* Compiles object paths into V8-optimized redaction functions using
|
|
5
|
+
* `fast-redact` (the Pino logger serialization engine). Masks sensitive
|
|
6
|
+
* fields structurally before data leaves the framework.
|
|
7
|
+
*
|
|
8
|
+
* Architecture:
|
|
9
|
+
* ┌──────────────────────────────────────────────────┐
|
|
10
|
+
* │ Boot / .redactPII() call │
|
|
11
|
+
* │ │
|
|
12
|
+
* │ ['*.ssn', 'credit_card.number'] │
|
|
13
|
+
* │ │ │
|
|
14
|
+
* │ ▼ │
|
|
15
|
+
* │ fast-redact({ paths, censor, serialize: false })│
|
|
16
|
+
* │ │ │
|
|
17
|
+
* │ ▼ │
|
|
18
|
+
* │ Compiled RedactFn (V8-optimized) │
|
|
19
|
+
* │ Applied in Presenter.make() on wireData │
|
|
20
|
+
* └──────────────────────────────────────────────────┘
|
|
21
|
+
*
|
|
22
|
+
* Properties:
|
|
23
|
+
* - Compiles paths into V8-optimized functions at config time
|
|
24
|
+
* - Zero overhead on hot path (pre-compiled redaction)
|
|
25
|
+
* - Wildcards supported: `'*.ssn'`, `'patients[*].diagnosis'`
|
|
26
|
+
* - Custom censor: string or function `(value) => maskedValue`
|
|
27
|
+
* - Zero-risk fallback: if `fast-redact` is not installed, logs warning
|
|
28
|
+
* and passes data through unmodified
|
|
29
|
+
*
|
|
30
|
+
* @module
|
|
31
|
+
* @internal
|
|
32
|
+
*/
|
|
33
|
+
let _fastRedact = null;
|
|
34
|
+
async function loadFastRedact() {
|
|
35
|
+
if (_fastRedact === false)
|
|
36
|
+
return null; // already tried, not available
|
|
37
|
+
if (_fastRedact !== null)
|
|
38
|
+
return _fastRedact;
|
|
39
|
+
try {
|
|
40
|
+
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
41
|
+
const mod = await import('fast-redact');
|
|
42
|
+
_fastRedact = (typeof mod === 'function' ? mod : mod.default);
|
|
43
|
+
return _fastRedact;
|
|
44
|
+
}
|
|
45
|
+
catch {
|
|
46
|
+
_fastRedact = false; // mark as unavailable
|
|
47
|
+
return null;
|
|
48
|
+
}
|
|
49
|
+
}
|
|
50
|
+
// Synchronous version — uses the cached function if already loaded.
|
|
51
|
+
function getFastRedact() {
|
|
52
|
+
if (_fastRedact === false || _fastRedact === null)
|
|
53
|
+
return null;
|
|
54
|
+
return _fastRedact;
|
|
55
|
+
}
|
|
56
|
+
// ── Compile Logic ────────────────────────────────────────
|
|
57
|
+
/**
|
|
58
|
+
* Compile a redaction config into a V8-optimized redaction function.
|
|
59
|
+
*
|
|
60
|
+
* The compiled function uses `structuredClone` to avoid mutating the
|
|
61
|
+
* original data (required for Late Guillotine: UI blocks and rules
|
|
62
|
+
* need the full unmasked data).
|
|
63
|
+
*
|
|
64
|
+
* @param config - Redaction configuration (paths + optional censor)
|
|
65
|
+
* @returns A compiled `RedactFn`, or `undefined` if `fast-redact` is unavailable
|
|
66
|
+
*
|
|
67
|
+
* @example
|
|
68
|
+
* ```typescript
|
|
69
|
+
* const redact = compileRedactor({
|
|
70
|
+
* paths: ['*.ssn', 'credit_card.number'],
|
|
71
|
+
* censor: '[REDACTED]',
|
|
72
|
+
* });
|
|
73
|
+
*
|
|
74
|
+
* if (redact) {
|
|
75
|
+
* const safe = redact(sensitiveData);
|
|
76
|
+
* // safe.ssn === '[REDACTED]'
|
|
77
|
+
* }
|
|
78
|
+
* ```
|
|
79
|
+
*/
|
|
80
|
+
export function compileRedactor(config) {
|
|
81
|
+
if (!config.paths || config.paths.length === 0)
|
|
82
|
+
return undefined;
|
|
83
|
+
const factory = getFastRedact();
|
|
84
|
+
if (!factory)
|
|
85
|
+
return undefined;
|
|
86
|
+
try {
|
|
87
|
+
const redactor = factory({
|
|
88
|
+
paths: [...config.paths],
|
|
89
|
+
censor: config.censor ?? '[REDACTED]',
|
|
90
|
+
serialize: false, // mutate-in-place mode (we clone first)
|
|
91
|
+
});
|
|
92
|
+
// Return a safe function that clones → redacts → returns clone
|
|
93
|
+
return (data) => {
|
|
94
|
+
if (data === null || data === undefined || typeof data !== 'object') {
|
|
95
|
+
return data; // primitives pass through
|
|
96
|
+
}
|
|
97
|
+
try {
|
|
98
|
+
const clone = structuredClone(data);
|
|
99
|
+
redactor(clone);
|
|
100
|
+
return clone;
|
|
101
|
+
}
|
|
102
|
+
catch {
|
|
103
|
+
// Defensive: if structuredClone or redaction fails,
|
|
104
|
+
// return original data rather than crash
|
|
105
|
+
return data;
|
|
106
|
+
}
|
|
107
|
+
};
|
|
108
|
+
}
|
|
109
|
+
catch {
|
|
110
|
+
// Compilation failed (invalid paths, etc.)
|
|
111
|
+
return undefined;
|
|
112
|
+
}
|
|
113
|
+
}
|
|
114
|
+
// ── Async Initialization ─────────────────────────────────
|
|
115
|
+
/**
|
|
116
|
+
* Pre-load the `fast-redact` module.
|
|
117
|
+
*
|
|
118
|
+
* Called during `initVurb()` boot sequence alongside other
|
|
119
|
+
* optional dependencies. Not required — the engine degrades
|
|
120
|
+
* gracefully if `fast-redact` is not installed.
|
|
121
|
+
*
|
|
122
|
+
* @returns `true` if `fast-redact` is available
|
|
123
|
+
*/
|
|
124
|
+
export async function initRedactEngine() {
|
|
125
|
+
const factory = await loadFastRedact();
|
|
126
|
+
return factory !== null;
|
|
127
|
+
}
|
|
128
|
+
//# sourceMappingURL=RedactEngine.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"RedactEngine.js","sourceRoot":"","sources":["../../src/presenter/RedactEngine.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA+BG;AA0DH,IAAI,WAAW,GAAqC,IAAI,CAAC;AAEzD,KAAK,UAAU,cAAc;IACzB,IAAI,WAAW,KAAK,KAAK;QAAE,OAAO,IAAI,CAAC,CAAC,+BAA+B;IACvE,IAAI,WAAW,KAAK,IAAI;QAAE,OAAO,WAAW,CAAC;IAE7C,IAAI,CAAC;QACD,8DAA8D;QAC9D,MAAM,GAAG,GAAQ,MAAM,MAAM,CAAC,aAAa,CAAC,CAAC;QAC7C,WAAW,GAAG,CAAC,OAAO,GAAG,KAAK,UAAU,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAsB,CAAC;QACnF,OAAO,WAAW,CAAC;IACvB,CAAC;IAAC,MAAM,CAAC;QACL,WAAW,GAAG,KAAK,CAAC,CAAC,sBAAsB;QAC3C,OAAO,IAAI,CAAC;IAChB,CAAC;AACL,CAAC;AAED,oEAAoE;AACpE,SAAS,aAAa;IAClB,IAAI,WAAW,KAAK,KAAK,IAAI,WAAW,KAAK,IAAI;QAAE,OAAO,IAAI,CAAC;IAC/D,OAAO,WAAW,CAAC;AACvB,CAAC;AAED,4DAA4D;AAE5D;;;;;;;;;;;;;;;;;;;;;;GAsBG;AACH,MAAM,UAAU,eAAe,CAAC,MAAoB;IAChD,IAAI,CAAC,MAAM,CAAC,KAAK,IAAI,MAAM,CAAC,KAAK,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,SAAS,CAAC;IAEjE,MAAM,OAAO,GAAG,aAAa,EAAE,CAAC;IAChC,IAAI,CAAC,OAAO;QAAE,OAAO,SAAS,CAAC;IAE/B,IAAI,CAAC;QACD,MAAM,QAAQ,GAAG,OAAO,CAAC;YACrB,KAAK,EAAE,CAAC,GAAG,MAAM,CAAC,KAAK,CAAa;YACpC,MAAM,EAAE,MAAM,CAAC,MAAM,IAAI,YAAY;YACrC,SAAS,EAAE,KAAK,EAAE,wCAAwC;SAC7D,CAAC,CAAC;QAEH,+DAA+D;QAC/D,OAAO,CAAC,IAAa,EAAW,EAAE;YAC9B,IAAI,IAAI,KAAK,IAAI,IAAI,IAAI,KAAK,SAAS,IAAI,OAAO,IAAI,KAAK,QAAQ,EAAE,CAAC;gBAClE,OAAO,IAAI,CAAC,CAAC,0BAA0B;YAC3C,CAAC;YAED,IAAI,CAAC;gBACD,MAAM,KAAK,GAAG,eAAe,CAAC,IAAI,CAAC,CAAC;gBACpC,QAAQ,CAAC,KAAK,CAAC,CAAC;gBAChB,OAAO,KAAK,CAAC;YACjB,CAAC;YAAC,MAAM,CAAC;gBACL,oDAAoD;gBACpD,yCAAyC;gBACzC,OAAO,IAAI,CAAC;YAChB,CAAC;QACL,CAAC,CAAC;IACN,CAAC;IAAC,MAAM,CAAC;QACL,2CAA2C;QAC3C,OAAO,SAAS,CAAC;IACrB,CAAC;AACL,CAAC;AAED,4DAA4D;AAE5D;;;;;;;;GAQG;AACH,MAAM,CAAC,KAAK,UAAU,gBAAgB;IAClC,MAAM,OAAO,GAAG,MAAM,cAAc,EAAE,CAAC;IACvC,OAAO,OAAO,KAAK,IAAI,CAAC;AAC5B,CAAC"}
|
|
@@ -0,0 +1,262 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* ResponseBuilder — Fluent Multi-Block Response Composer
|
|
3
|
+
*
|
|
4
|
+
* Standalone builder for composing rich, multi-content-block MCP
|
|
5
|
+
* responses. Each semantic layer (data, UI blocks, system rules,
|
|
6
|
+
* LLM hints) becomes a separate content block in the response array,
|
|
7
|
+
* following MCP's multimodal content design.
|
|
8
|
+
*
|
|
9
|
+
* Inspired by Next.js's `NextResponse` — the builder is a standalone
|
|
10
|
+
* function, keeping `ctx` pure and the response testable.
|
|
11
|
+
*
|
|
12
|
+
* @example
|
|
13
|
+
* ```typescript
|
|
14
|
+
* import { response, ui } from 'vurb';
|
|
15
|
+
*
|
|
16
|
+
* // Simple data response (equivalent to success())
|
|
17
|
+
* return response({ id: '123', amount: 4500 }).build();
|
|
18
|
+
*
|
|
19
|
+
* // Rich multi-block response
|
|
20
|
+
* return response(data)
|
|
21
|
+
* .uiBlock(ui.echarts(chartConfig))
|
|
22
|
+
* .llmHint('Divide amounts by 100 before displaying.')
|
|
23
|
+
* .systemRules(['Use $ for currency', 'Emojis: ✅ Paid'])
|
|
24
|
+
* .build();
|
|
25
|
+
* ```
|
|
26
|
+
*
|
|
27
|
+
* @see {@link response} for the factory function
|
|
28
|
+
* @see {@link Presenter} for automatic response composition
|
|
29
|
+
*
|
|
30
|
+
* @module
|
|
31
|
+
*/
|
|
32
|
+
import { type ToolResponse } from '../core/response.js';
|
|
33
|
+
import { type UiBlock } from './ui.js';
|
|
34
|
+
import { type StringifyFn } from '../core/serialization/JsonSerializer.js';
|
|
35
|
+
/** A suggested next action for HATEOAS-style agent guidance */
|
|
36
|
+
export interface ActionSuggestion {
|
|
37
|
+
readonly tool: string;
|
|
38
|
+
readonly reason: string;
|
|
39
|
+
}
|
|
40
|
+
/**
|
|
41
|
+
* Check if a value is a {@link ResponseBuilder} instance.
|
|
42
|
+
*
|
|
43
|
+
* Used by the execution pipeline to auto-call `.build()` when
|
|
44
|
+
* a handler returns a builder without explicitly calling `.build()`.
|
|
45
|
+
*
|
|
46
|
+
* @param value - Any value returned by a handler
|
|
47
|
+
* @returns `true` if the value is a ResponseBuilder
|
|
48
|
+
*/
|
|
49
|
+
export declare function isResponseBuilder(value: unknown): value is ResponseBuilder;
|
|
50
|
+
/**
|
|
51
|
+
* Fluent builder for multi-content-block MCP responses.
|
|
52
|
+
*
|
|
53
|
+
* Each method appends a semantic layer. The final `.build()` compiles
|
|
54
|
+
* all layers into an array of `{ type: "text", text: "..." }` blocks,
|
|
55
|
+
* one per layer, following MCP's multimodal content specification.
|
|
56
|
+
*
|
|
57
|
+
* Content block order:
|
|
58
|
+
* 1. Data (JSON-serialized raw data)
|
|
59
|
+
* 2. UI Blocks (fenced code blocks from Presenter/manual)
|
|
60
|
+
* 3. Raw Blocks (merged from embedded child Presenters)
|
|
61
|
+
* 4. LLM Hints (inline directives)
|
|
62
|
+
* 5. System Rules (domain-level `[DOMAIN RULES]` block)
|
|
63
|
+
* 6. Action Suggestions (HATEOAS-style `[SYSTEM HINT]` block)
|
|
64
|
+
*
|
|
65
|
+
* @see {@link response} for the factory function
|
|
66
|
+
*/
|
|
67
|
+
export declare class ResponseBuilder {
|
|
68
|
+
/** @internal Brand for instanceof-free detection in the pipeline */
|
|
69
|
+
readonly __brand: "VurbResponseBuilder";
|
|
70
|
+
private readonly _data;
|
|
71
|
+
private readonly _uiBlocks;
|
|
72
|
+
private readonly _hints;
|
|
73
|
+
private readonly _rules;
|
|
74
|
+
private readonly _suggestions;
|
|
75
|
+
private readonly _rawBlocks;
|
|
76
|
+
/** @internal Use {@link response} factory instead */
|
|
77
|
+
constructor(data: string | object, compiledStringify?: StringifyFn);
|
|
78
|
+
/**
|
|
79
|
+
* Append a UI block to the response.
|
|
80
|
+
*
|
|
81
|
+
* Each UI block becomes a separate content entry in the MCP response,
|
|
82
|
+
* with a system instruction for the LLM to pass it through unchanged.
|
|
83
|
+
*
|
|
84
|
+
* Accepts either a {@link UiBlock} object (recommended) or a manual
|
|
85
|
+
* `(type, content)` pair.
|
|
86
|
+
*
|
|
87
|
+
* @returns `this` for chaining
|
|
88
|
+
*
|
|
89
|
+
* @example
|
|
90
|
+
* ```typescript
|
|
91
|
+
* // ✅ Recommended: pass a UiBlock directly
|
|
92
|
+
* response(data).uiBlock(ui.echarts(chartConfig)).build();
|
|
93
|
+
*
|
|
94
|
+
* // Also valid: manual type + content
|
|
95
|
+
* response(data).uiBlock('echarts', '```echarts\n{...}\n```').build();
|
|
96
|
+
* ```
|
|
97
|
+
*/
|
|
98
|
+
uiBlock(block: UiBlock): this;
|
|
99
|
+
uiBlock(type: string, content: string): this;
|
|
100
|
+
/**
|
|
101
|
+
* Append pre-built UI blocks (from a Presenter's SSR layer).
|
|
102
|
+
*
|
|
103
|
+
* @param blocks - Array of {@link UiBlock} objects
|
|
104
|
+
* @returns `this` for chaining
|
|
105
|
+
*
|
|
106
|
+
* @internal Used by the Presenter engine
|
|
107
|
+
*/
|
|
108
|
+
uiBlocks(blocks: readonly UiBlock[]): this;
|
|
109
|
+
/**
|
|
110
|
+
* Append an inline LLM hint to the response.
|
|
111
|
+
*
|
|
112
|
+
* Hints are action-specific directives that guide the LLM's
|
|
113
|
+
* behavior for this particular response. Unlike system rules,
|
|
114
|
+
* hints are typically added manually in handlers for dynamic context.
|
|
115
|
+
*
|
|
116
|
+
* @param hint - Directive text for the LLM
|
|
117
|
+
* @returns `this` for chaining
|
|
118
|
+
*
|
|
119
|
+
* @example
|
|
120
|
+
* ```typescript
|
|
121
|
+
* response(invoice)
|
|
122
|
+
* .llmHint('This client has an overdue balance. Mention it.')
|
|
123
|
+
* .build();
|
|
124
|
+
* ```
|
|
125
|
+
*/
|
|
126
|
+
llmHint(hint: string): this;
|
|
127
|
+
/**
|
|
128
|
+
* Append domain-level system rules to the response.
|
|
129
|
+
*
|
|
130
|
+
* Rules are JIT context directives that travel with the data,
|
|
131
|
+
* eliminating the need for bloated system prompts. They are
|
|
132
|
+
* rendered as a `[DOMAIN RULES]` block in the response.
|
|
133
|
+
*
|
|
134
|
+
* @param rules - Array of rule strings
|
|
135
|
+
* @returns `this` for chaining
|
|
136
|
+
*
|
|
137
|
+
* @example
|
|
138
|
+
* ```typescript
|
|
139
|
+
* response(data)
|
|
140
|
+
* .systemRules([
|
|
141
|
+
* 'CRITICAL: amounts are in CENTS — divide by 100.',
|
|
142
|
+
* 'Use emojis: ✅ Paid, ⚠️ Pending.',
|
|
143
|
+
* ])
|
|
144
|
+
* .build();
|
|
145
|
+
* ```
|
|
146
|
+
*/
|
|
147
|
+
systemRules(rules: readonly string[]): this;
|
|
148
|
+
/**
|
|
149
|
+
* Append HATEOAS-style action suggestions to the response.
|
|
150
|
+
*
|
|
151
|
+
* Generates a `[SYSTEM HINT]` block with recommended next tools,
|
|
152
|
+
* guiding the AI through the business state machine.
|
|
153
|
+
*
|
|
154
|
+
* @param suggestions - Array of action suggestions
|
|
155
|
+
* @returns `this` for chaining
|
|
156
|
+
*
|
|
157
|
+
* @example
|
|
158
|
+
* ```typescript
|
|
159
|
+
* builder.systemHint([
|
|
160
|
+
* { tool: 'billing.pay', reason: 'Offer immediate payment' },
|
|
161
|
+
* ]);
|
|
162
|
+
* ```
|
|
163
|
+
*/
|
|
164
|
+
systemHint(suggestions: readonly ActionSuggestion[]): this;
|
|
165
|
+
/**
|
|
166
|
+
* Append a raw text block to the response.
|
|
167
|
+
*
|
|
168
|
+
* Used internally by Presenter composition (`.embed()`) to merge
|
|
169
|
+
* child Presenter blocks into the parent response.
|
|
170
|
+
*
|
|
171
|
+
* @param text - Raw text content
|
|
172
|
+
* @returns `this` for chaining
|
|
173
|
+
* @internal
|
|
174
|
+
*/
|
|
175
|
+
rawBlock(text: string): this;
|
|
176
|
+
/**
|
|
177
|
+
* Get the serialized data payload.
|
|
178
|
+
*
|
|
179
|
+
* Returns the JSON-stringified (or raw string) data
|
|
180
|
+
* that was passed to the constructor.
|
|
181
|
+
*
|
|
182
|
+
* @returns The data string
|
|
183
|
+
*
|
|
184
|
+
* @remarks Used by {@link PromptMessage.fromView} to decompose
|
|
185
|
+
* a Presenter view into prompt messages without calling `.build()`.
|
|
186
|
+
*/
|
|
187
|
+
getData(): string;
|
|
188
|
+
/**
|
|
189
|
+
* Get the accumulated domain rules.
|
|
190
|
+
*
|
|
191
|
+
* @returns Read-only array of rule strings
|
|
192
|
+
*/
|
|
193
|
+
getRules(): readonly string[];
|
|
194
|
+
/**
|
|
195
|
+
* Get the accumulated UI blocks.
|
|
196
|
+
*
|
|
197
|
+
* @returns Read-only array of UI blocks
|
|
198
|
+
*/
|
|
199
|
+
getUiBlocks(): readonly UiBlock[];
|
|
200
|
+
/**
|
|
201
|
+
* Get the accumulated LLM hints.
|
|
202
|
+
*
|
|
203
|
+
* @returns Read-only array of hint strings
|
|
204
|
+
*/
|
|
205
|
+
getHints(): readonly string[];
|
|
206
|
+
/**
|
|
207
|
+
* Get the accumulated action suggestions.
|
|
208
|
+
*
|
|
209
|
+
* @returns Read-only array of action suggestions
|
|
210
|
+
*/
|
|
211
|
+
getSuggestions(): readonly ActionSuggestion[];
|
|
212
|
+
/**
|
|
213
|
+
* Compile all layers into a multi-block MCP `ToolResponse`.
|
|
214
|
+
*
|
|
215
|
+
* Block order:
|
|
216
|
+
* 1. **Data** — JSON-serialized raw data
|
|
217
|
+
* 2. **UI Blocks** — one content entry per UI block,
|
|
218
|
+
* each with a `[SYSTEM]` pass-through instruction
|
|
219
|
+
* 3. **Hints** — inline LLM directives
|
|
220
|
+
* 4. **Rules** — domain-level `[DOMAIN RULES]` block
|
|
221
|
+
*
|
|
222
|
+
* @returns A valid MCP {@link ToolResponse}
|
|
223
|
+
*/
|
|
224
|
+
build(): ToolResponse;
|
|
225
|
+
}
|
|
226
|
+
/**
|
|
227
|
+
* Create a new response builder for composing multi-block MCP responses.
|
|
228
|
+
*
|
|
229
|
+
* This is the **recommended standalone function** for building rich
|
|
230
|
+
* responses with UI blocks, LLM hints, and system rules. It keeps
|
|
231
|
+
* the handler's `ctx` pure — no framework methods injected.
|
|
232
|
+
*
|
|
233
|
+
* For simple responses, continue using {@link success} and {@link error}.
|
|
234
|
+
* Use `response()` when you need JIT context, UI blocks, or domain rules.
|
|
235
|
+
*
|
|
236
|
+
* @param data - A string message or any JSON-serializable object
|
|
237
|
+
* @returns A new {@link ResponseBuilder} for chaining
|
|
238
|
+
*
|
|
239
|
+
* @example
|
|
240
|
+
* ```typescript
|
|
241
|
+
* import { response, ui } from 'vurb';
|
|
242
|
+
*
|
|
243
|
+
* // Simple (equivalent to success())
|
|
244
|
+
* return response('Task created').build();
|
|
245
|
+
*
|
|
246
|
+
* // Rich multi-block response
|
|
247
|
+
* return response(sprintData)
|
|
248
|
+
* .uiBlock(ui.echarts(burndownConfig))
|
|
249
|
+
* .llmHint('Summarize the sprint progress analytically.')
|
|
250
|
+
* .systemRules(['Use tables for task lists.'])
|
|
251
|
+
* .build();
|
|
252
|
+
* ```
|
|
253
|
+
*
|
|
254
|
+
* @see {@link ResponseBuilder} for all available methods
|
|
255
|
+
* @see {@link Presenter} for automatic response composition
|
|
256
|
+
*/
|
|
257
|
+
export declare function response(data: string | object): ResponseBuilder;
|
|
258
|
+
export declare namespace response {
|
|
259
|
+
var ok: (data: string | object) => ReturnType<ResponseBuilder["build"]>;
|
|
260
|
+
var withRules: (data: string | object, rules: readonly string[]) => ReturnType<ResponseBuilder["build"]>;
|
|
261
|
+
}
|
|
262
|
+
//# sourceMappingURL=ResponseBuilder.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ResponseBuilder.d.ts","sourceRoot":"","sources":["../../src/presenter/ResponseBuilder.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA8BG;AACH,OAAO,EAAE,KAAK,YAAY,EAAE,MAAM,qBAAqB,CAAC;AACxD,OAAO,EAAE,KAAK,OAAO,EAAE,MAAM,SAAS,CAAC;AAEvC,OAAO,EAAE,KAAK,WAAW,EAAE,MAAM,yCAAyC,CAAC;AAE3E,+DAA+D;AAC/D,MAAM,WAAW,gBAAgB;IAC7B,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;CAC3B;AAMD;;;;;;;;GAQG;AACH,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,OAAO,GAAG,KAAK,IAAI,eAAe,CAO1E;AAID;;;;;;;;;;;;;;;;GAgBG;AACH,qBAAa,eAAe;IACxB,oEAAoE;IACpE,QAAQ,CAAC,OAAO,wBAA0B;IAE1C,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAS;IAC/B,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAiB;IAC3C,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAgB;IACvC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAgB;IACvC,OAAO,CAAC,QAAQ,CAAC,YAAY,CAA0B;IACvD,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAgB;IAE3C,qDAAqD;gBACzC,IAAI,EAAE,MAAM,GAAG,MAAM,EAAE,iBAAiB,CAAC,EAAE,WAAW;IAMlE;;;;;;;;;;;;;;;;;;;OAmBG;IACH,OAAO,CAAC,KAAK,EAAE,OAAO,GAAG,IAAI;IAC7B,OAAO,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,IAAI;IAU5C;;;;;;;OAOG;IACH,QAAQ,CAAC,MAAM,EAAE,SAAS,OAAO,EAAE,GAAG,IAAI;IAK1C;;;;;;;;;;;;;;;;OAgBG;IACH,OAAO,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI;IAK3B;;;;;;;;;;;;;;;;;;;OAmBG;IACH,WAAW,CAAC,KAAK,EAAE,SAAS,MAAM,EAAE,GAAG,IAAI;IAK3C;;;;;;;;;;;;;;;OAeG;IACH,UAAU,CAAC,WAAW,EAAE,SAAS,gBAAgB,EAAE,GAAG,IAAI;IAK1D;;;;;;;;;OASG;IACH,QAAQ,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI;IAO5B;;;;;;;;;;OAUG;IACH,OAAO,IAAI,MAAM;IAIjB;;;;OAIG;IACH,QAAQ,IAAI,SAAS,MAAM,EAAE;IAI7B;;;;OAIG;IACH,WAAW,IAAI,SAAS,OAAO,EAAE;IAIjC;;;;OAIG;IACH,QAAQ,IAAI,SAAS,MAAM,EAAE;IAI7B;;;;OAIG;IACH,cAAc,IAAI,SAAS,gBAAgB,EAAE;IAM7C;;;;;;;;;;;OAWG;IACH,KAAK,IAAI,YAAY;CA0DxB;AAID;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA8BG;AACH,wBAAgB,QAAQ,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,GAAG,eAAe,CAE/D;yBAFe,QAAQ;mBAmBQ,MAAM,GAAG,MAAM,KAAG,UAAU,CAAC,eAAe,CAAC,OAAO,CAAC,CAAC;0BAsB5E,MAAM,GAAG,MAAM,SACd,SAAS,MAAM,EAAE,KACzB,UAAU,CAAC,eAAe,CAAC,OAAO,CAAC,CAAC"}
|