mirror of
https://github.com/software-mansion/argent.git
synced 2026-09-14 19:27:14 +08:00
87a7e77c1f
## What `packages/tool-server/node_modules` is tracked in git as a **self-referential symlink** — mode `120000`, target `/Users/.../packages/tool-server/node_modules` (it points at itself). It was introduced in `300bc30e` (#476) and is the only tracked `node_modules` in the repo; sibling packages have plain empty dirs. Every clone/pull of `main` now materializes a circular **ELOOP** link that breaks any recursive directory walker (`find`, globbers, bundlers, backup tools). Runtime is unaffected — deps hoist to the root `node_modules`, so the loop is silently bypassed. ## Why it slipped past `.gitignore` The `node_modules/` and `packages/*/node_modules/` rules have a **trailing slash → directories only**. Git treats a symlink as a file (blob), so neither rule matched and the path was addable → it rode into #476. `git check-ignore` confirmed it was NOT ignored. ## Fix - Remove the tracked self-symlink. - Drop the trailing slash on both ignore rules so a `node_modules` of **any** type (dir, file, or symlink) is ignored — verified with `git check-ignore` that a symlink at `packages/*/node_modules` is now refused. No runtime code touched.
68 lines
1.8 KiB
Plaintext
68 lines
1.8 KiB
Plaintext
node_modules
|
|
.yarn
|
|
|
|
# Build outputs
|
|
dist/
|
|
build/
|
|
packages/*/dist/
|
|
packages/*/build/
|
|
packages/*/node_modules
|
|
|
|
# TypeScript build info
|
|
*.tsbuildinfo
|
|
**/*.tsbuildinfo
|
|
|
|
# Source maps
|
|
*.js.map
|
|
*.d.ts.map
|
|
|
|
# Packed archives
|
|
*.tgz
|
|
|
|
# OS
|
|
.DS_Store
|
|
|
|
# Misc
|
|
*.log
|
|
1export
|
|
|
|
# Downloaded signed binaries (fetched via scripts/download-*.sh). Layout is
|
|
# per-platform under bin/<process.platform>/ since commit 80e724a; ignore
|
|
# the whole bin/ tree rather than enumerating every host subdir.
|
|
packages/native-devtools-ios/bin/
|
|
packages/native-devtools-ios/dylibs/
|
|
|
|
# Third-party Perfetto trace-processor WASM artifacts (fetched + verified via
|
|
# scripts/download-trace-processor.sh). Ignore the generated files, not the dir,
|
|
# so a future tracked README/.gitkeep isn't masked.
|
|
packages/native-devtools-android/assets/trace-processor/trace_processor.wasm
|
|
packages/native-devtools-android/assets/trace-processor/engine_bundle.node.js
|
|
packages/native-devtools-android/assets/trace-processor/engine.mjs
|
|
packages/native-devtools-android/assets/trace-processor/LICENSE
|
|
packages/native-devtools-android/assets/trace-processor/SHA256SUMS
|
|
|
|
# Argent package generated assets (copied/bundled at build time)
|
|
packages/argent/bin/
|
|
packages/argent/dylibs/
|
|
packages/argent/skills/
|
|
packages/argent/agents/
|
|
packages/argent/rules/
|
|
packages/argent/assets/
|
|
packages/argent/README.md
|
|
|
|
# We do intentionally track internal .claude skills. Do not remove them solely based on .gitignore
|
|
.claude/
|
|
.cursor/
|
|
.vscode/
|
|
.mcp.json
|
|
|
|
# Agent-harness config + skills lock generated by `argent init` when run inside
|
|
# the repo. Same class of artifact as the .claude/.cursor/.mcp.json entries
|
|
# above, just the newer harnesses. skills-lock.json in particular bakes in
|
|
# machine-specific absolute skill paths, so it must never be committed.
|
|
.agents/
|
|
.codex/
|
|
.gemini/
|
|
.opencode/
|
|
opencode.json
|
|
skills-lock.json |