fix: preserve activity errors, asset bytes and runner summaries

Treat non-2xx activity responses as feed errors, preserve non-Markdown Copilot agent assets, and apply the reviewed reference escape parity correction with regenerated bindings. Allow the test runner to drain piped output on its existing success or failure exit status. Validate installed workflows and bounded real Node20/24 pipe regressions.
This commit is contained in:
haelyra
2026-10-09 19:33:37 -04:00
parent 984d4f0701
commit aac9b3d34b
11 changed files with 167 additions and 8 deletions
+4 -1
View File
@@ -856,7 +856,10 @@ handleRoute();
var panel = document.getElementById('panel-activity');
if (!panel) return;
fetch('/api/activity')
.then(function (r) { return r.json(); })
.then(function (r) {
if (!r.ok) throw new Error('Activity request failed');
return r.json();
})
.then(function (data) {
var entries = (data && data.entries) || [];
var skillCount = entries.filter(function (e) { return e.tool_name === 'Skill'; }).length;
+3 -2
View File
@@ -104,9 +104,10 @@ function buildCopyFileOperation({
strategy,
contentTransform,
}) {
// Copilot's workflow reference transform is textual. Skill directories may
// Copilot's agent and workflow transforms are textual. Their directories may
// also contain binary assets and executable helpers, which must keep bytes.
const applicableTransform = contentTransform === 'copilot-workflow-paths'
const applicableTransform = (contentTransform === 'copilot-workflow-paths'
|| contentTransform === 'copilot-agent-frontmatter')
&& !/\.md$/i.test(sourceRelativePath) ? undefined : contentTransform;
return {
kind: 'copy-file',