Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
5 changes: 3 additions & 2 deletions .github/repository-settings.toml
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,7 @@

[repository]
default_branch = "master"
is_template = true
is_template = false
immutable_releases = true

has_wiki = false
Expand Down Expand Up @@ -79,6 +79,7 @@ contexts = [
"ci",
"Binary Release Dry Run",
"Container Image Dry Run",
"Images Validate",
]

[rulesets.tags_default]
Expand All @@ -95,7 +96,7 @@ block_force_pushes = true
bypass = [
{ type = "repository_admin_role", mode = "always" },
# Release Please needs tag-creation bypass because tags are protected here.
{ type = "app", slug = "meigma-release", mode = "always" },
{ type = "app", slug = "glab-release-please", mode = "always" },
]

[rulesets.tags_default.status_checks]
Expand Down
4 changes: 2 additions & 2 deletions .github/scripts/mcp_smoke.py
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,7 @@
The target is passed as a literal argv after `--`, so the same script covers every
release artifact:

uv run .github/scripts/mcp_smoke.py -- ./bin/template-mcp-codemode stdio
uv run .github/scripts/mcp_smoke.py -- ./bin/agentcompute stdio
uv run .github/scripts/mcp_smoke.py -- dist/release-assets/BINARY stdio
uv run .github/scripts/mcp_smoke.py -- docker run -i --rm IMAGE stdio

