mirror of
https://github.com/zvx-echo6/meshai.git
synced 2026-08-26 17:31:34 +00:00
work/meshai/dashboard/static/ held committed vite build artifacts
(index.html + hashed assets/*.js|css + copied public/ images) that were
last built 2026-07-07 (PR #87), 13 frontend commits ago. Docker builds
the frontend fresh and overwrites these on every image build, but the
pip install -e . path (documented in README Quick start) ships this
stale directory verbatim via [tool.setuptools.packages.find] include.
The root .gitignore already had a rule for this
("meshai/dashboard/static/") but it silently stopped matching when
2e1fb325 moved the source tree into work/ -- gitignore patterns
containing a "/" are anchored to the .gitignore's own directory, so the
unprefixed pattern only ever matched a repo-root meshai/dashboard/static/
that hasn't existed since that move. Fixed by prefixing with work/,
matching the existing work/data/secrets/.env convention elsewhere in
the file.
Every file under static/ is generated: assets/* and index.html come
from `vite build` (outDir: ../meshai/dashboard/static, emptyOutDir:
true, confirmed in dashboard-frontend/vite.config.ts), and the two
PNGs are vite's copy of dashboard-frontend/public/*.png (byte-identical
to the source). None of it is hand-authored, so the whole directory is
untracked rather than partially.
Blobs remain in git history; files remain on disk, just untracked.
93 lines
1.5 KiB
Text
93 lines
1.5 KiB
Text
# Operator-identifying config and secrets (v0.3 split)
|
|
/data/config/local.yaml
|
|
/data/config/secrets/
|
|
/data/secrets/
|
|
.env
|
|
.env.local
|
|
.env.*
|
|
!.env.example
|
|
local.yaml
|
|
!local.yaml.example
|
|
# Python
|
|
__pycache__/
|
|
*.py[cod]
|
|
*$py.class
|
|
*.so
|
|
.Python
|
|
build/
|
|
develop-eggs/
|
|
dist/
|
|
downloads/
|
|
eggs/
|
|
.eggs/
|
|
/lib/
|
|
/lib64/
|
|
parts/
|
|
sdist/
|
|
var/
|
|
wheels/
|
|
*.egg-info/
|
|
.installed.cfg
|
|
*.egg
|
|
|
|
# Virtual environments
|
|
venv/
|
|
ENV/
|
|
# v0.5.5: anchor to repo root only -- bare `env/` matched meshai/env/ (the
|
|
# adapter package directory) and forced `git add -f` workarounds in 2.14/2.16.1.
|
|
/env/
|
|
.venv/
|
|
|
|
# IDE
|
|
.idea/
|
|
.vscode/
|
|
*.swp
|
|
*.swo
|
|
*~
|
|
|
|
# Project specific
|
|
config.yaml
|
|
*.db
|
|
*.sqlite
|
|
*.sqlite3
|
|
/data/
|
|
*.log
|
|
|
|
# Secrets
|
|
.env
|
|
*.pem
|
|
*.key
|
|
|
|
# Frontend build output (built in Docker via multi-stage, or manually for
|
|
# the pip install path -- see README "Quick start"). Anchored with the
|
|
# work/ prefix: the bare "meshai/dashboard/static/" pattern silently
|
|
# stopped matching anything after 2e1fb325 moved the source tree into
|
|
# work/, which is how these build artifacts got committed in the first
|
|
# place.
|
|
work/meshai/dashboard/static/
|
|
|
|
# Node (frontend deps, reinstalled via package-lock.json / npm ci)
|
|
node_modules/
|
|
|
|
|
|
# OS
|
|
.DS_Store
|
|
Thumbs.db
|
|
# Operator-identifying config and secrets (v0.3 split)
|
|
/data/config/local.yaml
|
|
/data/config/secrets/
|
|
/data/secrets/
|
|
.env
|
|
.env.local
|
|
.env.*
|
|
!.env.example
|
|
local.yaml
|
|
!local.yaml.example
|
|
data/*.sqlite
|
|
data/*.sqlite-wal
|
|
data/*.sqlite-shm
|
|
|
|
# Secrets (values live here, never committed)
|
|
/data/secrets/.env
|
|
data/secrets/.env
|
|
work/data/secrets/.env
|