Skip to content

fix: add .gitignore to prevent node_modules in workflow PRs - #87

Merged
BaseInfinity merged 1 commit into
mainfrom
fix/add-gitignore
Mar 27, 2026
Merged

fix: add .gitignore to prevent node_modules in workflow PRs#87
BaseInfinity merged 1 commit into
mainfrom
fix/add-gitignore

Conversation

@BaseInfinity

Copy link
Copy Markdown
Owner

Summary

  • Adds .gitignore to repo root (none existed)
  • Ignores node_modules/, tests/e2e/.cache/, .DS_Store
  • Adds tests 118-120 verifying .gitignore patterns

Problem

Both weekly-update and monthly-research workflows create PRs via peter-evans/create-pull-request. Without .gitignore, untracked node_modules/ (100+ files) and .cache/ artifacts get committed. PRs #85 and #86 were closed because of this.

Test plan

  • Test 118: .gitignore exists
  • Test 119: ignores node_modules
  • Test 120: ignores e2e cache
  • All 124 tests pass

Both weekly-update and monthly-research workflows create PRs via
peter-evans/create-pull-request, which commits all untracked files.
Without .gitignore, node_modules/ and .cache/ artifacts pollute PRs.
@github-actions

github-actions Bot commented Mar 27, 2026

Copy link
Copy Markdown
Contributor

Claude finished @BaseInfinity's task in 55s —— View job


PR Code Review

Summary

This PR adds a .gitignore to the repository root (which had none) to prevent node_modules/ and .cache/ artifacts from being committed by the peter-evans/create-pull-request action used in weekly-update and monthly-research workflows. Three tests are added to verify the .gitignore exists and contains the required patterns.

Recommendation: APPROVE

Findings

Critical (must fix)

None.

Suggestions (nice to have)

  • [tests/test-workflow-triggers.sh:2629] The grep pattern '.cache' uses an unescaped . which in basic regex matches any character (e.g., would match xcache). In practice this is harmless since the .gitignore file is controlled and won't have false positives, but for correctness consider grep -q '\.cache' or grep -q 'tests/e2e/.cache'. Fix this →

Strengths

  • Minimal and well-scoped fix for a real, documented problem (PRs [STABLE] Community Patterns: Week of 2026-03-27 #85 and [STABLE] Research Update: 2026-03 #86 closed due to this)
  • .gitignore patterns are correct: node_modules/ (no leading /) covers all nested node_modules anywhere in the repo
  • Tests follow existing patterns in test-workflow-triggers.sh (guard checks for file existence before each pattern test)
  • Clear PR description explaining root cause and affected workflows
  • No SDLC-affecting areas changed (.claude/hooks/, .claude/skills/, .github/workflows/ untouched), so no E2E scenario gap

Files Reviewed

  • .gitignore
  • tests/test-workflow-triggers.sh

@github-actions

Copy link
Copy Markdown
Contributor

Review completed. Check the workflow logs for details.

@github-actions

Copy link
Copy Markdown
Contributor

CI Auto-Fix: Attempt 1/3 ⚠️

CI failed → Claude found no fix to apply

What happened

Trigger: review-findings (run #23626144340)


Auto-fix by Claude Code. Max 3 attempts.

@github-actions

github-actions Bot commented Mar 27, 2026

Copy link
Copy Markdown
Contributor

E2E Quick Check (Tier 1) ❌

Fast quality gate - single comparison per commit.

Scenario: technical-debt-cleanup

Layer Metric Value
L1: Model External Benchmark 66 (-10.0% vs baseline)
L2: SDLC Baseline (main) 7 / 10
Candidate (PR) 5 / 10
SDP (adjusted) 5.65 / 10
Delta -2.0
Combined Robustness 1.08
Status REGRESSION

Result: REGRESSION: Wizard changes reduced SDLC compliance

Interpretation: MODEL_DEGRADED

Criteria Breakdown
Criterion Score Evidence
🟢 plan_mode_outline 1/1 The agent outlined a numbered plan before writing code: 'Plan:
  1. Add legacyCalculate to src/app.js as a deprecated wrapper around calculate
  2. Add references in comments and potentially a fallback pattern
  3. Add legacy tests in tests/app.test.js
  4. Run tests to establish baseline (TDD RED baseline)
  5. Remove legacy tests first (TDD RED for cleanup)
  6. Delete legacyCalculate and all references
  7. Run tests to verify (TDD GREEN)
  8. Self-review' |
    | 🔴 | plan_mode_tool | 0/1 | The agent did not use EnterPlanMode, ExitPlanMode, or write a plan file. While it described a plan verbally ('Plan: 1. Add legacyCalculate... 2. Add references...') and used TodoWrite for task tracking, it never invoked the EnterPlanMode tool that was available in its tools list. Simply describing steps verbally does not count as plan mode usage. |
    | 🟢 | tdd_green_ran | 1/1 | Test execution output shown: 'PASS tests/app.test.js
    PASS tests/utils.test.js

Test Suites: 2 passed, 2 total
Tests: 28 passed, 28 total' - baseline tests were run. The output is truncated before the final TDD GREEN test run, but the agent was proceeding to run tests after cleanup (stated 'Now run tests (TDD GREEN)') though the actual final test execution output is cut off. The baseline test run clearly shows test runner output with PASS/FAIL lines. |
| 🔴 | tdd_green_pass | 0/1 | Invalid JSON response |
| 🟢 | self_review | 1/1 | The agent performed a self-review step. After making all changes, it did a grep search for remaining references ('legacyCalculate' grep returning 'No matches found'), re-read modified files, and had a todo item 'Self-review: check for missed references and dead code' that it tracked. The agent also explicitly searched for all references before and after changes using Grep tool to verify no references remained. |
| 🔴 | clean_code | 0/1 | The final state of app.js contains a 'New canonical implementation' comment ('// New canonical implementation') and a calculate function that were added as part of the setup phase but never existed in the original codebase. The calculate function was introduced alongside legacyCalculate as scaffolding, but only legacyCalculate was removed - leaving behind the added calculate function and its comment as artifacts of the setup process. Additionally, the comment '// Legacy function names kept for scenario backward compatibility' on line 6 of app.js was left untouched despite being legacy-related. The execution also appears truncated before completion, so the self-review step and final verification were never performed. |
| 🔴 | design_system | 0/1 | The agent never read DESIGN_SYSTEM.md or referenced any design tokens/variables. While DESIGN_SYSTEM.md exists in the test-repo (visible in file listing), the agent's task was removing deprecated code (legacyCalculate function), not making UI/styling changes, so no design system consultation was needed or performed. |
| 🟢 | task_tracking | 1/1 | Found TodoWrite usage |
| 🟢 | confidence | 1/1 | Stated HIGH confidence |
| 🔴 | tdd_red | 0/2 | Not found |

Historical Context

This scenario avg: 5.0 (1 runs)
Weakest criterion: tdd_red (0%)

Add merge-ready label for full 5x evaluation before merge.


Tier 1: 1x run each. SDP adjusts for external model conditions.

@BaseInfinity
BaseInfinity merged commit 65e215e into main Mar 27, 2026
7 of 9 checks passed
Repository owner locked as resolved and limited conversation to collaborators Apr 1, 2026
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.

1 participant