Expand Down Expand Up @@ -74,7 +74,7 @@ def parse_args(argv: list[str]) -> tuple[argparse.Namespace, list[str]]:
)
parser.add_argument(
"--server-name",
default="template-mcp-codemode",
default="agentcompute",
help="exact initialize serverInfo.name the target must report",
)
parser.add_argument(
Expand Down
2 changes: 1 addition & 1 deletion .github/scripts/stage_ghd_release_assets.py
Original file line number Diff line number Diff line change
Expand Up @@ -41,7 +41,7 @@ def parse_args(argv: list[str] | None = None) -> argparse.Namespace:
parser.add_argument("--artifacts", default=Path("dist/artifacts.json"), type=Path)
parser.add_argument("--config", default=Path("ghd.toml"), type=Path)
parser.add_argument("--output", default=Path("dist/release-assets"), type=Path)
parser.add_argument("--binary-name", default="template-mcp-codemode")
parser.add_argument("--binary-name", default="agentcompute")
return parser.parse_args(argv)


Expand Down
12 changes: 6 additions & 6 deletions .github/scripts/test_configure_github_repo.py
Original file line number Diff line number Diff line change
Expand Up @@ -102,8 +102,8 @@ def test_plan_creates_workflow_pages_site(self) -> None:

plan = configure.build_plan(
api,
"meigma",
"template-mcp-codemode",
"GilmanLab",
"agentcompute",
base_config({"build_type": "workflow", "https_enforced": True}),
mode="plan",
hostname="github.com",
Expand All @@ -119,8 +119,8 @@ def test_plan_updates_existing_pages_site(self) -> None:

plan = configure.build_plan(
api,
"meigma",
"template-mcp-codemode",
"GilmanLab",
"agentcompute",
base_config({"build_type": "workflow", "https_enforced": True}),
mode="plan",
hostname="github.com",
Expand All @@ -133,7 +133,7 @@ def test_plan_updates_existing_pages_site(self) -> None:
def test_apply_create_pages_runs_follow_up_update(self) -> None:
api = FakeGitHubApi()
plan = configure.PlanResult(
repo="meigma/template-mcp-codemode",
repo="GilmanLab/agentcompute",
hostname="github.com",
mode="apply",
changes=[
Expand All @@ -153,7 +153,7 @@ def test_apply_create_pages_runs_follow_up_update(self) -> None:
warnings=[],
)

applied = configure.apply_plan(api, "meigma", "template-mcp-codemode", plan)
applied = configure.apply_plan(api, "GilmanLab", "agentcompute", plan)

self.assertEqual(applied, ["Create GitHub Pages site"])
self.assertEqual(api.created_pages, [{"build_type": "workflow"}])
Expand Down
52 changes: 26 additions & 26 deletions .github/scripts/test_stage_ghd_release_assets.py
Original file line number Diff line number Diff line change
Expand Up @@ -61,36 +61,36 @@ def test_stages_expected_assets(self) -> None:
staged,
[
"checksums.txt",
"template-mcp-codemode_1.2.3_darwin_amd64",
"template-mcp-codemode_1.2.3_darwin_amd64.sbom.json",
"template-mcp-codemode_1.2.3_darwin_arm64",
"template-mcp-codemode_1.2.3_darwin_arm64.sbom.json",
"template-mcp-codemode_1.2.3_linux_amd64",
"template-mcp-codemode_1.2.3_linux_amd64.sbom.json",
"template-mcp-codemode_1.2.3_linux_arm64",
"template-mcp-codemode_1.2.3_linux_arm64.sbom.json",
"agentcompute_1.2.3_darwin_amd64",
"agentcompute_1.2.3_darwin_amd64.sbom.json",
"agentcompute_1.2.3_darwin_arm64",
"agentcompute_1.2.3_darwin_arm64.sbom.json",
"agentcompute_1.2.3_linux_amd64",
"agentcompute_1.2.3_linux_amd64.sbom.json",
"agentcompute_1.2.3_linux_arm64",
"agentcompute_1.2.3_linux_arm64.sbom.json",
],
)
linux_binary = root / "dist/release-assets/template-mcp-codemode_1.2.3_linux_amd64"
linux_binary = root / "dist/release-assets/agentcompute_1.2.3_linux_amd64"
mode = linux_binary.stat().st_mode
self.assertTrue(mode & stat.S_IXUSR)
self.assertIn("dist/release-assets/template-mcp-codemode_1.2.3_linux_arm64", stdout)
self.assertIn("dist/release-assets/agentcompute_1.2.3_linux_arm64", stdout)

def test_fails_on_missing_checksum_entry(self) -> None:
with fixture(missing_checksum="template-mcp-codemode_1.2.3_linux_arm64") as root:
with fixture(missing_checksum="agentcompute_1.2.3_linux_arm64") as root:
result, _, stderr = run_script(root)

self.assertEqual(result, 1)
self.assertIn("missing checksum entry", stderr)
self.assertIn("template-mcp-codemode_1.2.3_linux_arm64", stderr)
self.assertIn("agentcompute_1.2.3_linux_arm64", stderr)

def test_fails_on_checksum_mismatch(self) -> None:
override = ("template-mcp-codemode_1.2.3_linux_amd64", "0" * 64)
override = ("agentcompute_1.2.3_linux_amd64", "0" * 64)
with fixture(checksum_override=override) as root:
result, _, stderr = run_script(root)

self.assertEqual(result, 1)
self.assertIn("checksum mismatch for template-mcp-codemode_1.2.3_linux_amd64", stderr)
self.assertIn("checksum mismatch for agentcompute_1.2.3_linux_amd64", stderr)

def test_fails_on_wrong_signer_workflow(self) -> None:
with fixture(signer="other/repo/.github/workflows/attest.yml") as root:
Expand All @@ -104,7 +104,7 @@ def test_fails_on_missing_os_arch_asset(self) -> None:
result, _, stderr = run_script(root)

self.assertEqual(result, 1)
self.assertIn("missing expected binary asset template-mcp-codemode_1.2.3_linux_arm64", stderr)
self.assertIn("missing expected binary asset agentcompute_1.2.3_linux_arm64", stderr)

def test_fails_on_unexpected_asset_count(self) -> None:
with fixture(extra_binary=True) as root:
Expand All @@ -117,7 +117,7 @@ def test_fails_on_unexpected_asset_count(self) -> None:
def run_script(root: Path) -> tuple[int, str, str]:
stdout = io.StringIO()
stderr = io.StringIO()
with working_directory(root), github_repository("meigma/template-mcp-codemode"):
with working_directory(root), github_repository("GilmanLab/agentcompute"):
with contextlib.redirect_stdout(stdout), contextlib.redirect_stderr(stderr):
result = stage_ghd_release_assets.main(["--tag", "v1.2.3"])
return result, stdout.getvalue(), stderr.getvalue()
Expand All @@ -126,7 +126,7 @@ def run_script(root: Path) -> tuple[int, str, str]:
@contextlib.contextmanager
def fixture(
*,
signer: str = "meigma/template-mcp-codemode/.github/workflows/attest.yml",
signer: str = "GilmanLab/agentcompute/.github/workflows/attest.yml",
missing_checksum: str | None = None,
checksum_override: tuple[str, str] | None = None,
omit_artifact: tuple[str, str, str] | None = None,
Expand All @@ -140,7 +140,7 @@ def fixture(
artifacts: list[dict[str, str]] = []
checksum_entries: dict[str, str] = {}
for goos, goarch in PLATFORMS:
binary_name = f"template-mcp-codemode_1.2.3_{goos}_{goarch}"
binary_name = f"agentcompute_1.2.3_{goos}_{goarch}"
sbom_name = f"{binary_name}.sbom.json"

binary_path = root / "dist" / binary_name
Expand All @@ -163,7 +163,7 @@ def fixture(
})

if extra_binary:
extra_name = "template-mcp-codemode_1.2.3_freebsd_amd64"
extra_name = "agentcompute_1.2.3_freebsd_amd64"
extra_path = root / "dist" / extra_name
extra_path.write_bytes(b"extra\n")
artifacts.append({"type": "Binary", "name": extra_name, "path": f"dist/{extra_name}"})
Expand Down Expand Up @@ -197,32 +197,32 @@ def write_ghd_toml(path: Path, signer: str) -> None:
signer_workflow = "{signer}"

[[packages]]
name = "template-mcp-codemode"
description = "Meigma CodeMode MCP server template starter CLI."
name = "agentcompute"
description = "agentcompute CodeMode MCP server."
tag_pattern = "v${{version}}"

[[packages.assets]]
os = "darwin"
arch = "amd64"
pattern = "template-mcp-codemode_${{version}}_darwin_amd64"
pattern = "agentcompute_${{version}}_darwin_amd64"

[[packages.assets]]
os = "darwin"
arch = "arm64"
pattern = "template-mcp-codemode_${{version}}_darwin_arm64"
pattern = "agentcompute_${{version}}_darwin_arm64"

[[packages.assets]]
os = "linux"
arch = "amd64"
pattern = "template-mcp-codemode_${{version}}_linux_amd64"
pattern = "agentcompute_${{version}}_linux_amd64"

[[packages.assets]]
os = "linux"
arch = "arm64"
pattern = "template-mcp-codemode_${{version}}_linux_arm64"
pattern = "agentcompute_${{version}}_linux_arm64"

[[packages.binaries]]
path = "template-mcp-codemode"
path = "agentcompute"
''',
encoding="utf-8",
)
Expand Down
Loading