P1 (part 1): move skilltools core -> tool/ (clean, verbatim)
executus CI / test (push) Successful in 36s

The tool registry core (registry, permission model, Invocation, gated-tool
wrapper, ssrf guard, hmac, encryption, argcoerce, helpers, rootrun,
session_tools, webhook_rate_limit) had zero mort coupling — it imports only
majordomo/llm + x/crypto/hkdf — so it moves verbatim with a package rename
(skilltools -> tool). All same-package tests came along and pass; the SSRF,
gated-wrapper, encryption and output-pattern invariants are re-anchored here.

majordomo re-enters the module graph (now pinned to the latest, incl. the
front-loaded-output fix). model/ + llmmeta + structured follow next.

Docs: CLAUDE.md now requires README/examples to stay in sync with changes in
the same commit; CI skips docs/example-only pushes via paths-ignore.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
This commit is contained in:
2026-06-26 19:31:47 -04:00
parent d2c18ad5bb
commit dc28b63ad8
24 changed files with 3461 additions and 1 deletions
+16
View File
@@ -13,8 +13,24 @@ on:
push:
branches: [main]
tags: ["v*"]
# Docs/example/meta-only changes don't affect the build — skip the run.
# (Path filters are not applied to tag pushes, so v* releases always run.)
paths-ignore:
- "**.md"
- "LICENSE"
- ".gitignore"
- ".dockerignore"
- "examples/**"
- "docs/**"
pull_request:
types: [opened, synchronize, reopened]
paths-ignore:
- "**.md"
- "LICENSE"
- ".gitignore"
- ".dockerignore"
- "examples/**"
- "docs/**"
workflow_dispatch: {}
concurrency: