Closeout phiên go-live 26/06 (4 commit prod-verified đã push: guide-fix159b69d· wipeba42c59· seed-gate55494ad· user-change-passworde81e87f+ backup local). - STATUS/HANDOFF +S91 entry, state re-ground: Mig 59 · 88 bang · 431 test (45D+386I) · gotcha 76 · menu 54 · bundle admin DgQyuG7f/user BmbQon23 · prod 17 user/7 NCC/0 PE-HD - gotchas #75 (SeedDemoMasterData ungated per-code -> resurrect NCC demo moi restart) + #76 (deploy render appsettings.Production.json tu .example, KHONG file gitignored) - session log 2026-06-26-S91 + feedback_wipe_durability_check_reseed (user memory) - harvest cicd-monitor + test-specialist diary (self-written, verified) - .gitignore +backups/ +*.bak Docs/memory-only -> CI skip (paths-ignore docs/** + **/*.md + .gitignore). Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
116 lines
3.7 KiB
Plaintext
116 lines
3.7 KiB
Plaintext
# =============================================================
|
|
# .NET
|
|
# =============================================================
|
|
bin/
|
|
obj/
|
|
out/
|
|
*.user
|
|
*.suo
|
|
*.ide/
|
|
*.VisualState.xml
|
|
*.pidb
|
|
*.booproj
|
|
*.svd
|
|
*.pdb
|
|
*.mdb
|
|
.vs/
|
|
project.lock.json
|
|
project.fragment.lock.json
|
|
artifacts/
|
|
|
|
# EF Core migrations scratch
|
|
src/**/Migrations/*.Designer.cs.bak
|
|
|
|
# =============================================================
|
|
# Node / React / Vite
|
|
# =============================================================
|
|
node_modules/
|
|
dist/
|
|
dist-ssr/
|
|
.vite/
|
|
*.local
|
|
coverage/
|
|
.eslintcache
|
|
|
|
# =============================================================
|
|
# Logs
|
|
# =============================================================
|
|
logs/
|
|
*.log
|
|
npm-debug.log*
|
|
yarn-debug.log*
|
|
yarn-error.log*
|
|
lerna-debug.log*
|
|
|
|
# =============================================================
|
|
# Editor / OS
|
|
# =============================================================
|
|
.idea/
|
|
.vscode/*
|
|
!.vscode/settings.json
|
|
!.vscode/tasks.json
|
|
!.vscode/launch.json
|
|
!.vscode/extensions.json
|
|
Thumbs.db
|
|
desktop.ini
|
|
.DS_Store
|
|
|
|
# =============================================================
|
|
# Secrets / env
|
|
# =============================================================
|
|
appsettings.*.Local.json
|
|
appsettings.Production.json
|
|
*.env
|
|
.env.local
|
|
.env.*.local
|
|
src/Backend/SolutionErp.Api/.env
|
|
|
|
# Local MCP config — rag-unified stdio, machine-specific absolute paths
|
|
# (python + AI_INFRA claude-rag), no secrets, reconstructable → not shared
|
|
.mcp.json
|
|
|
|
# =============================================================
|
|
# Build artifacts / uploads
|
|
# =============================================================
|
|
src/Backend/SolutionErp.Api/wwwroot/uploads/
|
|
src/Backend/SolutionErp.Api/wwwroot/exports/
|
|
|
|
# =============================================================
|
|
# Claude / skills (keep tracked — these ARE source of truth)
|
|
# =============================================================
|
|
# .claude/ ← DO NOT ignore, skills are committed
|
|
!.claude/
|
|
!.claude/**
|
|
|
|
# HMW-mode marker — session-local toggle (T2: MUST gitignore — commit → clone stuck-ON / ungoverned on-ramp).
|
|
# Pattern AFTER !.claude/** so last-match wins (.claude/ itself not excluded → re-include valid).
|
|
.claude/hmw-mode.on
|
|
|
|
# HMW run-trace folders — Harness-10 (2026-06-18): `.claude/workflows/runs/<run-id>/` is git-TRACKED
|
|
# (run.md + sub-md/ + harvest/ + _ledger.md) for auditability. Stays tracked via the !.claude/** negation
|
|
# above — do NOT add an ignore rule for runs/. Containment model shifts from Harness-2 B6 ("wave-*/ gitignored
|
|
# → any tracked-change post-workflow = stray-write") to Harness-10 ("tracked-change OUTSIDE runs/<run-id>/ +
|
|
# assigned code-disjoint = violation"). Run-trace now VISIBLE in git-diff = direct audit (stronger).
|
|
#
|
|
# Legacy Harness-2 wave-folder + agent-team — kept ignored (superseded by runs/; no wave-*/ remain; harmless).
|
|
# Pattern AFTER !.claude/** so last-match wins (giống hmw-mode.on).
|
|
# ⚠️ check-ignore verify (exit-code nuance): plain `git check-ignore X` exits 1 for a negation/re-included path
|
|
# (NOT 0); only `git check-ignore -v --no-index` shows exit 0 for BOTH. Use the idiom for a correct verdict:
|
|
# `git check-ignore X && echo IGNORED || echo NOT-IGNORED` → runs/ = NOT-IGNORED (tracked); wave-x/ = IGNORED.
|
|
.claude/workflows/wave-*/
|
|
.claude/agent-teams/
|
|
|
|
# Claude harness orphan dumps
|
|
*.zip
|
|
|
|
# Sub-agent output dumps (JSON/HTML scratch)
|
|
tmp/
|
|
|
|
# [S76] Guard cwd-misland (feedback_agent_cwd_relative_memory_misland): sub-agent `cd`
|
|
# vào fe-user/fe-admin chạy npm build rồi ghi MEMORY.md relative-path → stray
|
|
# `fe-*/.claude/agent-memory/...`. Canonical agent-memory ở ROOT `.claude/` vẫn tracked
|
|
# (negation `!.claude/**` trên). Pattern AFTER negation → last-match-wins cho path FE-app.
|
|
fe-*/.claude/
|
|
backups/
|
|
*.bak
|