bradsansnow Claude Sonnet 4.6 commited on
Commit
0bc5d1a
·
1 Parent(s): 5e2010f

Add Makefile and update SKILL.md with logging + heartbeat docs

Browse files

- Makefile: sync (--push), check (--dry-run), logs (tail sync log)
- SKILL.md: document Friday heartbeat card behavior; add Logs section

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>

.claude/skills/sync-nowai-leaderboard/SKILL.md CHANGED
@@ -49,6 +49,17 @@ From the repo root:
49
  (`*.powerplatform.com`), so `lib/teams.mjs` posts an **Adaptive Card** in the
50
  `message/attachments` envelope that template expects — not a raw MessageCard.
51
  - Cards: green ✅ success (with "Open staging" button), red ❌ failure, amber ⚠️
52
- sanity-gate abort. No card on "no changes" (that path returns silently).
 
53
  - The daily 14:00 launchd job (`~/.nowai-sync/`) loads `TEAMS_WEBHOOK_URL` from
54
  `.env` and also fires a local macOS desktop notification for every outcome.
 
 
 
 
 
 
 
 
 
 
 
49
  (`*.powerplatform.com`), so `lib/teams.mjs` posts an **Adaptive Card** in the
50
  `message/attachments` envelope that template expects — not a raw MessageCard.
51
  - Cards: green ✅ success (with "Open staging" button), red ❌ failure, amber ⚠️
52
+ sanity-gate abort, blue 📋 Friday heartbeat (no changes detected shows last
53
+ date `data/leaderboard.json` actually changed). No card on "no changes" Mon–Thu.
54
  - The daily 14:00 launchd job (`~/.nowai-sync/`) loads `TEAMS_WEBHOOK_URL` from
55
  `.env` and also fires a local macOS desktop notification for every outcome.
56
+
57
+ ## Logs
58
+
59
+ Every launchd run appends to `~/Library/Logs/nowai-sync.log`. Each entry includes
60
+ timestamp, `sync exit=<code>`, full sync output, and a `RESULT:` summary line.
61
+ Tail it to confirm the job is running during quiet weeks with no upstream changes:
62
+
63
+ ```
64
+ tail -50 ~/Library/Logs/nowai-sync.log
65
+ ```
Makefile ADDED
@@ -0,0 +1,16 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ SYNC := .claude/skills/sync-nowai-leaderboard/sync.mjs
2
+ LOG := $(HOME)/Library/Logs/nowai-sync.log
3
+
4
+ .PHONY: sync check logs
5
+
6
+ ## Run full sync (commit + push to staging)
7
+ sync:
8
+ node $(SYNC) --push
9
+
10
+ ## Dry-run: print diff, no writes
11
+ check:
12
+ node $(SYNC) --check
13
+
14
+ ## Show last 50 lines of the sync log
15
+ logs:
16
+ tail -50 $(LOG)