chore: bump examples + bench to v0.2.0 and migrate example to voice module#40
Merged
Conversation
With voice/v0.1.0, sdk/v0.2.0 and sdkx/v0.2.0 all published, the
example can finally consume the new module layout from the proxy:
github.com/GizClaw/flowcraft/sdk/speech/* -> voice/*
github.com/GizClaw/flowcraft/sdkx/{stt,tts}/* -> voice/{stt,tts}/*
go.mod changes:
+ require voice v0.1.0
~ require sdk v0.1.12 -> v0.2.0
~ require sdkx v0.1.14 -> v0.2.0
This is the migration that PR #37 (the voice extraction) had to defer
because no published voice artifact existed yet.
Made-with: Cursor
bench used `replace github.com/GizClaw/flowcraft/{sdk,sdkx} => ../{sdk,sdkx}`
so it always built against in-tree source, regardless of the require
version. With sdk/v0.2.0 + sdkx/v0.2.0 published — both of which
contain every package bench imports (sdk/recall, sdk/retrieval,
sdk/history, sdkx/{llm,embedding}/{azure,qwen}) — the replace is
dead weight and actively misleading: it hides whether bench can
build from published artifacts (e.g. when CI checks out a fork).
Pin to v0.2.0 and remove the replace block. bench is still GOWORK=off
in the Makefile so the pin is honoured during local make ci runs.
Drive-by fix for the `go: updates to go.mod needed; to update it: go
mod tidy` error that has been failing `make vet` on main since the
voice extraction landed (PR #37) — bench is not in the CI path
filter so the breakage went unnoticed in CI.
Made-with: Cursor
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.
Summary
Two follow-ups to the v0.2.0 release that didn't fit in the
extraction PR (#37) or the dep-bump PRs (#38, #39):
examples/voice-pipeline— migrated to the newvoicemodulelayout. PR refactor: extract speech stack into standalone voice module [skip-tag] #37 had to defer this because no published
voiceartifact existed yet. With
voice/v0.1.0on the proxy, the examplenow consumes:
voice v0.1.0(was: STT/TTS providers fromsdkx/{stt,tts}/*,pipeline + types from
sdk/speech/*)sdk v0.2.0(wasv0.1.12)sdkx v0.2.0(wasv0.1.14)bench— drop thereplace ../{sdk,sdkx}block and pin tothe published
v0.2.0artifacts. The replace was masking along-standing question — can bench actually build from published
modules? — and was causing
make vetto fail onmainever sincethe voice extraction shifted sdk's indirect dependency closure
(bench is GOWORK=off, so its go.mod/go.sum lockfile must stay in
sync with whatever
../sdk/go.moddeclares). bench imports onlypackages that exist in
sdk@v0.2.0(sdk/recall,sdk/retrieval,sdk/history) andsdkx@v0.2.0(sdkx/llm/{azure,qwen},sdkx/embedding/{azure,qwen}), so the pin works cleanly withoutthe replace.
This is also a drive-by fix for the silent CI breakage: bench is
not in
ci.yml'spaths-filter, so the broken vet only surfacedwhen running
make cilocally.Commits
chore(examples/voice-pipeline): migrate to voice module + bump depschore(bench): drop replace and pin sdk + sdkx to v0.2.0make vetTest plan
make ci(vet + test on sdk + sdkx + voice + bench + examples/voice-pipeline) greencd examples/voice-pipeline && GOWORK=off go vet ./...greencd examples/voice-pipeline && GOWORK=off go build ./...greencd bench && GOWORK=off go test ./... -count=1greenAuto-tag
This PR touches only
examples/andbench/, neither of which is inauto-tag.yml's path filter, so no tag bump will fire on merge.Follow-up (optional)
Add
bench/**toci.yml'spaths-filterand lint job so future sdkchurn that breaks bench's tidy state is caught in CI rather than only
during local
make ciruns.Made with Cursor