Affaan Mustafa
351ccc5a3c
docs+chore: add README Security section; fix lint regressions on main
...
- README: add a visible ## Security section (official sources, vuln reporting via SECURITY.md, GateGuard/IOC/AgentShield guardrails, security guide); make stats line a plain paragraph to clear MD028
- eslint: empty catch comment in run-with-flags.js; drop unneeded escape in github-coordination/parsing.js; remove unused execFileSync import in its test (#2236 follow-ups)
- markdownlint: wrap bare URLs in rules/vue/*.md (#2250 follow-up)
npm run lint green; full suite 2836/2836.
2026-06-16 02:08:14 -04:00
Victor Casado
d4486a7a29
refactor: apply code-review findings to github-native coordination
...
scripts/github-coordination.js:
- parseArgs: replace 13-entry if/else chain with BOOL_FLAGS/VALUE_FLAGS
lookup maps; shrinks from 119 to ~45 lines
- Extract dispatchCommand(options, ctx) and formatOutput(payload, options)
from main(); main() shrinks to ~20 lines
scripts/lib/github-coordination.js:
- Split 1041-line monolith into 6 focused sub-modules under
scripts/lib/github-coordination/ (policy, parsing, gh-api, state,
actions, store); index becomes a thin re-export (~55 lines)
- Document ECC_GH_SHIM trust boundary in runGh() (gh-api.js)
- Document applyClaim() read→check→write race condition (actions.js)
tests/lib/github-coordination.test.js:
- Refactor runTests() to data-driven DESCRIPTORS array + runGroup()
helper; runTests() shrinks to ~10 lines
- Add 5 new edge-case tests: normalizeRepo('') and normalizeRepo(' ')
throw, desiredLabelsForState for blocked/ready statuses, and
buildIssueStateFromAction for validate action (15 → 20 tests)
tests/scripts/github-coordination.test.js:
- Replace console.log in test runner with process.stdout.write
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-06-11 14:05:42 -04:00
Victor Casado
64470f4307
feat: add github-native coordination (epic-* commands + scripts + tests)
...
Adds a GitHub-native coordination layer on top of ECC:
Commands (7 new slash commands):
- epic-claim, epic-sync, epic-validate, epic-publish
- epic-review, epic-unblock, epic-decompose
Scripts:
- scripts/github-coordination.js — CLI entry point
- scripts/lib/github-coordination.js — core library (state machine, gh API wrappers)
- scripts/status.js — coordination status reporter
Config:
- config/github-native-coordination.json — labels, review policy, validation gates
Tests:
- tests/lib/github-coordination.test.js — 15 unit tests for pure functions
- tests/scripts/github-coordination.test.js — integration/CLI test suite
Registry:
- docs/COMMAND-REGISTRY.json — adds 7 epic-* entries, totalCommands 84 → 91
No encoding changes, no prp-* modifications, no Windows shims.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-06-11 12:58:11 -04:00