skillhub/.github
XiaoSeS 28e9049562 feat(profile): add field policy config and GET response
* feat(profile): add field policy config and GET response

Add per-field edit policy configuration (editable, requiresReview) to
application.yml and expose it in the GET /api/v1/user/profile response
via a new fieldPolicies map, enabling the frontend to dynamically render
fields based on backend-driven policies.

* feat(profile): implement mixed submission in PATCH

Split profile update changes by per-field policy: fields without
requiresReview apply immediately, fields with requiresReview enter
the pending queue. Return PARTIALLY_APPLIED status with appliedFields
and pendingFields maps when both paths trigger in a single request.

* feat(web): rewrite profile page with dynamic fields

Render profile fields dynamically from backend fieldPolicies, with
whole-page read/edit mode toggle. Handle APPLIED, PENDING_REVIEW, and
PARTIALLY_APPLIED responses. Add i18n keys for review hints and
partial-apply toasts in both en and zh.

* merge: resolve deepwiki.yml conflict with package-lock.json fix

* api schema

* fix(profile): align moderation defaults and tests

* ci(deepwiki): run crawler on release publish
2026-03-20 14:59:21 +08:00
..
ISSUE_TEMPLATE Add OpenAPI drift validation and docs updates 2026-03-13 11:06:55 +08:00
workflows feat(profile): add field policy config and GET response 2026-03-20 14:59:21 +08:00
pull_request_template.md Add OpenAPI drift validation and docs updates 2026-03-13 11:06:55 +08:00