Repository navigation
feat: read workspace members from chant's read contract and generate CODEOWNERS - #63
Merged
Merged
Conversation
…CODEOWNERS (#62) Bump @intentius/chant and the github lexicon to ^0.100.0. Add a codeowners subcommand that runs chant workspace ls --json and writes one rule per member directory from an owners file keyed by member name.
… from the workspace directory
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.
Part of #62.
Moves the chant range to ^0.100.0 (nothing broke: typecheck and all tests pass unchanged; the action bundle is rebuilt) and adds
github-warden codeowners.The subcommand reads members through the read contract (
chant workspace ls --json, contract 1, parsed and refused on any other contract), takes owners by member name from an owners file, and prints or writes CODEOWNERS, with--checkfor CI. Docs are in CLI.md and the CHANGELOG.Acceptance criteria:
chant workspace ls --json.status.schema.jsonand not read yet.chant/lifecyclebranch can be protected by a ruleset. Not done here; the ref name is a constant in the status contract.Checks run locally:
npx tsc --noEmit,npm test(570 passed, including one test against a real chant workspace), the mock smoke (npm run test:e2eagainste2e/mock-github/server.mjs),npm run lint:prose(no blocking findings), and the end-to-end CLI write and--checkagainst a temp workspace.