Inspect a program
- Read
input.exeKeep evidence.
const value = a < b ? "x_y" : "&";\n keepIndent();
Evidence
Hidden evidence remains available.
"""Check the public build artifacts and Markdown content contract.""" import hashlib import json from pathlib import Path import tempfile import unittest from zipfile import ZipFile from bs4 import BeautifulSoup import yaml from website_agents import prepare_discovery, prepare_markdown ROOT = Path(__file__).resolve().parent.parent class AgentPublishingChecks(unittest.TestCase): def test_published_skill_digest_covers_every_reference_and_catalogs_resolve(self): site = ROOT / "website/_site" index = json.loads((site / ".well-known/agent-skills/index.json").read_text()) self.assertEqual(index["$schema"], "https://schemas.agentskills.io/discovery/0.2.0/schema.json") skill, = index["skills"] self.assertEqual(skill["name"], "reverse-engineer-anything") self.assertEqual(skill["type"], "archive") artifact = site / skill["url"].removeprefix("https://rea.tools/") self.assertEqual(skill["digest"], "sha256:" + hashlib.sha256(artifact.read_bytes()).hexdigest()) source = ROOT / ".agents/skills/reverse-engineer-anything" with ZipFile(artifact) as archive: expected = {f"{source.name}/{p.relative_to(source).as_posix()}": p.read_bytes() for p in source.rglob("*.md")} self.assertEqual(set(archive.namelist()), set(expected)) for name, data in expected.items(): self.assertEqual(archive.read(name), data) manifest = archive.read(f"{source.name}/SKILL.md").decode() metadata = yaml.safe_load(manifest[4:].split("\n---\n", 1)[0]) self.assertEqual(skill["description"], metadata["description"]) catalog = json.loads((site / ".well-known/ai-catalog.json").read_text()) self.assertEqual(catalog["specVersion"], "1.0") entry, = catalog["entries"] self.assertEqual(entry["identifier"], "urn:air:rea.tools:skill:reverse-engineer-anything") self.assertEqual(entry["url"], skill["url"]) self.assertNotIn("data", entry) ard = json.loads((site / ".well-known/ard.json").read_text()) resource, = ard["entries"] self.assertEqual(resource["url"], skill["url"]) self.assertTrue(2 <= len(resource["representativeQueries"]) <= 5) def test_reference_changes_invalidate_digest_and_yaml_scalars_are_parsed(self): with tempfile.TemporaryDirectory() as directory: root = Path(directory) source = root / ".agents/skills/reverse-engineer-anything" source.mkdir(parents=True) (source / "SKILL.md").write_text( '---\nname: reverse-engineer-anything\ndescription: >-\n Inspect programs:\n preserve evidence.\n---\n# REA\n' ) (source / "references").mkdir() reference = source / "references/evidence.md" reference.write_text("First revision") site = root / "site" def build(): prepare_discovery(root, site) return json.loads((site / ".well-known/agent-skills/index.json").read_text())["skills"][0] before = build() self.assertEqual(before["description"], "Inspect programs: preserve evidence.") self.assertEqual(build(), before) reference.write_text("Second revision") self.assertNotEqual(build()["digest"], before["digest"]) def test_markdown_preserves_content_and_resources_without_publishing_excluded_pages(self): with tempfile.TemporaryDirectory() as directory: site = Path(directory) page = site / "zh-CN/guides/test/index.html" page.parent.mkdir(parents=True) page.write_text('''
input.exeKeep evidence.const value = a < b ? "x_y" : "&";\n keepIndent();
Hidden evidence remains available.