Peter Steinberger
e580275464
feat(tooling): enforce noUncheckedIndexedAccess in the scripts lane (NUIA phase 5) ( #105180 )
...
* feat(tooling): enforce noUncheckedIndexedAccess in the scripts lane
Burns down all 153 scripts-lane errors (bench aggregation, release
checks, i18n inventories, argv indexing) and flips the flag in
tsconfig.scripts.json. Direct-Node-executed release harness scripts use
local narrowing instead of workspace imports, which do not resolve
under plain node execution. Benchmark measured loops untouched.
* fix(scripts): import expect helpers via relative package sources
tsconfig path aliases resolve from cwd under tsx, so release wrapper
scripts running against old release target cwds could not resolve
@openclaw/normalization-core (not a linked root dependency). Relative
package-source imports match the established pattern on the adjacent
lines and are cwd-independent; old-target planning verified directly.
2026-07-12 10:17:00 +01:00
Vincent Koc
78d142e84f
fix(i18n): scan typed fallback copy
2026-07-12 13:45:20 +08:00
Vincent Koc
b3fb295e94
fix(i18n): preserve localized helper inventory
2026-07-12 13:45:20 +08:00
Vincent Koc
484c3a18b2
fix(i18n): validate native locale artifacts
2026-07-12 13:45:20 +08:00
Peter Steinberger
8310c565e0
feat(onboarding): add provider sign-in ( #104502 )
...
* feat(onboarding): add provider sign-in flows
* fix(oauth): keep callback compatibility
* fix(onboarding): reconcile lost auth outcomes
* fix(onboarding): lock auth cancellation at commit
* fix(onboarding): close provider auth lifecycle gaps
* fix(onboarding): make terminal auth failures dismissable
* fix(onboarding): satisfy native app checks
* fix(onboarding): reconcile absent auth sessions
* fix(onboarding): bound provider auth sessions
* fix(onboarding): open provider auth links safely
* test(onboarding): use scanner-safe auth fixtures
* revert: keep established onboarding auth fixtures
* fix(onboarding): close provider auth cancellation gaps
* fix(gateway): retain uncollected wizard results
* fix(onboarding): bind provider reconciliation attempt
* fix(i18n): avoid guessing moved string identities
* style(onboarding): normalize remote auth choices efficiently
* fix(protocol): refresh optional provider auth choices
* test(gateway): cover provider auth dispatch order
* refactor(macos): split onboarding setup support
* fix(macos): refresh merged native checks
2026-07-11 13:00:17 -07:00
Peter Steinberger
2e2366b6d3
chore(tooling): typecheck scripts/** with a dedicated tsgo lane ( #104348 )
...
* feat(tooling): add tsgo typecheck lane for scripts/**
* fix(scripts): burn down scripts type debt surfaced by the new lane
Typing-only except bugs the lane surfaced: gh-read timeout race,
Discord Headers spread dropping entries, undefined allowedHeadBranches
match, plugin-boundary matchAll crash. Deletes retired config keys from
fixtures/benches (prompt snapshots regenerated, config dump only) and
the orphaned non-runnable sync-moonshot-docs script. Adds full-surface
.d.mts declarations for existing .mjs boundaries.
2026-07-11 02:31:17 -07:00
Peter Steinberger
62bd760c0e
chore(swift): enforce current formatting and lint rules ( #103313 )
...
* style: apply SwiftFormat 0.62.1 rules
Refs #103202
* ci: enforce deterministic Swift lint
Refs #103202
* refactor: keep gateway connect lint-clean
Refs #103202
* style: keep iOS typography checks warning-free
* ci: route MLX Swift changes through pre-push
* fix: preserve native i18n extraction after Swift cleanup
* refactor: keep rebased Swift surfaces lint-clean
* style: format latest Swift additions
* chore: refresh native i18n inventory
* style: keep generated Swift formatter-clean
* fix: preserve node route invalidation callbacks
* fix: keep native translation IDs stable
* fix: retain native translation identifiers
* fix: preserve translations across Swift source moves
2026-07-10 11:54:08 +01:00
Vincent Koc
3dbe98a1f7
refactor(deadcode): localize release tooling declarations ( #101904 )
2026-07-07 16:13:55 -07:00
Vincent Koc
7ff3f2dbf9
refactor(deadcode): localize UI and script symbols ( #101858 )
2026-07-07 11:55:57 -07:00
Peter Steinberger
876ab9bb0b
feat(android): add chat message actions ( #100879 )
...
* fix(android): add chat message actions
* chore(android): sync native i18n inventory
* fix(i18n): collect Android action labels
* fix(i18n): preserve Android placeholders
2026-07-06 13:50:16 +01:00
Peter Steinberger
1f484a8dbd
test: speed up and stabilize full suite
2026-07-05 08:00:23 -04:00
Josh
e43c72954a
Polish iOS onboarding and chat critique fixes ( #99243 )
...
* fix(ios): polish onboarding and empty chat
Co-authored-by: Josh <17843332+jcooley8@users.noreply.github.com >
* fix(ios): correlate pending chat echoes
* fix(ios): ship localized chat starters
* fix(ios): preserve chat echo identity
* fix(ios): adopt late correlated chat echoes
* fix(ios): reconcile reused chat runs
* fix(ios): preserve transformed chat history
---------
Co-authored-by: Peter Steinberger <steipete@gmail.com >
2026-07-04 00:38:56 -07:00
Mason Huang
f3eccb0dfd
fix: harden native i18n identifier filtering ( #99098 )
...
Summary:
- The PR replaces native i18n conditional-branch regex filtering with an exported linear ASCII scanner and adds focused coverage.
- PR surface: Tests +9, Other +36. Total +45 across 2 files.
- Reproducibility: yes. from source inspection: current main routes conditional-branch native literals through the backtracking-prone regex before inventory output. I did not run a timing benchmark against current main.
Automerge notes:
- No ClawSweeper repair was needed after automerge opt-in.
Validation:
- ClawSweeper review passed for head 97464c9635 .
- Required merge gates passed before the squash merge.
Prepared head SHA: 97464c9635
Review: https://github.com/openclaw/openclaw/pull/99098#issuecomment-4866733462
Co-authored-by: Mason Huang <masonxhuang@tencent.com >
Approved-by: hxy91819
2026-07-03 15:28:17 +00:00
Shakker
e4194df270
fix: skip native Swift conditional interpolations
2026-07-02 16:32:22 +01:00
Peter Steinberger
8502ef6c59
feat(ios): modernize the app with iOS 26 Liquid Glass ( #98452 )
...
* feat(ios): adopt iOS 26 Liquid Glass design
* refactor(ios): refine Liquid Glass hierarchy
* docs(ios): require Xcode 26
* refactor(ios): remove obsolete design helpers
* fix(ios): keep agent tab navigation hidden
* fix(ios): compact chat composer at rest
* refactor(ios): reduce interface density
* fix(ios): keep native string inventory current
2026-07-01 19:06:04 +01:00
Vincent Koc
be2c4c65ab
fix(i18n): invalidate native artifacts on glossary changes
2026-07-01 06:16:30 -07:00
Vincent Koc
51f5164bf4
fix(i18n): preserve native printf placeholders
2026-07-01 06:16:30 -07:00
Vincent Koc
8bc40fc8de
fix(i18n): validate native refresh inputs
2026-07-01 06:16:30 -07:00
Vincent Koc
a0ab8a7475
fix(i18n): allow locale placeholder reordering
2026-07-01 06:16:30 -07:00
Vincent Koc
096cc881c0
test(i18n): prove native refresh creation and no-op
2026-07-01 06:16:30 -07:00
Vincent Koc
40e0b3a597
fix(i18n): guard native refresh inputs
2026-07-01 06:16:30 -07:00
Vincent Koc
4fe3d46ae7
fix(i18n): cover all native source roots
2026-07-01 06:16:30 -07:00
Vincent Koc
281e164069
fix(i18n): validate Kotlin and Swift placeholders
2026-07-01 06:16:30 -07:00
Vincent Koc
a7d5fe6343
fix(i18n): validate native translation structure
2026-07-01 06:16:30 -07:00
Vincent Koc
ae272d2284
docs(i18n): clarify native artifact ownership
2026-07-01 06:16:30 -07:00
Vincent Koc
8d18dacaa9
feat(i18n): refresh native locale artifacts
2026-07-01 06:16:30 -07:00
Vincent Koc
6497c3ca1b
fix(i18n): stabilize native inventory generation
2026-07-01 03:28:23 -07:00
Vincent Koc
84247114c2
fix(i18n): include custom SwiftUI helper labels
2026-07-01 03:28:23 -07:00
Vincent Koc
a38864aeb9
fix(i18n): parse native UI string expressions
2026-07-01 03:28:23 -07:00
Vincent Koc
18494a04f5
fix(i18n): cover native conditional UI strings
2026-07-01 03:28:23 -07:00
Vincent Koc
5ec988230c
fix(i18n): scope native UI helper extraction
2026-07-01 03:28:23 -07:00
Vincent Koc
59b6bdf36c
fix(i18n): cover structured native UI strings
2026-07-01 03:28:23 -07:00
Vincent Koc
fbd6e30ce1
feat(i18n): add Swedish native locale
2026-07-01 03:28:23 -07:00
Vincent Koc
da6ee4f0dd
fix(i18n): restrict native UI extraction
2026-07-01 03:28:23 -07:00
Vincent Koc
53c66986ea
fix(i18n): filter non-translatable native literals
2026-07-01 03:28:23 -07:00
Vincent Koc
ab83d35b26
fix(i18n): cover all native source roots
2026-07-01 03:28:23 -07:00
Vincent Koc
0e03507935
fix(i18n): inventory conditional native labels
2026-07-01 03:28:23 -07:00
Vincent Koc
aa32894afc
fix(i18n): align native scan scope and build exclusions
2026-07-01 03:28:23 -07:00
Vincent Koc
3e65e64c19
feat(i18n): inventory native resources and wrappers
2026-07-01 03:28:23 -07:00
Vincent Koc
f165b53da9
fix(i18n): parse native interpolation expressions
2026-07-01 03:28:23 -07:00
Vincent Koc
d913a3314b
fix(i18n): preserve Kotlin native placeholders
2026-07-01 03:28:23 -07:00
Vincent Koc
3d96a0039f
fix(i18n): preserve native placeholders and whitespace
2026-07-01 03:28:23 -07:00
Vincent Koc
a519a07d36
fix(i18n): skip non-runtime native source literals
2026-07-01 03:28:23 -07:00
Vincent Koc
0a16d9e578
fix(i18n): guard native inventory in CI
2026-07-01 03:28:23 -07:00
Vincent Koc
13c18d1c0a
fix(i18n): keep native refresh inventory clean
2026-07-01 03:28:23 -07:00
Vincent Koc
7884e4b737
feat(i18n): define native locale matrix
2026-07-01 03:28:23 -07:00
Vincent Koc
9eae0b4d38
feat(i18n): inventory native app UI strings
2026-07-01 03:28:23 -07:00