@gracker/smartperfetto 1.0.14 → 1.0.16
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.env.example +16 -8
- package/dist/agent/agents/base/baseAgent.d.ts.map +1 -1
- package/dist/agent/agents/base/baseAgent.js +5 -1
- package/dist/agent/agents/base/baseAgent.js.map +1 -1
- package/dist/agent/context/enhancedSessionContext.d.ts +5 -0
- package/dist/agent/context/enhancedSessionContext.d.ts.map +1 -1
- package/dist/agent/context/enhancedSessionContext.js +13 -0
- package/dist/agent/context/enhancedSessionContext.js.map +1 -1
- package/dist/agent/core/conclusionContract.d.ts +16 -1
- package/dist/agent/core/conclusionContract.d.ts.map +1 -1
- package/dist/agent/core/conclusionGenerator.d.ts.map +1 -1
- package/dist/agent/core/conclusionGenerator.js +90 -7
- package/dist/agent/core/conclusionGenerator.js.map +1 -1
- package/dist/agent/core/executors/directSkillExecutor.d.ts.map +1 -1
- package/dist/agent/core/executors/directSkillExecutor.js +6 -12
- package/dist/agent/core/executors/directSkillExecutor.js.map +1 -1
- package/dist/agent/core/orchestratorTypes.d.ts +16 -0
- package/dist/agent/core/orchestratorTypes.d.ts.map +1 -1
- package/dist/agent/core/orchestratorTypes.js.map +1 -1
- package/dist/agent/experts/crossDomain/moduleExpertInvoker.d.ts.map +1 -1
- package/dist/agent/experts/crossDomain/moduleExpertInvoker.js +4 -1
- package/dist/agent/experts/crossDomain/moduleExpertInvoker.js.map +1 -1
- package/dist/agent/scene/sceneStage1Runner.d.ts +1 -1
- package/dist/agent/scene/sceneStage1Runner.d.ts.map +1 -1
- package/dist/agent/scene/sceneStage1Runner.js +1 -1
- package/dist/agent/scene/sceneStage1Runner.js.map +1 -1
- package/dist/agent/scene/sceneStoryService.d.ts +1 -1
- package/dist/agent/scene/sceneStoryService.d.ts.map +1 -1
- package/dist/agent/scene/sceneStoryService.js +4 -1
- package/dist/agent/scene/sceneStoryService.js.map +1 -1
- package/dist/agent/types/agentProtocol.d.ts.map +1 -1
- package/dist/agent/types/agentProtocol.js +4 -1
- package/dist/agent/types/agentProtocol.js.map +1 -1
- package/dist/agent/types.d.ts +7 -0
- package/dist/agent/types.d.ts.map +1 -1
- package/dist/agent/types.js.map +1 -1
- package/dist/agentOpenAI/openAiRuntime.d.ts.map +1 -1
- package/dist/agentOpenAI/openAiRuntime.js +11 -1
- package/dist/agentOpenAI/openAiRuntime.js.map +1 -1
- package/dist/agentOpenAI/openAiToolAdapter.d.ts.map +1 -1
- package/dist/agentOpenAI/openAiToolAdapter.js +27 -2
- package/dist/agentOpenAI/openAiToolAdapter.js.map +1 -1
- package/dist/agentv3/artifactStore.d.ts +5 -0
- package/dist/agentv3/artifactStore.d.ts.map +1 -1
- package/dist/agentv3/artifactStore.js +3 -0
- package/dist/agentv3/artifactStore.js.map +1 -1
- package/dist/agentv3/claudeMcpServer.d.ts +15 -1
- package/dist/agentv3/claudeMcpServer.d.ts.map +1 -1
- package/dist/agentv3/claudeMcpServer.js +436 -91
- package/dist/agentv3/claudeMcpServer.js.map +1 -1
- package/dist/agentv3/claudeRuntime.d.ts.map +1 -1
- package/dist/agentv3/claudeRuntime.js +17 -0
- package/dist/agentv3/claudeRuntime.js.map +1 -1
- package/dist/agentv3/claudeSystemPrompt.d.ts.map +1 -1
- package/dist/agentv3/claudeSystemPrompt.js +9 -0
- package/dist/agentv3/claudeSystemPrompt.js.map +1 -1
- package/dist/agentv3/mcpToolRegistry.d.ts +14 -2
- package/dist/agentv3/mcpToolRegistry.d.ts.map +1 -1
- package/dist/agentv3/mcpToolRegistry.js +25 -6
- package/dist/agentv3/mcpToolRegistry.js.map +1 -1
- package/dist/agentv3/sessionStateSnapshot.d.ts +41 -0
- package/dist/agentv3/sessionStateSnapshot.d.ts.map +1 -1
- package/dist/agentv3/types.d.ts +5 -0
- package/dist/agentv3/types.d.ts.map +1 -1
- package/dist/agentv3/types.js.map +1 -1
- package/dist/assistant/application/agentAnalyzeSessionService.d.ts +6 -0
- package/dist/assistant/application/agentAnalyzeSessionService.d.ts.map +1 -1
- package/dist/assistant/application/agentAnalyzeSessionService.js +9 -3
- package/dist/assistant/application/agentAnalyzeSessionService.js.map +1 -1
- package/dist/assistant/application/assistantApplicationService.d.ts.map +1 -1
- package/dist/assistant/application/assistantApplicationService.js +3 -1
- package/dist/assistant/application/assistantApplicationService.js.map +1 -1
- package/dist/cli-user/bin.js +99 -1
- package/dist/cli-user/bin.js.map +1 -1
- package/dist/cli-user/commands/analyze.d.ts +3 -0
- package/dist/cli-user/commands/analyze.d.ts.map +1 -1
- package/dist/cli-user/commands/analyze.js +2 -0
- package/dist/cli-user/commands/analyze.js.map +1 -1
- package/dist/cli-user/commands/codebase.d.ts +29 -0
- package/dist/cli-user/commands/codebase.d.ts.map +1 -0
- package/dist/cli-user/commands/codebase.js +152 -0
- package/dist/cli-user/commands/codebase.js.map +1 -0
- package/dist/cli-user/commands/config.d.ts.map +1 -1
- package/dist/cli-user/commands/config.js +4 -1
- package/dist/cli-user/commands/config.js.map +1 -1
- package/dist/cli-user/commands/report.js +64 -0
- package/dist/cli-user/commands/report.js.map +1 -1
- package/dist/cli-user/io/paths.d.ts +3 -0
- package/dist/cli-user/io/paths.d.ts.map +1 -1
- package/dist/cli-user/io/paths.js +6 -0
- package/dist/cli-user/io/paths.js.map +1 -1
- package/dist/cli-user/io/sessionStore.d.ts +1 -0
- package/dist/cli-user/io/sessionStore.d.ts.map +1 -1
- package/dist/cli-user/io/sessionStore.js +5 -0
- package/dist/cli-user/io/sessionStore.js.map +1 -1
- package/dist/cli-user/repl/renderer.d.ts +8 -0
- package/dist/cli-user/repl/renderer.d.ts.map +1 -1
- package/dist/cli-user/repl/renderer.js.map +1 -1
- package/dist/cli-user/services/cliAnalyzeService.d.ts +6 -0
- package/dist/cli-user/services/cliAnalyzeService.d.ts.map +1 -1
- package/dist/cli-user/services/cliAnalyzeService.js +183 -29
- package/dist/cli-user/services/cliAnalyzeService.js.map +1 -1
- package/dist/cli-user/services/turnPersistence.d.ts +0 -10
- package/dist/cli-user/services/turnPersistence.d.ts.map +1 -1
- package/dist/cli-user/services/turnPersistence.js +62 -0
- package/dist/cli-user/services/turnPersistence.js.map +1 -1
- package/dist/cli-user/services/turnRunner.d.ts +3 -0
- package/dist/cli-user/services/turnRunner.d.ts.map +1 -1
- package/dist/cli-user/services/turnRunner.js +6 -0
- package/dist/cli-user/services/turnRunner.js.map +1 -1
- package/dist/cli-user/types.d.ts +5 -0
- package/dist/cli-user/types.d.ts.map +1 -1
- package/dist/routes/agentReportRoutes.d.ts +1 -0
- package/dist/routes/agentReportRoutes.d.ts.map +1 -1
- package/dist/routes/agentReportRoutes.js +13 -2
- package/dist/routes/agentReportRoutes.js.map +1 -1
- package/dist/routes/agentResumeRoutes.d.ts.map +1 -1
- package/dist/routes/agentResumeRoutes.js +29 -5
- package/dist/routes/agentResumeRoutes.js.map +1 -1
- package/dist/routes/agentRoutes.d.ts.map +1 -1
- package/dist/routes/agentRoutes.js +297 -91
- package/dist/routes/agentRoutes.js.map +1 -1
- package/dist/routes/ragAdminRoutes.d.ts +13 -24
- package/dist/routes/ragAdminRoutes.d.ts.map +1 -1
- package/dist/routes/ragAdminRoutes.js +266 -11
- package/dist/routes/ragAdminRoutes.js.map +1 -1
- package/dist/scripts/verifyAgentSseScrolling.js +119 -3
- package/dist/scripts/verifyAgentSseScrolling.js.map +1 -1
- package/dist/services/agentEventStore.d.ts.map +1 -1
- package/dist/services/agentEventStore.js +13 -3
- package/dist/services/agentEventStore.js.map +1 -1
- package/dist/services/agentReportData.d.ts +3 -0
- package/dist/services/agentReportData.d.ts.map +1 -1
- package/dist/services/agentReportData.js.map +1 -1
- package/dist/services/analysisResultSnapshotPipeline.d.ts +3 -0
- package/dist/services/analysisResultSnapshotPipeline.d.ts.map +1 -1
- package/dist/services/analysisResultSnapshotPipeline.js +3 -0
- package/dist/services/analysisResultSnapshotPipeline.js.map +1 -1
- package/dist/services/analysisResultSnapshotStore.d.ts.map +1 -1
- package/dist/services/analysisResultSnapshotStore.js +34 -2
- package/dist/services/analysisResultSnapshotStore.js.map +1 -1
- package/dist/services/aospKnowledgeIngester.d.ts +7 -0
- package/dist/services/aospKnowledgeIngester.d.ts.map +1 -1
- package/dist/services/aospKnowledgeIngester.js +19 -7
- package/dist/services/aospKnowledgeIngester.js.map +1 -1
- package/dist/services/auth/codebaseScopes.d.ts +6 -0
- package/dist/services/auth/codebaseScopes.d.ts.map +1 -0
- package/dist/services/auth/codebaseScopes.js +23 -0
- package/dist/services/auth/codebaseScopes.js.map +1 -0
- package/dist/services/codebase/codeAwareFeature.d.ts +4 -0
- package/dist/services/codebase/codeAwareFeature.d.ts.map +1 -0
- package/dist/services/codebase/codeAwareFeature.js +18 -0
- package/dist/services/codebase/codeAwareFeature.js.map +1 -0
- package/dist/services/codebase/codeLookupLedger.d.ts +37 -0
- package/dist/services/codebase/codeLookupLedger.d.ts.map +1 -0
- package/dist/services/codebase/codeLookupLedger.js +126 -0
- package/dist/services/codebase/codeLookupLedger.js.map +1 -0
- package/dist/services/codebase/codebaseRegistry.d.ts +76 -0
- package/dist/services/codebase/codebaseRegistry.d.ts.map +1 -0
- package/dist/services/codebase/codebaseRegistry.js +164 -0
- package/dist/services/codebase/codebaseRegistry.js.map +1 -0
- package/dist/services/codebase/defaultCodebaseServices.d.ts +5 -0
- package/dist/services/codebase/defaultCodebaseServices.d.ts.map +1 -0
- package/dist/services/codebase/defaultCodebaseServices.js +21 -0
- package/dist/services/codebase/defaultCodebaseServices.js.map +1 -0
- package/dist/services/codebase/patchProposer.d.ts +44 -0
- package/dist/services/codebase/patchProposer.d.ts.map +1 -0
- package/dist/services/codebase/patchProposer.js +163 -0
- package/dist/services/codebase/patchProposer.js.map +1 -0
- package/dist/services/codebase/pathSecurityGate.d.ts +33 -0
- package/dist/services/codebase/pathSecurityGate.d.ts.map +1 -0
- package/dist/services/codebase/pathSecurityGate.js +214 -0
- package/dist/services/codebase/pathSecurityGate.js.map +1 -0
- package/dist/services/enterpriseSchema.d.ts.map +1 -1
- package/dist/services/enterpriseSchema.js +11 -0
- package/dist/services/enterpriseSchema.js.map +1 -1
- package/dist/services/evidence/evidenceContractBuilder.d.ts +11 -0
- package/dist/services/evidence/evidenceContractBuilder.d.ts.map +1 -0
- package/dist/services/evidence/evidenceContractBuilder.js +530 -0
- package/dist/services/evidence/evidenceContractBuilder.js.map +1 -0
- package/dist/services/htmlReportGenerator.d.ts +9 -0
- package/dist/services/htmlReportGenerator.d.ts.map +1 -1
- package/dist/services/htmlReportGenerator.js +133 -0
- package/dist/services/htmlReportGenerator.js.map +1 -1
- package/dist/services/persistAgentSession.d.ts.map +1 -1
- package/dist/services/persistAgentSession.js +24 -0
- package/dist/services/persistAgentSession.js.map +1 -1
- package/dist/services/processIdentity/identityContractMapper.d.ts +14 -0
- package/dist/services/processIdentity/identityContractMapper.d.ts.map +1 -0
- package/dist/services/processIdentity/identityContractMapper.js +135 -0
- package/dist/services/processIdentity/identityContractMapper.js.map +1 -0
- package/dist/services/processIdentity/types.d.ts +5 -0
- package/dist/services/processIdentity/types.d.ts.map +1 -1
- package/dist/services/processIdentity/types.js.map +1 -1
- package/dist/services/rag/aospSourceIngester.d.ts +26 -0
- package/dist/services/rag/aospSourceIngester.d.ts.map +1 -0
- package/dist/services/rag/aospSourceIngester.js +143 -0
- package/dist/services/rag/aospSourceIngester.js.map +1 -0
- package/dist/services/rag/appSourceIngester.d.ts +37 -0
- package/dist/services/rag/appSourceIngester.d.ts.map +1 -0
- package/dist/services/rag/appSourceIngester.js +165 -0
- package/dist/services/rag/appSourceIngester.js.map +1 -0
- package/dist/services/rag/baseIngester.d.ts +18 -0
- package/dist/services/rag/baseIngester.d.ts.map +1 -0
- package/dist/services/rag/baseIngester.js +197 -0
- package/dist/services/rag/baseIngester.js.map +1 -0
- package/dist/services/rag/kernelSourceIngester.d.ts +35 -0
- package/dist/services/rag/kernelSourceIngester.d.ts.map +1 -0
- package/dist/services/rag/kernelSourceIngester.js +170 -0
- package/dist/services/rag/kernelSourceIngester.js.map +1 -0
- package/dist/services/rag/lookupResponseFilter.d.ts +42 -0
- package/dist/services/rag/lookupResponseFilter.d.ts.map +1 -0
- package/dist/services/rag/lookupResponseFilter.js +192 -0
- package/dist/services/rag/lookupResponseFilter.js.map +1 -0
- package/dist/services/rag/sessionToolResultRegistry.d.ts +25 -0
- package/dist/services/rag/sessionToolResultRegistry.d.ts.map +1 -0
- package/dist/services/rag/sessionToolResultRegistry.js +57 -0
- package/dist/services/rag/sessionToolResultRegistry.js.map +1 -0
- package/dist/services/rag/toolResultProjectionFilter.d.ts +18 -0
- package/dist/services/rag/toolResultProjectionFilter.d.ts.map +1 -0
- package/dist/services/rag/toolResultProjectionFilter.js +33 -0
- package/dist/services/rag/toolResultProjectionFilter.js.map +1 -0
- package/dist/services/ragStore.d.ts +8 -0
- package/dist/services/ragStore.d.ts.map +1 -1
- package/dist/services/ragStore.js +77 -8
- package/dist/services/ragStore.js.map +1 -1
- package/dist/services/rbac.d.ts +1 -1
- package/dist/services/rbac.d.ts.map +1 -1
- package/dist/services/rbac.js +6 -0
- package/dist/services/rbac.js.map +1 -1
- package/dist/services/security/codeAwareOutputRegistry.d.ts +6 -0
- package/dist/services/security/codeAwareOutputRegistry.d.ts.map +1 -0
- package/dist/services/security/codeAwareOutputRegistry.js +55 -0
- package/dist/services/security/codeAwareOutputRegistry.js.map +1 -0
- package/dist/services/security/llmEchoOutputFilter.d.ts +49 -0
- package/dist/services/security/llmEchoOutputFilter.d.ts.map +1 -0
- package/dist/services/security/llmEchoOutputFilter.js +133 -0
- package/dist/services/security/llmEchoOutputFilter.js.map +1 -0
- package/dist/services/security/secretPatterns.d.ts +6 -0
- package/dist/services/security/secretPatterns.d.ts.map +1 -0
- package/dist/services/security/secretPatterns.js +23 -0
- package/dist/services/security/secretPatterns.js.map +1 -0
- package/dist/services/skillEngine/skillExecutor.d.ts +14 -2
- package/dist/services/skillEngine/skillExecutor.d.ts.map +1 -1
- package/dist/services/skillEngine/skillExecutor.js +133 -13
- package/dist/services/skillEngine/skillExecutor.js.map +1 -1
- package/dist/services/skillEngine/types.d.ts +2 -0
- package/dist/services/skillEngine/types.d.ts.map +1 -1
- package/dist/services/symbol/breakpadSymParser.d.ts +19 -0
- package/dist/services/symbol/breakpadSymParser.d.ts.map +1 -0
- package/dist/services/symbol/breakpadSymParser.js +40 -0
- package/dist/services/symbol/breakpadSymParser.js.map +1 -0
- package/dist/services/symbol/kallsymsParser.d.ts +12 -0
- package/dist/services/symbol/kallsymsParser.d.ts.map +1 -0
- package/dist/services/symbol/kallsymsParser.js +41 -0
- package/dist/services/symbol/kallsymsParser.js.map +1 -0
- package/dist/services/symbol/r8MappingParser.d.ts +40 -0
- package/dist/services/symbol/r8MappingParser.d.ts.map +1 -0
- package/dist/services/symbol/r8MappingParser.js +99 -0
- package/dist/services/symbol/r8MappingParser.js.map +1 -0
- package/dist/services/symbol/symbolResolver.d.ts +59 -0
- package/dist/services/symbol/symbolResolver.d.ts.map +1 -0
- package/dist/services/symbol/symbolResolver.js +147 -0
- package/dist/services/symbol/symbolResolver.js.map +1 -0
- package/dist/services/symbol/traceSymbolContext.d.ts +14 -0
- package/dist/services/symbol/traceSymbolContext.d.ts.map +1 -0
- package/dist/services/symbol/traceSymbolContext.js +45 -0
- package/dist/services/symbol/traceSymbolContext.js.map +1 -0
- package/dist/services/verifier/claimVerificationRunner.d.ts +20 -0
- package/dist/services/verifier/claimVerificationRunner.d.ts.map +1 -0
- package/dist/services/verifier/claimVerificationRunner.js +88 -0
- package/dist/services/verifier/claimVerificationRunner.js.map +1 -0
- package/dist/services/verifier/deterministicClaimVerifier.d.ts +8 -0
- package/dist/services/verifier/deterministicClaimVerifier.d.ts.map +1 -0
- package/dist/services/verifier/deterministicClaimVerifier.js +178 -0
- package/dist/services/verifier/deterministicClaimVerifier.js.map +1 -0
- package/dist/types/claimVerification.d.ts +38 -0
- package/dist/types/claimVerification.d.ts.map +1 -0
- package/dist/types/claimVerification.js +6 -0
- package/dist/types/claimVerification.js.map +1 -0
- package/dist/types/dataContract.d.ts +30 -0
- package/dist/types/dataContract.d.ts.map +1 -1
- package/dist/types/dataContract.js +7 -0
- package/dist/types/dataContract.js.map +1 -1
- package/dist/types/evidenceContract.d.ts +100 -0
- package/dist/types/evidenceContract.d.ts.map +1 -0
- package/dist/types/evidenceContract.js +6 -0
- package/dist/types/evidenceContract.js.map +1 -0
- package/dist/types/identityContract.d.ts +57 -0
- package/dist/types/identityContract.d.ts.map +1 -0
- package/dist/types/identityContract.js +6 -0
- package/dist/types/identityContract.js.map +1 -0
- package/dist/types/multiTraceComparison.d.ts +3 -0
- package/dist/types/multiTraceComparison.d.ts.map +1 -1
- package/dist/types/sparkContracts.d.ts +31 -3
- package/dist/types/sparkContracts.d.ts.map +1 -1
- package/dist/types/sparkContracts.js.map +1 -1
- package/package.json +8 -1
- package/skills/atomic/process_identity_resolver.skill.yaml +130 -1
- package/skills/atomic/process_slice_cpu_hotspots.skill.yaml +321 -0
- package/skills/composite/code_pinpoint.skill.yaml +111 -0
- package/strategies/anr.strategy.md +2 -2
- package/strategies/code-aware.template.md +37 -0
- package/strategies/game.strategy.md +1 -1
- package/strategies/general.strategy.md +1 -1
- package/strategies/prompt-methodology.template.md +2 -0
- package/strategies/scrolling.strategy.md +1 -0
package/dist/services/rbac.d.ts
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import type { Response } from 'express';
|
|
2
2
|
import type { RequestContext } from '../middleware/auth';
|
|
3
3
|
import { type ResourceOwnerFields } from './resourceOwnership';
|
|
4
|
-
export type RbacPermission = 'trace:read' | 'trace:write' | 'trace:download' | 'trace:delete_own' | 'trace:delete_any' | 'agent:run' | 'report:read' | 'report:delete' | 'analysis_result:read' | 'analysis_result:create' | 'analysis_result:share' | 'analysis_result:delete' | 'comparison:create' | 'comparison:read' | 'provider:manage_workspace' | 'provider:manage_org' | 'audit:read' | 'runtime:manage';
|
|
4
|
+
export type RbacPermission = 'trace:read' | 'trace:write' | 'trace:download' | 'trace:delete_own' | 'trace:delete_any' | 'agent:run' | 'report:read' | 'report:delete' | 'analysis_result:read' | 'analysis_result:create' | 'analysis_result:share' | 'analysis_result:delete' | 'comparison:create' | 'comparison:read' | 'codebase:read' | 'codebase:manage' | 'codebase:admin' | 'provider:manage_workspace' | 'provider:manage_org' | 'audit:read' | 'runtime:manage';
|
|
5
5
|
export declare function hasRbacPermission(context: RequestContext, permission: RbacPermission): boolean;
|
|
6
6
|
export declare function sharesWorkspaceWithContext(resource: ResourceOwnerFields | null | undefined, context: RequestContext): boolean;
|
|
7
7
|
export declare function canReadTraceResource(resource: ResourceOwnerFields | null | undefined, context: RequestContext): boolean;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"rbac.d.ts","sourceRoot":"","sources":["../../src/services/rbac.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAC;AACxC,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AACzD,OAAO,EAGL,KAAK,mBAAmB,EACzB,MAAM,qBAAqB,CAAC;AAE7B,MAAM,MAAM,cAAc,GACtB,YAAY,GACZ,aAAa,GACb,gBAAgB,GAChB,kBAAkB,GAClB,kBAAkB,GAClB,WAAW,GACX,aAAa,GACb,eAAe,GACf,sBAAsB,GACtB,wBAAwB,GACxB,uBAAuB,GACvB,wBAAwB,GACxB,mBAAmB,GACnB,iBAAiB,GACjB,2BAA2B,GAC3B,qBAAqB,GACrB,YAAY,GACZ,gBAAgB,CAAC;
|
|
1
|
+
{"version":3,"file":"rbac.d.ts","sourceRoot":"","sources":["../../src/services/rbac.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAC;AACxC,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AACzD,OAAO,EAGL,KAAK,mBAAmB,EACzB,MAAM,qBAAqB,CAAC;AAE7B,MAAM,MAAM,cAAc,GACtB,YAAY,GACZ,aAAa,GACb,gBAAgB,GAChB,kBAAkB,GAClB,kBAAkB,GAClB,WAAW,GACX,aAAa,GACb,eAAe,GACf,sBAAsB,GACtB,wBAAwB,GACxB,uBAAuB,GACvB,wBAAwB,GACxB,mBAAmB,GACnB,iBAAiB,GACjB,eAAe,GACf,iBAAiB,GACjB,gBAAgB,GAChB,2BAA2B,GAC3B,qBAAqB,GACrB,YAAY,GACZ,gBAAgB,CAAC;AAwErB,wBAAgB,iBAAiB,CAAC,OAAO,EAAE,cAAc,EAAE,UAAU,EAAE,cAAc,GAAG,OAAO,CAK9F;AAED,wBAAgB,0BAA0B,CACxC,QAAQ,EAAE,mBAAmB,GAAG,IAAI,GAAG,SAAS,EAChD,OAAO,EAAE,cAAc,GACtB,OAAO,CAGT;AAED,wBAAgB,oBAAoB,CAClC,QAAQ,EAAE,mBAAmB,GAAG,IAAI,GAAG,SAAS,EAChD,OAAO,EAAE,cAAc,GACtB,OAAO,CAET;AAED,wBAAgB,wBAAwB,CACtC,QAAQ,EAAE,mBAAmB,GAAG,IAAI,GAAG,SAAS,EAChD,OAAO,EAAE,cAAc,GACtB,OAAO,CAGT;AAED,wBAAgB,sBAAsB,CACpC,QAAQ,EAAE,mBAAmB,GAAG,IAAI,GAAG,SAAS,EAChD,OAAO,EAAE,cAAc,GACtB,OAAO,CAIT;AAED,wBAAgB,qBAAqB,CACnC,QAAQ,EAAE,mBAAmB,GAAG,IAAI,GAAG,SAAS,EAChD,OAAO,EAAE,cAAc,GACtB,OAAO,CAET;AAED,wBAAgB,uBAAuB,CACrC,QAAQ,EAAE,mBAAmB,GAAG,IAAI,GAAG,SAAS,EAChD,OAAO,EAAE,cAAc,GACtB,OAAO,CAIT;AAED,wBAAgB,6BAA6B,CAC3C,QAAQ,EAAE,CAAC,mBAAmB,GAAG;IAAE,UAAU,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;CAAE,CAAC,GAAG,IAAI,GAAG,SAAS,EACnF,OAAO,EAAE,cAAc,GACtB,OAAO,CAKT;AAED,wBAAgB,+BAA+B,CAAC,OAAO,EAAE,cAAc,GAAG,OAAO,CAEhF;AAED,wBAAgB,8BAA8B,CAC5C,QAAQ,EAAE,mBAAmB,GAAG,IAAI,GAAG,SAAS,EAChD,OAAO,EAAE,cAAc,GACtB,OAAO,CAKT;AAED,wBAAgB,+BAA+B,CAC7C,QAAQ,EAAE,mBAAmB,GAAG,IAAI,GAAG,SAAS,EAChD,OAAO,EAAE,cAAc,GACtB,OAAO,CAIT;AAED,wBAAgB,aAAa,CAAC,GAAG,EAAE,QAAQ,EAAE,OAAO,SAAc,GAAG,QAAQ,CAM5E"}
|
package/dist/services/rbac.js
CHANGED
|
@@ -30,6 +30,7 @@ const ROLE_PERMISSIONS = {
|
|
|
30
30
|
'analysis_result:share',
|
|
31
31
|
'comparison:create',
|
|
32
32
|
'comparison:read',
|
|
33
|
+
'codebase:read',
|
|
33
34
|
],
|
|
34
35
|
workspace_admin: [
|
|
35
36
|
'trace:read',
|
|
@@ -46,6 +47,8 @@ const ROLE_PERMISSIONS = {
|
|
|
46
47
|
'analysis_result:delete',
|
|
47
48
|
'comparison:create',
|
|
48
49
|
'comparison:read',
|
|
50
|
+
'codebase:read',
|
|
51
|
+
'codebase:manage',
|
|
49
52
|
'provider:manage_workspace',
|
|
50
53
|
'audit:read',
|
|
51
54
|
'runtime:manage',
|
|
@@ -65,6 +68,9 @@ const ROLE_PERMISSIONS = {
|
|
|
65
68
|
'analysis_result:delete',
|
|
66
69
|
'comparison:create',
|
|
67
70
|
'comparison:read',
|
|
71
|
+
'codebase:read',
|
|
72
|
+
'codebase:manage',
|
|
73
|
+
'codebase:admin',
|
|
68
74
|
'provider:manage_workspace',
|
|
69
75
|
'provider:manage_org',
|
|
70
76
|
'audit:read',
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"rbac.js","sourceRoot":"","sources":["../../src/services/rbac.ts"],"names":[],"mappings":";AAAA,6CAA6C;AAC7C,0CAA0C;AAC1C,+DAA+D;;
|
|
1
|
+
{"version":3,"file":"rbac.js","sourceRoot":"","sources":["../../src/services/rbac.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import type { SanitizedRagResult } from '../rag/lookupResponseFilter';
|
|
2
|
+
export declare function registerCodeAwareLookupForEcho(sessionId: string | undefined, result: SanitizedRagResult): void;
|
|
3
|
+
export declare function registerCodeAwareCanary(sessionId: string | undefined, canary: string): void;
|
|
4
|
+
export declare function sanitizeCodeAwareText(sessionId: string | undefined, text: string): string;
|
|
5
|
+
export declare function clearCodeAwareOutputGuards(sessionId: string): void;
|
|
6
|
+
//# sourceMappingURL=codeAwareOutputRegistry.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"codeAwareOutputRegistry.d.ts","sourceRoot":"","sources":["../../../src/services/security/codeAwareOutputRegistry.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAC,kBAAkB,EAAC,MAAM,6BAA6B,CAAC;AAcpE,wBAAgB,8BAA8B,CAAC,SAAS,EAAE,MAAM,GAAG,SAAS,EAAE,MAAM,EAAE,kBAAkB,GAAG,IAAI,CAc9G;AAED,wBAAgB,uBAAuB,CAAC,SAAS,EAAE,MAAM,GAAG,SAAS,EAAE,MAAM,EAAE,MAAM,GAAG,IAAI,CAG3F;AAED,wBAAgB,qBAAqB,CAAC,SAAS,EAAE,MAAM,GAAG,SAAS,EAAE,IAAI,EAAE,MAAM,GAAG,MAAM,CAKzF;AAED,wBAAgB,0BAA0B,CAAC,SAAS,EAAE,MAAM,GAAG,IAAI,CAIlE"}
|
|
@@ -0,0 +1,55 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
// SPDX-License-Identifier: AGPL-3.0-or-later
|
|
3
|
+
// Copyright (C) 2024-2026 Gracker (Chris)
|
|
4
|
+
// This file is part of SmartPerfetto. See LICENSE for details.
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
exports.registerCodeAwareLookupForEcho = registerCodeAwareLookupForEcho;
|
|
7
|
+
exports.registerCodeAwareCanary = registerCodeAwareCanary;
|
|
8
|
+
exports.sanitizeCodeAwareText = sanitizeCodeAwareText;
|
|
9
|
+
exports.clearCodeAwareOutputGuards = clearCodeAwareOutputGuards;
|
|
10
|
+
const llmEchoOutputFilter_1 = require("./llmEchoOutputFilter");
|
|
11
|
+
const sessionStreams = new Map();
|
|
12
|
+
function streamFor(sessionId) {
|
|
13
|
+
let stream = sessionStreams.get(sessionId);
|
|
14
|
+
if (!stream) {
|
|
15
|
+
stream = new llmEchoOutputFilter_1.LLMEchoOutputStream();
|
|
16
|
+
sessionStreams.set(sessionId, stream);
|
|
17
|
+
}
|
|
18
|
+
return stream;
|
|
19
|
+
}
|
|
20
|
+
function registerCodeAwareLookupForEcho(sessionId, result) {
|
|
21
|
+
if (!sessionId)
|
|
22
|
+
return;
|
|
23
|
+
const stream = streamFor(sessionId);
|
|
24
|
+
for (const hit of result.hits) {
|
|
25
|
+
if (!hit.snippet || !hit.metadata?.codebaseId || !hit.metadata.filePath)
|
|
26
|
+
continue;
|
|
27
|
+
const ref = {
|
|
28
|
+
chunkId: hit.chunkId,
|
|
29
|
+
codebaseId: hit.metadata.codebaseId,
|
|
30
|
+
filePath: hit.metadata.filePath,
|
|
31
|
+
...(hit.metadata.lineRange ? { lineRange: hit.metadata.lineRange } : {}),
|
|
32
|
+
...(hit.metadata.symbol ? { symbol: hit.metadata.symbol } : {}),
|
|
33
|
+
};
|
|
34
|
+
stream.registerSnippet(hit.snippet, ref);
|
|
35
|
+
}
|
|
36
|
+
}
|
|
37
|
+
function registerCodeAwareCanary(sessionId, canary) {
|
|
38
|
+
if (!sessionId || !canary)
|
|
39
|
+
return;
|
|
40
|
+
streamFor(sessionId).registerCanary(canary);
|
|
41
|
+
}
|
|
42
|
+
function sanitizeCodeAwareText(sessionId, text) {
|
|
43
|
+
if (!sessionId || !text)
|
|
44
|
+
return text;
|
|
45
|
+
const stream = sessionStreams.get(sessionId);
|
|
46
|
+
if (!stream)
|
|
47
|
+
return text;
|
|
48
|
+
return stream.write(text) + stream.flush();
|
|
49
|
+
}
|
|
50
|
+
function clearCodeAwareOutputGuards(sessionId) {
|
|
51
|
+
const stream = sessionStreams.get(sessionId);
|
|
52
|
+
stream?.destroy();
|
|
53
|
+
sessionStreams.delete(sessionId);
|
|
54
|
+
}
|
|
55
|
+
//# sourceMappingURL=codeAwareOutputRegistry.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"codeAwareOutputRegistry.js","sourceRoot":"","sources":["../../../src/services/security/codeAwareOutputRegistry.ts"],"names":[],"mappings":";AAAA,6CAA6C;AAC7C,0CAA0C;AAC1C,+DAA+D;;AAgB/D,wEAcC;AAED,0DAGC;AAED,sDAKC;AAED,gEAIC;AA7CD,+DAAwE;AAExE,MAAM,cAAc,GAAG,IAAI,GAAG,EAA+B,CAAC;AAE9D,SAAS,SAAS,CAAC,SAAiB;IAClC,IAAI,MAAM,GAAG,cAAc,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;IAC3C,IAAI,CAAC,MAAM,EAAE,CAAC;QACZ,MAAM,GAAG,IAAI,yCAAmB,EAAE,CAAC;QACnC,cAAc,CAAC,GAAG,CAAC,SAAS,EAAE,MAAM,CAAC,CAAC;IACxC,CAAC;IACD,OAAO,MAAM,CAAC;AAChB,CAAC;AAED,SAAgB,8BAA8B,CAAC,SAA6B,EAAE,MAA0B;IACtG,IAAI,CAAC,SAAS;QAAE,OAAO;IACvB,MAAM,MAAM,GAAG,SAAS,CAAC,SAAS,CAAC,CAAC;IACpC,KAAK,MAAM,GAAG,IAAI,MAAM,CAAC,IAAI,EAAE,CAAC;QAC9B,IAAI,CAAC,GAAG,CAAC,OAAO,IAAI,CAAC,GAAG,CAAC,QAAQ,EAAE,UAAU,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,QAAQ;YAAE,SAAS;QAClF,MAAM,GAAG,GAAY;YACnB,OAAO,EAAE,GAAG,CAAC,OAAO;YACpB,UAAU,EAAE,GAAG,CAAC,QAAQ,CAAC,UAAU;YACnC,QAAQ,EAAE,GAAG,CAAC,QAAQ,CAAC,QAAQ;YAC/B,GAAG,CAAC,GAAG,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC,CAAC,EAAC,SAAS,EAAE,GAAG,CAAC,QAAQ,CAAC,SAAS,EAAC,CAAC,CAAC,CAAC,EAAE,CAAC;YACtE,GAAG,CAAC,GAAG,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,EAAC,MAAM,EAAE,GAAG,CAAC,QAAQ,CAAC,MAAM,EAAC,CAAC,CAAC,CAAC,EAAE,CAAC;SAC9D,CAAC;QACF,MAAM,CAAC,eAAe,CAAC,GAAG,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC;IAC3C,CAAC;AACH,CAAC;AAED,SAAgB,uBAAuB,CAAC,SAA6B,EAAE,MAAc;IACnF,IAAI,CAAC,SAAS,IAAI,CAAC,MAAM;QAAE,OAAO;IAClC,SAAS,CAAC,SAAS,CAAC,CAAC,cAAc,CAAC,MAAM,CAAC,CAAC;AAC9C,CAAC;AAED,SAAgB,qBAAqB,CAAC,SAA6B,EAAE,IAAY;IAC/E,IAAI,CAAC,SAAS,IAAI,CAAC,IAAI;QAAE,OAAO,IAAI,CAAC;IACrC,MAAM,MAAM,GAAG,cAAc,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;IAC7C,IAAI,CAAC,MAAM;QAAE,OAAO,IAAI,CAAC;IACzB,OAAO,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,MAAM,CAAC,KAAK,EAAE,CAAC;AAC7C,CAAC;AAED,SAAgB,0BAA0B,CAAC,SAAiB;IAC1D,MAAM,MAAM,GAAG,cAAc,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;IAC7C,MAAM,EAAE,OAAO,EAAE,CAAC;IAClB,cAAc,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;AACnC,CAAC"}
|
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
export interface CodeRef {
|
|
2
|
+
chunkId: string;
|
|
3
|
+
codebaseId: string;
|
|
4
|
+
filePath: string;
|
|
5
|
+
lineRange?: {
|
|
6
|
+
start: number;
|
|
7
|
+
end: number;
|
|
8
|
+
};
|
|
9
|
+
symbol?: string;
|
|
10
|
+
}
|
|
11
|
+
interface Pattern {
|
|
12
|
+
text: string;
|
|
13
|
+
hash: string;
|
|
14
|
+
kind: 'exact' | 'line' | 'sliding' | 'canary';
|
|
15
|
+
codeRef?: CodeRef;
|
|
16
|
+
}
|
|
17
|
+
export interface LlmEchoStats {
|
|
18
|
+
bytesProcessed: number;
|
|
19
|
+
hits: Array<{
|
|
20
|
+
patternHash: string;
|
|
21
|
+
patternKind: Pattern['kind'];
|
|
22
|
+
codeRef?: CodeRef;
|
|
23
|
+
replacement: string;
|
|
24
|
+
atOffset: number;
|
|
25
|
+
}>;
|
|
26
|
+
redactedBytes: number;
|
|
27
|
+
}
|
|
28
|
+
export declare class LLMEchoOutputStream {
|
|
29
|
+
private readonly maxPatternLength;
|
|
30
|
+
private patterns;
|
|
31
|
+
private buffer;
|
|
32
|
+
private destroyed;
|
|
33
|
+
private bytesProcessed;
|
|
34
|
+
private redactedBytes;
|
|
35
|
+
private hits;
|
|
36
|
+
constructor(maxPatternLength?: number);
|
|
37
|
+
registerSnippet(snippet: string, ref: CodeRef): void;
|
|
38
|
+
registerCanary(canary: string): void;
|
|
39
|
+
write(tokenChunk: string | Buffer): string;
|
|
40
|
+
flush(): string;
|
|
41
|
+
stats(): LlmEchoStats;
|
|
42
|
+
destroy(): void;
|
|
43
|
+
private addPattern;
|
|
44
|
+
private sortPatterns;
|
|
45
|
+
private redact;
|
|
46
|
+
private assertActive;
|
|
47
|
+
}
|
|
48
|
+
export {};
|
|
49
|
+
//# sourceMappingURL=llmEchoOutputFilter.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"llmEchoOutputFilter.d.ts","sourceRoot":"","sources":["../../../src/services/security/llmEchoOutputFilter.ts"],"names":[],"mappings":"AAMA,MAAM,WAAW,OAAO;IACtB,OAAO,EAAE,MAAM,CAAC;IAChB,UAAU,EAAE,MAAM,CAAC;IACnB,QAAQ,EAAE,MAAM,CAAC;IACjB,SAAS,CAAC,EAAE;QAAC,KAAK,EAAE,MAAM,CAAC;QAAC,GAAG,EAAE,MAAM,CAAA;KAAC,CAAC;IACzC,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED,UAAU,OAAO;IACf,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,OAAO,GAAG,MAAM,GAAG,SAAS,GAAG,QAAQ,CAAC;IAC9C,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB;AAED,MAAM,WAAW,YAAY;IAC3B,cAAc,EAAE,MAAM,CAAC;IACvB,IAAI,EAAE,KAAK,CAAC;QACV,WAAW,EAAE,MAAM,CAAC;QACpB,WAAW,EAAE,OAAO,CAAC,MAAM,CAAC,CAAC;QAC7B,OAAO,CAAC,EAAE,OAAO,CAAC;QAClB,WAAW,EAAE,MAAM,CAAC;QACpB,QAAQ,EAAE,MAAM,CAAC;KAClB,CAAC,CAAC;IACH,aAAa,EAAE,MAAM,CAAC;CACvB;AAcD,qBAAa,mBAAmB;IAQlB,OAAO,CAAC,QAAQ,CAAC,gBAAgB;IAP7C,OAAO,CAAC,QAAQ,CAAiB;IACjC,OAAO,CAAC,MAAM,CAAM;IACpB,OAAO,CAAC,SAAS,CAAS;IAC1B,OAAO,CAAC,cAAc,CAAK;IAC3B,OAAO,CAAC,aAAa,CAAK;IAC1B,OAAO,CAAC,IAAI,CAA4B;gBAEX,gBAAgB,SAAO;IAEpD,eAAe,CAAC,OAAO,EAAE,MAAM,EAAE,GAAG,EAAE,OAAO,GAAG,IAAI;IAcpD,cAAc,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI;IAMpC,KAAK,CAAC,UAAU,EAAE,MAAM,GAAG,MAAM,GAAG,MAAM;IAiB1C,KAAK,IAAI,MAAM;IAOf,KAAK,IAAI,YAAY;IAQrB,OAAO,IAAI,IAAI;IAMf,OAAO,CAAC,UAAU;IAWlB,OAAO,CAAC,YAAY;IAYpB,OAAO,CAAC,MAAM;IAqBd,OAAO,CAAC,YAAY;CAKrB"}
|
|
@@ -0,0 +1,133 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
// SPDX-License-Identifier: AGPL-3.0-or-later
|
|
3
|
+
// Copyright (C) 2024-2026 Gracker (Chris)
|
|
4
|
+
// This file is part of SmartPerfetto. See LICENSE for details.
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
exports.LLMEchoOutputStream = void 0;
|
|
7
|
+
const crypto_1 = require("crypto");
|
|
8
|
+
function hash(text) {
|
|
9
|
+
return (0, crypto_1.createHash)('sha256').update(text).digest('hex').slice(0, 12);
|
|
10
|
+
}
|
|
11
|
+
function replacementFor(pattern) {
|
|
12
|
+
if (pattern.kind === 'canary' || !pattern.codeRef)
|
|
13
|
+
return '[REDACTED_CODE_ECHO]';
|
|
14
|
+
const loc = pattern.codeRef.lineRange
|
|
15
|
+
? `${pattern.codeRef.filePath}:${pattern.codeRef.lineRange.start}-${pattern.codeRef.lineRange.end}`
|
|
16
|
+
: pattern.codeRef.filePath;
|
|
17
|
+
return `[Code: ${pattern.codeRef.symbol ?? pattern.codeRef.chunkId} @ ${loc}]`;
|
|
18
|
+
}
|
|
19
|
+
class LLMEchoOutputStream {
|
|
20
|
+
constructor(maxPatternLength = 2048) {
|
|
21
|
+
this.maxPatternLength = maxPatternLength;
|
|
22
|
+
this.patterns = [];
|
|
23
|
+
this.buffer = '';
|
|
24
|
+
this.destroyed = false;
|
|
25
|
+
this.bytesProcessed = 0;
|
|
26
|
+
this.redactedBytes = 0;
|
|
27
|
+
this.hits = [];
|
|
28
|
+
}
|
|
29
|
+
registerSnippet(snippet, ref) {
|
|
30
|
+
this.assertActive();
|
|
31
|
+
this.addPattern(snippet, 'exact', ref);
|
|
32
|
+
for (const line of snippet.split(/\r?\n/)) {
|
|
33
|
+
const trimmed = line.trim();
|
|
34
|
+
if (trimmed.length >= 8)
|
|
35
|
+
this.addPattern(trimmed, 'line', ref);
|
|
36
|
+
}
|
|
37
|
+
for (let i = 0; i < snippet.length; i += 80) {
|
|
38
|
+
const window = snippet.slice(i, i + 80).trim();
|
|
39
|
+
if (window.length >= 16)
|
|
40
|
+
this.addPattern(window, 'sliding', ref);
|
|
41
|
+
}
|
|
42
|
+
this.sortPatterns();
|
|
43
|
+
}
|
|
44
|
+
registerCanary(canary) {
|
|
45
|
+
this.assertActive();
|
|
46
|
+
this.addPattern(canary, 'canary');
|
|
47
|
+
this.sortPatterns();
|
|
48
|
+
}
|
|
49
|
+
write(tokenChunk) {
|
|
50
|
+
this.assertActive();
|
|
51
|
+
const text = Buffer.isBuffer(tokenChunk) ? tokenChunk.toString('utf-8') : tokenChunk;
|
|
52
|
+
this.bytesProcessed += Buffer.byteLength(text);
|
|
53
|
+
this.buffer += text;
|
|
54
|
+
const redacted = this.redact(this.buffer);
|
|
55
|
+
const safeWindow = Math.max(0, this.maxPatternLength - 1);
|
|
56
|
+
if (redacted.length <= safeWindow) {
|
|
57
|
+
this.buffer = redacted;
|
|
58
|
+
return '';
|
|
59
|
+
}
|
|
60
|
+
const emitLength = redacted.length - safeWindow;
|
|
61
|
+
const out = redacted.slice(0, emitLength);
|
|
62
|
+
this.buffer = redacted.slice(emitLength);
|
|
63
|
+
return out;
|
|
64
|
+
}
|
|
65
|
+
flush() {
|
|
66
|
+
this.assertActive();
|
|
67
|
+
const out = this.redact(this.buffer);
|
|
68
|
+
this.buffer = '';
|
|
69
|
+
return out;
|
|
70
|
+
}
|
|
71
|
+
stats() {
|
|
72
|
+
return {
|
|
73
|
+
bytesProcessed: this.bytesProcessed,
|
|
74
|
+
hits: [...this.hits],
|
|
75
|
+
redactedBytes: this.redactedBytes,
|
|
76
|
+
};
|
|
77
|
+
}
|
|
78
|
+
destroy() {
|
|
79
|
+
this.buffer = '';
|
|
80
|
+
this.patterns = [];
|
|
81
|
+
this.destroyed = true;
|
|
82
|
+
}
|
|
83
|
+
addPattern(text, kind, codeRef) {
|
|
84
|
+
const normalized = text.trim();
|
|
85
|
+
if (!normalized)
|
|
86
|
+
return;
|
|
87
|
+
this.patterns.push({
|
|
88
|
+
text: normalized,
|
|
89
|
+
hash: hash(normalized),
|
|
90
|
+
kind,
|
|
91
|
+
...(codeRef ? { codeRef } : {}),
|
|
92
|
+
});
|
|
93
|
+
}
|
|
94
|
+
sortPatterns() {
|
|
95
|
+
const seen = new Set();
|
|
96
|
+
this.patterns = this.patterns
|
|
97
|
+
.filter(pattern => {
|
|
98
|
+
const key = `${pattern.kind}:${pattern.hash}`;
|
|
99
|
+
if (seen.has(key))
|
|
100
|
+
return false;
|
|
101
|
+
seen.add(key);
|
|
102
|
+
return true;
|
|
103
|
+
})
|
|
104
|
+
.sort((a, b) => b.text.length - a.text.length);
|
|
105
|
+
}
|
|
106
|
+
redact(input) {
|
|
107
|
+
let output = input;
|
|
108
|
+
for (const pattern of this.patterns) {
|
|
109
|
+
let index = output.indexOf(pattern.text);
|
|
110
|
+
while (index >= 0) {
|
|
111
|
+
const replacement = replacementFor(pattern);
|
|
112
|
+
this.hits.push({
|
|
113
|
+
patternHash: pattern.hash,
|
|
114
|
+
patternKind: pattern.kind,
|
|
115
|
+
...(pattern.codeRef ? { codeRef: pattern.codeRef } : {}),
|
|
116
|
+
replacement,
|
|
117
|
+
atOffset: index,
|
|
118
|
+
});
|
|
119
|
+
this.redactedBytes += Buffer.byteLength(pattern.text);
|
|
120
|
+
output = output.slice(0, index) + replacement + output.slice(index + pattern.text.length);
|
|
121
|
+
index = output.indexOf(pattern.text, index + replacement.length);
|
|
122
|
+
}
|
|
123
|
+
}
|
|
124
|
+
return output;
|
|
125
|
+
}
|
|
126
|
+
assertActive() {
|
|
127
|
+
if (this.destroyed) {
|
|
128
|
+
throw new Error('LLMEchoOutputStream has been destroyed');
|
|
129
|
+
}
|
|
130
|
+
}
|
|
131
|
+
}
|
|
132
|
+
exports.LLMEchoOutputStream = LLMEchoOutputStream;
|
|
133
|
+
//# sourceMappingURL=llmEchoOutputFilter.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"llmEchoOutputFilter.js","sourceRoot":"","sources":["../../../src/services/security/llmEchoOutputFilter.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"secretPatterns.d.ts","sourceRoot":"","sources":["../../../src/services/security/secretPatterns.ts"],"names":[],"mappings":"AAUA,MAAM,WAAW,eAAe;IAC9B,IAAI,EAAE,MAAM,CAAC;IACb,aAAa,EAAE,MAAM,CAAC;CACvB;AAED,wBAAgB,aAAa,CAAC,KAAK,EAAE,MAAM,GAAG,eAAe,CAU5D"}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
// SPDX-License-Identifier: AGPL-3.0-or-later
|
|
3
|
+
// Copyright (C) 2024-2026 Gracker (Chris)
|
|
4
|
+
// This file is part of SmartPerfetto. See LICENSE for details.
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
exports.redactSecrets = redactSecrets;
|
|
7
|
+
const SECRET_PATTERNS = [
|
|
8
|
+
/(api[_-]?key|secret|password|token)\s*[:=]\s*['"]([^'"]{8,})['"]/gi,
|
|
9
|
+
/https?:\/\/[a-z0-9.-]+\.(?:internal|corp|local)\/[\w/-]+/gi,
|
|
10
|
+
/\b[A-Za-z0-9+/]{40,}={0,2}\b/g,
|
|
11
|
+
];
|
|
12
|
+
function redactSecrets(input) {
|
|
13
|
+
let text = input;
|
|
14
|
+
let redactedCount = 0;
|
|
15
|
+
for (const pattern of SECRET_PATTERNS) {
|
|
16
|
+
text = text.replace(pattern, () => {
|
|
17
|
+
redactedCount++;
|
|
18
|
+
return '[REDACTED_SECRET]';
|
|
19
|
+
});
|
|
20
|
+
}
|
|
21
|
+
return { text, redactedCount };
|
|
22
|
+
}
|
|
23
|
+
//# sourceMappingURL=secretPatterns.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"secretPatterns.js","sourceRoot":"","sources":["../../../src/services/security/secretPatterns.ts"],"names":[],"mappings":";AAAA,6CAA6C;AAC7C,0CAA0C;AAC1C,+DAA+D;;AAa/D,sCAUC;AArBD,MAAM,eAAe,GAAa;IAChC,oEAAoE;IACpE,4DAA4D;IAC5D,+BAA+B;CAChC,CAAC;AAOF,SAAgB,aAAa,CAAC,KAAa;IACzC,IAAI,IAAI,GAAG,KAAK,CAAC;IACjB,IAAI,aAAa,GAAG,CAAC,CAAC;IACtB,KAAK,MAAM,OAAO,IAAI,eAAe,EAAE,CAAC;QACtC,IAAI,GAAG,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE,GAAG,EAAE;YAChC,aAAa,EAAE,CAAC;YAChB,OAAO,mBAAmB,CAAC;QAC7B,CAAC,CAAC,CAAC;IACL,CAAC;IACD,OAAO,EAAC,IAAI,EAAE,aAAa,EAAC,CAAC;AAC/B,CAAC"}
|
|
@@ -9,7 +9,8 @@
|
|
|
9
9
|
* - 展示控制(display)
|
|
10
10
|
*/
|
|
11
11
|
import { SkillDefinition, SkillExecutionContext, SkillExecutionResult, StepResult, SkillEvent, SynthesizeConfig } from './types';
|
|
12
|
-
import { DataEnvelope, ColumnDefinition } from '../../types/dataContract';
|
|
12
|
+
import { DataEnvelope, DataEnvelopeTraceSide, ColumnDefinition } from '../../types/dataContract';
|
|
13
|
+
import type { IdentityResolutionV1 } from '../../types/identityContract';
|
|
13
14
|
import { DisplayLayer } from './types';
|
|
14
15
|
/**
|
|
15
16
|
* Synthesize Data - 标记为 synthesize 的步骤数据
|
|
@@ -106,10 +107,13 @@ export declare class SkillExecutor {
|
|
|
106
107
|
* 发送事件到前端
|
|
107
108
|
*/
|
|
108
109
|
private emit;
|
|
110
|
+
private resolveTraceSide;
|
|
109
111
|
private buildIdentityCacheKey;
|
|
110
112
|
private toNumber;
|
|
111
113
|
private splitSources;
|
|
112
114
|
private rowToIdentityCandidate;
|
|
115
|
+
private hasExactProcessIdTarget;
|
|
116
|
+
private identityQualityWarnings;
|
|
113
117
|
private normalizeIdentityStatus;
|
|
114
118
|
private resolveProcessIdentityForGate;
|
|
115
119
|
private applyIdentityGate;
|
|
@@ -297,7 +301,15 @@ export declare class SkillExecutor {
|
|
|
297
301
|
*
|
|
298
302
|
* 用于 v2.0 数据契约,统一 SSE 事件格式
|
|
299
303
|
*/
|
|
300
|
-
static toDataEnvelopes(result: SkillExecutionResult, columnDefinitions?: Record<string, Partial<ColumnDefinition>[]
|
|
304
|
+
static toDataEnvelopes(result: SkillExecutionResult, columnDefinitions?: Record<string, Partial<ColumnDefinition>[]>, provenance?: {
|
|
305
|
+
traceId?: string;
|
|
306
|
+
traceSide?: DataEnvelopeTraceSide;
|
|
307
|
+
}): DataEnvelope[];
|
|
308
|
+
static attachTraceProvenanceToEnvelope(envelope: DataEnvelope, provenance?: {
|
|
309
|
+
traceId?: string;
|
|
310
|
+
traceSide?: DataEnvelopeTraceSide;
|
|
311
|
+
}): DataEnvelope;
|
|
312
|
+
static attachIdentityResolutionToEnvelope(envelope: DataEnvelope, identityResolution?: IdentityResolutionV1): DataEnvelope;
|
|
301
313
|
/**
|
|
302
314
|
* 检查数据是否是迭代器结果
|
|
303
315
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"skillExecutor.d.ts","sourceRoot":"","sources":["../../../src/services/skillEngine/skillExecutor.ts"],"names":[],"mappings":"AAIA;;;;;;;;;GASG;AAEH,OAAO,EACL,eAAe,EAWf,qBAAqB,EACrB,oBAAoB,EACpB,UAAU,EAKV,UAAU,EACV,gBAAgB,EACjB,MAAM,SAAS,CAAC;AAwBjB,OAAO,EACL,YAAY,EACZ,gBAAgB,EAKjB,MAAM,0BAA0B,CAAC;
|
|
1
|
+
{"version":3,"file":"skillExecutor.d.ts","sourceRoot":"","sources":["../../../src/services/skillEngine/skillExecutor.ts"],"names":[],"mappings":"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"}
|