@@ -134,25 +134,33 @@ export interface TelemetryEvents extends WebviewShowAbortedEvents, WebviewShownE
134134 /** Sent when the Commit Composer is reloaded */
135135 'composer/reloaded' : ComposerEvent ;
136136 /** Sent when the user adds unstaged changes to draft commits in the Commit Composer */
137- 'composer/includedUnstagedChanges' : ComposerEvent ;
137+ 'composer/action/ includedUnstagedChanges' : ComposerEvent ;
138138 /** Sent when the user uses auto-compose in the Commit Composer */
139- 'composer/generateCommits' : ComposerEvent ;
140- /** Sent when the user cancels an auto-compose operation in the Commit Composer */
141- 'composer/generateCommits/cancelled' : ComposerEvent ;
139+ 'composer/action/compose' : ComposerEvent ;
140+ /** Sent when the user fails an auto-compose operation in the Commit Composer */
141+ 'composer/action/compose/failed' : ComposerEvent ;
142+ /** Sent when the user uses recompose in the Commit Composer */
143+ 'composer/action/recompose' : ComposerEvent ;
144+ /** Sent when the user fails a recompose operation in the Commit Composer */
145+ 'composer/action/recompose/failed' : ComposerEvent ;
142146 /** Sent when the user uses generate commit message in the Commit Composer */
143- 'composer/generateCommitMessage' : ComposerEvent ;
144- /** Sent when the user cancels a generate commit message operation in the Commit Composer */
145- 'composer/generateCommitMessage/cancelled' : ComposerEvent ;
146- /** Sent when the user updates custom instructions in the Commit Composer */
147- 'composer/customInstructions/updated' : ComposerEvent ;
147+ 'composer/action/generateCommitMessage' : ComposerEvent ;
148+ /** Sent when the user fails a generate commit message operation in the Commit Composer */
149+ 'composer/action/generateCommitMessage/failed' : ComposerEvent ;
148150 /** Sent when the user changes the AI model in the Commit Composer */
149- 'composer/aiModel/changed ' : ComposerEvent ;
151+ 'composer/action/changeAiModel ' : ComposerEvent ;
150152 /** Sent when the user finishes and commits in the Commit Composer */
151- 'composer/finishAndCommit' : ComposerEvent ;
153+ 'composer/action/finishAndCommit' : ComposerEvent ;
154+ /** Sent when the user fails to finish and commit in the Commit Composer */
155+ 'composer/action/finishAndCommit/failed' : ComposerEvent ;
152156 /** Sent when the user uses the undo button in the Commit Composer */
153- 'composer/undo' : ComposerEvent ;
157+ 'composer/action/ undo' : ComposerEvent ;
154158 /** Sent when the user uses the reset button in the Commit Composer */
155- 'composer/reset' : ComposerEvent ;
159+ 'composer/action/reset' : ComposerEvent ;
160+ /** Sent when the user is warned that the working directory has changed in the Commit Composer */
161+ 'composer/warning/workingDirectoryChanged' : ComposerEvent ;
162+ /** Sent when the user is warned that the index has changed in the Commit Composer */
163+ 'composer/warning/indexChanged' : ComposerEvent ;
156164
157165 /** Sent when the Commit Graph is shown */
158166 'graph/shown' : GraphShownEvent ;
@@ -703,53 +711,73 @@ export type InspectShownTelemetryContext = InspectShownEventData;
703711
704712export type ComposerTelemetryContext = ComposerContextEventData ;
705713type ComposerContextEventData = WebviewTelemetryContext & ComposerSessionContextEventData ;
706- type ComposerContextModelData = {
707- 'context.model.id' : string | undefined ;
708- 'context.model.name' : string | undefined ;
709- 'context.model.provider.id' : AIProviders | undefined ;
710- 'context.model.temperature' : number | undefined ;
711- 'context.model.maxTokens.input' : number | undefined ;
712- 'context.model.maxTokens.output' : number | undefined ;
713- 'context.model.default' : boolean | undefined ;
714- 'context.model.hidden' : boolean | undefined ;
714+ type ComposerContextSessionData = {
715+ 'context.session.start' : string ;
716+ 'context.session.duration' : number | undefined ;
715717} ;
716- type ComposerContextAIOperationData = {
718+ type ComposerContextDiffData = {
719+ 'context.diff.files.count' : number ;
720+ 'context.diff.hunks.count' : number ;
721+ 'context.diff.lines.count' : number ;
722+ 'context.diff.staged.exists' : boolean ;
723+ 'context.diff.unstaged.exists' : boolean ;
724+ 'context.diff.unstaged.included' : boolean ;
725+ } ;
726+ type ComposerContextCommitsData = {
727+ 'context.commits.initialCount' : number ;
728+ 'context.commits.autoComposedCount' : number | undefined ;
729+ 'context.commits.composedCount' : number | undefined ;
730+ 'context.commits.finalCount' : number | undefined ;
731+ } ;
732+ type ComposerContextOnboardingData = {
733+ 'context.onboarding.dismissed' : boolean ;
734+ 'context.onboarding.stepReached' : number | undefined ;
735+ } ;
736+ type ComposerContextAIData = {
717737 'context.ai.enabled.org' : boolean ;
718738 'context.ai.enabled.config' : boolean ;
719- 'context.ai.operations.generateCommits.count' : number ;
720- 'context.ai.operations.generateCommits.cancelled.count' : number ;
721- 'context.ai.operations.generateCommits.error.count' : number ;
722- 'context.ai.operations.generateCommits.customInstructions.used' : boolean ;
723- 'context.ai.operations.generateCommits.customInstructions.length' : number ;
724- 'context.ai.operations.generateCommits.customInstructions.hash' : string ;
725- 'context.ai.operations.generateCommits.customInstructions.setting.used' : boolean ;
726- 'context.ai.operations.generateCommits.customInstructions.setting.length' : number ;
727- 'context.ai.operations.generateCommits.feedback.upvote.count' : number ;
728- 'context.ai.operations.generateCommits.feedback.downvote.count' : number ;
729- 'context.ai.operations.generateCommitMessage.count' : number ;
730- 'context.ai.operations.generateCommitMessage.cancelled.count' : number ;
731- 'context.ai.operations.generateCommitMessage.error.count' : number ;
732- 'context.ai.operations.generateCommitMessage.customInstructions.setting.used' : boolean ;
733- 'context.ai.operations.generateCommitMessage.customInstructions.setting.length' : number ;
739+ 'context.ai.model.id' : string | undefined ;
740+ 'context.ai.model.name' : string | undefined ;
741+ 'context.ai.model.provider.id' : AIProviders | undefined ;
742+ 'context.ai.model.temperature' : number | undefined ;
743+ 'context.ai.model.maxTokens.input' : number | undefined ;
744+ 'context.ai.model.maxTokens.output' : number | undefined ;
745+ 'context.ai.model.default' : boolean | undefined ;
746+ 'context.ai.model.hidden' : boolean | undefined ;
747+ } ;
748+ type ComposerContextOperationData = {
749+ 'context.operations.generateCommits.count' : number ;
750+ 'context.operations.generateCommits.cancelled.count' : number ;
751+ 'context.operations.generateCommits.error.count' : number ;
752+ 'context.operations.generateCommits.feedback.upvote.count' : number ;
753+ 'context.operations.generateCommits.feedback.downvote.count' : number ;
754+ 'context.operations.generateCommitMessage.count' : number ;
755+ 'context.operations.generateCommitMessage.cancelled.count' : number ;
756+ 'context.operations.generateCommitMessage.error.count' : number ;
757+ 'context.operations.finishAndCommit.error.count' : number ;
758+ 'context.operations.undo.count' : number ;
759+ 'context.operations.redo.count' : number ;
760+ 'context.operations.reset.count' : number ;
761+ } ;
762+ type ComposerContextWarningsData = {
763+ 'context.warnings.workingDirectoryChanged' : boolean ;
764+ 'context.warnings.indexChanged' : boolean ;
765+ } ;
766+ type ComposerContextErrorsData = {
767+ 'context.errors.safety.count' : number ;
768+ 'context.errors.operation.count' : number ;
734769} ;
735770
736- type ComposerSessionContextEventData = ComposerContextModelData &
737- ComposerContextAIOperationData & {
771+ type ComposerSessionContextEventData = ComposerContextSessionData &
772+ ComposerContextDiffData &
773+ ComposerContextCommitsData &
774+ ComposerContextOnboardingData &
775+ ComposerContextAIData &
776+ ComposerContextOperationData &
777+ ComposerContextWarningsData &
778+ ComposerContextErrorsData & {
738779 'context.source' : Sources | undefined ;
739780 'context.mode' : 'experimental' | 'preview' ;
740- 'context.sessionId' : string ;
741- 'context.files.count' : number ;
742- 'context.hunks.count' : number ;
743- 'context.lines.count' : number ;
744- 'context.draftCommits.initialCount' : number ;
745- 'context.draftCommits.finalCount' : number | undefined ;
746- 'context.diffSources.staged' : boolean ;
747- 'context.diffSources.unstaged' : boolean ;
748- 'context.diffSources.unstaged.included' : boolean ;
749- 'context.onboarding.dismissed' : boolean ;
750- 'context.history.undo.count' : number ;
751- 'context.history.redo.count' : number ;
752- 'context.history.reset.count' : number ;
753781 } ;
754782
755783type ComposerEvent = ComposerContextEventData ;
0 commit comments