Skip to content

feat(cmd): add side-aware targeting and trends telemetry#35

Open
igormf wants to merge 2 commits intosteipete:mainfrom
igormf:feat/side-aware-targeting-pr
Open

feat(cmd): add side-aware targeting and trends telemetry#35
igormf wants to merge 2 commits intosteipete:mainfrom
igormf:feat/side-aware-targeting-pr

Conversation

@igormf
Copy link
Copy Markdown

@igormf igormf commented Apr 17, 2026

Summary

This is the follow-up feature PR requested in #30 after #24 landed.

It keeps the auth/runtime fixes that merged through #24 on main and layers the user-facing targeting improvements on top of the current codebase.

What Changed

  • add side-aware targeting helpers so commands can address left, right, all, or an explicit household user
  • make status report discovered household targeting mode, including split sides vs solo
  • make on, off, and temp default to all discovered targets when no side/user is provided
  • keep per-user control paths for households that expose individual users instead of simple side labels
  • add timezone-aware trends/presence support and tests around the new targeting logic
  • preserve the token cache/runtime compatibility needed for local Windows execution

UX Notes

Examples supported by this branch:

  • eightctl status
  • eightctl on
  • eightctl off --side right
  • eightctl temp -- -40
  • eightctl temp --side left 20
  • eightctl presence --from 2026-04-01 --to 2026-04-07

If the household is split, side names are surfaced. If the device is effectively single-zone, commands report solo and target the single available zone.

Verification

  • go test ./...
  • golangci-lint run ./...

Context

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant