Commit graph

643 commits

Author SHA1 Message Date
yun-zhi-ztl
e42f3950bf fix(web): remove starred badge from skill card
The starred badge in the top-right corner of skill cards looked
cluttered. Removed it while keeping the subtle star highlight
in the bottom stats area.
2026-03-19 09:41:53 +08:00
vsxd
93b264309f feat(skill-detail): show author display name 2026-03-19 09:32:13 +08:00
vsxd
5f8a411852 fix(web): avoid stretching markdown badge images 2026-03-19 09:32:13 +08:00
xiose
386874d676 version sql 2026-03-19 09:26:43 +08:00
xiose
297feb59fc feat: add user profile update feature with moderation support
Add ability for users to update their display name with optional machine/human review.

Backend:
- Add profile_change_request table (V15 migration)
- Add UserProfileService with moderation workflow
- Add PATCH /api/v1/user/profile and GET /api/v1/user/profile endpoints
- Add ProfileModerationService interface with NoOp implementation
- Add ProfileModerationProperties for machine/human review toggles
- Update AuthController /me to refresh session when displayName changes
- Add i18n messages for profile validation and responses

Frontend:
- Add /settings/profile page with edit-on-click pattern
- Add profileApi.updateProfile() to client
- Update user menu: add "Profile Settings", make "Security Settings" local-only
- Add i18n translations (en/zh) for profile settings

