diff --git a/.github/workflows/copyright-check.yml b/.github/workflows/copyright-check.yml index a712559..1e06bcc 100644 --- a/.github/workflows/copyright-check.yml +++ b/.github/workflows/copyright-check.yml @@ -33,7 +33,7 @@ jobs: echo "Default branch detected: ${DEFAULT_BRANCH}" - name: Checkout default branch - uses: actions/checkout@v5 + uses: actions/checkout@v7 with: fetch-depth: 0 # Need full history for proper git attribution ref: ${{ steps.default-branch.outputs.branch }} @@ -265,7 +265,7 @@ jobs: - name: Close existing copyright PRs if: steps.check-changes.outputs.changes == 'true' - uses: actions/github-script@v8 + uses: actions/github-script@v9 with: script: | // Find and close any existing monthly copyright PRs @@ -302,7 +302,7 @@ jobs: - name: Create Pull Request if: steps.check-changes.outputs.changes == 'true' id: create-pr - uses: actions/github-script@v8 + uses: actions/github-script@v9 with: script: | const branchName = '${{ steps.create-branch.outputs.branch_name }}'; @@ -363,7 +363,7 @@ jobs: - name: Request review from repository owner if: steps.check-changes.outputs.changes == 'true' - uses: actions/github-script@v8 + uses: actions/github-script@v9 with: script: | const prNumber = ${{ steps.create-pr.outputs.pr_number }}; diff --git a/.gitignore b/.gitignore index 2f96afa..76e066f 100644 --- a/.gitignore +++ b/.gitignore @@ -61,7 +61,7 @@ __pycache__/ *.pyc # Claude global/project instruction files (local only) -CLAUDE* +CLAUDE.local.md # Claude-generated artifacts (local only) docs/superpowers/ diff --git a/CLAUDE.md b/CLAUDE.md new file mode 100644 index 0000000..d6775e7 --- /dev/null +++ b/CLAUDE.md @@ -0,0 +1,40 @@ +# CLAUDE.md (DesignPatterns) + +## What this is +Reference collection of Gang of Four patterns (plus Cloud, Concurrency, Enterprise, Integration, +Microservices groups) implemented in C# (.NET 8), Java, and JavaScript. Educational examples, no shipped service. +Layout: `///`, each pattern with its own README. + +## Inputs +- Owner requests for new or fixed patterns. No `PROJECT_WORK.md` in this repo. Status tables live in `CSharp/README.md`, + `Java/PATTERN_CATALOG.md`, `Javascript/README.md`. + +## Process +```bash +cd CSharp// && dotnet run # each pattern has its own .csproj +cd Java// && javac *.java && java Main +cd Javascript// && node index.js +``` +Prereqs per README: .NET SDK (8.0 for CSharp), JDK 11+, Node 14+. Keep the same pattern/folder names across all three languages. + +## Outputs +- Nothing deploys. Work on `develop`; the only CI is `.github/workflows/copyright-check.yml` + (monthly copyright header update, opens a PR). New source files need the copyright header. + +## Verification +- `dotnet build` in the changed C# pattern folder, `javac` for Java, `node` for JS; confirm the demo runs. +- No repo-wide test suite. Unknown, verify before assuming otherwise. + +## Read only when needed +| Doing X | Read | +|---|---| +| Pattern list, learning path | `README.md` | +| C# status and structure | `CSharp/README.md`, `CSharp/Creational/IMPLEMENTATION_SUMMARY.md` | +| Java catalog | `Java/PATTERN_CATALOG.md`, `Java/README.md` | +| JavaScript layout | `Javascript/README.md` | +| SEO guidance (generic, 41KB) | `SEO.md` (grep the table of contents) | + +## Landmines +- README status tables can lag the code (e.g. C# Structural shows partial); check folders before claiming completeness. +- Java/JS pattern READMEs may differ from C# ones; keep behavior parity when editing one language. +- Never use em/en dashes. No AI attribution in commits.