67 lines
3.4 KiB
Markdown
67 lines
3.4 KiB
Markdown
---
|
||
title: Metrix – Common Issues & Resolutions
|
||
type: curated
|
||
permalink: main/projects/d5a7f581-c442-4554-87b9-ee723b8b0258/curated/development/metrix-common-issues-resolutions
|
||
stable_id: 1e1b9a7e-5897-4c82-b267-279a8c54b150
|
||
scope: project
|
||
project_id: d5a7f581-c442-4554-87b9-ee723b8b0258
|
||
workspace_type: development
|
||
usage_profile_id: null
|
||
preference_context: development
|
||
document_type: troubleshooting
|
||
revision: 1
|
||
source_memory_ids: []
|
||
source_checkpoint_ids: []
|
||
source_file_ids: []
|
||
source_git_commit: e660bc7bb4fc5ccda47decb4d514874a148ed9b2
|
||
source_git_commits:
|
||
- e660bc7bb4fc5ccda47decb4d514874a148ed9b2
|
||
source_agent_sync_ids: []
|
||
model_connection: Sub2API
|
||
model_name: git-restore
|
||
source_count: 29
|
||
source_revisions: {}
|
||
source_dispositions:
|
||
processed: 29
|
||
unchanged: 0
|
||
unsupported: 0
|
||
skipped: 0
|
||
cited_source_ids: []
|
||
job_cited_source_ids: []
|
||
conflicts: []
|
||
supersedes: []
|
||
preferences: []
|
||
source_cursor: 162
|
||
source_hash: e2fcea7c8a9e0df7a91925fb2a9beabd922058868310effc908f95df2d78b218
|
||
prompt_version: 2026-08-12.3
|
||
schema_version: '3'
|
||
curation_job_id: null
|
||
created_at: '2026-08-19T02:32:30.066112+00:00'
|
||
updated_at: '2026-09-23T15:09:30.180462+00:00'
|
||
tags:
|
||
- troubleshooting
|
||
- issues
|
||
restored_from_commit: 6a6a895eafcca6052e81a14fca103a42635dd1c2
|
||
---
|
||
|
||
## Troubleshooting Summary (compiled from baseline)
|
||
|
||
| # | Symptom | Cause | Solution |
|
||
|---|---------|-------|----------|
|
||
| 1 | Windows directory rename locked (`git status` “cannot move”) | IDE holds handle on `.git` | Stop IDE, move `.git` aside, rename, move back, `git submodule sync` |
|
||
| 2 | `/health` endpoint never returns | Async handler performed blocking I/O | Convert handler to regular `def` (thread‑pool) |
|
||
| 3 | Docker `exec` sessions disconnect after ~3 s | Default socket timeout | After `exec_start`, call `socket.settimeout(None)` |
|
||
| 4 | Missing `api_enabled` flag → `forbidden` error | Flag absent in `core/config.py` | Add `api_enabled: bool = True` (configurable) |
|
||
| 5 | Hard‑coded credentials in `pypi_mirror.py` | Placeholder left in code | Use environment variables or Vaultwarden for secrets |
|
||
| 6 | `create-module.mjs` typo (`___SNAKE___snapshot`) | Template typo | Fix placeholder to correct name |
|
||
| 7 | `pytest.ini` points to empty test dir | No tests present | Add test files or update config |
|
||
| 8 | Generic `except Exception: pass` in container exec WS | Swallows errors | Replace with logged exception + WebSocket close |
|
||
| 9 | Permission expansion not applied (`resource:* → read`) | Expansion logic missing | Ensure `expand_permissions` runs during seeding |
|
||
|10| Shiki theme not syncing on UI theme change | Shiki instance not updated | Watch `appStore.dark`, call `shiki.setTheme` |
|
||
|11| Terminal copy‑paste fails on Windows named pipes | Missing error handling | Add UI toast & fallback to TCP |
|
||
|12| Column‑width reset on reload | Width stored only in `localStorage` | Persist via `/api/user/preferences` |
|
||
|13| Duplicate CGI merge strategy undefined | No config option | Add `duplicate_cgi_merge` setting (`highest|latest|average`) |
|
||
|14| Internal PyPI cache grows unbounded | No eviction policy | Background job to delete oldest wheels when limits exceeded |
|
||
|15| Re‑reported missing `api_enabled` flag (duplicate) | See #4 | — |
|
||
|
||
These solutions have been applied where marked **✅ Completed** in the task list. Remaining items are tracked in the **High‑Priority Open Work Items** table (source `curated_baseline:13ffa178‑e9cf‑4735‑8da4‑e1d4cf683a52`). |