openxiangda-skill-kit 2.0.0-alpha.13 → 2.0.0-alpha.131
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +6 -6
- package/dist/bin.js +0 -0
- package/dist/index.d.ts +4 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +167 -62
- package/dist/index.js.map +1 -1
- package/dist/internal/skill-installer.d.ts +8 -0
- package/dist/internal/skill-installer.d.ts.map +1 -0
- package/dist/internal/skill-installer.js +51 -0
- package/dist/internal/skill-installer.js.map +1 -0
- package/package.json +3 -6
- package/skills/manifest.json +2 -32
- package/skills/openxiangda-v2/SKILL.md +57 -24
- package/skills/openxiangda-v2/agents/openai.yaml +1 -1
- package/skills/openxiangda-v2/references/appspec.md +67 -0
- package/skills/openxiangda-v2/references/architecture.md +9 -0
- package/skills/openxiangda-v2/references/backend.md +279 -0
- package/skills/openxiangda-v2/references/commands.md +21 -0
- package/skills/openxiangda-v2/references/data-authz.md +410 -0
- package/skills/openxiangda-v2/references/delivery.md +49 -0
- package/skills/openxiangda-v2/references/discovery.md +15 -0
- package/skills/openxiangda-v2/references/frontend.md +259 -0
- package/skills/openxiangda-v2/references/public-access.md +159 -0
- package/skills/openxiangda-v2/references/testing.md +74 -0
- package/skills/openxiangda-v2/references/workflow-events.md +279 -0
- package/skills/openxiangda-v2/references/workspace.md +48 -0
- package/docs/architecture/repository-and-release.md +0 -52
- package/docs/backend.md +0 -89
- package/docs/concepts.md +0 -34
- package/docs/data-authz.md +0 -100
- package/docs/delivery.md +0 -71
- package/docs/frontend.md +0 -47
- package/docs/getting-started.md +0 -120
- package/docs/index.md +0 -23
- package/docs/llms.txt +0 -12
- package/docs/reference/cli.md +0 -51
- package/docs/reference/mcp.md +0 -26
- package/docs/workflow-events.md +0 -63
- package/skills/openxiangda-v2-architecture/SKILL.md +0 -29
- package/skills/openxiangda-v2-architecture/agents/openai.yaml +0 -4
- package/skills/openxiangda-v2-backend/SKILL.md +0 -42
- package/skills/openxiangda-v2-backend/agents/openai.yaml +0 -4
- package/skills/openxiangda-v2-data-authz/SKILL.md +0 -44
- package/skills/openxiangda-v2-data-authz/agents/openai.yaml +0 -4
- package/skills/openxiangda-v2-delivery/SKILL.md +0 -63
- package/skills/openxiangda-v2-delivery/agents/openai.yaml +0 -4
- package/skills/openxiangda-v2-frontend/SKILL.md +0 -40
- package/skills/openxiangda-v2-frontend/agents/openai.yaml +0 -4
- package/skills/openxiangda-v2-workflow-events/SKILL.md +0 -39
- package/skills/openxiangda-v2-workflow-events/agents/openai.yaml +0 -4
|
@@ -1,40 +0,0 @@
|
|
|
1
|
-
---
|
|
2
|
-
name: openxiangda-v2-frontend
|
|
3
|
-
description: Build OpenXiangda 2.0 React and Ant Design admin experiences. Use when implementing menus, routes, CRUD pages, role switching, workflow task pages, or application-defined action components.
|
|
4
|
-
---
|
|
5
|
-
|
|
6
|
-
# OpenXiangda 2.0 Frontend
|
|
7
|
-
|
|
8
|
-
Build inside `apps/web` with `openxiangda-admin`. Preserve the standard shell, role session, route guards, error handling, and typed clients.
|
|
9
|
-
|
|
10
|
-
## Implementation Rules
|
|
11
|
-
|
|
12
|
-
1. Register menus and routes through the application contribution API.
|
|
13
|
-
2. Gate navigation and actions with generated capability names; the server remains authoritative.
|
|
14
|
-
3. Use the active-role session supplied by the platform. Switching roles must refresh permissions and scoped data.
|
|
15
|
-
4. Use the standard CRUD and workflow modules first; add application components only for real domain interactions.
|
|
16
|
-
5. Render workflow actions and field policies from the backend protocol. Do not duplicate workflow transition rules in the browser.
|
|
17
|
-
6. Keep data calls in typed client modules rather than components.
|
|
18
|
-
7. Preserve the standard responsive layout, permission-filtered navigation,
|
|
19
|
-
cached tabs, personal center and stable role switcher. Build management lists
|
|
20
|
-
with the standard search, pagination, sorting, density, column settings,
|
|
21
|
-
revision-aware editing and batch action surfaces before adding custom UI.
|
|
22
|
-
8. Use `department`, `user`, and `relation` search/form controls for persisted
|
|
23
|
-
identifiers. Render directory identifiers with `DepartmentText` or
|
|
24
|
-
`UserText`; do not expose internal IDs as the primary business label.
|
|
25
|
-
9. Keep DataResource field policies effective across list columns, search,
|
|
26
|
-
forms, import and export. Authorization loading or errors must fail closed.
|
|
27
|
-
10. Use the standard dashboard and CSV transfer modules before creating
|
|
28
|
-
application-specific copies. Imports must use restricted transactions and
|
|
29
|
-
stable idempotency keys.
|
|
30
|
-
11. Keep the standard record detail drawer and business-audit timeline unless
|
|
31
|
-
the domain needs a genuinely different presentation. Use `DataFileField`
|
|
32
|
-
for managed attachments and the aggregate chart components for summaries;
|
|
33
|
-
never expose storage URLs or aggregate complete result sets in-browser.
|
|
34
|
-
12. Import from the narrow `openxiangda-admin/core`, `/data`, `/dashboard`,
|
|
35
|
-
and `/workflow` entrypoints. Keep business route modules lazy and preserve
|
|
36
|
-
the template's chunk-cycle and size budgets.
|
|
37
|
-
|
|
38
|
-
Run `openxiangda generate`, `openxiangda check`, and `openxiangda test` after changing contracts or pages. Run `pnpm test:e2e` for shell, navigation, role, data-page or recovery changes; preserve the desktop and mobile Chromium paths and use accessible role/label locators instead of Ant Design private DOM. Use accessible Ant Design patterns and run the repository's Ant Design lint when available.
|
|
39
|
-
|
|
40
|
-
Read [Frontend](../../docs/frontend.md) for route, menu, role, and workflow page examples.
|
|
@@ -1,39 +0,0 @@
|
|
|
1
|
-
---
|
|
2
|
-
name: openxiangda-v2-workflow-events
|
|
3
|
-
description: Implement OpenXiangda Workflow Kernel v2 and durable application events. Use for approval definitions, assignee providers, task actions, delegation, add-sign, previews, data-change events, workflow events, or timers.
|
|
4
|
-
---
|
|
5
|
-
|
|
6
|
-
# OpenXiangda 2.0 Workflow and Events
|
|
7
|
-
|
|
8
|
-
The workflow kernel owns definitions, instances, tasks, transitions, delegation, add-sign, audit, and field policies. The application owns business records and application-specific logic.
|
|
9
|
-
|
|
10
|
-
## Workflow
|
|
11
|
-
|
|
12
|
-
1. Declare approval and conditional nodes in `openxiangda.config.ts`.
|
|
13
|
-
2. Use provider contracts for application-data-dependent assignee resolution and custom action decisions.
|
|
14
|
-
3. Keep submit preview and actual start on the same definition version and subject context.
|
|
15
|
-
4. Return protocol `operations`, field policies, presentation hints, execution targets, and concurrency tokens from the backend. Task and instance operations may coexist on one Surface; dispatch them to their declared task/instance command scope.
|
|
16
|
-
5. Persist business changes through Data API or App API, then correlate them to the workflow action.
|
|
17
|
-
6. Test approve, reject, transfer, return, resubmit, delegation, add-sign, initiator withdrawal, admin termination, duplicate requests, and stale revisions.
|
|
18
|
-
7. Rotate application Provider signing keys with `workflow provider rotate`,
|
|
19
|
-
then deploy. During that deployment the Nest adapter must accept both current
|
|
20
|
-
and `_NEXT` secrets; the platform activates the next version after readiness.
|
|
21
|
-
|
|
22
|
-
## Events
|
|
23
|
-
|
|
24
|
-
- Subscribe to typed data and workflow events; implement idempotent consumers.
|
|
25
|
-
- Use timers as durable event producers.
|
|
26
|
-
- Verify signatures, propagate correlation IDs, and fail retryably for transient dependencies.
|
|
27
|
-
- Never assume event ordering unless the contract explicitly provides a partition key.
|
|
28
|
-
- Inspect dead letters with `event delivery list` and replay with a stable
|
|
29
|
-
idempotency key. Do not retry deterministic 4xx failures in a consumer loop.
|
|
30
|
-
- Keep the default platform-backed durable receipt store in production. It uses
|
|
31
|
-
the subscription HMAC secret and survives Pod restarts and multiple replicas;
|
|
32
|
-
inject `InMemoryOpenXiangdaEventReceiptStore` only in local tests.
|
|
33
|
-
- Treat an in-flight duplicate as retryable, not successful. Use `event.id` as
|
|
34
|
-
the Data API transaction or downstream idempotency key for side effects that
|
|
35
|
-
can succeed before the receipt completion request reaches the platform.
|
|
36
|
-
|
|
37
|
-
Use `openxiangda generate`, `openxiangda check`, and `openxiangda test` to keep providers and event payloads aligned.
|
|
38
|
-
|
|
39
|
-
Read [Workflow and Events](../../docs/workflow-events.md) for protocol details.
|