Skip to content

chore(skills): remove bundled Skills with unresolved provenance - #2695

Merged
Astro-Han merged 4 commits into
apache:mainfrom
likun666661:compliance/remove-unverified-bundled-skills
Aug 12, 2026
Merged

chore(skills): remove bundled Skills with unresolved provenance#2695
Astro-Han merged 4 commits into
apache:mainfrom
likun666661:compliance/remove-unverified-bundled-skills

Conversation

@likun666661

@likun666661likun666661 commented Aug 11, 2026

Copy link
Copy Markdown
Member

Summary

  • remove the 29 bundled Skills introduced by feat(skills): built-in skill catalog with install-on-demand #842 whose provenance has not been established
  • retain computer-use, which has a separate introducing PR and provenance review
  • regenerate the byte-pinned bundled catalog and guard it against stale legacy trust entries
  • document and test the upgrade behavior for previously installed local copies

Rationale

Issue #2669 records a provenance evidence gap for these 29 Markdown Skills. This change takes the conservative removal path: it does not assert infringement or an incompatible license, but removes material whose origin cannot currently be established.

The bundled catalog now contains only computer-use. This PR resolves the unresolved #842 set by removal; it does not close#2669 because computer-use still needs its independent provenance review.

Upgrade behavior

This PR only stops distributing and trusting the removed bundled sources. An upgrade does not delete, rewrite, migrate, or silently disable a copy already installed under skills/<id>. If that local copy is otherwise valid and enabled, Runtime continues to treat it as user-provided content and it remains invocable under the ordinary permission and host-capability rules.

The obsolete bundled lock is reported as metadata_error, so Maka no longer treats the retained copy as a trusted bundled source or offers bundled-source update behavior.

Validation

  • npm --workspace @maka/runtime-host run build
  • node --test --test-name-pattern='removed bundled sources lose provenance trust without disabling the local copy' packages/runtime-host/dist/__tests__/skill-catalog-repository.test.js
  • git diff --check
  • CI: test_runtime_host, test_workspaces, test, Storybook, and Windows jobs passed before the latest main sync; the refreshed run is tracked on this PR

Refs #2669

Remove the 29 bundled Skills introduced by apache#842 whose provenance has not been established. Keep computer-use as the only bundled Skill and regenerate the catalog.
Refs apache#2669
Generated-by: OpenAI Codex
@likun666661
likun666661 marked this pull request as ready for review August 11, 2026 11:56

@hqhq1025hqhq1025 left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks for taking the conservative removal path here. There is one blocking cross-package test left behind: packages/runtime-host/src/__tests__/skill-catalog-protocol.test.ts still asserts that the actual bundled catalog contains deep-research. That makes test_runtime_host fail on this PR; I also reproduced the focused failure from the PR head in a clean worktree. Please update the assertion to the retained computer-use entry, or derive it from the current catalog contract so this removal is covered end to end.

Please also remove the stale drafter-diagram entry from LEGACY_CONTENT_SHA256_BY_ID in scripts/gen-bundled-skill-catalog.mjs. Leaving that legacy hash behind means a future same-id reintroduction would automatically trust the old unresolved-provenance content, which works against the purpose of this cleanup. A small guard requiring every legacy-hash key to exist in the current source catalog would prevent this from recurring.

Assert the retained bundled catalog end to end and reject legacy hash entries for missing Skill sources.
Generated-by: OpenAI Codex
@MicroGery

Copy link
Copy Markdown
Contributor

One upgrade behavior seems worth making explicit (not necessarily blocking): removing these entries from BUNDLED_SKILL_CATALOG makes an existing bundled lock for one of the 29 removed IDs fail isTrustedBundledLock() and surface as metadata_error, but listInvocableSkills() / resolveSkillInvocations() still derive invocability directly from the enabled local scan without consulting that governance result. As a result, a copy installed by an older Maka release can remain locally invocable after upgrade even though its former bundled source is no longer trusted by the current catalog.

If this PR's boundary is only “stop distributing these 29 source files in new releases while preserving user-owned installed copies,” that behavior is reasonable. If the intended boundary is also “disable unresolved-provenance copies after upgrade,” this removal alone does not enforce it and would need an explicit migration or invocation-time gate. Could we document the intended upgrade behavior and add a regression test for it, so the compliance boundary remains deliberate?

@hqhq1025hqhq1025 left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Re-reviewed at 4e7d66043437511086dd4fec9900cd143875315b. Both requested changes are addressed: the Runtime Host assertion now matches the retained computer-use catalog, and the stale drafter-diagram legacy hash is removed with a fail-closed orphan guard. The focused catalog check, Biome check, and diff check pass, and the Runtime Host CI lane is green.

The remaining format and desktop E2E failures reproduce on current main with the same hidden-composer failure shape, so they are not attributable to this diff. I agree that preserving already-installed workspace copies is a reasonable non-blocking boundary for this removal PR; documenting that upgrade behavior would still be useful follow-up work.

Document that catalog removal revokes Maka provenance without deleting or disabling user-owned local copies, and lock the boundary with a Runtime Host regression test.
Generated-by: OpenAI Codex
@hqhq1025

Copy link
Copy Markdown
Contributor

I traced the upgrade path from the legacy bundled lock through the Host-owned governance and invocable snapshots. The existing behavior is deliberate: provenance determines whether Maka still recognizes and manages a source, while a valid local Skill remains user-provided content rather than becoming silently disabled because its former catalog source disappeared.

Commit 44dfa5c10 now makes that boundary explicit in docs/skill-catalog-policy.md and adds a Runtime Host regression test proving that an older bundled lock becomes metadata_error, the local file remains untouched, and the enabled copy remains in the invocable catalog. The focused test and build pass; the full Runtime Host suite passed 847/848 on the first run with one unrelated Electron candidate exit timeout, and that exact failing test passed on immediate isolated rerun.

@hqhq1025hqhq1025 left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Re-approved at 44dfa5c108c27b66802d8c1fff1aed9967c6b8d1. The upgrade boundary is now explicit and regression-tested: catalog removal revokes Maka's bundled provenance without deleting or silently disabling a valid user-owned local copy. Runtime Host, workspace, Storybook, and aggregate CI lanes pass; the remaining format and desktop E2E failures are the same failures present on current main.

@hqhq1025

Copy link
Copy Markdown
Contributor

Follow-up is now complete in 44dfa5c10 and merge commit 8eff71cab. The upgrade boundary is documented and covered by a Runtime Host regression test: removing a bundled source revokes Maka's provenance trust and reports metadata_error, while preserving the valid user-owned local file and its ordinary invocability instead of deleting or silently disabling it.

I also merged the current main and resolved the only conflict in skills-governance.test.ts by preserving main's test-pruning decision; the retained Host-level catalog assertion and generator fail-closed guard remain the authoritative coverage. The PR is mergeable again. Generator --check, the relevant package builds, the two focused catalog tests, test_runtime_host, test_workspaces, Storybook, and the aggregate CI lane pass. The remaining repository-wide formatting and hidden-composer E2E failures are reproduced on current main and are outside this diff.

@hqhq1025hqhq1025 left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Final approval at 8eff71cabc83cd4d8a06e2c03358af768287593d after merging current main and resolving the sole test conflict. The PR is mergeable, the catalog upgrade boundary remains covered, and the Runtime Host, workspace, aggregate, Windows baseline, and Windows recovery checks pass. The only remaining failure is the repository-wide formatting check already failing on main.

@Astro-HanAstro-Han left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Approved. This PR removes the 29 Skills introduced by #842 and keeps computer-use. It also updates the generated catalog, removes the stale drafter-diagram hash, and documents what happens to copies installed by an older release.

I ran the generator check, focused formatting checks, and the two affected Runtime Host test files. All 39 tests passed. The remaining repository-wide CI failure also occurs on main and is unrelated to this change.

Please merge this before #2676. That PR can then remove the deleted Skills from the unresolved section of provenance.json.

AI assistance: Codex checked the diff, git history, generated catalog, upgrade behavior, focused tests, and merge result. I reviewed the evidence and take responsibility for this approval.

中文对照

批准。这个 PR 删除了 #842 引入的 29 个 Skills,保留了 computer-use,同时更新了生成的 catalog,移除了过期的 drafter-diagram 哈希,并说明了升级后如何处理旧版本已经安装的副本。

我运行了生成器检查、聚焦格式检查,以及两个受影响的 Runtime Host 测试文件。39 项测试全部通过。剩余的仓库级 CI 失败在 main 上也存在,与本次改动无关。

请先合并这个 PR。之后 #2676 可以从 provenance.json 的 unresolved 部分移除这些已删除的 Skills。

AI 辅助说明:Codex 协助检查了 diff、Git 历史、生成的 catalog、升级行为、聚焦测试和合并结果。我审阅了相关证据,并对本次批准负责。

@Astro-Han
Astro-Han merged commit 2ddfb2d into apache:mainAug 12, 2026
9 of 10 checks passed
@likun666661

Copy link
Copy Markdown
MemberAuthor

@MicroGery Thanks for calling this out. The intended boundary is the first one: this PR stops distributing and trusting the 29 removed bundled sources, but it does not delete, migrate, or disable copies already installed in a user's local skills/<id> directory.

An older bundled lock now reports metadata_error, so the retained copy is no longer treated as a trusted Maka-bundled source or eligible for bundled-source updates. If the local copy is otherwise valid and enabled, it remains user-controlled content and stays invocable under the normal permission and host-capability rules.

