Remove the remaining no-op tracing and telemetry-only helpers
The build no longer ships telemetry egress, so the next cleanup pass deletes the remaining tracing compatibility layer and the helper modules whose only job was to shape telemetry payloads. This removes the dead session/beta/perfetto tracing files, drops telemetry-only file-operation and plugin-fetch helpers, and rewires the affected callers to keep only their real product behavior. Constraint: Preserve existing user-visible behavior and feature-gated product logic while removing inert tracing/reporting scaffolding Constraint: Leave GrowthBook in place for now because it functions as the repo's local feature-flag adapter, not a live reporting path Rejected: Delete growthbook.ts in the same pass | Its call surface is wide and now tied to local product behavior rather than telemetry export Rejected: Leave no-op tracing and helper modules in place | They continued to create audit noise and implied behavior that no longer existed Confidence: high Scope-risk: moderate Reversibility: clean Directive: Remaining analytics-named code should be treated as either local compatibility calls or feature-gate infrastructure unless a concrete egress path is reintroduced Tested: bun test src/services/analytics/index.test.ts src/components/FeedbackSurvey/submitTranscriptShare.test.ts Tested: bun run ./scripts/build.ts Not-tested: bun x tsc --noEmit (repository has pre-existing unrelated type errors)
This commit is contained in:
@@ -72,11 +72,6 @@ import {
|
||||
asSystemPrompt,
|
||||
type SystemPrompt,
|
||||
} from '../../utils/systemPromptType.js'
|
||||
import {
|
||||
isPerfettoTracingEnabled,
|
||||
registerAgent as registerPerfettoAgent,
|
||||
unregisterAgent as unregisterPerfettoAgent,
|
||||
} from '../../utils/telemetry/perfettoTracing.js'
|
||||
import type { ContentReplacementState } from '../../utils/toolResultStorage.js'
|
||||
import { createAgentId } from '../../utils/uuid.js'
|
||||
import { resolveAgentTools } from './agentToolUtils.js'
|
||||
@@ -352,12 +347,6 @@ export async function* runAgent({
|
||||
setAgentTranscriptSubdir(agentId, transcriptSubdir)
|
||||
}
|
||||
|
||||
// Register agent in Perfetto trace for hierarchy visualization
|
||||
if (isPerfettoTracingEnabled()) {
|
||||
const parentId = toolUseContext.agentId ?? getSessionId()
|
||||
registerPerfettoAgent(agentId, agentDefinition.agentType, parentId)
|
||||
}
|
||||
|
||||
// Log API calls path for subagents (ant-only)
|
||||
if (process.env.USER_TYPE === 'ant') {
|
||||
logForDebugging(
|
||||
@@ -828,8 +817,6 @@ export async function* runAgent({
|
||||
agentToolUseContext.readFileState.clear()
|
||||
// Release the cloned fork context messages
|
||||
initialMessages.length = 0
|
||||
// Release perfetto agent registry entry
|
||||
unregisterPerfettoAgent(agentId)
|
||||
// Release transcript subdir mapping
|
||||
clearAgentTranscriptSubdir(agentId)
|
||||
// Release this agent's todos entry. Without this, every subagent that
|
||||
|
||||
@@ -29,7 +29,6 @@ import {
|
||||
fileHistoryEnabled,
|
||||
fileHistoryTrackEdit,
|
||||
} from '../../utils/fileHistory.js'
|
||||
import { logFileOperation } from '../../utils/fileOperationAnalytics.js'
|
||||
import {
|
||||
type LineEndingType,
|
||||
readFileSyncWithMetadata,
|
||||
@@ -530,12 +529,6 @@ export const FileEditTool = buildTool({
|
||||
}
|
||||
countLinesChanged(patch)
|
||||
|
||||
logFileOperation({
|
||||
operation: 'edit',
|
||||
tool: 'FileEditTool',
|
||||
filePath: absoluteFilePath,
|
||||
})
|
||||
|
||||
logEvent('tengu_edit_string_lengths', {
|
||||
oldStringBytes: Buffer.byteLength(old_string, 'utf8'),
|
||||
newStringBytes: Buffer.byteLength(new_string, 'utf8'),
|
||||
|
||||
@@ -37,7 +37,6 @@ import {
|
||||
getFileModificationTimeAsync,
|
||||
suggestPathUnderCwd,
|
||||
} from '../../utils/file.js'
|
||||
import { logFileOperation } from '../../utils/fileOperationAnalytics.js'
|
||||
import { formatFileSize } from '../../utils/format.js'
|
||||
import { getFsImplementation } from '../../utils/fsOperations.js'
|
||||
import {
|
||||
@@ -852,13 +851,6 @@ async function callInner(
|
||||
file: { filePath: file_path, cells },
|
||||
}
|
||||
|
||||
logFileOperation({
|
||||
operation: 'read',
|
||||
tool: 'FileReadTool',
|
||||
filePath: fullFilePath,
|
||||
content: cellsJson,
|
||||
})
|
||||
|
||||
return { data }
|
||||
}
|
||||
|
||||
@@ -869,13 +861,6 @@ async function callInner(
|
||||
const data = await readImageWithTokenBudget(resolvedFilePath, maxTokens)
|
||||
context.nestedMemoryAttachmentTriggers?.add(fullFilePath)
|
||||
|
||||
logFileOperation({
|
||||
operation: 'read',
|
||||
tool: 'FileReadTool',
|
||||
filePath: fullFilePath,
|
||||
content: data.file.base64,
|
||||
})
|
||||
|
||||
const metadataText = data.file.dimensions
|
||||
? createImageMetadataText(data.file.dimensions)
|
||||
: null
|
||||
@@ -907,12 +892,6 @@ async function callInner(
|
||||
fileSize: extractResult.data.file.originalSize,
|
||||
hasPageRange: true,
|
||||
})
|
||||
logFileOperation({
|
||||
operation: 'read',
|
||||
tool: 'FileReadTool',
|
||||
filePath: fullFilePath,
|
||||
content: `PDF pages ${pages}`,
|
||||
})
|
||||
const entries = await readdir(extractResult.data.file.outputDir)
|
||||
const imageFiles = entries.filter(f => f.endsWith('.jpg')).sort()
|
||||
const imageBlocks = await Promise.all(
|
||||
@@ -989,13 +968,6 @@ async function callInner(
|
||||
throw new Error(readResult.error.message)
|
||||
}
|
||||
const pdfData = readResult.data
|
||||
logFileOperation({
|
||||
operation: 'read',
|
||||
tool: 'FileReadTool',
|
||||
filePath: fullFilePath,
|
||||
content: pdfData.file.base64,
|
||||
})
|
||||
|
||||
return {
|
||||
data: pdfData,
|
||||
newMessages: [
|
||||
@@ -1057,13 +1029,6 @@ async function callInner(
|
||||
memoryFileMtimes.set(data, mtimeMs)
|
||||
}
|
||||
|
||||
logFileOperation({
|
||||
operation: 'read',
|
||||
tool: 'FileReadTool',
|
||||
filePath: fullFilePath,
|
||||
content,
|
||||
})
|
||||
|
||||
const sessionFileType = detectSessionFileType(fullFilePath)
|
||||
const analyticsExt = getFileExtensionForAnalytics(fullFilePath)
|
||||
logEvent('tengu_session_file_read', {
|
||||
|
||||
@@ -24,7 +24,6 @@ import {
|
||||
fileHistoryEnabled,
|
||||
fileHistoryTrackEdit,
|
||||
} from '../../utils/fileHistory.js'
|
||||
import { logFileOperation } from '../../utils/fileOperationAnalytics.js'
|
||||
import { readFileSyncWithMetadata } from '../../utils/fileRead.js'
|
||||
import { getFsImplementation } from '../../utils/fsOperations.js'
|
||||
import {
|
||||
@@ -380,13 +379,6 @@ export const FileWriteTool = buildTool({
|
||||
// Track lines added and removed for file updates, right before yielding result
|
||||
countLinesChanged(patch)
|
||||
|
||||
logFileOperation({
|
||||
operation: 'write',
|
||||
tool: 'FileWriteTool',
|
||||
filePath: fullFilePath,
|
||||
type: 'update',
|
||||
})
|
||||
|
||||
return {
|
||||
data,
|
||||
}
|
||||
@@ -404,13 +396,6 @@ export const FileWriteTool = buildTool({
|
||||
// For creation of new files, count all lines as additions, right before yielding the result
|
||||
countLinesChanged([], content)
|
||||
|
||||
logFileOperation({
|
||||
operation: 'write',
|
||||
tool: 'FileWriteTool',
|
||||
filePath: fullFilePath,
|
||||
type: 'create',
|
||||
})
|
||||
|
||||
return {
|
||||
data,
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user