Testing:
- Add UserProfileControllerTest with 8 test cases
- Add UserProfileServiceTest with 6 test cases
- Add AuthControllerTest case for session refresh on displayName change
2026-03-18 18:09:33 +08:00
vsxd
012ed35a10 Serve registry skill docs from nginx 2026-03-18 17:56:53 +08:00
何时
d5abcfcf29 Update README.md (#85)
Signed-off-by: 何时 <93520596+likes1234-bro@users.noreply.github.com>
2026-03-18 17:24:54 +08:00
dongmucat
18b064a8d0 Merge pull request #86 from iflytek/fix/publish-toast-pending-review
fix(web): show pending review toast for non-admin skill publish
2026-03-18 17:22:34 +08:00
dongmucat
42e6fff693 feat: Implement core web application structure including landing page, skill registry, layout, routing, and internationalization. (#87) 2026-03-18 17:20:49 +08:00
yun-zhi-ztl
7f5793ac77 fix(web): show pending review toast for non-admin skill publish
Non-admin users now see "Submitted for Review" instead of "Published
Successfully" after uploading a skill, based on the status returned
by the backend.
2026-03-18 17:18:20 +08:00
vsxd
f5db6edde9 test: align my skill app service star timestamps 2026-03-18 17:16:55 +08:00
vsxd
f4b9a26f6f fix: preserve local timezone in token expiration UI 2026-03-18 17:16:55 +08:00
vsxd
0814b8939c refactor: unify backend time handling in utc 2026-03-18 17:16:55 +08:00
yun-zhi-ztl
6b2d8ce7ef fix: skill upload constraints, rejected label, and last-version guard (#82)
* fix: keep download counts consistent across skill pages

* fix: stabilize empty search ordering across sorts

* fix: show disabled-account reason on login redirect

* fix: mute report input placeholder text

* fix: return skill detail to my skills page

* test: stabilize auth context filter coverage

* feat(publish): increase single file limit to 10MB

* feat(publish): expand allowed file extensions

* feat(publish): extend secret scanning to new text file types

* feat(publish): add content validation for new file types

* refactor(publish): inject configurable limits into SkillPackageArchiveExtractor

* feat(publish): support zip with single root directory wrapper

* feat(publish): expand determineContentType for new file types

* test(publish): update tests for new upload constraints

* fix(web): add REJECTED status label and styling to my-skills page

The resolveStatusLabel and resolveStatusClassName functions were missing
the REJECTED case, causing rejected skills to show raw status string
with no color styling.


* fix: prevent deleting the last remaining version of a skill

Backend: added version count check in SkillGovernanceService.deleteVersion()
Frontend: hide delete button when only one version remains


* test: fix and add tests for last-version deletion guard

- Fix deleteVersion_removesDraftFilesAndBundle: mock findBySkillId to
  return 2 versions so the new guard doesn't block the happy path
- Add deleteVersion_rejectsLastRemainingVersion: verify that deleting
  the only remaining version is rejected with the correct error code

---------
2026-03-18 16:40:51 +08:00
dongmucat
b7fd95459c feat(web): improve skill detail overview UX and markdown highlighting 2026-03-18 16:30:21 +08:00
yun-zhi-ztl
82fe91adde feat(publish): relax skill upload constraints (#80)
* fix: keep download counts consistent across skill pages

* fix: stabilize empty search ordering across sorts

* fix: show disabled-account reason on login redirect

* fix: mute report input placeholder text

* fix: return skill detail to my skills page

* test: stabilize auth context filter coverage

* feat(publish): increase single file limit to 10MB

* feat(publish): expand allowed file extensions

* feat(publish): extend secret scanning to new text file types

* feat(publish): add content validation for new file types

* refactor(publish): inject configurable limits into SkillPackageArchiveExtractor

* feat(publish): support zip with single root directory wrapper

* feat(publish): expand determineContentType for new file types

* test(publish): update tests for new upload constraints
2026-03-18 15:27:51 +08:00
vsxd
377de504f9 feat: harden download and storage resilience 2026-03-18 14:30:40 +08:00
Xudong Sun
4aa3d29599 refactor: skill lifecycle projection and docs (#78)
* Refactor skill lifecycle projection and docs

* Improve owner lifecycle visibility on skill detail

* Track download counts per skill version
2026-03-18 13:39:22 +08:00
Xudong Sun
c2284d8acf feat: add anonymous download rate limiting (#76) 2026-03-18 11:31:10 +08:00
dongmucat
8fd9e364fd perf(web): reduce react-query stale time to 30s 2026-03-17 22:05:12 +08:00
dongmucat
310ae73fae feat(web): inject OpenClaw integration docs into build output for SEO 2026-03-17 21:02:49 +08:00
dongmucat
f2de3d5d51 refactor(web): unify local datetime formatting across governance and review pages (#73) 2026-03-17 20:34:54 +08:00
wowo
8708cab18c Merge pull request #72 from iflytek/fix/global-public-download-anon
Allow anonymous downloads for global public skills
2026-03-17 20:34:30 +08:00
wowo-zZ
69e29aeadf docs: add OpenClaw integration guide and update download auth rules
- Add comprehensive OpenClaw/ClawHub CLI integration guides (CN/EN)
- Document anonymous download support for global PUBLIC skills
- Clarify authentication requirements by namespace type
- Update README with ClawHub CLI usage examples
2026-03-17 20:32:39 +08:00
FenjuFu
9dad71b2c0 Add badges for documentation, license, build, and Docker (#71)
Signed-off-by: FenjuFu <92919259+FenjuFu@users.noreply.github.com>
2026-03-17 20:26:40 +08:00
vsxd
72054dee0f Allow anonymous downloads for global public skills 2026-03-17 20:25:26 +08:00
yun-zhi-ztl
cc5fc7586f fix: improve disabled-account feedback and skill detail polish (#70)
* fix: keep download counts consistent across skill pages

* fix: stabilize empty search ordering across sorts

* fix: show disabled-account reason on login redirect

* fix: mute report input placeholder text

* fix: return skill detail to my skills page

* test: stabilize auth context filter coverage
2026-03-17 19:55:44 +08:00
dongmucat
09e1933f61 feat(web): refine header interactions and dashboard skill cards 2026-03-17 19:39:20 +08:00
wowo
01dee8da1d Merge pull request #68 from iflytek/docs/add-chinese-readme
docs: add Chinese README and language switcher
2026-03-17 19:24:41 +08:00
wowo-zZ
a560bbcea3 docs: add Chinese README and language switcher
- Add README_zh.md with full Chinese translation
- Add English | 中文 language switcher to README.md
2026-03-17 19:19:59 +08:00
wowo
b8f1e5cb75 Merge pull request #67 from iflytek/feature/ui
Feature/UI
2026-03-17 18:58:58 +08:00
dongmucat
9bb7a01882 Merge branch 'main' of github.com:iflytek/skillhub into feature/ui 2026-03-17 18:53:49 +08:00
dongmucat
ed6c2998a0 feat: Implement SkillHub UI redesign with new page templates, components, and related documentation. 2026-03-17 18:46:41 +08:00
wowo
9828c0a575 Merge pull request #65 from iflytek/feature/project-fixbug
fix: handle numeric search terms in downloads sort
2026-03-17 17:16:53 +08:00
wowo
e649f3fc1b Merge pull request #63 from iflytek/fix/s3-skill-download
Fix S3 skill download flow and filenames
2026-03-17 17:12:22 +08:00
dongmucat
4fa16a7f4a feat: refine landing experience and restore my-skills metadata 2026-03-17 17:11:16 +08:00
dongmucat
ed04c97e8f feat: Implement initial web application structure, core pages, and UI components with i18n support. 2026-03-17 17:11:16 +08:00
yun-zhi-ztl
ad43fd5a78 fix: allow downloads sort for numeric search terms 2026-03-17 17:10:50 +08:00
dongmucat
808b80f295 feat: refine landing experience and restore my-skills metadata 2026-03-17 17:07:28 +08:00
yun-zhi-ztl
c3e77b6dd3 Merge remote-tracking branch 'origin/main' into feature/project-fixbug 2026-03-17 17:05:18 +08:00
dongmucat
67e3c8ff19 feat: Implement initial web application structure, core pages, and UI components with i18n support. 2026-03-17 17:03:55 +08:00
vsxd
7c85a262ff Fix S3 skill download flow and filenames 2026-03-17 16:58:24 +08:00
yun-zhi-ztl
b0e19af3ed fix: harden hidden skill visibility and local dev restart flow (#62)
* fix: hide hidden skills from regular viewers

* fix: avoid dashboard preview crash after registration

* fix: restrict skill hiding to super admins

* chore: remove dev process script

* fix: hide hidden skills from slug resolution
2026-03-17 15:26:12 +08:00
yun-zhi-ztl
f0a9714644 fix: hide hidden skills from slug resolution 2026-03-17 15:20:35 +08:00
yun-zhi-ztl
93b5b84d17 chore: remove dev process script 2026-03-17 15:06:37 +08:00
yun-zhi-ztl
b5bbb09c73 fix: restrict skill hiding to super admins 2026-03-17 15:04:46 +08:00
yun-zhi-ztl
beff78512a fix: avoid dashboard preview crash after registration 2026-03-17 14:53:26 +08:00
yun-zhi-ztl
4938bc3b82 Merge remote-tracking branch 'origin/main' into feature/project-fixbug 2026-03-17 14:48:11 +08:00
yun-zhi-ztl
a569707710 fix: hide hidden skills from regular viewers 2026-03-17 14:34:25 +08:00
yun-zhi-ztl
a4c0ea60a5 Merge remote-tracking branch 'origin/main' into feature/project-fixbug 2026-03-17 14:31:30 +08:00