Skip to content

Session Handoff [default]: Instruction Set Converged, Workflow Chain Adoption and README Next #280

Description

@ptr727

Next Steps, in Priority Order

  1. Adopt the hub's reusable workflow chain. This is the hub rollout item "ESPHome-NonRoot (docker-prepare hook for the upstream pin)" in the hub's docs/reusable-workflows.md "Stage 4", plus the Stage 2 gates.
    • Delete the six hub-hosted task files: build-docker-task.yml, build-release-task.yml, check-upstream-version-task.yml, get-version-task.yml, publish-plan-task.yml, and validate-task.yml.
    • Replace them with caller stubs pinned to a hub release SHA, plus hooks:
      • docker-prepare, which reads upstream-version.json for the :<esphome> tag and the ESPHOME_VERSION / DEVICE_BUILDER_VERSION build args.
      • A validate hook carrying the firmware compile-test job.
      • resolve-upstream for the tracker.
    • Fold check-upstream-dependency.yml into the hub's check-upstream-version-task.yml with auto-merge: false, per the hub's spec/divergences.json note on that file.
    • Delete repo-config/ (disposition retire) and sweep its inbound references in WORKFLOW.md.
    • Add the devcontainers Dependabot ecosystem for both branches.
    • This also closes Re-carry AGENTS.md, WORKFLOW.md, and publish-plan-task.yml: the hub adopted both upstream proposals, with changes #168, whose publish-plan-task.yml convergence the deletion supersedes.
    • Done when python3 spec/audit.py --branch <feature-branch> ESPHome-NonRoot shows no hub-only:, interface: or dependabot: finding, and a real publish succeeds after promotion. The publish is the true test, since secrets:, permissions: and hook resolution only resolve in a real run.
  2. Fix Compile Error: "Opus: 'patch' command not found" #279, the image missing a patch utility. ESP-IDF's micro-opus managed component shells out to patch, so a build using it fails in the image. Add the Debian patch package to the Dockerfile's runtime stage, and consider a compile-test fixture that pulls a managed component. Done when the reporter's configuration class compiles in a locally built image.
  3. README structure PR. Bring README.md in line with the hub's spec/readme-structure.md:
    • Make the tagline link-free.
    • Add the Table of Contents, Build and Distribution, Questions or Issues and 3rd Party Tools sections.
    • Delete the retired byob.yarr.is last-build shield.
    • Rename commit-link to commits-link and docker-link to docker-hub-link, strip the suffix from license-link, and group the reference definitions.
    • Then set the About panel and the Docker Hub short description from the tagline, which today differ from it by a trailing period.
  4. Promote develop to main once the above land, using merge-and-release with an explicit go-ahead. The first promotion meets an EOL-only conflict on upstream-version.json, because main's tracker still writes CRLF until promotion. Resolve it by taking develop's side.

External Blockers

  • The stale DOCKER_HUB_PASSWORD secret in both the Actions and Dependabot stores is claimed by no mechanism, since the workflows read DOCKER_HUB_ACCESS_TOKEN. Deleting a secret is the maintainer's call. Ask, and meanwhile leave it alone.

Internal Dependencies

State

  • develop is at c383370, with Move the Repository to the Fleet LF Line-Ending Default #275 and Split AGENTS.md Onto the Fleet Router Model and Carry the Instruction Set #276 merged. main has neither, so no promotion or release has happened.
  • Worktrees from this round, to remove once their branches are gone: resync/eol-lf and resync/instruction-set in ESPHome-NonRoot, and one detached hub worktree at hub main. Re-derive them with git worktree list.
  • Repository configuration was applied with the hub's configure.sh apply. check reports Configuration matches.
  • Audit on develop: 2026-09-26T13:21:36Z | hub 45669468 | branch override develop reports 11 findings, all in the classes named in the next steps.

Parked Decision Queue

0 issues carry decision in this repository.

What the Last Round Did

What Not to Repeat

New Learnings

Activity

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

Metadata

Metadata

Assignees

No one assigned

    Labels

    handoffA link in the session handoff chain, one open issue per track

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions