feat(ai-tools): install/update AI CLIs, remote catalog sync, cached favicons (#40 A2)

This commit is contained in:
2026-09-29 08:25:37 +07:00
parent fcfebe44f1
commit 7ec5a7cd85
40 changed files with 3145 additions and 92 deletions
@@ -29,6 +29,7 @@ const {
pluginMarketplaceUrl,
fetchReleaseFromUrl,
detectPluginInstall,
repoUrlFor,
} = require("../lib/update-check");
let tmpDir;
@@ -103,6 +104,17 @@ function release(tag) {
};
}
describe("repoUrlFor", () => {
it("answers a plugin-cache root from the marketplace manifest, no git", async () => {
const { root } = makePluginInstall("repourl");
assert.equal(await repoUrlFor(root), "https://forge.example.com/Owner/Repo.git");
});
it("answers null for a directory with neither a manifest nor a remote", async () => {
assert.equal(await repoUrlFor(tmpDir), null);
});
});
describe("pluginMarketplaceUrl", () => {
it("reads the plugin's repository URL out of the marketplace manifest", () => {
makePluginInstall("ok");