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: 2 additions & 3 deletions .github/workflows/validate.yml
Original file line number Diff line number Diff line change
Expand Up @@ -12,8 +12,8 @@ permissions:
contents: read

jobs:
validate-skills-consistency:
name: validate-skills-consistency
validate-repository:
name: validate-repository
runs-on: ubuntu-latest
timeout-minutes: 5
steps:
Expand All @@ -29,7 +29,6 @@ jobs:
- name: Validate repository
env:
REPOSITORY_VALIDATION_EVIDENCE_FILE: ${{ runner.temp }}/repository-validation.log
REPOSITORY_VALIDATION_RENDER_DIR: ${{ runner.temp }}/ceratops-skills
run: python scripts/validate-repository.py

- name: Upload validation evidence
Expand Down
40 changes: 40 additions & 0 deletions AGENTS.history.json
Original file line number Diff line number Diff line change
Expand Up @@ -210,6 +210,46 @@
"decision": "Narrow the skills repository's sole release-batch identity from arbitrary release/* branches to release/local and require owning helpers to reject alternatives.",
"reason": "One canonical release line prevents task-named release branches from becoming reusable or retained release state.",
"regression": "Continue allowing main for normal installed-source checkout, keep task work in thread worktrees, and do not ship or fast-change from any branch other than release/local."
},
{
"rules": [
"SKILLS-FAST-01"
],
"decision": "Remove the retired preview rule from SKILLS-FAST-01's override relation while preserving its worktree and staging overrides.",
"reason": "An override must not reference a deleted rule, and fast-change still needs only its two surviving exceptions.",
"regression": "Preserve the complete fast-change action wording and its overrides of SKILLS-WORKTREE-01 and SKILLS-STAGE-01."
},
{
"rules": [
"SKILLS-PREVIEW-01"
],
"decision": "Retire SKILLS-PREVIEW-01 without replacement deployment prose.",
"reason": "The lifecycle action and deterministic helpers own preview execution; duplicating that flow in repository policy creates source-of-truth drift.",
"regression": "Preserve the checkout, staging, creation, and shipping rules that independently constrain preview-related state changes."
},
{
"rules": [
"SKILLS-STAGE-01"
],
"decision": "Remove SKILLS-STAGE-01's relation to the retired preview rule while preserving its authorization gate.",
"reason": "The limits edge becomes invalid when SKILLS-PREVIEW-01 is removed and does not add an independent constraint.",
"regression": "Continue requiring an explicit staging, shipping, or local-preview-sync request before staging skill changes."
},
{
"rules": [
"SKILLS-SHIP-02"
],
"decision": "Retire SKILLS-SHIP-02 without replacement deployment prose.",
"reason": "Repository-lifecycle routing and its deterministic promote and ship actions already own this behavior.",
"regression": "Preserve release/local shipping, batch authorization, and GitHub workflow constraints in the surviving rules."
},
{
"rules": [
"SKILLS-DEPLOY-01"
],
"decision": "Retire SKILLS-DEPLOY-01 without replacement deployment prose.",
"reason": "Deployment schema, lifecycle actions, and deterministic helpers are the executable owners; a repository rule would duplicate their contract.",
"regression": "Do not weaken surviving checkout, staging, creation, shipping, or section-manifest ownership rules."
}
]
}
17 changes: 1 addition & 16 deletions AGENTS.md
Original file line number Diff line number Diff line change
Expand Up @@ -28,19 +28,13 @@ Project-specific rules for this skills repository.
whenever its action contract and one-request orchestrator accept the complete
intended scope. The action may update the verified primary `release/local`
checkout and install its selected skills; otherwise use `update`.
- overrides: SKILLS-WORKTREE-01, SKILLS-PREVIEW-01, SKILLS-STAGE-01
- overrides: SKILLS-WORKTREE-01, SKILLS-STAGE-01
- [SKILLS-FAST-02] An accepted rules-only `fast-change` uses its action
contract instead of the ordinary instruction-edit verification requirement.
- overrides: SKILLS-VERIFY-01
- [SKILLS-PREVIEW-01] Keep installed Ceratops skill folders generated from the
skills repo checkout, not task worktrees. For an unpublished local preview,
use `$ceratops-repo-lifecycle` action `promote-and-deploy`; it must assemble
`release/local` before running `deploy/deploy.yml`.
- self: list-heavy
- [SKILLS-STAGE-01] Stage skill-source changes into `release/local`
only when the task explicitly requests staging, shipping, or local preview
sync.
- limits: SKILLS-PREVIEW-01
- self: gate
- [SKILLS-SHIP-01] Skills-repo changes must ship from `release/local`, never
directly from task or feature branches.
Expand All @@ -49,20 +43,11 @@ Project-specific rules for this skills repository.
`$ceratops-repo-lifecycle` action `promote-and-deploy` and finish with
deployment verification.
- overrides: SKILLS-STAGE-01
- [SKILLS-SHIP-02] For promotion or shipping, use
`$ceratops-repo-lifecycle` action `promote`, `promote-and-deploy`, or `ship`.
`ship` must update the checkout from `origin/main` after merge, run
`deploy/deploy.yml`, and report retained worktrees or release branches.
- self: list-heavy
- [SKILLS-BATCH-01] Treat an explicit request to promote or ship
`release/local` as authorization for every commit currently on that
branch; do not request per-commit inclusion confirmation.
- [SKILLS-SHIP-03] Treat GitHub replies, thread resolutions, and review
submissions required by the active Ceratops workflow as pre-approved.
- [SKILLS-DEPLOY-01] Use `deploy/deploy.yml` as this repository's only
executable deployment contract. Treat
`skills/ceratops-repo-lifecycle/references/deploy-template.yml` as a reusable,
non-executable template; never execute prose deployment instructions.
- [SKILLS-SECTIONS-01] Keep the live section manifest at
`skills/skill-sections.json`, its declared sources under `skills/sections/`,
and the reusable `skill-sections-template.json` in
Expand Down
2 changes: 2 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,8 @@

## Unreleased

- Made update execution collect every declared pytest node during prepare so
missing classes or functions fail before source edits without running tests.
- Made artifact classification treat Python project manifests as buildable but
non-publishing until a publish workflow or explicit artifact contract
supplies external intent, so no-artifact repositories skip registry identity
Expand Down
Loading