diff --git a/.claude/memory/MEMORY.md b/.claude/memory/MEMORY.md index be295e7..1dc0b2d 100644 --- a/.claude/memory/MEMORY.md +++ b/.claude/memory/MEMORY.md @@ -60,6 +60,7 @@ - [Autonomous infra/build setup](feedback_autonomous_infra_setup.md) — During infra/build/CI/dev setup, just install prerequisites and push through routine steps; reserve check-ins for genuine decisions (forks, destructive/outward, client/prod). - [Check patterns before asking](feedback_check_patterns_before_asking.md) — Before asking how to do something repeat-style (sync, save, sweep, billing), study existing artifacts and workflow docs first; reach for similar past artifacts as the template. - [Cascades scan-to-folder uses svc-scan](feedback_cascades_scan_account.md) — Every scanner->network-folder setup at Cascades reuses the one `svc-scan` AD service account (NTLMv2, vaulted); never make a per-printer scan account. +- [Drive-letter mapping convention](feedback_drive_letter_mapping.md) — Pick the MAIN/primary drive letter first (consistent across users for the principal share), then assign smaller/secondary maps. Don't retroactively renumber existing maps unless asked. - [Calibrate effort to stakes](feedback_calibrate_effort_to_stakes.md) — Don't over-verify or over-engineer low-consequence details; confirm the happy path, note the limitation, and take the simplest path (e.g. put the instruction in the prompt) instead of building robust mechanisms. - [Pricing verification — no guessing](policy_pricing_verification.md) — ANY cost presented to the team or a client MUST be verified via live web lookup (WebFetch/WebSearch, fallback to headless Chrome). Never estimate from training data. Cite source + date inline. If unreachable, say so — do NOT substitute a guess. - [Client communication tone](feedback_client_tone.md) — How to write client-facing Syncro comments — expert partner, not intake questionnaire. diff --git a/.claude/memory/feedback_drive_letter_mapping.md b/.claude/memory/feedback_drive_letter_mapping.md new file mode 100644 index 0000000..1f1bfca --- /dev/null +++ b/.claude/memory/feedback_drive_letter_mapping.md @@ -0,0 +1,16 @@ +--- +name: Drive-letter mapping convention — pick the main letter first +description: When setting up mapped network drives, decide the main/primary drive letter first (the principal share everyone uses gets a consistent main letter), then assign secondary/smaller shares their own letters. Don't retroactively normalize existing maps unless asked. +type: feedback +--- + +When provisioning mapped network drives for users, the order is: **pick the MAIN drive letter first** — the primary share everyone works out of gets one consistent letter across all users — **then assign the smaller/secondary mapped drives** their own letters underneath that. + +**Why:** Howard's standing preference (2026-06-10). A consistent main letter means every user's primary share is at the same place, so support and instructions ("it's on your Y: drive") are uniform; secondary shares are clearly subordinate. + +**How to apply:** +- New drive-mapping work: confirm the main letter with Howard, map the primary share there for all users, then map any secondary ("smaller") shares. +- Do NOT retroactively renumber existing maps to fit the convention unless explicitly asked. (2026-06-10: Howard chose to leave the existing Cascades AcctDept maps as-is — Lauren X:, Chris Y:, Zachary Y: — and apply this only going forward.) +- Watch for letter collisions on a given machine (e.g. the main letter already in use); surface the conflict rather than silently picking a different letter. + +Related: Cascades scan-to-folder shares use [[feedback_cascades_scan_account]]; current Cascades state [[project_cascades]]. diff --git a/clients/universal-minerals/session-logs/2026-06/2026-06-10-howard-cyndyoffice-freeze-diagnosis.md b/clients/universal-minerals/session-logs/2026-06/2026-06-10-howard-cyndyoffice-freeze-diagnosis.md index 1efd24a..a7425e1 100644 --- a/clients/universal-minerals/session-logs/2026-06/2026-06-10-howard-cyndyoffice-freeze-diagnosis.md +++ b/clients/universal-minerals/session-logs/2026-06/2026-06-10-howard-cyndyoffice-freeze-diagnosis.md @@ -172,3 +172,38 @@ more of the environment is learned, per the standard client-wiki pattern. **Reference:** invoice #67810 (id 1650637398); Syncro comments 418397979 (billing, emailed); removal command `a25eaab4-...`; removed agent UUID `28708e66-342f-4130-b192-e308b582f00b`. + +## Update: 13:25 PT — Full wiki recompile (/wiki-compile client:universal-minerals --full) + +Ran the formal full recompile through the staged pipeline to put the client article on the +same footing as the rest of the wiki. + +**Pipeline:** Claimed per-article coord lock (`wiki/clients/universal-minerals`, id +`584904d4-...`, TTL 1h). Pulled live Syncro enrichment (customer 34844920: prepay 0.0 = +break-fix; asset count 0; invoice history #100079 $75 2025-12-17, #67060 $75 2026-02-25, +#67810 $175 2026-06-10). Delegated synthesis to a **Sonnet subagent** (general-purpose, +model sonnet) which read the session log + memory + existing article and returned the +recompiled markdown. Wrote it to `.claude/wiki_staging/client-universal-minerals.md`, +reviewed the `diff -u` against the live article (clean enrichment, Patterns/History +preserved, billing Syncro-authoritative, backlink intact, 8 H2 sections, no corruption), +then applied to the live tree. Committed `5eee825` "wiki: compile universal-minerals +(full)", rebased on origin/main, pushed. Released the lock and cleared staging. + +**Enrichment over the seed:** added Syncro billing history (establishes a long-standing +break-fix relationship with small prior jobs); **corrected ticket #32397 status to +Invoiced** — Syncro auto-moved it from In Progress when the invoice was created (the earlier +"leaving it In Progress" was silently overridden by Syncro's billing flow); added deferred +items (1 GB fixed pagefile, QB 22.0 EOL); refined fault-code detail in Patterns. + +**Lock-release gotcha:** `coord.py lock release` takes the lock **id** as a positional arg +(`lock release `), NOT `release ` like the claim. The Phase 6 example +in the wiki-compile skill (`lock release claudetools "wiki//"`) is wrong — it +errors `unrecognized arguments`. Released correctly with the UUID from the claim. Also note +`lock list` does not accept a project positional. [verify / fix the skill's Phase 6 example] + +**Config changes (this update):** `wiki/clients/universal-minerals.md` (full recompile, +committed 5eee825); `wiki/index.md` (already carried the client row + Cross-Reference from +the 13:15 update). No memory change this step. + +**Reference:** wiki commit `5eee825`; coord lock id `584904d4-d590-47b5-a6f7-4c5a255e8668` +(claimed + released); ticket #32397 now status Invoiced.