Commit graph

735 commits

Author SHA1 Message Date
wowo-zZ
9fbae90614 update 2026-04-27 14:26:51 +08:00
dongmucat
0cc3c46831
Merge pull request #340 from iflytek/feature/web-update-skill
feat(dashboard): add Update button to My Skills with publish prefill
2026-04-24 15:25:04 +08:00
dongmucat
c5c76d3bb0
Merge pull request #346 from iflytek/fix/search-empty-keyword-results
fix(search): preserve empty-query discovery results
2026-04-23 16:48:23 +08:00
dongmucat
df85ea0e18 fix(search): preserve empty-query discovery results 2026-04-23 16:24:23 +08:00
dongmucat
3739c7879b
Merge pull request #305 from iflytek/fix/bootstrap-admin-role-backfill
fix(auth): backfill bootstrap admin role binding
2026-04-23 10:11:43 +08:00
dongmucat
230b915194 feat(dashboard): add Update button to My Skills with publish prefill
Add an "Update" button to each skill card on the My Skills dashboard
page. Clicking it navigates to the Publish page with the skill's
namespace and visibility pre-selected, reducing manual steps when
re-publishing a skill package.

- Add visibility field to SkillSummaryResponse so the list API exposes
  each skill's current visibility setting
- Add publish-prefill module to normalize and validate URL search params
- Wire TanStack Router validateSearch on the publish route
- Add E2E tests covering the prefill flow and invalid-param fallback
2026-04-22 14:59:01 +08:00
dongmucat
62028e9f55
Merge pull request #337 from iflytek/fix/search-page-400
fix(search): harden portal query parsing
2026-04-22 13:53:46 +08:00
dongmucat
60a30190bf
Merge pull request #336 from iflytek/fix/s3-bucket-access-check
fix(storage): lazily create missing s3 buckets on upload
2026-04-22 09:52:33 +08:00
dongmucat
701ef12d33 test(e2e): wait for search cards before counting 2026-04-21 17:55:53 +08:00
dongmucat
f902c6f59b fix(search): restore clawhub namespace-only access 2026-04-21 17:28:05 +08:00
dongmucat
3c047fce8a
Merge pull request #334 from iflytek/fix/namespace-search-visibility
fix(search): restore clawhub namespace-only access
2026-04-21 16:47:19 +08:00
dongmucat
1e9d22b528 fix(storage): stage retryable s3 upload bodies 2026-04-21 13:09:20 +08:00
dongmucat
37aa366233 fix(storage): retry put after lazy bucket creation 2026-04-21 12:57:24 +08:00
dongmucat
e01c987a82 fix(search): restore clawhub namespace-only access 2026-04-21 09:45:39 +08:00
dongmucat
2c519c8efd fix(search): harden portal search query parsing 2026-04-20 16:57:47 +08:00
dongmucat
acc8899abb
Merge pull request #328 from iflytek/fix/gitlab-oauth-release-env
fix(env): add gitlab oauth release example config
2026-04-20 14:04:25 +08:00
dongmucat
1d0d6be816 fix(env): add gitlab oauth release example config 2026-04-20 13:54:41 +08:00
wrj97
7be6a36960
feat(auth): add GitLab OAuth2 provider support (#264)
* feat(auth): add GitLab OAuth2 provider support

Add GitLab as an additional OAuth2 authentication provider alongside
GitHub. This includes:

- GitLab OAuth2 client configuration with customizable base URL
- GitLabClaimsExtractor for handling GitLab-specific user claims
- Multi-provider login UI with provider-specific icons
- Updated localization to use OAuth-agnostic terminology
- JSON type annotation for IdentityBinding entity

* fix(auth): restore oauth redirect and gitlab email checks

* test(auth): align oauth login handler expectation

---------

Co-authored-by: wowo-zZ <zhenggui5228@126.com>
2026-04-17 19:56:32 +08:00
XiaoSeS
080be28eef
fix(search): align portal visibility for private skills (#323)
* feat(ci): add AI-powered release notes generation

- Add GitHub Models integration for automated release notes
- Support bilingual (EN) release notes with highlights extraction
- Fallback to conventional commit grouping when LLM unavailable
- Trigger on tag push or manual workflow dispatch
- Zero configuration: uses GitHub Models (gpt-4o-mini) by default

* chore: pin action versions and update gitignore

- Pin checkout and setup-deno to commit hashes matching project convention
- Add .playwright-mcp/ and .mcp.json to gitignore

* fix(search): keep private skills out of portal discovery

- remove super admin expanded visibility from portal search
- exclude all private skills from portal search results
- keep namespace-only skills visible only to namespace members
- reserve private skill access for my-skills and future admin surfaces

* test(search): update test to reflect portal visibility policy

- rename test from platformWideAccessShouldBypass... to platformWideAccessShouldNotBypass...
- verify that platformWideAccess flag does not grant extra visibility in portal search
- verify PRIVATE skills are excluded from search SQL
- aligns test with new requirement: portal search uses standard visibility rules

* test(search): update app service test for portal visibility policy

- rename test from search_shouldGrantPlatformWideAccessToSuperAdmin to search_shouldNotGrantPlatformWideAccessToSuperAdminInPortal
- verify super admin does not get platformWideAccess in portal search
- aligns with requirement: portal uses standard visibility, admin features reserved for dedicated interface
2026-04-17 17:46:05 +08:00
wowo
c03790a11e
Fix runtime Postgres password drift (#321)
- start postgres before bringing up application services
- sync the database role password from .env.release
- verify TCP auth with the synced password before startup
2026-04-17 17:45:34 +08:00
XiaoSeS
5bf8750658
feat(ci): add AI-powered release notes generation (#322)
* feat(ci): add AI-powered release notes generation

- Add GitHub Models integration for automated release notes
- Support bilingual (EN) release notes with highlights extraction
- Fallback to conventional commit grouping when LLM unavailable
- Trigger on tag push or manual workflow dispatch
- Zero configuration: uses GitHub Models (gpt-4o-mini) by default

* chore: pin action versions and update gitignore

- Pin checkout and setup-deno to commit hashes matching project convention
- Add .playwright-mcp/ and .mcp.json to gitignore
2026-04-17 15:19:48 +08:00
dongmucat
89bc58d29e
Merge pull request #311 from iflytek/fix/public-skill-detail-anon
fix(web): allow anonymous access to public skill detail
2026-04-15 16:58:45 +08:00
XiaoSeS
4619e546bf
fix(search): show default discovery list on empty query (#312) 2026-04-15 16:58:21 +08:00
dongmucat
3c4c33ad95 fix(web): allow anonymous access to public skill detail 2026-04-15 16:16:08 +08:00
dongmucat
a6f8956549 fix(auth): preserve bootstrap admin profile on backfill 2026-04-15 15:49:42 +08:00
dongmucat
2cfd4a730b
Merge pull request #302 from iflytek/fix/rerelease-precheck-warnings
fix(rerelease): support precheck warning confirmation flow
2026-04-14 20:28:00 +08:00
dongmucat
5d87a0ccd3
Merge pull request #304 from iflytek/feat/oss-02-super-admin-visibility
feat(access): add SUPER_ADMIN platform role support
2026-04-14 20:27:39 +08:00
dongmucat
2334aa6a5a fix(review): avoid stale promotion approval save 2026-04-14 20:02:41 +08:00
xiose
7c2f06d1b6 test(rerelease): add confirmWarnings coverage and sync generated schema
- Add domain tests for rerelease with precheck warnings (reject + confirm)
- Add controller test verifying confirmWarnings passthrough
- Sync SkillVersionRereleaseRequest generated type with backend DTO
2026-04-14 17:55:56 +08:00
dongmucat
1246cca930
Merge pull request #279 from iflytek/fix/issue-276-review-own-namespace
fix(review): allow namespace admins to review own submissions
2026-04-14 17:22:08 +08:00
xiose
edcc248244 fix(portal): keep skill detail on viewer permissions 2026-04-14 16:42:22 +08:00
dongmucat
082d97a69d fix(review): handle promotion target skill conflicts 2026-04-14 16:23:31 +08:00
dongmucat
ccf7e3840d test(e2e): harden namespace selection for publish flows 2026-04-14 16:16:08 +08:00
xiose
a1e4904d97 fix(i18n): update version delete error message to include UPLOADED and SCAN_FAILED
The error message for unsupported version deletion still referenced only
DRAFT/REJECTED. Updated both EN and ZH messages to reflect the actual
deletable statuses: DRAFT, UPLOADED, REJECTED, SCAN_FAILED.

Also updated OSS-02 design doc to mark all blocking items as completed.
2026-04-14 15:49:25 +08:00
dongmucat
a6a3bdc5f3 test(e2e): verify publish via response and list 2026-04-14 15:29:47 +08:00
dongmucat
3f43915af9
Merge pull request #246 from iflytek/fix/security-hardening-unauth
fix(security): harden metrics exposure and namespace/private-skill auth
2026-04-14 14:57:49 +08:00
dongmucat
9491eb2c34
Merge pull request #296 from FenjuFu/docs/add-discord-link-only
docs: add discord server link to READMEs
2026-04-14 14:56:19 +08:00
dongmucat
5c8b33684f docs: add discord server link to READMEs 2026-04-14 14:44:12 +08:00
dongmucat
e35e99ae59 fix(auth): backfill bootstrap admin role binding 2026-04-14 14:44:08 +08:00
dongmucat
4d67403e59 test(e2e): relax publish navigation check 2026-04-14 14:32:17 +08:00
xiose
9801b549fc feat(access): add SUPER_ADMIN platform role support
- Add platformRoles parameter to VisibilityChecker.canAccess() for platform-level access control
- SUPER_ADMIN can access all skills regardless of visibility or publication status
- Add archived namespace check to SkillQueryService.getSkillDetail()
- Extract platformRoles from AuthContext in SkillController
- Replace VisibilityChecker mock with real instance in SkillQueryServiceTest
- Add 5 new tests for SUPER_ADMIN access scenarios
- Add version-status-badge.tsx component for frontend status display

Tests: 347 domain tests + 16 app tests passing
2026-04-14 14:18:43 +08:00
dongmucat
cc8b56e26c test(e2e): avoid load-event wait in publish flow 2026-04-14 14:17:57 +08:00
dongmucat
9644d50fbb Revert "fix(review): allow super admins to approve own promotions"
This reverts commit 738f8b33b8.
2026-04-14 14:02:48 +08:00
dongmucat
738f8b33b8 fix(review): allow super admins to approve own promotions 2026-04-14 13:56:52 +08:00
dongmucat
7dff8dc697 test(e2e): stabilize publish and search waits 2026-04-14 13:55:33 +08:00
xiose
9a6f649e6f Merge remote-tracking branch 'origin/main' into feat/oss-02-uploaded-status-semantic
# Conflicts:
#	README.md
#	README_zh.md
2026-04-14 13:53:47 +08:00
xiose
b597a6f511 merge: resolve conflicts after merging origin/main
- Remove duplicate useSubmitForReview/useConfirmPublish in hooks and client
- Restore resolveVersionStatusLabel (version-status-badge not in this branch)
- Fix missing Card closing tag in versions tab
2026-04-14 13:44:30 +08:00
xiose
b26fe6a364 fix(rerelease): support precheck warning confirmation flow
- Backend: Add confirmWarnings parameter to rerelease DTO, domain service, and app service
- Frontend: Add warning dialog with retry logic when precheck warnings are detected
- i18n: Add rerelease warning dialog translations (en/zh)

Fixes the issue where rereleasing a published version with secret detection warnings
always fails with 400 error. Now follows the same confirm-and-retry pattern as initial publish.
2026-04-14 11:58:15 +08:00
dongmucat
930bfac8f4
Merge pull request #301 from iflytek/fix/runtime-aliyun-readme-dash
fix(docs): correct aliyun runtime command
2026-04-14 10:36:03 +08:00
dongmucat
c419a119f1 merge: sync origin/main into fix/security-hardening-unauth 2026-04-14 10:28:25 +08:00