skill file improvement - #67
Open
nickhuo wants to merge 7 commits into
Open
Conversation
|
Important Review skippedAuto reviews are disabled on base/target branches other than the default branch. 🗂️ Base branches to auto review (1)
Please check the settings in the CodeRabbit UI or the ⚙️ Run configurationConfiguration used: Organization UI Review profile: CHILL Plan: Team Run ID: You can disable this status message by setting the Use the checkbox below for a quick retry:
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
nickhuo
force-pushed
the
nickhuo/car-artifact-layout
branch
from
September 3, 2026 20:33
106b9ac to
872d72b
Compare
nickhuo
force-pushed
the
nickhuo/porting-skill-car-layout
branch
from
September 3, 2026 23:12
b48ae85 to
42a6efe
Compare
nickhuo
changed the base branch from
nickhuo/car-artifact-layout
to
integration/porting-corpus-pr53-54-57-2
September 3, 2026 23:12
…alidator SKILL.md was carrying three things that only matter once: the step-1 survey list, the rules for refreshing an existing `.car/app`, and adapter prose that adapter.md already gates. All three move out, and SKILL.md keeps the decision and the pointer. - references/source-survey.md: the survey, read after preparing the copy and before choosing service boundaries. - references/refresh.md: read when `.car/app` exists and the source moved on. prepare.py grows `--refresh`, which updates source-owned files while preserving port edits and stops atomically when both sides changed one path -- the case that silently loses an adapter. It now also rejects symbolic links, which either escape the self-contained artifact or are skipped by the runtime sweep, so neither outcome is worth carrying. validate.py splits into a validation package rather than growing further: core.py result and YAML primitives manifest.py the public artifact contract, fail-closed python_source.py static source discovery for adapter and packaging checks runtime.py runtime capabilities and dependency facts references/manifest.md gains the `canyonos config` View/Change review flow and re-scopes its opening: the validator checks YAML structure and the artifact contract before an approved deploy, so this reference explains how to derive the values rather than what the build will reject. (cherry picked from commit d2c82d6bfab4e0ffcb1d12b64b2470eb529be981)
…r exists
validate.py still held nineteen of the twenty-five checks after the last split,
so `validation/` was a helper package with one very large caller rather than a
set of checks. The remaining check functions move out by the section boundaries
the file already had:
validation/adapter.py V006-V010 adapter faults _load_agent swallows
validation/workflow.py V016-V018, V023 the workflow and how it
reaches an agent
validation/entrypoint.py V019, V020, V033-V035 traps set by which
module the entrypoint names
validation/packaging.py V030-V031 credentials and import roots
validation/dependencies.py W003, W006 credentials and imports a
successful build does not reject
`module_path` and the two import resolvers join python_source.py, which is
where the other static-source helpers already live; both resolvers were private
and are now shared by packaging.py and dependencies.py, so they lose the
underscore. validate.py keeps argparse, the driver, and report printing: 1153
lines to 311.
This is a pure move. All twenty-four relocated definitions are AST-identical to
their originals, and ten fixtures covering every check code that lives outside
manifest.py -- V002, V006-V010, V016-V020, V023, V030-V035, W003, W006 --
produce byte-identical `--json` output before and after.
Four references still cited hard-rule labels by number:
references/adapter.md M18
references/llm-proxy.md M18, M21
references/manifest.md M22, M23
The M1-M32 table went away when SKILL.md gained `## Source-integrity
boundary`, which restates the four rules static analysis cannot prove and
drops the twenty-eight the validator now checks itself. The rules survived; the
labels did not, so each citation named a table a reader could not find. They
now name the boundary.
Also drops nine dead `# noqa: E402` directives and sorts the new modules'
imports, which nets the skill's scripts down from twelve ruff findings to
seven. The seven that remain are in prepare.py and runtime.py and predate this
change.
(cherry picked from commit 7cfbece8cb84a2bb591aa88d346a4742a95fb540)
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.
No description provided.