Skip to content
This repository was archived by the owner on Jul 29, 2026. It is now read-only.

chore(skills): re-sync vendored .agents/skills to skill-lib@6f36340 - #114

Merged
erinepshovel-code merged 2 commits into
mainfrom
claude/skill-lib-compliance-c1osmf
Jul 12, 2026
Merged

erinepshovel-code merged 2 commits into
mainfrom
claude/skill-lib-compliance-c1osmf

Conversation

@erinepshovel-code

Copy link
Copy Markdown
Collaborator

Summary

Second re-sync round. After the initial sweep (skill-lib@d0f6209, merged), skill-lib PR #39 reworked msdmd/ (SKILL.md, collect.py, collection.ts) and test-build/SKILL.md. This brings the vendored copies back to verbatim compliance with current canonical, skill-lib@6f36340.

Changes

  • Overlaid the canonical msdmd/ and test-build/ directories verbatim; repo-local additions (incl. local new-retain-old/) and the manifest/ pin (unchanged) preserved.
  • Bumped .agents/skills/README.md source commit to skill-lib@6f36340.

Verification

tools/check_consumer_drift.py reports clean against skill-lib@6f36340 (0 drifted). No tracked bytecode.

🤖 Generated with Claude Code

https://claude.ai/code/session_01J4hD57ejBTZYsuLKSpoE7P


Generated by Claude Code

Second re-sync round. After the initial sweep (skill-lib@d0f6209), skill-lib PR
#39 reworked msdmd/ (SKILL.md, collect.py, collection.ts) and test-build/SKILL.md
(the CONTRACTS/CHECKS split). This brings the vendored copies back to verbatim
compliance with current canonical (skill-lib@6f36340).

- Overlay the drifted canonical msdmd/ and test-build/ directories verbatim;
  repo-local additions are preserved.
- Bump the .agents/skills/README source commit to skill-lib@6f36340.

Verified clean with tools/check_consumer_drift.py against skill-lib@6f36340.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01J4hD57ejBTZYsuLKSpoE7P
@erinepshovel-code
erinepshovel-code marked this pull request as ready for review July 12, 2026 09:56

@chatgpt-codex-connector chatgpt-codex-connector Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: 1ff17e32d3

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

`CONTRACTS` obligations; test modules own `CHECKS` evidence that
claims to prove those obligations. See
[`test-build/SKILL.md`](../test-build/SKILL.md) and
[`doctrine/msdmd-checks.md`](../doctrine/msdmd-checks.md).

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P2 Badge Vendor the referenced doctrine file

This new reference points to ../doctrine/msdmd-checks.md, but the vendored .agents/skills tree does not contain any doctrine/ directory or msdmd-checks.md file (checked with repo-wide search). As a result, both this link and the matching new link in test-build/SKILL.md are dead, so agents following the updated skill docs cannot reach the ratified CHECKS/CONTRACTS doctrine that the text now depends on.

Useful? React with 👍 / 👎.

…-build

The re-synced msdmd/SKILL.md and test-build/SKILL.md (skill-lib@6f36340) link to
`../doctrine/msdmd-checks.md`, but only the skill directories were vendored, so
that relative link resolved to a missing `.agents/skills/doctrine/msdmd-checks.md`
-- a dead reference to the ratified CONTRACTS/CHECKS doctrine. Vendor the shared
doctrine file alongside the skills so the links resolve.

(propagate_skills.py is skills-only and does not carry doctrine/; tracking that
gap upstream in skill-lib separately.)

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01J4hD57ejBTZYsuLKSpoE7P

@chatgpt-codex-connector chatgpt-codex-connector Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: 673679e9ea

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

Comment on lines +70 to +71
`call:` is not a CONTRACTS field in skill-lib. The call belongs to the
CHECKS entry that owns the executable evidence.

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P2 Badge Migrate existing CONTRACTS calls before dropping the bridge

This change makes call: invalid in CONTRACTS, but the repo still has four backend contract entries using only call: targets in backend/src/edcmbone_backend/__init__.py:30-53, and rg -n "=== CHECKS ===" finds no CHECKS declarations. In this state an agent/audit following the vendored test-build doctrine will report those existing backend contracts as orphan obligations rather than linked tests, so either migrate the existing tests into CHECKS blocks or keep an explicit compatibility bridge until the repo metadata is updated.

Useful? React with 👍 / 👎.

Comment on lines +146 to +151
def resolve_self_call(spec: str, namespace: dict) -> object:
if not spec.startswith("self::"):
raise LookupError(f"only self::fn resolves without execution: {spec}")
fn = namespace.get(spec[len("self::"):])
if not callable(fn):
raise LookupError(f"not callable: {spec}")

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P2 Badge Show no-exec resolution without requiring function objects

In the audit mode described here, implementers have to supply namespace with actual callable objects for self::fn to resolve; for a normal test module that means importing or otherwise executing the file to populate globals(), which contradicts the no-exec audit requirement above and can trigger module top-level side effects. If they instead build namespace from a non-executing parse, valid function declarations are not callable and this resolver reports them as unresolved, so the sample should resolve self:: names from parsed function definitions rather than callable objects.

Useful? React with 👍 / 👎.

Comment on lines +58 to +61
CHECKS fields, all consumed: `id`, `proves`, `call`, `requires`
(runner refuses to execute on hosts missing them), `timeout` (runner
sets the active subprocess bound per check), `mutates` and `cleanup`
(danger documentation read by humans deciding when a check may run).

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P2 Badge Separate human-only fields from consumed CHECKS fields

These lines say all CHECKS fields are consumed, but the same sentence defines mutates and cleanup as danger documentation read by humans, while the field-entry rule below treats declared-but-unread metadata as a defect. A runner author following this doctrine either has to invent machine behavior for those human-only fields or reject the required examples as decorative, so the schema should not list them under “all consumed” unless a runner actually consumes them.

Useful? React with 👍 / 👎.

Copy link
Copy Markdown
Collaborator Author

Thanks for the thorough review. Splitting these by class:

  • Dead link to doctrine/msdmd-checks.md — fixed in this PR; the file is now vendored at .agents/skills/doctrine/msdmd-checks.md, so the msdmd/test-build links resolve.
  • "Migrate existing CONTRACTS calls" (backend/src/edcmbone_backend/__init__.py) — accurate but intentionally out of scope. This PR is a verbatim re-sync of canonical skill-lib (CONTRACTS/CHECKS split ratified in skill-lib compute.py / projection.py / risk.py: cleanliness pass #39); per doctrine, repo-local .agents/skills/ copies track canonical, and existing files aren't retroactively noncompliant. Migrating this repo's own backend contracts into CHECKS is separate code follow-up, not a doc-sync.
  • Doctrine-content points — mutates/cleanup listed as "consumed" vs human-only (doctrine/msdmd-checks.md:61), and no-exec self:: resolution needing callable objects (test-build/SKILL.md:151) — these are critiques of the canonical doctrine text itself (inherited from skill-lib compute.py / projection.py / risk.py: cleanliness pass #39), not of the vendoring. Editing them here would fork the vendored copy from canonical, which the propagation doctrine forbids. I'm noting both to raise upstream in skill-lib so any fix lands canonically and re-propagates.

So no code changes to this PR beyond the doctrine-file fix already pushed.


Generated by Claude Code

@erinepshovel-code
erinepshovel-code merged commit a61f808 into main Jul 12, 2026
6 checks passed
@erinepshovel-code
erinepshovel-code deleted the claude/skill-lib-compliance-c1osmf branch July 12, 2026 22:10
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants