fix(ui): align message motion and composer button radius with DESIGN.md; tolerate unreadable staging revision state
Independent Staging Quality Gate / validate (push) Successful in 13m6s
Independent Staging Quality Gate / publish (push) Successful in 8m3s

- Message entry: 300/420ms power3.out -> Standard 180ms cubic-bezier(.22,1,.36,1) (DESIGN.md section 6); update the layout contract test to the shipped values.
- Composer icon button: full radius instead of 8px (DESIGN.md section 5 Button).
- Staging deploy workflow: fall back to container SHA discovery when .state/deployed-revision exists but is unreadable by the deploy user (Gitea pipeline writes it as root).
This commit is contained in:
Jesse_Chen
2026-08-14 09:13:57 +08:00
parent b4031eff8c
commit 0fd111d16b
4 changed files with 6 additions and 5 deletions
@@ -16,7 +16,8 @@ test("aligns the session transcript and composer to one readable column", () =>
test("keeps message motion restrained and honors reduced-motion preferences", () => {
assert.match(messageRowSource, /gsap\.matchMedia\(\)/);
assert.match(messageRowSource, /prefers-reduced-motion:\s*no-preference/);
assert.match(messageRowSource, /duration:\s*message\.role === "user" \? 0\.3 : 0\.42/);
assert.match(messageRowSource, /duration:\s*0\.18/);
assert.match(messageRowSource, /ease:\s*"cubic-bezier\(\.22,\s*1,\s*\.36,\s*1\)"/);
assert.match(messageRowSource, /clearProps:\s*"opacity,transform,visibility"/);
});