diff --git a/.github/workflows/archie.lock.yml b/.github/workflows/archie.lock.yml
index 03722a93bc..d43f2c22a5 100644
--- a/.github/workflows/archie.lock.yml
+++ b/.github/workflows/archie.lock.yml
@@ -3750,6 +3750,43 @@ jobs:
runLogParser,
};
}
+ function formatDuration(ms) {
+ if (!ms || ms <= 0) return "";
+ const seconds = Math.round(ms / 1000);
+ if (seconds < 60) {
+ return `${seconds}s`;
+ }
+ const minutes = Math.floor(seconds / 60);
+ const remainingSeconds = seconds % 60;
+ if (remainingSeconds === 0) {
+ return `${minutes}m`;
+ }
+ return `${minutes}m ${remainingSeconds}s`;
+ }
+ function formatBashCommand(command) {
+ if (!command) return "";
+ let formatted = command
+ .replace(/\n/g, " ")
+ .replace(/\r/g, " ")
+ .replace(/\t/g, " ")
+ .replace(/\s+/g, " ")
+ .trim();
+ formatted = formatted.replace(/`/g, "\\`");
+ const maxLength = 300;
+ if (formatted.length > maxLength) {
+ formatted = formatted.substring(0, maxLength) + "...";
+ }
+ return formatted;
+ }
+ function truncateString(str, maxLength) {
+ if (!str) return "";
+ if (str.length <= maxLength) return str;
+ return str.substring(0, maxLength) + "...";
+ }
+ function estimateTokens(text) {
+ if (!text) return 0;
+ return Math.ceil(text.length / 4);
+ }
function main() {
runLogParser({
parseLog: parseCopilotLog,
@@ -4408,23 +4445,6 @@ jobs:
}
return markdown;
}
- function estimateTokens(text) {
- if (!text) return 0;
- return Math.ceil(text.length / 4);
- }
- function formatDuration(ms) {
- if (!ms || ms <= 0) return "";
- const seconds = Math.round(ms / 1000);
- if (seconds < 60) {
- return `${seconds}s`;
- }
- const minutes = Math.floor(seconds / 60);
- const remainingSeconds = seconds % 60;
- if (remainingSeconds === 0) {
- return `${minutes}m`;
- }
- return `${minutes}m ${remainingSeconds}s`;
- }
function formatToolUseWithDetails(toolUse, toolResult) {
const toolName = toolUse.name;
const input = toolUse.input || {};
@@ -4552,21 +4572,6 @@ jobs:
}
return paramStrs.join(", ");
}
- function formatBashCommand(command) {
- if (!command) return "";
- let formatted = command.replace(/\n/g, " ").replace(/\r/g, " ").replace(/\t/g, " ").replace(/\s+/g, " ").trim();
- formatted = formatted.replace(/`/g, "\\`");
- const maxLength = 300;
- if (formatted.length > maxLength) {
- formatted = formatted.substring(0, maxLength) + "...";
- }
- return formatted;
- }
- function truncateString(str, maxLength) {
- if (!str) return "";
- if (str.length <= maxLength) return str;
- return str.substring(0, maxLength) + "...";
- }
if (typeof module !== "undefined" && module.exports) {
module.exports = {
parseCopilotLog,
diff --git a/.github/workflows/artifacts-summary.lock.yml b/.github/workflows/artifacts-summary.lock.yml
index 289b361063..069fd385bc 100644
--- a/.github/workflows/artifacts-summary.lock.yml
+++ b/.github/workflows/artifacts-summary.lock.yml
@@ -2621,6 +2621,43 @@ jobs:
runLogParser,
};
}
+ function formatDuration(ms) {
+ if (!ms || ms <= 0) return "";
+ const seconds = Math.round(ms / 1000);
+ if (seconds < 60) {
+ return `${seconds}s`;
+ }
+ const minutes = Math.floor(seconds / 60);
+ const remainingSeconds = seconds % 60;
+ if (remainingSeconds === 0) {
+ return `${minutes}m`;
+ }
+ return `${minutes}m ${remainingSeconds}s`;
+ }
+ function formatBashCommand(command) {
+ if (!command) return "";
+ let formatted = command
+ .replace(/\n/g, " ")
+ .replace(/\r/g, " ")
+ .replace(/\t/g, " ")
+ .replace(/\s+/g, " ")
+ .trim();
+ formatted = formatted.replace(/`/g, "\\`");
+ const maxLength = 300;
+ if (formatted.length > maxLength) {
+ formatted = formatted.substring(0, maxLength) + "...";
+ }
+ return formatted;
+ }
+ function truncateString(str, maxLength) {
+ if (!str) return "";
+ if (str.length <= maxLength) return str;
+ return str.substring(0, maxLength) + "...";
+ }
+ function estimateTokens(text) {
+ if (!text) return 0;
+ return Math.ceil(text.length / 4);
+ }
function main() {
runLogParser({
parseLog: parseCopilotLog,
@@ -3279,23 +3316,6 @@ jobs:
}
return markdown;
}
- function estimateTokens(text) {
- if (!text) return 0;
- return Math.ceil(text.length / 4);
- }
- function formatDuration(ms) {
- if (!ms || ms <= 0) return "";
- const seconds = Math.round(ms / 1000);
- if (seconds < 60) {
- return `${seconds}s`;
- }
- const minutes = Math.floor(seconds / 60);
- const remainingSeconds = seconds % 60;
- if (remainingSeconds === 0) {
- return `${minutes}m`;
- }
- return `${minutes}m ${remainingSeconds}s`;
- }
function formatToolUseWithDetails(toolUse, toolResult) {
const toolName = toolUse.name;
const input = toolUse.input || {};
@@ -3423,21 +3443,6 @@ jobs:
}
return paramStrs.join(", ");
}
- function formatBashCommand(command) {
- if (!command) return "";
- let formatted = command.replace(/\n/g, " ").replace(/\r/g, " ").replace(/\t/g, " ").replace(/\s+/g, " ").trim();
- formatted = formatted.replace(/`/g, "\\`");
- const maxLength = 300;
- if (formatted.length > maxLength) {
- formatted = formatted.substring(0, maxLength) + "...";
- }
- return formatted;
- }
- function truncateString(str, maxLength) {
- if (!str) return "";
- if (str.length <= maxLength) return str;
- return str.substring(0, maxLength) + "...";
- }
if (typeof module !== "undefined" && module.exports) {
module.exports = {
parseCopilotLog,
diff --git a/.github/workflows/audit-workflows.lock.yml b/.github/workflows/audit-workflows.lock.yml
index 51a7b055e1..051ebf0714 100644
--- a/.github/workflows/audit-workflows.lock.yml
+++ b/.github/workflows/audit-workflows.lock.yml
@@ -3656,6 +3656,43 @@ jobs:
runLogParser,
};
}
+ function formatDuration(ms) {
+ if (!ms || ms <= 0) return "";
+ const seconds = Math.round(ms / 1000);
+ if (seconds < 60) {
+ return `${seconds}s`;
+ }
+ const minutes = Math.floor(seconds / 60);
+ const remainingSeconds = seconds % 60;
+ if (remainingSeconds === 0) {
+ return `${minutes}m`;
+ }
+ return `${minutes}m ${remainingSeconds}s`;
+ }
+ function formatBashCommand(command) {
+ if (!command) return "";
+ let formatted = command
+ .replace(/\n/g, " ")
+ .replace(/\r/g, " ")
+ .replace(/\t/g, " ")
+ .replace(/\s+/g, " ")
+ .trim();
+ formatted = formatted.replace(/`/g, "\\`");
+ const maxLength = 300;
+ if (formatted.length > maxLength) {
+ formatted = formatted.substring(0, maxLength) + "...";
+ }
+ return formatted;
+ }
+ function truncateString(str, maxLength) {
+ if (!str) return "";
+ if (str.length <= maxLength) return str;
+ return str.substring(0, maxLength) + "...";
+ }
+ function estimateTokens(text) {
+ if (!text) return 0;
+ return Math.ceil(text.length / 4);
+ }
function main() {
runLogParser({
parseLog: parseClaudeLog,
@@ -3901,23 +3938,6 @@ jobs:
}
return { markdown, mcpFailures };
}
- function estimateTokens(text) {
- if (!text) return 0;
- return Math.ceil(text.length / 4);
- }
- function formatDuration(ms) {
- if (!ms || ms <= 0) return "";
- const seconds = Math.round(ms / 1000);
- if (seconds < 60) {
- return `${seconds}s`;
- }
- const minutes = Math.floor(seconds / 60);
- const remainingSeconds = seconds % 60;
- if (remainingSeconds === 0) {
- return `${minutes}m`;
- }
- return `${minutes}m ${remainingSeconds}s`;
- }
function formatToolUse(toolUse, toolResult) {
const toolName = toolUse.name;
const input = toolUse.input || {};
@@ -4035,26 +4055,6 @@ jobs:
}
return paramStrs.join(", ");
}
- function formatBashCommand(command) {
- if (!command) return "";
- let formatted = command
- .replace(/\n/g, " ")
- .replace(/\r/g, " ")
- .replace(/\t/g, " ")
- .replace(/\s+/g, " ")
- .trim();
- formatted = formatted.replace(/`/g, "\\`");
- const maxLength = 300;
- if (formatted.length > maxLength) {
- formatted = formatted.substring(0, maxLength) + "...";
- }
- return formatted;
- }
- function truncateString(str, maxLength) {
- if (!str) return "";
- if (str.length <= maxLength) return str;
- return str.substring(0, maxLength) + "...";
- }
if (typeof module !== "undefined" && module.exports) {
module.exports = {
parseClaudeLog,
diff --git a/.github/workflows/blog-auditor.lock.yml b/.github/workflows/blog-auditor.lock.yml
index 69c465ae0f..02960c67f6 100644
--- a/.github/workflows/blog-auditor.lock.yml
+++ b/.github/workflows/blog-auditor.lock.yml
@@ -3002,6 +3002,43 @@ jobs:
runLogParser,
};
}
+ function formatDuration(ms) {
+ if (!ms || ms <= 0) return "";
+ const seconds = Math.round(ms / 1000);
+ if (seconds < 60) {
+ return `${seconds}s`;
+ }
+ const minutes = Math.floor(seconds / 60);
+ const remainingSeconds = seconds % 60;
+ if (remainingSeconds === 0) {
+ return `${minutes}m`;
+ }
+ return `${minutes}m ${remainingSeconds}s`;
+ }
+ function formatBashCommand(command) {
+ if (!command) return "";
+ let formatted = command
+ .replace(/\n/g, " ")
+ .replace(/\r/g, " ")
+ .replace(/\t/g, " ")
+ .replace(/\s+/g, " ")
+ .trim();
+ formatted = formatted.replace(/`/g, "\\`");
+ const maxLength = 300;
+ if (formatted.length > maxLength) {
+ formatted = formatted.substring(0, maxLength) + "...";
+ }
+ return formatted;
+ }
+ function truncateString(str, maxLength) {
+ if (!str) return "";
+ if (str.length <= maxLength) return str;
+ return str.substring(0, maxLength) + "...";
+ }
+ function estimateTokens(text) {
+ if (!text) return 0;
+ return Math.ceil(text.length / 4);
+ }
function main() {
runLogParser({
parseLog: parseClaudeLog,
@@ -3247,23 +3284,6 @@ jobs:
}
return { markdown, mcpFailures };
}
- function estimateTokens(text) {
- if (!text) return 0;
- return Math.ceil(text.length / 4);
- }
- function formatDuration(ms) {
- if (!ms || ms <= 0) return "";
- const seconds = Math.round(ms / 1000);
- if (seconds < 60) {
- return `${seconds}s`;
- }
- const minutes = Math.floor(seconds / 60);
- const remainingSeconds = seconds % 60;
- if (remainingSeconds === 0) {
- return `${minutes}m`;
- }
- return `${minutes}m ${remainingSeconds}s`;
- }
function formatToolUse(toolUse, toolResult) {
const toolName = toolUse.name;
const input = toolUse.input || {};
@@ -3381,26 +3401,6 @@ jobs:
}
return paramStrs.join(", ");
}
- function formatBashCommand(command) {
- if (!command) return "";
- let formatted = command
- .replace(/\n/g, " ")
- .replace(/\r/g, " ")
- .replace(/\t/g, " ")
- .replace(/\s+/g, " ")
- .trim();
- formatted = formatted.replace(/`/g, "\\`");
- const maxLength = 300;
- if (formatted.length > maxLength) {
- formatted = formatted.substring(0, maxLength) + "...";
- }
- return formatted;
- }
- function truncateString(str, maxLength) {
- if (!str) return "";
- if (str.length <= maxLength) return str;
- return str.substring(0, maxLength) + "...";
- }
if (typeof module !== "undefined" && module.exports) {
module.exports = {
parseClaudeLog,
diff --git a/.github/workflows/brave.lock.yml b/.github/workflows/brave.lock.yml
index 948122e59b..96dac30a58 100644
--- a/.github/workflows/brave.lock.yml
+++ b/.github/workflows/brave.lock.yml
@@ -3597,6 +3597,43 @@ jobs:
runLogParser,
};
}
+ function formatDuration(ms) {
+ if (!ms || ms <= 0) return "";
+ const seconds = Math.round(ms / 1000);
+ if (seconds < 60) {
+ return `${seconds}s`;
+ }
+ const minutes = Math.floor(seconds / 60);
+ const remainingSeconds = seconds % 60;
+ if (remainingSeconds === 0) {
+ return `${minutes}m`;
+ }
+ return `${minutes}m ${remainingSeconds}s`;
+ }
+ function formatBashCommand(command) {
+ if (!command) return "";
+ let formatted = command
+ .replace(/\n/g, " ")
+ .replace(/\r/g, " ")
+ .replace(/\t/g, " ")
+ .replace(/\s+/g, " ")
+ .trim();
+ formatted = formatted.replace(/`/g, "\\`");
+ const maxLength = 300;
+ if (formatted.length > maxLength) {
+ formatted = formatted.substring(0, maxLength) + "...";
+ }
+ return formatted;
+ }
+ function truncateString(str, maxLength) {
+ if (!str) return "";
+ if (str.length <= maxLength) return str;
+ return str.substring(0, maxLength) + "...";
+ }
+ function estimateTokens(text) {
+ if (!text) return 0;
+ return Math.ceil(text.length / 4);
+ }
function main() {
runLogParser({
parseLog: parseCopilotLog,
@@ -4255,23 +4292,6 @@ jobs:
}
return markdown;
}
- function estimateTokens(text) {
- if (!text) return 0;
- return Math.ceil(text.length / 4);
- }
- function formatDuration(ms) {
- if (!ms || ms <= 0) return "";
- const seconds = Math.round(ms / 1000);
- if (seconds < 60) {
- return `${seconds}s`;
- }
- const minutes = Math.floor(seconds / 60);
- const remainingSeconds = seconds % 60;
- if (remainingSeconds === 0) {
- return `${minutes}m`;
- }
- return `${minutes}m ${remainingSeconds}s`;
- }
function formatToolUseWithDetails(toolUse, toolResult) {
const toolName = toolUse.name;
const input = toolUse.input || {};
@@ -4399,21 +4419,6 @@ jobs:
}
return paramStrs.join(", ");
}
- function formatBashCommand(command) {
- if (!command) return "";
- let formatted = command.replace(/\n/g, " ").replace(/\r/g, " ").replace(/\t/g, " ").replace(/\s+/g, " ").trim();
- formatted = formatted.replace(/`/g, "\\`");
- const maxLength = 300;
- if (formatted.length > maxLength) {
- formatted = formatted.substring(0, maxLength) + "...";
- }
- return formatted;
- }
- function truncateString(str, maxLength) {
- if (!str) return "";
- if (str.length <= maxLength) return str;
- return str.substring(0, maxLength) + "...";
- }
if (typeof module !== "undefined" && module.exports) {
module.exports = {
parseCopilotLog,
diff --git a/.github/workflows/changeset.lock.yml b/.github/workflows/changeset.lock.yml
index 5fef5a46c6..5a8aaeeefb 100644
--- a/.github/workflows/changeset.lock.yml
+++ b/.github/workflows/changeset.lock.yml
@@ -3289,6 +3289,43 @@ jobs:
runLogParser,
};
}
+ function formatDuration(ms) {
+ if (!ms || ms <= 0) return "";
+ const seconds = Math.round(ms / 1000);
+ if (seconds < 60) {
+ return `${seconds}s`;
+ }
+ const minutes = Math.floor(seconds / 60);
+ const remainingSeconds = seconds % 60;
+ if (remainingSeconds === 0) {
+ return `${minutes}m`;
+ }
+ return `${minutes}m ${remainingSeconds}s`;
+ }
+ function formatBashCommand(command) {
+ if (!command) return "";
+ let formatted = command
+ .replace(/\n/g, " ")
+ .replace(/\r/g, " ")
+ .replace(/\t/g, " ")
+ .replace(/\s+/g, " ")
+ .trim();
+ formatted = formatted.replace(/`/g, "\\`");
+ const maxLength = 300;
+ if (formatted.length > maxLength) {
+ formatted = formatted.substring(0, maxLength) + "...";
+ }
+ return formatted;
+ }
+ function truncateString(str, maxLength) {
+ if (!str) return "";
+ if (str.length <= maxLength) return str;
+ return str.substring(0, maxLength) + "...";
+ }
+ function estimateTokens(text) {
+ if (!text) return 0;
+ return Math.ceil(text.length / 4);
+ }
function main() {
runLogParser({
parseLog: parseCopilotLog,
@@ -3947,23 +3984,6 @@ jobs:
}
return markdown;
}
- function estimateTokens(text) {
- if (!text) return 0;
- return Math.ceil(text.length / 4);
- }
- function formatDuration(ms) {
- if (!ms || ms <= 0) return "";
- const seconds = Math.round(ms / 1000);
- if (seconds < 60) {
- return `${seconds}s`;
- }
- const minutes = Math.floor(seconds / 60);
- const remainingSeconds = seconds % 60;
- if (remainingSeconds === 0) {
- return `${minutes}m`;
- }
- return `${minutes}m ${remainingSeconds}s`;
- }
function formatToolUseWithDetails(toolUse, toolResult) {
const toolName = toolUse.name;
const input = toolUse.input || {};
@@ -4091,21 +4111,6 @@ jobs:
}
return paramStrs.join(", ");
}
- function formatBashCommand(command) {
- if (!command) return "";
- let formatted = command.replace(/\n/g, " ").replace(/\r/g, " ").replace(/\t/g, " ").replace(/\s+/g, " ").trim();
- formatted = formatted.replace(/`/g, "\\`");
- const maxLength = 300;
- if (formatted.length > maxLength) {
- formatted = formatted.substring(0, maxLength) + "...";
- }
- return formatted;
- }
- function truncateString(str, maxLength) {
- if (!str) return "";
- if (str.length <= maxLength) return str;
- return str.substring(0, maxLength) + "...";
- }
if (typeof module !== "undefined" && module.exports) {
module.exports = {
parseCopilotLog,
diff --git a/.github/workflows/ci-doctor.lock.yml b/.github/workflows/ci-doctor.lock.yml
index 09335ee89b..55567cef3c 100644
--- a/.github/workflows/ci-doctor.lock.yml
+++ b/.github/workflows/ci-doctor.lock.yml
@@ -3094,6 +3094,43 @@ jobs:
runLogParser,
};
}
+ function formatDuration(ms) {
+ if (!ms || ms <= 0) return "";
+ const seconds = Math.round(ms / 1000);
+ if (seconds < 60) {
+ return `${seconds}s`;
+ }
+ const minutes = Math.floor(seconds / 60);
+ const remainingSeconds = seconds % 60;
+ if (remainingSeconds === 0) {
+ return `${minutes}m`;
+ }
+ return `${minutes}m ${remainingSeconds}s`;
+ }
+ function formatBashCommand(command) {
+ if (!command) return "";
+ let formatted = command
+ .replace(/\n/g, " ")
+ .replace(/\r/g, " ")
+ .replace(/\t/g, " ")
+ .replace(/\s+/g, " ")
+ .trim();
+ formatted = formatted.replace(/`/g, "\\`");
+ const maxLength = 300;
+ if (formatted.length > maxLength) {
+ formatted = formatted.substring(0, maxLength) + "...";
+ }
+ return formatted;
+ }
+ function truncateString(str, maxLength) {
+ if (!str) return "";
+ if (str.length <= maxLength) return str;
+ return str.substring(0, maxLength) + "...";
+ }
+ function estimateTokens(text) {
+ if (!text) return 0;
+ return Math.ceil(text.length / 4);
+ }
function main() {
runLogParser({
parseLog: parseCopilotLog,
@@ -3752,23 +3789,6 @@ jobs:
}
return markdown;
}
- function estimateTokens(text) {
- if (!text) return 0;
- return Math.ceil(text.length / 4);
- }
- function formatDuration(ms) {
- if (!ms || ms <= 0) return "";
- const seconds = Math.round(ms / 1000);
- if (seconds < 60) {
- return `${seconds}s`;
- }
- const minutes = Math.floor(seconds / 60);
- const remainingSeconds = seconds % 60;
- if (remainingSeconds === 0) {
- return `${minutes}m`;
- }
- return `${minutes}m ${remainingSeconds}s`;
- }
function formatToolUseWithDetails(toolUse, toolResult) {
const toolName = toolUse.name;
const input = toolUse.input || {};
@@ -3896,21 +3916,6 @@ jobs:
}
return paramStrs.join(", ");
}
- function formatBashCommand(command) {
- if (!command) return "";
- let formatted = command.replace(/\n/g, " ").replace(/\r/g, " ").replace(/\t/g, " ").replace(/\s+/g, " ").trim();
- formatted = formatted.replace(/`/g, "\\`");
- const maxLength = 300;
- if (formatted.length > maxLength) {
- formatted = formatted.substring(0, maxLength) + "...";
- }
- return formatted;
- }
- function truncateString(str, maxLength) {
- if (!str) return "";
- if (str.length <= maxLength) return str;
- return str.substring(0, maxLength) + "...";
- }
if (typeof module !== "undefined" && module.exports) {
module.exports = {
parseCopilotLog,
diff --git a/.github/workflows/cli-consistency-checker.lock.yml b/.github/workflows/cli-consistency-checker.lock.yml
index bf397bc9ba..14317b4a58 100644
--- a/.github/workflows/cli-consistency-checker.lock.yml
+++ b/.github/workflows/cli-consistency-checker.lock.yml
@@ -2659,6 +2659,43 @@ jobs:
runLogParser,
};
}
+ function formatDuration(ms) {
+ if (!ms || ms <= 0) return "";
+ const seconds = Math.round(ms / 1000);
+ if (seconds < 60) {
+ return `${seconds}s`;
+ }
+ const minutes = Math.floor(seconds / 60);
+ const remainingSeconds = seconds % 60;
+ if (remainingSeconds === 0) {
+ return `${minutes}m`;
+ }
+ return `${minutes}m ${remainingSeconds}s`;
+ }
+ function formatBashCommand(command) {
+ if (!command) return "";
+ let formatted = command
+ .replace(/\n/g, " ")
+ .replace(/\r/g, " ")
+ .replace(/\t/g, " ")
+ .replace(/\s+/g, " ")
+ .trim();
+ formatted = formatted.replace(/`/g, "\\`");
+ const maxLength = 300;
+ if (formatted.length > maxLength) {
+ formatted = formatted.substring(0, maxLength) + "...";
+ }
+ return formatted;
+ }
+ function truncateString(str, maxLength) {
+ if (!str) return "";
+ if (str.length <= maxLength) return str;
+ return str.substring(0, maxLength) + "...";
+ }
+ function estimateTokens(text) {
+ if (!text) return 0;
+ return Math.ceil(text.length / 4);
+ }
function main() {
runLogParser({
parseLog: parseCopilotLog,
@@ -3317,23 +3354,6 @@ jobs:
}
return markdown;
}
- function estimateTokens(text) {
- if (!text) return 0;
- return Math.ceil(text.length / 4);
- }
- function formatDuration(ms) {
- if (!ms || ms <= 0) return "";
- const seconds = Math.round(ms / 1000);
- if (seconds < 60) {
- return `${seconds}s`;
- }
- const minutes = Math.floor(seconds / 60);
- const remainingSeconds = seconds % 60;
- if (remainingSeconds === 0) {
- return `${minutes}m`;
- }
- return `${minutes}m ${remainingSeconds}s`;
- }
function formatToolUseWithDetails(toolUse, toolResult) {
const toolName = toolUse.name;
const input = toolUse.input || {};
@@ -3461,21 +3481,6 @@ jobs:
}
return paramStrs.join(", ");
}
- function formatBashCommand(command) {
- if (!command) return "";
- let formatted = command.replace(/\n/g, " ").replace(/\r/g, " ").replace(/\t/g, " ").replace(/\s+/g, " ").trim();
- formatted = formatted.replace(/`/g, "\\`");
- const maxLength = 300;
- if (formatted.length > maxLength) {
- formatted = formatted.substring(0, maxLength) + "...";
- }
- return formatted;
- }
- function truncateString(str, maxLength) {
- if (!str) return "";
- if (str.length <= maxLength) return str;
- return str.substring(0, maxLength) + "...";
- }
if (typeof module !== "undefined" && module.exports) {
module.exports = {
parseCopilotLog,
diff --git a/.github/workflows/cli-version-checker.lock.yml b/.github/workflows/cli-version-checker.lock.yml
index 4ad0f60d58..d615782c84 100644
--- a/.github/workflows/cli-version-checker.lock.yml
+++ b/.github/workflows/cli-version-checker.lock.yml
@@ -2835,6 +2835,43 @@ jobs:
runLogParser,
};
}
+ function formatDuration(ms) {
+ if (!ms || ms <= 0) return "";
+ const seconds = Math.round(ms / 1000);
+ if (seconds < 60) {
+ return `${seconds}s`;
+ }
+ const minutes = Math.floor(seconds / 60);
+ const remainingSeconds = seconds % 60;
+ if (remainingSeconds === 0) {
+ return `${minutes}m`;
+ }
+ return `${minutes}m ${remainingSeconds}s`;
+ }
+ function formatBashCommand(command) {
+ if (!command) return "";
+ let formatted = command
+ .replace(/\n/g, " ")
+ .replace(/\r/g, " ")
+ .replace(/\t/g, " ")
+ .replace(/\s+/g, " ")
+ .trim();
+ formatted = formatted.replace(/`/g, "\\`");
+ const maxLength = 300;
+ if (formatted.length > maxLength) {
+ formatted = formatted.substring(0, maxLength) + "...";
+ }
+ return formatted;
+ }
+ function truncateString(str, maxLength) {
+ if (!str) return "";
+ if (str.length <= maxLength) return str;
+ return str.substring(0, maxLength) + "...";
+ }
+ function estimateTokens(text) {
+ if (!text) return 0;
+ return Math.ceil(text.length / 4);
+ }
function main() {
runLogParser({
parseLog: parseCopilotLog,
@@ -3493,23 +3530,6 @@ jobs:
}
return markdown;
}
- function estimateTokens(text) {
- if (!text) return 0;
- return Math.ceil(text.length / 4);
- }
- function formatDuration(ms) {
- if (!ms || ms <= 0) return "";
- const seconds = Math.round(ms / 1000);
- if (seconds < 60) {
- return `${seconds}s`;
- }
- const minutes = Math.floor(seconds / 60);
- const remainingSeconds = seconds % 60;
- if (remainingSeconds === 0) {
- return `${minutes}m`;
- }
- return `${minutes}m ${remainingSeconds}s`;
- }
function formatToolUseWithDetails(toolUse, toolResult) {
const toolName = toolUse.name;
const input = toolUse.input || {};
@@ -3637,21 +3657,6 @@ jobs:
}
return paramStrs.join(", ");
}
- function formatBashCommand(command) {
- if (!command) return "";
- let formatted = command.replace(/\n/g, " ").replace(/\r/g, " ").replace(/\t/g, " ").replace(/\s+/g, " ").trim();
- formatted = formatted.replace(/`/g, "\\`");
- const maxLength = 300;
- if (formatted.length > maxLength) {
- formatted = formatted.substring(0, maxLength) + "...";
- }
- return formatted;
- }
- function truncateString(str, maxLength) {
- if (!str) return "";
- if (str.length <= maxLength) return str;
- return str.substring(0, maxLength) + "...";
- }
if (typeof module !== "undefined" && module.exports) {
module.exports = {
parseCopilotLog,
diff --git a/.github/workflows/commit-changes-analyzer.lock.yml b/.github/workflows/commit-changes-analyzer.lock.yml
index 070931e37d..6f89ca3229 100644
--- a/.github/workflows/commit-changes-analyzer.lock.yml
+++ b/.github/workflows/commit-changes-analyzer.lock.yml
@@ -2933,6 +2933,43 @@ jobs:
runLogParser,
};
}
+ function formatDuration(ms) {
+ if (!ms || ms <= 0) return "";
+ const seconds = Math.round(ms / 1000);
+ if (seconds < 60) {
+ return `${seconds}s`;
+ }
+ const minutes = Math.floor(seconds / 60);
+ const remainingSeconds = seconds % 60;
+ if (remainingSeconds === 0) {
+ return `${minutes}m`;
+ }
+ return `${minutes}m ${remainingSeconds}s`;
+ }
+ function formatBashCommand(command) {
+ if (!command) return "";
+ let formatted = command
+ .replace(/\n/g, " ")
+ .replace(/\r/g, " ")
+ .replace(/\t/g, " ")
+ .replace(/\s+/g, " ")
+ .trim();
+ formatted = formatted.replace(/`/g, "\\`");
+ const maxLength = 300;
+ if (formatted.length > maxLength) {
+ formatted = formatted.substring(0, maxLength) + "...";
+ }
+ return formatted;
+ }
+ function truncateString(str, maxLength) {
+ if (!str) return "";
+ if (str.length <= maxLength) return str;
+ return str.substring(0, maxLength) + "...";
+ }
+ function estimateTokens(text) {
+ if (!text) return 0;
+ return Math.ceil(text.length / 4);
+ }
function main() {
runLogParser({
parseLog: parseClaudeLog,
@@ -3178,23 +3215,6 @@ jobs:
}
return { markdown, mcpFailures };
}
- function estimateTokens(text) {
- if (!text) return 0;
- return Math.ceil(text.length / 4);
- }
- function formatDuration(ms) {
- if (!ms || ms <= 0) return "";
- const seconds = Math.round(ms / 1000);
- if (seconds < 60) {
- return `${seconds}s`;
- }
- const minutes = Math.floor(seconds / 60);
- const remainingSeconds = seconds % 60;
- if (remainingSeconds === 0) {
- return `${minutes}m`;
- }
- return `${minutes}m ${remainingSeconds}s`;
- }
function formatToolUse(toolUse, toolResult) {
const toolName = toolUse.name;
const input = toolUse.input || {};
@@ -3312,26 +3332,6 @@ jobs:
}
return paramStrs.join(", ");
}
- function formatBashCommand(command) {
- if (!command) return "";
- let formatted = command
- .replace(/\n/g, " ")
- .replace(/\r/g, " ")
- .replace(/\t/g, " ")
- .replace(/\s+/g, " ")
- .trim();
- formatted = formatted.replace(/`/g, "\\`");
- const maxLength = 300;
- if (formatted.length > maxLength) {
- formatted = formatted.substring(0, maxLength) + "...";
- }
- return formatted;
- }
- function truncateString(str, maxLength) {
- if (!str) return "";
- if (str.length <= maxLength) return str;
- return str.substring(0, maxLength) + "...";
- }
if (typeof module !== "undefined" && module.exports) {
module.exports = {
parseClaudeLog,
diff --git a/.github/workflows/copilot-agent-analysis.lock.yml b/.github/workflows/copilot-agent-analysis.lock.yml
index 484110ac15..4206305d20 100644
--- a/.github/workflows/copilot-agent-analysis.lock.yml
+++ b/.github/workflows/copilot-agent-analysis.lock.yml
@@ -3286,6 +3286,43 @@ jobs:
runLogParser,
};
}
+ function formatDuration(ms) {
+ if (!ms || ms <= 0) return "";
+ const seconds = Math.round(ms / 1000);
+ if (seconds < 60) {
+ return `${seconds}s`;
+ }
+ const minutes = Math.floor(seconds / 60);
+ const remainingSeconds = seconds % 60;
+ if (remainingSeconds === 0) {
+ return `${minutes}m`;
+ }
+ return `${minutes}m ${remainingSeconds}s`;
+ }
+ function formatBashCommand(command) {
+ if (!command) return "";
+ let formatted = command
+ .replace(/\n/g, " ")
+ .replace(/\r/g, " ")
+ .replace(/\t/g, " ")
+ .replace(/\s+/g, " ")
+ .trim();
+ formatted = formatted.replace(/`/g, "\\`");
+ const maxLength = 300;
+ if (formatted.length > maxLength) {
+ formatted = formatted.substring(0, maxLength) + "...";
+ }
+ return formatted;
+ }
+ function truncateString(str, maxLength) {
+ if (!str) return "";
+ if (str.length <= maxLength) return str;
+ return str.substring(0, maxLength) + "...";
+ }
+ function estimateTokens(text) {
+ if (!text) return 0;
+ return Math.ceil(text.length / 4);
+ }
function main() {
runLogParser({
parseLog: parseClaudeLog,
@@ -3531,23 +3568,6 @@ jobs:
}
return { markdown, mcpFailures };
}
- function estimateTokens(text) {
- if (!text) return 0;
- return Math.ceil(text.length / 4);
- }
- function formatDuration(ms) {
- if (!ms || ms <= 0) return "";
- const seconds = Math.round(ms / 1000);
- if (seconds < 60) {
- return `${seconds}s`;
- }
- const minutes = Math.floor(seconds / 60);
- const remainingSeconds = seconds % 60;
- if (remainingSeconds === 0) {
- return `${minutes}m`;
- }
- return `${minutes}m ${remainingSeconds}s`;
- }
function formatToolUse(toolUse, toolResult) {
const toolName = toolUse.name;
const input = toolUse.input || {};
@@ -3665,26 +3685,6 @@ jobs:
}
return paramStrs.join(", ");
}
- function formatBashCommand(command) {
- if (!command) return "";
- let formatted = command
- .replace(/\n/g, " ")
- .replace(/\r/g, " ")
- .replace(/\t/g, " ")
- .replace(/\s+/g, " ")
- .trim();
- formatted = formatted.replace(/`/g, "\\`");
- const maxLength = 300;
- if (formatted.length > maxLength) {
- formatted = formatted.substring(0, maxLength) + "...";
- }
- return formatted;
- }
- function truncateString(str, maxLength) {
- if (!str) return "";
- if (str.length <= maxLength) return str;
- return str.substring(0, maxLength) + "...";
- }
if (typeof module !== "undefined" && module.exports) {
module.exports = {
parseClaudeLog,
diff --git a/.github/workflows/copilot-pr-nlp-analysis.lock.yml b/.github/workflows/copilot-pr-nlp-analysis.lock.yml
index f8041e5eab..0f6804bf24 100644
--- a/.github/workflows/copilot-pr-nlp-analysis.lock.yml
+++ b/.github/workflows/copilot-pr-nlp-analysis.lock.yml
@@ -3378,6 +3378,43 @@ jobs:
runLogParser,
};
}
+ function formatDuration(ms) {
+ if (!ms || ms <= 0) return "";
+ const seconds = Math.round(ms / 1000);
+ if (seconds < 60) {
+ return `${seconds}s`;
+ }
+ const minutes = Math.floor(seconds / 60);
+ const remainingSeconds = seconds % 60;
+ if (remainingSeconds === 0) {
+ return `${minutes}m`;
+ }
+ return `${minutes}m ${remainingSeconds}s`;
+ }
+ function formatBashCommand(command) {
+ if (!command) return "";
+ let formatted = command
+ .replace(/\n/g, " ")
+ .replace(/\r/g, " ")
+ .replace(/\t/g, " ")
+ .replace(/\s+/g, " ")
+ .trim();
+ formatted = formatted.replace(/`/g, "\\`");
+ const maxLength = 300;
+ if (formatted.length > maxLength) {
+ formatted = formatted.substring(0, maxLength) + "...";
+ }
+ return formatted;
+ }
+ function truncateString(str, maxLength) {
+ if (!str) return "";
+ if (str.length <= maxLength) return str;
+ return str.substring(0, maxLength) + "...";
+ }
+ function estimateTokens(text) {
+ if (!text) return 0;
+ return Math.ceil(text.length / 4);
+ }
function main() {
runLogParser({
parseLog: parseCopilotLog,
@@ -4036,23 +4073,6 @@ jobs:
}
return markdown;
}
- function estimateTokens(text) {
- if (!text) return 0;
- return Math.ceil(text.length / 4);
- }
- function formatDuration(ms) {
- if (!ms || ms <= 0) return "";
- const seconds = Math.round(ms / 1000);
- if (seconds < 60) {
- return `${seconds}s`;
- }
- const minutes = Math.floor(seconds / 60);
- const remainingSeconds = seconds % 60;
- if (remainingSeconds === 0) {
- return `${minutes}m`;
- }
- return `${minutes}m ${remainingSeconds}s`;
- }
function formatToolUseWithDetails(toolUse, toolResult) {
const toolName = toolUse.name;
const input = toolUse.input || {};
@@ -4180,21 +4200,6 @@ jobs:
}
return paramStrs.join(", ");
}
- function formatBashCommand(command) {
- if (!command) return "";
- let formatted = command.replace(/\n/g, " ").replace(/\r/g, " ").replace(/\t/g, " ").replace(/\s+/g, " ").trim();
- formatted = formatted.replace(/`/g, "\\`");
- const maxLength = 300;
- if (formatted.length > maxLength) {
- formatted = formatted.substring(0, maxLength) + "...";
- }
- return formatted;
- }
- function truncateString(str, maxLength) {
- if (!str) return "";
- if (str.length <= maxLength) return str;
- return str.substring(0, maxLength) + "...";
- }
if (typeof module !== "undefined" && module.exports) {
module.exports = {
parseCopilotLog,
diff --git a/.github/workflows/copilot-pr-prompt-analysis.lock.yml b/.github/workflows/copilot-pr-prompt-analysis.lock.yml
index 92443aad32..05e3dd77a8 100644
--- a/.github/workflows/copilot-pr-prompt-analysis.lock.yml
+++ b/.github/workflows/copilot-pr-prompt-analysis.lock.yml
@@ -2961,6 +2961,43 @@ jobs:
runLogParser,
};
}
+ function formatDuration(ms) {
+ if (!ms || ms <= 0) return "";
+ const seconds = Math.round(ms / 1000);
+ if (seconds < 60) {
+ return `${seconds}s`;
+ }
+ const minutes = Math.floor(seconds / 60);
+ const remainingSeconds = seconds % 60;
+ if (remainingSeconds === 0) {
+ return `${minutes}m`;
+ }
+ return `${minutes}m ${remainingSeconds}s`;
+ }
+ function formatBashCommand(command) {
+ if (!command) return "";
+ let formatted = command
+ .replace(/\n/g, " ")
+ .replace(/\r/g, " ")
+ .replace(/\t/g, " ")
+ .replace(/\s+/g, " ")
+ .trim();
+ formatted = formatted.replace(/`/g, "\\`");
+ const maxLength = 300;
+ if (formatted.length > maxLength) {
+ formatted = formatted.substring(0, maxLength) + "...";
+ }
+ return formatted;
+ }
+ function truncateString(str, maxLength) {
+ if (!str) return "";
+ if (str.length <= maxLength) return str;
+ return str.substring(0, maxLength) + "...";
+ }
+ function estimateTokens(text) {
+ if (!text) return 0;
+ return Math.ceil(text.length / 4);
+ }
function main() {
runLogParser({
parseLog: parseCopilotLog,
@@ -3619,23 +3656,6 @@ jobs:
}
return markdown;
}
- function estimateTokens(text) {
- if (!text) return 0;
- return Math.ceil(text.length / 4);
- }
- function formatDuration(ms) {
- if (!ms || ms <= 0) return "";
- const seconds = Math.round(ms / 1000);
- if (seconds < 60) {
- return `${seconds}s`;
- }
- const minutes = Math.floor(seconds / 60);
- const remainingSeconds = seconds % 60;
- if (remainingSeconds === 0) {
- return `${minutes}m`;
- }
- return `${minutes}m ${remainingSeconds}s`;
- }
function formatToolUseWithDetails(toolUse, toolResult) {
const toolName = toolUse.name;
const input = toolUse.input || {};
@@ -3763,21 +3783,6 @@ jobs:
}
return paramStrs.join(", ");
}
- function formatBashCommand(command) {
- if (!command) return "";
- let formatted = command.replace(/\n/g, " ").replace(/\r/g, " ").replace(/\t/g, " ").replace(/\s+/g, " ").trim();
- formatted = formatted.replace(/`/g, "\\`");
- const maxLength = 300;
- if (formatted.length > maxLength) {
- formatted = formatted.substring(0, maxLength) + "...";
- }
- return formatted;
- }
- function truncateString(str, maxLength) {
- if (!str) return "";
- if (str.length <= maxLength) return str;
- return str.substring(0, maxLength) + "...";
- }
if (typeof module !== "undefined" && module.exports) {
module.exports = {
parseCopilotLog,
diff --git a/.github/workflows/copilot-session-insights.lock.yml b/.github/workflows/copilot-session-insights.lock.yml
index 2ab2b01212..4fa5cb234a 100644
--- a/.github/workflows/copilot-session-insights.lock.yml
+++ b/.github/workflows/copilot-session-insights.lock.yml
@@ -4204,6 +4204,43 @@ jobs:
runLogParser,
};
}
+ function formatDuration(ms) {
+ if (!ms || ms <= 0) return "";
+ const seconds = Math.round(ms / 1000);
+ if (seconds < 60) {
+ return `${seconds}s`;
+ }
+ const minutes = Math.floor(seconds / 60);
+ const remainingSeconds = seconds % 60;
+ if (remainingSeconds === 0) {
+ return `${minutes}m`;
+ }
+ return `${minutes}m ${remainingSeconds}s`;
+ }
+ function formatBashCommand(command) {
+ if (!command) return "";
+ let formatted = command
+ .replace(/\n/g, " ")
+ .replace(/\r/g, " ")
+ .replace(/\t/g, " ")
+ .replace(/\s+/g, " ")
+ .trim();
+ formatted = formatted.replace(/`/g, "\\`");
+ const maxLength = 300;
+ if (formatted.length > maxLength) {
+ formatted = formatted.substring(0, maxLength) + "...";
+ }
+ return formatted;
+ }
+ function truncateString(str, maxLength) {
+ if (!str) return "";
+ if (str.length <= maxLength) return str;
+ return str.substring(0, maxLength) + "...";
+ }
+ function estimateTokens(text) {
+ if (!text) return 0;
+ return Math.ceil(text.length / 4);
+ }
function main() {
runLogParser({
parseLog: parseClaudeLog,
@@ -4449,23 +4486,6 @@ jobs:
}
return { markdown, mcpFailures };
}
- function estimateTokens(text) {
- if (!text) return 0;
- return Math.ceil(text.length / 4);
- }
- function formatDuration(ms) {
- if (!ms || ms <= 0) return "";
- const seconds = Math.round(ms / 1000);
- if (seconds < 60) {
- return `${seconds}s`;
- }
- const minutes = Math.floor(seconds / 60);
- const remainingSeconds = seconds % 60;
- if (remainingSeconds === 0) {
- return `${minutes}m`;
- }
- return `${minutes}m ${remainingSeconds}s`;
- }
function formatToolUse(toolUse, toolResult) {
const toolName = toolUse.name;
const input = toolUse.input || {};
@@ -4583,26 +4603,6 @@ jobs:
}
return paramStrs.join(", ");
}
- function formatBashCommand(command) {
- if (!command) return "";
- let formatted = command
- .replace(/\n/g, " ")
- .replace(/\r/g, " ")
- .replace(/\t/g, " ")
- .replace(/\s+/g, " ")
- .trim();
- formatted = formatted.replace(/`/g, "\\`");
- const maxLength = 300;
- if (formatted.length > maxLength) {
- formatted = formatted.substring(0, maxLength) + "...";
- }
- return formatted;
- }
- function truncateString(str, maxLength) {
- if (!str) return "";
- if (str.length <= maxLength) return str;
- return str.substring(0, maxLength) + "...";
- }
if (typeof module !== "undefined" && module.exports) {
module.exports = {
parseClaudeLog,
diff --git a/.github/workflows/craft.lock.yml b/.github/workflows/craft.lock.yml
index 2d334c6fe9..2e9d521421 100644
--- a/.github/workflows/craft.lock.yml
+++ b/.github/workflows/craft.lock.yml
@@ -3751,6 +3751,43 @@ jobs:
runLogParser,
};
}
+ function formatDuration(ms) {
+ if (!ms || ms <= 0) return "";
+ const seconds = Math.round(ms / 1000);
+ if (seconds < 60) {
+ return `${seconds}s`;
+ }
+ const minutes = Math.floor(seconds / 60);
+ const remainingSeconds = seconds % 60;
+ if (remainingSeconds === 0) {
+ return `${minutes}m`;
+ }
+ return `${minutes}m ${remainingSeconds}s`;
+ }
+ function formatBashCommand(command) {
+ if (!command) return "";
+ let formatted = command
+ .replace(/\n/g, " ")
+ .replace(/\r/g, " ")
+ .replace(/\t/g, " ")
+ .replace(/\s+/g, " ")
+ .trim();
+ formatted = formatted.replace(/`/g, "\\`");
+ const maxLength = 300;
+ if (formatted.length > maxLength) {
+ formatted = formatted.substring(0, maxLength) + "...";
+ }
+ return formatted;
+ }
+ function truncateString(str, maxLength) {
+ if (!str) return "";
+ if (str.length <= maxLength) return str;
+ return str.substring(0, maxLength) + "...";
+ }
+ function estimateTokens(text) {
+ if (!text) return 0;
+ return Math.ceil(text.length / 4);
+ }
function main() {
runLogParser({
parseLog: parseCopilotLog,
@@ -4409,23 +4446,6 @@ jobs:
}
return markdown;
}
- function estimateTokens(text) {
- if (!text) return 0;
- return Math.ceil(text.length / 4);
- }
- function formatDuration(ms) {
- if (!ms || ms <= 0) return "";
- const seconds = Math.round(ms / 1000);
- if (seconds < 60) {
- return `${seconds}s`;
- }
- const minutes = Math.floor(seconds / 60);
- const remainingSeconds = seconds % 60;
- if (remainingSeconds === 0) {
- return `${minutes}m`;
- }
- return `${minutes}m ${remainingSeconds}s`;
- }
function formatToolUseWithDetails(toolUse, toolResult) {
const toolName = toolUse.name;
const input = toolUse.input || {};
@@ -4553,21 +4573,6 @@ jobs:
}
return paramStrs.join(", ");
}
- function formatBashCommand(command) {
- if (!command) return "";
- let formatted = command.replace(/\n/g, " ").replace(/\r/g, " ").replace(/\t/g, " ").replace(/\s+/g, " ").trim();
- formatted = formatted.replace(/`/g, "\\`");
- const maxLength = 300;
- if (formatted.length > maxLength) {
- formatted = formatted.substring(0, maxLength) + "...";
- }
- return formatted;
- }
- function truncateString(str, maxLength) {
- if (!str) return "";
- if (str.length <= maxLength) return str;
- return str.substring(0, maxLength) + "...";
- }
if (typeof module !== "undefined" && module.exports) {
module.exports = {
parseCopilotLog,
diff --git a/.github/workflows/daily-code-metrics.lock.yml b/.github/workflows/daily-code-metrics.lock.yml
index d6b0b662fb..4ae2d72549 100644
--- a/.github/workflows/daily-code-metrics.lock.yml
+++ b/.github/workflows/daily-code-metrics.lock.yml
@@ -3276,6 +3276,43 @@ jobs:
runLogParser,
};
}
+ function formatDuration(ms) {
+ if (!ms || ms <= 0) return "";
+ const seconds = Math.round(ms / 1000);
+ if (seconds < 60) {
+ return `${seconds}s`;
+ }
+ const minutes = Math.floor(seconds / 60);
+ const remainingSeconds = seconds % 60;
+ if (remainingSeconds === 0) {
+ return `${minutes}m`;
+ }
+ return `${minutes}m ${remainingSeconds}s`;
+ }
+ function formatBashCommand(command) {
+ if (!command) return "";
+ let formatted = command
+ .replace(/\n/g, " ")
+ .replace(/\r/g, " ")
+ .replace(/\t/g, " ")
+ .replace(/\s+/g, " ")
+ .trim();
+ formatted = formatted.replace(/`/g, "\\`");
+ const maxLength = 300;
+ if (formatted.length > maxLength) {
+ formatted = formatted.substring(0, maxLength) + "...";
+ }
+ return formatted;
+ }
+ function truncateString(str, maxLength) {
+ if (!str) return "";
+ if (str.length <= maxLength) return str;
+ return str.substring(0, maxLength) + "...";
+ }
+ function estimateTokens(text) {
+ if (!text) return 0;
+ return Math.ceil(text.length / 4);
+ }
function main() {
runLogParser({
parseLog: parseClaudeLog,
@@ -3521,23 +3558,6 @@ jobs:
}
return { markdown, mcpFailures };
}
- function estimateTokens(text) {
- if (!text) return 0;
- return Math.ceil(text.length / 4);
- }
- function formatDuration(ms) {
- if (!ms || ms <= 0) return "";
- const seconds = Math.round(ms / 1000);
- if (seconds < 60) {
- return `${seconds}s`;
- }
- const minutes = Math.floor(seconds / 60);
- const remainingSeconds = seconds % 60;
- if (remainingSeconds === 0) {
- return `${minutes}m`;
- }
- return `${minutes}m ${remainingSeconds}s`;
- }
function formatToolUse(toolUse, toolResult) {
const toolName = toolUse.name;
const input = toolUse.input || {};
@@ -3655,26 +3675,6 @@ jobs:
}
return paramStrs.join(", ");
}
- function formatBashCommand(command) {
- if (!command) return "";
- let formatted = command
- .replace(/\n/g, " ")
- .replace(/\r/g, " ")
- .replace(/\t/g, " ")
- .replace(/\s+/g, " ")
- .trim();
- formatted = formatted.replace(/`/g, "\\`");
- const maxLength = 300;
- if (formatted.length > maxLength) {
- formatted = formatted.substring(0, maxLength) + "...";
- }
- return formatted;
- }
- function truncateString(str, maxLength) {
- if (!str) return "";
- if (str.length <= maxLength) return str;
- return str.substring(0, maxLength) + "...";
- }
if (typeof module !== "undefined" && module.exports) {
module.exports = {
parseClaudeLog,
diff --git a/.github/workflows/daily-doc-updater.lock.yml b/.github/workflows/daily-doc-updater.lock.yml
index 85a2a29592..7019977ac7 100644
--- a/.github/workflows/daily-doc-updater.lock.yml
+++ b/.github/workflows/daily-doc-updater.lock.yml
@@ -2862,6 +2862,43 @@ jobs:
runLogParser,
};
}
+ function formatDuration(ms) {
+ if (!ms || ms <= 0) return "";
+ const seconds = Math.round(ms / 1000);
+ if (seconds < 60) {
+ return `${seconds}s`;
+ }
+ const minutes = Math.floor(seconds / 60);
+ const remainingSeconds = seconds % 60;
+ if (remainingSeconds === 0) {
+ return `${minutes}m`;
+ }
+ return `${minutes}m ${remainingSeconds}s`;
+ }
+ function formatBashCommand(command) {
+ if (!command) return "";
+ let formatted = command
+ .replace(/\n/g, " ")
+ .replace(/\r/g, " ")
+ .replace(/\t/g, " ")
+ .replace(/\s+/g, " ")
+ .trim();
+ formatted = formatted.replace(/`/g, "\\`");
+ const maxLength = 300;
+ if (formatted.length > maxLength) {
+ formatted = formatted.substring(0, maxLength) + "...";
+ }
+ return formatted;
+ }
+ function truncateString(str, maxLength) {
+ if (!str) return "";
+ if (str.length <= maxLength) return str;
+ return str.substring(0, maxLength) + "...";
+ }
+ function estimateTokens(text) {
+ if (!text) return 0;
+ return Math.ceil(text.length / 4);
+ }
function main() {
runLogParser({
parseLog: parseClaudeLog,
@@ -3107,23 +3144,6 @@ jobs:
}
return { markdown, mcpFailures };
}
- function estimateTokens(text) {
- if (!text) return 0;
- return Math.ceil(text.length / 4);
- }
- function formatDuration(ms) {
- if (!ms || ms <= 0) return "";
- const seconds = Math.round(ms / 1000);
- if (seconds < 60) {
- return `${seconds}s`;
- }
- const minutes = Math.floor(seconds / 60);
- const remainingSeconds = seconds % 60;
- if (remainingSeconds === 0) {
- return `${minutes}m`;
- }
- return `${minutes}m ${remainingSeconds}s`;
- }
function formatToolUse(toolUse, toolResult) {
const toolName = toolUse.name;
const input = toolUse.input || {};
@@ -3241,26 +3261,6 @@ jobs:
}
return paramStrs.join(", ");
}
- function formatBashCommand(command) {
- if (!command) return "";
- let formatted = command
- .replace(/\n/g, " ")
- .replace(/\r/g, " ")
- .replace(/\t/g, " ")
- .replace(/\s+/g, " ")
- .trim();
- formatted = formatted.replace(/`/g, "\\`");
- const maxLength = 300;
- if (formatted.length > maxLength) {
- formatted = formatted.substring(0, maxLength) + "...";
- }
- return formatted;
- }
- function truncateString(str, maxLength) {
- if (!str) return "";
- if (str.length <= maxLength) return str;
- return str.substring(0, maxLength) + "...";
- }
if (typeof module !== "undefined" && module.exports) {
module.exports = {
parseClaudeLog,
diff --git a/.github/workflows/daily-firewall-report.lock.yml b/.github/workflows/daily-firewall-report.lock.yml
index 7bb3109084..08deda0e18 100644
--- a/.github/workflows/daily-firewall-report.lock.yml
+++ b/.github/workflows/daily-firewall-report.lock.yml
@@ -3379,6 +3379,43 @@ jobs:
runLogParser,
};
}
+ function formatDuration(ms) {
+ if (!ms || ms <= 0) return "";
+ const seconds = Math.round(ms / 1000);
+ if (seconds < 60) {
+ return `${seconds}s`;
+ }
+ const minutes = Math.floor(seconds / 60);
+ const remainingSeconds = seconds % 60;
+ if (remainingSeconds === 0) {
+ return `${minutes}m`;
+ }
+ return `${minutes}m ${remainingSeconds}s`;
+ }
+ function formatBashCommand(command) {
+ if (!command) return "";
+ let formatted = command
+ .replace(/\n/g, " ")
+ .replace(/\r/g, " ")
+ .replace(/\t/g, " ")
+ .replace(/\s+/g, " ")
+ .trim();
+ formatted = formatted.replace(/`/g, "\\`");
+ const maxLength = 300;
+ if (formatted.length > maxLength) {
+ formatted = formatted.substring(0, maxLength) + "...";
+ }
+ return formatted;
+ }
+ function truncateString(str, maxLength) {
+ if (!str) return "";
+ if (str.length <= maxLength) return str;
+ return str.substring(0, maxLength) + "...";
+ }
+ function estimateTokens(text) {
+ if (!text) return 0;
+ return Math.ceil(text.length / 4);
+ }
function main() {
runLogParser({
parseLog: parseCopilotLog,
@@ -4037,23 +4074,6 @@ jobs:
}
return markdown;
}
- function estimateTokens(text) {
- if (!text) return 0;
- return Math.ceil(text.length / 4);
- }
- function formatDuration(ms) {
- if (!ms || ms <= 0) return "";
- const seconds = Math.round(ms / 1000);
- if (seconds < 60) {
- return `${seconds}s`;
- }
- const minutes = Math.floor(seconds / 60);
- const remainingSeconds = seconds % 60;
- if (remainingSeconds === 0) {
- return `${minutes}m`;
- }
- return `${minutes}m ${remainingSeconds}s`;
- }
function formatToolUseWithDetails(toolUse, toolResult) {
const toolName = toolUse.name;
const input = toolUse.input || {};
@@ -4181,21 +4201,6 @@ jobs:
}
return paramStrs.join(", ");
}
- function formatBashCommand(command) {
- if (!command) return "";
- let formatted = command.replace(/\n/g, " ").replace(/\r/g, " ").replace(/\t/g, " ").replace(/\s+/g, " ").trim();
- formatted = formatted.replace(/`/g, "\\`");
- const maxLength = 300;
- if (formatted.length > maxLength) {
- formatted = formatted.substring(0, maxLength) + "...";
- }
- return formatted;
- }
- function truncateString(str, maxLength) {
- if (!str) return "";
- if (str.length <= maxLength) return str;
- return str.substring(0, maxLength) + "...";
- }
if (typeof module !== "undefined" && module.exports) {
module.exports = {
parseCopilotLog,
diff --git a/.github/workflows/daily-multi-device-docs-tester.lock.yml b/.github/workflows/daily-multi-device-docs-tester.lock.yml
index 1aa11eca54..7de8fb63bf 100644
--- a/.github/workflows/daily-multi-device-docs-tester.lock.yml
+++ b/.github/workflows/daily-multi-device-docs-tester.lock.yml
@@ -2784,6 +2784,43 @@ jobs:
runLogParser,
};
}
+ function formatDuration(ms) {
+ if (!ms || ms <= 0) return "";
+ const seconds = Math.round(ms / 1000);
+ if (seconds < 60) {
+ return `${seconds}s`;
+ }
+ const minutes = Math.floor(seconds / 60);
+ const remainingSeconds = seconds % 60;
+ if (remainingSeconds === 0) {
+ return `${minutes}m`;
+ }
+ return `${minutes}m ${remainingSeconds}s`;
+ }
+ function formatBashCommand(command) {
+ if (!command) return "";
+ let formatted = command
+ .replace(/\n/g, " ")
+ .replace(/\r/g, " ")
+ .replace(/\t/g, " ")
+ .replace(/\s+/g, " ")
+ .trim();
+ formatted = formatted.replace(/`/g, "\\`");
+ const maxLength = 300;
+ if (formatted.length > maxLength) {
+ formatted = formatted.substring(0, maxLength) + "...";
+ }
+ return formatted;
+ }
+ function truncateString(str, maxLength) {
+ if (!str) return "";
+ if (str.length <= maxLength) return str;
+ return str.substring(0, maxLength) + "...";
+ }
+ function estimateTokens(text) {
+ if (!text) return 0;
+ return Math.ceil(text.length / 4);
+ }
function main() {
runLogParser({
parseLog: parseClaudeLog,
@@ -3029,23 +3066,6 @@ jobs:
}
return { markdown, mcpFailures };
}
- function estimateTokens(text) {
- if (!text) return 0;
- return Math.ceil(text.length / 4);
- }
- function formatDuration(ms) {
- if (!ms || ms <= 0) return "";
- const seconds = Math.round(ms / 1000);
- if (seconds < 60) {
- return `${seconds}s`;
- }
- const minutes = Math.floor(seconds / 60);
- const remainingSeconds = seconds % 60;
- if (remainingSeconds === 0) {
- return `${minutes}m`;
- }
- return `${minutes}m ${remainingSeconds}s`;
- }
function formatToolUse(toolUse, toolResult) {
const toolName = toolUse.name;
const input = toolUse.input || {};
@@ -3163,26 +3183,6 @@ jobs:
}
return paramStrs.join(", ");
}
- function formatBashCommand(command) {
- if (!command) return "";
- let formatted = command
- .replace(/\n/g, " ")
- .replace(/\r/g, " ")
- .replace(/\t/g, " ")
- .replace(/\s+/g, " ")
- .trim();
- formatted = formatted.replace(/`/g, "\\`");
- const maxLength = 300;
- if (formatted.length > maxLength) {
- formatted = formatted.substring(0, maxLength) + "...";
- }
- return formatted;
- }
- function truncateString(str, maxLength) {
- if (!str) return "";
- if (str.length <= maxLength) return str;
- return str.substring(0, maxLength) + "...";
- }
if (typeof module !== "undefined" && module.exports) {
module.exports = {
parseClaudeLog,
diff --git a/.github/workflows/daily-news.lock.yml b/.github/workflows/daily-news.lock.yml
index e889451fe9..18cc98b181 100644
--- a/.github/workflows/daily-news.lock.yml
+++ b/.github/workflows/daily-news.lock.yml
@@ -3388,6 +3388,43 @@ jobs:
runLogParser,
};
}
+ function formatDuration(ms) {
+ if (!ms || ms <= 0) return "";
+ const seconds = Math.round(ms / 1000);
+ if (seconds < 60) {
+ return `${seconds}s`;
+ }
+ const minutes = Math.floor(seconds / 60);
+ const remainingSeconds = seconds % 60;
+ if (remainingSeconds === 0) {
+ return `${minutes}m`;
+ }
+ return `${minutes}m ${remainingSeconds}s`;
+ }
+ function formatBashCommand(command) {
+ if (!command) return "";
+ let formatted = command
+ .replace(/\n/g, " ")
+ .replace(/\r/g, " ")
+ .replace(/\t/g, " ")
+ .replace(/\s+/g, " ")
+ .trim();
+ formatted = formatted.replace(/`/g, "\\`");
+ const maxLength = 300;
+ if (formatted.length > maxLength) {
+ formatted = formatted.substring(0, maxLength) + "...";
+ }
+ return formatted;
+ }
+ function truncateString(str, maxLength) {
+ if (!str) return "";
+ if (str.length <= maxLength) return str;
+ return str.substring(0, maxLength) + "...";
+ }
+ function estimateTokens(text) {
+ if (!text) return 0;
+ return Math.ceil(text.length / 4);
+ }
function main() {
runLogParser({
parseLog: parseCopilotLog,
@@ -4046,23 +4083,6 @@ jobs:
}
return markdown;
}
- function estimateTokens(text) {
- if (!text) return 0;
- return Math.ceil(text.length / 4);
- }
- function formatDuration(ms) {
- if (!ms || ms <= 0) return "";
- const seconds = Math.round(ms / 1000);
- if (seconds < 60) {
- return `${seconds}s`;
- }
- const minutes = Math.floor(seconds / 60);
- const remainingSeconds = seconds % 60;
- if (remainingSeconds === 0) {
- return `${minutes}m`;
- }
- return `${minutes}m ${remainingSeconds}s`;
- }
function formatToolUseWithDetails(toolUse, toolResult) {
const toolName = toolUse.name;
const input = toolUse.input || {};
@@ -4190,21 +4210,6 @@ jobs:
}
return paramStrs.join(", ");
}
- function formatBashCommand(command) {
- if (!command) return "";
- let formatted = command.replace(/\n/g, " ").replace(/\r/g, " ").replace(/\t/g, " ").replace(/\s+/g, " ").trim();
- formatted = formatted.replace(/`/g, "\\`");
- const maxLength = 300;
- if (formatted.length > maxLength) {
- formatted = formatted.substring(0, maxLength) + "...";
- }
- return formatted;
- }
- function truncateString(str, maxLength) {
- if (!str) return "";
- if (str.length <= maxLength) return str;
- return str.substring(0, maxLength) + "...";
- }
if (typeof module !== "undefined" && module.exports) {
module.exports = {
parseCopilotLog,
diff --git a/.github/workflows/daily-repo-chronicle.lock.yml b/.github/workflows/daily-repo-chronicle.lock.yml
index 405352fca5..b60edfa35d 100644
--- a/.github/workflows/daily-repo-chronicle.lock.yml
+++ b/.github/workflows/daily-repo-chronicle.lock.yml
@@ -3232,6 +3232,43 @@ jobs:
runLogParser,
};
}
+ function formatDuration(ms) {
+ if (!ms || ms <= 0) return "";
+ const seconds = Math.round(ms / 1000);
+ if (seconds < 60) {
+ return `${seconds}s`;
+ }
+ const minutes = Math.floor(seconds / 60);
+ const remainingSeconds = seconds % 60;
+ if (remainingSeconds === 0) {
+ return `${minutes}m`;
+ }
+ return `${minutes}m ${remainingSeconds}s`;
+ }
+ function formatBashCommand(command) {
+ if (!command) return "";
+ let formatted = command
+ .replace(/\n/g, " ")
+ .replace(/\r/g, " ")
+ .replace(/\t/g, " ")
+ .replace(/\s+/g, " ")
+ .trim();
+ formatted = formatted.replace(/`/g, "\\`");
+ const maxLength = 300;
+ if (formatted.length > maxLength) {
+ formatted = formatted.substring(0, maxLength) + "...";
+ }
+ return formatted;
+ }
+ function truncateString(str, maxLength) {
+ if (!str) return "";
+ if (str.length <= maxLength) return str;
+ return str.substring(0, maxLength) + "...";
+ }
+ function estimateTokens(text) {
+ if (!text) return 0;
+ return Math.ceil(text.length / 4);
+ }
function main() {
runLogParser({
parseLog: parseCopilotLog,
@@ -3890,23 +3927,6 @@ jobs:
}
return markdown;
}
- function estimateTokens(text) {
- if (!text) return 0;
- return Math.ceil(text.length / 4);
- }
- function formatDuration(ms) {
- if (!ms || ms <= 0) return "";
- const seconds = Math.round(ms / 1000);
- if (seconds < 60) {
- return `${seconds}s`;
- }
- const minutes = Math.floor(seconds / 60);
- const remainingSeconds = seconds % 60;
- if (remainingSeconds === 0) {
- return `${minutes}m`;
- }
- return `${minutes}m ${remainingSeconds}s`;
- }
function formatToolUseWithDetails(toolUse, toolResult) {
const toolName = toolUse.name;
const input = toolUse.input || {};
@@ -4034,21 +4054,6 @@ jobs:
}
return paramStrs.join(", ");
}
- function formatBashCommand(command) {
- if (!command) return "";
- let formatted = command.replace(/\n/g, " ").replace(/\r/g, " ").replace(/\t/g, " ").replace(/\s+/g, " ").trim();
- formatted = formatted.replace(/`/g, "\\`");
- const maxLength = 300;
- if (formatted.length > maxLength) {
- formatted = formatted.substring(0, maxLength) + "...";
- }
- return formatted;
- }
- function truncateString(str, maxLength) {
- if (!str) return "";
- if (str.length <= maxLength) return str;
- return str.substring(0, maxLength) + "...";
- }
if (typeof module !== "undefined" && module.exports) {
module.exports = {
parseCopilotLog,
diff --git a/.github/workflows/daily-team-status.lock.yml b/.github/workflows/daily-team-status.lock.yml
index d76b1e7e58..dc450464fd 100644
--- a/.github/workflows/daily-team-status.lock.yml
+++ b/.github/workflows/daily-team-status.lock.yml
@@ -2467,6 +2467,43 @@ jobs:
runLogParser,
};
}
+ function formatDuration(ms) {
+ if (!ms || ms <= 0) return "";
+ const seconds = Math.round(ms / 1000);
+ if (seconds < 60) {
+ return `${seconds}s`;
+ }
+ const minutes = Math.floor(seconds / 60);
+ const remainingSeconds = seconds % 60;
+ if (remainingSeconds === 0) {
+ return `${minutes}m`;
+ }
+ return `${minutes}m ${remainingSeconds}s`;
+ }
+ function formatBashCommand(command) {
+ if (!command) return "";
+ let formatted = command
+ .replace(/\n/g, " ")
+ .replace(/\r/g, " ")
+ .replace(/\t/g, " ")
+ .replace(/\s+/g, " ")
+ .trim();
+ formatted = formatted.replace(/`/g, "\\`");
+ const maxLength = 300;
+ if (formatted.length > maxLength) {
+ formatted = formatted.substring(0, maxLength) + "...";
+ }
+ return formatted;
+ }
+ function truncateString(str, maxLength) {
+ if (!str) return "";
+ if (str.length <= maxLength) return str;
+ return str.substring(0, maxLength) + "...";
+ }
+ function estimateTokens(text) {
+ if (!text) return 0;
+ return Math.ceil(text.length / 4);
+ }
function main() {
runLogParser({
parseLog: parseCopilotLog,
@@ -3125,23 +3162,6 @@ jobs:
}
return markdown;
}
- function estimateTokens(text) {
- if (!text) return 0;
- return Math.ceil(text.length / 4);
- }
- function formatDuration(ms) {
- if (!ms || ms <= 0) return "";
- const seconds = Math.round(ms / 1000);
- if (seconds < 60) {
- return `${seconds}s`;
- }
- const minutes = Math.floor(seconds / 60);
- const remainingSeconds = seconds % 60;
- if (remainingSeconds === 0) {
- return `${minutes}m`;
- }
- return `${minutes}m ${remainingSeconds}s`;
- }
function formatToolUseWithDetails(toolUse, toolResult) {
const toolName = toolUse.name;
const input = toolUse.input || {};
@@ -3269,21 +3289,6 @@ jobs:
}
return paramStrs.join(", ");
}
- function formatBashCommand(command) {
- if (!command) return "";
- let formatted = command.replace(/\n/g, " ").replace(/\r/g, " ").replace(/\t/g, " ").replace(/\s+/g, " ").trim();
- formatted = formatted.replace(/`/g, "\\`");
- const maxLength = 300;
- if (formatted.length > maxLength) {
- formatted = formatted.substring(0, maxLength) + "...";
- }
- return formatted;
- }
- function truncateString(str, maxLength) {
- if (!str) return "";
- if (str.length <= maxLength) return str;
- return str.substring(0, maxLength) + "...";
- }
if (typeof module !== "undefined" && module.exports) {
module.exports = {
parseCopilotLog,
diff --git a/.github/workflows/dependabot-go-checker.lock.yml b/.github/workflows/dependabot-go-checker.lock.yml
index bf26269554..5b83a3f340 100644
--- a/.github/workflows/dependabot-go-checker.lock.yml
+++ b/.github/workflows/dependabot-go-checker.lock.yml
@@ -2632,6 +2632,43 @@ jobs:
runLogParser,
};
}
+ function formatDuration(ms) {
+ if (!ms || ms <= 0) return "";
+ const seconds = Math.round(ms / 1000);
+ if (seconds < 60) {
+ return `${seconds}s`;
+ }
+ const minutes = Math.floor(seconds / 60);
+ const remainingSeconds = seconds % 60;
+ if (remainingSeconds === 0) {
+ return `${minutes}m`;
+ }
+ return `${minutes}m ${remainingSeconds}s`;
+ }
+ function formatBashCommand(command) {
+ if (!command) return "";
+ let formatted = command
+ .replace(/\n/g, " ")
+ .replace(/\r/g, " ")
+ .replace(/\t/g, " ")
+ .replace(/\s+/g, " ")
+ .trim();
+ formatted = formatted.replace(/`/g, "\\`");
+ const maxLength = 300;
+ if (formatted.length > maxLength) {
+ formatted = formatted.substring(0, maxLength) + "...";
+ }
+ return formatted;
+ }
+ function truncateString(str, maxLength) {
+ if (!str) return "";
+ if (str.length <= maxLength) return str;
+ return str.substring(0, maxLength) + "...";
+ }
+ function estimateTokens(text) {
+ if (!text) return 0;
+ return Math.ceil(text.length / 4);
+ }
function main() {
runLogParser({
parseLog: parseCopilotLog,
@@ -3290,23 +3327,6 @@ jobs:
}
return markdown;
}
- function estimateTokens(text) {
- if (!text) return 0;
- return Math.ceil(text.length / 4);
- }
- function formatDuration(ms) {
- if (!ms || ms <= 0) return "";
- const seconds = Math.round(ms / 1000);
- if (seconds < 60) {
- return `${seconds}s`;
- }
- const minutes = Math.floor(seconds / 60);
- const remainingSeconds = seconds % 60;
- if (remainingSeconds === 0) {
- return `${minutes}m`;
- }
- return `${minutes}m ${remainingSeconds}s`;
- }
function formatToolUseWithDetails(toolUse, toolResult) {
const toolName = toolUse.name;
const input = toolUse.input || {};
@@ -3434,21 +3454,6 @@ jobs:
}
return paramStrs.join(", ");
}
- function formatBashCommand(command) {
- if (!command) return "";
- let formatted = command.replace(/\n/g, " ").replace(/\r/g, " ").replace(/\t/g, " ").replace(/\s+/g, " ").trim();
- formatted = formatted.replace(/`/g, "\\`");
- const maxLength = 300;
- if (formatted.length > maxLength) {
- formatted = formatted.substring(0, maxLength) + "...";
- }
- return formatted;
- }
- function truncateString(str, maxLength) {
- if (!str) return "";
- if (str.length <= maxLength) return str;
- return str.substring(0, maxLength) + "...";
- }
if (typeof module !== "undefined" && module.exports) {
module.exports = {
parseCopilotLog,
diff --git a/.github/workflows/dev-hawk.lock.yml b/.github/workflows/dev-hawk.lock.yml
index 225dd2bd25..7a455d0d0e 100644
--- a/.github/workflows/dev-hawk.lock.yml
+++ b/.github/workflows/dev-hawk.lock.yml
@@ -2990,6 +2990,43 @@ jobs:
runLogParser,
};
}
+ function formatDuration(ms) {
+ if (!ms || ms <= 0) return "";
+ const seconds = Math.round(ms / 1000);
+ if (seconds < 60) {
+ return `${seconds}s`;
+ }
+ const minutes = Math.floor(seconds / 60);
+ const remainingSeconds = seconds % 60;
+ if (remainingSeconds === 0) {
+ return `${minutes}m`;
+ }
+ return `${minutes}m ${remainingSeconds}s`;
+ }
+ function formatBashCommand(command) {
+ if (!command) return "";
+ let formatted = command
+ .replace(/\n/g, " ")
+ .replace(/\r/g, " ")
+ .replace(/\t/g, " ")
+ .replace(/\s+/g, " ")
+ .trim();
+ formatted = formatted.replace(/`/g, "\\`");
+ const maxLength = 300;
+ if (formatted.length > maxLength) {
+ formatted = formatted.substring(0, maxLength) + "...";
+ }
+ return formatted;
+ }
+ function truncateString(str, maxLength) {
+ if (!str) return "";
+ if (str.length <= maxLength) return str;
+ return str.substring(0, maxLength) + "...";
+ }
+ function estimateTokens(text) {
+ if (!text) return 0;
+ return Math.ceil(text.length / 4);
+ }
function main() {
runLogParser({
parseLog: parseCopilotLog,
@@ -3648,23 +3685,6 @@ jobs:
}
return markdown;
}
- function estimateTokens(text) {
- if (!text) return 0;
- return Math.ceil(text.length / 4);
- }
- function formatDuration(ms) {
- if (!ms || ms <= 0) return "";
- const seconds = Math.round(ms / 1000);
- if (seconds < 60) {
- return `${seconds}s`;
- }
- const minutes = Math.floor(seconds / 60);
- const remainingSeconds = seconds % 60;
- if (remainingSeconds === 0) {
- return `${minutes}m`;
- }
- return `${minutes}m ${remainingSeconds}s`;
- }
function formatToolUseWithDetails(toolUse, toolResult) {
const toolName = toolUse.name;
const input = toolUse.input || {};
@@ -3792,21 +3812,6 @@ jobs:
}
return paramStrs.join(", ");
}
- function formatBashCommand(command) {
- if (!command) return "";
- let formatted = command.replace(/\n/g, " ").replace(/\r/g, " ").replace(/\t/g, " ").replace(/\s+/g, " ").trim();
- formatted = formatted.replace(/`/g, "\\`");
- const maxLength = 300;
- if (formatted.length > maxLength) {
- formatted = formatted.substring(0, maxLength) + "...";
- }
- return formatted;
- }
- function truncateString(str, maxLength) {
- if (!str) return "";
- if (str.length <= maxLength) return str;
- return str.substring(0, maxLength) + "...";
- }
if (typeof module !== "undefined" && module.exports) {
module.exports = {
parseCopilotLog,
diff --git a/.github/workflows/dev.lock.yml b/.github/workflows/dev.lock.yml
index 464c1b19b6..f2a92aef53 100644
--- a/.github/workflows/dev.lock.yml
+++ b/.github/workflows/dev.lock.yml
@@ -2518,6 +2518,43 @@ jobs:
runLogParser,
};
}
+ function formatDuration(ms) {
+ if (!ms || ms <= 0) return "";
+ const seconds = Math.round(ms / 1000);
+ if (seconds < 60) {
+ return `${seconds}s`;
+ }
+ const minutes = Math.floor(seconds / 60);
+ const remainingSeconds = seconds % 60;
+ if (remainingSeconds === 0) {
+ return `${minutes}m`;
+ }
+ return `${minutes}m ${remainingSeconds}s`;
+ }
+ function formatBashCommand(command) {
+ if (!command) return "";
+ let formatted = command
+ .replace(/\n/g, " ")
+ .replace(/\r/g, " ")
+ .replace(/\t/g, " ")
+ .replace(/\s+/g, " ")
+ .trim();
+ formatted = formatted.replace(/`/g, "\\`");
+ const maxLength = 300;
+ if (formatted.length > maxLength) {
+ formatted = formatted.substring(0, maxLength) + "...";
+ }
+ return formatted;
+ }
+ function truncateString(str, maxLength) {
+ if (!str) return "";
+ if (str.length <= maxLength) return str;
+ return str.substring(0, maxLength) + "...";
+ }
+ function estimateTokens(text) {
+ if (!text) return 0;
+ return Math.ceil(text.length / 4);
+ }
function main() {
runLogParser({
parseLog: parseCopilotLog,
@@ -3176,23 +3213,6 @@ jobs:
}
return markdown;
}
- function estimateTokens(text) {
- if (!text) return 0;
- return Math.ceil(text.length / 4);
- }
- function formatDuration(ms) {
- if (!ms || ms <= 0) return "";
- const seconds = Math.round(ms / 1000);
- if (seconds < 60) {
- return `${seconds}s`;
- }
- const minutes = Math.floor(seconds / 60);
- const remainingSeconds = seconds % 60;
- if (remainingSeconds === 0) {
- return `${minutes}m`;
- }
- return `${minutes}m ${remainingSeconds}s`;
- }
function formatToolUseWithDetails(toolUse, toolResult) {
const toolName = toolUse.name;
const input = toolUse.input || {};
@@ -3320,21 +3340,6 @@ jobs:
}
return paramStrs.join(", ");
}
- function formatBashCommand(command) {
- if (!command) return "";
- let formatted = command.replace(/\n/g, " ").replace(/\r/g, " ").replace(/\t/g, " ").replace(/\s+/g, " ").trim();
- formatted = formatted.replace(/`/g, "\\`");
- const maxLength = 300;
- if (formatted.length > maxLength) {
- formatted = formatted.substring(0, maxLength) + "...";
- }
- return formatted;
- }
- function truncateString(str, maxLength) {
- if (!str) return "";
- if (str.length <= maxLength) return str;
- return str.substring(0, maxLength) + "...";
- }
if (typeof module !== "undefined" && module.exports) {
module.exports = {
parseCopilotLog,
diff --git a/.github/workflows/developer-docs-consolidator.lock.yml b/.github/workflows/developer-docs-consolidator.lock.yml
index ae25288d39..191ccc5dbd 100644
--- a/.github/workflows/developer-docs-consolidator.lock.yml
+++ b/.github/workflows/developer-docs-consolidator.lock.yml
@@ -3413,6 +3413,43 @@ jobs:
runLogParser,
};
}
+ function formatDuration(ms) {
+ if (!ms || ms <= 0) return "";
+ const seconds = Math.round(ms / 1000);
+ if (seconds < 60) {
+ return `${seconds}s`;
+ }
+ const minutes = Math.floor(seconds / 60);
+ const remainingSeconds = seconds % 60;
+ if (remainingSeconds === 0) {
+ return `${minutes}m`;
+ }
+ return `${minutes}m ${remainingSeconds}s`;
+ }
+ function formatBashCommand(command) {
+ if (!command) return "";
+ let formatted = command
+ .replace(/\n/g, " ")
+ .replace(/\r/g, " ")
+ .replace(/\t/g, " ")
+ .replace(/\s+/g, " ")
+ .trim();
+ formatted = formatted.replace(/`/g, "\\`");
+ const maxLength = 300;
+ if (formatted.length > maxLength) {
+ formatted = formatted.substring(0, maxLength) + "...";
+ }
+ return formatted;
+ }
+ function truncateString(str, maxLength) {
+ if (!str) return "";
+ if (str.length <= maxLength) return str;
+ return str.substring(0, maxLength) + "...";
+ }
+ function estimateTokens(text) {
+ if (!text) return 0;
+ return Math.ceil(text.length / 4);
+ }
function main() {
runLogParser({
parseLog: parseClaudeLog,
@@ -3658,23 +3695,6 @@ jobs:
}
return { markdown, mcpFailures };
}
- function estimateTokens(text) {
- if (!text) return 0;
- return Math.ceil(text.length / 4);
- }
- function formatDuration(ms) {
- if (!ms || ms <= 0) return "";
- const seconds = Math.round(ms / 1000);
- if (seconds < 60) {
- return `${seconds}s`;
- }
- const minutes = Math.floor(seconds / 60);
- const remainingSeconds = seconds % 60;
- if (remainingSeconds === 0) {
- return `${minutes}m`;
- }
- return `${minutes}m ${remainingSeconds}s`;
- }
function formatToolUse(toolUse, toolResult) {
const toolName = toolUse.name;
const input = toolUse.input || {};
@@ -3792,26 +3812,6 @@ jobs:
}
return paramStrs.join(", ");
}
- function formatBashCommand(command) {
- if (!command) return "";
- let formatted = command
- .replace(/\n/g, " ")
- .replace(/\r/g, " ")
- .replace(/\t/g, " ")
- .replace(/\s+/g, " ")
- .trim();
- formatted = formatted.replace(/`/g, "\\`");
- const maxLength = 300;
- if (formatted.length > maxLength) {
- formatted = formatted.substring(0, maxLength) + "...";
- }
- return formatted;
- }
- function truncateString(str, maxLength) {
- if (!str) return "";
- if (str.length <= maxLength) return str;
- return str.substring(0, maxLength) + "...";
- }
if (typeof module !== "undefined" && module.exports) {
module.exports = {
parseClaudeLog,
diff --git a/.github/workflows/dictation-prompt.lock.yml b/.github/workflows/dictation-prompt.lock.yml
index 48cb12d7f3..317f934973 100644
--- a/.github/workflows/dictation-prompt.lock.yml
+++ b/.github/workflows/dictation-prompt.lock.yml
@@ -2616,6 +2616,43 @@ jobs:
runLogParser,
};
}
+ function formatDuration(ms) {
+ if (!ms || ms <= 0) return "";
+ const seconds = Math.round(ms / 1000);
+ if (seconds < 60) {
+ return `${seconds}s`;
+ }
+ const minutes = Math.floor(seconds / 60);
+ const remainingSeconds = seconds % 60;
+ if (remainingSeconds === 0) {
+ return `${minutes}m`;
+ }
+ return `${minutes}m ${remainingSeconds}s`;
+ }
+ function formatBashCommand(command) {
+ if (!command) return "";
+ let formatted = command
+ .replace(/\n/g, " ")
+ .replace(/\r/g, " ")
+ .replace(/\t/g, " ")
+ .replace(/\s+/g, " ")
+ .trim();
+ formatted = formatted.replace(/`/g, "\\`");
+ const maxLength = 300;
+ if (formatted.length > maxLength) {
+ formatted = formatted.substring(0, maxLength) + "...";
+ }
+ return formatted;
+ }
+ function truncateString(str, maxLength) {
+ if (!str) return "";
+ if (str.length <= maxLength) return str;
+ return str.substring(0, maxLength) + "...";
+ }
+ function estimateTokens(text) {
+ if (!text) return 0;
+ return Math.ceil(text.length / 4);
+ }
function main() {
runLogParser({
parseLog: parseCopilotLog,
@@ -3274,23 +3311,6 @@ jobs:
}
return markdown;
}
- function estimateTokens(text) {
- if (!text) return 0;
- return Math.ceil(text.length / 4);
- }
- function formatDuration(ms) {
- if (!ms || ms <= 0) return "";
- const seconds = Math.round(ms / 1000);
- if (seconds < 60) {
- return `${seconds}s`;
- }
- const minutes = Math.floor(seconds / 60);
- const remainingSeconds = seconds % 60;
- if (remainingSeconds === 0) {
- return `${minutes}m`;
- }
- return `${minutes}m ${remainingSeconds}s`;
- }
function formatToolUseWithDetails(toolUse, toolResult) {
const toolName = toolUse.name;
const input = toolUse.input || {};
@@ -3418,21 +3438,6 @@ jobs:
}
return paramStrs.join(", ");
}
- function formatBashCommand(command) {
- if (!command) return "";
- let formatted = command.replace(/\n/g, " ").replace(/\r/g, " ").replace(/\t/g, " ").replace(/\s+/g, " ").trim();
- formatted = formatted.replace(/`/g, "\\`");
- const maxLength = 300;
- if (formatted.length > maxLength) {
- formatted = formatted.substring(0, maxLength) + "...";
- }
- return formatted;
- }
- function truncateString(str, maxLength) {
- if (!str) return "";
- if (str.length <= maxLength) return str;
- return str.substring(0, maxLength) + "...";
- }
if (typeof module !== "undefined" && module.exports) {
module.exports = {
parseCopilotLog,
diff --git a/.github/workflows/example-permissions-warning.lock.yml b/.github/workflows/example-permissions-warning.lock.yml
index 8226b1bf6b..6ecb94c689 100644
--- a/.github/workflows/example-permissions-warning.lock.yml
+++ b/.github/workflows/example-permissions-warning.lock.yml
@@ -717,6 +717,43 @@ jobs:
runLogParser,
};
}
+ function formatDuration(ms) {
+ if (!ms || ms <= 0) return "";
+ const seconds = Math.round(ms / 1000);
+ if (seconds < 60) {
+ return `${seconds}s`;
+ }
+ const minutes = Math.floor(seconds / 60);
+ const remainingSeconds = seconds % 60;
+ if (remainingSeconds === 0) {
+ return `${minutes}m`;
+ }
+ return `${minutes}m ${remainingSeconds}s`;
+ }
+ function formatBashCommand(command) {
+ if (!command) return "";
+ let formatted = command
+ .replace(/\n/g, " ")
+ .replace(/\r/g, " ")
+ .replace(/\t/g, " ")
+ .replace(/\s+/g, " ")
+ .trim();
+ formatted = formatted.replace(/`/g, "\\`");
+ const maxLength = 300;
+ if (formatted.length > maxLength) {
+ formatted = formatted.substring(0, maxLength) + "...";
+ }
+ return formatted;
+ }
+ function truncateString(str, maxLength) {
+ if (!str) return "";
+ if (str.length <= maxLength) return str;
+ return str.substring(0, maxLength) + "...";
+ }
+ function estimateTokens(text) {
+ if (!text) return 0;
+ return Math.ceil(text.length / 4);
+ }
function main() {
runLogParser({
parseLog: parseCopilotLog,
@@ -1375,23 +1412,6 @@ jobs:
}
return markdown;
}
- function estimateTokens(text) {
- if (!text) return 0;
- return Math.ceil(text.length / 4);
- }
- function formatDuration(ms) {
- if (!ms || ms <= 0) return "";
- const seconds = Math.round(ms / 1000);
- if (seconds < 60) {
- return `${seconds}s`;
- }
- const minutes = Math.floor(seconds / 60);
- const remainingSeconds = seconds % 60;
- if (remainingSeconds === 0) {
- return `${minutes}m`;
- }
- return `${minutes}m ${remainingSeconds}s`;
- }
function formatToolUseWithDetails(toolUse, toolResult) {
const toolName = toolUse.name;
const input = toolUse.input || {};
@@ -1519,21 +1539,6 @@ jobs:
}
return paramStrs.join(", ");
}
- function formatBashCommand(command) {
- if (!command) return "";
- let formatted = command.replace(/\n/g, " ").replace(/\r/g, " ").replace(/\t/g, " ").replace(/\s+/g, " ").trim();
- formatted = formatted.replace(/`/g, "\\`");
- const maxLength = 300;
- if (formatted.length > maxLength) {
- formatted = formatted.substring(0, maxLength) + "...";
- }
- return formatted;
- }
- function truncateString(str, maxLength) {
- if (!str) return "";
- if (str.length <= maxLength) return str;
- return str.substring(0, maxLength) + "...";
- }
if (typeof module !== "undefined" && module.exports) {
module.exports = {
parseCopilotLog,
diff --git a/.github/workflows/example-workflow-analyzer.lock.yml b/.github/workflows/example-workflow-analyzer.lock.yml
index c32854a8ae..e78fc5033d 100644
--- a/.github/workflows/example-workflow-analyzer.lock.yml
+++ b/.github/workflows/example-workflow-analyzer.lock.yml
@@ -2715,6 +2715,43 @@ jobs:
runLogParser,
};
}
+ function formatDuration(ms) {
+ if (!ms || ms <= 0) return "";
+ const seconds = Math.round(ms / 1000);
+ if (seconds < 60) {
+ return `${seconds}s`;
+ }
+ const minutes = Math.floor(seconds / 60);
+ const remainingSeconds = seconds % 60;
+ if (remainingSeconds === 0) {
+ return `${minutes}m`;
+ }
+ return `${minutes}m ${remainingSeconds}s`;
+ }
+ function formatBashCommand(command) {
+ if (!command) return "";
+ let formatted = command
+ .replace(/\n/g, " ")
+ .replace(/\r/g, " ")
+ .replace(/\t/g, " ")
+ .replace(/\s+/g, " ")
+ .trim();
+ formatted = formatted.replace(/`/g, "\\`");
+ const maxLength = 300;
+ if (formatted.length > maxLength) {
+ formatted = formatted.substring(0, maxLength) + "...";
+ }
+ return formatted;
+ }
+ function truncateString(str, maxLength) {
+ if (!str) return "";
+ if (str.length <= maxLength) return str;
+ return str.substring(0, maxLength) + "...";
+ }
+ function estimateTokens(text) {
+ if (!text) return 0;
+ return Math.ceil(text.length / 4);
+ }
function main() {
runLogParser({
parseLog: parseClaudeLog,
@@ -2960,23 +2997,6 @@ jobs:
}
return { markdown, mcpFailures };
}
- function estimateTokens(text) {
- if (!text) return 0;
- return Math.ceil(text.length / 4);
- }
- function formatDuration(ms) {
- if (!ms || ms <= 0) return "";
- const seconds = Math.round(ms / 1000);
- if (seconds < 60) {
- return `${seconds}s`;
- }
- const minutes = Math.floor(seconds / 60);
- const remainingSeconds = seconds % 60;
- if (remainingSeconds === 0) {
- return `${minutes}m`;
- }
- return `${minutes}m ${remainingSeconds}s`;
- }
function formatToolUse(toolUse, toolResult) {
const toolName = toolUse.name;
const input = toolUse.input || {};
@@ -3094,26 +3114,6 @@ jobs:
}
return paramStrs.join(", ");
}
- function formatBashCommand(command) {
- if (!command) return "";
- let formatted = command
- .replace(/\n/g, " ")
- .replace(/\r/g, " ")
- .replace(/\t/g, " ")
- .replace(/\s+/g, " ")
- .trim();
- formatted = formatted.replace(/`/g, "\\`");
- const maxLength = 300;
- if (formatted.length > maxLength) {
- formatted = formatted.substring(0, maxLength) + "...";
- }
- return formatted;
- }
- function truncateString(str, maxLength) {
- if (!str) return "";
- if (str.length <= maxLength) return str;
- return str.substring(0, maxLength) + "...";
- }
if (typeof module !== "undefined" && module.exports) {
module.exports = {
parseClaudeLog,
diff --git a/.github/workflows/firewall.lock.yml b/.github/workflows/firewall.lock.yml
index 386449a6b3..1d8eac433a 100644
--- a/.github/workflows/firewall.lock.yml
+++ b/.github/workflows/firewall.lock.yml
@@ -757,6 +757,43 @@ jobs:
runLogParser,
};
}
+ function formatDuration(ms) {
+ if (!ms || ms <= 0) return "";
+ const seconds = Math.round(ms / 1000);
+ if (seconds < 60) {
+ return `${seconds}s`;
+ }
+ const minutes = Math.floor(seconds / 60);
+ const remainingSeconds = seconds % 60;
+ if (remainingSeconds === 0) {
+ return `${minutes}m`;
+ }
+ return `${minutes}m ${remainingSeconds}s`;
+ }
+ function formatBashCommand(command) {
+ if (!command) return "";
+ let formatted = command
+ .replace(/\n/g, " ")
+ .replace(/\r/g, " ")
+ .replace(/\t/g, " ")
+ .replace(/\s+/g, " ")
+ .trim();
+ formatted = formatted.replace(/`/g, "\\`");
+ const maxLength = 300;
+ if (formatted.length > maxLength) {
+ formatted = formatted.substring(0, maxLength) + "...";
+ }
+ return formatted;
+ }
+ function truncateString(str, maxLength) {
+ if (!str) return "";
+ if (str.length <= maxLength) return str;
+ return str.substring(0, maxLength) + "...";
+ }
+ function estimateTokens(text) {
+ if (!text) return 0;
+ return Math.ceil(text.length / 4);
+ }
function main() {
runLogParser({
parseLog: parseCopilotLog,
@@ -1415,23 +1452,6 @@ jobs:
}
return markdown;
}
- function estimateTokens(text) {
- if (!text) return 0;
- return Math.ceil(text.length / 4);
- }
- function formatDuration(ms) {
- if (!ms || ms <= 0) return "";
- const seconds = Math.round(ms / 1000);
- if (seconds < 60) {
- return `${seconds}s`;
- }
- const minutes = Math.floor(seconds / 60);
- const remainingSeconds = seconds % 60;
- if (remainingSeconds === 0) {
- return `${minutes}m`;
- }
- return `${minutes}m ${remainingSeconds}s`;
- }
function formatToolUseWithDetails(toolUse, toolResult) {
const toolName = toolUse.name;
const input = toolUse.input || {};
@@ -1559,21 +1579,6 @@ jobs:
}
return paramStrs.join(", ");
}
- function formatBashCommand(command) {
- if (!command) return "";
- let formatted = command.replace(/\n/g, " ").replace(/\r/g, " ").replace(/\t/g, " ").replace(/\s+/g, " ").trim();
- formatted = formatted.replace(/`/g, "\\`");
- const maxLength = 300;
- if (formatted.length > maxLength) {
- formatted = formatted.substring(0, maxLength) + "...";
- }
- return formatted;
- }
- function truncateString(str, maxLength) {
- if (!str) return "";
- if (str.length <= maxLength) return str;
- return str.substring(0, maxLength) + "...";
- }
if (typeof module !== "undefined" && module.exports) {
module.exports = {
parseCopilotLog,
diff --git a/.github/workflows/github-mcp-tools-report.lock.yml b/.github/workflows/github-mcp-tools-report.lock.yml
index f63e2303fc..1ffb545f18 100644
--- a/.github/workflows/github-mcp-tools-report.lock.yml
+++ b/.github/workflows/github-mcp-tools-report.lock.yml
@@ -3235,6 +3235,43 @@ jobs:
runLogParser,
};
}
+ function formatDuration(ms) {
+ if (!ms || ms <= 0) return "";
+ const seconds = Math.round(ms / 1000);
+ if (seconds < 60) {
+ return `${seconds}s`;
+ }
+ const minutes = Math.floor(seconds / 60);
+ const remainingSeconds = seconds % 60;
+ if (remainingSeconds === 0) {
+ return `${minutes}m`;
+ }
+ return `${minutes}m ${remainingSeconds}s`;
+ }
+ function formatBashCommand(command) {
+ if (!command) return "";
+ let formatted = command
+ .replace(/\n/g, " ")
+ .replace(/\r/g, " ")
+ .replace(/\t/g, " ")
+ .replace(/\s+/g, " ")
+ .trim();
+ formatted = formatted.replace(/`/g, "\\`");
+ const maxLength = 300;
+ if (formatted.length > maxLength) {
+ formatted = formatted.substring(0, maxLength) + "...";
+ }
+ return formatted;
+ }
+ function truncateString(str, maxLength) {
+ if (!str) return "";
+ if (str.length <= maxLength) return str;
+ return str.substring(0, maxLength) + "...";
+ }
+ function estimateTokens(text) {
+ if (!text) return 0;
+ return Math.ceil(text.length / 4);
+ }
function main() {
runLogParser({
parseLog: parseClaudeLog,
@@ -3480,23 +3517,6 @@ jobs:
}
return { markdown, mcpFailures };
}
- function estimateTokens(text) {
- if (!text) return 0;
- return Math.ceil(text.length / 4);
- }
- function formatDuration(ms) {
- if (!ms || ms <= 0) return "";
- const seconds = Math.round(ms / 1000);
- if (seconds < 60) {
- return `${seconds}s`;
- }
- const minutes = Math.floor(seconds / 60);
- const remainingSeconds = seconds % 60;
- if (remainingSeconds === 0) {
- return `${minutes}m`;
- }
- return `${minutes}m ${remainingSeconds}s`;
- }
function formatToolUse(toolUse, toolResult) {
const toolName = toolUse.name;
const input = toolUse.input || {};
@@ -3614,26 +3634,6 @@ jobs:
}
return paramStrs.join(", ");
}
- function formatBashCommand(command) {
- if (!command) return "";
- let formatted = command
- .replace(/\n/g, " ")
- .replace(/\r/g, " ")
- .replace(/\t/g, " ")
- .replace(/\s+/g, " ")
- .trim();
- formatted = formatted.replace(/`/g, "\\`");
- const maxLength = 300;
- if (formatted.length > maxLength) {
- formatted = formatted.substring(0, maxLength) + "...";
- }
- return formatted;
- }
- function truncateString(str, maxLength) {
- if (!str) return "";
- if (str.length <= maxLength) return str;
- return str.substring(0, maxLength) + "...";
- }
if (typeof module !== "undefined" && module.exports) {
module.exports = {
parseClaudeLog,
diff --git a/.github/workflows/go-logger.lock.yml b/.github/workflows/go-logger.lock.yml
index 532aa1d039..ae2faecbfe 100644
--- a/.github/workflows/go-logger.lock.yml
+++ b/.github/workflows/go-logger.lock.yml
@@ -2981,6 +2981,43 @@ jobs:
runLogParser,
};
}
+ function formatDuration(ms) {
+ if (!ms || ms <= 0) return "";
+ const seconds = Math.round(ms / 1000);
+ if (seconds < 60) {
+ return `${seconds}s`;
+ }
+ const minutes = Math.floor(seconds / 60);
+ const remainingSeconds = seconds % 60;
+ if (remainingSeconds === 0) {
+ return `${minutes}m`;
+ }
+ return `${minutes}m ${remainingSeconds}s`;
+ }
+ function formatBashCommand(command) {
+ if (!command) return "";
+ let formatted = command
+ .replace(/\n/g, " ")
+ .replace(/\r/g, " ")
+ .replace(/\t/g, " ")
+ .replace(/\s+/g, " ")
+ .trim();
+ formatted = formatted.replace(/`/g, "\\`");
+ const maxLength = 300;
+ if (formatted.length > maxLength) {
+ formatted = formatted.substring(0, maxLength) + "...";
+ }
+ return formatted;
+ }
+ function truncateString(str, maxLength) {
+ if (!str) return "";
+ if (str.length <= maxLength) return str;
+ return str.substring(0, maxLength) + "...";
+ }
+ function estimateTokens(text) {
+ if (!text) return 0;
+ return Math.ceil(text.length / 4);
+ }
function main() {
runLogParser({
parseLog: parseClaudeLog,
@@ -3226,23 +3263,6 @@ jobs:
}
return { markdown, mcpFailures };
}
- function estimateTokens(text) {
- if (!text) return 0;
- return Math.ceil(text.length / 4);
- }
- function formatDuration(ms) {
- if (!ms || ms <= 0) return "";
- const seconds = Math.round(ms / 1000);
- if (seconds < 60) {
- return `${seconds}s`;
- }
- const minutes = Math.floor(seconds / 60);
- const remainingSeconds = seconds % 60;
- if (remainingSeconds === 0) {
- return `${minutes}m`;
- }
- return `${minutes}m ${remainingSeconds}s`;
- }
function formatToolUse(toolUse, toolResult) {
const toolName = toolUse.name;
const input = toolUse.input || {};
@@ -3360,26 +3380,6 @@ jobs:
}
return paramStrs.join(", ");
}
- function formatBashCommand(command) {
- if (!command) return "";
- let formatted = command
- .replace(/\n/g, " ")
- .replace(/\r/g, " ")
- .replace(/\t/g, " ")
- .replace(/\s+/g, " ")
- .trim();
- formatted = formatted.replace(/`/g, "\\`");
- const maxLength = 300;
- if (formatted.length > maxLength) {
- formatted = formatted.substring(0, maxLength) + "...";
- }
- return formatted;
- }
- function truncateString(str, maxLength) {
- if (!str) return "";
- if (str.length <= maxLength) return str;
- return str.substring(0, maxLength) + "...";
- }
if (typeof module !== "undefined" && module.exports) {
module.exports = {
parseClaudeLog,
diff --git a/.github/workflows/go-pattern-detector.lock.yml b/.github/workflows/go-pattern-detector.lock.yml
index fc8a3d4f63..0b53c9d6d4 100644
--- a/.github/workflows/go-pattern-detector.lock.yml
+++ b/.github/workflows/go-pattern-detector.lock.yml
@@ -2755,6 +2755,43 @@ jobs:
runLogParser,
};
}
+ function formatDuration(ms) {
+ if (!ms || ms <= 0) return "";
+ const seconds = Math.round(ms / 1000);
+ if (seconds < 60) {
+ return `${seconds}s`;
+ }
+ const minutes = Math.floor(seconds / 60);
+ const remainingSeconds = seconds % 60;
+ if (remainingSeconds === 0) {
+ return `${minutes}m`;
+ }
+ return `${minutes}m ${remainingSeconds}s`;
+ }
+ function formatBashCommand(command) {
+ if (!command) return "";
+ let formatted = command
+ .replace(/\n/g, " ")
+ .replace(/\r/g, " ")
+ .replace(/\t/g, " ")
+ .replace(/\s+/g, " ")
+ .trim();
+ formatted = formatted.replace(/`/g, "\\`");
+ const maxLength = 300;
+ if (formatted.length > maxLength) {
+ formatted = formatted.substring(0, maxLength) + "...";
+ }
+ return formatted;
+ }
+ function truncateString(str, maxLength) {
+ if (!str) return "";
+ if (str.length <= maxLength) return str;
+ return str.substring(0, maxLength) + "...";
+ }
+ function estimateTokens(text) {
+ if (!text) return 0;
+ return Math.ceil(text.length / 4);
+ }
function main() {
runLogParser({
parseLog: parseClaudeLog,
@@ -3000,23 +3037,6 @@ jobs:
}
return { markdown, mcpFailures };
}
- function estimateTokens(text) {
- if (!text) return 0;
- return Math.ceil(text.length / 4);
- }
- function formatDuration(ms) {
- if (!ms || ms <= 0) return "";
- const seconds = Math.round(ms / 1000);
- if (seconds < 60) {
- return `${seconds}s`;
- }
- const minutes = Math.floor(seconds / 60);
- const remainingSeconds = seconds % 60;
- if (remainingSeconds === 0) {
- return `${minutes}m`;
- }
- return `${minutes}m ${remainingSeconds}s`;
- }
function formatToolUse(toolUse, toolResult) {
const toolName = toolUse.name;
const input = toolUse.input || {};
@@ -3134,26 +3154,6 @@ jobs:
}
return paramStrs.join(", ");
}
- function formatBashCommand(command) {
- if (!command) return "";
- let formatted = command
- .replace(/\n/g, " ")
- .replace(/\r/g, " ")
- .replace(/\t/g, " ")
- .replace(/\s+/g, " ")
- .trim();
- formatted = formatted.replace(/`/g, "\\`");
- const maxLength = 300;
- if (formatted.length > maxLength) {
- formatted = formatted.substring(0, maxLength) + "...";
- }
- return formatted;
- }
- function truncateString(str, maxLength) {
- if (!str) return "";
- if (str.length <= maxLength) return str;
- return str.substring(0, maxLength) + "...";
- }
if (typeof module !== "undefined" && module.exports) {
module.exports = {
parseClaudeLog,
diff --git a/.github/workflows/grumpy-reviewer.lock.yml b/.github/workflows/grumpy-reviewer.lock.yml
index 5099757cb5..cfc19d1827 100644
--- a/.github/workflows/grumpy-reviewer.lock.yml
+++ b/.github/workflows/grumpy-reviewer.lock.yml
@@ -3652,6 +3652,43 @@ jobs:
runLogParser,
};
}
+ function formatDuration(ms) {
+ if (!ms || ms <= 0) return "";
+ const seconds = Math.round(ms / 1000);
+ if (seconds < 60) {
+ return `${seconds}s`;
+ }
+ const minutes = Math.floor(seconds / 60);
+ const remainingSeconds = seconds % 60;
+ if (remainingSeconds === 0) {
+ return `${minutes}m`;
+ }
+ return `${minutes}m ${remainingSeconds}s`;
+ }
+ function formatBashCommand(command) {
+ if (!command) return "";
+ let formatted = command
+ .replace(/\n/g, " ")
+ .replace(/\r/g, " ")
+ .replace(/\t/g, " ")
+ .replace(/\s+/g, " ")
+ .trim();
+ formatted = formatted.replace(/`/g, "\\`");
+ const maxLength = 300;
+ if (formatted.length > maxLength) {
+ formatted = formatted.substring(0, maxLength) + "...";
+ }
+ return formatted;
+ }
+ function truncateString(str, maxLength) {
+ if (!str) return "";
+ if (str.length <= maxLength) return str;
+ return str.substring(0, maxLength) + "...";
+ }
+ function estimateTokens(text) {
+ if (!text) return 0;
+ return Math.ceil(text.length / 4);
+ }
function main() {
runLogParser({
parseLog: parseCopilotLog,
@@ -4310,23 +4347,6 @@ jobs:
}
return markdown;
}
- function estimateTokens(text) {
- if (!text) return 0;
- return Math.ceil(text.length / 4);
- }
- function formatDuration(ms) {
- if (!ms || ms <= 0) return "";
- const seconds = Math.round(ms / 1000);
- if (seconds < 60) {
- return `${seconds}s`;
- }
- const minutes = Math.floor(seconds / 60);
- const remainingSeconds = seconds % 60;
- if (remainingSeconds === 0) {
- return `${minutes}m`;
- }
- return `${minutes}m ${remainingSeconds}s`;
- }
function formatToolUseWithDetails(toolUse, toolResult) {
const toolName = toolUse.name;
const input = toolUse.input || {};
@@ -4454,21 +4474,6 @@ jobs:
}
return paramStrs.join(", ");
}
- function formatBashCommand(command) {
- if (!command) return "";
- let formatted = command.replace(/\n/g, " ").replace(/\r/g, " ").replace(/\t/g, " ").replace(/\s+/g, " ").trim();
- formatted = formatted.replace(/`/g, "\\`");
- const maxLength = 300;
- if (formatted.length > maxLength) {
- formatted = formatted.substring(0, maxLength) + "...";
- }
- return formatted;
- }
- function truncateString(str, maxLength) {
- if (!str) return "";
- if (str.length <= maxLength) return str;
- return str.substring(0, maxLength) + "...";
- }
if (typeof module !== "undefined" && module.exports) {
module.exports = {
parseCopilotLog,
diff --git a/.github/workflows/instructions-janitor.lock.yml b/.github/workflows/instructions-janitor.lock.yml
index de87e53578..b15de59785 100644
--- a/.github/workflows/instructions-janitor.lock.yml
+++ b/.github/workflows/instructions-janitor.lock.yml
@@ -2860,6 +2860,43 @@ jobs:
runLogParser,
};
}
+ function formatDuration(ms) {
+ if (!ms || ms <= 0) return "";
+ const seconds = Math.round(ms / 1000);
+ if (seconds < 60) {
+ return `${seconds}s`;
+ }
+ const minutes = Math.floor(seconds / 60);
+ const remainingSeconds = seconds % 60;
+ if (remainingSeconds === 0) {
+ return `${minutes}m`;
+ }
+ return `${minutes}m ${remainingSeconds}s`;
+ }
+ function formatBashCommand(command) {
+ if (!command) return "";
+ let formatted = command
+ .replace(/\n/g, " ")
+ .replace(/\r/g, " ")
+ .replace(/\t/g, " ")
+ .replace(/\s+/g, " ")
+ .trim();
+ formatted = formatted.replace(/`/g, "\\`");
+ const maxLength = 300;
+ if (formatted.length > maxLength) {
+ formatted = formatted.substring(0, maxLength) + "...";
+ }
+ return formatted;
+ }
+ function truncateString(str, maxLength) {
+ if (!str) return "";
+ if (str.length <= maxLength) return str;
+ return str.substring(0, maxLength) + "...";
+ }
+ function estimateTokens(text) {
+ if (!text) return 0;
+ return Math.ceil(text.length / 4);
+ }
function main() {
runLogParser({
parseLog: parseClaudeLog,
@@ -3105,23 +3142,6 @@ jobs:
}
return { markdown, mcpFailures };
}
- function estimateTokens(text) {
- if (!text) return 0;
- return Math.ceil(text.length / 4);
- }
- function formatDuration(ms) {
- if (!ms || ms <= 0) return "";
- const seconds = Math.round(ms / 1000);
- if (seconds < 60) {
- return `${seconds}s`;
- }
- const minutes = Math.floor(seconds / 60);
- const remainingSeconds = seconds % 60;
- if (remainingSeconds === 0) {
- return `${minutes}m`;
- }
- return `${minutes}m ${remainingSeconds}s`;
- }
function formatToolUse(toolUse, toolResult) {
const toolName = toolUse.name;
const input = toolUse.input || {};
@@ -3239,26 +3259,6 @@ jobs:
}
return paramStrs.join(", ");
}
- function formatBashCommand(command) {
- if (!command) return "";
- let formatted = command
- .replace(/\n/g, " ")
- .replace(/\r/g, " ")
- .replace(/\t/g, " ")
- .replace(/\s+/g, " ")
- .trim();
- formatted = formatted.replace(/`/g, "\\`");
- const maxLength = 300;
- if (formatted.length > maxLength) {
- formatted = formatted.substring(0, maxLength) + "...";
- }
- return formatted;
- }
- function truncateString(str, maxLength) {
- if (!str) return "";
- if (str.length <= maxLength) return str;
- return str.substring(0, maxLength) + "...";
- }
if (typeof module !== "undefined" && module.exports) {
module.exports = {
parseClaudeLog,
diff --git a/.github/workflows/lockfile-stats.lock.yml b/.github/workflows/lockfile-stats.lock.yml
index d0618fd511..95fcf496a4 100644
--- a/.github/workflows/lockfile-stats.lock.yml
+++ b/.github/workflows/lockfile-stats.lock.yml
@@ -3070,6 +3070,43 @@ jobs:
runLogParser,
};
}
+ function formatDuration(ms) {
+ if (!ms || ms <= 0) return "";
+ const seconds = Math.round(ms / 1000);
+ if (seconds < 60) {
+ return `${seconds}s`;
+ }
+ const minutes = Math.floor(seconds / 60);
+ const remainingSeconds = seconds % 60;
+ if (remainingSeconds === 0) {
+ return `${minutes}m`;
+ }
+ return `${minutes}m ${remainingSeconds}s`;
+ }
+ function formatBashCommand(command) {
+ if (!command) return "";
+ let formatted = command
+ .replace(/\n/g, " ")
+ .replace(/\r/g, " ")
+ .replace(/\t/g, " ")
+ .replace(/\s+/g, " ")
+ .trim();
+ formatted = formatted.replace(/`/g, "\\`");
+ const maxLength = 300;
+ if (formatted.length > maxLength) {
+ formatted = formatted.substring(0, maxLength) + "...";
+ }
+ return formatted;
+ }
+ function truncateString(str, maxLength) {
+ if (!str) return "";
+ if (str.length <= maxLength) return str;
+ return str.substring(0, maxLength) + "...";
+ }
+ function estimateTokens(text) {
+ if (!text) return 0;
+ return Math.ceil(text.length / 4);
+ }
function main() {
runLogParser({
parseLog: parseClaudeLog,
@@ -3315,23 +3352,6 @@ jobs:
}
return { markdown, mcpFailures };
}
- function estimateTokens(text) {
- if (!text) return 0;
- return Math.ceil(text.length / 4);
- }
- function formatDuration(ms) {
- if (!ms || ms <= 0) return "";
- const seconds = Math.round(ms / 1000);
- if (seconds < 60) {
- return `${seconds}s`;
- }
- const minutes = Math.floor(seconds / 60);
- const remainingSeconds = seconds % 60;
- if (remainingSeconds === 0) {
- return `${minutes}m`;
- }
- return `${minutes}m ${remainingSeconds}s`;
- }
function formatToolUse(toolUse, toolResult) {
const toolName = toolUse.name;
const input = toolUse.input || {};
@@ -3449,26 +3469,6 @@ jobs:
}
return paramStrs.join(", ");
}
- function formatBashCommand(command) {
- if (!command) return "";
- let formatted = command
- .replace(/\n/g, " ")
- .replace(/\r/g, " ")
- .replace(/\t/g, " ")
- .replace(/\s+/g, " ")
- .trim();
- formatted = formatted.replace(/`/g, "\\`");
- const maxLength = 300;
- if (formatted.length > maxLength) {
- formatted = formatted.substring(0, maxLength) + "...";
- }
- return formatted;
- }
- function truncateString(str, maxLength) {
- if (!str) return "";
- if (str.length <= maxLength) return str;
- return str.substring(0, maxLength) + "...";
- }
if (typeof module !== "undefined" && module.exports) {
module.exports = {
parseClaudeLog,
diff --git a/.github/workflows/mcp-inspector.lock.yml b/.github/workflows/mcp-inspector.lock.yml
index 7747c2eaf8..7ef993b001 100644
--- a/.github/workflows/mcp-inspector.lock.yml
+++ b/.github/workflows/mcp-inspector.lock.yml
@@ -3194,6 +3194,43 @@ jobs:
runLogParser,
};
}
+ function formatDuration(ms) {
+ if (!ms || ms <= 0) return "";
+ const seconds = Math.round(ms / 1000);
+ if (seconds < 60) {
+ return `${seconds}s`;
+ }
+ const minutes = Math.floor(seconds / 60);
+ const remainingSeconds = seconds % 60;
+ if (remainingSeconds === 0) {
+ return `${minutes}m`;
+ }
+ return `${minutes}m ${remainingSeconds}s`;
+ }
+ function formatBashCommand(command) {
+ if (!command) return "";
+ let formatted = command
+ .replace(/\n/g, " ")
+ .replace(/\r/g, " ")
+ .replace(/\t/g, " ")
+ .replace(/\s+/g, " ")
+ .trim();
+ formatted = formatted.replace(/`/g, "\\`");
+ const maxLength = 300;
+ if (formatted.length > maxLength) {
+ formatted = formatted.substring(0, maxLength) + "...";
+ }
+ return formatted;
+ }
+ function truncateString(str, maxLength) {
+ if (!str) return "";
+ if (str.length <= maxLength) return str;
+ return str.substring(0, maxLength) + "...";
+ }
+ function estimateTokens(text) {
+ if (!text) return 0;
+ return Math.ceil(text.length / 4);
+ }
function main() {
runLogParser({
parseLog: parseCopilotLog,
@@ -3852,23 +3889,6 @@ jobs:
}
return markdown;
}
- function estimateTokens(text) {
- if (!text) return 0;
- return Math.ceil(text.length / 4);
- }
- function formatDuration(ms) {
- if (!ms || ms <= 0) return "";
- const seconds = Math.round(ms / 1000);
- if (seconds < 60) {
- return `${seconds}s`;
- }
- const minutes = Math.floor(seconds / 60);
- const remainingSeconds = seconds % 60;
- if (remainingSeconds === 0) {
- return `${minutes}m`;
- }
- return `${minutes}m ${remainingSeconds}s`;
- }
function formatToolUseWithDetails(toolUse, toolResult) {
const toolName = toolUse.name;
const input = toolUse.input || {};
@@ -3996,21 +4016,6 @@ jobs:
}
return paramStrs.join(", ");
}
- function formatBashCommand(command) {
- if (!command) return "";
- let formatted = command.replace(/\n/g, " ").replace(/\r/g, " ").replace(/\t/g, " ").replace(/\s+/g, " ").trim();
- formatted = formatted.replace(/`/g, "\\`");
- const maxLength = 300;
- if (formatted.length > maxLength) {
- formatted = formatted.substring(0, maxLength) + "...";
- }
- return formatted;
- }
- function truncateString(str, maxLength) {
- if (!str) return "";
- if (str.length <= maxLength) return str;
- return str.substring(0, maxLength) + "...";
- }
if (typeof module !== "undefined" && module.exports) {
module.exports = {
parseCopilotLog,
diff --git a/.github/workflows/mergefest.lock.yml b/.github/workflows/mergefest.lock.yml
index b2a9b3b5d7..3315687bb3 100644
--- a/.github/workflows/mergefest.lock.yml
+++ b/.github/workflows/mergefest.lock.yml
@@ -3175,6 +3175,43 @@ jobs:
runLogParser,
};
}
+ function formatDuration(ms) {
+ if (!ms || ms <= 0) return "";
+ const seconds = Math.round(ms / 1000);
+ if (seconds < 60) {
+ return `${seconds}s`;
+ }
+ const minutes = Math.floor(seconds / 60);
+ const remainingSeconds = seconds % 60;
+ if (remainingSeconds === 0) {
+ return `${minutes}m`;
+ }
+ return `${minutes}m ${remainingSeconds}s`;
+ }
+ function formatBashCommand(command) {
+ if (!command) return "";
+ let formatted = command
+ .replace(/\n/g, " ")
+ .replace(/\r/g, " ")
+ .replace(/\t/g, " ")
+ .replace(/\s+/g, " ")
+ .trim();
+ formatted = formatted.replace(/`/g, "\\`");
+ const maxLength = 300;
+ if (formatted.length > maxLength) {
+ formatted = formatted.substring(0, maxLength) + "...";
+ }
+ return formatted;
+ }
+ function truncateString(str, maxLength) {
+ if (!str) return "";
+ if (str.length <= maxLength) return str;
+ return str.substring(0, maxLength) + "...";
+ }
+ function estimateTokens(text) {
+ if (!text) return 0;
+ return Math.ceil(text.length / 4);
+ }
function main() {
runLogParser({
parseLog: parseCopilotLog,
@@ -3833,23 +3870,6 @@ jobs:
}
return markdown;
}
- function estimateTokens(text) {
- if (!text) return 0;
- return Math.ceil(text.length / 4);
- }
- function formatDuration(ms) {
- if (!ms || ms <= 0) return "";
- const seconds = Math.round(ms / 1000);
- if (seconds < 60) {
- return `${seconds}s`;
- }
- const minutes = Math.floor(seconds / 60);
- const remainingSeconds = seconds % 60;
- if (remainingSeconds === 0) {
- return `${minutes}m`;
- }
- return `${minutes}m ${remainingSeconds}s`;
- }
function formatToolUseWithDetails(toolUse, toolResult) {
const toolName = toolUse.name;
const input = toolUse.input || {};
@@ -3977,21 +3997,6 @@ jobs:
}
return paramStrs.join(", ");
}
- function formatBashCommand(command) {
- if (!command) return "";
- let formatted = command.replace(/\n/g, " ").replace(/\r/g, " ").replace(/\t/g, " ").replace(/\s+/g, " ").trim();
- formatted = formatted.replace(/`/g, "\\`");
- const maxLength = 300;
- if (formatted.length > maxLength) {
- formatted = formatted.substring(0, maxLength) + "...";
- }
- return formatted;
- }
- function truncateString(str, maxLength) {
- if (!str) return "";
- if (str.length <= maxLength) return str;
- return str.substring(0, maxLength) + "...";
- }
if (typeof module !== "undefined" && module.exports) {
module.exports = {
parseCopilotLog,
diff --git a/.github/workflows/notion-issue-summary.lock.yml b/.github/workflows/notion-issue-summary.lock.yml
index 596fa62a22..4cd5e382b7 100644
--- a/.github/workflows/notion-issue-summary.lock.yml
+++ b/.github/workflows/notion-issue-summary.lock.yml
@@ -2475,6 +2475,43 @@ jobs:
runLogParser,
};
}
+ function formatDuration(ms) {
+ if (!ms || ms <= 0) return "";
+ const seconds = Math.round(ms / 1000);
+ if (seconds < 60) {
+ return `${seconds}s`;
+ }
+ const minutes = Math.floor(seconds / 60);
+ const remainingSeconds = seconds % 60;
+ if (remainingSeconds === 0) {
+ return `${minutes}m`;
+ }
+ return `${minutes}m ${remainingSeconds}s`;
+ }
+ function formatBashCommand(command) {
+ if (!command) return "";
+ let formatted = command
+ .replace(/\n/g, " ")
+ .replace(/\r/g, " ")
+ .replace(/\t/g, " ")
+ .replace(/\s+/g, " ")
+ .trim();
+ formatted = formatted.replace(/`/g, "\\`");
+ const maxLength = 300;
+ if (formatted.length > maxLength) {
+ formatted = formatted.substring(0, maxLength) + "...";
+ }
+ return formatted;
+ }
+ function truncateString(str, maxLength) {
+ if (!str) return "";
+ if (str.length <= maxLength) return str;
+ return str.substring(0, maxLength) + "...";
+ }
+ function estimateTokens(text) {
+ if (!text) return 0;
+ return Math.ceil(text.length / 4);
+ }
function main() {
runLogParser({
parseLog: parseCopilotLog,
@@ -3133,23 +3170,6 @@ jobs:
}
return markdown;
}
- function estimateTokens(text) {
- if (!text) return 0;
- return Math.ceil(text.length / 4);
- }
- function formatDuration(ms) {
- if (!ms || ms <= 0) return "";
- const seconds = Math.round(ms / 1000);
- if (seconds < 60) {
- return `${seconds}s`;
- }
- const minutes = Math.floor(seconds / 60);
- const remainingSeconds = seconds % 60;
- if (remainingSeconds === 0) {
- return `${minutes}m`;
- }
- return `${minutes}m ${remainingSeconds}s`;
- }
function formatToolUseWithDetails(toolUse, toolResult) {
const toolName = toolUse.name;
const input = toolUse.input || {};
@@ -3277,21 +3297,6 @@ jobs:
}
return paramStrs.join(", ");
}
- function formatBashCommand(command) {
- if (!command) return "";
- let formatted = command.replace(/\n/g, " ").replace(/\r/g, " ").replace(/\t/g, " ").replace(/\s+/g, " ").trim();
- formatted = formatted.replace(/`/g, "\\`");
- const maxLength = 300;
- if (formatted.length > maxLength) {
- formatted = formatted.substring(0, maxLength) + "...";
- }
- return formatted;
- }
- function truncateString(str, maxLength) {
- if (!str) return "";
- if (str.length <= maxLength) return str;
- return str.substring(0, maxLength) + "...";
- }
if (typeof module !== "undefined" && module.exports) {
module.exports = {
parseCopilotLog,
diff --git a/.github/workflows/pdf-summary.lock.yml b/.github/workflows/pdf-summary.lock.yml
index 4418a3488d..723ef5da0d 100644
--- a/.github/workflows/pdf-summary.lock.yml
+++ b/.github/workflows/pdf-summary.lock.yml
@@ -3703,6 +3703,43 @@ jobs:
runLogParser,
};
}
+ function formatDuration(ms) {
+ if (!ms || ms <= 0) return "";
+ const seconds = Math.round(ms / 1000);
+ if (seconds < 60) {
+ return `${seconds}s`;
+ }
+ const minutes = Math.floor(seconds / 60);
+ const remainingSeconds = seconds % 60;
+ if (remainingSeconds === 0) {
+ return `${minutes}m`;
+ }
+ return `${minutes}m ${remainingSeconds}s`;
+ }
+ function formatBashCommand(command) {
+ if (!command) return "";
+ let formatted = command
+ .replace(/\n/g, " ")
+ .replace(/\r/g, " ")
+ .replace(/\t/g, " ")
+ .replace(/\s+/g, " ")
+ .trim();
+ formatted = formatted.replace(/`/g, "\\`");
+ const maxLength = 300;
+ if (formatted.length > maxLength) {
+ formatted = formatted.substring(0, maxLength) + "...";
+ }
+ return formatted;
+ }
+ function truncateString(str, maxLength) {
+ if (!str) return "";
+ if (str.length <= maxLength) return str;
+ return str.substring(0, maxLength) + "...";
+ }
+ function estimateTokens(text) {
+ if (!text) return 0;
+ return Math.ceil(text.length / 4);
+ }
function main() {
runLogParser({
parseLog: parseCopilotLog,
@@ -4361,23 +4398,6 @@ jobs:
}
return markdown;
}
- function estimateTokens(text) {
- if (!text) return 0;
- return Math.ceil(text.length / 4);
- }
- function formatDuration(ms) {
- if (!ms || ms <= 0) return "";
- const seconds = Math.round(ms / 1000);
- if (seconds < 60) {
- return `${seconds}s`;
- }
- const minutes = Math.floor(seconds / 60);
- const remainingSeconds = seconds % 60;
- if (remainingSeconds === 0) {
- return `${minutes}m`;
- }
- return `${minutes}m ${remainingSeconds}s`;
- }
function formatToolUseWithDetails(toolUse, toolResult) {
const toolName = toolUse.name;
const input = toolUse.input || {};
@@ -4505,21 +4525,6 @@ jobs:
}
return paramStrs.join(", ");
}
- function formatBashCommand(command) {
- if (!command) return "";
- let formatted = command.replace(/\n/g, " ").replace(/\r/g, " ").replace(/\t/g, " ").replace(/\s+/g, " ").trim();
- formatted = formatted.replace(/`/g, "\\`");
- const maxLength = 300;
- if (formatted.length > maxLength) {
- formatted = formatted.substring(0, maxLength) + "...";
- }
- return formatted;
- }
- function truncateString(str, maxLength) {
- if (!str) return "";
- if (str.length <= maxLength) return str;
- return str.substring(0, maxLength) + "...";
- }
if (typeof module !== "undefined" && module.exports) {
module.exports = {
parseCopilotLog,
diff --git a/.github/workflows/plan.lock.yml b/.github/workflows/plan.lock.yml
index 803a7daa10..83c2aca8e5 100644
--- a/.github/workflows/plan.lock.yml
+++ b/.github/workflows/plan.lock.yml
@@ -3178,6 +3178,43 @@ jobs:
runLogParser,
};
}
+ function formatDuration(ms) {
+ if (!ms || ms <= 0) return "";
+ const seconds = Math.round(ms / 1000);
+ if (seconds < 60) {
+ return `${seconds}s`;
+ }
+ const minutes = Math.floor(seconds / 60);
+ const remainingSeconds = seconds % 60;
+ if (remainingSeconds === 0) {
+ return `${minutes}m`;
+ }
+ return `${minutes}m ${remainingSeconds}s`;
+ }
+ function formatBashCommand(command) {
+ if (!command) return "";
+ let formatted = command
+ .replace(/\n/g, " ")
+ .replace(/\r/g, " ")
+ .replace(/\t/g, " ")
+ .replace(/\s+/g, " ")
+ .trim();
+ formatted = formatted.replace(/`/g, "\\`");
+ const maxLength = 300;
+ if (formatted.length > maxLength) {
+ formatted = formatted.substring(0, maxLength) + "...";
+ }
+ return formatted;
+ }
+ function truncateString(str, maxLength) {
+ if (!str) return "";
+ if (str.length <= maxLength) return str;
+ return str.substring(0, maxLength) + "...";
+ }
+ function estimateTokens(text) {
+ if (!text) return 0;
+ return Math.ceil(text.length / 4);
+ }
function main() {
runLogParser({
parseLog: parseCopilotLog,
@@ -3836,23 +3873,6 @@ jobs:
}
return markdown;
}
- function estimateTokens(text) {
- if (!text) return 0;
- return Math.ceil(text.length / 4);
- }
- function formatDuration(ms) {
- if (!ms || ms <= 0) return "";
- const seconds = Math.round(ms / 1000);
- if (seconds < 60) {
- return `${seconds}s`;
- }
- const minutes = Math.floor(seconds / 60);
- const remainingSeconds = seconds % 60;
- if (remainingSeconds === 0) {
- return `${minutes}m`;
- }
- return `${minutes}m ${remainingSeconds}s`;
- }
function formatToolUseWithDetails(toolUse, toolResult) {
const toolName = toolUse.name;
const input = toolUse.input || {};
@@ -3980,21 +4000,6 @@ jobs:
}
return paramStrs.join(", ");
}
- function formatBashCommand(command) {
- if (!command) return "";
- let formatted = command.replace(/\n/g, " ").replace(/\r/g, " ").replace(/\t/g, " ").replace(/\s+/g, " ").trim();
- formatted = formatted.replace(/`/g, "\\`");
- const maxLength = 300;
- if (formatted.length > maxLength) {
- formatted = formatted.substring(0, maxLength) + "...";
- }
- return formatted;
- }
- function truncateString(str, maxLength) {
- if (!str) return "";
- if (str.length <= maxLength) return str;
- return str.substring(0, maxLength) + "...";
- }
if (typeof module !== "undefined" && module.exports) {
module.exports = {
parseCopilotLog,
diff --git a/.github/workflows/poem-bot.lock.yml b/.github/workflows/poem-bot.lock.yml
index 4ec0505544..0ceff8cc26 100644
--- a/.github/workflows/poem-bot.lock.yml
+++ b/.github/workflows/poem-bot.lock.yml
@@ -3974,6 +3974,43 @@ jobs:
runLogParser,
};
}
+ function formatDuration(ms) {
+ if (!ms || ms <= 0) return "";
+ const seconds = Math.round(ms / 1000);
+ if (seconds < 60) {
+ return `${seconds}s`;
+ }
+ const minutes = Math.floor(seconds / 60);
+ const remainingSeconds = seconds % 60;
+ if (remainingSeconds === 0) {
+ return `${minutes}m`;
+ }
+ return `${minutes}m ${remainingSeconds}s`;
+ }
+ function formatBashCommand(command) {
+ if (!command) return "";
+ let formatted = command
+ .replace(/\n/g, " ")
+ .replace(/\r/g, " ")
+ .replace(/\t/g, " ")
+ .replace(/\s+/g, " ")
+ .trim();
+ formatted = formatted.replace(/`/g, "\\`");
+ const maxLength = 300;
+ if (formatted.length > maxLength) {
+ formatted = formatted.substring(0, maxLength) + "...";
+ }
+ return formatted;
+ }
+ function truncateString(str, maxLength) {
+ if (!str) return "";
+ if (str.length <= maxLength) return str;
+ return str.substring(0, maxLength) + "...";
+ }
+ function estimateTokens(text) {
+ if (!text) return 0;
+ return Math.ceil(text.length / 4);
+ }
function main() {
runLogParser({
parseLog: parseCopilotLog,
@@ -4632,23 +4669,6 @@ jobs:
}
return markdown;
}
- function estimateTokens(text) {
- if (!text) return 0;
- return Math.ceil(text.length / 4);
- }
- function formatDuration(ms) {
- if (!ms || ms <= 0) return "";
- const seconds = Math.round(ms / 1000);
- if (seconds < 60) {
- return `${seconds}s`;
- }
- const minutes = Math.floor(seconds / 60);
- const remainingSeconds = seconds % 60;
- if (remainingSeconds === 0) {
- return `${minutes}m`;
- }
- return `${minutes}m ${remainingSeconds}s`;
- }
function formatToolUseWithDetails(toolUse, toolResult) {
const toolName = toolUse.name;
const input = toolUse.input || {};
@@ -4776,21 +4796,6 @@ jobs:
}
return paramStrs.join(", ");
}
- function formatBashCommand(command) {
- if (!command) return "";
- let formatted = command.replace(/\n/g, " ").replace(/\r/g, " ").replace(/\t/g, " ").replace(/\s+/g, " ").trim();
- formatted = formatted.replace(/`/g, "\\`");
- const maxLength = 300;
- if (formatted.length > maxLength) {
- formatted = formatted.substring(0, maxLength) + "...";
- }
- return formatted;
- }
- function truncateString(str, maxLength) {
- if (!str) return "";
- if (str.length <= maxLength) return str;
- return str.substring(0, maxLength) + "...";
- }
if (typeof module !== "undefined" && module.exports) {
module.exports = {
parseCopilotLog,
diff --git a/.github/workflows/pr-nitpick-reviewer.lock.yml b/.github/workflows/pr-nitpick-reviewer.lock.yml
index 07e3016266..1fae05f216 100644
--- a/.github/workflows/pr-nitpick-reviewer.lock.yml
+++ b/.github/workflows/pr-nitpick-reviewer.lock.yml
@@ -3755,6 +3755,43 @@ jobs:
runLogParser,
};
}
+ function formatDuration(ms) {
+ if (!ms || ms <= 0) return "";
+ const seconds = Math.round(ms / 1000);
+ if (seconds < 60) {
+ return `${seconds}s`;
+ }
+ const minutes = Math.floor(seconds / 60);
+ const remainingSeconds = seconds % 60;
+ if (remainingSeconds === 0) {
+ return `${minutes}m`;
+ }
+ return `${minutes}m ${remainingSeconds}s`;
+ }
+ function formatBashCommand(command) {
+ if (!command) return "";
+ let formatted = command
+ .replace(/\n/g, " ")
+ .replace(/\r/g, " ")
+ .replace(/\t/g, " ")
+ .replace(/\s+/g, " ")
+ .trim();
+ formatted = formatted.replace(/`/g, "\\`");
+ const maxLength = 300;
+ if (formatted.length > maxLength) {
+ formatted = formatted.substring(0, maxLength) + "...";
+ }
+ return formatted;
+ }
+ function truncateString(str, maxLength) {
+ if (!str) return "";
+ if (str.length <= maxLength) return str;
+ return str.substring(0, maxLength) + "...";
+ }
+ function estimateTokens(text) {
+ if (!text) return 0;
+ return Math.ceil(text.length / 4);
+ }
function main() {
runLogParser({
parseLog: parseCopilotLog,
@@ -4413,23 +4450,6 @@ jobs:
}
return markdown;
}
- function estimateTokens(text) {
- if (!text) return 0;
- return Math.ceil(text.length / 4);
- }
- function formatDuration(ms) {
- if (!ms || ms <= 0) return "";
- const seconds = Math.round(ms / 1000);
- if (seconds < 60) {
- return `${seconds}s`;
- }
- const minutes = Math.floor(seconds / 60);
- const remainingSeconds = seconds % 60;
- if (remainingSeconds === 0) {
- return `${minutes}m`;
- }
- return `${minutes}m ${remainingSeconds}s`;
- }
function formatToolUseWithDetails(toolUse, toolResult) {
const toolName = toolUse.name;
const input = toolUse.input || {};
@@ -4557,21 +4577,6 @@ jobs:
}
return paramStrs.join(", ");
}
- function formatBashCommand(command) {
- if (!command) return "";
- let formatted = command.replace(/\n/g, " ").replace(/\r/g, " ").replace(/\t/g, " ").replace(/\s+/g, " ").trim();
- formatted = formatted.replace(/`/g, "\\`");
- const maxLength = 300;
- if (formatted.length > maxLength) {
- formatted = formatted.substring(0, maxLength) + "...";
- }
- return formatted;
- }
- function truncateString(str, maxLength) {
- if (!str) return "";
- if (str.length <= maxLength) return str;
- return str.substring(0, maxLength) + "...";
- }
if (typeof module !== "undefined" && module.exports) {
module.exports = {
parseCopilotLog,
diff --git a/.github/workflows/prompt-clustering-analysis.lock.yml b/.github/workflows/prompt-clustering-analysis.lock.yml
index bd5cac6b2a..7cbdd62f3b 100644
--- a/.github/workflows/prompt-clustering-analysis.lock.yml
+++ b/.github/workflows/prompt-clustering-analysis.lock.yml
@@ -3406,6 +3406,43 @@ jobs:
runLogParser,
};
}
+ function formatDuration(ms) {
+ if (!ms || ms <= 0) return "";
+ const seconds = Math.round(ms / 1000);
+ if (seconds < 60) {
+ return `${seconds}s`;
+ }
+ const minutes = Math.floor(seconds / 60);
+ const remainingSeconds = seconds % 60;
+ if (remainingSeconds === 0) {
+ return `${minutes}m`;
+ }
+ return `${minutes}m ${remainingSeconds}s`;
+ }
+ function formatBashCommand(command) {
+ if (!command) return "";
+ let formatted = command
+ .replace(/\n/g, " ")
+ .replace(/\r/g, " ")
+ .replace(/\t/g, " ")
+ .replace(/\s+/g, " ")
+ .trim();
+ formatted = formatted.replace(/`/g, "\\`");
+ const maxLength = 300;
+ if (formatted.length > maxLength) {
+ formatted = formatted.substring(0, maxLength) + "...";
+ }
+ return formatted;
+ }
+ function truncateString(str, maxLength) {
+ if (!str) return "";
+ if (str.length <= maxLength) return str;
+ return str.substring(0, maxLength) + "...";
+ }
+ function estimateTokens(text) {
+ if (!text) return 0;
+ return Math.ceil(text.length / 4);
+ }
function main() {
runLogParser({
parseLog: parseClaudeLog,
@@ -3651,23 +3688,6 @@ jobs:
}
return { markdown, mcpFailures };
}
- function estimateTokens(text) {
- if (!text) return 0;
- return Math.ceil(text.length / 4);
- }
- function formatDuration(ms) {
- if (!ms || ms <= 0) return "";
- const seconds = Math.round(ms / 1000);
- if (seconds < 60) {
- return `${seconds}s`;
- }
- const minutes = Math.floor(seconds / 60);
- const remainingSeconds = seconds % 60;
- if (remainingSeconds === 0) {
- return `${minutes}m`;
- }
- return `${minutes}m ${remainingSeconds}s`;
- }
function formatToolUse(toolUse, toolResult) {
const toolName = toolUse.name;
const input = toolUse.input || {};
@@ -3785,26 +3805,6 @@ jobs:
}
return paramStrs.join(", ");
}
- function formatBashCommand(command) {
- if (!command) return "";
- let formatted = command
- .replace(/\n/g, " ")
- .replace(/\r/g, " ")
- .replace(/\t/g, " ")
- .replace(/\s+/g, " ")
- .trim();
- formatted = formatted.replace(/`/g, "\\`");
- const maxLength = 300;
- if (formatted.length > maxLength) {
- formatted = formatted.substring(0, maxLength) + "...";
- }
- return formatted;
- }
- function truncateString(str, maxLength) {
- if (!str) return "";
- if (str.length <= maxLength) return str;
- return str.substring(0, maxLength) + "...";
- }
if (typeof module !== "undefined" && module.exports) {
module.exports = {
parseClaudeLog,
diff --git a/.github/workflows/python-data-charts.lock.yml b/.github/workflows/python-data-charts.lock.yml
index 573c7c65f8..5bc721776c 100644
--- a/.github/workflows/python-data-charts.lock.yml
+++ b/.github/workflows/python-data-charts.lock.yml
@@ -3552,6 +3552,43 @@ jobs:
runLogParser,
};
}
+ function formatDuration(ms) {
+ if (!ms || ms <= 0) return "";
+ const seconds = Math.round(ms / 1000);
+ if (seconds < 60) {
+ return `${seconds}s`;
+ }
+ const minutes = Math.floor(seconds / 60);
+ const remainingSeconds = seconds % 60;
+ if (remainingSeconds === 0) {
+ return `${minutes}m`;
+ }
+ return `${minutes}m ${remainingSeconds}s`;
+ }
+ function formatBashCommand(command) {
+ if (!command) return "";
+ let formatted = command
+ .replace(/\n/g, " ")
+ .replace(/\r/g, " ")
+ .replace(/\t/g, " ")
+ .replace(/\s+/g, " ")
+ .trim();
+ formatted = formatted.replace(/`/g, "\\`");
+ const maxLength = 300;
+ if (formatted.length > maxLength) {
+ formatted = formatted.substring(0, maxLength) + "...";
+ }
+ return formatted;
+ }
+ function truncateString(str, maxLength) {
+ if (!str) return "";
+ if (str.length <= maxLength) return str;
+ return str.substring(0, maxLength) + "...";
+ }
+ function estimateTokens(text) {
+ if (!text) return 0;
+ return Math.ceil(text.length / 4);
+ }
function main() {
runLogParser({
parseLog: parseCopilotLog,
@@ -4210,23 +4247,6 @@ jobs:
}
return markdown;
}
- function estimateTokens(text) {
- if (!text) return 0;
- return Math.ceil(text.length / 4);
- }
- function formatDuration(ms) {
- if (!ms || ms <= 0) return "";
- const seconds = Math.round(ms / 1000);
- if (seconds < 60) {
- return `${seconds}s`;
- }
- const minutes = Math.floor(seconds / 60);
- const remainingSeconds = seconds % 60;
- if (remainingSeconds === 0) {
- return `${minutes}m`;
- }
- return `${minutes}m ${remainingSeconds}s`;
- }
function formatToolUseWithDetails(toolUse, toolResult) {
const toolName = toolUse.name;
const input = toolUse.input || {};
@@ -4354,21 +4374,6 @@ jobs:
}
return paramStrs.join(", ");
}
- function formatBashCommand(command) {
- if (!command) return "";
- let formatted = command.replace(/\n/g, " ").replace(/\r/g, " ").replace(/\t/g, " ").replace(/\s+/g, " ").trim();
- formatted = formatted.replace(/`/g, "\\`");
- const maxLength = 300;
- if (formatted.length > maxLength) {
- formatted = formatted.substring(0, maxLength) + "...";
- }
- return formatted;
- }
- function truncateString(str, maxLength) {
- if (!str) return "";
- if (str.length <= maxLength) return str;
- return str.substring(0, maxLength) + "...";
- }
if (typeof module !== "undefined" && module.exports) {
module.exports = {
parseCopilotLog,
diff --git a/.github/workflows/q.lock.yml b/.github/workflows/q.lock.yml
index a0c32e25dd..e70af3ec5e 100644
--- a/.github/workflows/q.lock.yml
+++ b/.github/workflows/q.lock.yml
@@ -4036,6 +4036,43 @@ jobs:
runLogParser,
};
}
+ function formatDuration(ms) {
+ if (!ms || ms <= 0) return "";
+ const seconds = Math.round(ms / 1000);
+ if (seconds < 60) {
+ return `${seconds}s`;
+ }
+ const minutes = Math.floor(seconds / 60);
+ const remainingSeconds = seconds % 60;
+ if (remainingSeconds === 0) {
+ return `${minutes}m`;
+ }
+ return `${minutes}m ${remainingSeconds}s`;
+ }
+ function formatBashCommand(command) {
+ if (!command) return "";
+ let formatted = command
+ .replace(/\n/g, " ")
+ .replace(/\r/g, " ")
+ .replace(/\t/g, " ")
+ .replace(/\s+/g, " ")
+ .trim();
+ formatted = formatted.replace(/`/g, "\\`");
+ const maxLength = 300;
+ if (formatted.length > maxLength) {
+ formatted = formatted.substring(0, maxLength) + "...";
+ }
+ return formatted;
+ }
+ function truncateString(str, maxLength) {
+ if (!str) return "";
+ if (str.length <= maxLength) return str;
+ return str.substring(0, maxLength) + "...";
+ }
+ function estimateTokens(text) {
+ if (!text) return 0;
+ return Math.ceil(text.length / 4);
+ }
function main() {
runLogParser({
parseLog: parseCopilotLog,
@@ -4694,23 +4731,6 @@ jobs:
}
return markdown;
}
- function estimateTokens(text) {
- if (!text) return 0;
- return Math.ceil(text.length / 4);
- }
- function formatDuration(ms) {
- if (!ms || ms <= 0) return "";
- const seconds = Math.round(ms / 1000);
- if (seconds < 60) {
- return `${seconds}s`;
- }
- const minutes = Math.floor(seconds / 60);
- const remainingSeconds = seconds % 60;
- if (remainingSeconds === 0) {
- return `${minutes}m`;
- }
- return `${minutes}m ${remainingSeconds}s`;
- }
function formatToolUseWithDetails(toolUse, toolResult) {
const toolName = toolUse.name;
const input = toolUse.input || {};
@@ -4838,21 +4858,6 @@ jobs:
}
return paramStrs.join(", ");
}
- function formatBashCommand(command) {
- if (!command) return "";
- let formatted = command.replace(/\n/g, " ").replace(/\r/g, " ").replace(/\t/g, " ").replace(/\s+/g, " ").trim();
- formatted = formatted.replace(/`/g, "\\`");
- const maxLength = 300;
- if (formatted.length > maxLength) {
- formatted = formatted.substring(0, maxLength) + "...";
- }
- return formatted;
- }
- function truncateString(str, maxLength) {
- if (!str) return "";
- if (str.length <= maxLength) return str;
- return str.substring(0, maxLength) + "...";
- }
if (typeof module !== "undefined" && module.exports) {
module.exports = {
parseCopilotLog,
diff --git a/.github/workflows/repo-tree-map.lock.yml b/.github/workflows/repo-tree-map.lock.yml
index 173e14e33f..0d9a72d3cf 100644
--- a/.github/workflows/repo-tree-map.lock.yml
+++ b/.github/workflows/repo-tree-map.lock.yml
@@ -2651,6 +2651,43 @@ jobs:
runLogParser,
};
}
+ function formatDuration(ms) {
+ if (!ms || ms <= 0) return "";
+ const seconds = Math.round(ms / 1000);
+ if (seconds < 60) {
+ return `${seconds}s`;
+ }
+ const minutes = Math.floor(seconds / 60);
+ const remainingSeconds = seconds % 60;
+ if (remainingSeconds === 0) {
+ return `${minutes}m`;
+ }
+ return `${minutes}m ${remainingSeconds}s`;
+ }
+ function formatBashCommand(command) {
+ if (!command) return "";
+ let formatted = command
+ .replace(/\n/g, " ")
+ .replace(/\r/g, " ")
+ .replace(/\t/g, " ")
+ .replace(/\s+/g, " ")
+ .trim();
+ formatted = formatted.replace(/`/g, "\\`");
+ const maxLength = 300;
+ if (formatted.length > maxLength) {
+ formatted = formatted.substring(0, maxLength) + "...";
+ }
+ return formatted;
+ }
+ function truncateString(str, maxLength) {
+ if (!str) return "";
+ if (str.length <= maxLength) return str;
+ return str.substring(0, maxLength) + "...";
+ }
+ function estimateTokens(text) {
+ if (!text) return 0;
+ return Math.ceil(text.length / 4);
+ }
function main() {
runLogParser({
parseLog: parseCopilotLog,
@@ -3309,23 +3346,6 @@ jobs:
}
return markdown;
}
- function estimateTokens(text) {
- if (!text) return 0;
- return Math.ceil(text.length / 4);
- }
- function formatDuration(ms) {
- if (!ms || ms <= 0) return "";
- const seconds = Math.round(ms / 1000);
- if (seconds < 60) {
- return `${seconds}s`;
- }
- const minutes = Math.floor(seconds / 60);
- const remainingSeconds = seconds % 60;
- if (remainingSeconds === 0) {
- return `${minutes}m`;
- }
- return `${minutes}m ${remainingSeconds}s`;
- }
function formatToolUseWithDetails(toolUse, toolResult) {
const toolName = toolUse.name;
const input = toolUse.input || {};
@@ -3453,21 +3473,6 @@ jobs:
}
return paramStrs.join(", ");
}
- function formatBashCommand(command) {
- if (!command) return "";
- let formatted = command.replace(/\n/g, " ").replace(/\r/g, " ").replace(/\t/g, " ").replace(/\s+/g, " ").trim();
- formatted = formatted.replace(/`/g, "\\`");
- const maxLength = 300;
- if (formatted.length > maxLength) {
- formatted = formatted.substring(0, maxLength) + "...";
- }
- return formatted;
- }
- function truncateString(str, maxLength) {
- if (!str) return "";
- if (str.length <= maxLength) return str;
- return str.substring(0, maxLength) + "...";
- }
if (typeof module !== "undefined" && module.exports) {
module.exports = {
parseCopilotLog,
diff --git a/.github/workflows/repository-quality-improver.lock.yml b/.github/workflows/repository-quality-improver.lock.yml
index 9072769ceb..4d40d8de24 100644
--- a/.github/workflows/repository-quality-improver.lock.yml
+++ b/.github/workflows/repository-quality-improver.lock.yml
@@ -3177,6 +3177,43 @@ jobs:
runLogParser,
};
}
+ function formatDuration(ms) {
+ if (!ms || ms <= 0) return "";
+ const seconds = Math.round(ms / 1000);
+ if (seconds < 60) {
+ return `${seconds}s`;
+ }
+ const minutes = Math.floor(seconds / 60);
+ const remainingSeconds = seconds % 60;
+ if (remainingSeconds === 0) {
+ return `${minutes}m`;
+ }
+ return `${minutes}m ${remainingSeconds}s`;
+ }
+ function formatBashCommand(command) {
+ if (!command) return "";
+ let formatted = command
+ .replace(/\n/g, " ")
+ .replace(/\r/g, " ")
+ .replace(/\t/g, " ")
+ .replace(/\s+/g, " ")
+ .trim();
+ formatted = formatted.replace(/`/g, "\\`");
+ const maxLength = 300;
+ if (formatted.length > maxLength) {
+ formatted = formatted.substring(0, maxLength) + "...";
+ }
+ return formatted;
+ }
+ function truncateString(str, maxLength) {
+ if (!str) return "";
+ if (str.length <= maxLength) return str;
+ return str.substring(0, maxLength) + "...";
+ }
+ function estimateTokens(text) {
+ if (!text) return 0;
+ return Math.ceil(text.length / 4);
+ }
function main() {
runLogParser({
parseLog: parseCopilotLog,
@@ -3835,23 +3872,6 @@ jobs:
}
return markdown;
}
- function estimateTokens(text) {
- if (!text) return 0;
- return Math.ceil(text.length / 4);
- }
- function formatDuration(ms) {
- if (!ms || ms <= 0) return "";
- const seconds = Math.round(ms / 1000);
- if (seconds < 60) {
- return `${seconds}s`;
- }
- const minutes = Math.floor(seconds / 60);
- const remainingSeconds = seconds % 60;
- if (remainingSeconds === 0) {
- return `${minutes}m`;
- }
- return `${minutes}m ${remainingSeconds}s`;
- }
function formatToolUseWithDetails(toolUse, toolResult) {
const toolName = toolUse.name;
const input = toolUse.input || {};
@@ -3979,21 +3999,6 @@ jobs:
}
return paramStrs.join(", ");
}
- function formatBashCommand(command) {
- if (!command) return "";
- let formatted = command.replace(/\n/g, " ").replace(/\r/g, " ").replace(/\t/g, " ").replace(/\s+/g, " ").trim();
- formatted = formatted.replace(/`/g, "\\`");
- const maxLength = 300;
- if (formatted.length > maxLength) {
- formatted = formatted.substring(0, maxLength) + "...";
- }
- return formatted;
- }
- function truncateString(str, maxLength) {
- if (!str) return "";
- if (str.length <= maxLength) return str;
- return str.substring(0, maxLength) + "...";
- }
if (typeof module !== "undefined" && module.exports) {
module.exports = {
parseCopilotLog,
diff --git a/.github/workflows/research.lock.yml b/.github/workflows/research.lock.yml
index 5564dab169..33aa774bab 100644
--- a/.github/workflows/research.lock.yml
+++ b/.github/workflows/research.lock.yml
@@ -2585,6 +2585,43 @@ jobs:
runLogParser,
};
}
+ function formatDuration(ms) {
+ if (!ms || ms <= 0) return "";
+ const seconds = Math.round(ms / 1000);
+ if (seconds < 60) {
+ return `${seconds}s`;
+ }
+ const minutes = Math.floor(seconds / 60);
+ const remainingSeconds = seconds % 60;
+ if (remainingSeconds === 0) {
+ return `${minutes}m`;
+ }
+ return `${minutes}m ${remainingSeconds}s`;
+ }
+ function formatBashCommand(command) {
+ if (!command) return "";
+ let formatted = command
+ .replace(/\n/g, " ")
+ .replace(/\r/g, " ")
+ .replace(/\t/g, " ")
+ .replace(/\s+/g, " ")
+ .trim();
+ formatted = formatted.replace(/`/g, "\\`");
+ const maxLength = 300;
+ if (formatted.length > maxLength) {
+ formatted = formatted.substring(0, maxLength) + "...";
+ }
+ return formatted;
+ }
+ function truncateString(str, maxLength) {
+ if (!str) return "";
+ if (str.length <= maxLength) return str;
+ return str.substring(0, maxLength) + "...";
+ }
+ function estimateTokens(text) {
+ if (!text) return 0;
+ return Math.ceil(text.length / 4);
+ }
function main() {
runLogParser({
parseLog: parseCopilotLog,
@@ -3243,23 +3280,6 @@ jobs:
}
return markdown;
}
- function estimateTokens(text) {
- if (!text) return 0;
- return Math.ceil(text.length / 4);
- }
- function formatDuration(ms) {
- if (!ms || ms <= 0) return "";
- const seconds = Math.round(ms / 1000);
- if (seconds < 60) {
- return `${seconds}s`;
- }
- const minutes = Math.floor(seconds / 60);
- const remainingSeconds = seconds % 60;
- if (remainingSeconds === 0) {
- return `${minutes}m`;
- }
- return `${minutes}m ${remainingSeconds}s`;
- }
function formatToolUseWithDetails(toolUse, toolResult) {
const toolName = toolUse.name;
const input = toolUse.input || {};
@@ -3387,21 +3407,6 @@ jobs:
}
return paramStrs.join(", ");
}
- function formatBashCommand(command) {
- if (!command) return "";
- let formatted = command.replace(/\n/g, " ").replace(/\r/g, " ").replace(/\t/g, " ").replace(/\s+/g, " ").trim();
- formatted = formatted.replace(/`/g, "\\`");
- const maxLength = 300;
- if (formatted.length > maxLength) {
- formatted = formatted.substring(0, maxLength) + "...";
- }
- return formatted;
- }
- function truncateString(str, maxLength) {
- if (!str) return "";
- if (str.length <= maxLength) return str;
- return str.substring(0, maxLength) + "...";
- }
if (typeof module !== "undefined" && module.exports) {
module.exports = {
parseCopilotLog,
diff --git a/.github/workflows/safe-output-health.lock.yml b/.github/workflows/safe-output-health.lock.yml
index 7aed8fc556..cdd4daa734 100644
--- a/.github/workflows/safe-output-health.lock.yml
+++ b/.github/workflows/safe-output-health.lock.yml
@@ -3203,6 +3203,43 @@ jobs:
runLogParser,
};
}
+ function formatDuration(ms) {
+ if (!ms || ms <= 0) return "";
+ const seconds = Math.round(ms / 1000);
+ if (seconds < 60) {
+ return `${seconds}s`;
+ }
+ const minutes = Math.floor(seconds / 60);
+ const remainingSeconds = seconds % 60;
+ if (remainingSeconds === 0) {
+ return `${minutes}m`;
+ }
+ return `${minutes}m ${remainingSeconds}s`;
+ }
+ function formatBashCommand(command) {
+ if (!command) return "";
+ let formatted = command
+ .replace(/\n/g, " ")
+ .replace(/\r/g, " ")
+ .replace(/\t/g, " ")
+ .replace(/\s+/g, " ")
+ .trim();
+ formatted = formatted.replace(/`/g, "\\`");
+ const maxLength = 300;
+ if (formatted.length > maxLength) {
+ formatted = formatted.substring(0, maxLength) + "...";
+ }
+ return formatted;
+ }
+ function truncateString(str, maxLength) {
+ if (!str) return "";
+ if (str.length <= maxLength) return str;
+ return str.substring(0, maxLength) + "...";
+ }
+ function estimateTokens(text) {
+ if (!text) return 0;
+ return Math.ceil(text.length / 4);
+ }
function main() {
runLogParser({
parseLog: parseClaudeLog,
@@ -3448,23 +3485,6 @@ jobs:
}
return { markdown, mcpFailures };
}
- function estimateTokens(text) {
- if (!text) return 0;
- return Math.ceil(text.length / 4);
- }
- function formatDuration(ms) {
- if (!ms || ms <= 0) return "";
- const seconds = Math.round(ms / 1000);
- if (seconds < 60) {
- return `${seconds}s`;
- }
- const minutes = Math.floor(seconds / 60);
- const remainingSeconds = seconds % 60;
- if (remainingSeconds === 0) {
- return `${minutes}m`;
- }
- return `${minutes}m ${remainingSeconds}s`;
- }
function formatToolUse(toolUse, toolResult) {
const toolName = toolUse.name;
const input = toolUse.input || {};
@@ -3582,26 +3602,6 @@ jobs:
}
return paramStrs.join(", ");
}
- function formatBashCommand(command) {
- if (!command) return "";
- let formatted = command
- .replace(/\n/g, " ")
- .replace(/\r/g, " ")
- .replace(/\t/g, " ")
- .replace(/\s+/g, " ")
- .trim();
- formatted = formatted.replace(/`/g, "\\`");
- const maxLength = 300;
- if (formatted.length > maxLength) {
- formatted = formatted.substring(0, maxLength) + "...";
- }
- return formatted;
- }
- function truncateString(str, maxLength) {
- if (!str) return "";
- if (str.length <= maxLength) return str;
- return str.substring(0, maxLength) + "...";
- }
if (typeof module !== "undefined" && module.exports) {
module.exports = {
parseClaudeLog,
diff --git a/.github/workflows/schema-consistency-checker.lock.yml b/.github/workflows/schema-consistency-checker.lock.yml
index c9a4e7fb46..6142a2c580 100644
--- a/.github/workflows/schema-consistency-checker.lock.yml
+++ b/.github/workflows/schema-consistency-checker.lock.yml
@@ -3076,6 +3076,43 @@ jobs:
runLogParser,
};
}
+ function formatDuration(ms) {
+ if (!ms || ms <= 0) return "";
+ const seconds = Math.round(ms / 1000);
+ if (seconds < 60) {
+ return `${seconds}s`;
+ }
+ const minutes = Math.floor(seconds / 60);
+ const remainingSeconds = seconds % 60;
+ if (remainingSeconds === 0) {
+ return `${minutes}m`;
+ }
+ return `${minutes}m ${remainingSeconds}s`;
+ }
+ function formatBashCommand(command) {
+ if (!command) return "";
+ let formatted = command
+ .replace(/\n/g, " ")
+ .replace(/\r/g, " ")
+ .replace(/\t/g, " ")
+ .replace(/\s+/g, " ")
+ .trim();
+ formatted = formatted.replace(/`/g, "\\`");
+ const maxLength = 300;
+ if (formatted.length > maxLength) {
+ formatted = formatted.substring(0, maxLength) + "...";
+ }
+ return formatted;
+ }
+ function truncateString(str, maxLength) {
+ if (!str) return "";
+ if (str.length <= maxLength) return str;
+ return str.substring(0, maxLength) + "...";
+ }
+ function estimateTokens(text) {
+ if (!text) return 0;
+ return Math.ceil(text.length / 4);
+ }
function main() {
runLogParser({
parseLog: parseClaudeLog,
@@ -3321,23 +3358,6 @@ jobs:
}
return { markdown, mcpFailures };
}
- function estimateTokens(text) {
- if (!text) return 0;
- return Math.ceil(text.length / 4);
- }
- function formatDuration(ms) {
- if (!ms || ms <= 0) return "";
- const seconds = Math.round(ms / 1000);
- if (seconds < 60) {
- return `${seconds}s`;
- }
- const minutes = Math.floor(seconds / 60);
- const remainingSeconds = seconds % 60;
- if (remainingSeconds === 0) {
- return `${minutes}m`;
- }
- return `${minutes}m ${remainingSeconds}s`;
- }
function formatToolUse(toolUse, toolResult) {
const toolName = toolUse.name;
const input = toolUse.input || {};
@@ -3455,26 +3475,6 @@ jobs:
}
return paramStrs.join(", ");
}
- function formatBashCommand(command) {
- if (!command) return "";
- let formatted = command
- .replace(/\n/g, " ")
- .replace(/\r/g, " ")
- .replace(/\t/g, " ")
- .replace(/\s+/g, " ")
- .trim();
- formatted = formatted.replace(/`/g, "\\`");
- const maxLength = 300;
- if (formatted.length > maxLength) {
- formatted = formatted.substring(0, maxLength) + "...";
- }
- return formatted;
- }
- function truncateString(str, maxLength) {
- if (!str) return "";
- if (str.length <= maxLength) return str;
- return str.substring(0, maxLength) + "...";
- }
if (typeof module !== "undefined" && module.exports) {
module.exports = {
parseClaudeLog,
diff --git a/.github/workflows/scout.lock.yml b/.github/workflows/scout.lock.yml
index ace9bf2827..d0feae0619 100644
--- a/.github/workflows/scout.lock.yml
+++ b/.github/workflows/scout.lock.yml
@@ -4151,6 +4151,43 @@ jobs:
runLogParser,
};
}
+ function formatDuration(ms) {
+ if (!ms || ms <= 0) return "";
+ const seconds = Math.round(ms / 1000);
+ if (seconds < 60) {
+ return `${seconds}s`;
+ }
+ const minutes = Math.floor(seconds / 60);
+ const remainingSeconds = seconds % 60;
+ if (remainingSeconds === 0) {
+ return `${minutes}m`;
+ }
+ return `${minutes}m ${remainingSeconds}s`;
+ }
+ function formatBashCommand(command) {
+ if (!command) return "";
+ let formatted = command
+ .replace(/\n/g, " ")
+ .replace(/\r/g, " ")
+ .replace(/\t/g, " ")
+ .replace(/\s+/g, " ")
+ .trim();
+ formatted = formatted.replace(/`/g, "\\`");
+ const maxLength = 300;
+ if (formatted.length > maxLength) {
+ formatted = formatted.substring(0, maxLength) + "...";
+ }
+ return formatted;
+ }
+ function truncateString(str, maxLength) {
+ if (!str) return "";
+ if (str.length <= maxLength) return str;
+ return str.substring(0, maxLength) + "...";
+ }
+ function estimateTokens(text) {
+ if (!text) return 0;
+ return Math.ceil(text.length / 4);
+ }
function main() {
runLogParser({
parseLog: parseClaudeLog,
@@ -4396,23 +4433,6 @@ jobs:
}
return { markdown, mcpFailures };
}
- function estimateTokens(text) {
- if (!text) return 0;
- return Math.ceil(text.length / 4);
- }
- function formatDuration(ms) {
- if (!ms || ms <= 0) return "";
- const seconds = Math.round(ms / 1000);
- if (seconds < 60) {
- return `${seconds}s`;
- }
- const minutes = Math.floor(seconds / 60);
- const remainingSeconds = seconds % 60;
- if (remainingSeconds === 0) {
- return `${minutes}m`;
- }
- return `${minutes}m ${remainingSeconds}s`;
- }
function formatToolUse(toolUse, toolResult) {
const toolName = toolUse.name;
const input = toolUse.input || {};
@@ -4530,26 +4550,6 @@ jobs:
}
return paramStrs.join(", ");
}
- function formatBashCommand(command) {
- if (!command) return "";
- let formatted = command
- .replace(/\n/g, " ")
- .replace(/\r/g, " ")
- .replace(/\t/g, " ")
- .replace(/\s+/g, " ")
- .trim();
- formatted = formatted.replace(/`/g, "\\`");
- const maxLength = 300;
- if (formatted.length > maxLength) {
- formatted = formatted.substring(0, maxLength) + "...";
- }
- return formatted;
- }
- function truncateString(str, maxLength) {
- if (!str) return "";
- if (str.length <= maxLength) return str;
- return str.substring(0, maxLength) + "...";
- }
if (typeof module !== "undefined" && module.exports) {
module.exports = {
parseClaudeLog,
diff --git a/.github/workflows/security-fix-pr.lock.yml b/.github/workflows/security-fix-pr.lock.yml
index ecfe0d70c9..4164f9b73b 100644
--- a/.github/workflows/security-fix-pr.lock.yml
+++ b/.github/workflows/security-fix-pr.lock.yml
@@ -2808,6 +2808,43 @@ jobs:
runLogParser,
};
}
+ function formatDuration(ms) {
+ if (!ms || ms <= 0) return "";
+ const seconds = Math.round(ms / 1000);
+ if (seconds < 60) {
+ return `${seconds}s`;
+ }
+ const minutes = Math.floor(seconds / 60);
+ const remainingSeconds = seconds % 60;
+ if (remainingSeconds === 0) {
+ return `${minutes}m`;
+ }
+ return `${minutes}m ${remainingSeconds}s`;
+ }
+ function formatBashCommand(command) {
+ if (!command) return "";
+ let formatted = command
+ .replace(/\n/g, " ")
+ .replace(/\r/g, " ")
+ .replace(/\t/g, " ")
+ .replace(/\s+/g, " ")
+ .trim();
+ formatted = formatted.replace(/`/g, "\\`");
+ const maxLength = 300;
+ if (formatted.length > maxLength) {
+ formatted = formatted.substring(0, maxLength) + "...";
+ }
+ return formatted;
+ }
+ function truncateString(str, maxLength) {
+ if (!str) return "";
+ if (str.length <= maxLength) return str;
+ return str.substring(0, maxLength) + "...";
+ }
+ function estimateTokens(text) {
+ if (!text) return 0;
+ return Math.ceil(text.length / 4);
+ }
function main() {
runLogParser({
parseLog: parseClaudeLog,
@@ -3053,23 +3090,6 @@ jobs:
}
return { markdown, mcpFailures };
}
- function estimateTokens(text) {
- if (!text) return 0;
- return Math.ceil(text.length / 4);
- }
- function formatDuration(ms) {
- if (!ms || ms <= 0) return "";
- const seconds = Math.round(ms / 1000);
- if (seconds < 60) {
- return `${seconds}s`;
- }
- const minutes = Math.floor(seconds / 60);
- const remainingSeconds = seconds % 60;
- if (remainingSeconds === 0) {
- return `${minutes}m`;
- }
- return `${minutes}m ${remainingSeconds}s`;
- }
function formatToolUse(toolUse, toolResult) {
const toolName = toolUse.name;
const input = toolUse.input || {};
@@ -3187,26 +3207,6 @@ jobs:
}
return paramStrs.join(", ");
}
- function formatBashCommand(command) {
- if (!command) return "";
- let formatted = command
- .replace(/\n/g, " ")
- .replace(/\r/g, " ")
- .replace(/\t/g, " ")
- .replace(/\s+/g, " ")
- .trim();
- formatted = formatted.replace(/`/g, "\\`");
- const maxLength = 300;
- if (formatted.length > maxLength) {
- formatted = formatted.substring(0, maxLength) + "...";
- }
- return formatted;
- }
- function truncateString(str, maxLength) {
- if (!str) return "";
- if (str.length <= maxLength) return str;
- return str.substring(0, maxLength) + "...";
- }
if (typeof module !== "undefined" && module.exports) {
module.exports = {
parseClaudeLog,
diff --git a/.github/workflows/semantic-function-refactor.lock.yml b/.github/workflows/semantic-function-refactor.lock.yml
index e06449f135..abad47ff30 100644
--- a/.github/workflows/semantic-function-refactor.lock.yml
+++ b/.github/workflows/semantic-function-refactor.lock.yml
@@ -3164,6 +3164,43 @@ jobs:
runLogParser,
};
}
+ function formatDuration(ms) {
+ if (!ms || ms <= 0) return "";
+ const seconds = Math.round(ms / 1000);
+ if (seconds < 60) {
+ return `${seconds}s`;
+ }
+ const minutes = Math.floor(seconds / 60);
+ const remainingSeconds = seconds % 60;
+ if (remainingSeconds === 0) {
+ return `${minutes}m`;
+ }
+ return `${minutes}m ${remainingSeconds}s`;
+ }
+ function formatBashCommand(command) {
+ if (!command) return "";
+ let formatted = command
+ .replace(/\n/g, " ")
+ .replace(/\r/g, " ")
+ .replace(/\t/g, " ")
+ .replace(/\s+/g, " ")
+ .trim();
+ formatted = formatted.replace(/`/g, "\\`");
+ const maxLength = 300;
+ if (formatted.length > maxLength) {
+ formatted = formatted.substring(0, maxLength) + "...";
+ }
+ return formatted;
+ }
+ function truncateString(str, maxLength) {
+ if (!str) return "";
+ if (str.length <= maxLength) return str;
+ return str.substring(0, maxLength) + "...";
+ }
+ function estimateTokens(text) {
+ if (!text) return 0;
+ return Math.ceil(text.length / 4);
+ }
function main() {
runLogParser({
parseLog: parseClaudeLog,
@@ -3409,23 +3446,6 @@ jobs:
}
return { markdown, mcpFailures };
}
- function estimateTokens(text) {
- if (!text) return 0;
- return Math.ceil(text.length / 4);
- }
- function formatDuration(ms) {
- if (!ms || ms <= 0) return "";
- const seconds = Math.round(ms / 1000);
- if (seconds < 60) {
- return `${seconds}s`;
- }
- const minutes = Math.floor(seconds / 60);
- const remainingSeconds = seconds % 60;
- if (remainingSeconds === 0) {
- return `${minutes}m`;
- }
- return `${minutes}m ${remainingSeconds}s`;
- }
function formatToolUse(toolUse, toolResult) {
const toolName = toolUse.name;
const input = toolUse.input || {};
@@ -3543,26 +3563,6 @@ jobs:
}
return paramStrs.join(", ");
}
- function formatBashCommand(command) {
- if (!command) return "";
- let formatted = command
- .replace(/\n/g, " ")
- .replace(/\r/g, " ")
- .replace(/\t/g, " ")
- .replace(/\s+/g, " ")
- .trim();
- formatted = formatted.replace(/`/g, "\\`");
- const maxLength = 300;
- if (formatted.length > maxLength) {
- formatted = formatted.substring(0, maxLength) + "...";
- }
- return formatted;
- }
- function truncateString(str, maxLength) {
- if (!str) return "";
- if (str.length <= maxLength) return str;
- return str.substring(0, maxLength) + "...";
- }
if (typeof module !== "undefined" && module.exports) {
module.exports = {
parseClaudeLog,
diff --git a/.github/workflows/smoke-claude.lock.yml b/.github/workflows/smoke-claude.lock.yml
index 5865e1898e..8395f83463 100644
--- a/.github/workflows/smoke-claude.lock.yml
+++ b/.github/workflows/smoke-claude.lock.yml
@@ -2723,6 +2723,43 @@ jobs:
runLogParser,
};
}
+ function formatDuration(ms) {
+ if (!ms || ms <= 0) return "";
+ const seconds = Math.round(ms / 1000);
+ if (seconds < 60) {
+ return `${seconds}s`;
+ }
+ const minutes = Math.floor(seconds / 60);
+ const remainingSeconds = seconds % 60;
+ if (remainingSeconds === 0) {
+ return `${minutes}m`;
+ }
+ return `${minutes}m ${remainingSeconds}s`;
+ }
+ function formatBashCommand(command) {
+ if (!command) return "";
+ let formatted = command
+ .replace(/\n/g, " ")
+ .replace(/\r/g, " ")
+ .replace(/\t/g, " ")
+ .replace(/\s+/g, " ")
+ .trim();
+ formatted = formatted.replace(/`/g, "\\`");
+ const maxLength = 300;
+ if (formatted.length > maxLength) {
+ formatted = formatted.substring(0, maxLength) + "...";
+ }
+ return formatted;
+ }
+ function truncateString(str, maxLength) {
+ if (!str) return "";
+ if (str.length <= maxLength) return str;
+ return str.substring(0, maxLength) + "...";
+ }
+ function estimateTokens(text) {
+ if (!text) return 0;
+ return Math.ceil(text.length / 4);
+ }
function main() {
runLogParser({
parseLog: parseClaudeLog,
@@ -2968,23 +3005,6 @@ jobs:
}
return { markdown, mcpFailures };
}
- function estimateTokens(text) {
- if (!text) return 0;
- return Math.ceil(text.length / 4);
- }
- function formatDuration(ms) {
- if (!ms || ms <= 0) return "";
- const seconds = Math.round(ms / 1000);
- if (seconds < 60) {
- return `${seconds}s`;
- }
- const minutes = Math.floor(seconds / 60);
- const remainingSeconds = seconds % 60;
- if (remainingSeconds === 0) {
- return `${minutes}m`;
- }
- return `${minutes}m ${remainingSeconds}s`;
- }
function formatToolUse(toolUse, toolResult) {
const toolName = toolUse.name;
const input = toolUse.input || {};
@@ -3102,26 +3122,6 @@ jobs:
}
return paramStrs.join(", ");
}
- function formatBashCommand(command) {
- if (!command) return "";
- let formatted = command
- .replace(/\n/g, " ")
- .replace(/\r/g, " ")
- .replace(/\t/g, " ")
- .replace(/\s+/g, " ")
- .trim();
- formatted = formatted.replace(/`/g, "\\`");
- const maxLength = 300;
- if (formatted.length > maxLength) {
- formatted = formatted.substring(0, maxLength) + "...";
- }
- return formatted;
- }
- function truncateString(str, maxLength) {
- if (!str) return "";
- if (str.length <= maxLength) return str;
- return str.substring(0, maxLength) + "...";
- }
if (typeof module !== "undefined" && module.exports) {
module.exports = {
parseClaudeLog,
diff --git a/.github/workflows/smoke-copilot.lock.yml b/.github/workflows/smoke-copilot.lock.yml
index 0b3143b31d..912cbdc7b6 100644
--- a/.github/workflows/smoke-copilot.lock.yml
+++ b/.github/workflows/smoke-copilot.lock.yml
@@ -2502,6 +2502,43 @@ jobs:
runLogParser,
};
}
+ function formatDuration(ms) {
+ if (!ms || ms <= 0) return "";
+ const seconds = Math.round(ms / 1000);
+ if (seconds < 60) {
+ return `${seconds}s`;
+ }
+ const minutes = Math.floor(seconds / 60);
+ const remainingSeconds = seconds % 60;
+ if (remainingSeconds === 0) {
+ return `${minutes}m`;
+ }
+ return `${minutes}m ${remainingSeconds}s`;
+ }
+ function formatBashCommand(command) {
+ if (!command) return "";
+ let formatted = command
+ .replace(/\n/g, " ")
+ .replace(/\r/g, " ")
+ .replace(/\t/g, " ")
+ .replace(/\s+/g, " ")
+ .trim();
+ formatted = formatted.replace(/`/g, "\\`");
+ const maxLength = 300;
+ if (formatted.length > maxLength) {
+ formatted = formatted.substring(0, maxLength) + "...";
+ }
+ return formatted;
+ }
+ function truncateString(str, maxLength) {
+ if (!str) return "";
+ if (str.length <= maxLength) return str;
+ return str.substring(0, maxLength) + "...";
+ }
+ function estimateTokens(text) {
+ if (!text) return 0;
+ return Math.ceil(text.length / 4);
+ }
function main() {
runLogParser({
parseLog: parseCopilotLog,
@@ -3160,23 +3197,6 @@ jobs:
}
return markdown;
}
- function estimateTokens(text) {
- if (!text) return 0;
- return Math.ceil(text.length / 4);
- }
- function formatDuration(ms) {
- if (!ms || ms <= 0) return "";
- const seconds = Math.round(ms / 1000);
- if (seconds < 60) {
- return `${seconds}s`;
- }
- const minutes = Math.floor(seconds / 60);
- const remainingSeconds = seconds % 60;
- if (remainingSeconds === 0) {
- return `${minutes}m`;
- }
- return `${minutes}m ${remainingSeconds}s`;
- }
function formatToolUseWithDetails(toolUse, toolResult) {
const toolName = toolUse.name;
const input = toolUse.input || {};
@@ -3304,21 +3324,6 @@ jobs:
}
return paramStrs.join(", ");
}
- function formatBashCommand(command) {
- if (!command) return "";
- let formatted = command.replace(/\n/g, " ").replace(/\r/g, " ").replace(/\t/g, " ").replace(/\s+/g, " ").trim();
- formatted = formatted.replace(/`/g, "\\`");
- const maxLength = 300;
- if (formatted.length > maxLength) {
- formatted = formatted.substring(0, maxLength) + "...";
- }
- return formatted;
- }
- function truncateString(str, maxLength) {
- if (!str) return "";
- if (str.length <= maxLength) return str;
- return str.substring(0, maxLength) + "...";
- }
if (typeof module !== "undefined" && module.exports) {
module.exports = {
parseCopilotLog,
diff --git a/.github/workflows/smoke-detector.lock.yml b/.github/workflows/smoke-detector.lock.yml
index dade6f0d16..8a857c4a08 100644
--- a/.github/workflows/smoke-detector.lock.yml
+++ b/.github/workflows/smoke-detector.lock.yml
@@ -3794,6 +3794,43 @@ jobs:
runLogParser,
};
}
+ function formatDuration(ms) {
+ if (!ms || ms <= 0) return "";
+ const seconds = Math.round(ms / 1000);
+ if (seconds < 60) {
+ return `${seconds}s`;
+ }
+ const minutes = Math.floor(seconds / 60);
+ const remainingSeconds = seconds % 60;
+ if (remainingSeconds === 0) {
+ return `${minutes}m`;
+ }
+ return `${minutes}m ${remainingSeconds}s`;
+ }
+ function formatBashCommand(command) {
+ if (!command) return "";
+ let formatted = command
+ .replace(/\n/g, " ")
+ .replace(/\r/g, " ")
+ .replace(/\t/g, " ")
+ .replace(/\s+/g, " ")
+ .trim();
+ formatted = formatted.replace(/`/g, "\\`");
+ const maxLength = 300;
+ if (formatted.length > maxLength) {
+ formatted = formatted.substring(0, maxLength) + "...";
+ }
+ return formatted;
+ }
+ function truncateString(str, maxLength) {
+ if (!str) return "";
+ if (str.length <= maxLength) return str;
+ return str.substring(0, maxLength) + "...";
+ }
+ function estimateTokens(text) {
+ if (!text) return 0;
+ return Math.ceil(text.length / 4);
+ }
function main() {
runLogParser({
parseLog: parseClaudeLog,
@@ -4039,23 +4076,6 @@ jobs:
}
return { markdown, mcpFailures };
}
- function estimateTokens(text) {
- if (!text) return 0;
- return Math.ceil(text.length / 4);
- }
- function formatDuration(ms) {
- if (!ms || ms <= 0) return "";
- const seconds = Math.round(ms / 1000);
- if (seconds < 60) {
- return `${seconds}s`;
- }
- const minutes = Math.floor(seconds / 60);
- const remainingSeconds = seconds % 60;
- if (remainingSeconds === 0) {
- return `${minutes}m`;
- }
- return `${minutes}m ${remainingSeconds}s`;
- }
function formatToolUse(toolUse, toolResult) {
const toolName = toolUse.name;
const input = toolUse.input || {};
@@ -4173,26 +4193,6 @@ jobs:
}
return paramStrs.join(", ");
}
- function formatBashCommand(command) {
- if (!command) return "";
- let formatted = command
- .replace(/\n/g, " ")
- .replace(/\r/g, " ")
- .replace(/\t/g, " ")
- .replace(/\s+/g, " ")
- .trim();
- formatted = formatted.replace(/`/g, "\\`");
- const maxLength = 300;
- if (formatted.length > maxLength) {
- formatted = formatted.substring(0, maxLength) + "...";
- }
- return formatted;
- }
- function truncateString(str, maxLength) {
- if (!str) return "";
- if (str.length <= maxLength) return str;
- return str.substring(0, maxLength) + "...";
- }
if (typeof module !== "undefined" && module.exports) {
module.exports = {
parseClaudeLog,
diff --git a/.github/workflows/static-analysis-report.lock.yml b/.github/workflows/static-analysis-report.lock.yml
index 613a35ccb9..3059f2ef10 100644
--- a/.github/workflows/static-analysis-report.lock.yml
+++ b/.github/workflows/static-analysis-report.lock.yml
@@ -3091,6 +3091,43 @@ jobs:
runLogParser,
};
}
+ function formatDuration(ms) {
+ if (!ms || ms <= 0) return "";
+ const seconds = Math.round(ms / 1000);
+ if (seconds < 60) {
+ return `${seconds}s`;
+ }
+ const minutes = Math.floor(seconds / 60);
+ const remainingSeconds = seconds % 60;
+ if (remainingSeconds === 0) {
+ return `${minutes}m`;
+ }
+ return `${minutes}m ${remainingSeconds}s`;
+ }
+ function formatBashCommand(command) {
+ if (!command) return "";
+ let formatted = command
+ .replace(/\n/g, " ")
+ .replace(/\r/g, " ")
+ .replace(/\t/g, " ")
+ .replace(/\s+/g, " ")
+ .trim();
+ formatted = formatted.replace(/`/g, "\\`");
+ const maxLength = 300;
+ if (formatted.length > maxLength) {
+ formatted = formatted.substring(0, maxLength) + "...";
+ }
+ return formatted;
+ }
+ function truncateString(str, maxLength) {
+ if (!str) return "";
+ if (str.length <= maxLength) return str;
+ return str.substring(0, maxLength) + "...";
+ }
+ function estimateTokens(text) {
+ if (!text) return 0;
+ return Math.ceil(text.length / 4);
+ }
function main() {
runLogParser({
parseLog: parseClaudeLog,
@@ -3336,23 +3373,6 @@ jobs:
}
return { markdown, mcpFailures };
}
- function estimateTokens(text) {
- if (!text) return 0;
- return Math.ceil(text.length / 4);
- }
- function formatDuration(ms) {
- if (!ms || ms <= 0) return "";
- const seconds = Math.round(ms / 1000);
- if (seconds < 60) {
- return `${seconds}s`;
- }
- const minutes = Math.floor(seconds / 60);
- const remainingSeconds = seconds % 60;
- if (remainingSeconds === 0) {
- return `${minutes}m`;
- }
- return `${minutes}m ${remainingSeconds}s`;
- }
function formatToolUse(toolUse, toolResult) {
const toolName = toolUse.name;
const input = toolUse.input || {};
@@ -3470,26 +3490,6 @@ jobs:
}
return paramStrs.join(", ");
}
- function formatBashCommand(command) {
- if (!command) return "";
- let formatted = command
- .replace(/\n/g, " ")
- .replace(/\r/g, " ")
- .replace(/\t/g, " ")
- .replace(/\s+/g, " ")
- .trim();
- formatted = formatted.replace(/`/g, "\\`");
- const maxLength = 300;
- if (formatted.length > maxLength) {
- formatted = formatted.substring(0, maxLength) + "...";
- }
- return formatted;
- }
- function truncateString(str, maxLength) {
- if (!str) return "";
- if (str.length <= maxLength) return str;
- return str.substring(0, maxLength) + "...";
- }
if (typeof module !== "undefined" && module.exports) {
module.exports = {
parseClaudeLog,
diff --git a/.github/workflows/super-linter.lock.yml b/.github/workflows/super-linter.lock.yml
index 2f0186aee7..4fe97f2325 100644
--- a/.github/workflows/super-linter.lock.yml
+++ b/.github/workflows/super-linter.lock.yml
@@ -2724,6 +2724,43 @@ jobs:
runLogParser,
};
}
+ function formatDuration(ms) {
+ if (!ms || ms <= 0) return "";
+ const seconds = Math.round(ms / 1000);
+ if (seconds < 60) {
+ return `${seconds}s`;
+ }
+ const minutes = Math.floor(seconds / 60);
+ const remainingSeconds = seconds % 60;
+ if (remainingSeconds === 0) {
+ return `${minutes}m`;
+ }
+ return `${minutes}m ${remainingSeconds}s`;
+ }
+ function formatBashCommand(command) {
+ if (!command) return "";
+ let formatted = command
+ .replace(/\n/g, " ")
+ .replace(/\r/g, " ")
+ .replace(/\t/g, " ")
+ .replace(/\s+/g, " ")
+ .trim();
+ formatted = formatted.replace(/`/g, "\\`");
+ const maxLength = 300;
+ if (formatted.length > maxLength) {
+ formatted = formatted.substring(0, maxLength) + "...";
+ }
+ return formatted;
+ }
+ function truncateString(str, maxLength) {
+ if (!str) return "";
+ if (str.length <= maxLength) return str;
+ return str.substring(0, maxLength) + "...";
+ }
+ function estimateTokens(text) {
+ if (!text) return 0;
+ return Math.ceil(text.length / 4);
+ }
function main() {
runLogParser({
parseLog: parseCopilotLog,
@@ -3382,23 +3419,6 @@ jobs:
}
return markdown;
}
- function estimateTokens(text) {
- if (!text) return 0;
- return Math.ceil(text.length / 4);
- }
- function formatDuration(ms) {
- if (!ms || ms <= 0) return "";
- const seconds = Math.round(ms / 1000);
- if (seconds < 60) {
- return `${seconds}s`;
- }
- const minutes = Math.floor(seconds / 60);
- const remainingSeconds = seconds % 60;
- if (remainingSeconds === 0) {
- return `${minutes}m`;
- }
- return `${minutes}m ${remainingSeconds}s`;
- }
function formatToolUseWithDetails(toolUse, toolResult) {
const toolName = toolUse.name;
const input = toolUse.input || {};
@@ -3526,21 +3546,6 @@ jobs:
}
return paramStrs.join(", ");
}
- function formatBashCommand(command) {
- if (!command) return "";
- let formatted = command.replace(/\n/g, " ").replace(/\r/g, " ").replace(/\t/g, " ").replace(/\s+/g, " ").trim();
- formatted = formatted.replace(/`/g, "\\`");
- const maxLength = 300;
- if (formatted.length > maxLength) {
- formatted = formatted.substring(0, maxLength) + "...";
- }
- return formatted;
- }
- function truncateString(str, maxLength) {
- if (!str) return "";
- if (str.length <= maxLength) return str;
- return str.substring(0, maxLength) + "...";
- }
if (typeof module !== "undefined" && module.exports) {
module.exports = {
parseCopilotLog,
diff --git a/.github/workflows/technical-doc-writer.lock.yml b/.github/workflows/technical-doc-writer.lock.yml
index 9d3f68a6d2..fe506c7aa8 100644
--- a/.github/workflows/technical-doc-writer.lock.yml
+++ b/.github/workflows/technical-doc-writer.lock.yml
@@ -3395,6 +3395,43 @@ jobs:
runLogParser,
};
}
+ function formatDuration(ms) {
+ if (!ms || ms <= 0) return "";
+ const seconds = Math.round(ms / 1000);
+ if (seconds < 60) {
+ return `${seconds}s`;
+ }
+ const minutes = Math.floor(seconds / 60);
+ const remainingSeconds = seconds % 60;
+ if (remainingSeconds === 0) {
+ return `${minutes}m`;
+ }
+ return `${minutes}m ${remainingSeconds}s`;
+ }
+ function formatBashCommand(command) {
+ if (!command) return "";
+ let formatted = command
+ .replace(/\n/g, " ")
+ .replace(/\r/g, " ")
+ .replace(/\t/g, " ")
+ .replace(/\s+/g, " ")
+ .trim();
+ formatted = formatted.replace(/`/g, "\\`");
+ const maxLength = 300;
+ if (formatted.length > maxLength) {
+ formatted = formatted.substring(0, maxLength) + "...";
+ }
+ return formatted;
+ }
+ function truncateString(str, maxLength) {
+ if (!str) return "";
+ if (str.length <= maxLength) return str;
+ return str.substring(0, maxLength) + "...";
+ }
+ function estimateTokens(text) {
+ if (!text) return 0;
+ return Math.ceil(text.length / 4);
+ }
function main() {
runLogParser({
parseLog: parseCopilotLog,
@@ -4053,23 +4090,6 @@ jobs:
}
return markdown;
}
- function estimateTokens(text) {
- if (!text) return 0;
- return Math.ceil(text.length / 4);
- }
- function formatDuration(ms) {
- if (!ms || ms <= 0) return "";
- const seconds = Math.round(ms / 1000);
- if (seconds < 60) {
- return `${seconds}s`;
- }
- const minutes = Math.floor(seconds / 60);
- const remainingSeconds = seconds % 60;
- if (remainingSeconds === 0) {
- return `${minutes}m`;
- }
- return `${minutes}m ${remainingSeconds}s`;
- }
function formatToolUseWithDetails(toolUse, toolResult) {
const toolName = toolUse.name;
const input = toolUse.input || {};
@@ -4197,21 +4217,6 @@ jobs:
}
return paramStrs.join(", ");
}
- function formatBashCommand(command) {
- if (!command) return "";
- let formatted = command.replace(/\n/g, " ").replace(/\r/g, " ").replace(/\t/g, " ").replace(/\s+/g, " ").trim();
- formatted = formatted.replace(/`/g, "\\`");
- const maxLength = 300;
- if (formatted.length > maxLength) {
- formatted = formatted.substring(0, maxLength) + "...";
- }
- return formatted;
- }
- function truncateString(str, maxLength) {
- if (!str) return "";
- if (str.length <= maxLength) return str;
- return str.substring(0, maxLength) + "...";
- }
if (typeof module !== "undefined" && module.exports) {
module.exports = {
parseCopilotLog,
diff --git a/.github/workflows/test-claude-oauth-workflow.lock.yml b/.github/workflows/test-claude-oauth-workflow.lock.yml
index b0586fb49a..d756d34bdb 100644
--- a/.github/workflows/test-claude-oauth-workflow.lock.yml
+++ b/.github/workflows/test-claude-oauth-workflow.lock.yml
@@ -868,6 +868,43 @@ jobs:
runLogParser,
};
}
+ function formatDuration(ms) {
+ if (!ms || ms <= 0) return "";
+ const seconds = Math.round(ms / 1000);
+ if (seconds < 60) {
+ return `${seconds}s`;
+ }
+ const minutes = Math.floor(seconds / 60);
+ const remainingSeconds = seconds % 60;
+ if (remainingSeconds === 0) {
+ return `${minutes}m`;
+ }
+ return `${minutes}m ${remainingSeconds}s`;
+ }
+ function formatBashCommand(command) {
+ if (!command) return "";
+ let formatted = command
+ .replace(/\n/g, " ")
+ .replace(/\r/g, " ")
+ .replace(/\t/g, " ")
+ .replace(/\s+/g, " ")
+ .trim();
+ formatted = formatted.replace(/`/g, "\\`");
+ const maxLength = 300;
+ if (formatted.length > maxLength) {
+ formatted = formatted.substring(0, maxLength) + "...";
+ }
+ return formatted;
+ }
+ function truncateString(str, maxLength) {
+ if (!str) return "";
+ if (str.length <= maxLength) return str;
+ return str.substring(0, maxLength) + "...";
+ }
+ function estimateTokens(text) {
+ if (!text) return 0;
+ return Math.ceil(text.length / 4);
+ }
function main() {
runLogParser({
parseLog: parseClaudeLog,
@@ -1113,23 +1150,6 @@ jobs:
}
return { markdown, mcpFailures };
}
- function estimateTokens(text) {
- if (!text) return 0;
- return Math.ceil(text.length / 4);
- }
- function formatDuration(ms) {
- if (!ms || ms <= 0) return "";
- const seconds = Math.round(ms / 1000);
- if (seconds < 60) {
- return `${seconds}s`;
- }
- const minutes = Math.floor(seconds / 60);
- const remainingSeconds = seconds % 60;
- if (remainingSeconds === 0) {
- return `${minutes}m`;
- }
- return `${minutes}m ${remainingSeconds}s`;
- }
function formatToolUse(toolUse, toolResult) {
const toolName = toolUse.name;
const input = toolUse.input || {};
@@ -1247,26 +1267,6 @@ jobs:
}
return paramStrs.join(", ");
}
- function formatBashCommand(command) {
- if (!command) return "";
- let formatted = command
- .replace(/\n/g, " ")
- .replace(/\r/g, " ")
- .replace(/\t/g, " ")
- .replace(/\s+/g, " ")
- .trim();
- formatted = formatted.replace(/`/g, "\\`");
- const maxLength = 300;
- if (formatted.length > maxLength) {
- formatted = formatted.substring(0, maxLength) + "...";
- }
- return formatted;
- }
- function truncateString(str, maxLength) {
- if (!str) return "";
- if (str.length <= maxLength) return str;
- return str.substring(0, maxLength) + "...";
- }
if (typeof module !== "undefined" && module.exports) {
module.exports = {
parseClaudeLog,
diff --git a/.github/workflows/test-jqschema.lock.yml b/.github/workflows/test-jqschema.lock.yml
index 841812c15f..39a50e8131 100644
--- a/.github/workflows/test-jqschema.lock.yml
+++ b/.github/workflows/test-jqschema.lock.yml
@@ -818,6 +818,43 @@ jobs:
runLogParser,
};
}
+ function formatDuration(ms) {
+ if (!ms || ms <= 0) return "";
+ const seconds = Math.round(ms / 1000);
+ if (seconds < 60) {
+ return `${seconds}s`;
+ }
+ const minutes = Math.floor(seconds / 60);
+ const remainingSeconds = seconds % 60;
+ if (remainingSeconds === 0) {
+ return `${minutes}m`;
+ }
+ return `${minutes}m ${remainingSeconds}s`;
+ }
+ function formatBashCommand(command) {
+ if (!command) return "";
+ let formatted = command
+ .replace(/\n/g, " ")
+ .replace(/\r/g, " ")
+ .replace(/\t/g, " ")
+ .replace(/\s+/g, " ")
+ .trim();
+ formatted = formatted.replace(/`/g, "\\`");
+ const maxLength = 300;
+ if (formatted.length > maxLength) {
+ formatted = formatted.substring(0, maxLength) + "...";
+ }
+ return formatted;
+ }
+ function truncateString(str, maxLength) {
+ if (!str) return "";
+ if (str.length <= maxLength) return str;
+ return str.substring(0, maxLength) + "...";
+ }
+ function estimateTokens(text) {
+ if (!text) return 0;
+ return Math.ceil(text.length / 4);
+ }
function main() {
runLogParser({
parseLog: parseCopilotLog,
@@ -1476,23 +1513,6 @@ jobs:
}
return markdown;
}
- function estimateTokens(text) {
- if (!text) return 0;
- return Math.ceil(text.length / 4);
- }
- function formatDuration(ms) {
- if (!ms || ms <= 0) return "";
- const seconds = Math.round(ms / 1000);
- if (seconds < 60) {
- return `${seconds}s`;
- }
- const minutes = Math.floor(seconds / 60);
- const remainingSeconds = seconds % 60;
- if (remainingSeconds === 0) {
- return `${minutes}m`;
- }
- return `${minutes}m ${remainingSeconds}s`;
- }
function formatToolUseWithDetails(toolUse, toolResult) {
const toolName = toolUse.name;
const input = toolUse.input || {};
@@ -1620,21 +1640,6 @@ jobs:
}
return paramStrs.join(", ");
}
- function formatBashCommand(command) {
- if (!command) return "";
- let formatted = command.replace(/\n/g, " ").replace(/\r/g, " ").replace(/\t/g, " ").replace(/\s+/g, " ").trim();
- formatted = formatted.replace(/`/g, "\\`");
- const maxLength = 300;
- if (formatted.length > maxLength) {
- formatted = formatted.substring(0, maxLength) + "...";
- }
- return formatted;
- }
- function truncateString(str, maxLength) {
- if (!str) return "";
- if (str.length <= maxLength) return str;
- return str.substring(0, maxLength) + "...";
- }
if (typeof module !== "undefined" && module.exports) {
module.exports = {
parseCopilotLog,
diff --git a/.github/workflows/test-manual-approval.lock.yml b/.github/workflows/test-manual-approval.lock.yml
index 22d8950dce..c5a3401b40 100644
--- a/.github/workflows/test-manual-approval.lock.yml
+++ b/.github/workflows/test-manual-approval.lock.yml
@@ -718,6 +718,43 @@ jobs:
runLogParser,
};
}
+ function formatDuration(ms) {
+ if (!ms || ms <= 0) return "";
+ const seconds = Math.round(ms / 1000);
+ if (seconds < 60) {
+ return `${seconds}s`;
+ }
+ const minutes = Math.floor(seconds / 60);
+ const remainingSeconds = seconds % 60;
+ if (remainingSeconds === 0) {
+ return `${minutes}m`;
+ }
+ return `${minutes}m ${remainingSeconds}s`;
+ }
+ function formatBashCommand(command) {
+ if (!command) return "";
+ let formatted = command
+ .replace(/\n/g, " ")
+ .replace(/\r/g, " ")
+ .replace(/\t/g, " ")
+ .replace(/\s+/g, " ")
+ .trim();
+ formatted = formatted.replace(/`/g, "\\`");
+ const maxLength = 300;
+ if (formatted.length > maxLength) {
+ formatted = formatted.substring(0, maxLength) + "...";
+ }
+ return formatted;
+ }
+ function truncateString(str, maxLength) {
+ if (!str) return "";
+ if (str.length <= maxLength) return str;
+ return str.substring(0, maxLength) + "...";
+ }
+ function estimateTokens(text) {
+ if (!text) return 0;
+ return Math.ceil(text.length / 4);
+ }
function main() {
runLogParser({
parseLog: parseCopilotLog,
@@ -1376,23 +1413,6 @@ jobs:
}
return markdown;
}
- function estimateTokens(text) {
- if (!text) return 0;
- return Math.ceil(text.length / 4);
- }
- function formatDuration(ms) {
- if (!ms || ms <= 0) return "";
- const seconds = Math.round(ms / 1000);
- if (seconds < 60) {
- return `${seconds}s`;
- }
- const minutes = Math.floor(seconds / 60);
- const remainingSeconds = seconds % 60;
- if (remainingSeconds === 0) {
- return `${minutes}m`;
- }
- return `${minutes}m ${remainingSeconds}s`;
- }
function formatToolUseWithDetails(toolUse, toolResult) {
const toolName = toolUse.name;
const input = toolUse.input || {};
@@ -1520,21 +1540,6 @@ jobs:
}
return paramStrs.join(", ");
}
- function formatBashCommand(command) {
- if (!command) return "";
- let formatted = command.replace(/\n/g, " ").replace(/\r/g, " ").replace(/\t/g, " ").replace(/\s+/g, " ").trim();
- formatted = formatted.replace(/`/g, "\\`");
- const maxLength = 300;
- if (formatted.length > maxLength) {
- formatted = formatted.substring(0, maxLength) + "...";
- }
- return formatted;
- }
- function truncateString(str, maxLength) {
- if (!str) return "";
- if (str.length <= maxLength) return str;
- return str.substring(0, maxLength) + "...";
- }
if (typeof module !== "undefined" && module.exports) {
module.exports = {
parseCopilotLog,
diff --git a/.github/workflows/test-ollama-threat-detection.lock.yml b/.github/workflows/test-ollama-threat-detection.lock.yml
index ef03f14ba8..4c9ff0cc46 100644
--- a/.github/workflows/test-ollama-threat-detection.lock.yml
+++ b/.github/workflows/test-ollama-threat-detection.lock.yml
@@ -2447,6 +2447,43 @@ jobs:
runLogParser,
};
}
+ function formatDuration(ms) {
+ if (!ms || ms <= 0) return "";
+ const seconds = Math.round(ms / 1000);
+ if (seconds < 60) {
+ return `${seconds}s`;
+ }
+ const minutes = Math.floor(seconds / 60);
+ const remainingSeconds = seconds % 60;
+ if (remainingSeconds === 0) {
+ return `${minutes}m`;
+ }
+ return `${minutes}m ${remainingSeconds}s`;
+ }
+ function formatBashCommand(command) {
+ if (!command) return "";
+ let formatted = command
+ .replace(/\n/g, " ")
+ .replace(/\r/g, " ")
+ .replace(/\t/g, " ")
+ .replace(/\s+/g, " ")
+ .trim();
+ formatted = formatted.replace(/`/g, "\\`");
+ const maxLength = 300;
+ if (formatted.length > maxLength) {
+ formatted = formatted.substring(0, maxLength) + "...";
+ }
+ return formatted;
+ }
+ function truncateString(str, maxLength) {
+ if (!str) return "";
+ if (str.length <= maxLength) return str;
+ return str.substring(0, maxLength) + "...";
+ }
+ function estimateTokens(text) {
+ if (!text) return 0;
+ return Math.ceil(text.length / 4);
+ }
function main() {
runLogParser({
parseLog: parseCopilotLog,
@@ -3105,23 +3142,6 @@ jobs:
}
return markdown;
}
- function estimateTokens(text) {
- if (!text) return 0;
- return Math.ceil(text.length / 4);
- }
- function formatDuration(ms) {
- if (!ms || ms <= 0) return "";
- const seconds = Math.round(ms / 1000);
- if (seconds < 60) {
- return `${seconds}s`;
- }
- const minutes = Math.floor(seconds / 60);
- const remainingSeconds = seconds % 60;
- if (remainingSeconds === 0) {
- return `${minutes}m`;
- }
- return `${minutes}m ${remainingSeconds}s`;
- }
function formatToolUseWithDetails(toolUse, toolResult) {
const toolName = toolUse.name;
const input = toolUse.input || {};
@@ -3249,21 +3269,6 @@ jobs:
}
return paramStrs.join(", ");
}
- function formatBashCommand(command) {
- if (!command) return "";
- let formatted = command.replace(/\n/g, " ").replace(/\r/g, " ").replace(/\t/g, " ").replace(/\s+/g, " ").trim();
- formatted = formatted.replace(/`/g, "\\`");
- const maxLength = 300;
- if (formatted.length > maxLength) {
- formatted = formatted.substring(0, maxLength) + "...";
- }
- return formatted;
- }
- function truncateString(str, maxLength) {
- if (!str) return "";
- if (str.length <= maxLength) return str;
- return str.substring(0, maxLength) + "...";
- }
if (typeof module !== "undefined" && module.exports) {
module.exports = {
parseCopilotLog,
diff --git a/.github/workflows/test-post-steps.lock.yml b/.github/workflows/test-post-steps.lock.yml
index 013d9daaae..db1fa86427 100644
--- a/.github/workflows/test-post-steps.lock.yml
+++ b/.github/workflows/test-post-steps.lock.yml
@@ -715,6 +715,43 @@ jobs:
runLogParser,
};
}
+ function formatDuration(ms) {
+ if (!ms || ms <= 0) return "";
+ const seconds = Math.round(ms / 1000);
+ if (seconds < 60) {
+ return `${seconds}s`;
+ }
+ const minutes = Math.floor(seconds / 60);
+ const remainingSeconds = seconds % 60;
+ if (remainingSeconds === 0) {
+ return `${minutes}m`;
+ }
+ return `${minutes}m ${remainingSeconds}s`;
+ }
+ function formatBashCommand(command) {
+ if (!command) return "";
+ let formatted = command
+ .replace(/\n/g, " ")
+ .replace(/\r/g, " ")
+ .replace(/\t/g, " ")
+ .replace(/\s+/g, " ")
+ .trim();
+ formatted = formatted.replace(/`/g, "\\`");
+ const maxLength = 300;
+ if (formatted.length > maxLength) {
+ formatted = formatted.substring(0, maxLength) + "...";
+ }
+ return formatted;
+ }
+ function truncateString(str, maxLength) {
+ if (!str) return "";
+ if (str.length <= maxLength) return str;
+ return str.substring(0, maxLength) + "...";
+ }
+ function estimateTokens(text) {
+ if (!text) return 0;
+ return Math.ceil(text.length / 4);
+ }
function main() {
runLogParser({
parseLog: parseCopilotLog,
@@ -1373,23 +1410,6 @@ jobs:
}
return markdown;
}
- function estimateTokens(text) {
- if (!text) return 0;
- return Math.ceil(text.length / 4);
- }
- function formatDuration(ms) {
- if (!ms || ms <= 0) return "";
- const seconds = Math.round(ms / 1000);
- if (seconds < 60) {
- return `${seconds}s`;
- }
- const minutes = Math.floor(seconds / 60);
- const remainingSeconds = seconds % 60;
- if (remainingSeconds === 0) {
- return `${minutes}m`;
- }
- return `${minutes}m ${remainingSeconds}s`;
- }
function formatToolUseWithDetails(toolUse, toolResult) {
const toolName = toolUse.name;
const input = toolUse.input || {};
@@ -1517,21 +1537,6 @@ jobs:
}
return paramStrs.join(", ");
}
- function formatBashCommand(command) {
- if (!command) return "";
- let formatted = command.replace(/\n/g, " ").replace(/\r/g, " ").replace(/\t/g, " ").replace(/\s+/g, " ").trim();
- formatted = formatted.replace(/`/g, "\\`");
- const maxLength = 300;
- if (formatted.length > maxLength) {
- formatted = formatted.substring(0, maxLength) + "...";
- }
- return formatted;
- }
- function truncateString(str, maxLength) {
- if (!str) return "";
- if (str.length <= maxLength) return str;
- return str.substring(0, maxLength) + "...";
- }
if (typeof module !== "undefined" && module.exports) {
module.exports = {
parseCopilotLog,
diff --git a/.github/workflows/test-secret-masking.lock.yml b/.github/workflows/test-secret-masking.lock.yml
index ce1ba4efe4..b133bcb3e6 100644
--- a/.github/workflows/test-secret-masking.lock.yml
+++ b/.github/workflows/test-secret-masking.lock.yml
@@ -727,6 +727,43 @@ jobs:
runLogParser,
};
}
+ function formatDuration(ms) {
+ if (!ms || ms <= 0) return "";
+ const seconds = Math.round(ms / 1000);
+ if (seconds < 60) {
+ return `${seconds}s`;
+ }
+ const minutes = Math.floor(seconds / 60);
+ const remainingSeconds = seconds % 60;
+ if (remainingSeconds === 0) {
+ return `${minutes}m`;
+ }
+ return `${minutes}m ${remainingSeconds}s`;
+ }
+ function formatBashCommand(command) {
+ if (!command) return "";
+ let formatted = command
+ .replace(/\n/g, " ")
+ .replace(/\r/g, " ")
+ .replace(/\t/g, " ")
+ .replace(/\s+/g, " ")
+ .trim();
+ formatted = formatted.replace(/`/g, "\\`");
+ const maxLength = 300;
+ if (formatted.length > maxLength) {
+ formatted = formatted.substring(0, maxLength) + "...";
+ }
+ return formatted;
+ }
+ function truncateString(str, maxLength) {
+ if (!str) return "";
+ if (str.length <= maxLength) return str;
+ return str.substring(0, maxLength) + "...";
+ }
+ function estimateTokens(text) {
+ if (!text) return 0;
+ return Math.ceil(text.length / 4);
+ }
function main() {
runLogParser({
parseLog: parseCopilotLog,
@@ -1385,23 +1422,6 @@ jobs:
}
return markdown;
}
- function estimateTokens(text) {
- if (!text) return 0;
- return Math.ceil(text.length / 4);
- }
- function formatDuration(ms) {
- if (!ms || ms <= 0) return "";
- const seconds = Math.round(ms / 1000);
- if (seconds < 60) {
- return `${seconds}s`;
- }
- const minutes = Math.floor(seconds / 60);
- const remainingSeconds = seconds % 60;
- if (remainingSeconds === 0) {
- return `${minutes}m`;
- }
- return `${minutes}m ${remainingSeconds}s`;
- }
function formatToolUseWithDetails(toolUse, toolResult) {
const toolName = toolUse.name;
const input = toolUse.input || {};
@@ -1529,21 +1549,6 @@ jobs:
}
return paramStrs.join(", ");
}
- function formatBashCommand(command) {
- if (!command) return "";
- let formatted = command.replace(/\n/g, " ").replace(/\r/g, " ").replace(/\t/g, " ").replace(/\s+/g, " ").trim();
- formatted = formatted.replace(/`/g, "\\`");
- const maxLength = 300;
- if (formatted.length > maxLength) {
- formatted = formatted.substring(0, maxLength) + "...";
- }
- return formatted;
- }
- function truncateString(str, maxLength) {
- if (!str) return "";
- if (str.length <= maxLength) return str;
- return str.substring(0, maxLength) + "...";
- }
if (typeof module !== "undefined" && module.exports) {
module.exports = {
parseCopilotLog,
diff --git a/.github/workflows/test-svelte.lock.yml b/.github/workflows/test-svelte.lock.yml
index 737977b590..f9f15d30bb 100644
--- a/.github/workflows/test-svelte.lock.yml
+++ b/.github/workflows/test-svelte.lock.yml
@@ -757,6 +757,43 @@ jobs:
runLogParser,
};
}
+ function formatDuration(ms) {
+ if (!ms || ms <= 0) return "";
+ const seconds = Math.round(ms / 1000);
+ if (seconds < 60) {
+ return `${seconds}s`;
+ }
+ const minutes = Math.floor(seconds / 60);
+ const remainingSeconds = seconds % 60;
+ if (remainingSeconds === 0) {
+ return `${minutes}m`;
+ }
+ return `${minutes}m ${remainingSeconds}s`;
+ }
+ function formatBashCommand(command) {
+ if (!command) return "";
+ let formatted = command
+ .replace(/\n/g, " ")
+ .replace(/\r/g, " ")
+ .replace(/\t/g, " ")
+ .replace(/\s+/g, " ")
+ .trim();
+ formatted = formatted.replace(/`/g, "\\`");
+ const maxLength = 300;
+ if (formatted.length > maxLength) {
+ formatted = formatted.substring(0, maxLength) + "...";
+ }
+ return formatted;
+ }
+ function truncateString(str, maxLength) {
+ if (!str) return "";
+ if (str.length <= maxLength) return str;
+ return str.substring(0, maxLength) + "...";
+ }
+ function estimateTokens(text) {
+ if (!text) return 0;
+ return Math.ceil(text.length / 4);
+ }
function main() {
runLogParser({
parseLog: parseCopilotLog,
@@ -1415,23 +1452,6 @@ jobs:
}
return markdown;
}
- function estimateTokens(text) {
- if (!text) return 0;
- return Math.ceil(text.length / 4);
- }
- function formatDuration(ms) {
- if (!ms || ms <= 0) return "";
- const seconds = Math.round(ms / 1000);
- if (seconds < 60) {
- return `${seconds}s`;
- }
- const minutes = Math.floor(seconds / 60);
- const remainingSeconds = seconds % 60;
- if (remainingSeconds === 0) {
- return `${minutes}m`;
- }
- return `${minutes}m ${remainingSeconds}s`;
- }
function formatToolUseWithDetails(toolUse, toolResult) {
const toolName = toolUse.name;
const input = toolUse.input || {};
@@ -1559,21 +1579,6 @@ jobs:
}
return paramStrs.join(", ");
}
- function formatBashCommand(command) {
- if (!command) return "";
- let formatted = command.replace(/\n/g, " ").replace(/\r/g, " ").replace(/\t/g, " ").replace(/\s+/g, " ").trim();
- formatted = formatted.replace(/`/g, "\\`");
- const maxLength = 300;
- if (formatted.length > maxLength) {
- formatted = formatted.substring(0, maxLength) + "...";
- }
- return formatted;
- }
- function truncateString(str, maxLength) {
- if (!str) return "";
- if (str.length <= maxLength) return str;
- return str.substring(0, maxLength) + "...";
- }
if (typeof module !== "undefined" && module.exports) {
module.exports = {
parseCopilotLog,
diff --git a/.github/workflows/tidy.lock.yml b/.github/workflows/tidy.lock.yml
index d09ca33f1a..c192061fe0 100644
--- a/.github/workflows/tidy.lock.yml
+++ b/.github/workflows/tidy.lock.yml
@@ -2978,6 +2978,43 @@ jobs:
runLogParser,
};
}
+ function formatDuration(ms) {
+ if (!ms || ms <= 0) return "";
+ const seconds = Math.round(ms / 1000);
+ if (seconds < 60) {
+ return `${seconds}s`;
+ }
+ const minutes = Math.floor(seconds / 60);
+ const remainingSeconds = seconds % 60;
+ if (remainingSeconds === 0) {
+ return `${minutes}m`;
+ }
+ return `${minutes}m ${remainingSeconds}s`;
+ }
+ function formatBashCommand(command) {
+ if (!command) return "";
+ let formatted = command
+ .replace(/\n/g, " ")
+ .replace(/\r/g, " ")
+ .replace(/\t/g, " ")
+ .replace(/\s+/g, " ")
+ .trim();
+ formatted = formatted.replace(/`/g, "\\`");
+ const maxLength = 300;
+ if (formatted.length > maxLength) {
+ formatted = formatted.substring(0, maxLength) + "...";
+ }
+ return formatted;
+ }
+ function truncateString(str, maxLength) {
+ if (!str) return "";
+ if (str.length <= maxLength) return str;
+ return str.substring(0, maxLength) + "...";
+ }
+ function estimateTokens(text) {
+ if (!text) return 0;
+ return Math.ceil(text.length / 4);
+ }
function main() {
runLogParser({
parseLog: parseCopilotLog,
@@ -3636,23 +3673,6 @@ jobs:
}
return markdown;
}
- function estimateTokens(text) {
- if (!text) return 0;
- return Math.ceil(text.length / 4);
- }
- function formatDuration(ms) {
- if (!ms || ms <= 0) return "";
- const seconds = Math.round(ms / 1000);
- if (seconds < 60) {
- return `${seconds}s`;
- }
- const minutes = Math.floor(seconds / 60);
- const remainingSeconds = seconds % 60;
- if (remainingSeconds === 0) {
- return `${minutes}m`;
- }
- return `${minutes}m ${remainingSeconds}s`;
- }
function formatToolUseWithDetails(toolUse, toolResult) {
const toolName = toolUse.name;
const input = toolUse.input || {};
@@ -3780,21 +3800,6 @@ jobs:
}
return paramStrs.join(", ");
}
- function formatBashCommand(command) {
- if (!command) return "";
- let formatted = command.replace(/\n/g, " ").replace(/\r/g, " ").replace(/\t/g, " ").replace(/\s+/g, " ").trim();
- formatted = formatted.replace(/`/g, "\\`");
- const maxLength = 300;
- if (formatted.length > maxLength) {
- formatted = formatted.substring(0, maxLength) + "...";
- }
- return formatted;
- }
- function truncateString(str, maxLength) {
- if (!str) return "";
- if (str.length <= maxLength) return str;
- return str.substring(0, maxLength) + "...";
- }
if (typeof module !== "undefined" && module.exports) {
module.exports = {
parseCopilotLog,
diff --git a/.github/workflows/typist.lock.yml b/.github/workflows/typist.lock.yml
index 9faddcc4ba..b4b792a9cf 100644
--- a/.github/workflows/typist.lock.yml
+++ b/.github/workflows/typist.lock.yml
@@ -3234,6 +3234,43 @@ jobs:
runLogParser,
};
}
+ function formatDuration(ms) {
+ if (!ms || ms <= 0) return "";
+ const seconds = Math.round(ms / 1000);
+ if (seconds < 60) {
+ return `${seconds}s`;
+ }
+ const minutes = Math.floor(seconds / 60);
+ const remainingSeconds = seconds % 60;
+ if (remainingSeconds === 0) {
+ return `${minutes}m`;
+ }
+ return `${minutes}m ${remainingSeconds}s`;
+ }
+ function formatBashCommand(command) {
+ if (!command) return "";
+ let formatted = command
+ .replace(/\n/g, " ")
+ .replace(/\r/g, " ")
+ .replace(/\t/g, " ")
+ .replace(/\s+/g, " ")
+ .trim();
+ formatted = formatted.replace(/`/g, "\\`");
+ const maxLength = 300;
+ if (formatted.length > maxLength) {
+ formatted = formatted.substring(0, maxLength) + "...";
+ }
+ return formatted;
+ }
+ function truncateString(str, maxLength) {
+ if (!str) return "";
+ if (str.length <= maxLength) return str;
+ return str.substring(0, maxLength) + "...";
+ }
+ function estimateTokens(text) {
+ if (!text) return 0;
+ return Math.ceil(text.length / 4);
+ }
function main() {
runLogParser({
parseLog: parseClaudeLog,
@@ -3479,23 +3516,6 @@ jobs:
}
return { markdown, mcpFailures };
}
- function estimateTokens(text) {
- if (!text) return 0;
- return Math.ceil(text.length / 4);
- }
- function formatDuration(ms) {
- if (!ms || ms <= 0) return "";
- const seconds = Math.round(ms / 1000);
- if (seconds < 60) {
- return `${seconds}s`;
- }
- const minutes = Math.floor(seconds / 60);
- const remainingSeconds = seconds % 60;
- if (remainingSeconds === 0) {
- return `${minutes}m`;
- }
- return `${minutes}m ${remainingSeconds}s`;
- }
function formatToolUse(toolUse, toolResult) {
const toolName = toolUse.name;
const input = toolUse.input || {};
@@ -3613,26 +3633,6 @@ jobs:
}
return paramStrs.join(", ");
}
- function formatBashCommand(command) {
- if (!command) return "";
- let formatted = command
- .replace(/\n/g, " ")
- .replace(/\r/g, " ")
- .replace(/\t/g, " ")
- .replace(/\s+/g, " ")
- .trim();
- formatted = formatted.replace(/`/g, "\\`");
- const maxLength = 300;
- if (formatted.length > maxLength) {
- formatted = formatted.substring(0, maxLength) + "...";
- }
- return formatted;
- }
- function truncateString(str, maxLength) {
- if (!str) return "";
- if (str.length <= maxLength) return str;
- return str.substring(0, maxLength) + "...";
- }
if (typeof module !== "undefined" && module.exports) {
module.exports = {
parseClaudeLog,
diff --git a/.github/workflows/unbloat-docs.lock.yml b/.github/workflows/unbloat-docs.lock.yml
index 2d89662c7f..2c84573f6b 100644
--- a/.github/workflows/unbloat-docs.lock.yml
+++ b/.github/workflows/unbloat-docs.lock.yml
@@ -3890,6 +3890,43 @@ jobs:
runLogParser,
};
}
+ function formatDuration(ms) {
+ if (!ms || ms <= 0) return "";
+ const seconds = Math.round(ms / 1000);
+ if (seconds < 60) {
+ return `${seconds}s`;
+ }
+ const minutes = Math.floor(seconds / 60);
+ const remainingSeconds = seconds % 60;
+ if (remainingSeconds === 0) {
+ return `${minutes}m`;
+ }
+ return `${minutes}m ${remainingSeconds}s`;
+ }
+ function formatBashCommand(command) {
+ if (!command) return "";
+ let formatted = command
+ .replace(/\n/g, " ")
+ .replace(/\r/g, " ")
+ .replace(/\t/g, " ")
+ .replace(/\s+/g, " ")
+ .trim();
+ formatted = formatted.replace(/`/g, "\\`");
+ const maxLength = 300;
+ if (formatted.length > maxLength) {
+ formatted = formatted.substring(0, maxLength) + "...";
+ }
+ return formatted;
+ }
+ function truncateString(str, maxLength) {
+ if (!str) return "";
+ if (str.length <= maxLength) return str;
+ return str.substring(0, maxLength) + "...";
+ }
+ function estimateTokens(text) {
+ if (!text) return 0;
+ return Math.ceil(text.length / 4);
+ }
function main() {
runLogParser({
parseLog: parseClaudeLog,
@@ -4135,23 +4172,6 @@ jobs:
}
return { markdown, mcpFailures };
}
- function estimateTokens(text) {
- if (!text) return 0;
- return Math.ceil(text.length / 4);
- }
- function formatDuration(ms) {
- if (!ms || ms <= 0) return "";
- const seconds = Math.round(ms / 1000);
- if (seconds < 60) {
- return `${seconds}s`;
- }
- const minutes = Math.floor(seconds / 60);
- const remainingSeconds = seconds % 60;
- if (remainingSeconds === 0) {
- return `${minutes}m`;
- }
- return `${minutes}m ${remainingSeconds}s`;
- }
function formatToolUse(toolUse, toolResult) {
const toolName = toolUse.name;
const input = toolUse.input || {};
@@ -4269,26 +4289,6 @@ jobs:
}
return paramStrs.join(", ");
}
- function formatBashCommand(command) {
- if (!command) return "";
- let formatted = command
- .replace(/\n/g, " ")
- .replace(/\r/g, " ")
- .replace(/\t/g, " ")
- .replace(/\s+/g, " ")
- .trim();
- formatted = formatted.replace(/`/g, "\\`");
- const maxLength = 300;
- if (formatted.length > maxLength) {
- formatted = formatted.substring(0, maxLength) + "...";
- }
- return formatted;
- }
- function truncateString(str, maxLength) {
- if (!str) return "";
- if (str.length <= maxLength) return str;
- return str.substring(0, maxLength) + "...";
- }
if (typeof module !== "undefined" && module.exports) {
module.exports = {
parseClaudeLog,
diff --git a/.github/workflows/video-analyzer.lock.yml b/.github/workflows/video-analyzer.lock.yml
index a0fa58c899..1165d5b7c6 100644
--- a/.github/workflows/video-analyzer.lock.yml
+++ b/.github/workflows/video-analyzer.lock.yml
@@ -2738,6 +2738,43 @@ jobs:
runLogParser,
};
}
+ function formatDuration(ms) {
+ if (!ms || ms <= 0) return "";
+ const seconds = Math.round(ms / 1000);
+ if (seconds < 60) {
+ return `${seconds}s`;
+ }
+ const minutes = Math.floor(seconds / 60);
+ const remainingSeconds = seconds % 60;
+ if (remainingSeconds === 0) {
+ return `${minutes}m`;
+ }
+ return `${minutes}m ${remainingSeconds}s`;
+ }
+ function formatBashCommand(command) {
+ if (!command) return "";
+ let formatted = command
+ .replace(/\n/g, " ")
+ .replace(/\r/g, " ")
+ .replace(/\t/g, " ")
+ .replace(/\s+/g, " ")
+ .trim();
+ formatted = formatted.replace(/`/g, "\\`");
+ const maxLength = 300;
+ if (formatted.length > maxLength) {
+ formatted = formatted.substring(0, maxLength) + "...";
+ }
+ return formatted;
+ }
+ function truncateString(str, maxLength) {
+ if (!str) return "";
+ if (str.length <= maxLength) return str;
+ return str.substring(0, maxLength) + "...";
+ }
+ function estimateTokens(text) {
+ if (!text) return 0;
+ return Math.ceil(text.length / 4);
+ }
function main() {
runLogParser({
parseLog: parseCopilotLog,
@@ -3396,23 +3433,6 @@ jobs:
}
return markdown;
}
- function estimateTokens(text) {
- if (!text) return 0;
- return Math.ceil(text.length / 4);
- }
- function formatDuration(ms) {
- if (!ms || ms <= 0) return "";
- const seconds = Math.round(ms / 1000);
- if (seconds < 60) {
- return `${seconds}s`;
- }
- const minutes = Math.floor(seconds / 60);
- const remainingSeconds = seconds % 60;
- if (remainingSeconds === 0) {
- return `${minutes}m`;
- }
- return `${minutes}m ${remainingSeconds}s`;
- }
function formatToolUseWithDetails(toolUse, toolResult) {
const toolName = toolUse.name;
const input = toolUse.input || {};
@@ -3540,21 +3560,6 @@ jobs:
}
return paramStrs.join(", ");
}
- function formatBashCommand(command) {
- if (!command) return "";
- let formatted = command.replace(/\n/g, " ").replace(/\r/g, " ").replace(/\t/g, " ").replace(/\s+/g, " ").trim();
- formatted = formatted.replace(/`/g, "\\`");
- const maxLength = 300;
- if (formatted.length > maxLength) {
- formatted = formatted.substring(0, maxLength) + "...";
- }
- return formatted;
- }
- function truncateString(str, maxLength) {
- if (!str) return "";
- if (str.length <= maxLength) return str;
- return str.substring(0, maxLength) + "...";
- }
if (typeof module !== "undefined" && module.exports) {
module.exports = {
parseCopilotLog,
diff --git a/.github/workflows/weekly-issue-summary.lock.yml b/.github/workflows/weekly-issue-summary.lock.yml
index 580b7a0406..4dcc7d445c 100644
--- a/.github/workflows/weekly-issue-summary.lock.yml
+++ b/.github/workflows/weekly-issue-summary.lock.yml
@@ -3140,6 +3140,43 @@ jobs:
runLogParser,
};
}
+ function formatDuration(ms) {
+ if (!ms || ms <= 0) return "";
+ const seconds = Math.round(ms / 1000);
+ if (seconds < 60) {
+ return `${seconds}s`;
+ }
+ const minutes = Math.floor(seconds / 60);
+ const remainingSeconds = seconds % 60;
+ if (remainingSeconds === 0) {
+ return `${minutes}m`;
+ }
+ return `${minutes}m ${remainingSeconds}s`;
+ }
+ function formatBashCommand(command) {
+ if (!command) return "";
+ let formatted = command
+ .replace(/\n/g, " ")
+ .replace(/\r/g, " ")
+ .replace(/\t/g, " ")
+ .replace(/\s+/g, " ")
+ .trim();
+ formatted = formatted.replace(/`/g, "\\`");
+ const maxLength = 300;
+ if (formatted.length > maxLength) {
+ formatted = formatted.substring(0, maxLength) + "...";
+ }
+ return formatted;
+ }
+ function truncateString(str, maxLength) {
+ if (!str) return "";
+ if (str.length <= maxLength) return str;
+ return str.substring(0, maxLength) + "...";
+ }
+ function estimateTokens(text) {
+ if (!text) return 0;
+ return Math.ceil(text.length / 4);
+ }
function main() {
runLogParser({
parseLog: parseCopilotLog,
@@ -3798,23 +3835,6 @@ jobs:
}
return markdown;
}
- function estimateTokens(text) {
- if (!text) return 0;
- return Math.ceil(text.length / 4);
- }
- function formatDuration(ms) {
- if (!ms || ms <= 0) return "";
- const seconds = Math.round(ms / 1000);
- if (seconds < 60) {
- return `${seconds}s`;
- }
- const minutes = Math.floor(seconds / 60);
- const remainingSeconds = seconds % 60;
- if (remainingSeconds === 0) {
- return `${minutes}m`;
- }
- return `${minutes}m ${remainingSeconds}s`;
- }
function formatToolUseWithDetails(toolUse, toolResult) {
const toolName = toolUse.name;
const input = toolUse.input || {};
@@ -3942,21 +3962,6 @@ jobs:
}
return paramStrs.join(", ");
}
- function formatBashCommand(command) {
- if (!command) return "";
- let formatted = command.replace(/\n/g, " ").replace(/\r/g, " ").replace(/\t/g, " ").replace(/\s+/g, " ").trim();
- formatted = formatted.replace(/`/g, "\\`");
- const maxLength = 300;
- if (formatted.length > maxLength) {
- formatted = formatted.substring(0, maxLength) + "...";
- }
- return formatted;
- }
- function truncateString(str, maxLength) {
- if (!str) return "";
- if (str.length <= maxLength) return str;
- return str.substring(0, maxLength) + "...";
- }
if (typeof module !== "undefined" && module.exports) {
module.exports = {
parseCopilotLog,
diff --git a/pkg/workflow/js.go b/pkg/workflow/js.go
index cd136e98d8..35f99bd484 100644
--- a/pkg/workflow/js.go
+++ b/pkg/workflow/js.go
@@ -69,6 +69,9 @@ var stagedPreviewScript string
//go:embed js/is_truthy.cjs
var isTruthyScript string
+//go:embed js/log_parser_shared.cjs
+var logParserSharedScript string
+
//go:embed js/update_activation_comment.cjs
var updateActivationCommentScript string
@@ -92,6 +95,7 @@ func GetJavaScriptSources() map[string]string {
"staged_preview.cjs": stagedPreviewScript,
"is_truthy.cjs": isTruthyScript,
"log_parser_bootstrap.cjs": logParserBootstrapScript,
+ "log_parser_shared.cjs": logParserSharedScript,
"update_activation_comment.cjs": updateActivationCommentScript,
"generate_footer.cjs": generateFooterScript,
"get_campaign.cjs": getCampaignScript,
diff --git a/pkg/workflow/js/log_parser_shared.cjs b/pkg/workflow/js/log_parser_shared.cjs
new file mode 100644
index 0000000000..ddee3fe747
--- /dev/null
+++ b/pkg/workflow/js/log_parser_shared.cjs
@@ -0,0 +1,87 @@
+// @ts-check
+///
+
+/**
+ * Shared utility functions for log parsers
+ * Used by parse_claude_log.cjs and parse_copilot_log.cjs
+ */
+
+/**
+ * Formats duration in milliseconds to human-readable string
+ * @param {number} ms - Duration in milliseconds
+ * @returns {string} Formatted duration string (e.g., "1s", "1m 30s")
+ */
+function formatDuration(ms) {
+ if (!ms || ms <= 0) return "";
+
+ const seconds = Math.round(ms / 1000);
+ if (seconds < 60) {
+ return `${seconds}s`;
+ }
+
+ const minutes = Math.floor(seconds / 60);
+ const remainingSeconds = seconds % 60;
+ if (remainingSeconds === 0) {
+ return `${minutes}m`;
+ }
+ return `${minutes}m ${remainingSeconds}s`;
+}
+
+/**
+ * Formats a bash command by normalizing whitespace and escaping
+ * @param {string} command - The raw bash command string
+ * @returns {string} Formatted and escaped command string
+ */
+function formatBashCommand(command) {
+ if (!command) return "";
+
+ // Convert multi-line commands to single line by replacing newlines with spaces
+ // and collapsing multiple spaces
+ let formatted = command
+ .replace(/\n/g, " ") // Replace newlines with spaces
+ .replace(/\r/g, " ") // Replace carriage returns with spaces
+ .replace(/\t/g, " ") // Replace tabs with spaces
+ .replace(/\s+/g, " ") // Collapse multiple spaces into one
+ .trim(); // Remove leading/trailing whitespace
+
+ // Escape backticks to prevent markdown issues
+ formatted = formatted.replace(/`/g, "\\`");
+
+ // Truncate if too long (keep reasonable length for summary)
+ const maxLength = 300;
+ if (formatted.length > maxLength) {
+ formatted = formatted.substring(0, maxLength) + "...";
+ }
+
+ return formatted;
+}
+
+/**
+ * Truncates a string to a maximum length with ellipsis
+ * @param {string} str - The string to truncate
+ * @param {number} maxLength - Maximum allowed length
+ * @returns {string} Truncated string with ellipsis if needed
+ */
+function truncateString(str, maxLength) {
+ if (!str) return "";
+ if (str.length <= maxLength) return str;
+ return str.substring(0, maxLength) + "...";
+}
+
+/**
+ * Calculates approximate token count from text using 4 chars per token estimate
+ * @param {string} text - The text to estimate tokens for
+ * @returns {number} Approximate token count
+ */
+function estimateTokens(text) {
+ if (!text) return 0;
+ return Math.ceil(text.length / 4);
+}
+
+// Export functions
+module.exports = {
+ formatDuration,
+ formatBashCommand,
+ truncateString,
+ estimateTokens,
+};
diff --git a/pkg/workflow/js/log_parser_shared.test.cjs b/pkg/workflow/js/log_parser_shared.test.cjs
new file mode 100644
index 0000000000..c32b2b29fd
--- /dev/null
+++ b/pkg/workflow/js/log_parser_shared.test.cjs
@@ -0,0 +1,166 @@
+import { describe, it, expect } from "vitest";
+
+describe("log_parser_shared.cjs", () => {
+ describe("formatDuration", () => {
+ it("should format duration less than 60 seconds", async () => {
+ const { formatDuration } = await import("./log_parser_shared.cjs");
+
+ expect(formatDuration(5000)).toBe("5s");
+ expect(formatDuration(30000)).toBe("30s");
+ expect(formatDuration(59499)).toBe("59s"); // Just under 60s
+ });
+
+ it("should format duration in minutes without seconds", async () => {
+ const { formatDuration } = await import("./log_parser_shared.cjs");
+
+ expect(formatDuration(60000)).toBe("1m");
+ expect(formatDuration(120000)).toBe("2m");
+ expect(formatDuration(300000)).toBe("5m");
+ });
+
+ it("should format duration in minutes with seconds", async () => {
+ const { formatDuration } = await import("./log_parser_shared.cjs");
+
+ expect(formatDuration(65000)).toBe("1m 5s");
+ expect(formatDuration(90000)).toBe("1m 30s");
+ expect(formatDuration(125000)).toBe("2m 5s");
+ });
+
+ it("should handle zero and negative durations", async () => {
+ const { formatDuration } = await import("./log_parser_shared.cjs");
+
+ expect(formatDuration(0)).toBe("");
+ expect(formatDuration(-1000)).toBe("");
+ });
+
+ it("should handle null and undefined", async () => {
+ const { formatDuration } = await import("./log_parser_shared.cjs");
+
+ expect(formatDuration(null)).toBe("");
+ expect(formatDuration(undefined)).toBe("");
+ });
+ });
+
+ describe("formatBashCommand", () => {
+ it("should normalize whitespace in commands", async () => {
+ const { formatBashCommand } = await import("./log_parser_shared.cjs");
+
+ const command = "echo hello\n world\t\tthere";
+ const result = formatBashCommand(command);
+
+ expect(result).toBe("echo hello world there");
+ });
+
+ it("should escape backticks", async () => {
+ const { formatBashCommand } = await import("./log_parser_shared.cjs");
+
+ const command = "echo `date`";
+ const result = formatBashCommand(command);
+
+ expect(result).toBe("echo \\`date\\`");
+ });
+
+ it("should truncate long commands", async () => {
+ const { formatBashCommand } = await import("./log_parser_shared.cjs");
+
+ const longCommand = "a".repeat(400);
+ const result = formatBashCommand(longCommand);
+
+ expect(result.length).toBe(303); // 300 chars + "..."
+ expect(result.endsWith("...")).toBe(true);
+ });
+
+ it("should handle empty and null commands", async () => {
+ const { formatBashCommand } = await import("./log_parser_shared.cjs");
+
+ expect(formatBashCommand("")).toBe("");
+ expect(formatBashCommand(null)).toBe("");
+ expect(formatBashCommand(undefined)).toBe("");
+ });
+
+ it("should remove leading and trailing whitespace", async () => {
+ const { formatBashCommand } = await import("./log_parser_shared.cjs");
+
+ const command = " echo hello ";
+ const result = formatBashCommand(command);
+
+ expect(result).toBe("echo hello");
+ });
+
+ it("should handle multi-line commands", async () => {
+ const { formatBashCommand } = await import("./log_parser_shared.cjs");
+
+ const command = "echo line1\necho line2\necho line3";
+ const result = formatBashCommand(command);
+
+ expect(result).toBe("echo line1 echo line2 echo line3");
+ });
+ });
+
+ describe("truncateString", () => {
+ it("should truncate strings longer than max length", async () => {
+ const { truncateString } = await import("./log_parser_shared.cjs");
+
+ const longStr = "a".repeat(100);
+ const result = truncateString(longStr, 50);
+
+ expect(result.length).toBe(53); // 50 chars + "..."
+ expect(result.endsWith("...")).toBe(true);
+ });
+
+ it("should not truncate strings at or below max length", async () => {
+ const { truncateString } = await import("./log_parser_shared.cjs");
+
+ expect(truncateString("hello", 10)).toBe("hello");
+ expect(truncateString("1234567890", 10)).toBe("1234567890");
+ });
+
+ it("should handle empty and null strings", async () => {
+ const { truncateString } = await import("./log_parser_shared.cjs");
+
+ expect(truncateString("", 10)).toBe("");
+ expect(truncateString(null, 10)).toBe("");
+ expect(truncateString(undefined, 10)).toBe("");
+ });
+
+ it("should handle zero max length", async () => {
+ const { truncateString } = await import("./log_parser_shared.cjs");
+
+ const result = truncateString("hello", 0);
+ expect(result).toBe("...");
+ });
+ });
+
+ describe("estimateTokens", () => {
+ it("should estimate tokens using 4 chars per token", async () => {
+ const { estimateTokens } = await import("./log_parser_shared.cjs");
+
+ expect(estimateTokens("test")).toBe(1); // 4 chars = 1 token
+ expect(estimateTokens("hello world")).toBe(3); // 11 chars = 2.75 -> 3 tokens
+ expect(estimateTokens("a".repeat(100))).toBe(25); // 100 chars = 25 tokens
+ });
+
+ it("should round up partial tokens", async () => {
+ const { estimateTokens } = await import("./log_parser_shared.cjs");
+
+ expect(estimateTokens("a")).toBe(1); // 1 char = 0.25 -> 1 token
+ expect(estimateTokens("ab")).toBe(1); // 2 chars = 0.5 -> 1 token
+ expect(estimateTokens("abc")).toBe(1); // 3 chars = 0.75 -> 1 token
+ });
+
+ it("should handle empty and null text", async () => {
+ const { estimateTokens } = await import("./log_parser_shared.cjs");
+
+ expect(estimateTokens("")).toBe(0);
+ expect(estimateTokens(null)).toBe(0);
+ expect(estimateTokens(undefined)).toBe(0);
+ });
+
+ it("should handle large text", async () => {
+ const { estimateTokens } = await import("./log_parser_shared.cjs");
+
+ const largeText = "a".repeat(10000);
+ expect(estimateTokens(largeText)).toBe(2500); // 10000 chars = 2500 tokens
+ });
+ });
+});
diff --git a/pkg/workflow/js/parse_claude_log.cjs b/pkg/workflow/js/parse_claude_log.cjs
index 2772ca8ccf..b67a7119c2 100644
--- a/pkg/workflow/js/parse_claude_log.cjs
+++ b/pkg/workflow/js/parse_claude_log.cjs
@@ -2,6 +2,7 @@
///
const { runLogParser } = require("./log_parser_bootstrap.cjs");
+const { formatDuration, formatBashCommand, truncateString, estimateTokens } = require("./log_parser_shared.cjs");
function main() {
runLogParser({
@@ -332,37 +333,6 @@ function formatInitializationSummary(initEntry) {
return { markdown, mcpFailures };
}
-/**
- * Calculates approximate token count from text using 4 chars per token estimate
- * @param {string} text - The text to estimate tokens for
- * @returns {number} Approximate token count
- */
-function estimateTokens(text) {
- if (!text) return 0;
- return Math.ceil(text.length / 4);
-}
-
-/**
- * Formats duration in seconds
- * @param {number} ms - Duration in milliseconds
- * @returns {string} Formatted duration string (e.g., "1s", "1m 30s")
- */
-function formatDuration(ms) {
- if (!ms || ms <= 0) return "";
-
- const seconds = Math.round(ms / 1000);
- if (seconds < 60) {
- return `${seconds}s`;
- }
-
- const minutes = Math.floor(seconds / 60);
- const remainingSeconds = seconds % 60;
- if (remainingSeconds === 0) {
- return `${minutes}m`;
- }
- return `${minutes}m ${remainingSeconds}s`;
-}
-
/**
* Formats a tool use entry with its result into markdown
* @param {any} toolUse - The tool use object containing name, input, etc.
@@ -532,47 +502,6 @@ function formatMcpParameters(input) {
return paramStrs.join(", ");
}
-/**
- * Formats a bash command by normalizing whitespace and escaping
- * @param {string} command - The raw bash command string
- * @returns {string} Formatted and escaped command string
- */
-function formatBashCommand(command) {
- if (!command) return "";
-
- // Convert multi-line commands to single line by replacing newlines with spaces
- // and collapsing multiple spaces
- let formatted = command
- .replace(/\n/g, " ") // Replace newlines with spaces
- .replace(/\r/g, " ") // Replace carriage returns with spaces
- .replace(/\t/g, " ") // Replace tabs with spaces
- .replace(/\s+/g, " ") // Collapse multiple spaces into one
- .trim(); // Remove leading/trailing whitespace
-
- // Escape backticks to prevent markdown issues
- formatted = formatted.replace(/`/g, "\\`");
-
- // Truncate if too long (keep reasonable length for summary)
- const maxLength = 300;
- if (formatted.length > maxLength) {
- formatted = formatted.substring(0, maxLength) + "...";
- }
-
- return formatted;
-}
-
-/**
- * Truncates a string to a maximum length with ellipsis
- * @param {string} str - The string to truncate
- * @param {number} maxLength - Maximum allowed length
- * @returns {string} Truncated string with ellipsis if needed
- */
-function truncateString(str, maxLength) {
- if (!str) return "";
- if (str.length <= maxLength) return str;
- return str.substring(0, maxLength) + "...";
-}
-
// Export for testing
if (typeof module !== "undefined" && module.exports) {
module.exports = {
diff --git a/pkg/workflow/js/parse_claude_log.test.cjs b/pkg/workflow/js/parse_claude_log.test.cjs
index 58e50bfe6d..4ce6e41555 100644
--- a/pkg/workflow/js/parse_claude_log.test.cjs
+++ b/pkg/workflow/js/parse_claude_log.test.cjs
@@ -74,6 +74,9 @@ describe("parse_claude_log.cjs", () => {
if (module === "./log_parser_bootstrap.cjs") {
return require("./log_parser_bootstrap.cjs");
}
+ if (module === "./log_parser_shared.cjs") {
+ return require("./log_parser_shared.cjs");
+ }
throw new Error(`Module not found: ${module}`);
});
diff --git a/pkg/workflow/js/parse_copilot_log.cjs b/pkg/workflow/js/parse_copilot_log.cjs
index da41a7c3e8..fa6a218d45 100644
--- a/pkg/workflow/js/parse_copilot_log.cjs
+++ b/pkg/workflow/js/parse_copilot_log.cjs
@@ -2,6 +2,7 @@
///
const { runLogParser } = require("./log_parser_bootstrap.cjs");
+const { formatDuration, formatBashCommand, truncateString, estimateTokens } = require("./log_parser_shared.cjs");
function main() {
runLogParser({
@@ -905,37 +906,6 @@ function formatInitializationSummary(initEntry) {
return markdown;
}
-/**
- * Calculates approximate token count from text using 4 chars per token estimate
- * @param {string} text - The text to estimate tokens for
- * @returns {number} Approximate token count
- */
-function estimateTokens(text) {
- if (!text) return 0;
- return Math.ceil(text.length / 4);
-}
-
-/**
- * Formats duration in seconds
- * @param {number} ms - Duration in milliseconds
- * @returns {string} Formatted duration string (e.g., "1s", "1m 30s")
- */
-function formatDuration(ms) {
- if (!ms || ms <= 0) return "";
-
- const seconds = Math.round(ms / 1000);
- if (seconds < 60) {
- return `${seconds}s`;
- }
-
- const minutes = Math.floor(seconds / 60);
- const remainingSeconds = seconds % 60;
- if (remainingSeconds === 0) {
- return `${minutes}m`;
- }
- return `${minutes}m ${remainingSeconds}s`;
-}
-
/**
* Formats a tool use entry with its result using HTML details tags
* @param {any} toolUse - The tool use object containing name, input, etc.
@@ -1119,41 +1089,6 @@ function formatMcpParameters(input) {
return paramStrs.join(", ");
}
-/**
- * Formats a bash command by normalizing whitespace and escaping
- * @param {string} command - The raw bash command string
- * @returns {string} Formatted and escaped command string
- */
-function formatBashCommand(command) {
- if (!command) return "";
-
- // Convert multi-line commands to single line
- let formatted = command.replace(/\n/g, " ").replace(/\r/g, " ").replace(/\t/g, " ").replace(/\s+/g, " ").trim();
-
- // Escape backticks to prevent markdown issues
- formatted = formatted.replace(/`/g, "\\`");
-
- // Truncate if too long
- const maxLength = 300;
- if (formatted.length > maxLength) {
- formatted = formatted.substring(0, maxLength) + "...";
- }
-
- return formatted;
-}
-
-/**
- * Truncates a string to a maximum length with ellipsis
- * @param {string} str - The string to truncate
- * @param {number} maxLength - Maximum allowed length
- * @returns {string} Truncated string with ellipsis if needed
- */
-function truncateString(str, maxLength) {
- if (!str) return "";
- if (str.length <= maxLength) return str;
- return str.substring(0, maxLength) + "...";
-}
-
// Export for testing
if (typeof module !== "undefined" && module.exports) {
module.exports = {
diff --git a/pkg/workflow/js/parse_copilot_log.test.cjs b/pkg/workflow/js/parse_copilot_log.test.cjs
index 62e792ee64..9a90c0f10f 100644
--- a/pkg/workflow/js/parse_copilot_log.test.cjs
+++ b/pkg/workflow/js/parse_copilot_log.test.cjs
@@ -77,6 +77,9 @@ describe("parse_copilot_log.cjs", () => {
if (module === "./log_parser_bootstrap.cjs") {
return require("./log_parser_bootstrap.cjs");
}
+ if (module === "./log_parser_shared.cjs") {
+ return require("./log_parser_shared.cjs");
+ }
throw new Error(`Module not found: ${module}`);
});