Commit Graph

207 Commits

Author SHA1 Message Date
1f56098652 syncro: expand skill to full Syncro API surface (assets/RMM/deploy) + verified capability model
Add comprehensive Syncro coverage beyond PSA core:
- New .claude/standards/syncro/api-reference.md: complete verified inventory of ~180
  endpoints across 38 resource types (generated from live OpenAPI 3.0 spec + tenant
  probe 2026-07-10), with worked GET/POST/PUT/DELETE templates and token-capability matrix.
- /syncro: asset read intelligence (patches, installed_applications), asset create/update,
  policy-folder move (move-asset), RMM alerts, and deploy-agent (hybrid installer push via
  GuruRMM using SyncroSetup --console --allow-force-reboot).
- move-asset ships a capability preflight (GET /policy_folders?customer_id -> 401 = missing
  Assets-Policy-Change) + mandatory post-write verify, because an under-scoped token returns
  HTTP 200 and silently no-ops the move.

Correct the "Syncro RMM is API-impossible" belief: it was a token-scope gap, not an API
limit. Live-verified the asset move (flip-and-restore 692253->692278->692253). Token scope
today: Howard + Winter full; Mike (vaulted ...ebbeb3) still 401 pending re-vault.

Corrects memory reference-syncro-rmm-api-gui-only; correction logged to errorlog.md.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-07-10 15:45:26 -07:00
Winter Williams
252d22048b sync: auto-sync from GURU-BEAST-ROG at 2026-07-09 10:09:06
Author: Mike Swanson
Machine: GURU-BEAST-ROG
Timestamp: 2026-07-09 10:09:06
2026-07-09 10:12:27 -07:00
9340cdec17 ask-forum: promote to a full skill + wire into skill-first routing
Add .claude/skills/ask-forum/SKILL.md (usage contract, correlation model,
forum-only scope, access/permissions) and route to it from CLAUDE.md
(skill-first covered domains) + SKILL_ROUTING.md, so sessions invoke the
skill instead of hand-rolling the Discord API — the footgun that produced a
broken background wait. Capture that footgun as memory
feedback_background_task_no_ampersand (run_in_background, never a shell &).

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-07-07 20:12:18 -07:00
8b016edb9d sync: auto-sync from HOWARD-HOME at 2026-07-07 13:55:03
Author: Howard Enos
Machine: HOWARD-HOME
Timestamp: 2026-07-07 13:55:03
2026-07-07 13:55:32 -07:00
3d28f9ea5d sync: auto-sync from HOWARD-HOME at 2026-07-07 11:15:40
Author: Howard Enos
Machine: HOWARD-HOME
Timestamp: 2026-07-07 11:15:40
2026-07-07 11:16:14 -07:00
766c7fa54d sync: auto-sync from GURU-5070 at 2026-07-07 10:26:45
Author: Mike Swanson
Machine: GURU-5070
Timestamp: 2026-07-07 10:26:45
2026-07-07 10:27:22 -07:00
2e262c619e sync: auto-sync from HOWARD-HOME at 2026-07-07 08:48:12
Author: Howard Enos
Machine: HOWARD-HOME
Timestamp: 2026-07-07 08:48:12
2026-07-07 08:48:40 -07:00
ead30520e5 sync: auto-sync from HOWARD-HOME at 2026-07-07 07:23:12
Author: Howard Enos
Machine: HOWARD-HOME
Timestamp: 2026-07-07 07:23:12
2026-07-07 07:23:39 -07:00
bd247191e6 sync: auto-sync from HOWARD-HOME at 2026-07-06 13:43:09
Author: Howard Enos
Machine: HOWARD-HOME
Timestamp: 2026-07-06 13:43:09
2026-07-06 13:46:03 -07:00
b20985d241 sync: auto-sync from GURU-5070 at 2026-07-06 13:43:08
Author: Mike Swanson
Machine: GURU-5070
Timestamp: 2026-07-06 13:43:08
2026-07-06 13:43:38 -07:00
a2a9356a02 sync: auto-sync from GURU-5070 at 2026-07-06 12:39:35
Author: Mike Swanson
Machine: GURU-5070
Timestamp: 2026-07-06 12:39:35
2026-07-06 12:39:59 -07:00
d5f7eadf82 sync: auto-sync from HOWARD-HOME at 2026-07-06 08:29:31
Author: Howard Enos
Machine: HOWARD-HOME
Timestamp: 2026-07-06 08:29:31
2026-07-06 08:30:01 -07:00
b0ebd44c9d sync: auto-sync from HOWARD-HOME at 2026-07-05 19:34:16
Author: Howard Enos
Machine: HOWARD-HOME
Timestamp: 2026-07-05 19:34:16
2026-07-05 19:34:44 -07:00
67822d5ca8 sync: auto-sync from HOWARD-HOME at 2026-07-05 00:45:20
Author: Howard Enos
Machine: HOWARD-HOME
Timestamp: 2026-07-05 00:45:20
2026-07-05 00:45:47 -07:00
66211a5652 sync: auto-sync from HOWARD-HOME at 2026-07-04 19:35:27
Author: Howard Enos
Machine: HOWARD-HOME
Timestamp: 2026-07-04 19:35:27
2026-07-04 19:35:53 -07:00
21b198f1ee sync: auto-sync from HOWARD-HOME at 2026-07-04 17:49:31
Author: Howard Enos
Machine: HOWARD-HOME
Timestamp: 2026-07-04 17:49:31
2026-07-04 17:49:58 -07:00
0da31cbb65 memory: GuruRMM legacy 1.77 build disabled + advance guru-rmm gitlink (tray feature deployed, legacy frozen at 0.6.76)
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-07-04 13:30:06 -07:00
ad6a529ba4 sync: auto-sync from HOWARD-HOME at 2026-07-04 12:42:50
Author: Howard Enos
Machine: HOWARD-HOME
Timestamp: 2026-07-04 12:42:50
2026-07-04 12:43:27 -07:00
60a0a5728f sync: auto-sync from GURU-5070 at 2026-07-04 12:23:18
Author: Mike Swanson
Machine: GURU-5070
Timestamp: 2026-07-04 12:23:18
2026-07-04 12:27:48 -07:00
85c8149495 sync: auto-sync from HOWARD-HOME at 2026-07-04 12:00:16
Author: Howard Enos
Machine: HOWARD-HOME
Timestamp: 2026-07-04 12:00:16
2026-07-04 12:00:44 -07:00
2e167c97fa sync: auto-sync from HOWARD-HOME at 2026-07-03 22:36:52
Author: Howard Enos
Machine: HOWARD-HOME
Timestamp: 2026-07-03 22:36:52
2026-07-03 22:37:24 -07:00
c18e74ed1c sync: auto-sync from HOWARD-HOME at 2026-07-03 21:44:00
Author: Howard Enos
Machine: HOWARD-HOME
Timestamp: 2026-07-03 21:44:00
2026-07-03 21:44:28 -07:00
fceb7c6075 memory + rmm: agy-headless correction, gemini errorlog, bump guru-rmm (Syncro recon + spec plan)
- memory: agy.exe NOW works headless (v1.0.6+ --print/-p, --add-dir) — corrected
  reference_antigravity_agy_not_headless + MEMORY.md index; supersedes the old "DOA headless" note.