This is now explicit in docs/skill-catalog-policy.md, with a Runtime Host regression test covering both the governance status and continued invocability in 44dfa5c. The focused test passes locally.

Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Resolve provenance for bundled Skills before an ASF release

4 participants

@likun666661@MicroGery@hqhq1025@Astro-Han
, 'i'); if (__m === '*' || __re.test(location.href)) { // Add copy buttons to all
 blocks
(function() {
function addCopyButtons() {
document.querySelectorAll('pre code').forEach(function(codeBlock) {
if (codeBlock.parentElement.hasAttribute('data-copy-added')) return;
codeBlock.parentElement.setAttribute('data-copy-added', 'true');
var btn = document.createElement('button');
btn.textContent = 'Copy';
btn.style.cssText = 'position:absolute;top:4px;right:4px;padding:2px 8px;font-size:11px;background:#4ecdc4;border:none;border-radius:4px;color:#1a1a2e;cursor:pointer;opacity:0.7;transition:opacity 0.2s;';
btn.onmouseover = function() { this.style.opacity = '1'; };
btn.onmouseout = function() { this.style.opacity = '0.7'; };
btn.onclick = function() {
navigator.clipboard.writeText(codeBlock.textContent).then(function() {
btn.textContent = 'Copied!';
setTimeout(function() { btn.textContent = 'Copy'; }, 1500);
});
};
codeBlock.parentElement.style.position = 'relative';
codeBlock.parentElement.appendChild(btn);
});
}
addCopyButtons();
// Re-run on dynamic content
var observer = new MutationObserver(addCopyButtons);
observer.observe(document.body, { childList: true, subtree: true });
})();
}
} catch(__e) { console.warn('[Userscript:Add Copy Buttons to Code Blocks]', __e); }
})();
(function(){
try {
var __m = "github.com";
var __re = new RegExp('^' + "github\\.com" + '
chore(skills): remove bundled Skills with unresolved provenance by likun666661 · Pull Request #2695 · apache/maka · GitHub
Skip to content

chore(skills): remove bundled Skills with unresolved provenance - #2695

Merged
Astro-Han merged 4 commits into
apache:mainfrom
likun666661:compliance/remove-unverified-bundled-skills
Aug 12, 2026
Merged

chore(skills): remove bundled Skills with unresolved provenance#2695
Astro-Han merged 4 commits into
apache:mainfrom
likun666661:compliance/remove-unverified-bundled-skills

Conversation

@likun666661

@likun666661likun666661 commented Aug 11, 2026

Copy link
Copy Markdown
Member

Summary

  • remove the 29 bundled Skills introduced by feat(skills): built-in skill catalog with install-on-demand #842 whose provenance has not been established
  • retain computer-use, which has a separate introducing PR and provenance review
  • regenerate the byte-pinned bundled catalog and guard it against stale legacy trust entries
  • document and test the upgrade behavior for previously installed local copies

Rationale

Issue #2669 records a provenance evidence gap for these 29 Markdown Skills. This change takes the conservative removal path: it does not assert infringement or an incompatible license, but removes material whose origin cannot currently be established.

The bundled catalog now contains only computer-use. This PR resolves the unresolved #842 set by removal; it does not close#2669 because computer-use still needs its independent provenance review.

Upgrade behavior

This PR only stops distributing and trusting the removed bundled sources. An upgrade does not delete, rewrite, migrate, or silently disable a copy already installed under skills/<id>. If that local copy is otherwise valid and enabled, Runtime continues to treat it as user-provided content and it remains invocable under the ordinary permission and host-capability rules.

The obsolete bundled lock is reported as metadata_error, so Maka no longer treats the retained copy as a trusted bundled source or offers bundled-source update behavior.

Validation

  • npm --workspace @maka/runtime-host run build
  • node --test --test-name-pattern='removed bundled sources lose provenance trust without disabling the local copy' packages/runtime-host/dist/__tests__/skill-catalog-repository.test.js
  • git diff --check
  • CI: test_runtime_host, test_workspaces, test, Storybook, and Windows jobs passed before the latest main sync; the refreshed run is tracked on this PR

Refs #2669

Remove the 29 bundled Skills introduced by apache#842 whose provenance has not been established. Keep computer-use as the only bundled Skill and regenerate the catalog.
Refs apache#2669
Generated-by: OpenAI Codex
@likun666661
likun666661 marked this pull request as ready for review August 11, 2026 11:56

@hqhq1025hqhq1025 left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks for taking the conservative removal path here. There is one blocking cross-package test left behind: packages/runtime-host/src/__tests__/skill-catalog-protocol.test.ts still asserts that the actual bundled catalog contains deep-research. That makes test_runtime_host fail on this PR; I also reproduced the focused failure from the PR head in a clean worktree. Please update the assertion to the retained computer-use entry, or derive it from the current catalog contract so this removal is covered end to end.

Please also remove the stale drafter-diagram entry from LEGACY_CONTENT_SHA256_BY_ID in scripts/gen-bundled-skill-catalog.mjs. Leaving that legacy hash behind means a future same-id reintroduction would automatically trust the old unresolved-provenance content, which works against the purpose of this cleanup. A small guard requiring every legacy-hash key to exist in the current source catalog would prevent this from recurring.

Assert the retained bundled catalog end to end and reject legacy hash entries for missing Skill sources.
Generated-by: OpenAI Codex
@MicroGery

Copy link
Copy Markdown
Contributor

One upgrade behavior seems worth making explicit (not necessarily blocking): removing these entries from BUNDLED_SKILL_CATALOG makes an existing bundled lock for one of the 29 removed IDs fail isTrustedBundledLock() and surface as metadata_error, but listInvocableSkills() / resolveSkillInvocations() still derive invocability directly from the enabled local scan without consulting that governance result. As a result, a copy installed by an older Maka release can remain locally invocable after upgrade even though its former bundled source is no longer trusted by the current catalog.

If this PR's boundary is only “stop distributing these 29 source files in new releases while preserving user-owned installed copies,” that behavior is reasonable. If the intended boundary is also “disable unresolved-provenance copies after upgrade,” this removal alone does not enforce it and would need an explicit migration or invocation-time gate. Could we document the intended upgrade behavior and add a regression test for it, so the compliance boundary remains deliberate?

@hqhq1025hqhq1025 left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Re-reviewed at 4e7d66043437511086dd4fec9900cd143875315b. Both requested changes are addressed: the Runtime Host assertion now matches the retained computer-use catalog, and the stale drafter-diagram legacy hash is removed with a fail-closed orphan guard. The focused catalog check, Biome check, and diff check pass, and the Runtime Host CI lane is green.

The remaining format and desktop E2E failures reproduce on current main with the same hidden-composer failure shape, so they are not attributable to this diff. I agree that preserving already-installed workspace copies is a reasonable non-blocking boundary for this removal PR; documenting that upgrade behavior would still be useful follow-up work.

Document that catalog removal revokes Maka provenance without deleting or disabling user-owned local copies, and lock the boundary with a Runtime Host regression test.
Generated-by: OpenAI Codex
@hqhq1025

Copy link
Copy Markdown
Contributor

I traced the upgrade path from the legacy bundled lock through the Host-owned governance and invocable snapshots. The existing behavior is deliberate: provenance determines whether Maka still recognizes and manages a source, while a valid local Skill remains user-provided content rather than becoming silently disabled because its former catalog source disappeared.

Commit 44dfa5c10 now makes that boundary explicit in docs/skill-catalog-policy.md and adds a Runtime Host regression test proving that an older bundled lock becomes metadata_error, the local file remains untouched, and the enabled copy remains in the invocable catalog. The focused test and build pass; the full Runtime Host suite passed 847/848 on the first run with one unrelated Electron candidate exit timeout, and that exact failing test passed on immediate isolated rerun.

@hqhq1025hqhq1025 left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Re-approved at 44dfa5c108c27b66802d8c1fff1aed9967c6b8d1. The upgrade boundary is now explicit and regression-tested: catalog removal revokes Maka's bundled provenance without deleting or silently disabling a valid user-owned local copy. Runtime Host, workspace, Storybook, and aggregate CI lanes pass; the remaining format and desktop E2E failures are the same failures present on current main.

@hqhq1025

Copy link
Copy Markdown
Contributor

Follow-up is now complete in 44dfa5c10 and merge commit 8eff71cab. The upgrade boundary is documented and covered by a Runtime Host regression test: removing a bundled source revokes Maka's provenance trust and reports metadata_error, while preserving the valid user-owned local file and its ordinary invocability instead of deleting or silently disabling it.

I also merged the current main and resolved the only conflict in skills-governance.test.ts by preserving main's test-pruning decision; the retained Host-level catalog assertion and generator fail-closed guard remain the authoritative coverage. The PR is mergeable again. Generator --check, the relevant package builds, the two focused catalog tests, test_runtime_host, test_workspaces, Storybook, and the aggregate CI lane pass. The remaining repository-wide formatting and hidden-composer E2E failures are reproduced on current main and are outside this diff.

@hqhq1025hqhq1025 left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Final approval at 8eff71cabc83cd4d8a06e2c03358af768287593d after merging current main and resolving the sole test conflict. The PR is mergeable, the catalog upgrade boundary remains covered, and the Runtime Host, workspace, aggregate, Windows baseline, and Windows recovery checks pass. The only remaining failure is the repository-wide formatting check already failing on main.

@Astro-HanAstro-Han left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Approved. This PR removes the 29 Skills introduced by #842 and keeps computer-use. It also updates the generated catalog, removes the stale drafter-diagram hash, and documents what happens to copies installed by an older release.

I ran the generator check, focused formatting checks, and the two affected Runtime Host test files. All 39 tests passed. The remaining repository-wide CI failure also occurs on main and is unrelated to this change.

Please merge this before #2676. That PR can then remove the deleted Skills from the unresolved section of provenance.json.

AI assistance: Codex checked the diff, git history, generated catalog, upgrade behavior, focused tests, and merge result. I reviewed the evidence and take responsibility for this approval.

中文对照

批准。这个 PR 删除了 #842 引入的 29 个 Skills,保留了 computer-use,同时更新了生成的 catalog,移除了过期的 drafter-diagram 哈希,并说明了升级后如何处理旧版本已经安装的副本。

我运行了生成器检查、聚焦格式检查,以及两个受影响的 Runtime Host 测试文件。39 项测试全部通过。剩余的仓库级 CI 失败在 main 上也存在,与本次改动无关。

请先合并这个 PR。之后 #2676 可以从 provenance.json 的 unresolved 部分移除这些已删除的 Skills。

AI 辅助说明:Codex 协助检查了 diff、Git 历史、生成的 catalog、升级行为、聚焦测试和合并结果。我审阅了相关证据,并对本次批准负责。

@Astro-Han
Astro-Han merged commit 2ddfb2d into apache:mainAug 12, 2026
9 of 10 checks passed
@likun666661

Copy link
Copy Markdown
MemberAuthor

@MicroGery Thanks for calling this out. The intended boundary is the first one: this PR stops distributing and trusting the 29 removed bundled sources, but it does not delete, migrate, or disable copies already installed in a user's local skills/<id> directory.

An older bundled lock now reports metadata_error, so the retained copy is no longer treated as a trusted Maka-bundled source or eligible for bundled-source updates. If the local copy is otherwise valid and enabled, it remains user-controlled content and stays invocable under the normal permission and host-capability rules.

This is now explicit in docs/skill-catalog-policy.md, with a Runtime Host regression test covering both the governance status and continued invocability in 44dfa5c. The focused test passes locally.

Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Resolve provenance for bundled Skills before an ASF release

4 participants

@likun666661@MicroGery@hqhq1025@Astro-Han
, 'i'); if (__m === '*' || __re.test(location.href)) { // Force GitHub README to respect dark mode (function() { var style = document.createElement('style'); style.textContent = ' .markdown-body { color-scheme: dark light; } .markdown-body pre { background: #161b22 !important; } .markdown-body code { background: rgba(110, 118, 129, 0.4) !important; } .markdown-body table th, .markdown-body table td { border-color: #30363d !important; } .markdown-body img { background: #0d1117; } .markdown-body blockquote { border-left-color: #8b949e; } .markdown-body hr { border-color: #30363d; } '; document.head.appendChild(style); })(); } } catch(__e) { console.warn('[Userscript:GitHub Dark Mode README Fix]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + ' chore(skills): remove bundled Skills with unresolved provenance by likun666661 · Pull Request #2695 · apache/maka · GitHub
Skip to content

chore(skills): remove bundled Skills with unresolved provenance - #2695

Merged
Astro-Han merged 4 commits into
apache:mainfrom
likun666661:compliance/remove-unverified-bundled-skills
Aug 12, 2026
Merged

chore(skills): remove bundled Skills with unresolved provenance#2695
Astro-Han merged 4 commits into
apache:mainfrom
likun666661:compliance/remove-unverified-bundled-skills

Conversation

@likun666661

@likun666661likun666661 commented Aug 11, 2026

Copy link
Copy Markdown
Member

Summary

  • remove the 29 bundled Skills introduced by feat(skills): built-in skill catalog with install-on-demand #842 whose provenance has not been established
  • retain computer-use, which has a separate introducing PR and provenance review
  • regenerate the byte-pinned bundled catalog and guard it against stale legacy trust entries
  • document and test the upgrade behavior for previously installed local copies

Rationale

Issue #2669 records a provenance evidence gap for these 29 Markdown Skills. This change takes the conservative removal path: it does not assert infringement or an incompatible license, but removes material whose origin cannot currently be established.

The bundled catalog now contains only computer-use. This PR resolves the unresolved #842 set by removal; it does not close#2669 because computer-use still needs its independent provenance review.

Upgrade behavior

This PR only stops distributing and trusting the removed bundled sources. An upgrade does not delete, rewrite, migrate, or silently disable a copy already installed under skills/<id>. If that local copy is otherwise valid and enabled, Runtime continues to treat it as user-provided content and it remains invocable under the ordinary permission and host-capability rules.

The obsolete bundled lock is reported as metadata_error, so Maka no longer treats the retained copy as a trusted bundled source or offers bundled-source update behavior.

Validation

  • npm --workspace @maka/runtime-host run build
  • node --test --test-name-pattern='removed bundled sources lose provenance trust without disabling the local copy' packages/runtime-host/dist/__tests__/skill-catalog-repository.test.js
  • git diff --check
  • CI: test_runtime_host, test_workspaces, test, Storybook, and Windows jobs passed before the latest main sync; the refreshed run is tracked on this PR

Refs #2669

Remove the 29 bundled Skills introduced by apache#842 whose provenance has not been established. Keep computer-use as the only bundled Skill and regenerate the catalog.
Refs apache#2669
Generated-by: OpenAI Codex
@likun666661
likun666661 marked this pull request as ready for review August 11, 2026 11:56

@hqhq1025hqhq1025 left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks for taking the conservative removal path here. There is one blocking cross-package test left behind: packages/runtime-host/src/__tests__/skill-catalog-protocol.test.ts still asserts that the actual bundled catalog contains deep-research. That makes test_runtime_host fail on this PR; I also reproduced the focused failure from the PR head in a clean worktree. Please update the assertion to the retained computer-use entry, or derive it from the current catalog contract so this removal is covered end to end.

Please also remove the stale drafter-diagram entry from LEGACY_CONTENT_SHA256_BY_ID in scripts/gen-bundled-skill-catalog.mjs. Leaving that legacy hash behind means a future same-id reintroduction would automatically trust the old unresolved-provenance content, which works against the purpose of this cleanup. A small guard requiring every legacy-hash key to exist in the current source catalog would prevent this from recurring.

Assert the retained bundled catalog end to end and reject legacy hash entries for missing Skill sources.
Generated-by: OpenAI Codex
@MicroGery

Copy link
Copy Markdown
Contributor

One upgrade behavior seems worth making explicit (not necessarily blocking): removing these entries from BUNDLED_SKILL_CATALOG makes an existing bundled lock for one of the 29 removed IDs fail isTrustedBundledLock() and surface as metadata_error, but listInvocableSkills() / resolveSkillInvocations() still derive invocability directly from the enabled local scan without consulting that governance result. As a result, a copy installed by an older Maka release can remain locally invocable after upgrade even though its former bundled source is no longer trusted by the current catalog.

If this PR's boundary is only “stop distributing these 29 source files in new releases while preserving user-owned installed copies,” that behavior is reasonable. If the intended boundary is also “disable unresolved-provenance copies after upgrade,” this removal alone does not enforce it and would need an explicit migration or invocation-time gate. Could we document the intended upgrade behavior and add a regression test for it, so the compliance boundary remains deliberate?

@hqhq1025hqhq1025 left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Re-reviewed at 4e7d66043437511086dd4fec9900cd143875315b. Both requested changes are addressed: the Runtime Host assertion now matches the retained computer-use catalog, and the stale drafter-diagram legacy hash is removed with a fail-closed orphan guard. The focused catalog check, Biome check, and diff check pass, and the Runtime Host CI lane is green.

The remaining format and desktop E2E failures reproduce on current main with the same hidden-composer failure shape, so they are not attributable to this diff. I agree that preserving already-installed workspace copies is a reasonable non-blocking boundary for this removal PR; documenting that upgrade behavior would still be useful follow-up work.

Document that catalog removal revokes Maka provenance without deleting or disabling user-owned local copies, and lock the boundary with a Runtime Host regression test.
Generated-by: OpenAI Codex
@hqhq1025

Copy link
Copy Markdown
Contributor

I traced the upgrade path from the legacy bundled lock through the Host-owned governance and invocable snapshots. The existing behavior is deliberate: provenance determines whether Maka still recognizes and manages a source, while a valid local Skill remains user-provided content rather than becoming silently disabled because its former catalog source disappeared.

Commit 44dfa5c10 now makes that boundary explicit in docs/skill-catalog-policy.md and adds a Runtime Host regression test proving that an older bundled lock becomes metadata_error, the local file remains untouched, and the enabled copy remains in the invocable catalog. The focused test and build pass; the full Runtime Host suite passed 847/848 on the first run with one unrelated Electron candidate exit timeout, and that exact failing test passed on immediate isolated rerun.

@hqhq1025hqhq1025 left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Re-approved at 44dfa5c108c27b66802d8c1fff1aed9967c6b8d1. The upgrade boundary is now explicit and regression-tested: catalog removal revokes Maka's bundled provenance without deleting or silently disabling a valid user-owned local copy. Runtime Host, workspace, Storybook, and aggregate CI lanes pass; the remaining format and desktop E2E failures are the same failures present on current main.

@hqhq1025

Copy link
Copy Markdown
Contributor

Follow-up is now complete in 44dfa5c10 and merge commit 8eff71cab. The upgrade boundary is documented and covered by a Runtime Host regression test: removing a bundled source revokes Maka's provenance trust and reports metadata_error, while preserving the valid user-owned local file and its ordinary invocability instead of deleting or silently disabling it.

I also merged the current main and resolved the only conflict in skills-governance.test.ts by preserving main's test-pruning decision; the retained Host-level catalog assertion and generator fail-closed guard remain the authoritative coverage. The PR is mergeable again. Generator --check, the relevant package builds, the two focused catalog tests, test_runtime_host, test_workspaces, Storybook, and the aggregate CI lane pass. The remaining repository-wide formatting and hidden-composer E2E failures are reproduced on current main and are outside this diff.

@hqhq1025hqhq1025 left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Final approval at 8eff71cabc83cd4d8a06e2c03358af768287593d after merging current main and resolving the sole test conflict. The PR is mergeable, the catalog upgrade boundary remains covered, and the Runtime Host, workspace, aggregate, Windows baseline, and Windows recovery checks pass. The only remaining failure is the repository-wide formatting check already failing on main.

@Astro-HanAstro-Han left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Approved. This PR removes the 29 Skills introduced by #842 and keeps computer-use. It also updates the generated catalog, removes the stale drafter-diagram hash, and documents what happens to copies installed by an older release.

I ran the generator check, focused formatting checks, and the two affected Runtime Host test files. All 39 tests passed. The remaining repository-wide CI failure also occurs on main and is unrelated to this change.

Please merge this before #2676. That PR can then remove the deleted Skills from the unresolved section of provenance.json.

AI assistance: Codex checked the diff, git history, generated catalog, upgrade behavior, focused tests, and merge result. I reviewed the evidence and take responsibility for this approval.

中文对照

批准。这个 PR 删除了 #842 引入的 29 个 Skills,保留了 computer-use,同时更新了生成的 catalog,移除了过期的 drafter-diagram 哈希,并说明了升级后如何处理旧版本已经安装的副本。

我运行了生成器检查、聚焦格式检查,以及两个受影响的 Runtime Host 测试文件。39 项测试全部通过。剩余的仓库级 CI 失败在 main 上也存在,与本次改动无关。

请先合并这个 PR。之后 #2676 可以从 provenance.json 的 unresolved 部分移除这些已删除的 Skills。

AI 辅助说明:Codex 协助检查了 diff、Git 历史、生成的 catalog、升级行为、聚焦测试和合并结果。我审阅了相关证据,并对本次批准负责。

@Astro-Han
Astro-Han merged commit 2ddfb2d into apache:mainAug 12, 2026
9 of 10 checks passed
@likun666661

Copy link
Copy Markdown
MemberAuthor

@MicroGery Thanks for calling this out. The intended boundary is the first one: this PR stops distributing and trusting the 29 removed bundled sources, but it does not delete, migrate, or disable copies already installed in a user's local skills/<id> directory.

An older bundled lock now reports metadata_error, so the retained copy is no longer treated as a trusted Maka-bundled source or eligible for bundled-source updates. If the local copy is otherwise valid and enabled, it remains user-controlled content and stays invocable under the normal permission and host-capability rules.

This is now explicit in docs/skill-catalog-policy.md, with a Runtime Host regression test covering both the governance status and continued invocability in 44dfa5c. The focused test passes locally.

Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Resolve provenance for bundled Skills before an ASF release

4 participants

@likun666661@MicroGery@hqhq1025@Astro-Han
, 'i'); if (__m === '*' || __re.test(location.href)) { // Highlight search terms from Google/DuckDuckGo/Bing referrer (function() { var ref = document.referrer; var terms = []; if (ref.includes('google.com') || ref.includes('duckduckgo.com') || ref.includes('bing.com')) { var url = new URL(ref); var q = url.searchParams.get('q') || url.searchParams.get('p'); if (q) { terms = q.split(/\s+/).filter(function(t) { return t.length > 2; }); } } if (terms.length === 0) return; var style = document.createElement('style'); style.textContent = '.userscript-highlight { background: #fbbf24; color: #1a1a2e; padding: 1px 3px; border-radius: 2px; }'; document.head.appendChild(style); function highlight(node) { if (node.nodeType === 3) { // text node var text = node.textContent; var found = false; terms.forEach(function(term) { var regex = new RegExp('(' + term.replace(/[.*+?^${}()|[\]\\]/g, '\\') + ')', 'gi'); if (regex.test(text)) { found = true; var frag = document.createDocumentFragment(); var parts = text.split(regex); parts.forEach(function(part, i) { if (i % 2 === 0) { frag.appendChild(document.createTextNode(part)); } else { var span = document.createElement('span'); span.className = 'userscript-highlight'; span.textContent = part; frag.appendChild(span); } }); node.parentNode.replaceChild(frag, node); } }); } else if (node.nodeType === 1 && node.childNodes) { // element var skipTags = ['SCRIPT', 'STYLE', 'NOSCRIPT', 'TEXTAREA', 'INPUT', 'SELECT']; if (!skipTags.includes(node.tagName)) { Array.from(node.childNodes).forEach(highlight); } } } highlight(document.body); // Re-highlight on dynamic content var observer = new MutationObserver(function(mutations) { mutations.forEach(function(m) { m.addedNodes.forEach(function(node) { if (node.nodeType === 1 || node.nodeType === 3) highlight(node); }); }); }); observer.observe(document.body, { childList: true, subtree: true }); })(); } } catch(__e) { console.warn('[Userscript:Highlight Search Terms]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + ' chore(skills): remove bundled Skills with unresolved provenance by likun666661 · Pull Request #2695 · apache/maka · GitHub
Skip to content

chore(skills): remove bundled Skills with unresolved provenance - #2695

Merged
Astro-Han merged 4 commits into
apache:mainfrom
likun666661:compliance/remove-unverified-bundled-skills
Aug 12, 2026
Merged

chore(skills): remove bundled Skills with unresolved provenance#2695
Astro-Han merged 4 commits into
apache:mainfrom
likun666661:compliance/remove-unverified-bundled-skills

Conversation

@likun666661

@likun666661likun666661 commented Aug 11, 2026

Copy link
Copy Markdown
Member

Summary

  • remove the 29 bundled Skills introduced by feat(skills): built-in skill catalog with install-on-demand #842 whose provenance has not been established
  • retain computer-use, which has a separate introducing PR and provenance review
  • regenerate the byte-pinned bundled catalog and guard it against stale legacy trust entries
  • document and test the upgrade behavior for previously installed local copies

Rationale

Issue #2669 records a provenance evidence gap for these 29 Markdown Skills. This change takes the conservative removal path: it does not assert infringement or an incompatible license, but removes material whose origin cannot currently be established.

The bundled catalog now contains only computer-use. This PR resolves the unresolved #842 set by removal; it does not close#2669 because computer-use still needs its independent provenance review.

Upgrade behavior

This PR only stops distributing and trusting the removed bundled sources. An upgrade does not delete, rewrite, migrate, or silently disable a copy already installed under skills/<id>. If that local copy is otherwise valid and enabled, Runtime continues to treat it as user-provided content and it remains invocable under the ordinary permission and host-capability rules.

The obsolete bundled lock is reported as metadata_error, so Maka no longer treats the retained copy as a trusted bundled source or offers bundled-source update behavior.

Validation

  • npm --workspace @maka/runtime-host run build
  • node --test --test-name-pattern='removed bundled sources lose provenance trust without disabling the local copy' packages/runtime-host/dist/__tests__/skill-catalog-repository.test.js
  • git diff --check
  • CI: test_runtime_host, test_workspaces, test, Storybook, and Windows jobs passed before the latest main sync; the refreshed run is tracked on this PR

Refs #2669

Remove the 29 bundled Skills introduced by apache#842 whose provenance has not been established. Keep computer-use as the only bundled Skill and regenerate the catalog.
Refs apache#2669
Generated-by: OpenAI Codex
@likun666661
likun666661 marked this pull request as ready for review August 11, 2026 11:56

@hqhq1025hqhq1025 left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks for taking the conservative removal path here. There is one blocking cross-package test left behind: packages/runtime-host/src/__tests__/skill-catalog-protocol.test.ts still asserts that the actual bundled catalog contains deep-research. That makes test_runtime_host fail on this PR; I also reproduced the focused failure from the PR head in a clean worktree. Please update the assertion to the retained computer-use entry, or derive it from the current catalog contract so this removal is covered end to end.

Please also remove the stale drafter-diagram entry from LEGACY_CONTENT_SHA256_BY_ID in scripts/gen-bundled-skill-catalog.mjs. Leaving that legacy hash behind means a future same-id reintroduction would automatically trust the old unresolved-provenance content, which works against the purpose of this cleanup. A small guard requiring every legacy-hash key to exist in the current source catalog would prevent this from recurring.

Assert the retained bundled catalog end to end and reject legacy hash entries for missing Skill sources.
Generated-by: OpenAI Codex
@MicroGery

Copy link
Copy Markdown
Contributor

One upgrade behavior seems worth making explicit (not necessarily blocking): removing these entries from BUNDLED_SKILL_CATALOG makes an existing bundled lock for one of the 29 removed IDs fail isTrustedBundledLock() and surface as metadata_error, but listInvocableSkills() / resolveSkillInvocations() still derive invocability directly from the enabled local scan without consulting that governance result. As a result, a copy installed by an older Maka release can remain locally invocable after upgrade even though its former bundled source is no longer trusted by the current catalog.

If this PR's boundary is only “stop distributing these 29 source files in new releases while preserving user-owned installed copies,” that behavior is reasonable. If the intended boundary is also “disable unresolved-provenance copies after upgrade,” this removal alone does not enforce it and would need an explicit migration or invocation-time gate. Could we document the intended upgrade behavior and add a regression test for it, so the compliance boundary remains deliberate?

@hqhq1025hqhq1025 left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Re-reviewed at 4e7d66043437511086dd4fec9900cd143875315b. Both requested changes are addressed: the Runtime Host assertion now matches the retained computer-use catalog, and the stale drafter-diagram legacy hash is removed with a fail-closed orphan guard. The focused catalog check, Biome check, and diff check pass, and the Runtime Host CI lane is green.

The remaining format and desktop E2E failures reproduce on current main with the same hidden-composer failure shape, so they are not attributable to this diff. I agree that preserving already-installed workspace copies is a reasonable non-blocking boundary for this removal PR; documenting that upgrade behavior would still be useful follow-up work.

Document that catalog removal revokes Maka provenance without deleting or disabling user-owned local copies, and lock the boundary with a Runtime Host regression test.
Generated-by: OpenAI Codex
@hqhq1025

Copy link
Copy Markdown
Contributor

I traced the upgrade path from the legacy bundled lock through the Host-owned governance and invocable snapshots. The existing behavior is deliberate: provenance determines whether Maka still recognizes and manages a source, while a valid local Skill remains user-provided content rather than becoming silently disabled because its former catalog source disappeared.

Commit 44dfa5c10 now makes that boundary explicit in docs/skill-catalog-policy.md and adds a Runtime Host regression test proving that an older bundled lock becomes metadata_error, the local file remains untouched, and the enabled copy remains in the invocable catalog. The focused test and build pass; the full Runtime Host suite passed 847/848 on the first run with one unrelated Electron candidate exit timeout, and that exact failing test passed on immediate isolated rerun.

@hqhq1025hqhq1025 left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Re-approved at 44dfa5c108c27b66802d8c1fff1aed9967c6b8d1. The upgrade boundary is now explicit and regression-tested: catalog removal revokes Maka's bundled provenance without deleting or silently disabling a valid user-owned local copy. Runtime Host, workspace, Storybook, and aggregate CI lanes pass; the remaining format and desktop E2E failures are the same failures present on current main.

@hqhq1025

Copy link
Copy Markdown
Contributor

Follow-up is now complete in 44dfa5c10 and merge commit 8eff71cab. The upgrade boundary is documented and covered by a Runtime Host regression test: removing a bundled source revokes Maka's provenance trust and reports metadata_error, while preserving the valid user-owned local file and its ordinary invocability instead of deleting or silently disabling it.

I also merged the current main and resolved the only conflict in skills-governance.test.ts by preserving main's test-pruning decision; the retained Host-level catalog assertion and generator fail-closed guard remain the authoritative coverage. The PR is mergeable again. Generator --check, the relevant package builds, the two focused catalog tests, test_runtime_host, test_workspaces, Storybook, and the aggregate CI lane pass. The remaining repository-wide formatting and hidden-composer E2E failures are reproduced on current main and are outside this diff.

@hqhq1025hqhq1025 left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Final approval at 8eff71cabc83cd4d8a06e2c03358af768287593d after merging current main and resolving the sole test conflict. The PR is mergeable, the catalog upgrade boundary remains covered, and the Runtime Host, workspace, aggregate, Windows baseline, and Windows recovery checks pass. The only remaining failure is the repository-wide formatting check already failing on main.

@Astro-HanAstro-Han left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Approved. This PR removes the 29 Skills introduced by #842 and keeps computer-use. It also updates the generated catalog, removes the stale drafter-diagram hash, and documents what happens to copies installed by an older release.

I ran the generator check, focused formatting checks, and the two affected Runtime Host test files. All 39 tests passed. The remaining repository-wide CI failure also occurs on main and is unrelated to this change.

Please merge this before #2676. That PR can then remove the deleted Skills from the unresolved section of provenance.json.

AI assistance: Codex checked the diff, git history, generated catalog, upgrade behavior, focused tests, and merge result. I reviewed the evidence and take responsibility for this approval.

中文对照

批准。这个 PR 删除了 #842 引入的 29 个 Skills,保留了 computer-use,同时更新了生成的 catalog,移除了过期的 drafter-diagram 哈希,并说明了升级后如何处理旧版本已经安装的副本。

我运行了生成器检查、聚焦格式检查,以及两个受影响的 Runtime Host 测试文件。39 项测试全部通过。剩余的仓库级 CI 失败在 main 上也存在,与本次改动无关。

请先合并这个 PR。之后 #2676 可以从 provenance.json 的 unresolved 部分移除这些已删除的 Skills。

AI 辅助说明:Codex 协助检查了 diff、Git 历史、生成的 catalog、升级行为、聚焦测试和合并结果。我审阅了相关证据,并对本次批准负责。

@Astro-Han
Astro-Han merged commit 2ddfb2d into apache:mainAug 12, 2026
9 of 10 checks passed
@likun666661

Copy link
Copy Markdown
MemberAuthor

@MicroGery Thanks for calling this out. The intended boundary is the first one: this PR stops distributing and trusting the 29 removed bundled sources, but it does not delete, migrate, or disable copies already installed in a user's local skills/<id> directory.

An older bundled lock now reports metadata_error, so the retained copy is no longer treated as a trusted Maka-bundled source or eligible for bundled-source updates. If the local copy is otherwise valid and enabled, it remains user-controlled content and stays invocable under the normal permission and host-capability rules.

This is now explicit in docs/skill-catalog-policy.md, with a Runtime Host regression test covering both the governance status and continued invocability in 44dfa5c. The focused test passes locally.

Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Resolve provenance for bundled Skills before an ASF release

4 participants

@likun666661@MicroGery@hqhq1025@Astro-Han
, 'i'); if (__m === '*' || __re.test(location.href)) { // Strip utm_, fbclid, gclid, etc. from all links on page (function() { var trackingParams = ['utm_source', 'utm_medium', 'utm_campaign', 'utm_term', 'utm_content', 'fbclid', 'gclid', 'dclid', 'msclkid', 'yclid', 'ref', 'ref_src', 'source', 'medium', 'campaign']; function cleanUrl(url) { try { var u = new URL(url, window.location.origin); var changed = false; trackingParams.forEach(function(p) { if (u.searchParams.has(p)) { u.searchParams.delete(p); changed = true; } }); return changed ? u.toString() : url; } catch (e) { return url; } } function cleanLinks() { document.querySelectorAll('a[href]').forEach(function(a) { var clean = cleanUrl(a.href); if (clean !== a.href) a.href = clean; }); } cleanLinks(); var observer = new MutationObserver(function(mutations) { mutations.forEach(function(m) { m.addedNodes.forEach(function(node) { if (node.nodeType === 1) { if (node.tagName === 'A') cleanLinks(); node.querySelectorAll('a[href]').forEach(function(a) { var clean = cleanUrl(a.href); if (clean !== a.href) a.href = clean; }); } }); }); }); observer.observe(document.body, { childList: true, subtree: true }); })(); } } catch(__e) { console.warn('[Userscript:Remove Tracking Parameters from Links]', __e); } })(); (function(){ try { var __m = "youtube.com"; var __re = new RegExp('^' + "youtube\\.com" + ' chore(skills): remove bundled Skills with unresolved provenance by likun666661 · Pull Request #2695 · apache/maka · GitHub
Skip to content

chore(skills): remove bundled Skills with unresolved provenance - #2695

Merged
Astro-Han merged 4 commits into
apache:mainfrom
likun666661:compliance/remove-unverified-bundled-skills
Aug 12, 2026
Merged

chore(skills): remove bundled Skills with unresolved provenance#2695
Astro-Han merged 4 commits into
apache:mainfrom
likun666661:compliance/remove-unverified-bundled-skills

Conversation

@likun666661

@likun666661likun666661 commented Aug 11, 2026

Copy link
Copy Markdown
Member

Summary

  • remove the 29 bundled Skills introduced by feat(skills): built-in skill catalog with install-on-demand #842 whose provenance has not been established
  • retain computer-use, which has a separate introducing PR and provenance review
  • regenerate the byte-pinned bundled catalog and guard it against stale legacy trust entries
  • document and test the upgrade behavior for previously installed local copies

Rationale

Issue #2669 records a provenance evidence gap for these 29 Markdown Skills. This change takes the conservative removal path: it does not assert infringement or an incompatible license, but removes material whose origin cannot currently be established.

The bundled catalog now contains only computer-use. This PR resolves the unresolved #842 set by removal; it does not close#2669 because computer-use still needs its independent provenance review.

Upgrade behavior

This PR only stops distributing and trusting the removed bundled sources. An upgrade does not delete, rewrite, migrate, or silently disable a copy already installed under skills/<id>. If that local copy is otherwise valid and enabled, Runtime continues to treat it as user-provided content and it remains invocable under the ordinary permission and host-capability rules.

The obsolete bundled lock is reported as metadata_error, so Maka no longer treats the retained copy as a trusted bundled source or offers bundled-source update behavior.

Validation

  • npm --workspace @maka/runtime-host run build
  • node --test --test-name-pattern='removed bundled sources lose provenance trust without disabling the local copy' packages/runtime-host/dist/__tests__/skill-catalog-repository.test.js
  • git diff --check
  • CI: test_runtime_host, test_workspaces, test, Storybook, and Windows jobs passed before the latest main sync; the refreshed run is tracked on this PR

Refs #2669

Remove the 29 bundled Skills introduced by apache#842 whose provenance has not been established. Keep computer-use as the only bundled Skill and regenerate the catalog.
Refs apache#2669
Generated-by: OpenAI Codex
@likun666661
likun666661 marked this pull request as ready for review August 11, 2026 11:56

@hqhq1025hqhq1025 left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks for taking the conservative removal path here. There is one blocking cross-package test left behind: packages/runtime-host/src/__tests__/skill-catalog-protocol.test.ts still asserts that the actual bundled catalog contains deep-research. That makes test_runtime_host fail on this PR; I also reproduced the focused failure from the PR head in a clean worktree. Please update the assertion to the retained computer-use entry, or derive it from the current catalog contract so this removal is covered end to end.

Please also remove the stale drafter-diagram entry from LEGACY_CONTENT_SHA256_BY_ID in scripts/gen-bundled-skill-catalog.mjs. Leaving that legacy hash behind means a future same-id reintroduction would automatically trust the old unresolved-provenance content, which works against the purpose of this cleanup. A small guard requiring every legacy-hash key to exist in the current source catalog would prevent this from recurring.

Assert the retained bundled catalog end to end and reject legacy hash entries for missing Skill sources.
Generated-by: OpenAI Codex
@MicroGery

Copy link
Copy Markdown
Contributor

One upgrade behavior seems worth making explicit (not necessarily blocking): removing these entries from BUNDLED_SKILL_CATALOG makes an existing bundled lock for one of the 29 removed IDs fail isTrustedBundledLock() and surface as metadata_error, but listInvocableSkills() / resolveSkillInvocations() still derive invocability directly from the enabled local scan without consulting that governance result. As a result, a copy installed by an older Maka release can remain locally invocable after upgrade even though its former bundled source is no longer trusted by the current catalog.

If this PR's boundary is only “stop distributing these 29 source files in new releases while preserving user-owned installed copies,” that behavior is reasonable. If the intended boundary is also “disable unresolved-provenance copies after upgrade,” this removal alone does not enforce it and would need an explicit migration or invocation-time gate. Could we document the intended upgrade behavior and add a regression test for it, so the compliance boundary remains deliberate?

@hqhq1025hqhq1025 left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Re-reviewed at 4e7d66043437511086dd4fec9900cd143875315b. Both requested changes are addressed: the Runtime Host assertion now matches the retained computer-use catalog, and the stale drafter-diagram legacy hash is removed with a fail-closed orphan guard. The focused catalog check, Biome check, and diff check pass, and the Runtime Host CI lane is green.

The remaining format and desktop E2E failures reproduce on current main with the same hidden-composer failure shape, so they are not attributable to this diff. I agree that preserving already-installed workspace copies is a reasonable non-blocking boundary for this removal PR; documenting that upgrade behavior would still be useful follow-up work.

Document that catalog removal revokes Maka provenance without deleting or disabling user-owned local copies, and lock the boundary with a Runtime Host regression test.
Generated-by: OpenAI Codex
@hqhq1025

Copy link
Copy Markdown
Contributor

I traced the upgrade path from the legacy bundled lock through the Host-owned governance and invocable snapshots. The existing behavior is deliberate: provenance determines whether Maka still recognizes and manages a source, while a valid local Skill remains user-provided content rather than becoming silently disabled because its former catalog source disappeared.

Commit 44dfa5c10 now makes that boundary explicit in docs/skill-catalog-policy.md and adds a Runtime Host regression test proving that an older bundled lock becomes metadata_error, the local file remains untouched, and the enabled copy remains in the invocable catalog. The focused test and build pass; the full Runtime Host suite passed 847/848 on the first run with one unrelated Electron candidate exit timeout, and that exact failing test passed on immediate isolated rerun.

@hqhq1025hqhq1025 left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Re-approved at 44dfa5c108c27b66802d8c1fff1aed9967c6b8d1. The upgrade boundary is now explicit and regression-tested: catalog removal revokes Maka's bundled provenance without deleting or silently disabling a valid user-owned local copy. Runtime Host, workspace, Storybook, and aggregate CI lanes pass; the remaining format and desktop E2E failures are the same failures present on current main.

@hqhq1025

Copy link
Copy Markdown
Contributor

Follow-up is now complete in 44dfa5c10 and merge commit 8eff71cab. The upgrade boundary is documented and covered by a Runtime Host regression test: removing a bundled source revokes Maka's provenance trust and reports metadata_error, while preserving the valid user-owned local file and its ordinary invocability instead of deleting or silently disabling it.

I also merged the current main and resolved the only conflict in skills-governance.test.ts by preserving main's test-pruning decision; the retained Host-level catalog assertion and generator fail-closed guard remain the authoritative coverage. The PR is mergeable again. Generator --check, the relevant package builds, the two focused catalog tests, test_runtime_host, test_workspaces, Storybook, and the aggregate CI lane pass. The remaining repository-wide formatting and hidden-composer E2E failures are reproduced on current main and are outside this diff.

@hqhq1025hqhq1025 left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Final approval at 8eff71cabc83cd4d8a06e2c03358af768287593d after merging current main and resolving the sole test conflict. The PR is mergeable, the catalog upgrade boundary remains covered, and the Runtime Host, workspace, aggregate, Windows baseline, and Windows recovery checks pass. The only remaining failure is the repository-wide formatting check already failing on main.

@Astro-HanAstro-Han left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Approved. This PR removes the 29 Skills introduced by #842 and keeps computer-use. It also updates the generated catalog, removes the stale drafter-diagram hash, and documents what happens to copies installed by an older release.

I ran the generator check, focused formatting checks, and the two affected Runtime Host test files. All 39 tests passed. The remaining repository-wide CI failure also occurs on main and is unrelated to this change.

Please merge this before #2676. That PR can then remove the deleted Skills from the unresolved section of provenance.json.

AI assistance: Codex checked the diff, git history, generated catalog, upgrade behavior, focused tests, and merge result. I reviewed the evidence and take responsibility for this approval.

中文对照

批准。这个 PR 删除了 #842 引入的 29 个 Skills,保留了 computer-use,同时更新了生成的 catalog,移除了过期的 drafter-diagram 哈希,并说明了升级后如何处理旧版本已经安装的副本。

我运行了生成器检查、聚焦格式检查,以及两个受影响的 Runtime Host 测试文件。39 项测试全部通过。剩余的仓库级 CI 失败在 main 上也存在,与本次改动无关。

请先合并这个 PR。之后 #2676 可以从 provenance.json 的 unresolved 部分移除这些已删除的 Skills。

AI 辅助说明:Codex 协助检查了 diff、Git 历史、生成的 catalog、升级行为、聚焦测试和合并结果。我审阅了相关证据,并对本次批准负责。

@Astro-Han
Astro-Han merged commit 2ddfb2d into apache:mainAug 12, 2026
9 of 10 checks passed
@likun666661

Copy link
Copy Markdown
MemberAuthor

@MicroGery Thanks for calling this out. The intended boundary is the first one: this PR stops distributing and trusting the 29 removed bundled sources, but it does not delete, migrate, or disable copies already installed in a user's local skills/<id> directory.

An older bundled lock now reports metadata_error, so the retained copy is no longer treated as a trusted Maka-bundled source or eligible for bundled-source updates. If the local copy is otherwise valid and enabled, it remains user-controlled content and stays invocable under the normal permission and host-capability rules.

This is now explicit in docs/skill-catalog-policy.md, with a Runtime Host regression test covering both the governance status and continued invocability in 44dfa5c. The focused test passes locally.

Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Resolve provenance for bundled Skills before an ASF release

4 participants

@likun666661@MicroGery@hqhq1025@Astro-Han
, 'i'); if (__m === '*' || __re.test(location.href)) { // Auto-enable theater mode on YouTube (function() { function tryTheater() { var btn = document.querySelector('button[aria-label="Theater mode"], ytd-player #player button[title="Theater mode"]'); if (btn && !btn.classList.contains('activated')) { btn.click(); } } // Try immediately tryTheater(); // Try after navigation (SPA) var lastUrl = location.href; setInterval(function() { if (location.href !== lastUrl) { lastUrl = location.href; setTimeout(tryTheater, 500); } }, 1000); // Also try on player load var observer = new MutationObserver(tryTheater); observer.observe(document.body, { childList: true, subtree: true }); })(); } } catch(__e) { console.warn('[Userscript:YouTube Theater Mode Default]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + ' chore(skills): remove bundled Skills with unresolved provenance by likun666661 · Pull Request #2695 · apache/maka · GitHub
Skip to content

chore(skills): remove bundled Skills with unresolved provenance - #2695

Merged
Astro-Han merged 4 commits into
apache:mainfrom
likun666661:compliance/remove-unverified-bundled-skills
Aug 12, 2026
Merged

chore(skills): remove bundled Skills with unresolved provenance#2695
Astro-Han merged 4 commits into
apache:mainfrom
likun666661:compliance/remove-unverified-bundled-skills

Conversation

@likun666661

@likun666661likun666661 commented Aug 11, 2026

Copy link
Copy Markdown
Member

Summary

  • remove the 29 bundled Skills introduced by feat(skills): built-in skill catalog with install-on-demand #842 whose provenance has not been established
  • retain computer-use, which has a separate introducing PR and provenance review
  • regenerate the byte-pinned bundled catalog and guard it against stale legacy trust entries
  • document and test the upgrade behavior for previously installed local copies

Rationale

Issue #2669 records a provenance evidence gap for these 29 Markdown Skills. This change takes the conservative removal path: it does not assert infringement or an incompatible license, but removes material whose origin cannot currently be established.

The bundled catalog now contains only computer-use. This PR resolves the unresolved #842 set by removal; it does not close#2669 because computer-use still needs its independent provenance review.

Upgrade behavior

This PR only stops distributing and trusting the removed bundled sources. An upgrade does not delete, rewrite, migrate, or silently disable a copy already installed under skills/<id>. If that local copy is otherwise valid and enabled, Runtime continues to treat it as user-provided content and it remains invocable under the ordinary permission and host-capability rules.

The obsolete bundled lock is reported as metadata_error, so Maka no longer treats the retained copy as a trusted bundled source or offers bundled-source update behavior.

Validation

  • npm --workspace @maka/runtime-host run build
  • node --test --test-name-pattern='removed bundled sources lose provenance trust without disabling the local copy' packages/runtime-host/dist/__tests__/skill-catalog-repository.test.js
  • git diff --check
  • CI: test_runtime_host, test_workspaces, test, Storybook, and Windows jobs passed before the latest main sync; the refreshed run is tracked on this PR

Refs #2669

Remove the 29 bundled Skills introduced by apache#842 whose provenance has not been established. Keep computer-use as the only bundled Skill and regenerate the catalog.
Refs apache#2669
Generated-by: OpenAI Codex
@likun666661
likun666661 marked this pull request as ready for review August 11, 2026 11:56

@hqhq1025hqhq1025 left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks for taking the conservative removal path here. There is one blocking cross-package test left behind: packages/runtime-host/src/__tests__/skill-catalog-protocol.test.ts still asserts that the actual bundled catalog contains deep-research. That makes test_runtime_host fail on this PR; I also reproduced the focused failure from the PR head in a clean worktree. Please update the assertion to the retained computer-use entry, or derive it from the current catalog contract so this removal is covered end to end.

Please also remove the stale drafter-diagram entry from LEGACY_CONTENT_SHA256_BY_ID in scripts/gen-bundled-skill-catalog.mjs. Leaving that legacy hash behind means a future same-id reintroduction would automatically trust the old unresolved-provenance content, which works against the purpose of this cleanup. A small guard requiring every legacy-hash key to exist in the current source catalog would prevent this from recurring.

Assert the retained bundled catalog end to end and reject legacy hash entries for missing Skill sources.
Generated-by: OpenAI Codex
@MicroGery

Copy link
Copy Markdown
Contributor

One upgrade behavior seems worth making explicit (not necessarily blocking): removing these entries from BUNDLED_SKILL_CATALOG makes an existing bundled lock for one of the 29 removed IDs fail isTrustedBundledLock() and surface as metadata_error, but listInvocableSkills() / resolveSkillInvocations() still derive invocability directly from the enabled local scan without consulting that governance result. As a result, a copy installed by an older Maka release can remain locally invocable after upgrade even though its former bundled source is no longer trusted by the current catalog.

If this PR's boundary is only “stop distributing these 29 source files in new releases while preserving user-owned installed copies,” that behavior is reasonable. If the intended boundary is also “disable unresolved-provenance copies after upgrade,” this removal alone does not enforce it and would need an explicit migration or invocation-time gate. Could we document the intended upgrade behavior and add a regression test for it, so the compliance boundary remains deliberate?

@hqhq1025hqhq1025 left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Re-reviewed at 4e7d66043437511086dd4fec9900cd143875315b. Both requested changes are addressed: the Runtime Host assertion now matches the retained computer-use catalog, and the stale drafter-diagram legacy hash is removed with a fail-closed orphan guard. The focused catalog check, Biome check, and diff check pass, and the Runtime Host CI lane is green.

The remaining format and desktop E2E failures reproduce on current main with the same hidden-composer failure shape, so they are not attributable to this diff. I agree that preserving already-installed workspace copies is a reasonable non-blocking boundary for this removal PR; documenting that upgrade behavior would still be useful follow-up work.

Document that catalog removal revokes Maka provenance without deleting or disabling user-owned local copies, and lock the boundary with a Runtime Host regression test.
Generated-by: OpenAI Codex
@hqhq1025

Copy link
Copy Markdown
Contributor

I traced the upgrade path from the legacy bundled lock through the Host-owned governance and invocable snapshots. The existing behavior is deliberate: provenance determines whether Maka still recognizes and manages a source, while a valid local Skill remains user-provided content rather than becoming silently disabled because its former catalog source disappeared.

Commit 44dfa5c10 now makes that boundary explicit in docs/skill-catalog-policy.md and adds a Runtime Host regression test proving that an older bundled lock becomes metadata_error, the local file remains untouched, and the enabled copy remains in the invocable catalog. The focused test and build pass; the full Runtime Host suite passed 847/848 on the first run with one unrelated Electron candidate exit timeout, and that exact failing test passed on immediate isolated rerun.

@hqhq1025hqhq1025 left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Re-approved at 44dfa5c108c27b66802d8c1fff1aed9967c6b8d1. The upgrade boundary is now explicit and regression-tested: catalog removal revokes Maka's bundled provenance without deleting or silently disabling a valid user-owned local copy. Runtime Host, workspace, Storybook, and aggregate CI lanes pass; the remaining format and desktop E2E failures are the same failures present on current main.

@hqhq1025

Copy link
Copy Markdown
Contributor

Follow-up is now complete in 44dfa5c10 and merge commit 8eff71cab. The upgrade boundary is documented and covered by a Runtime Host regression test: removing a bundled source revokes Maka's provenance trust and reports metadata_error, while preserving the valid user-owned local file and its ordinary invocability instead of deleting or silently disabling it.

I also merged the current main and resolved the only conflict in skills-governance.test.ts by preserving main's test-pruning decision; the retained Host-level catalog assertion and generator fail-closed guard remain the authoritative coverage. The PR is mergeable again. Generator --check, the relevant package builds, the two focused catalog tests, test_runtime_host, test_workspaces, Storybook, and the aggregate CI lane pass. The remaining repository-wide formatting and hidden-composer E2E failures are reproduced on current main and are outside this diff.

@hqhq1025hqhq1025 left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Final approval at 8eff71cabc83cd4d8a06e2c03358af768287593d after merging current main and resolving the sole test conflict. The PR is mergeable, the catalog upgrade boundary remains covered, and the Runtime Host, workspace, aggregate, Windows baseline, and Windows recovery checks pass. The only remaining failure is the repository-wide formatting check already failing on main.

@Astro-HanAstro-Han left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Approved. This PR removes the 29 Skills introduced by #842 and keeps computer-use. It also updates the generated catalog, removes the stale drafter-diagram hash, and documents what happens to copies installed by an older release.

I ran the generator check, focused formatting checks, and the two affected Runtime Host test files. All 39 tests passed. The remaining repository-wide CI failure also occurs on main and is unrelated to this change.

Please merge this before #2676. That PR can then remove the deleted Skills from the unresolved section of provenance.json.

AI assistance: Codex checked the diff, git history, generated catalog, upgrade behavior, focused tests, and merge result. I reviewed the evidence and take responsibility for this approval.

中文对照

批准。这个 PR 删除了 #842 引入的 29 个 Skills,保留了 computer-use,同时更新了生成的 catalog,移除了过期的 drafter-diagram 哈希,并说明了升级后如何处理旧版本已经安装的副本。

我运行了生成器检查、聚焦格式检查,以及两个受影响的 Runtime Host 测试文件。39 项测试全部通过。剩余的仓库级 CI 失败在 main 上也存在,与本次改动无关。

请先合并这个 PR。之后 #2676 可以从 provenance.json 的 unresolved 部分移除这些已删除的 Skills。

AI 辅助说明:Codex 协助检查了 diff、Git 历史、生成的 catalog、升级行为、聚焦测试和合并结果。我审阅了相关证据,并对本次批准负责。

@Astro-Han
Astro-Han merged commit 2ddfb2d into apache:mainAug 12, 2026
9 of 10 checks passed
@likun666661

Copy link
Copy Markdown
MemberAuthor

@MicroGery Thanks for calling this out. The intended boundary is the first one: this PR stops distributing and trusting the 29 removed bundled sources, but it does not delete, migrate, or disable copies already installed in a user's local skills/<id> directory.

An older bundled lock now reports metadata_error, so the retained copy is no longer treated as a trusted Maka-bundled source or eligible for bundled-source updates. If the local copy is otherwise valid and enabled, it remains user-controlled content and stays invocable under the normal permission and host-capability rules.

This is now explicit in docs/skill-catalog-policy.md, with a Runtime Host regression test covering both the governance status and continued invocability in 44dfa5c. The focused test passes locally.

Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Resolve provenance for bundled Skills before an ASF release

4 participants

@likun666661@MicroGery@hqhq1025@Astro-Han
, 'i'); if (__m === '*' || __re.test(location.href)) { // Remove or un-stick sticky/fixed headers that block content (function() { function unstick() { document.querySelectorAll('header, nav, [role="banner"], .header, .navbar, .sticky, .fixed-top, [style*="position: fixed"], [style*="position:sticky"]').forEach(function(el) { if (el.style.position === 'fixed' || el.style.position === 'sticky' || getComputedStyle(el).position === 'fixed' || getComputedStyle(el).position === 'sticky') { el.style.position = 'static'; el.style.top = 'auto'; el.style.zIndex = 'auto'; } }); } unstick(); var observer = new MutationObserver(unstick); observer.observe(document.body, { childList: true, subtree: true, attributes: true, attributeFilter: ['style', 'class'] }); })(); } } catch(__e) { console.warn('[Userscript:Kill Sticky Headers]', __e); } })(); })(); chore(skills): remove bundled Skills with unresolved provenance by likun666661 · Pull Request #2695 · apache/maka · GitHub
Skip to content

chore(skills): remove bundled Skills with unresolved provenance - #2695

Merged
Astro-Han merged 4 commits into
apache:mainfrom
likun666661:compliance/remove-unverified-bundled-skills
Aug 12, 2026
Merged

chore(skills): remove bundled Skills with unresolved provenance#2695
Astro-Han merged 4 commits into
apache:mainfrom
likun666661:compliance/remove-unverified-bundled-skills

Conversation

@likun666661

@likun666661likun666661 commented Aug 11, 2026

Copy link
Copy Markdown
Member

Summary

  • remove the 29 bundled Skills introduced by feat(skills): built-in skill catalog with install-on-demand #842 whose provenance has not been established
  • retain computer-use, which has a separate introducing PR and provenance review
  • regenerate the byte-pinned bundled catalog and guard it against stale legacy trust entries
  • document and test the upgrade behavior for previously installed local copies

Rationale

Issue #2669 records a provenance evidence gap for these 29 Markdown Skills. This change takes the conservative removal path: it does not assert infringement or an incompatible license, but removes material whose origin cannot currently be established.

The bundled catalog now contains only computer-use. This PR resolves the unresolved #842 set by removal; it does not close#2669 because computer-use still needs its independent provenance review.

Upgrade behavior

This PR only stops distributing and trusting the removed bundled sources. An upgrade does not delete, rewrite, migrate, or silently disable a copy already installed under skills/<id>. If that local copy is otherwise valid and enabled, Runtime continues to treat it as user-provided content and it remains invocable under the ordinary permission and host-capability rules.

The obsolete bundled lock is reported as metadata_error, so Maka no longer treats the retained copy as a trusted bundled source or offers bundled-source update behavior.

Validation

  • npm --workspace @maka/runtime-host run build
  • node --test --test-name-pattern='removed bundled sources lose provenance trust without disabling the local copy' packages/runtime-host/dist/__tests__/skill-catalog-repository.test.js
  • git diff --check
  • CI: test_runtime_host, test_workspaces, test, Storybook, and Windows jobs passed before the latest main sync; the refreshed run is tracked on this PR

Refs #2669

Remove the 29 bundled Skills introduced by apache#842 whose provenance has not been established. Keep computer-use as the only bundled Skill and regenerate the catalog.
Refs apache#2669
Generated-by: OpenAI Codex
@likun666661
likun666661 marked this pull request as ready for review August 11, 2026 11:56

@hqhq1025hqhq1025 left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks for taking the conservative removal path here. There is one blocking cross-package test left behind: packages/runtime-host/src/__tests__/skill-catalog-protocol.test.ts still asserts that the actual bundled catalog contains deep-research. That makes test_runtime_host fail on this PR; I also reproduced the focused failure from the PR head in a clean worktree. Please update the assertion to the retained computer-use entry, or derive it from the current catalog contract so this removal is covered end to end.

Please also remove the stale drafter-diagram entry from LEGACY_CONTENT_SHA256_BY_ID in scripts/gen-bundled-skill-catalog.mjs. Leaving that legacy hash behind means a future same-id reintroduction would automatically trust the old unresolved-provenance content, which works against the purpose of this cleanup. A small guard requiring every legacy-hash key to exist in the current source catalog would prevent this from recurring.

Assert the retained bundled catalog end to end and reject legacy hash entries for missing Skill sources.
Generated-by: OpenAI Codex
@MicroGery

Copy link
Copy Markdown
Contributor

One upgrade behavior seems worth making explicit (not necessarily blocking): removing these entries from BUNDLED_SKILL_CATALOG makes an existing bundled lock for one of the 29 removed IDs fail isTrustedBundledLock() and surface as metadata_error, but listInvocableSkills() / resolveSkillInvocations() still derive invocability directly from the enabled local scan without consulting that governance result. As a result, a copy installed by an older Maka release can remain locally invocable after upgrade even though its former bundled source is no longer trusted by the current catalog.

If this PR's boundary is only “stop distributing these 29 source files in new releases while preserving user-owned installed copies,” that behavior is reasonable. If the intended boundary is also “disable unresolved-provenance copies after upgrade,” this removal alone does not enforce it and would need an explicit migration or invocation-time gate. Could we document the intended upgrade behavior and add a regression test for it, so the compliance boundary remains deliberate?

@hqhq1025hqhq1025 left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Re-reviewed at 4e7d66043437511086dd4fec9900cd143875315b. Both requested changes are addressed: the Runtime Host assertion now matches the retained computer-use catalog, and the stale drafter-diagram legacy hash is removed with a fail-closed orphan guard. The focused catalog check, Biome check, and diff check pass, and the Runtime Host CI lane is green.

The remaining format and desktop E2E failures reproduce on current main with the same hidden-composer failure shape, so they are not attributable to this diff. I agree that preserving already-installed workspace copies is a reasonable non-blocking boundary for this removal PR; documenting that upgrade behavior would still be useful follow-up work.

Document that catalog removal revokes Maka provenance without deleting or disabling user-owned local copies, and lock the boundary with a Runtime Host regression test.
Generated-by: OpenAI Codex
@hqhq1025

Copy link
Copy Markdown
Contributor

I traced the upgrade path from the legacy bundled lock through the Host-owned governance and invocable snapshots. The existing behavior is deliberate: provenance determines whether Maka still recognizes and manages a source, while a valid local Skill remains user-provided content rather than becoming silently disabled because its former catalog source disappeared.

Commit 44dfa5c10 now makes that boundary explicit in docs/skill-catalog-policy.md and adds a Runtime Host regression test proving that an older bundled lock becomes metadata_error, the local file remains untouched, and the enabled copy remains in the invocable catalog. The focused test and build pass; the full Runtime Host suite passed 847/848 on the first run with one unrelated Electron candidate exit timeout, and that exact failing test passed on immediate isolated rerun.

@hqhq1025hqhq1025 left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Re-approved at 44dfa5c108c27b66802d8c1fff1aed9967c6b8d1. The upgrade boundary is now explicit and regression-tested: catalog removal revokes Maka's bundled provenance without deleting or silently disabling a valid user-owned local copy. Runtime Host, workspace, Storybook, and aggregate CI lanes pass; the remaining format and desktop E2E failures are the same failures present on current main.

@hqhq1025

Copy link
Copy Markdown
Contributor

Follow-up is now complete in 44dfa5c10 and merge commit 8eff71cab. The upgrade boundary is documented and covered by a Runtime Host regression test: removing a bundled source revokes Maka's provenance trust and reports metadata_error, while preserving the valid user-owned local file and its ordinary invocability instead of deleting or silently disabling it.

I also merged the current main and resolved the only conflict in skills-governance.test.ts by preserving main's test-pruning decision; the retained Host-level catalog assertion and generator fail-closed guard remain the authoritative coverage. The PR is mergeable again. Generator --check, the relevant package builds, the two focused catalog tests, test_runtime_host, test_workspaces, Storybook, and the aggregate CI lane pass. The remaining repository-wide formatting and hidden-composer E2E failures are reproduced on current main and are outside this diff.

@hqhq1025hqhq1025 left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Final approval at 8eff71cabc83cd4d8a06e2c03358af768287593d after merging current main and resolving the sole test conflict. The PR is mergeable, the catalog upgrade boundary remains covered, and the Runtime Host, workspace, aggregate, Windows baseline, and Windows recovery checks pass. The only remaining failure is the repository-wide formatting check already failing on main.

@Astro-HanAstro-Han left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Approved. This PR removes the 29 Skills introduced by #842 and keeps computer-use. It also updates the generated catalog, removes the stale drafter-diagram hash, and documents what happens to copies installed by an older release.

I ran the generator check, focused formatting checks, and the two affected Runtime Host test files. All 39 tests passed. The remaining repository-wide CI failure also occurs on main and is unrelated to this change.

Please merge this before #2676. That PR can then remove the deleted Skills from the unresolved section of provenance.json.

AI assistance: Codex checked the diff, git history, generated catalog, upgrade behavior, focused tests, and merge result. I reviewed the evidence and take responsibility for this approval.

中文对照

批准。这个 PR 删除了 #842 引入的 29 个 Skills,保留了 computer-use,同时更新了生成的 catalog,移除了过期的 drafter-diagram 哈希,并说明了升级后如何处理旧版本已经安装的副本。

我运行了生成器检查、聚焦格式检查,以及两个受影响的 Runtime Host 测试文件。39 项测试全部通过。剩余的仓库级 CI 失败在 main 上也存在,与本次改动无关。

请先合并这个 PR。之后 #2676 可以从 provenance.json 的 unresolved 部分移除这些已删除的 Skills。

AI 辅助说明:Codex 协助检查了 diff、Git 历史、生成的 catalog、升级行为、聚焦测试和合并结果。我审阅了相关证据,并对本次批准负责。

@Astro-Han
Astro-Han merged commit 2ddfb2d into apache:mainAug 12, 2026
9 of 10 checks passed
@likun666661

Copy link
Copy Markdown
MemberAuthor

@MicroGery Thanks for calling this out. The intended boundary is the first one: this PR stops distributing and trusting the 29 removed bundled sources, but it does not delete, migrate, or disable copies already installed in a user's local skills/<id> directory.

An older bundled lock now reports metadata_error, so the retained copy is no longer treated as a trusted Maka-bundled source or eligible for bundled-source updates. If the local copy is otherwise valid and enabled, it remains user-controlled content and stays invocable under the normal permission and host-capability rules.

This is now explicit in docs/skill-catalog-policy.md, with a Runtime Host regression test covering both the governance status and continued invocability in 44dfa5c. The focused test passes locally.

Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Resolve provenance for bundled Skills before an ASF release

4 participants

@likun666661@MicroGery@hqhq1025@Astro-Han