fix(extension): diff_review RPC parameter experiment — 4 format variants (A/B/C/D) + known-issues update

This commit is contained in:
Variet Worker
2026-03-16 16:59:58 +09:00
parent 9ef2c3f07c
commit 82461bc3fc
7 changed files with 137 additions and 23 deletions

View File

@@ -2628,12 +2628,58 @@ async function processResponseFile(filePath: string) {
}
logToFile(`[DIFF-REVIEW-RPC] AcknowledgeCascadeCodeEdit(session=${targetSession.substring(0, 8)}, accept=${isAccept}, steps=[${trackedSteps.join(',')}])`);
const ackResult = await sdk.ls.rawRPC('AcknowledgeCascadeCodeEdit', {
cascadeId: targetSession,
accept: isAccept,
...(trackedSteps.length > 0 ? { stepIndices: trackedSteps } : {}),
});
logToFile(`[DIFF-REVIEW-RPC] ✅ SUCCESS: ${JSON.stringify(ackResult).substring(0, 200)}`);
// ── EXPERIMENT: Try multiple parameter formats to find what AG expects ──
// Format A: with stepIndices (current approach)
try {
const ackA = await sdk.ls.rawRPC('AcknowledgeCascadeCodeEdit', {
cascadeId: targetSession,
accept: isAccept,
...(trackedSteps.length > 0 ? { stepIndices: trackedSteps } : {}),
});
logToFile(`[DIFF-REVIEW-RPC] Format A (stepIndices=[${trackedSteps.join(',')}]): ${JSON.stringify(ackA).substring(0, 300)}`);
} catch (eA: any) {
logToFile(`[DIFF-REVIEW-RPC] Format A ERROR: ${eA.message.substring(0, 200)}`);
}
// Format B: WITHOUT stepIndices (accept all pending)
try {
const ackB = await sdk.ls.rawRPC('AcknowledgeCascadeCodeEdit', {
cascadeId: targetSession,
accept: isAccept,
});
logToFile(`[DIFF-REVIEW-RPC] Format B (no stepIndices): ${JSON.stringify(ackB).substring(0, 300)}`);
} catch (eB: any) {
logToFile(`[DIFF-REVIEW-RPC] Format B ERROR: ${eB.message.substring(0, 200)}`);
}
// Format C: with 'steps' key instead of 'stepIndices'
try {
const ackC = await sdk.ls.rawRPC('AcknowledgeCascadeCodeEdit', {
cascadeId: targetSession,
accept: isAccept,
steps: trackedSteps,
});
logToFile(`[DIFF-REVIEW-RPC] Format C (steps=[${trackedSteps.join(',')}]): ${JSON.stringify(ackC).substring(0, 300)}`);
} catch (eC: any) {
logToFile(`[DIFF-REVIEW-RPC] Format C ERROR: ${eC.message.substring(0, 200)}`);
}
// Format D: with trajectoryId added
try {
const trajId = activeTrajectoryId || '';
const ackD = await sdk.ls.rawRPC('AcknowledgeCascadeCodeEdit', {
cascadeId: targetSession,
trajectoryId: trajId,
accept: isAccept,
stepIndices: trackedSteps,
});
logToFile(`[DIFF-REVIEW-RPC] Format D (with trajectoryId): ${JSON.stringify(ackD).substring(0, 300)}`);
} catch (eD: any) {
logToFile(`[DIFF-REVIEW-RPC] Format D ERROR: ${eD.message.substring(0, 200)}`);
}
logToFile(`[DIFF-REVIEW-RPC] ✅ All experiments completed`);
diffReviewDone = true;
} catch (rpcErr: any) {
logToFile(`[DIFF-REVIEW-RPC] ❌ ${rpcErr.message.substring(0, 200)}`);