This commit is contained in:
overcuriousity
2025-08-17 23:18:15 +02:00
parent 2cb25d1dd6
commit 70fb012d63
7 changed files with 132 additions and 250 deletions

View File

@@ -1594,6 +1594,7 @@ class AIQueryInterface {
const exportData = {
metadata: {
timestamp: new Date().toISOString(),
version: '2.0',
toolsDataHash: toolsDataHash,
aiModel: aiModel,
aiParameters: aiParameters,
@@ -1607,8 +1608,7 @@ class AIQueryInterface {
auditTrail: undefined
},
auditTrail: this.currentRecommendation.auditTrail || [],
rawContext: rawContext,
checksum: this.calculateDataChecksum(this.currentRecommendation)
rawContext: rawContext
};
const blob = new Blob([JSON.stringify(exportData, null, 2)], {
@@ -1622,42 +1622,16 @@ class AIQueryInterface {
a.click();
URL.revokeObjectURL(url);
console.log('[AI Interface] Analysis downloaded with enhanced structure:', {
version: '1.1',
console.log('[AI Interface] Analysis downloaded with verified hash structure:', {
version: '2.0',
aiModel,
toolsDataHash: toolsDataHash.slice(0, 8) + '...',
toolsDataHash: toolsDataHash.slice(0, 12) + '...',
tokensUsed: aiParameters.totalTokensUsed,
auditEntries: exportData.auditTrail.length,
checksum: exportData.checksum.slice(0, 8) + '...'
hashVerifiable: toolsDataHash !== 'unknown'
});
}
calculateDataChecksum(data) {
if (!data) return 'empty';
try {
const keyData = {
recommendedToolsCount: data.recommended_tools?.length || 0,
backgroundKnowledgeCount: data.background_knowledge?.length || 0,
hasScenarioAnalysis: !!(data.scenario_analysis || data.problem_analysis),
hasApproach: !!data.investigation_approach,
processingTimeMs: data.processingStats?.processingTimeMs || 0
};
const dataString = JSON.stringify(keyData);
let hash = 0;
for (let i = 0; i < dataString.length; i++) {
const char = dataString.charCodeAt(i);
hash = ((hash << 5) - hash) + char;
hash = hash & hash;
}
return Math.abs(hash).toString(36);
} catch (error) {
console.error('[AI Interface] Checksum calculation failed:', error);
return 'error';
}
}
validateUploadStructure(data) {
try {
const isValid = !!(