This guide replaces the legacy v1.2.x wiki page and reflects the new module-federated architecture, team configuration system, and diagnostic tooling shipped in Explorer Dates v1.3.0. Follow the quick triage flow first, then jump to the playbook that matches your symptoms.
If you just upgraded from v1.2.x (or earlier), run this once to avoid churn:
- Meet minimums – VS Code 1.105.0+ and Explorer Dates v1.3.x are required.
- Run the migrators
Explorer Dates: Migrate SettingsExplorer Dates: Validate ConfigurationExplorer Dates: Organize Settings(re-homes Explorer Dates files into.vscode/explorer-dates-*and alphabetizes them)
- Choose a preset –
Explorer Dates: Apply Configuration Preset→ pick Developer (full fidelity) or Minimal (lean). Presets load the right chunks for the new module federation layout. - Verify chunks –
Explorer Dates: Show Chunk Status→ ensurefileDecorationsis loaded; enable any disabled chunks you need (onboarding, reporting, templates, workspace intelligence). - Check performance toggles
performanceModeis off by default in v1.3.0; decorations stay high-fidelity and we only throttle background work on large workspaces.- If you see
performanceMode: truein logs, clear explicit settings/environment flags likeEXPLORER_DATES_PERFORMANCE_MODEorEXPLORER_DATES_LIGHTWEIGHT.
- Team configs – If you share settings, open
.vscode/explorer-dates-team.json(or the path shown in notifications) and re-apply viaExplorer Dates: Validate Team Configurationto ensure new schema alignment. - Smart exclusions location – Auto-detected exclusions now live in
.vscode/explorer-dates-exclusions.json; this file is safe to commit for consistent behavior. - Final sanity check – Run
Explorer Dates: Run Diagnostics (Fix Missing Decorations)thenExplorer Dates: Refresh Date Decorations.
- Confirm prerequisites
- VS Code 1.105.0+ (
Help → About) - Explorer Dates v1.3.x (hover the extension in the Extensions panel)
- Run
Explorer Dates: Show Chunk Statusto ensure thefileDecorationschunk is loaded. If a chunk is disabled, re‑enable it or apply theDeveloperpreset viaExplorer Dates: Apply Configuration Preset.
- VS Code 1.105.0+ (
- Use the guided fix flow (two minutes)
Explorer Dates: Run Diagnostics (Fix Missing Decorations)–Ctrl+Shift+HExplorer Dates: Quick Fix Common IssuesExplorer Dates: Refresh Date Decorations
- Validate configuration
- Run
Explorer Dates: Validate Configuration - If you're on a shared profile, also run
Explorer Dates: Validate Team Configuration - Resolve anything flagged as “invalid”, “deprecated”, or “overridden by team config”
- Run
- Collect logs if symptoms persist
- Optionally set
explorerDates.enableLogging: true (raises verbosity) - Open Output → Explorer Dates or run
Explorer Dates: Monitor VS Code Decoration Requests - Keep this information handy if you need to file an issue
- Optionally set
If decorations still misbehave, use the playbooks below.
| Checklist | Why it matters |
|---|---|
Explorer Dates: Toggle Date Decorations → ensure it reports “enabled” |
Decorations can be globally disabled without changing your settings |
Explorer Dates: Monitor VS Code Decoration Requests |
Confirms whether VS Code is even asking the provider for badges |
Explorer Dates: Test VS Code Decoration Rendering |
Registers a dummy provider; if this fails, VS Code itself is blocking decorations |
Explorer Dates: Validate Configuration |
Catches invalid exclusions, conflicting badge priorities, or missing chunk flags |
Explorer Dates: Reset to Default Settings (only if diagnostics show a corrupted config) |
Resets settings while preserving team profiles |
Settings to inspect
{
"explorerDates.showDateDecorations": true,
"explorerDates.badgePriority": "time",
"explorerDates.forceShowForFileTypes": [],
"explorerDates.excludedPatterns": [
"**/.git/**",
"**/node_modules/**",
"**/*.tmp",
"**/*.log"
]
}If excludedPatterns contains **/*, *.*, or file-specific globs (e.g., **/*.jpg) the badges will disappear for those files. Remove or narrow them and rerun Explorer Dates: Refresh Date Decorations.
- Open Settings (
Ctrl+,) → search “Explorer Dates”. - Under Force Show For File Types add the extensions you need:
[".jpg", ".jpeg", ".png", ".gif", ".bmp", ".webp", ".svg", ".pdf", ".mp4", ".mov"]
- Ensure
explorerDates.smartExclusionsorexplorerDates.workspaceIntelligencehaven’t auto-excluded the folder. UseExplorer Dates: Show Workspace File Activityto see what the smart exclusion system is ignoring. - If your workspace applies a team template, open
.vscode/explorer-dates-team.json(or the path shown in the notification) and confirm noexcludedPatternsorexcludedFoldersentries conflict with your needs. If they do, re-runExplorer Dates: Organize Settingsto split user vs workspace overrides cleanly and then adjust your personal settings.
| Action | Notes |
|---|---|
Explorer Dates: Refresh Date Decorations |
Clears caches and forces VS Code to request fresh badges |
Explorer Dates: Debug Cache Performance (Ctrl+Shift+M) |
Look for < 80% hit rate or repeated “stale entry” warnings |
Check explorerDates.badgeRefreshInterval |
Large values (>900s) delay automatic updates |
Enable incremental workers: "explorerDates.enableIncrementalWorkers": true |
Background worker keeps metadata current on large repos |
| Verify file system events are flowing | Explorer Dates: Show Performance Analytics highlights watcher drops. If you see repeated fswatcher_throttled, enable "explorerDates.smartFileWatching": true or fall back to manual refresh |
When working over remote/SSH, VS Code sometimes queues file events. Switching explorerDates.featureLevel to "balanced" or "minimal" reduces watcher pressure.
- Enable
Explorer Dates: Performance Modeor set:{ "explorerDates.performanceMode": true, "explorerDates.showGitInfo": "none", "explorerDates.showFileSize": false, "explorerDates.progressiveLoading": false } - Use
Explorer Dates: Optimize Bundle Size→ accept the suggested preset to unload unused chunks (onboarding, reporting, templates, etc.). - For large mono-repos:
{ "explorerDates.featureLevel": "balanced", "explorerDates.smartFileWatching": true, "explorerDates.maxTrackedActivityFiles": 2500, "explorerDates.enableIncrementalWorkers": false } - Disable status bar + analytics if unnecessary:
{ "explorerDates.showStatusBar": false, "explorerDates.enableExportReporting": false, "explorerDates.enableAnalysisCommands": false }
Symptoms such as “Extension Host using >100% CPU” or “Explorer scroll lag” typically mean too many features are loaded for the current workspace. The optimization command generates a before/after bundle summary so you can verify improvements immediately.
When multiple people share settings via templates or .vscode/settings.json, conflicts can suppress decorations silently.
- Run
Explorer Dates: Validate Team Configuration. - If conflicts are reported, choose View Conflicts to open the diff between team vs user settings.
- Run
Explorer Dates: Organize Settingsto rehydrate misplaced files (thesettingsCoordinatormoves strayexplorer-dates-*.jsonfiles into.vscode/explorer-dates/and updates references automatically). - For legacy settings (pre-v1.3), run:
Explorer Dates: Migrate SettingsExplorer Dates: Clean Legacy Settings
- Confirm the final effective configuration via
Explorer Dates: Show Current Configuration.
Symptoms:
- Repeated warning: “Explorer Dates team configuration could not be saved … Changes will be kept in memory”.
.explorer-dates-profiles.jsonnever updates and team presets disappear after restarting VS Code.- Workspace recently switched to read-only, mounted over SSH/Containers, or the disk ran out of space.
What’s happening:
- Explorer Dates now falls back to in-memory team configuration snapshots whenever writes throw
EACCES,EPERM,EROFS, orENOSPC. - You can keep working—
Explorer Dates: Validate Team Configurationand decorations still read the cached profiles—but nothing persists to disk until the filesystem accepts writes again.
How to recover:
- Fix the root cause
- Re-enable write permissions on the repo folder, remount the share as read/write, or free disk space if
ENOSPCtriggered the warning.
- Re-enable write permissions on the repo folder, remount the share as read/write, or free disk space if
- Flush the cached profile to disk
- Run
Explorer Dates: Validate Team ConfigurationorExplorer Dates: Save Team Profilesonce the workspace is writable. The extension automatically retries the write, clears the warning throttle, and removes the in-memory snapshot.
- Run
- Verify persistence
- Reopen
.explorer-dates-profiles.json(or runExplorer Dates: Validate Team Configuration) to confirm the file exists on disk and no warning banner appears on the next save.
- Reopen
Until the filesystem is writable again, assume the team configuration is ephemeral. If you must capture the temporary changes, copy the JSON shown in the warning dialog to a safe location or export via Explorer Dates: Save Current Configuration as Template before restarting VS Code.
| Command | Shortcut | Purpose |
|---|---|---|
Explorer Dates: Run Diagnostics (Fix Missing Decorations) |
Ctrl+Shift+H |
Guided RCA with auto-remediations |
Explorer Dates: Quick Fix Common Issues |
— | Re-enables decorations, fixes exclusions, refreshes caches |
Explorer Dates: Refresh Date Decorations |
Ctrl+Shift+R |
Forces VS Code to re-request every badge |
Explorer Dates: Monitor VS Code Decoration Requests |
— | Streams decoration requests to the Output channel |
Explorer Dates: Test VS Code Decoration Rendering |
— | Confirms VS Code can render badges at all |
Explorer Dates: Debug Cache Performance |
Ctrl+Shift+M |
Shows cache stats and stale/expired entries |
Explorer Dates: Validate Configuration |
— | Detects invalid settings, deprecated keys, scope conflicts |
Explorer Dates: Validate Team Configuration |
— | Verifies shared templates and conflict resolution |
Explorer Dates: Show Chunk Status |
— | Lists loaded/disabled modules + bundle sizes |
Explorer Dates: Optimize Bundle Size |
— | Generates per-feature performance recommendations |
Keep this table handy when coaching teammates through issues—every command here records enough telemetry (locally) to attach to a support ticket.
When you need to open a GitHub issue, include:
- VS Code version + Explorer Dates version (
Explorer Dates: Show What's New) - Workspace type (local, WSL, SSH, Codespaces, vscode.dev/github.dev)
- Output from:
Explorer Dates: Run Diagnostics(copy the report)Explorer Dates: Show Chunk StatusExplorer Dates: Validate Configuration
- Relevant log lines from Output → Explorer Dates (enable troubleshooting mode first)
- Snippet of your
settings.json(user), workspace.vscode/settings.json, and anyexplorer-dates-*.jsontemplate in play
Support template:
### Environment
- VS Code: 1.105.1
- Explorer Dates: 1.3.0
- Workspace: Local Windows 11
### Symptoms
- No badges after pulling changes
- `Validate Configuration` flags `excludedPatterns` = "**/*"
### Diagnostics
- Run Diagnostics: `Provider Active = false`
- Chunk Status: `fileDecorations` disabled
### Logs- Decorations chunk disabled – Feature gating (module federation) lets you unload large chunks; if the
fileDecorationschunk is off, nothing renders. Re-enable viaShow Chunk Status. - Team template overrides – Shared configs can force exclusions or disable badges; validate team configuration to spot silent overrides.
- Provider throttled by VS Code – Certain VS Code builds throttle decoration providers after too many errors. Use
Test VS Code Decoration RenderingandMonitor VS Code Decoration Requeststo confirm. - Cache poisoning – The cache can store “no decoration” results for excluded files;
Debug Cache Performance+ manual refresh clears these entries. - Other extensions – File explorer replacements and Git decorators sometimes consume the decoration budget. Disable them temporarily or use
Developer: Set Log Level→ Trace to confirm conflicts.
Remember: every troubleshooting command listed here is available in both desktop VS Code and the web bundle (vscode.dev, github.dev). If a command is hidden, the corresponding feature chunk is disabled—enable it in Show Chunk Status first.
Run these npm scripts before merging any path-handling or file-system change (and whenever the provider feels “off” after refactors):
npm run test:security-utils– targeted suite that exercises traversal detection, dangerous character filtering, sanitization, workspace boundary enforcement, and ReDoS guards.npm run test:suite– full regression pack (includes the security suite at the end) for release candidates or when you need end-to-end assurance.
CI runs npm run test:security-utils on every PR/push to main/develop, so local failures will block your build anyway—save time by running it before pushing.
Need to loosen the new security guardrails for migrations or harnesses? Use the runtime settings (via Settings UI or settings.json):
explorerDates.security.enforceWorkspaceBoundaries– master switch; leave on for normal workspaces, flip off only when sandboxing already handled elsewhere.explorerDates.security.enableBoundaryEnforcement– preferred version of the setting above; when left untouched it stays on in production builds but relaxes automatically in dev/test environments.explorerDates.security.allowedExtraPaths– absolute paths Explorer Dates should treat as trusted (e.g., temp migration directories or fixture roots).explorerDates.security.allowTestPaths– keeps test runners happy by relaxing boundary checks automatically whenEXPLORER_DATES_TEST_MODE=1orNODE_ENV=test.explorerDates.security.logThrottleWindowMs– de-duplicate repetitive warnings by raising/lowering the throttle window (default 5000 ms).explorerDates.security.maxWarningsPerFile– cap how many warnings a single file can emit per session (default 1; set to 0 for unlimited auditing).
You can also set EXPLORER_DATES_SECURITY_EXTRA_PATHS=/tmp/fixtures:/var/migrations (use ; on Windows) to append additional roots without touching workspace settings.