Commit graph

683 commits

Author SHA1 Message Date
XiaoSeS
0305eeb133 merge: integrate reviewed Suite notification compatibility
Signed-off-by: XiaoSeS <87064762+XiaoSeS@users.noreply.github.com>
2026-11-06 13:57:04 +08:00
XiaoSeS
cf6eb45d93 fix(notification): clarify email actions and recipient access states
Signed-off-by: XiaoSeS <87064762+XiaoSeS@users.noreply.github.com>
2026-11-06 10:58:37 +08:00
XiaoSeS
d26154b228 fix(notification): notify Suite submitters after review outcomes
Signed-off-by: XiaoSeS <87064762+XiaoSeS@users.noreply.github.com>
2026-11-06 10:58:00 +08:00
XiaoSeS
80a11ae0ef fix(notification): preserve default SMTP trust and refresh resend cooldown
Signed-off-by: XiaoSeS <87064762+XiaoSeS@users.noreply.github.com>
2026-11-06 10:19:36 +08:00
XiaoSeS
305f12808a fix(notification): admit authorized suite review emails and complete locales
Signed-off-by: XiaoSeS <87064762+XiaoSeS@users.noreply.github.com>
2026-11-05 22:47:20 +08:00
XiaoSeS
7510c0a522 Merge PR #1004 with current main and preserve both configuration paths
Signed-off-by: XiaoSeS <87064762+XiaoSeS@users.noreply.github.com>
2026-11-05 22:46:59 +08:00
XiaoSeS
58ae93873d fix(notification): send suite review submission notifications
Signed-off-by: XiaoSeS <87064762+XiaoSeS@users.noreply.github.com>
2026-11-05 22:19:59 +08:00
XiaoSeS
07c56cb384 test(review): match the return action accessible name
Signed-off-by: XiaoSeS <87064762+XiaoSeS@users.noreply.github.com>
2026-11-05 20:13:39 +08:00
XiaoSeS
944525aef4 test(review): align real E2E with unified review center
Signed-off-by: XiaoSeS <87064762+XiaoSeS@users.noreply.github.com>
2026-11-05 20:08:39 +08:00
XiaoSeS
70da22c86e fix(review): integrate request context and version evidence
Signed-off-by: XiaoSeS <87064762+XiaoSeS@users.noreply.github.com>
2026-11-05 18:33:05 +08:00
XiaoSeS
7303814452 fix(review): improve presentation hierarchy and comparison reading
Signed-off-by: XiaoSeS <87064762+XiaoSeS@users.noreply.github.com>
2026-11-05 17:46:12 +08:00
XiaoSeS
4b33cf91fb fix(review): stabilize detail tabs and scroll position
Signed-off-by: XiaoSeS <87064762+XiaoSeS@users.noreply.github.com>
2026-11-05 17:16:19 +08:00
XiaoSeS
6978da63a4 feat(review): unify review center and bound presentation
Signed-off-by: XiaoSeS <87064762+XiaoSeS@users.noreply.github.com>
2026-11-05 16:43:25 +08:00
千乘妍 (Xiaoyaner)
044a2801b9 test(e2e): follow two-step publish confirmation in publish flow
The publish page now opens a confirmation dialog from "Next: confirm"; drive that step before clicking "Confirm Publish".

Signed-off-by: 千乘妍 (Xiaoyaner) <xiaoyaner0201@users.noreply.github.com>
2026-11-05 15:37:17 +08:00
XiaoSeS
d6a76e5fe8 feat(publish): refine skill presentation editing and package upload
Signed-off-by: XiaoSeS <87064762+XiaoSeS@users.noreply.github.com>
2026-11-05 11:19:48 +08:00
XiaoSeS
db2be92e0b fix(skill): organize instructions and version navigation in detail tabs
Signed-off-by: XiaoSeS <87064762+XiaoSeS@users.noreply.github.com>
2026-11-04 17:44:12 +08:00
XiaoSeS
f888a2d884 Merge remote-tracking branch 'origin/main' into fix/pr1043-detail-tabs-20261104
# Conflicts:
#	docs/frontend-analytics-manifest.json
2026-11-04 17:31:23 +08:00
XiaoSeS
4413db5304 test(web): match the exact update action in prefill flow
Signed-off-by: XiaoSeS <87064762+XiaoSeS@users.noreply.github.com>
2026-11-04 16:30:12 +08:00
XiaoSeS
e202277d54 style(web): relax owned skill card spacing
Signed-off-by: XiaoSeS <87064762+XiaoSeS@users.noreply.github.com>
2026-11-04 16:06:28 +08:00
XiaoSeS
414da68254 fix(web): align owned skill cards with uniform prototype
Signed-off-by: XiaoSeS <87064762+XiaoSeS@users.noreply.github.com>
2026-11-04 15:55:42 +08:00
XiaoSeS
378932571d feat(web): unify site content frame across pages
Signed-off-by: XiaoSeS <87064762+XiaoSeS@users.noreply.github.com>
2026-11-04 15:24:53 +08:00
XiaoSeS
eb9a09666e fix(web): compact skill cards and settings layout
Signed-off-by: XiaoSeS <87064762+XiaoSeS@users.noreply.github.com>
2026-11-04 15:04:22 +08:00
XiaoSeS
1492c0617e fix(web): reuse console heading styles in suite workspace
Signed-off-by: XiaoSeS <87064762+XiaoSeS@users.noreply.github.com>
2026-11-04 14:18:11 +08:00
XiaoSeS
f0cd9a555d feat(web): unify console layout and refine skill card presentation
Signed-off-by: XiaoSeS <87064762+XiaoSeS@users.noreply.github.com>
2026-11-04 13:54:12 +08:00
XiaoSeS
897880d5df fix(web): match prototype status alignment and mobile metadata
Signed-off-by: XiaoSeS <87064762+XiaoSeS@users.noreply.github.com>
2026-11-04 11:51:02 +08:00
XiaoSeS
ce42c883ba fix(web): align my skills page with approved prototype
Signed-off-by: XiaoSeS <87064762+XiaoSeS@users.noreply.github.com>
2026-11-04 11:39:21 +08:00
XiaoSeS
ac593567ca test(web): locate owned skill cards by semantic marker
Signed-off-by: XiaoSeS <87064762+XiaoSeS@users.noreply.github.com>
2026-11-04 11:03:48 +08:00
XiaoSeS
349dfbeed5 fix(web): sync locale keys and analytics source inventory
Signed-off-by: XiaoSeS <87064762+XiaoSeS@users.noreply.github.com>
2026-11-04 10:13:58 +08:00
XiaoSeS
2fad28f7cf fix(web): restore list focus after managed rows disappear
Signed-off-by: XiaoSeS <87064762+XiaoSeS@users.noreply.github.com>
2026-11-04 10:05:23 +08:00
XiaoSeS
d841fca194 fix(web): preserve list navigation and menu dialog focus
Signed-off-by: XiaoSeS <87064762+XiaoSeS@users.noreply.github.com>
2026-11-04 09:50:15 +08:00
XiaoSeS
efaa70e67c feat(web): streamline my skills cards and management actions
Signed-off-by: XiaoSeS <87064762+XiaoSeS@users.noreply.github.com>
2026-11-04 09:40:27 +08:00
XiaoSeS
8d73552577 feat(web): unify my skills filters and define management UX
Signed-off-by: XiaoSeS <87064762+XiaoSeS@users.noreply.github.com>
2026-11-04 09:28:03 +08:00
dongmucat
0c7fdd1b41 fix(deps): resolve Dependabot security alerts 2026-11-03 15:58:54 +08:00
千乘妍 (Xiaoyaner)
facd54575f Replace legacy edge fixtures with production assertions
Signed-off-by: 千乘妍 (Xiaoyaner) <258399167+xiaoyaner0201@users.noreply.github.com>
2026-11-03 00:59:18 +08:00
千乘妍 (Xiaoyaner)
ae62cb0d76 Merge upstream/main into feat/configurable-frontend-analytics-989
Signed-off-by: 千乘妍 (Xiaoyaner) <258399167+xiaoyaner0201@users.noreply.github.com>
2026-11-03 00:24:42 +08:00
千乘妍 (Xiaoyaner)
f436841d86 fix(analytics): generate DataFinder browser IDs on plain-HTTP origins
crypto.randomUUID only exists in secure contexts and newer browsers, so
fresh browsers on plain-HTTP intranet deployments dropped every event.
Fall back to a getRandomValues v4 UUID with the same format.

Refs #989

Signed-off-by: 千乘妍 (Xiaoyaner) <258399167+xiaoyaner0201@users.noreply.github.com>
2026-11-02 15:06:20 +08:00
千乘妍 (Xiaoyaner)
987068cc6f feat(analytics): register configuration-only DataFinder adapter
Refs #989

Signed-off-by: 千乘妍 (Xiaoyaner) <258399167+xiaoyaner0201@users.noreply.github.com>
2026-11-02 14:38:38 +08:00
PerryLink
c4c596e1a3 fix(web): clip the suite version cells that still overflow
#1040 clipped the pinned version column in the suite member table and the
version ledger's member list. Two cells in the same feature kept rendering
the same 60+ character immutable snapshot versions unclipped:

- the version ledger's own version cell, in an 84px grid column;
- the bundle operation detail's member cell, in a 90px grid column.

Both bleed into the neighbouring status/visibility columns. Clip them with
the truncate + title pattern used elsewhere in these tables, and assert the
clipped cell in the existing operation-detail test.

Regenerate docs/frontend-analytics-manifest.json: the marker in
suite-bundle-operation-detail.tsx moved three lines down.

Signed-off-by: PerryLink <novelnexusai@outlook.com>
2026-11-01 22:47:18 +08:00
千乘妍 (Xiaoyaner)
7e50acace7 fix: tolerate extended metadata snapshots during presentation inheritance
Signed-off-by: 千乘妍 (Xiaoyaner) <xiaoyaner0201@users.noreply.github.com>
2026-10-31 00:56:41 +08:00
千乘妍 (Xiaoyaner)
c06850fde4 feat: complete versioned skill presentation flow
Signed-off-by: 千乘妍 (Xiaoyaner) <xiaoyaner0201@users.noreply.github.com>
2026-10-31 00:56:41 +08:00
千乘妍 (Xiaoyaner)
2b87c6c5ea feat: add skill presentation fields
Signed-off-by: 千乘妍 (Xiaoyaner) <xiaoyaner0201@users.noreply.github.com>
2026-10-31 00:56:40 +08:00
wanting12345
55bd334a00 fix(web): truncate pinned version column in suite detail tables
The pinned version cells in the suite member table and the version
ledger member list rendered raw member version strings (60+ character
immutable snapshot versions) inside fixed-width grid columns without
any overflow handling, so the text bled into adjacent columns.

Clip them with the same truncate + title pattern already used for the
member coordinate in the same tables; the full version stays available
via hover.

Signed-off-by: wanting12345 <2571039622@qq.com>

Co-Authored-By: Claude Code <noreply@anthropic.com>
2026-10-30 14:07:00 +08:00
千乘妍 (Xiaoyaner)
7fb74e81b2 feat(deploy): configure same-origin optional analytics
Safely transport bounded JSON using existing image tools, generate isolated exact proxy routes with verified HTTPS, and wire Compose and Helm with closed defaults.

Refs #989

Signed-off-by: 千乘妍 (Xiaoyaner) <258399167+xiaoyaner0201@users.noreply.github.com>
2026-10-29 23:16:31 +08:00
千乘妍 (Xiaoyaner)
427acf21bb feat(web): load optional analytics after application mount
Move the passive helper and Umami adapter into one product source, retain the existing assertions, and add consent-aware lazy lifecycle control.

Refs #989

Signed-off-by: 千乘妍 (Xiaoyaner) <258399167+xiaoyaner0201@users.noreply.github.com>
2026-10-29 23:16:05 +08:00
小妍儿 ✨
6952629eed
feat(web): add passive semantic analytics attributes across frontend workflows (#1010)
* feat(web): expose passive semantic analytics attributes

Signed-off-by: 千乘妍 (Xiaoyaner) <258399167+xiaoyaner0201@users.noreply.github.com>

* fix(web): omit disabled non-native analytics intents

Signed-off-by: 千乘妍 (Xiaoyaner) <258399167+xiaoyaner0201@users.noreply.github.com>

* fix(web): keep docs integration test outside production build inputs

Move the collector example test alongside existing root-level web tests so the web-only Docker context does not require repository documentation. Preserve all assertions and default Vitest discovery; document the boundary.

Verified 1217 tests, focused 12 tests, typecheck, lint, build and a fresh web-only build without repository docs. Original snapshot reproduced TS2307. Independent review passed. Full local image build was blocked by an uncached pnpm download with network disabled; remote image CI remains authoritative.

Signed-off-by: 千乘妍 (Xiaoyaner) <258399167+xiaoyaner0201@users.noreply.github.com>

* docs(analytics): configure intent rules and add a manual Umami demo

Signed-off-by: 千乘妍 (Xiaoyaner) <258399167+xiaoyaner0201@users.noreply.github.com>

* fix(analytics): accept product IDs and preserve concurrent intents

Signed-off-by: 千乘妍 (Xiaoyaner) <258399167+xiaoyaner0201@users.noreply.github.com>

* fix(analytics): guard consent at Umami dispatch boundary

Signed-off-by: 千乘妍 (Xiaoyaner) <258399167+xiaoyaner0201@users.noreply.github.com>

* fix(analytics): snapshot validated Umami payload primitives

Signed-off-by: 千乘妍 (Xiaoyaner) <258399167+xiaoyaner0201@users.noreply.github.com>

* docs(analytics): define configurable opt-in integration

Signed-off-by: XiaoSeS <87064762+XiaoSeS@users.noreply.github.com>

* chore(analytics): refresh manifest line numbers after main merge

The merge of latest main shifted source lines in router and pages. Only
line numbers change; routes, IDs and sites are identical.

Refs #989

Signed-off-by: 千乘妍 (Xiaoyaner) <258399167+xiaoyaner0201@users.noreply.github.com>

* fix(analytics): preserve release Web defaults in optional edge

Signed-off-by: 千乘妍 (Xiaoyaner) <258399167+xiaoyaner0201@users.noreply.github.com>

* docs(analytics): add Chinese guide and split delivery scope

Refs #989

Signed-off-by: 千乘妍 (Xiaoyaner) <258399167+xiaoyaner0201@users.noreply.github.com>

* docs(analytics): keep upstream override and bypass module cache in guide

Export the upstream override so later compose commands keep it, and
tell operators to bypass the immutable module cache when re-checking
an edited local entry.

Refs #989

Signed-off-by: 千乘妍 (Xiaoyaner) <258399167+xiaoyaner0201@users.noreply.github.com>

---------

Signed-off-by: 千乘妍 (Xiaoyaner) <258399167+xiaoyaner0201@users.noreply.github.com>
Signed-off-by: XiaoSeS <87064762+XiaoSeS@users.noreply.github.com>
Co-authored-by: XiaoSeS <87064762+XiaoSeS@users.noreply.github.com>
2026-10-29 14:56:58 +08:00
XiaoSeS
3271064afd
feat(dsh): add installation activation and simplify skill management (#1025)
* feat(dsh): manage skill activation and simplify installation flows

Signed-off-by: XiaoSeS <87064762+XiaoSeS@users.noreply.github.com>

* fix(web): preserve optional skill website URL

Signed-off-by: XiaoSeS <87064762+XiaoSeS@users.noreply.github.com>

* fix(dsh): bound disabled skill checks on Windows

Signed-off-by: XiaoSeS <87064762+XiaoSeS@users.noreply.github.com>

---------

Signed-off-by: XiaoSeS <87064762+XiaoSeS@users.noreply.github.com>
2026-10-28 15:39:35 +08:00
XiaoSeS
8f64d9b5e6 test(i18n): preserve initialization in suite badge mocks
Signed-off-by: XiaoSeS <87064762+XiaoSeS@users.noreply.github.com>
2026-10-26 17:26:47 +08:00
XiaoSeS
754c2ef0b8 fix(i18n): translate related suite badges into Korean
Signed-off-by: XiaoSeS <87064762+XiaoSeS@users.noreply.github.com>
2026-10-26 17:09:05 +08:00
XiaoSeS
6b8e66b38e Merge remote-tracking branch 'refs/remotes/origin/pr/1021' into codex/validate/pr1021-20261026 2026-10-26 17:05:55 +08:00
XiaoSeS
baaba6a1aa feat(suite): show viewer-safe membership hints on skill cards
Signed-off-by: XiaoSeS <87064762+XiaoSeS@users.noreply.github.com>
2026-10-26 15:47:44 +08:00