Simplify bundled skill catalog and routing - #1517
Draft
lihongguang-0014 wants to merge 2 commits into
Draft
Conversation
Open-Squilla
marked this pull request as draft
August 31, 2026 08:27
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Scope
The bundled Skill catalog previously mixed public entry points, workflow dependencies, and redundant wrappers. This change gives prompts and clients a deterministic public catalog while retaining the internal dependencies needed by supported Meta workflows.
code-taskwhen coding mode is enabled. Keep internal helpers out of public prompts and detail bodies.meta.listand addmeta.inspectwith passive readiness and exact instance identity. Preserve public Meta entries and rootcontentinskills.list/skills.getfor older clients, including managed lifecycle diagnostics.result; full contract verification remains available in the test toolchain.skills.filter_*settings, clean persisted TOML, and ignore deprecated environment spellings before strict settings validation with warnings. Unknown settings still fail validation.summarize, five weather/tmux/HTML-to-PDF/LaTeX/PDF-rewrite wrappers, eight obsolete paper helpers, three creator helpers, and five stack-trace probes.memory_saveandmemory_deletedescriptions; it adds no tool or execution mechanism. Scheduled jobs and stored memory remain intact.Retirement takes effect after the upgraded Gateway restarts and rebuilds its Skill snapshot. Old snapshots cannot restore retired bundled entries; residual packaged files remain hidden. Independently installed personal, managed, project, workspace, and extra-directory copies are retained.
Old Meta workflow definitions that reference retired Skills are not supported or automatically migrated; their authors must update those references. Dedicated retired scripts and their output contracts are not preserved. PDF extraction, composition, and generation remain supported, while arbitrary in-place PDF rewriting is no longer a dedicated Skill capability.
Branch
Base branch: main
Target exception: N/A
Issue
Linked issue: None
If None, reason: catalog simplification and upgrade-compatibility work without a tracking issue.
Release Note
Release note: YES —
CHANGELOG.mddocuments the smaller catalog, the 31 retirements, retained user data and installations, configuration migration, separate client/Gateway upgrades, and the unsupported legacy Meta definitions.Tests
Results below apply to the current implementation; historical benchmark verification counts are not reused.
Ruff:
ruff check src tests scripts/skill_simplification_ab.py .github/scripts/plan_ci.pypassed.Pytest:
tests/test_skillsfile plus configuration, Gateway/Meta, shared engine/prompt, CLI/TUI, memory, scheduler, upgrade, and CI regressions): 7,731 passed, 19 skipped, 5 live tests deselected; exit 0. The complete command was rerun after fixing the Windows test-registration failure.f06ab5ce00fea8fbdaa786f7a2356560c58a876e, tree74816e98f87b5177d01c8cbf858d486f9da6e903. Source paths, interpreter imports, dependencies, and built WebUI staging were checked before execution and source equality was checked afterward.OPENSQUILLA_RUN_CONTRACT_TOOLCHAIN_INTEGRATION=1: 388 passed, 1 skipped. The skipped fixture has no result payload to validate.Build:
--checkand--verify-determinism: passed.mypy src/opensquilla --show-error-codespassed across 1,551 source files.Regression tests: added
Notes: validation was performed on macOS. These results do not assert a new native Linux or Windows run. The default test path remains offline, deterministic, credential-free, and safe for forks.
Historical synthetic A/B evidence
Preserved evidence: report, raw JSON, raw CSV, summary, and deterministic summarizer.
The 166 synthetic-request Provider comparison remains bound to baseline
27ca02ca4596f8f24fe79ab603f068cbec6ab858and candidate058a7675a24177f513ca9262b1d0db96578c1e58. It is not a measurement of the current implementation.Its overall hard-gate result remains FAIL: mean total input fell 4.84%, below the 30% requirement; warm cache-read ratio fell slightly; truncations remained; and the visible-word comparison was unassessable. The historical catalog-token reduction of 36.70% and median latency reduction of 48.32% do not override those failed gates. No new Provider benchmark is claimed here.
Maintainer Live Check
Maintainer live check: no new credentialed live check for the current implementation.
Surface: historical provider evidence only, bound to the candidate SHA above.
Safety
Third-Party Origin
Third-party origin: none
The implementation is original. Read-only architectural research informed behavior and test-shape comparison; no third-party code, comments, fixtures, identifiers, or wording were copied or adapted.
Documentation Changes