Commit Graph

826 Commits

Author SHA1 Message Date
b6684d3ebd wiki-lint: improve backlink checker to normalize slugs before validation 2026-05-25 06:38:05 -07:00
3146f86474 wiki: fix malformed backlinks across all articles
Batch-replace [[wiki/clients/slug.md]] → [[clients/slug]] format
throughout overview.md and 6 client articles. The seeding agents used
the full path+extension format; correct convention is type/slug only.

Also fixes [[projects/msp-tools/guru-rmm]] → [[projects/gururmm]]
stale path in internal-infrastructure.md.

Post /wiki-lint run: 0 remaining format violations, 2 legitimate
broken links left (systems/neptune — unseeded; compilation queue entry).

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-05-25 06:37:22 -07:00
f57565bbe2 sync: auto-sync from GURU-5070 at 2026-05-25 06:34:35
Author: Mike Swanson
Machine: GURU-5070
Timestamp: 2026-05-25 06:34:35
2026-05-25 06:34:38 -07:00
baff14451d session-log: 2026-05-25 update — wiki batch 3 + wiki system improvements
11 client articles, 5 project articles seeded (batch 3 complete).
/wiki-lint skill created. /save Phase 4 unseeded check added.
wiki/overview.md recompiled with all 24 clients + 7 projects (~80 action items).

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-05-25 06:30:26 -07:00
b1e5a7bb3b wiki: recompile overview.md + add /wiki-lint skill + /save unseeded check
overview.md recompiled with all 24 client articles and 7 project articles.
Captures ~80 action items sorted by priority; top urgent items: Neptune
cert (2026-05-31), Western Tire SSL (2026-05-30), Kittle eval license.

.claude/commands/wiki-lint.md: new skill — scans clients/ and projects/
for directories with session-logs but no wiki article, checks broken
[[backlinks]], stale last_compiled dates, index gaps, and stale queue
entries. Emits a structured lint report.

.claude/commands/save.md: added Phase 4 unseeded-wiki check — after sync,
if the session log was written for a client/project with no wiki article,
emit a /wiki-compile reminder. Informational only, no blocking behavior.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-05-25 06:13:22 -07:00
2491660b88 sync: auto-sync from GURU-5070 at 2026-05-25 06:00:45
Author: Mike Swanson
Machine: GURU-5070
Timestamp: 2026-05-25 06:00:45
2026-05-25 06:01:37 -07:00
cdd6e6fc8c sync: auto-sync from GURU-KALI at 2026-05-25 05:56:22
Author: Mike Swanson
Machine: GURU-KALI
Timestamp: 2026-05-25 05:56:22
2026-05-25 05:56:23 -07:00
f3e33b5f88 Merge: combine GURU-5070 TGC onboarding session with MacBook GURU-KALI recovery session 2026-05-25 05:50:52 -07:00
ce69ad2a9d sync: auto-sync from Mikes-MacBook-Air.local at 2026-05-25 05:50:34
Author: Mike Swanson
Machine: Mikes-MacBook-Air.local
Timestamp: 2026-05-25 05:50:34
2026-05-25 05:50:35 -07:00
e991e8d604 sync: auto-sync from GURU-5070 at 2026-05-25 05:04:30
Author: Mike Swanson
Machine: GURU-5070
Timestamp: 2026-05-25 05:04:30
2026-05-25 05:04:33 -07:00
e8b19a87f3 sync: auto-sync from GURU-KALI at 2026-05-25 05:02:02
Author: Mike Swanson
Machine: GURU-KALI
Timestamp: 2026-05-25 05:02:02
2026-05-25 05:02:03 -07:00
f4fb131529 wiki: seed remaining clients and projects (batch 3)
Adds 11 client articles and 5 project articles:

Clients: kittle, khalsa, anaise, azcomputerguru.com, bg-builders,
evs, furrier, horseshoe-management, kittle-design, scileppi-law,
western-tire

Projects: discord-bot, radio-show, msp-pricing, wrightstown-smarthome,
wrightstown-solar