- errorlog: gemini-cli OAuth eligibility failure on this machine (agy/ask-gemini).
- bump projects/msp-tools/guru-rmm -> a7ecb9f (RMM_THOUGHTS Feature 11 OS Updates + RMM Fixes batch;
  docs/recon + docs/specs: Syncro policy/device recon + policy-redesign spec plan).

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-07-03 21:24:36 -07:00
e0e3dd0d82 sync: auto-sync from HOWARD-HOME at 2026-07-03 17:00:12
Author: Howard Enos
Machine: HOWARD-HOME
Timestamp: 2026-07-03 17:00:12
2026-07-03 17:01:38 -07:00
8152476ee4 remediation-tool: document the 365 app suite + build consent-audit
Root-caused the recurring '365 suite isn't documented' pain: the apps are fine (tiered by
privilege) but per-tenant consent is NOT uniform and there was no way to see a tenant's
actual grant state. VWP had the Tenant Admin app but no SharePoint app-only role -> silent
401s until this session.

- references/app-suite.md: authoritative, live-verified map of every app, App ID, and
  actually-granted permission per tier; the consent-drift problem + both fix methods
  (adminconsent URL, direct appRoleAssignment grant).
- scripts/consent-audit.sh: audits a tenant (or --all) vs the baseline, grades
  GREEN/AMBER/RED, prints the exact fix per gap. Extends the assign-exchange-role --verify
  pattern to Graph scopes + SharePoint role + EXO role. Verified: BirthBio GREEN, VWP/Cascades
  AMBER (caught real drift - both missing grants).
