Skip to content

fix(homebridge-teslemetry): finish npm publish readiness for the same-name major hard cut - #70

Merged
Bre77 merged 1 commit into
mainfrom
fm/hb-monorepo-publish-future
Jul 28, 2026
Merged

fix(homebridge-teslemetry): finish npm publish readiness for the same-name major hard cut#70
Bre77 merged 1 commit into
mainfrom
fm/hb-monorepo-publish-future

Conversation

@Bre77

@Bre77 Bre77 commented Jul 28, 2026

Copy link
Copy Markdown
Member

Intent

  • feat(homebridge-teslemetry): same-name major hard cut over legacy package #63/fix(homebridge-teslemetry): correct version baseline for the major hard-cut bump #65 landed the same-name major hard cut (unscoped homebridge-teslemetry, version baseline 1.0.0), but the package still had a few loose ends before a real npm publish would be clean.
    • Added publishConfig (access/provenance) matching every other publishable package (api, n8n-nodes-teslemetry, node-red-contrib-teslemetry, iobroker.teslemetry) - homebridge-teslemetry was the only one missing it.
    • Added a package-local LICENSE file (the legacy 0.4.x tarball ships one; this package didn't) and included it in files. Fixed the README's LICENSE/CONTRIBUTING.md links, which pointed at root-level files that don't exist anywhere in this repo.
    • Removed the latitude/longitude "Homelink Location" fields from config.schema.json and settings.ts - Homelink itself was dropped in the feat(homebridge-teslemetry): same-name major hard cut over legacy package #63 service-count reduction (11 vehicle services, no Homelink) but this dead config survived, so real users installing today would see a config option that does nothing.
    • Rewrote the README's stale "Phase 1 done / Phase 2 coming soon" feature list - all of Phase 2 (battery, lock, climate, charge port/switch/limit, defrost, door sensors, sentry, wake, plus energy backup reserve/operation mode/storm watch/grid charging) is already implemented; the README just hadn't caught up.
  • Auth gate confirmed, not resolved here. Checked the actual failed publish run (chore: version packages #66, run 30060302741): changeset publish correctly detects homebridge-teslemetry@1.0.0 as unpublished and attempts it via OIDC trusted publishing, but npm returns E404 Not Found - PUT .../homebridge-teslemetry. Someone with npm org-owner access on homebridge-teslemetry needs to register this repo's GitHub Actions workflow as a trusted publisher on npmjs.com (Package Settings → Trusted Publisher) before the next merge to main will succeed. No repo changes can work around this - it's an npmjs.com-side registration.
  • No new changeset added. homebridge-teslemetry is already at 1.0.0 in package.json and unpublished on npm, so changeset publish will publish it as-is on the next successful CI run - adding a changeset now would just bump past 1.0.0 before it ever ships. Confirmed locally: npm pack produces a 6-file tarball (dist/, config.schema.json, LICENSE, package.json, README.md) matching the legacy package's essential file set.
  • Post-publish follow-ups (captain/firstmate, not in this PR):
    1. Once 1.0.0 is live, run npm deprecate homebridge-teslemetry@"<0.5.0" "Superseded by homebridge-teslemetry@1.0.0 (monorepo rewrite) - see https://github.com/Teslemetry/typescript-teslemetry/tree/main/packages/homebridge-teslemetry" against the legacy 0.4.x line.
    2. Retire/archive the legacy teslemetry/homebridge GitHub repo per the captain's no-dual-maintain ruling.

Verified locally: pnpm --filter homebridge-teslemetry build/tsc/test (90/90 passing), pnpm lint, pnpm -r --no-bail tsc + iobroker.teslemetry check, full pnpm test, and pnpm --filter homebridge-teslemetry pack all pass.

…-name major hard cut

- Add publishConfig (access/provenance) and a package-local LICENSE file,
  matching the other publishable packages - the legacy 0.4.x package ships
  a LICENSE and the monorepo package had none.
- Fix the README's license/contributing links, which pointed at a root
  LICENSE/CONTRIBUTING.md that doesn't exist anywhere in this repo.
- Remove the config.schema.json/settings.ts latitude/longitude "Homelink"
  fields - Homelink was dropped in the #63 hard cut but the dead config
  survived, so real users would see a config option with no effect.
- Rewrite the stale "Phase 1/Phase 2 coming soon" feature list to match
  what's actually implemented in src/vehicle-services and src/energy-services.

@chatgpt-codex-connector chatgpt-codex-connector Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: fb68c92d1d

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

Each energy site appears as its own set of accessories:

- **Battery** - Charge level
- **Operation Mode** - Switch between self-consumption, backup, autonomous, and time-based control

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P2 Badge Stop promising writable time-based control

For users selecting the documented time-based operation mode, the service does not switch modes: operation-mode.ts explicitly treats time_based_control as read-only, logs a warning, and returns without calling the API (lines 93–100). Document this mode as status-only rather than listing it among the modes users can switch to.

Useful? React with 👍 / 👎.

@Bre77
Bre77 merged commit 70929d1 into main Jul 28, 2026
1 check passed
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