projscan 4.8.0 → 4.9.2
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 +102 -58
- package/dist/analyzers/deadCodeCheck.js +93 -0
- package/dist/analyzers/deadCodeCheck.js.map +1 -1
- package/dist/analyzers/unusedDependencyCheck.js +10 -10
- package/dist/analyzers/unusedDependencyCheck.js.map +1 -1
- package/dist/cli/commands/bugHunt.js +37 -8
- package/dist/cli/commands/bugHunt.js.map +1 -1
- package/dist/cli/commands/feedback.js +47 -1
- package/dist/cli/commands/feedback.js.map +1 -1
- package/dist/cli/commands/preflight.js +18 -2
- package/dist/cli/commands/preflight.js.map +1 -1
- package/dist/cli/commands/privacyCheck.js +5 -2
- package/dist/cli/commands/privacyCheck.js.map +1 -1
- package/dist/cli/commands/releaseTrain.js +9 -1
- package/dist/cli/commands/releaseTrain.js.map +1 -1
- package/dist/cli/commands/startAction.d.ts +2 -1
- package/dist/cli/commands/startAction.js +4 -4
- package/dist/cli/commands/startAction.js.map +1 -1
- package/dist/cli/commands/startConsole.d.ts +1 -0
- package/dist/cli/commands/startConsole.js +83 -7
- package/dist/cli/commands/startConsole.js.map +1 -1
- package/dist/cli/commands/startOptionsRegistration.js +1 -1
- package/dist/cli/commands/startOptionsRegistration.js.map +1 -1
- package/dist/core/adoption.js +13 -0
- package/dist/core/adoption.js.map +1 -1
- package/dist/core/bugHunt.js +62 -22
- package/dist/core/bugHunt.js.map +1 -1
- package/dist/core/bugHuntPreflightFindings.js +5 -2
- package/dist/core/bugHuntPreflightFindings.js.map +1 -1
- package/dist/core/evidenceComment.d.ts +2 -1
- package/dist/core/evidenceComment.js +45 -7
- package/dist/core/evidenceComment.js.map +1 -1
- package/dist/core/feedback.d.ts +2 -1
- package/dist/core/feedback.js +186 -0
- package/dist/core/feedback.js.map +1 -1
- package/dist/core/frameworkAstroSources.d.ts +2 -0
- package/dist/core/frameworkAstroSources.js +71 -0
- package/dist/core/frameworkAstroSources.js.map +1 -0
- package/dist/core/frameworkSourceResolvers.js +6 -0
- package/dist/core/frameworkSourceResolvers.js.map +1 -1
- package/dist/core/frameworkSources.js +2 -0
- package/dist/core/frameworkSources.js.map +1 -1
- package/dist/core/importGraph.d.ts +2 -0
- package/dist/core/importGraph.js +14 -5
- package/dist/core/importGraph.js.map +1 -1
- package/dist/core/intentRouterCatalog.js +8 -3
- package/dist/core/intentRouterCatalog.js.map +1 -1
- package/dist/core/intentRouterDependencySignals.d.ts +1 -0
- package/dist/core/intentRouterDependencySignals.js +14 -0
- package/dist/core/intentRouterDependencySignals.js.map +1 -1
- package/dist/core/intentRouterKeywordEarlyGuards.js +24 -1
- package/dist/core/intentRouterKeywordEarlyGuards.js.map +1 -1
- package/dist/core/intentRouterKeywordWeights.js +6 -0
- package/dist/core/intentRouterKeywordWeights.js.map +1 -1
- package/dist/core/intentRouterPreflightSignals.js +7 -2
- package/dist/core/intentRouterPreflightSignals.js.map +1 -1
- package/dist/core/intentRouterRegressionKeywordMatches.js +9 -2
- package/dist/core/intentRouterRegressionKeywordMatches.js.map +1 -1
- package/dist/core/intentRouterRegressionSignals.d.ts +1 -0
- package/dist/core/intentRouterRegressionSignals.js +11 -1
- package/dist/core/intentRouterRegressionSignals.js.map +1 -1
- package/dist/core/intentRouterReleaseSignals.js +2 -2
- package/dist/core/intentRouterReleaseSignals.js.map +1 -1
- package/dist/core/intentRouterVerificationSignals.js +5 -0
- package/dist/core/intentRouterVerificationSignals.js.map +1 -1
- package/dist/core/intentRouterWorkSignals.js +4 -2
- package/dist/core/intentRouterWorkSignals.js.map +1 -1
- package/dist/core/languages/LanguageAdapter.d.ts +2 -0
- package/dist/core/languages/javascriptAdapter.js +7 -28
- package/dist/core/languages/javascriptAdapter.js.map +1 -1
- package/dist/core/languages/javascriptProjectConfig.d.ts +20 -0
- package/dist/core/languages/javascriptProjectConfig.js +479 -0
- package/dist/core/languages/javascriptProjectConfig.js.map +1 -0
- package/dist/core/preflightCautionBudget.d.ts +2 -0
- package/dist/core/preflightCautionBudget.js +85 -0
- package/dist/core/preflightCautionBudget.js.map +1 -0
- package/dist/core/preflightInputs.d.ts +30 -2
- package/dist/core/preflightInputs.js +39 -12
- package/dist/core/preflightInputs.js.map +1 -1
- package/dist/core/preflightReasons.js +35 -9
- package/dist/core/preflightReasons.js.map +1 -1
- package/dist/core/preflightReleaseScale.js +16 -5
- package/dist/core/preflightReleaseScale.js.map +1 -1
- package/dist/core/preflightReport.js +3 -0
- package/dist/core/preflightReport.js.map +1 -1
- package/dist/core/preflightSuggestedActions.js +3 -1
- package/dist/core/preflightSuggestedActions.js.map +1 -1
- package/dist/core/preflightVerdict.js +3 -0
- package/dist/core/preflightVerdict.js.map +1 -1
- package/dist/core/qualityScorecard.js +39 -21
- package/dist/core/qualityScorecard.js.map +1 -1
- package/dist/core/releaseEvidence.d.ts +2 -2
- package/dist/core/releaseEvidence.js +3 -2
- package/dist/core/releaseEvidence.js.map +1 -1
- package/dist/core/releaseEvidenceArtifacts.js +12 -4
- package/dist/core/releaseEvidenceArtifacts.js.map +1 -1
- package/dist/core/releaseTrain.d.ts +11 -1
- package/dist/core/releaseTrain.js +54 -2
- package/dist/core/releaseTrain.js.map +1 -1
- package/dist/core/repositoryScanner.js +5 -2
- package/dist/core/repositoryScanner.js.map +1 -1
- package/dist/core/reviewVerdict.js +37 -5
- package/dist/core/reviewVerdict.js.map +1 -1
- package/dist/core/startAdoptionGaps.js +1 -1
- package/dist/core/startAdoptionGaps.js.map +1 -1
- package/dist/core/startClaimTargets.d.ts +2 -0
- package/dist/core/startClaimTargets.js +14 -0
- package/dist/core/startClaimTargets.js.map +1 -0
- package/dist/core/startDailyWorkflows.d.ts +2 -0
- package/dist/core/startDailyWorkflows.js +50 -0
- package/dist/core/startDailyWorkflows.js.map +1 -0
- package/dist/core/startEnvTargets.d.ts +1 -0
- package/dist/core/startEnvTargets.js +9 -0
- package/dist/core/startEnvTargets.js.map +1 -0
- package/dist/core/startFileTargets.d.ts +2 -0
- package/dist/core/startFileTargets.js +19 -0
- package/dist/core/startFileTargets.js.map +1 -0
- package/dist/core/startGeneratedConfigSearchTargets.d.ts +1 -0
- package/dist/core/startGeneratedConfigSearchTargets.js +22 -0
- package/dist/core/startGeneratedConfigSearchTargets.js.map +1 -0
- package/dist/core/startGraphTargets.d.ts +10 -0
- package/dist/core/startGraphTargets.js +82 -0
- package/dist/core/startGraphTargets.js.map +1 -0
- package/dist/core/startHighPrioritySearchTargets.d.ts +1 -0
- package/dist/core/startHighPrioritySearchTargets.js +24 -0
- package/dist/core/startHighPrioritySearchTargets.js.map +1 -0
- package/dist/core/startImpactTargets.d.ts +1 -0
- package/dist/core/startImpactTargets.js +18 -0
- package/dist/core/startImpactTargets.js.map +1 -0
- package/dist/core/startIntentApiContractQueries.d.ts +1 -0
- package/dist/core/startIntentApiContractQueries.js +50 -0
- package/dist/core/startIntentApiContractQueries.js.map +1 -0
- package/dist/core/startIntentAuthorizationQueries.d.ts +1 -0
- package/dist/core/startIntentAuthorizationQueries.js +29 -0
- package/dist/core/startIntentAuthorizationQueries.js.map +1 -0
- package/dist/core/startIntentBackgroundWorkQueries.d.ts +1 -0
- package/dist/core/startIntentBackgroundWorkQueries.js +23 -0
- package/dist/core/startIntentBackgroundWorkQueries.js.map +1 -0
- package/dist/core/startIntentCommunicationArtifactQueries.d.ts +1 -0
- package/dist/core/startIntentCommunicationArtifactQueries.js +25 -0
- package/dist/core/startIntentCommunicationArtifactQueries.js.map +1 -0
- package/dist/core/startIntentDataAccessQueries.d.ts +1 -0
- package/dist/core/startIntentDataAccessQueries.js +60 -0
- package/dist/core/startIntentDataAccessQueries.js.map +1 -0
- package/dist/core/startIntentDataContractQueries.d.ts +1 -0
- package/dist/core/startIntentDataContractQueries.js +75 -0
- package/dist/core/startIntentDataContractQueries.js.map +1 -0
- package/dist/core/startIntentDomainSearchQueries.d.ts +1 -0
- package/dist/core/startIntentDomainSearchQueries.js +47 -0
- package/dist/core/startIntentDomainSearchQueries.js.map +1 -0
- package/dist/core/startIntentDomainWorkflowQueries.d.ts +1 -0
- package/dist/core/startIntentDomainWorkflowQueries.js +28 -0
- package/dist/core/startIntentDomainWorkflowQueries.js.map +1 -0
- package/dist/core/startIntentFrontendPageRouteQueries.d.ts +1 -0
- package/dist/core/startIntentFrontendPageRouteQueries.js +26 -0
- package/dist/core/startIntentFrontendPageRouteQueries.js.map +1 -0
- package/dist/core/startIntentInfraArtifactQueries.d.ts +1 -0
- package/dist/core/startIntentInfraArtifactQueries.js +62 -0
- package/dist/core/startIntentInfraArtifactQueries.js.map +1 -0
- package/dist/core/startIntentIntegrationQueries.d.ts +1 -0
- package/dist/core/startIntentIntegrationQueries.js +96 -0
- package/dist/core/startIntentIntegrationQueries.js.map +1 -0
- package/dist/core/startIntentNavigationLayoutQueries.d.ts +1 -0
- package/dist/core/startIntentNavigationLayoutQueries.js +22 -0
- package/dist/core/startIntentNavigationLayoutQueries.js.map +1 -0
- package/dist/core/startIntentObservabilityQueries.d.ts +1 -0
- package/dist/core/startIntentObservabilityQueries.js +26 -0
- package/dist/core/startIntentObservabilityQueries.js.map +1 -0
- package/dist/core/startIntentReliabilityQueries.d.ts +1 -0
- package/dist/core/startIntentReliabilityQueries.js +85 -0
- package/dist/core/startIntentReliabilityQueries.js.map +1 -0
- package/dist/core/startIntentStateManagementQueries.d.ts +1 -0
- package/dist/core/startIntentStateManagementQueries.js +61 -0
- package/dist/core/startIntentStateManagementQueries.js.map +1 -0
- package/dist/core/startIntentStyleSystemQueries.d.ts +1 -0
- package/dist/core/startIntentStyleSystemQueries.js +26 -0
- package/dist/core/startIntentStyleSystemQueries.js.map +1 -0
- package/dist/core/startIntentTargetText.d.ts +2 -0
- package/dist/core/startIntentTargetText.js +9 -0
- package/dist/core/startIntentTargetText.js.map +1 -0
- package/dist/core/startIntentTargets.d.ts +10 -24
- package/dist/core/startIntentTargets.js +15 -1123
- package/dist/core/startIntentTargets.js.map +1 -1
- package/dist/core/startIntentTestDataQueries.d.ts +1 -0
- package/dist/core/startIntentTestDataQueries.js +28 -0
- package/dist/core/startIntentTestDataQueries.js.map +1 -0
- package/dist/core/startIntentToolingConfigQueries.d.ts +1 -0
- package/dist/core/startIntentToolingConfigQueries.js +31 -0
- package/dist/core/startIntentToolingConfigQueries.js.map +1 -0
- package/dist/core/startIntentUiInteractionQueries.d.ts +1 -0
- package/dist/core/startIntentUiInteractionQueries.js +71 -0
- package/dist/core/startIntentUiInteractionQueries.js.map +1 -0
- package/dist/core/startIssueTargets.d.ts +1 -0
- package/dist/core/startIssueTargets.js +19 -0
- package/dist/core/startIssueTargets.js.map +1 -0
- package/dist/core/startMissionPolicy.d.ts +2 -2
- package/dist/core/startMissionPolicy.js +63 -7
- package/dist/core/startMissionPolicy.js.map +1 -1
- package/dist/core/startMode.d.ts +3 -1
- package/dist/core/startMode.js +39 -7
- package/dist/core/startMode.js.map +1 -1
- package/dist/core/startOptions.d.ts +2 -2
- package/dist/core/startOptions.js +1 -1
- package/dist/core/startOptions.js.map +1 -1
- package/dist/core/startOwnershipSearchTargets.d.ts +2 -0
- package/dist/core/startOwnershipSearchTargets.js +23 -0
- package/dist/core/startOwnershipSearchTargets.js.map +1 -0
- package/dist/core/startPackageTargets.d.ts +4 -0
- package/dist/core/startPackageTargets.js +91 -0
- package/dist/core/startPackageTargets.js.map +1 -0
- package/dist/core/startQuotedTextTargets.d.ts +1 -0
- package/dist/core/startQuotedTextTargets.js +7 -0
- package/dist/core/startQuotedTextTargets.js.map +1 -0
- package/dist/core/startReportBuilder.d.ts +1 -0
- package/dist/core/startReportBuilder.js +2 -1
- package/dist/core/startReportBuilder.js.map +1 -1
- package/dist/core/startReportContext.d.ts +1 -0
- package/dist/core/startReportContext.js +3 -0
- package/dist/core/startReportContext.js.map +1 -1
- package/dist/core/startReportScopeTargets.d.ts +1 -0
- package/dist/core/startReportScopeTargets.js +56 -0
- package/dist/core/startReportScopeTargets.js.map +1 -0
- package/dist/core/startShellArgs.d.ts +4 -0
- package/dist/core/startShellArgs.js +19 -0
- package/dist/core/startShellArgs.js.map +1 -0
- package/dist/core/startSymbolTargets.d.ts +2 -0
- package/dist/core/startSymbolTargets.js +28 -0
- package/dist/core/startSymbolTargets.js.map +1 -0
- package/dist/core/startTestRouteSearchTargets.d.ts +1 -0
- package/dist/core/startTestRouteSearchTargets.js +34 -0
- package/dist/core/startTestRouteSearchTargets.js.map +1 -0
- package/dist/core/understand.js +20 -22
- package/dist/core/understand.js.map +1 -1
- package/dist/core/workplan.js +24 -12
- package/dist/core/workplan.js.map +1 -1
- package/dist/mcp/tools/workspaceGraph.js +12 -9
- package/dist/mcp/tools/workspaceGraph.js.map +1 -1
- package/dist/projscan-sbom.cdx.json +6 -6
- package/dist/publicAgent.d.ts +1 -1
- package/dist/publicAgent.js +1 -1
- package/dist/publicAgent.js.map +1 -1
- package/dist/tool-manifest.json +2 -2
- package/dist/types/bugHunt.d.ts +1 -1
- package/dist/types/dogfood.d.ts +17 -0
- package/dist/types/evidencePack.d.ts +8 -0
- package/dist/types/preflight.d.ts +18 -0
- package/dist/types/releaseTrain.d.ts +7 -0
- package/dist/types/startCommon.d.ts +8 -0
- package/dist/types/startMissionControl.d.ts +2 -1
- package/dist/utils/fileWalker.d.ts +1 -0
- package/dist/utils/fileWalker.js +6 -1
- package/dist/utils/fileWalker.js.map +1 -1
- package/dist/utils/formatSupport.d.ts +1 -0
- package/dist/utils/formatSupport.js +1 -0
- package/dist/utils/formatSupport.js.map +1 -1
- package/docs/GUIDE.md +50 -11
- package/docs/ROADMAP.md +41 -16
- package/docs/demos/projscan-4-1-demo.html +4 -4
- package/docs/examples/adoption-workflows.md +48 -0
- package/docs/projscan-mission-control.gif +0 -0
- package/docs/projscan-mission-control.png +0 -0
- package/docs/projscan-mission-proof.gif +0 -0
- package/docs/projscan-proof-router.png +0 -0
- package/package.json +12 -12
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"startIntentIntegrationQueries.js","sourceRoot":"","sources":["../../src/core/startIntentIntegrationQueries.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare function extractNavigationLayoutQuery(intent: string): string | undefined;
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
export function extractNavigationLayoutQuery(intent) {
|
|
2
|
+
const compactIntent = intent.trim().replace(/[?!.\s]+$/g, '');
|
|
3
|
+
const sidebarNav = compactIntent.match(/\b(?:where\s+(?:is|are)|find|locate|search(?:\s+for)?|lookup)\s+(?:the\s+)?(?:sidebar\s+)?(?:nav|navigation|menu)\s+items?\s+(?:for|of|on|in)\s+(.+?)$/i);
|
|
4
|
+
if (sidebarNav?.[1])
|
|
5
|
+
return `${unwrapTarget(sidebarNav[1].trim())} sidebar nav item`;
|
|
6
|
+
const breadcrumb = compactIntent.match(/\b(?:which|what)\s+breadcrumbs?\s+(?:renders?|shows?|for|of)\s+(.+?)$/i);
|
|
7
|
+
if (breadcrumb?.[1])
|
|
8
|
+
return `${unwrapTarget(breadcrumb[1].trim())} breadcrumb`;
|
|
9
|
+
const pageTitle = compactIntent.match(/\b(?:where\s+(?:is|are)|find|locate|search(?:\s+for)?|lookup)\s+(?:the\s+)?page\s+(?:title|metadata|meta)\s+(?:set|sets|defined|configured)\s+(?:for|of|on|in)\s+(.+?)$/i);
|
|
10
|
+
if (pageTitle?.[1])
|
|
11
|
+
return `${unwrapTarget(pageTitle[1].trim())} page title`;
|
|
12
|
+
const nextLayout = compactIntent.match(/\b(?:where\s+(?:is|are)|find|locate|search(?:\s+for)?|lookup)\s+(?:the\s+)?next(?:\.js|js)?\s+layouts?\s+(?:for|of|on|in)\s+(.+?)$/i);
|
|
13
|
+
if (nextLayout?.[1])
|
|
14
|
+
return `${unwrapTarget(nextLayout[1].trim())} Next.js layout`;
|
|
15
|
+
return undefined;
|
|
16
|
+
}
|
|
17
|
+
function unwrapTarget(value) {
|
|
18
|
+
const trimmed = value.trim();
|
|
19
|
+
const wrapped = trimmed.match(/^([`'"])(.+)\1$/);
|
|
20
|
+
return (wrapped?.[2] ?? trimmed).trim();
|
|
21
|
+
}
|
|
22
|
+
//# sourceMappingURL=startIntentNavigationLayoutQueries.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"startIntentNavigationLayoutQueries.js","sourceRoot":"","sources":["../../src/core/startIntentNavigationLayoutQueries.ts"],"names":[],"mappings":"AAAA,MAAM,UAAU,4BAA4B,CAAC,MAAc;IACzD,MAAM,aAAa,GAAG,MAAM,CAAC,IAAI,EAAE,CAAC,OAAO,CAAC,YAAY,EAAE,EAAE,CAAC,CAAC;IAE9D,MAAM,UAAU,GAAG,aAAa,CAAC,KAAK,CACpC,yJAAyJ,CAC1J,CAAC;IACF,IAAI,UAAU,EAAE,CAAC,CAAC,CAAC;QAAE,OAAO,GAAG,YAAY,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,mBAAmB,CAAC;IAErF,MAAM,UAAU,GAAG,aAAa,CAAC,KAAK,CACpC,wEAAwE,CACzE,CAAC;IACF,IAAI,UAAU,EAAE,CAAC,CAAC,CAAC;QAAE,OAAO,GAAG,YAAY,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,aAAa,CAAC;IAE/E,MAAM,SAAS,GAAG,aAAa,CAAC,KAAK,CACnC,0KAA0K,CAC3K,CAAC;IACF,IAAI,SAAS,EAAE,CAAC,CAAC,CAAC;QAAE,OAAO,GAAG,YAAY,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,aAAa,CAAC;IAE7E,MAAM,UAAU,GAAG,aAAa,CAAC,KAAK,CACpC,qIAAqI,CACtI,CAAC;IACF,IAAI,UAAU,EAAE,CAAC,CAAC,CAAC;QAAE,OAAO,GAAG,YAAY,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,iBAAiB,CAAC;IAEnF,OAAO,SAAS,CAAC;AACnB,CAAC;AAED,SAAS,YAAY,CAAC,KAAa;IACjC,MAAM,OAAO,GAAG,KAAK,CAAC,IAAI,EAAE,CAAC;IAC7B,MAAM,OAAO,GAAG,OAAO,CAAC,KAAK,CAAC,iBAAiB,CAAC,CAAC;IACjD,OAAO,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,IAAI,OAAO,CAAC,CAAC,IAAI,EAAE,CAAC;AAC1C,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare function extractObservabilityQuery(intent: string): string | undefined;
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
export function extractObservabilityQuery(intent) {
|
|
2
|
+
const compactIntent = intent.trim().replace(/[?!.\s]+$/g, '');
|
|
3
|
+
const logCheck = compactIntent.match(/\b(?:what|which)\s+logs?\s+should\s+i\s+check\s+(?:for|about|on)\s+(.+?)$/i);
|
|
4
|
+
if (logCheck?.[1])
|
|
5
|
+
return `${unwrapTarget(logCheck[1].trim())} logs`;
|
|
6
|
+
const dashboard = compactIntent.match(/\b(?:find|locate|search(?:\s+for)?|lookup|where\s+(?:is|are))\s+(?:the\s+)?dashboards?\s+(?:for|about|on)\s+(.+?)$/i);
|
|
7
|
+
if (dashboard?.[1])
|
|
8
|
+
return `${unwrapTarget(dashboard[1].trim())} dashboard`;
|
|
9
|
+
const serviceInit = compactIntent.match(/\b(?:where\s+(?:do|does)\s+(?:we\s+)?(?:initialize|initialise|init)|find|locate|search(?:\s+for)?|lookup)\s+(Sentry|Datadog|Prometheus)\b/i);
|
|
10
|
+
if (serviceInit?.[1])
|
|
11
|
+
return serviceInit[1];
|
|
12
|
+
const observabilityTarget = '(?:metrics?|prometheus\\s+metrics?|alerts?|analytics\\s+events?|events?|sentry\\s+errors?|datadog)';
|
|
13
|
+
const lookup = compactIntent.match(new RegExp(`\\b(?:where\\s+(?:are|is)|which|what|find|locate|search(?:\\s+for)?|lookup)\\s+(?:the\\s+)?(.*?\\b${observabilityTarget}\\b)(?:\\s+(?:emitted|sent|configured|handled|initialized|initialised|created|defined))?$`, 'i'));
|
|
14
|
+
if (lookup?.[1] && isObservabilityTarget(lookup[1]))
|
|
15
|
+
return unwrapTarget(lookup[1].trim()).replace(/^the\s+/i, '');
|
|
16
|
+
return undefined;
|
|
17
|
+
}
|
|
18
|
+
function isObservabilityTarget(target) {
|
|
19
|
+
return /\b(?:metric|metrics|prometheus|alert|alerts|analytics|events?|sentry|datadog|dashboard|dashboards|logs?)\b/i.test(target);
|
|
20
|
+
}
|
|
21
|
+
function unwrapTarget(value) {
|
|
22
|
+
const trimmed = value.trim();
|
|
23
|
+
const wrapped = trimmed.match(/^([`'"])(.+)\1$/);
|
|
24
|
+
return (wrapped?.[2] ?? trimmed).trim();
|
|
25
|
+
}
|
|
26
|
+
//# sourceMappingURL=startIntentObservabilityQueries.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"startIntentObservabilityQueries.js","sourceRoot":"","sources":["../../src/core/startIntentObservabilityQueries.ts"],"names":[],"mappings":"AAAA,MAAM,UAAU,yBAAyB,CAAC,MAAc;IACtD,MAAM,aAAa,GAAG,MAAM,CAAC,IAAI,EAAE,CAAC,OAAO,CAAC,YAAY,EAAE,EAAE,CAAC,CAAC;IAC9D,MAAM,QAAQ,GAAG,aAAa,CAAC,KAAK,CAClC,4EAA4E,CAC7E,CAAC;IACF,IAAI,QAAQ,EAAE,CAAC,CAAC,CAAC;QAAE,OAAO,GAAG,YAAY,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,OAAO,CAAC;IAErE,MAAM,SAAS,GAAG,aAAa,CAAC,KAAK,CACnC,qHAAqH,CACtH,CAAC;IACF,IAAI,SAAS,EAAE,CAAC,CAAC,CAAC;QAAE,OAAO,GAAG,YAAY,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,YAAY,CAAC;IAE5E,MAAM,WAAW,GAAG,aAAa,CAAC,KAAK,CACrC,4IAA4I,CAC7I,CAAC;IACF,IAAI,WAAW,EAAE,CAAC,CAAC,CAAC;QAAE,OAAO,WAAW,CAAC,CAAC,CAAC,CAAC;IAE5C,MAAM,mBAAmB,GACvB,oGAAoG,CAAC;IACvG,MAAM,MAAM,GAAG,aAAa,CAAC,KAAK,CAChC,IAAI,MAAM,CACR,qGAAqG,mBAAmB,2FAA2F,EACnN,GAAG,CACJ,CACF,CAAC;IACF,IAAI,MAAM,EAAE,CAAC,CAAC,CAAC,IAAI,qBAAqB,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;QACjD,OAAO,YAAY,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,UAAU,EAAE,EAAE,CAAC,CAAC;IAChE,OAAO,SAAS,CAAC;AACnB,CAAC;AAED,SAAS,qBAAqB,CAAC,MAAc;IAC3C,OAAO,6GAA6G,CAAC,IAAI,CACvH,MAAM,CACP,CAAC;AACJ,CAAC;AAED,SAAS,YAAY,CAAC,KAAa;IACjC,MAAM,OAAO,GAAG,KAAK,CAAC,IAAI,EAAE,CAAC;IAC7B,MAAM,OAAO,GAAG,OAAO,CAAC,KAAK,CAAC,iBAAiB,CAAC,CAAC;IACjD,OAAO,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,IAAI,OAAO,CAAC,CAAC,IAAI,EAAE,CAAC;AAC1C,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare function extractReliabilityQuery(intent: string): string | undefined;
|
|
@@ -0,0 +1,85 @@
|
|
|
1
|
+
export function extractReliabilityQuery(intent) {
|
|
2
|
+
const compactIntent = intent.trim().replace(/[?!.\s]+$/g, '');
|
|
3
|
+
return firstQuery(compactIntent, [
|
|
4
|
+
extractRateLimitQuery,
|
|
5
|
+
extractCacheQuery,
|
|
6
|
+
extractRetryQuery,
|
|
7
|
+
extractTimeoutQuery,
|
|
8
|
+
extractResiliencePatternQuery,
|
|
9
|
+
]);
|
|
10
|
+
}
|
|
11
|
+
function firstQuery(intent, extractors) {
|
|
12
|
+
for (const extract of extractors) {
|
|
13
|
+
const query = extract(intent);
|
|
14
|
+
if (query)
|
|
15
|
+
return query;
|
|
16
|
+
}
|
|
17
|
+
return undefined;
|
|
18
|
+
}
|
|
19
|
+
function extractRateLimitQuery(compactIntent) {
|
|
20
|
+
const scopedRateLimit = compactIntent.match(/\b(?:what|which)\s+rate\s+limits?\s+(?:protects?|guards?|apply\s+to|for)\s+(.+?)$/i);
|
|
21
|
+
if (scopedRateLimit?.[1])
|
|
22
|
+
return `${unwrapTarget(scopedRateLimit[1].trim())} rate limits`;
|
|
23
|
+
if (/\brate\s+limiting\b/i.test(compactIntent))
|
|
24
|
+
return 'rate limiting';
|
|
25
|
+
if (/\brate\s+limits?\b/i.test(compactIntent))
|
|
26
|
+
return 'rate limits';
|
|
27
|
+
if (/\bthrottl(?:e|ing)\b/i.test(compactIntent))
|
|
28
|
+
return 'throttling';
|
|
29
|
+
return undefined;
|
|
30
|
+
}
|
|
31
|
+
function extractCacheQuery(compactIntent) {
|
|
32
|
+
const cacheFor = compactIntent.match(/\b(?:where\s+(?:is|are)|find|locate|search(?:\s+for)?|lookup)\s+(?:the\s+)?cache\s+(?:invalidated|cleared|expired|refreshed)\s+(?:for|on|in)\s+(.+?)$/i);
|
|
33
|
+
if (cacheFor?.[1])
|
|
34
|
+
return `${unwrapTarget(cacheFor[1].trim())} cache invalidation`;
|
|
35
|
+
const invalidatesCache = compactIntent.match(/\bwhat\s+invalidates\s+(?:the\s+)?(.+?)\s+cache$/i);
|
|
36
|
+
if (invalidatesCache?.[1])
|
|
37
|
+
return `${unwrapTarget(invalidatesCache[1].trim())} cache invalidation`;
|
|
38
|
+
const cacheConfigured = compactIntent.match(/\b(?:where\s+(?:is|are)|find|locate|search(?:\s+for)?|lookup)\s+(?:the\s+)?(.+?\b(?:cache|redis)\b)\s+(?:configured|defined|created|used|handled)$/i);
|
|
39
|
+
if (cacheConfigured?.[1])
|
|
40
|
+
return unwrapTarget(cacheConfigured[1].trim());
|
|
41
|
+
return undefined;
|
|
42
|
+
}
|
|
43
|
+
function extractRetryQuery(compactIntent) {
|
|
44
|
+
const retryFor = compactIntent.match(/\b(?:find|locate|search(?:\s+for)?|lookup|where\s+(?:is|are))\s+(?:the\s+)?(?:retry|retries|backoff)\s+(?:logic\s+)?(?:for|on|in)\s+(.+?)$/i);
|
|
45
|
+
if (retryFor?.[1])
|
|
46
|
+
return `${unwrapTarget(retryFor[1].trim())} retry logic`;
|
|
47
|
+
const retriesTarget = compactIntent.match(/\b(?:which|what)\s+(?:code\s+)?retries\s+(.+?)$/i);
|
|
48
|
+
if (retriesTarget?.[1])
|
|
49
|
+
return `${unwrapTarget(retriesTarget[1].trim())} retries`;
|
|
50
|
+
if (/\bbackoff\b/i.test(compactIntent))
|
|
51
|
+
return 'backoff';
|
|
52
|
+
if (/\bretr(?:y|ies|ied)\b/i.test(compactIntent))
|
|
53
|
+
return 'retry logic';
|
|
54
|
+
return undefined;
|
|
55
|
+
}
|
|
56
|
+
function extractTimeoutQuery(compactIntent) {
|
|
57
|
+
const timeoutFor = compactIntent.match(/\b(?:where\s+(?:is|are)|find|locate|search(?:\s+for)?|lookup)\s+(?:the\s+)?timeouts?\s+(?:configured|defined|set)?\s*(?:for|on|in)\s+(.+?)$/i);
|
|
58
|
+
if (timeoutFor?.[1])
|
|
59
|
+
return `${unwrapTarget(timeoutFor[1].trim())} timeout`;
|
|
60
|
+
const timeoutTarget = compactIntent.match(/\b(?:what|which)\s+sets?\s+(.+?\btimeouts?)$/i);
|
|
61
|
+
if (timeoutTarget?.[1])
|
|
62
|
+
return unwrapTarget(timeoutTarget[1].trim());
|
|
63
|
+
return undefined;
|
|
64
|
+
}
|
|
65
|
+
function extractResiliencePatternQuery(compactIntent) {
|
|
66
|
+
if (/\bcircuit\s+breaker\b/i.test(compactIntent))
|
|
67
|
+
return 'circuit breaker';
|
|
68
|
+
const idempotency = compactIntent.match(/\b(?:find|locate|search(?:\s+for)?|lookup|where\s+(?:is|are))\s+(?:the\s+)?(.+?\bidempotenc(?:y|e)\b.*|idempotent\s+.+?)$/i);
|
|
69
|
+
if (idempotency?.[1])
|
|
70
|
+
return unwrapTarget(idempotency[1].trim());
|
|
71
|
+
if (/\bwebhook\b/i.test(compactIntent) &&
|
|
72
|
+
/\bsignatures?\b/i.test(compactIntent) &&
|
|
73
|
+
/\b(?:verified|verify|verification)\b/i.test(compactIntent)) {
|
|
74
|
+
return 'webhook signature verification';
|
|
75
|
+
}
|
|
76
|
+
if (/\bdebounce(?:d)?\b/i.test(compactIntent))
|
|
77
|
+
return 'debounce';
|
|
78
|
+
return undefined;
|
|
79
|
+
}
|
|
80
|
+
function unwrapTarget(value) {
|
|
81
|
+
const trimmed = value.trim();
|
|
82
|
+
const wrapped = trimmed.match(/^([`'"])(.+)\1$/);
|
|
83
|
+
return (wrapped?.[2] ?? trimmed).trim();
|
|
84
|
+
}
|
|
85
|
+
//# sourceMappingURL=startIntentReliabilityQueries.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"startIntentReliabilityQueries.js","sourceRoot":"","sources":["../../src/core/startIntentReliabilityQueries.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare function extractStateManagementQuery(intent: string): string | undefined;
|
|
@@ -0,0 +1,61 @@
|
|
|
1
|
+
export function extractStateManagementQuery(intent) {
|
|
2
|
+
const compactIntent = intent.trim().replace(/[?!.\s]+$/g, '');
|
|
3
|
+
if (/\b(?:pii|gdpr|secret|secrets|token|tokens|password|customer|personal|leak|leaks|leaking|security|retention)\b/i.test(compactIntent))
|
|
4
|
+
return undefined;
|
|
5
|
+
return stateManagementFromRules(compactIntent) ?? frameworkStoreQuery(compactIntent);
|
|
6
|
+
}
|
|
7
|
+
const STATE_MANAGEMENT_RULES = [
|
|
8
|
+
{
|
|
9
|
+
pattern: /\b(?:where\s+(?:is|are)|find|locate|search(?:\s+for)?|lookup)\s+(?:the\s+)?(.+?)\s+state\s+(?:stored|store|stores)\b/i,
|
|
10
|
+
suffix: 'state store',
|
|
11
|
+
},
|
|
12
|
+
{
|
|
13
|
+
pattern: /\b(?:where\s+(?:is|are)|find|locate|search(?:\s+for)?|lookup)\s+(?:the\s+)?redux\s+slices?\s+(?:for|of|on|in)\s+(.+?)$/i,
|
|
14
|
+
suffix: 'Redux slice',
|
|
15
|
+
},
|
|
16
|
+
{
|
|
17
|
+
pattern: /\b(?:which|what|where\s+(?:is|are)|find|locate|search(?:\s+for)?|lookup)\s+(?:context\s+)?providers?\s+(?:supplies|supplied|provides|provided|for|of)\s+(.+?)$/i,
|
|
18
|
+
suffix: 'context provider',
|
|
19
|
+
},
|
|
20
|
+
{
|
|
21
|
+
pattern: /\b(?:which|what)\s+hooks?\s+(?:fetch|fetches|loads?|queries?)\s+(.+?)$/i,
|
|
22
|
+
suffix: 'hook',
|
|
23
|
+
},
|
|
24
|
+
{
|
|
25
|
+
pattern: /\b(?:where\s+(?:is|are)|find|locate|search(?:\s+for)?|lookup)\s+(?:the\s+)?react\s+query\s+mutations?\s+(?:for|of|on|in)\s+(.+?)$/i,
|
|
26
|
+
suffix: 'React Query mutation',
|
|
27
|
+
},
|
|
28
|
+
{
|
|
29
|
+
pattern: /\b(?:where\s+(?:is|are)|find|locate|search(?:\s+for)?|lookup)\s+(?:the\s+)?react\s+query\s+quer(?:y|ies)\s+(?:for|of|on|in)\s+(.+?)$/i,
|
|
30
|
+
suffix: 'React Query query',
|
|
31
|
+
},
|
|
32
|
+
];
|
|
33
|
+
function stateManagementFromRules(compactIntent) {
|
|
34
|
+
for (const rule of STATE_MANAGEMENT_RULES) {
|
|
35
|
+
const match = compactIntent.match(rule.pattern);
|
|
36
|
+
if (match?.[1])
|
|
37
|
+
return `${unwrapTarget(match[1].trim())} ${rule.suffix}`;
|
|
38
|
+
}
|
|
39
|
+
return undefined;
|
|
40
|
+
}
|
|
41
|
+
function frameworkStoreQuery(compactIntent) {
|
|
42
|
+
const frameworkStore = compactIntent.match(/\b(?:where\s+(?:is|are)|find|locate|search(?:\s+for)?|lookup)\s+(?:the\s+)?(redux|zustand|jotai|recoil)\s+stores?\s+(?:for|of|on|in)\s+(.+?)$/i);
|
|
43
|
+
if (frameworkStore?.[1] && frameworkStore[2]) {
|
|
44
|
+
return `${unwrapTarget(frameworkStore[2].trim())} ${normalizeStateFramework(frameworkStore[1])} store`;
|
|
45
|
+
}
|
|
46
|
+
return undefined;
|
|
47
|
+
}
|
|
48
|
+
function normalizeStateFramework(value) {
|
|
49
|
+
return value
|
|
50
|
+
.trim()
|
|
51
|
+
.replace(/\bredux\b/gi, 'Redux')
|
|
52
|
+
.replace(/\bzustand\b/gi, 'Zustand')
|
|
53
|
+
.replace(/\bjotai\b/gi, 'Jotai')
|
|
54
|
+
.replace(/\brecoil\b/gi, 'Recoil');
|
|
55
|
+
}
|
|
56
|
+
function unwrapTarget(value) {
|
|
57
|
+
const trimmed = value.trim();
|
|
58
|
+
const wrapped = trimmed.match(/^([`'"])(.+)\1$/);
|
|
59
|
+
return (wrapped?.[2] ?? trimmed).trim();
|
|
60
|
+
}
|
|
61
|
+
//# sourceMappingURL=startIntentStateManagementQueries.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"startIntentStateManagementQueries.js","sourceRoot":"","sources":["../../src/core/startIntentStateManagementQueries.ts"],"names":[],"mappings":"AAAA,MAAM,UAAU,2BAA2B,CAAC,MAAc;IACxD,MAAM,aAAa,GAAG,MAAM,CAAC,IAAI,EAAE,CAAC,OAAO,CAAC,YAAY,EAAE,EAAE,CAAC,CAAC;IAC9D,IACE,gHAAgH,CAAC,IAAI,CACnH,aAAa,CACd;QAED,OAAO,SAAS,CAAC;IACnB,OAAO,wBAAwB,CAAC,aAAa,CAAC,IAAI,mBAAmB,CAAC,aAAa,CAAC,CAAC;AACvF,CAAC;AAED,MAAM,sBAAsB,GAA+C;IACzE;QACE,OAAO,EACL,uHAAuH;QACzH,MAAM,EAAE,aAAa;KACtB;IACD;QACE,OAAO,EACL,yHAAyH;QAC3H,MAAM,EAAE,aAAa;KACtB;IACD;QACE,OAAO,EACL,iKAAiK;QACnK,MAAM,EAAE,kBAAkB;KAC3B;IACD;QACE,OAAO,EAAE,yEAAyE;QAClF,MAAM,EAAE,MAAM;KACf;IACD;QACE,OAAO,EACL,oIAAoI;QACtI,MAAM,EAAE,sBAAsB;KAC/B;IACD;QACE,OAAO,EACL,uIAAuI;QACzI,MAAM,EAAE,mBAAmB;KAC5B;CACF,CAAC;AAEF,SAAS,wBAAwB,CAAC,aAAqB;IACrD,KAAK,MAAM,IAAI,IAAI,sBAAsB,EAAE,CAAC;QAC1C,MAAM,KAAK,GAAG,aAAa,CAAC,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QAChD,IAAI,KAAK,EAAE,CAAC,CAAC,CAAC;YAAE,OAAO,GAAG,YAAY,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC;IAC3E,CAAC;IACD,OAAO,SAAS,CAAC;AACnB,CAAC;AAED,SAAS,mBAAmB,CAAC,aAAqB;IAChD,MAAM,cAAc,GAAG,aAAa,CAAC,KAAK,CACxC,gJAAgJ,CACjJ,CAAC;IACF,IAAI,cAAc,EAAE,CAAC,CAAC,CAAC,IAAI,cAAc,CAAC,CAAC,CAAC,EAAE,CAAC;QAC7C,OAAO,GAAG,YAAY,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,IAAI,uBAAuB,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC;IACzG,CAAC;IACD,OAAO,SAAS,CAAC;AACnB,CAAC;AAED,SAAS,uBAAuB,CAAC,KAAa;IAC5C,OAAO,KAAK;SACT,IAAI,EAAE;SACN,OAAO,CAAC,aAAa,EAAE,OAAO,CAAC;SAC/B,OAAO,CAAC,eAAe,EAAE,SAAS,CAAC;SACnC,OAAO,CAAC,aAAa,EAAE,OAAO,CAAC;SAC/B,OAAO,CAAC,cAAc,EAAE,QAAQ,CAAC,CAAC;AACvC,CAAC;AAED,SAAS,YAAY,CAAC,KAAa;IACjC,MAAM,OAAO,GAAG,KAAK,CAAC,IAAI,EAAE,CAAC;IAC7B,MAAM,OAAO,GAAG,OAAO,CAAC,KAAK,CAAC,iBAAiB,CAAC,CAAC;IACjD,OAAO,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,IAAI,OAAO,CAAC,CAAC,IAAI,EAAE,CAAC;AAC1C,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare function extractStyleSystemQuery(intent: string): string | undefined;
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
export function extractStyleSystemQuery(intent) {
|
|
2
|
+
const compactIntent = intent.trim().replace(/[?!.\s]+$/g, '');
|
|
3
|
+
if (/\b(?:why|failing|failed|failure|failures|broken|error|errors|runtime|production|prod|outage|incident)\b/i.test(compactIntent)) {
|
|
4
|
+
return undefined;
|
|
5
|
+
}
|
|
6
|
+
if (/\bdesign\s+tokens?\b/i.test(compactIntent))
|
|
7
|
+
return 'design tokens';
|
|
8
|
+
if (/\btailwind\s+themes?\b/i.test(compactIntent))
|
|
9
|
+
return 'Tailwind theme';
|
|
10
|
+
if (/\bglobal\s+css\b/i.test(compactIntent))
|
|
11
|
+
return 'global CSS';
|
|
12
|
+
const cssModule = compactIntent.match(/\b(?:which|what)\s+css\s+modules?\s+styles?\s+(.+?)$/i);
|
|
13
|
+
if (cssModule?.[1])
|
|
14
|
+
return `${unwrapTarget(cssModule[1].trim())} CSS module`;
|
|
15
|
+
if (/\bdark\s+mode\b/i.test(compactIntent))
|
|
16
|
+
return 'dark mode';
|
|
17
|
+
if (/\bbreakpoints?\b/i.test(compactIntent))
|
|
18
|
+
return 'breakpoints';
|
|
19
|
+
return undefined;
|
|
20
|
+
}
|
|
21
|
+
function unwrapTarget(value) {
|
|
22
|
+
const trimmed = value.trim();
|
|
23
|
+
const wrapped = trimmed.match(/^([`'"])(.+)\1$/);
|
|
24
|
+
return (wrapped?.[2] ?? trimmed).trim();
|
|
25
|
+
}
|
|
26
|
+
//# sourceMappingURL=startIntentStyleSystemQueries.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"startIntentStyleSystemQueries.js","sourceRoot":"","sources":["../../src/core/startIntentStyleSystemQueries.ts"],"names":[],"mappings":"AAAA,MAAM,UAAU,uBAAuB,CAAC,MAAc;IACpD,MAAM,aAAa,GAAG,MAAM,CAAC,IAAI,EAAE,CAAC,OAAO,CAAC,YAAY,EAAE,EAAE,CAAC,CAAC;IAC9D,IACE,0GAA0G,CAAC,IAAI,CAC7G,aAAa,CACd,EACD,CAAC;QACD,OAAO,SAAS,CAAC;IACnB,CAAC;IAED,IAAI,uBAAuB,CAAC,IAAI,CAAC,aAAa,CAAC;QAAE,OAAO,eAAe,CAAC;IACxE,IAAI,yBAAyB,CAAC,IAAI,CAAC,aAAa,CAAC;QAAE,OAAO,gBAAgB,CAAC;IAC3E,IAAI,mBAAmB,CAAC,IAAI,CAAC,aAAa,CAAC;QAAE,OAAO,YAAY,CAAC;IAEjE,MAAM,SAAS,GAAG,aAAa,CAAC,KAAK,CAAC,uDAAuD,CAAC,CAAC;IAC/F,IAAI,SAAS,EAAE,CAAC,CAAC,CAAC;QAAE,OAAO,GAAG,YAAY,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,aAAa,CAAC;IAE7E,IAAI,kBAAkB,CAAC,IAAI,CAAC,aAAa,CAAC;QAAE,OAAO,WAAW,CAAC;IAC/D,IAAI,mBAAmB,CAAC,IAAI,CAAC,aAAa,CAAC;QAAE,OAAO,aAAa,CAAC;IAElE,OAAO,SAAS,CAAC;AACnB,CAAC;AAED,SAAS,YAAY,CAAC,KAAa;IACjC,MAAM,OAAO,GAAG,KAAK,CAAC,IAAI,EAAE,CAAC;IAC7B,MAAM,OAAO,GAAG,OAAO,CAAC,KAAK,CAAC,iBAAiB,CAAC,CAAC;IACjD,OAAO,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,IAAI,OAAO,CAAC,CAAC,IAAI,EAAE,CAAC;AAC1C,CAAC"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
export function isGenericReferenceTarget(target) {
|
|
2
|
+
return /^(?:it|this|that|thing|symbol|function|method|file|change|changes|break|breaks|breaking|safely|safe|carefully)$/i.test(target);
|
|
3
|
+
}
|
|
4
|
+
export function unwrapTarget(value) {
|
|
5
|
+
const trimmed = value.trim();
|
|
6
|
+
const wrapped = trimmed.match(/^([`'"])(.+)\1$/);
|
|
7
|
+
return (wrapped?.[2] ?? trimmed).trim();
|
|
8
|
+
}
|
|
9
|
+
//# sourceMappingURL=startIntentTargetText.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"startIntentTargetText.js","sourceRoot":"","sources":["../../src/core/startIntentTargetText.ts"],"names":[],"mappings":"AAAA,MAAM,UAAU,wBAAwB,CAAC,MAAc;IACrD,OAAO,kHAAkH,CAAC,IAAI,CAC5H,MAAM,CACP,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,YAAY,CAAC,KAAa;IACxC,MAAM,OAAO,GAAG,KAAK,CAAC,IAAI,EAAE,CAAC;IAC7B,MAAM,OAAO,GAAG,OAAO,CAAC,KAAK,CAAC,iBAAiB,CAAC,CAAC;IACjD,OAAO,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,IAAI,OAAO,CAAC,CAAC,IAAI,EAAE,CAAC;AAC1C,CAAC"}
|
|
@@ -1,25 +1,11 @@
|
|
|
1
|
-
|
|
2
|
-
export
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
};
|
|
1
|
+
export type { StartGraphQuery } from './startGraphTargets.js';
|
|
2
|
+
export { graphQueryFromIntent, graphQueryIsReady, semanticGraphCommand } from './startGraphTargets.js';
|
|
3
|
+
export { extractFileTarget, isFilePathTarget } from './startFileTargets.js';
|
|
4
|
+
export { extractImpactTarget } from './startImpactTargets.js';
|
|
5
|
+
export { extractClaimAgent, extractClaimTarget } from './startClaimTargets.js';
|
|
6
|
+
export { extractReportScopeTarget } from './startReportScopeTargets.js';
|
|
7
|
+
export { extractAuditPackageTarget, extractPackageTarget } from './startPackageTargets.js';
|
|
8
|
+
export { extractIssueIdTarget } from './startIssueTargets.js';
|
|
9
|
+
export { isExactSymbolTarget } from './startSymbolTargets.js';
|
|
10
|
+
export { escapeDoubleQuoted, isPlaceholder, quoteShellArg, quoteShellArgOrPlaceholder } from './startShellArgs.js';
|
|
8
11
|
export declare function extractSearchQuery(intent: string): string;
|
|
9
|
-
export declare function extractImpactTarget(intent: string): string | undefined;
|
|
10
|
-
export declare function extractFileTarget(intent: string): string | undefined;
|
|
11
|
-
export declare function extractReportScopeTarget(intent: string): string | undefined;
|
|
12
|
-
export declare function extractClaimTarget(intent: string): string | undefined;
|
|
13
|
-
export declare function extractClaimAgent(intent: string): string | undefined;
|
|
14
|
-
export declare function extractIssueIdTarget(intent: string): string | undefined;
|
|
15
|
-
export declare function extractPackageTarget(intent: string): string | undefined;
|
|
16
|
-
export declare function extractAuditPackageTarget(intent: string): string | undefined;
|
|
17
|
-
export declare function graphQueryFromIntent(intent: string): StartGraphQuery | undefined;
|
|
18
|
-
export declare function graphQueryIsReady(query: StartGraphQuery): boolean;
|
|
19
|
-
export declare function semanticGraphCommand(query: StartGraphQuery): string;
|
|
20
|
-
export declare function isFilePathTarget(target: string): boolean;
|
|
21
|
-
export declare function isExactSymbolTarget(target: string): boolean;
|
|
22
|
-
export declare function isPlaceholder(value: string): boolean;
|
|
23
|
-
export declare function escapeDoubleQuoted(value: string): string;
|
|
24
|
-
export declare function quoteShellArg(value: string): string;
|
|
25
|
-
export declare function quoteShellArgOrPlaceholder(value: string): string;
|