Updates wiki/index.md with all new entries, cross-references, and
removes seeded client:birthbiologic from compilation queue.

Critical findings surfaced:
- Kittle: WS2025 EVAL license, no backups, 3 plaintext creds in Syncro
- Western Tire: SSL cert *.westerntire.com expires 2026-05-30
- Kittle Design: active compromise (Ken inbox rule unresolved)
- Horseshoe Mgmt: plaintext creds for 5+ users in Syncro notes

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-05-24 19:59:40 -07:00
30b8020edf sync: auto-sync from GURU-5070 at 2026-05-24 19:43:50
Author: Mike Swanson
Machine: GURU-5070
Timestamp: 2026-05-24 19:43:50
2026-05-24 19:43:52 -07:00
5b82b1d15f sync: auto-sync from GURU-5070 at 2026-05-24 19:43:29
Author: Mike Swanson
Machine: GURU-5070
Timestamp: 2026-05-24 19:43:29
2026-05-24 19:43:32 -07:00
dca6562bc5 sync: auto-sync from Mikes-MacBook-Air.local at 2026-05-24 19:40:12
Author: Mike Swanson
Machine: Mikes-MacBook-Air.local
Timestamp: 2026-05-24 19:40:12
2026-05-24 19:40:14 -07:00
32f64a9561 wiki: seed 9 client articles (internal-infra, peaceful-spirit, cryoweave, glaztech, pavon, grabb-durando, stamback-septic, sombra-residential, birth-biologic)
Notable findings per article:
- internal-infrastructure: Neptune cert expires 2026-05-31, DkimSigner
  disabled (unsigned outbound mail), Cloudflare tunnel on Jupiter
- peaceful-spirit: L2TP/IPsec RRAS VPN; billing/Syncro ID undocumented
- cryoweave: website redesign pending client assets
- glaztech: phishing bypassed MailProtector via secondary MX (fixed);
  no MFA enforcement yet; do not enable Security Defaults yet
- pavon: OwnCloud cron stacking fixed; Nextcloud migration deferred
- grabb-durando: plaintext DB password in README needs vaulting; AI
  demand review app scoped
- stamback-septic: WS2012 EOL server on network
- sombra-residential: Server2013 is actually WS2012 EOL unpatched
- birth-biologic: Datto→SharePoint migration unconfirmed complete

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-05-24 19:38:50 -07:00
b583aeed21 wiki: seed Instrumental Music Center + Valley Wide Plastering articles
instrumental-music-center.md — AIMsi POS on SQL Server 2019 (Standard
under misleading SQLEXPRESS instance name); phantom DC ServerIMC causing
slow logons; GuruRMM enrolled (IMC1 fa99e913); OpenVPN subnet-overlap
hazard; $175/hr prepaid, 12.5 hrs remaining; SQL max server memory fix
approved but unverified applied.

valleywide.md — Valley Wide Plastering; HP DL360 Gen10 VM host + XenServer;
VB6/Access 97 app modernization (130 tables, 791 Crystal Reports, certified
payroll); RDWeb brute-force incident (contained); 11 Yealink phones pending;
iLO requires paramiko (legacy ssh-rsa); $175/hr prepaid, 10 hrs remaining.

wiki/index.md — both clients added to Clients table and Cross-Reference.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-05-24 19:30:27 -07:00
3d91e25a38 feat(sync): add wiki knowledge layer summary to sync/save output
- Added wiki change detection and categorization in sync.sh
- Shows articles by type (clients/projects/systems/patterns/meta)
- Displays status (added/modified/deleted) and counts
- Updated sync.md and save.md documentation
2026-05-24 19:27:00 -07:00
a090397626 sync: auto-sync from Mikes-MacBook-Air.local at 2026-05-24 19:25:09
Author: Mike Swanson
Machine: Mikes-MacBook-Air.local
Timestamp: 2026-05-24 19:25:09
2026-05-24 19:25:10 -07:00
ed12ce33f6 sync: auto-sync from Mikes-MacBook-Air.local at 2026-05-24 18:04:29
Author: Mike Swanson
Machine: Mikes-MacBook-Air.local
Timestamp: 2026-05-24 18:04:29
2026-05-24 18:04:30 -07:00
63109d9033 wiki: seed Dataforth client + dataforth-dos project articles
wiki/clients/dataforth.md — 278 lines: prepaid block contract, all
servers/IPs, full contact table, M365/CA policy details, GuruRMM
enrollment, patterns (RDS/SAGE-SQL quirks, AD anomalies, C2 iptables
not persistent, Win7 EOL), security incident history table.

wiki/projects/dataforth-dos.md — 474 lines: DOS update system +
TestDataDB pipeline, PostgreSQL schema, FAIL→PASS retest rule,
H-prefix decode table, security incident (DF-JOEL2/MFA/IC3), D2TESTNAS
role, Neptune SBR email routing, Hoffman API, all anti-patterns.

wiki/index.md — Dataforth added to Clients + Projects tables and
Cross-Reference; d2testnas added to compilation queue.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-05-24 17:56:35 -07:00
18c5a89abc sync: auto-sync from GURU-KALI at 2026-05-24 17:55:58
Author: Mike Swanson
Machine: GURU-KALI
Timestamp: 2026-05-24 17:55:58
2026-05-24 17:55:59 -07:00
c3d87b6083 sync: auto-sync from GURU-5070 at 2026-05-24 16:54:32
Author: Mike Swanson
Machine: GURU-5070
Timestamp: 2026-05-24 16:54:32
2026-05-24 16:54:34 -07:00
2f99a01e7e wiki: correct GuruRMM fleet state and enrolled client list from live API
- Remove stale BB-SERVER/RECEPTIONIST-PC laggard note (both on 0.6.38)
- Add actual laggards (15 offline agents on older versions)
- Replace 4-entry enrolled sites list with full 12-client table from live API
- Note Saturn agent not present in API (concern resolved)
- Update overview.md fleet count and client table to match

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-05-24 16:48:24 -07:00
e4d3c1f4c2 wiki/memory: Syncro contact rule is global, not Cascades-specific
Update cascades-tucson.md Syncro billing pattern to note the blank-contact
rule applies to all customers. Update feedback_syncro_cascades_contact.md
to be incident-detail only (Meredith Kuhn default), pointing to the global
rule in feedback_syncro_blank_contact.md. Update MEMORY.md index entry.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-05-24 16:40:36 -07:00
e5c31f86e5 sync: auto-sync from GURU-KALI at 2026-05-24 16:37:00
Author: Mike Swanson
Machine: GURU-KALI
Timestamp: 2026-05-24 16:37:00
2026-05-24 16:37:00 -07:00
359f50b2a4 sync: auto-sync from Mikes-MacBook-Air.local at 2026-05-24 16:22:23
Author: Mike Swanson
Machine: Mikes-MacBook-Air.local
Timestamp: 2026-05-24 16:22:23
2026-05-24 16:22:23 -07:00
cbbea8b267 wiki: compile overview.md — cold-start orientation doc
Synthesized from all 6 seeded wiki articles (cascades-tucson, gururmm,
gururmm-build, jupiter, pluto, uranus) + CLAUDE.md. Covers team, all
clients, internal projects (GuruRMM + ClaudeTools), full infrastructure
table, tooling stack, key URLs, and cross-cutting open action items.
Updated wiki/index.md Overview row and removed overview from compilation queue.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-05-24 15:56:04 -07:00
7daca57593 wiki: seed all 4 ACG infrastructure system articles
gururmm-build (172.16.3.30), jupiter (172.16.3.20), pluto (172.16.3.36),
uranus (172.16.3.21) — verified IPs/hostnames against credentials.md,
pluto.md, and infra_office_network.md. wiki/index.md Systems table updated
to reflect seeded state; gururmm-build/jupiter/pluto/uranus removed from
compilation queue.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-05-24 15:49:31 -07:00
5f2c9c6e49 sync: auto-sync from GURU-5070 at 2026-05-24 15:42:45
Author: Mike Swanson
Machine: GURU-5070
Timestamp: 2026-05-24 15:42:45
2026-05-24 15:42:47 -07:00
cd80f5e447 feat: add wiki knowledge layer (Phase 0 + Phase 1 seed)
Implements LLM-compiled wiki layer between raw session logs and live
CONTEXT.md, inspired by Karpathy's knowledge base workflow. Adds wiki/
directory structure, article templates, spec docs, and seeds first two
articles (Cascades of Tucson, GuruRMM) from 60+ session logs.

Updates CLAUDE.md to check wiki first on all context-loading triggers.
Captures verified ACG IP/hostname map and Neptune physical-location
clarification (Dataforth D2, subnet overlap TODO) in memory.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-05-24 15:42:38 -07:00
435e921300 sync: auto-sync from GURU-5070 at 2026-05-24 13:57:13
Author: Mike Swanson
Machine: GURU-5070
Timestamp: 2026-05-24 13:57:13
2026-05-24 13:58:35 -07:00
bd9f8a12f9 sync: auto-sync from Mikes-MacBook-Air.local at 2026-05-24 13:57:12
Author: Mike Swanson
Machine: Mikes-MacBook-Air.local
Timestamp: 2026-05-24 13:57:12
2026-05-24 13:57:13 -07:00
5520220272 session-log: GURU-KALI — fleet converged 0.6.38; laggards noted in coord (a254202a)
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-24 12:34:05 -07:00
ea30199c32 sync: auto-sync from Mikes-MacBook-Air.local at 2026-05-24 12:23:33
Author: Mike Swanson
Machine: Mikes-MacBook-Air.local
Timestamp: 2026-05-24 12:23:33
2026-05-24 12:24:24 -07:00
ebd6893040 session-log: GURU-KALI 2026-05-24 continued (merges, fleet auto-update, ProtectSystem bugs, repo hygiene, straggler) — namespaced to avoid shared-log conflicts
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-24 12:21:29 -07:00
64994688db sync: auto-sync from GURU-5070 at 2026-05-24 12:10:30
Author: Mike Swanson
Machine: GURU-5070
Timestamp: 2026-05-24 12:10:30
2026-05-24 12:11:47 -07:00
04f70c953c chore(gururmm): bump submodule to c1b33d2 (Phase 1 backup complete)
Updates guru-rmm submodule pointer to include:
- Storage threshold alerts (80% warning, 90% critical)
- Agent-to-backup mapping table with confidence tracking
- Manual mapping verification API endpoints

MSP360 backup integration Phase 1 now 100% complete per SPEC-004.

Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
2026-05-24 12:10:01 -07:00
d0b98f769e sync: auto-sync from Mikes-MacBook-Air.local at 2026-05-24 11:30:22
Author: Mike Swanson
Machine: Mikes-MacBook-Air.local
Timestamp: 2026-05-24 11:30:22
2026-05-24 11:30:23 -07:00
38726e3574 chore(gururmm): bump submodule to include SPEC-002 through SPEC-006
Updated guru-rmm submodule to commit dc765ee which includes:
- 5 new comprehensive specifications (SPEC-002 through SPEC-006)
- Updated FEATURE_ROADMAP.md with spec links
- Total: 2058 lines of detailed implementation specs

Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
2026-05-24 10:50:39 -07:00
6d065cf3ee feat(hooks): block backslashed Windows-path redirects in bash
Adds a PreToolUse(Bash) hook (block-backslash-winpath.sh) that rejects commands
redirecting/writing to a backslashed Windows drive path (e.g. > D:\claudetools\
.claude\current-mode). On Git Bash those strip the backslashes and PUA-substitute
':' (U+F03A), creating garbled junk files that have repeatedly polluted the repo.
The hook quote-strips the command first, so the pattern appearing inside strings
or commit messages does not false-trigger; Windows-tool args (icacls, pwsh -File)
and forward-slash/relative paths pass. Wired into settings.json so every machine
picks it up on /sync. Pairs with the sync.sh staging guard.

Also: CLAUDE.md note on the Windows mode-write path; record jq install on GURU-KALI.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-24 10:38:14 -07:00
a3c7064606 chore: purge garbled Windows-path filenames; guard sync.sh against recurrence
Removed 5 tracked files whose names were mangled Windows paths (C:\ProgramData\...,
D:\claudetools\.claude\current-mode, and version-bump script fragments) — the
illegal :/\ chars were stored as Unicode Private-Use-Area substitutes (U+F03A, U+F00A).

Added purge_garbled_paths() to sync.sh: before each 'git add -A', any UNTRACKED path
containing control chars, ':', '\', or PUA U+E000-U+F8FF bytes is removed and not
staged, so this cruft never reaches Gitea again. Tracked content is never auto-deleted.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-24 10:24:06 -07:00
ac4ab9b89b sync: auto-sync from GURU-5070 at 2026-05-24 10:21:25
Author: Mike Swanson
Machine: GURU-5070
Timestamp: 2026-05-24 10:21:25
2026-05-24 10:21:28 -07:00
ee216f1824 sync: auto-sync from Mikes-MacBook-Air.local at 2026-05-24 10:19:50
Author: Mike Swanson
Machine: Mikes-MacBook-Air.local
Timestamp: 2026-05-24 10:19:50
2026-05-24 10:20:05 -07:00
e246f797ad sync: auto-sync from GURU-5070 at 2026-05-24 10:17:21
Author: Mike Swanson
Machine: GURU-5070
Timestamp: 2026-05-24 10:17:21
2026-05-24 10:18:20 -07:00
9c41e82dae sync: auto-sync from GURU-KALI at 2026-05-24 10:16:39
Author: Mike Swanson
Machine: GURU-KALI
Timestamp: 2026-05-24 10:16:39
2026-05-24 10:16:40 -07:00
54a5d23ad3 sync: auto-sync from GURU-5070 at 2026-05-24 10:13:58
Author: Mike Swanson
Machine: GURU-5070
Timestamp: 2026-05-24 10:13:58
2026-05-24 10:14:02 -07:00
ddf4c57174 chore(gururmm): update submodule to include SPEC-001 uninstall hardening
Added comprehensive specification for uninstall protection feature.

Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
2026-05-24 10:13:56 -07:00
5bc6b04b50 feat(feature-request): comprehensive specification generation
Enhanced /feature-request skill to produce full specifications instead
of simple classification messages.

NEW CAPABILITIES:
- Phase 1: Load all project context (roadmap, UI gaps, coding guidelines)
- Phase 2: Ollama-powered classification with similarity analysis
- Phase 3: Codebase search + external research (WebSearch for standards)
- Phase 4: Consult coding guidelines for patterns
- Phase 5: Ollama-generated comprehensive spec (architecture, security, testing)
- Phase 6: Roadmap placement with dependency analysis
- Phase 7: Write formal SPEC-XXX-feature-name.md document
- Phase 8: Update roadmap with links
- Phase 9: Commit to git with proper messages
- Phase 10: Send coord message (if Howard submitted)
- Phase 11: Comprehensive summary to user

SPEC DOCUMENT INCLUDES:
- Overview with use cases and success criteria
- Scope (v1 included + explicitly out of scope)
- Architecture (components, data flow, schema, API endpoints)
- Implementation details (agent/server/dashboard file paths, code patterns)
- Security considerations (auth, validation, audit, threat model)
- Testing strategy (unit, integration, manual scenarios)
- Rollout plan (feature flags, backward compat, migration)
- Effort estimate (Small/Medium/Large/X-Large with breakdown)
- Dependencies (requires/enables)
- Open questions

SUBMODULE UPDATE:
- Created docs/specs/ directory structure
- Added README with naming conventions and status lifecycle

The skill now takes 2-5 minutes but produces sprint-ready specifications
with complete architecture analysis and implementation guidance.

Requested by Mike.
2026-05-24 09:58:58 -07:00
c594c5cd43 chore: update guru-rmm submodule pointer (uninstall hardening feature) 2026-05-24 09:50:53 -07:00