diff --git a/.claude/CLAUDE.md b/.claude/CLAUDE.md index d4d2ea9..dba71e9 100644 --- a/.claude/CLAUDE.md +++ b/.claude/CLAUDE.md @@ -1,67 +1 @@ - -# Claude Code repository contract - -## Scope - -- GDS repository ID: `repo_01KYFD7HCJEQ9V3D7CR9CZCQTF`. -- Roles: `module`. -- Canonical repository facts: `.gds/repository.yaml`. -- Applied policy bundle: `.gds/bundle.lock.yaml` (`0.1.0-dev`). -- This is a first-class Claude Code projection compiled from the same typed - inputs as `AGENTS.md`; neither projection is a manual policy source. - -## Repository boundaries - -- Treat this Git repository as one independent mutation boundary. -- Preserve unrelated dirty changes, branches, worktrees, and submodules. -- Run `gds context --json` before work crosses repository boundaries. -- Do not edit generated projections; change the declared canonical input and - regenerate. - -## Safety - -- External writes require explicit approval: `true`. -- Generated projection edits: `forbidden`. -- Private parent context persistence: `forbidden`. -- Visibility: `public`; data: `public`. - -## Verification commands - -- Test: `python3 -m json.tool config/nddev-contract.json`. - -## Claude workflow routing - -- Start here: run `gds-orient` (or `gds context --json`) to resolve scope before - any cross-repository work. -- Active skill profiles: `core, module`. Five profiles exist in total - (`core`, `estate-admin`, `module`, `device`, `portfolio`); only the listed ones - are active for this repository. The catalog is `skills/registry.yaml`, and each - skill lives under `skills/canonical//SKILL.md`. -- Load procedural detail from the applicable installed GDS skill projection or - plugin only when the task matches it. -- Destructive workflows remain explicit-only and still require their concrete - plan and approval gates. -- Treat documentation and Serena memories as derived evidence, never mutation - authority. - -## Done - -- Required checks pass or are explicitly reported `NOT_PROVEN`. -- Every affected Git boundary and remote result is classified. -- No secret, private-context leak, unrelated change, or unapproved projection - drift is introduced. +@../AGENTS.md diff --git a/.gds/bundle.lock.yaml b/.gds/bundle.lock.yaml index 315b7fe..ef7c261 100644 --- a/.gds/bundle.lock.yaml +++ b/.gds/bundle.lock.yaml @@ -5,16 +5,16 @@ bundle: version: "0.1.0-dev" release_sequence: 0 channel: "development" - source_commit: "97e8bbaa3a0734b156b03bad704503bc46d7575b" - digest: "sha256:fd66beb15c847e94b68a00083df5f218c22f4e1174d39d4bd10ed7fb321b13bc" + source_commit: "5912c2259c99ac300eaea6b6d7b982eefd90a854" + digest: "sha256:1c7ead28013248601e7e8522b2242140ace706bb25e975a8a13df6d52e2b56e7" projection: - input_digest: "sha256:4ae5175926f49a98f7fb36132271f9773900dd5d4acff98f9ffa367645924b56" - output_digest: "sha256:be223ac71fec634fe251cee9c829a2e75c9609dada9f7ac5b887a23c1ec3d2a0" + input_digest: "sha256:aa63dd2da747f7fc521cc7caaafd431ba92ef5b0792b101e589b025290594f27" + output_digest: "sha256:487efea749e59070882ceeb371d69e51b7956c7ae4e8dee8d992e69516d5637b" files: - path: ".claude/CLAUDE.md" - digest: "sha256:bfe23b7dece06b1d85b0ada9b7b3034b5eaf8fbf208ab9612deefd604fcd93f7" + digest: "sha256:7b50d15feae7b63b94d845b2fa6e19e3220527c5b0cac69303b7fc19bd7484a8" - path: ".gds/compiled-policy.json" digest: "sha256:3337cedb0109095ea4cf735a778093c626e232cd3adcf0c8473a0874a0af5f34" - path: "AGENTS.md" - digest: "sha256:02fbca9db1beaf6fe1686d6efb044bd402a914ce558073850c15bd919751461a" + digest: "sha256:37a41633f771e7a95804071538e67836c47c36a142237a2fb8097297b34113d8" diff --git a/AGENTS.md b/AGENTS.md index 36ceb42..292c2b1 100644 --- a/AGENTS.md +++ b/AGENTS.md @@ -1,60 +1,11 @@ - -# GDS repository contract +# Repository instructions -## Scope - -- Repository ID: `repo_01KYFD7HCJEQ9V3D7CR9CZCQTF`. -- Roles: `module`. -- Canonical repository facts: `.gds/repository.yaml`. -- Applied bundle: `.gds/bundle.lock.yaml` (`0.1.0-dev`). -- Compiled policy: `.gds/compiled-policy.json`. - -## Boundaries - -- This Git repository is one independent mutation boundary. +- Treat this clone as one independent Git mutation boundary. - Preserve unrelated branches, worktrees, submodules, and dirty changes. -- Resolve cross-repository work with `gds context --json` before acting. -- Generated files are projections; change their canonical inputs and regenerate. - -## Safety - -- External writes require explicit approval: `true`. -- Generated projection edits: `forbidden`. -- Private parent context persistence: `forbidden`. -- Visibility contract: `public`; data classification: `public`. +- Follow the repository's local documentation and source-owned contracts. +- Keep secrets, credentials, runtime state, caches, logs, and generated evidence + out of version control. -## Development +## Verification - Test: `python3 -m json.tool config/nddev-contract.json`. - -## Agent routing - -- Start here: run `gds-orient` (or `gds context --json`) to resolve scope before - any cross-repository work. It is the orientation entry point. -- Active skill profiles: `core, module`. Five profiles exist in total - (`core`, `estate-admin`, `module`, `device`, `portfolio`); only the listed ones - are active for this repository. The catalog is `skills/registry.yaml`, and each - skill lives under `skills/canonical//SKILL.md`. -- Use on-demand skills for procedures; do not duplicate them here. -- Treat docs and memories as derived evidence, not mutation authority. - -## Done - -- Required verification is complete or explicitly `NOT_PROVEN`. -- Git state and every affected repository boundary are classified. -- No private data, secret, or unapproved generated drift is introduced.