Mirror amicode #929/#964: the 3-arg promptDesignPlaceholder translate callback - #329
Merged
Conversation
…k (mirror of amicode #929/#964) Provenance: amicode#964 — the fork→overlay sync (ff7b69c8) regressed amicode#929's fix (59b447e7) because the fork (this repo, the sync source) never carried it: prompt-input-v2.tsx called promptDesignPlaceholder with 2 args while the helper amicode materializes (upstream v1.18.29) takes 3 and calls the translate callback in the non-shell branch — every non-shell composer render threw minified 'n is not a function'. Aaron hit it live post-cutover 2026-09-10; the amicode overlay is fixed (harmoniqs/amicode 964-reconciliation). Until the sync tooling carries an amicode-fixes-are-canonical rule, the fork must carry what the overlay carries: - prompt-input-v2.tsx: the 3-arg call with the language.t adapter (the overlay's exact hunk) - prompt-input/placeholder.ts: aligned to the upstream v1.18.29 3-arg contract — the translate callback replaces the hard-coded 'Ask Amico anything...' brand line; the ui locales already carry 'ui.promptInput.placeholder.normal', and the overlay/deployed app has used the translated string since the v1.18.29 re-base - placeholder.test.ts: bun tests pinning the 3-arg contract (shell verbatim, normal translated, the regressed 2-arg call throws 'is not a function') Verified: bun test placeholder.test.ts 7 pass; bun run typecheck (tsgo -b) clean in packages/app.
|
Important Draft PR not reviewedDraft PRs are not automatically reviewed by default.
To automatically review draft PRs, update your CodeRabbit configuration: reviews:
auto_review:
drafts: trueThanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
aarontrowbridge
marked this pull request as ready for review
September 10, 2026 15:06
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
The fork (this branch line, the fork→overlay sync source) never carried amicode #929's fix, so the Sep 9 sync (ff7b69c8) regressed the amicode overlay's composer back to the 2-arg
promptDesignPlaceholdercall — every non-shell render threw minifiedn is not a function(Aaron hit it live 2026-09-10; tracked in harmoniqs/amicode#964). Until the sync tooling carries an amicode-fixes-are-canonical rule, the fork must carry what the overlay carries:packages/app/src/components/prompt-input-v2.tsx: the 3-arg call with thelanguage.tadapter (the overlay's exact hunk, provenance amicode #929 / #964)packages/app/src/components/prompt-input/placeholder.ts: aligned to the upstream v1.18.29 3-arg contract — the translate callback replaces the hard-coded "Ask Amico anything…" brand line; the ui locales already carryui.promptInput.placeholder.normaland the overlay/deployed app has served the translated string since the v1.18.29 re-baseplaceholder.test.ts: bun tests pinning the 3-arg contract (shell verbatim, normal translated, the regressed 2-arg call throws)Mirrors harmoniqs/amicode#965 (the overlay restore + pre-sync guard).
Verification
bun test --conditions=solid src/components/prompt-input/placeholder.test.ts→ 7 passbun run typecheck(tsgo -b) in packages/app → cleanSweep (amicode#964)
Diffed the fork's app copies against amicode's post-#832/#929 overlay: the
diff_versionreconciliation (#832) is already byte-identical fork-side; thesession.exportTracelocale set (#832) matches. Two amicode-side design files (design-polish.css,message-timeline.tsx— the bubble-lock merge and yellow-chip bubble) are newer amicode-side state absent here — follow-ups, not mirrored in this slice.