From 01abf21a1f20b69a4d138ff5f9e3356865ad0de9 Mon Sep 17 00:00:00 2001 From: Howard Enos Date: Tue, 5 May 2026 17:13:16 -0700 Subject: [PATCH] sync: auto-sync from HOWARD-HOME at 2026-05-05 17:13:15 Author: Howard Enos Machine: HOWARD-HOME Timestamp: 2026-05-05 17:13:15 --- ...-05-05-howard-chef-pc-slow-and-mdirector-ram.md | 14 ++++++++++++++ 1 file changed, 14 insertions(+) diff --git a/clients/cascades-tucson/session-logs/2026-05-05-howard-chef-pc-slow-and-mdirector-ram.md b/clients/cascades-tucson/session-logs/2026-05-05-howard-chef-pc-slow-and-mdirector-ram.md index e18829d..f979f8d 100644 --- a/clients/cascades-tucson/session-logs/2026-05-05-howard-chef-pc-slow-and-mdirector-ram.md +++ b/clients/cascades-tucson/session-logs/2026-05-05-howard-chef-pc-slow-and-mdirector-ram.md @@ -222,3 +222,17 @@ What happened on Ticket #32253: - [ ] Patch `.claude/commands/syncro.md` `timer_entry` example: change `jq -r '.timer.id // .timer_entry.id'` to `jq -r '.id'`. Same fix applies to the `charge_timer_entry` response (also flat — `.ticket_line_item_id` directly on the root). - [ ] Decide on the dual-channel rebalance for MDIRECTOR-PC if a 0.5-hr session of "reboot + close apps + reseat single 4GB stick" doesn't resolve user complaints within ~2 weeks. - [ ] Schedule Chef-PC Windows reinstall (ticket #32254). Reinstall on its own will not remove the previous-MSP agents on the rest of the fleet — track that as the parent fleet-cleanup decision (still on Mike). + +--- + +## Update: 16:48 PT — Syncro skill patched (closes earlier pending item) + +`.claude/commands/syncro.md` patched in commit **`eb73a55`** (+41 / −6). Three changes: + +1. **Default timer-billing block** — added a "CRITICAL — response shapes are FLAT" note with verified JSON for both `POST /timer_entry` and `POST /charge_timer_entry`. Added a "CRITICAL — duplicate prevention" note: verify any ambiguous timer_entry response with `GET /tickets/{id}` → `.ticket.ticket_timers[]` (the global `/ticket_timers?ticket_id=N` does NOT filter — it returns the entire history). Rewrote the example to capture `TIMER_ID=$(... | jq -r '.id')` and pass via interpolated heredoc into the charge call. + +2. **Full billing workflow example (Step 2)** — fixed `TIMER_ID=$(... | jq -r '.timer.id // .timer_entry.id')` to `jq -r '.id'` with an inline back-reference to the response-shape note. + +3. **List-timers row in both endpoint tables** — changed from misleading `GET /ticket_timers?ticket_id=N` (no filter) to `GET /tickets/` → `.ticket.ticket_timers`. + +The feedback memory at `.claude/memory/feedback_syncro_timer_response_shape.md` remains as the incident record. Future Syncro billing on this skill should hit the correct path on the first call. Closes the "Patch `.claude/commands/syncro.md`..." pending item from the 16:42 update above.