feat(cli): add smoke command with wood-pairing guide#300
Closed
jongio wants to merge 1 commit into
Closed
Conversation
Add an offline smoke wood guide so pitmasters can pick a wood without guessing. Picking a smoke wood is one of the first questions a new smoker asks and an easy one to get wrong, like mesquite on delicate fish. New SDK module smoke.ts pairs each built-in cut with recommended woods and a smoke intensity, and profiles eight woods from Alder to Mesquite in strength order. Pairings key off the shared meat registry, so aliases like "pulled pork" and "babyback" resolve the same as the canonical names. Pure and offline: no network, clock, or files. New CLI command "thermoworks smoke [meat]": - no argument prints a wood pairing table for every built-in cut - a meat name or alias prints that cut's recommended woods - --woods lists each wood's flavor profile, lightest to boldest - --json emits the pairings, a single cut, or the wood list Adds SDK and CLI tests, README docs, and regenerates the CLI reference. Closes #296 Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> Copilot-Session: ecabbd71-7dd2-42f1-a014-ab6df3686eee
Owner
Author
|
Closing. Keeping the thermoworks CLI focused on device and temperature features: probes, alarms, device health, and live and archived readings. A wood-pairing guide doesn't read device data, so it's out of scope here. |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
What
Adds
thermoworks smoke, an offline smoke wood guide that pairs common cuts with recommended woods and profiles each wood's flavor.Picking a smoke wood is one of the first questions a new smoker asks, and an easy one to get wrong (mesquite on a delicate fish, say). This gives a sensible starting point without a spreadsheet or a login.
SDK
New
smoke.tsmodule:getWoodProfiles()returns eight woods (Alder through Mesquite) in strength order with a one-line flavor note each.getSmokePairings()returns a wood pairing and smoke intensity for every built-in cut.resolveSmokePairing(meat)resolves a cut name or alias to its pairing via the shared meat registry, sopulled porkandbabybackmatch the canonical names. Returnsnullfor unknown cuts.Pure and side-effect free: no network, no clock, no files.
CLI
thermoworks smoke [meat] [--woods] [--json]:--woodslists each wood's flavor profile, lightest to boldest.--jsonemits the pairings, a single cut, or the wood list.Tests and docs
--woods,--jsonfor each shape, and the non-zero exit on an unknown cut.thermoworks smokesection and the CLI reference is regenerated.Full SDK and CLI suites pass, typecheck is clean, and
pnpm lintis green.Closes #296