- SKILL.md: run consent-audit FIRST on any tenant task. Memory + errorlog correction.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-07-02 15:15:08 -07:00
Winter Williams
ac23f17e23 sync: auto-sync from GURU-BEAST-ROG at 2026-07-02 10:55:41
Author: Mike Swanson
Machine: GURU-BEAST-ROG
Timestamp: 2026-07-02 10:55:41
2026-07-02 10:57:33 -07:00
26f47fdd10 sync: auto-sync from HOWARD-HOME at 2026-07-02 09:08:36
Author: Howard Enos
Machine: HOWARD-HOME
Timestamp: 2026-07-02 09:08:36
2026-07-02 09:10:02 -07:00
2937b00ebf sync: auto-sync from GURU-5070 at 2026-07-01 15:49:56
Author: Mike Swanson
Machine: GURU-5070
Timestamp: 2026-07-01 15:49:56
2026-07-01 15:50:54 -07:00
af8a3de00e sync: auto-sync from GURU-5070 at 2026-07-01 13:06:10
Author: Mike Swanson
Machine: GURU-5070
Timestamp: 2026-07-01 13:06:10
2026-07-01 13:07:50 -07:00
6f7f939a62 sync: auto-sync from GURU-5070 at 2026-07-01 09:32:17
Author: Mike Swanson
Machine: GURU-5070
Timestamp: 2026-07-01 09:32:17
2026-07-01 09:33:09 -07:00
01613697c6 sync: auto-sync from GURU-5070 at 2026-06-30 17:21:06
Author: Mike Swanson
Machine: GURU-5070
Timestamp: 2026-06-30 17:21:06
2026-06-30 17:21:47 -07:00
51335db124 sync: auto-sync from HOWARD-HOME at 2026-06-30 11:27:16
Author: Howard Enos
Machine: HOWARD-HOME
Timestamp: 2026-06-30 11:27:16
2026-06-30 11:27:47 -07:00
5e92c33b73 sync: auto-sync from HOWARD-HOME at 2026-06-30 10:37:25
Author: Howard Enos
Machine: HOWARD-HOME
Timestamp: 2026-06-30 10:37:25
2026-06-30 10:37:58 -07:00
31f2bdb84f sync: auto-sync from HOWARD-HOME at 2026-06-29 16:55:22
Author: Howard Enos
Machine: HOWARD-HOME
Timestamp: 2026-06-29 16:55:22
2026-06-29 16:55:55 -07:00
9a6e1157a7 sync: auto-sync from GURU-5070 at 2026-06-29 15:30:34
Author: Mike Swanson
Machine: GURU-5070
Timestamp: 2026-06-29 15:30:34
2026-06-29 15:31:35 -07:00
ca37a606c6 harness: add Definition-of-Done skill routing (auto-gate work with matching check-skills)
Skill-first rule now has two halves: route the request to a doing-skill,
then gate the result with the matching check-skill before 'done' --
inferred from the request, not user-named. Adds .claude/SKILL_ROUTING.md
(on-demand request->doing-skill->check-skill map). Enforcement tier A+B
(CORE rule + map; Stop-hook backstop deferred). Calibrate to stakes,
Ollama Tier-0 for cheap passes.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-26 11:57:44 -07:00
5bace24371 sync: auto-sync from HOWARD-HOME at 2026-06-26 11:40:19
Author: Howard Enos
Machine: HOWARD-HOME
Timestamp: 2026-06-26 11:40:19
2026-06-26 11:40:52 -07:00
1d99dc93ed sync: auto-sync from HOWARD-HOME at 2026-06-25 23:09:59
Author: Howard Enos
Machine: HOWARD-HOME
Timestamp: 2026-06-25 23:09:59
2026-06-25 23:10:26 -07:00
730d26437b sync: auto-sync from GURU-5070 at 2026-06-25 21:13:47
Author: Mike Swanson
Machine: GURU-5070
Timestamp: 2026-06-25 21:13:47
2026-06-25 21:15:00 -07:00
cf960d1b2a sync: auto-sync from HOWARD-HOME at 2026-06-25 20:23:53
Author: Howard Enos
Machine: HOWARD-HOME
Timestamp: 2026-06-25 20:23:53
2026-06-25 20:24:23 -07:00
9f5fedda06 memory: RMM Set-Acl/icacls timeout drops stdout (lost password); generate secrets locally 2026-06-25 19:28:11 -07:00
d4fd71baab sync: auto-sync from HOWARD-HOME at 2026-06-25 12:53:21
Author: Howard Enos
Machine: HOWARD-HOME
Timestamp: 2026-06-25 12:53:21
2026-06-25 12:54:04 -07:00
e9ece35c2a sync: auto-sync from HOWARD-HOME at 2026-06-25 12:45:08
Author: Howard Enos
Machine: HOWARD-HOME
Timestamp: 2026-06-25 12:45:08
2026-06-25 12:45:43 -07:00
e61b39b5c8 sync: auto-sync from GURU-5070 at 2026-06-25 12:35:22
Author: Mike Swanson
Machine: GURU-5070
Timestamp: 2026-06-25 12:35:22
2026-06-25 12:37:54 -07:00
b9d4cfde98 sync: auto-sync from HOWARD-HOME at 2026-06-25 12:30:38
Author: Howard Enos
Machine: HOWARD-HOME
Timestamp: 2026-06-25 12:30:38
2026-06-25 12:31:14 -07:00
4a63b583b7 sync: auto-sync from HOWARD-HOME at 2026-06-25 11:42:29
Author: Howard Enos
Machine: HOWARD-HOME
Timestamp: 2026-06-25 11:42:29
2026-06-25 11:42:58 -07:00
9d68db953f sync: auto-sync from HOWARD-HOME at 2026-06-24 15:39:19
Author: Howard Enos
Machine: HOWARD-HOME
Timestamp: 2026-06-24 15:39:19
2026-06-24 15:39:54 -07:00
7055ce6acd sync: auto-sync from HOWARD-HOME at 2026-06-24 14:48:56
Author: Howard Enos
Machine: HOWARD-HOME
Timestamp: 2026-06-24 14:48:56
2026-06-24 14:49:26 -07:00
be2ae8b07e sync: auto-sync from HOWARD-HOME at 2026-06-24 12:49:35
Author: Howard Enos
Machine: HOWARD-HOME
Timestamp: 2026-06-24 12:49:35
2026-06-24 12:50:03 -07:00
5c77b88654 sync: auto-sync from HOWARD-HOME at 2026-06-24 11:50:01
Author: Howard Enos
Machine: HOWARD-HOME
Timestamp: 2026-06-24 11:50:01
2026-06-24 11:50:29 -07:00