提交 f0e15cfe 编写于 作者: R Rob Lourens

Remove obsolete settings search feedback mechanism

上级 4a3439d2
...@@ -7,7 +7,6 @@ import { TPromise } from 'vs/base/common/winjs.base'; ...@@ -7,7 +7,6 @@ import { TPromise } from 'vs/base/common/winjs.base';
import * as nls from 'vs/nls'; import * as nls from 'vs/nls';
import { Delayer } from 'vs/base/common/async'; import { Delayer } from 'vs/base/common/async';
import * as arrays from 'vs/base/common/arrays'; import * as arrays from 'vs/base/common/arrays';
import * as strings from 'vs/base/common/strings';
import { Disposable, IDisposable, dispose } from 'vs/base/common/lifecycle'; import { Disposable, IDisposable, dispose } from 'vs/base/common/lifecycle';
import { Position } from 'vs/editor/common/core/position'; import { Position } from 'vs/editor/common/core/position';
import { IAction } from 'vs/base/common/actions'; import { IAction } from 'vs/base/common/actions';
...@@ -595,8 +594,7 @@ export class FeedbackWidgetRenderer extends Disposable { ...@@ -595,8 +594,7 @@ export class FeedbackWidgetRenderer extends Disposable {
@IWorkbenchEditorService private editorService: IWorkbenchEditorService, @IWorkbenchEditorService private editorService: IWorkbenchEditorService,
@ITelemetryService private telemetryService: ITelemetryService, @ITelemetryService private telemetryService: ITelemetryService,
@INotificationService private notificationService: INotificationService, @INotificationService private notificationService: INotificationService,
@IEnvironmentService private environmentService: IEnvironmentService, @IEnvironmentService private environmentService: IEnvironmentService
@IConfigurationService private configurationService: IConfigurationService
) { ) {
super(); super();
} }
...@@ -679,86 +677,90 @@ export class FeedbackWidgetRenderer extends Disposable { ...@@ -679,86 +677,90 @@ export class FeedbackWidgetRenderer extends Disposable {
} }
private sendFeedback(feedbackEditor: ICodeEditor, result: IFilterResult, scoredResults: IScoredResults): TPromise<void> { private sendFeedback(feedbackEditor: ICodeEditor, result: IFilterResult, scoredResults: IScoredResults): TPromise<void> {
const model = feedbackEditor.getModel(); // const model = feedbackEditor.getModel();
const expectedQueryLines = model.getLinesContent() // const expectedQueryLines = model.getLinesContent()
.filter(line => !strings.startsWith(line, '//')); // .filter(line => !strings.startsWith(line, '//'));
let expectedQuery: any; // let expectedQuery: any;
try { // try {
expectedQuery = JSON.parse(expectedQueryLines.join('\n')); // expectedQuery = JSON.parse(expectedQueryLines.join('\n'));
} catch (e) { // } catch (e) {
// invalid JSON // // invalid JSON
return TPromise.wrapError(new Error('Invalid JSON: ' + e.message)); // return TPromise.wrapError(new Error('Invalid JSON: ' + e.message));
} // }
const userComment = expectedQuery.comment === FeedbackWidgetRenderer.DEFAULT_COMMENT_TEXT ? undefined : expectedQuery.comment; // const userComment = expectedQuery.comment === FeedbackWidgetRenderer.DEFAULT_COMMENT_TEXT ? undefined : expectedQuery.comment;
// validate alts // // validate alts
if (!this.validateAlts(expectedQuery.alts)) { // if (!this.validateAlts(expectedQuery.alts)) {
return TPromise.wrapError(new Error('alts must be an array of 2-element string arrays')); // return TPromise.wrapError(new Error('alts must be an array of 2-element string arrays'));
} // }
const altsAdded = expectedQuery.alts && expectedQuery.alts.length; // const altsAdded = expectedQuery.alts && expectedQuery.alts.length;
const alts = altsAdded ? expectedQuery.alts : undefined; // const alts = altsAdded ? expectedQuery.alts : undefined;
const workbenchSettings = this.configurationService.getValue<IWorkbenchSettingsConfiguration>().workbench.settings; // const workbenchSettings = this.configurationService.getValue<IWorkbenchSettingsConfiguration>().workbench.settings;
const autoIngest = workbenchSettings.naturalLanguageSearchAutoIngestFeedback; // const autoIngest = workbenchSettings.naturalLanguageSearchAutoIngestFeedback;
const nlpMetadata = result.metadata && result.metadata['nlpResult']; // const nlpMetadata = result.metadata && result.metadata['nlpResult'];
const duration = nlpMetadata && nlpMetadata.duration; // const duration = nlpMetadata && nlpMetadata.duration;
const requestBody = nlpMetadata && nlpMetadata.requestBody; // const requestBody = nlpMetadata && nlpMetadata.requestBody;
const actualResultScores = {}; // const actualResultScores = {};
for (let key in scoredResults) { // for (let key in scoredResults) {
actualResultScores[key] = { // actualResultScores[key] = {
score: scoredResults[key].score // score: scoredResults[key].score
}; // };
} // }
/* __GDPR__ // /* __GDPR__
"settingsSearchResultFeedback" : { // "settingsSearchResultFeedback" : {
"query" : { "classification": "CustomerContent", "purpose": "FeatureInsight" }, // "query" : { "classification": "CustomerContent", "purpose": "FeatureInsight" },
"requestBody" : { "classification": "CustomerContent", "purpose": "FeatureInsight" }, // "requestBody" : { "classification": "CustomerContent", "purpose": "FeatureInsight" },
"userComment" : { "classification": "CustomerContent", "purpose": "FeatureInsight" }, // "userComment" : { "classification": "CustomerContent", "purpose": "FeatureInsight" },
"actualResults" : { "classification": "SystemMetaData", "purpose": "FeatureInsight" }, // "actualResults" : { "classification": "SystemMetaData", "purpose": "FeatureInsight" },
"expectedResults" : { "classification": "SystemMetaData", "purpose": "FeatureInsight" }, // "expectedResults" : { "classification": "SystemMetaData", "purpose": "FeatureInsight" },
"duration" : { "classification": "SystemMetaData", "purpose": "FeatureInsight", "isMeasurement": true }, // "duration" : { "classification": "SystemMetaData", "purpose": "FeatureInsight", "isMeasurement": true },
"buildNumber" : { "classification": "SystemMetaData", "purpose": "FeatureInsight", "isMeasurement": true }, // "buildNumber" : { "classification": "SystemMetaData", "purpose": "FeatureInsight", "isMeasurement": true },
"alts" : { "classification": "SystemMetaData", "purpose": "FeatureInsight" }, // "alts" : { "classification": "SystemMetaData", "purpose": "FeatureInsight" },
"autoIngest" : { "classification": "SystemMetaData", "purpose": "FeatureInsight", "isMeasurement": true } // "autoIngest" : { "classification": "SystemMetaData", "purpose": "FeatureInsight", "isMeasurement": true }
} // }
*/ // */
return this.telemetryService.publicLog('settingsSearchResultFeedback', { // return this.telemetryService.publicLog('settingsSearchResultFeedback', {
query: result.query, // query: result.query,
requestBody, // requestBody,
userComment, // userComment,
actualResults: actualResultScores, // actualResults: actualResultScores,
expectedResults: expectedQuery.resultScores, // expectedResults: expectedQuery.resultScores,
duration, // duration,
buildNumber: this.environmentService.settingsSearchBuildId, // buildNumber: this.environmentService.settingsSearchBuildId,
alts, // alts,
autoIngest // autoIngest
}); // });
}
// TODO@roblou - reduce GDPR-relevant telemetry by removing this, but it's still helpful for personal use.
private validateAlts(alts?: string[][]): boolean { // Consider changing this to write to disk.
if (!alts) { return TPromise.wrap(null);
return true; }
}
// private validateAlts(alts?: string[][]): boolean {
if (!Array.isArray(alts)) { // if (!alts) {
return false; // return true;
} // }
if (!alts.length) { // if (!Array.isArray(alts)) {
return true; // return false;
} // }
if (!alts.every(altPair => Array.isArray(altPair) && altPair.length === 2 && typeof altPair[0] === 'string' && typeof altPair[1] === 'string')) { // if (!alts.length) {
return false; // return true;
} // }
return true; // if (!alts.every(altPair => Array.isArray(altPair) && altPair.length === 2 && typeof altPair[0] === 'string' && typeof altPair[1] === 'string')) {
} // return false;
// }
// return true;
// }
private disposeWidget(): void { private disposeWidget(): void {
if (this._feedbackWidget) { if (this._feedbackWidget) {
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册