Skip to content

Commit ab2d8b9

Browse files
authored
[FIX] Remove trailing asterisks too (#60)
1 parent b372f22 commit ab2d8b9

File tree

1 file changed

+15
-5
lines changed

1 file changed

+15
-5
lines changed

src/server/utils/tee-transcript-reconstruction.ts

Lines changed: 15 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -141,19 +141,29 @@ async function reconstructConsolidatedResponse(bundleData: TeeBundleData, logger
141141
}
142142

143143
// Count leading asterisks
144-
let lastAsteriskIndex = -1
144+
let leadingAsterisks = 0
145145
for(const element of processedResponse) {
146146
if(element === REDACTION_CHAR_CODE) {
147-
lastAsteriskIndex++
147+
leadingAsterisks++
148148
} else {
149149
break
150150
}
151151
}
152152

153-
const trimOffset = lastAsteriskIndex + 1
154-
logger.info(`After processing: ${processedResponse.length} bytes, ${trimOffset} leading asterisks trimmed, final: ${processedResponse.length - trimOffset} bytes`)
153+
// Count trailing asterisks (may contain undesired data like alerts)
154+
let trailingAsterisks = 0
155+
for(let i = processedResponse.length - 1; i >= leadingAsterisks; i--) {
156+
if(processedResponse[i] === REDACTION_CHAR_CODE) {
157+
trailingAsterisks++
158+
} else {
159+
break
160+
}
161+
}
162+
163+
const finalLength = processedResponse.length - leadingAsterisks - trailingAsterisks
164+
logger.info(`After processing: ${processedResponse.length} bytes, ${leadingAsterisks} leading and ${trailingAsterisks} trailing asterisks trimmed, final: ${finalLength} bytes`)
155165

156-
return processedResponse.slice(trimOffset)
166+
return processedResponse.slice(leadingAsterisks, processedResponse.length - trailingAsterisks)
157167
}
158168

159169
// Removed legacy packet-based extraction functions since we now use consolidated streams

0 commit comments

Comments
 (0)