@shundoo-ai/dsh-cosmic 1.0.19 → 1.0.21
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/cordis.patch.yml +5 -5
- package/package.json +1 -1
- package/skills/cosmic-build/CHANGELOG.md +4 -0
- package/skills/cosmic-build/LOCAL-PATCHES.md +91 -40
- package/skills/cosmic-build/SKILL.md +46 -13
- package/skills/cosmic-build/assets/platform-report-filters/TypedReportFilterFields.java +169 -0
- package/skills/cosmic-build/assets/platform-report-filters/platform.patch +98 -0
- package/skills/cosmic-build/assets/report-algo-benchmark/ReportAlgoBenchmark.java +48 -0
- package/skills/cosmic-build/assets/report-algo-benchmark/ReportBenchmarkLogFactory.java +7 -0
- package/skills/cosmic-build/examples/java-rules/CosmicEntryQuery.java +26 -0
- package/skills/cosmic-build/examples/java-rules/CosmicReportAggregation.java +35 -0
- package/skills/cosmic-build/examples/java-rules/CosmicReportFilters.java +77 -0
- package/skills/cosmic-build/examples/java-rules/CosmicTimeAdapter.java +25 -0
- package/skills/cosmic-build/examples/java-rules/CosmicTimeAdapterCheck.java +26 -0
- package/skills/cosmic-build/knowledge/cosmic/platform/api/algo/GroupbyDataSet.md +47 -0
- package/skills/cosmic-build/knowledge/cosmic/platform/api/entity/report/FilterInfo.md +12 -12
- package/skills/cosmic-build/knowledge/cosmic/platform/api/entity/report/FilterItemInfo.md +2 -0
- package/skills/cosmic-build/knowledge/cosmic/platform/form-plugin.md +2 -4
- package/skills/cosmic-build/knowledge/cosmic/platform/java-type-contracts.md +11 -2
- package/skills/cosmic-build/knowledge/cosmic/platform/list-plugin.md +18 -14
- package/skills/cosmic-build/knowledge/cosmic/platform/operation-plugin.md +4 -4
- package/skills/cosmic-build/knowledge/cosmic/platform/reportlistdata-plugin.md +17 -9
- package/skills/cosmic-build/knowledge/cosmic/platform/scenes/operation/cross-entity-aggregate-writeback.md +2 -0
- package/skills/cosmic-build/knowledge/cosmic/platform/scenes/operation/pre-post-operation.md +15 -7
- package/skills/cosmic-build/knowledge/cosmic/platform/sdk/sdk-algo.md +24 -68
- package/skills/cosmic-build/knowledge/cosmic/platform/workflow-plugin.md +2 -7
- package/skills/cosmic-build/references/application-context.md +35 -1
- package/skills/cosmic-build/references/common-reference.md +1 -1
- package/skills/cosmic-build/references/compile-guide.md +55 -68
- package/skills/cosmic-build/references/delivery.md +59 -7
- package/skills/cosmic-build/references/execution-contract.md +38 -0
- package/skills/cosmic-build/references/form-discovery.md +7 -1
- package/skills/cosmic-build/references/java-plugin-delivery.md +32 -162
- package/skills/cosmic-build/references/operation-dispatch.md +17 -0
- package/skills/cosmic-build/references/plugin-handoff-input.md +131 -0
- package/skills/cosmic-build/references/plugin-runtime-routing.md +1 -1
- package/skills/cosmic-build/references/report-filter-contract.md +78 -0
- package/skills/cosmic-build/references/sdk-inspection.md +23 -0
- package/skills/cosmic-build/schemas/data-model-authoring.schema.json +2 -3
- package/skills/cosmic-build/scripts/_http_client.py +55 -55
- package/skills/cosmic-build/scripts/appconfig_load.py +2 -2
- package/skills/cosmic-build/scripts/apply_report_filter_extension.py +39 -0
- package/skills/cosmic-build/scripts/bootstrap_cosmic_context.py +37 -2
- package/skills/cosmic-build/scripts/compile_plugin_source.py +279 -156
- package/skills/cosmic-build/scripts/execution_binding.py +40 -0
- package/skills/cosmic-build/scripts/inspect_platform_sdk.py +169 -0
- package/skills/cosmic-build/scripts/kd_api.py +23 -22
- package/skills/cosmic-build/scripts/kd_auth.py +1 -1
- package/skills/cosmic-build/scripts/kd_env_loader.py +19 -10
- package/skills/cosmic-build/scripts/kd_token_cache.py +2 -2
- package/skills/cosmic-build/scripts/kingscript_sdk_sync.py +350 -0
- package/skills/cosmic-build/scripts/kingscript_source_gate.py +11 -8
- package/skills/cosmic-build/scripts/platform_api_contract.py +246 -11
- package/skills/cosmic-build/scripts/plugin_corpus/build_index.py +403 -0
- package/skills/cosmic-build/scripts/plugin_corpus/jvm_classfile.py +281 -0
- package/skills/cosmic-build/scripts/plugin_corpus/measure_api_usage.py +446 -0
- package/skills/cosmic-build/scripts/plugin_source_gate.py +48 -7
- package/skills/cosmic-build/scripts/plugin_target_sdk.py +45 -0
- package/skills/cosmic-build/scripts/prepare_plugin_handoff.py +493 -47
- package/skills/cosmic-build/scripts/preview_url.py +35 -6
- package/skills/cosmic-build/scripts/query_plugin_handoff.py +250 -0
- package/skills/cosmic-build/scripts/register_plugins.py +28 -2
- package/skills/cosmic-build/scripts/render_output_cards.py +42 -9
- package/skills/cosmic-build/scripts/report_algo_benchmark.py +46 -0
- package/skills/cosmic-build/scripts/run.py +2 -2
- package/skills/cosmic-build/scripts/sync_generated_locale_assets.py +43 -0
- package/skills/cosmic-build/scripts/test/fixtures/ReportSdkCheck.java +64 -0
- package/skills/cosmic-build/scripts/test/fixtures/java_context_booking_native.json +541 -0
- package/skills/cosmic-build/scripts/test/test_add_rule_business_contract.py +85 -14
- package/skills/cosmic-build/scripts/test/test_batch5_drift_governance.py +12 -3
- package/skills/cosmic-build/scripts/test/test_build_meta_order.py +0 -16
- package/skills/cosmic-build/scripts/test/test_cli_continuation.py +87 -0
- package/skills/cosmic-build/scripts/test/test_compile_plugin_source.py +224 -3
- package/skills/cosmic-build/scripts/test/test_control_authoring.py +123 -4
- package/skills/cosmic-build/scripts/test/test_cosmic_sdk_examples.py +141 -0
- package/skills/cosmic-build/scripts/test/test_data_model_contract.py +30 -5
- package/skills/cosmic-build/scripts/test/test_delivery_stage_boundary.py +2 -10
- package/skills/cosmic-build/scripts/test/test_dym_sync_background.py +11 -0
- package/skills/cosmic-build/scripts/test/test_dynamic_form_metadata_only_contract.py +59 -1
- package/skills/cosmic-build/scripts/test/test_guide_skeleton_contract.py +87 -43
- package/skills/cosmic-build/scripts/test/test_inspect_platform_sdk.py +71 -0
- package/skills/cosmic-build/scripts/test/test_kd_api.py +67 -19
- package/skills/cosmic-build/scripts/test/test_kingscript_sdk_sync.py +221 -0
- package/skills/cosmic-build/scripts/test/test_kingscript_source_gate.py +10 -0
- package/skills/cosmic-build/scripts/test/test_list_configuration_closure.py +18 -0
- package/skills/cosmic-build/scripts/test/test_long_session_regressions.py +116 -0
- package/skills/cosmic-build/scripts/test/test_mcp_cli.py +524 -0
- package/skills/cosmic-build/scripts/test/test_modeling_input_recovery.py +141 -0
- package/skills/cosmic-build/scripts/test/test_open_world_cli_catalog.py +36 -2
- package/skills/cosmic-build/scripts/test/test_platform_api_contract.py +161 -1
- package/skills/cosmic-build/scripts/test/test_plugin_business_contract.py +91 -0
- package/skills/cosmic-build/scripts/test/test_plugin_corpus.py +195 -0
- package/skills/cosmic-build/scripts/test/test_plugin_handoff.py +346 -1
- package/skills/cosmic-build/scripts/test/test_plugin_target_sdk.py +70 -0
- package/skills/cosmic-build/scripts/test/test_preview_url.py +44 -1
- package/skills/cosmic-build/scripts/test/test_property_batch.py +22 -0
- package/skills/cosmic-build/scripts/test/test_property_input_discovery.py +13 -11
- package/skills/cosmic-build/scripts/test/test_query_plugin_handoff.py +160 -0
- package/skills/cosmic-build/scripts/test/test_register_plugins.py +31 -1
- package/skills/cosmic-build/scripts/test/test_render_output_cards.py +50 -4
- package/skills/cosmic-build/scripts/test/test_report_business_contract.py +27 -0
- package/skills/cosmic-build/scripts/test/test_report_doc_contract_sync.py +5 -4
- package/skills/cosmic-build/scripts/test/test_report_sdk_optimization.py +36 -0
- package/skills/cosmic-build/scripts/test/test_rule_batch_evidence.py +1 -1
- package/skills/cosmic-build/scripts/test/test_rule_domain_contract.py +20 -0
- package/skills/cosmic-build/scripts/test/test_rule_function_formula.py +16 -6
- package/skills/cosmic-build/scripts/test/test_skill_entry_contract.py +1 -0
- package/skills/cosmic-build/scripts/test/test_test_environment.py +45 -0
- package/skills/cosmic-build/scripts/test/test_verify_plugin_loading.py +79 -0
- package/skills/cosmic-build/scripts/test_environment.py +49 -0
- package/skills/cosmic-build/scripts/verify_plugin_loading.py +71 -0
- package/skills/cosmic-build/skills/cosmic-coding-impl/SKILL.md +86 -162
- package/skills/cosmic-build/skills/cosmic-coding-script/ATTRIBUTION.md +1 -1
- package/skills/cosmic-build/skills/cosmic-coding-script/SKILL.md +45 -14
- package/skills/cosmic-build/skills/cosmic-coding-script/references/kwc-controller-authoring.md +6 -0
- package/skills/cosmic-build/skills/cosmic-coding-script/references/sdk/README.md +29 -19
- package/skills/cosmic-build/skills/cosmic-coding-script/references/sdk/docs//350/204/232/346/234/254SDK.md +3 -4
- package/skills/cosmic-build/skills/cosmic-coding-script/references/sdk/indexes/package-index.md +1 -1
- package/skills/cosmic-build/skills/cosmic-coding-script/references/sdk/strategy.md +27 -18
- package/skills/cosmic-build/skills/cosmic-meta-api/SKILL.md +11 -17
- package/skills/cosmic-build/skills/cosmic-meta-api/apis/ai_meta.md +1 -1
- package/skills/cosmic-build/skills/cosmic-meta-api/apis/app_menu.md +1 -1
- package/skills/cosmic-build/skills/cosmic-meta-api/apis/meta_log.md +1 -1
- package/skills/cosmic-build/skills/cosmic-meta-api/contracts/cli/control-authoring.json +45 -4
- package/skills/cosmic-build/skills/cosmic-meta-api/contracts/cli/form-control-traits.json +1 -1
- package/skills/cosmic-build/skills/cosmic-meta-api/contracts/cli/layout-ui.json +18 -0
- package/skills/cosmic-build/skills/cosmic-meta-api/contracts/cli/menu-publish.json +8 -2
- package/skills/cosmic-build/skills/cosmic-meta-api/contracts/cli/property-batch.json +7 -0
- package/skills/cosmic-build/skills/cosmic-meta-api/contracts/cli/property-input-index.json +3 -3
- package/skills/cosmic-build/skills/cosmic-meta-api/contracts/cli/report-write-contracts.json +1 -0
- package/skills/cosmic-build/skills/cosmic-meta-api/contracts/cli/rule-domain.json +37 -5
- package/skills/cosmic-build/skills/cosmic-meta-api/contracts/cli/rule-event-contract.json +24 -3
- package/skills/cosmic-build/skills/cosmic-meta-api/contracts/cli/run-build-meta.json +61 -12
- package/skills/cosmic-build/skills/cosmic-meta-api/contracts/schema/dropdown-menu.schema.json +69 -0
- package/skills/cosmic-build/skills/cosmic-meta-api/contracts/schema/report-write.schema.json +2 -1
- package/skills/cosmic-build/skills/cosmic-meta-api/contracts/schema/rule-set.schema.json +1 -0
- package/skills/cosmic-build/skills/cosmic-meta-api/contracts/schema/rule-write.schema.json +14 -7
- package/skills/cosmic-build/skills/cosmic-meta-api/docs/api-summary.md +2 -2
- package/skills/cosmic-build/skills/cosmic-meta-api/modules/app-action/SKILL.md +6 -3
- package/skills/cosmic-build/skills/cosmic-meta-api/modules/develop/SKILL.md +1 -2
- package/skills/cosmic-build/skills/cosmic-meta-api/modules/export/SKILL.md +5 -6
- package/skills/cosmic-build/skills/cosmic-meta-api/modules/init/SKILL.md +13 -36
- package/skills/cosmic-build/skills/cosmic-meta-api/modules/pdm/SKILL.md +8 -9
- package/skills/cosmic-build/skills/cosmic-meta-api/modules/pdm/scripts/config.json.example +5 -15
- package/skills/cosmic-build/skills/cosmic-meta-api/modules/reset/SKILL.md +6 -6
- package/skills/cosmic-build/skills/cosmic-meta-api/modules/usage/SKILL.md +20 -148
- package/skills/cosmic-build/skills/cosmic-meta-api/modules/verify/SKILL.md +1 -1
- package/skills/cosmic-build/skills/cosmic-meta-api/scripts/_core/build_receipts.py +171 -0
- package/skills/cosmic-build/skills/cosmic-meta-api/scripts/_core/cmd_apps.py +25 -6
- package/skills/cosmic-build/skills/cosmic-meta-api/scripts/_core/cmd_controls.py +55 -21
- package/skills/cosmic-build/skills/cosmic-meta-api/scripts/_core/cmd_fields.py +10 -3
- package/skills/cosmic-build/skills/cosmic-meta-api/scripts/_core/cmd_formactions.py +63 -6
- package/skills/cosmic-build/skills/cosmic-meta-api/scripts/_core/cmd_forms.py +59 -2
- package/skills/cosmic-build/skills/cosmic-meta-api/scripts/_core/cmd_listui.py +8 -0
- package/skills/cosmic-build/skills/cosmic-meta-api/scripts/_core/cmd_metaops.py +36 -1
- package/skills/cosmic-build/skills/cosmic-meta-api/scripts/_core/cmd_plugins.py +115 -90
- package/skills/cosmic-build/skills/cosmic-meta-api/scripts/_core/cmd_properties.py +666 -4
- package/skills/cosmic-build/skills/cosmic-meta-api/scripts/_core/cmd_rules.py +1415 -87
- package/skills/cosmic-build/skills/cosmic-meta-api/scripts/_core/commands.py +6 -1
- package/skills/cosmic-build/skills/cosmic-meta-api/scripts/_core/config.py +28 -15
- package/skills/cosmic-build/skills/cosmic-meta-api/scripts/_core/execution_errors.py +40 -0
- package/skills/cosmic-build/skills/cosmic-meta-api/scripts/_core/formatters.py +32 -5
- package/skills/cosmic-build/skills/cosmic-meta-api/scripts/_core/property_policy_contract.py +6 -0
- package/skills/cosmic-build/skills/cosmic-meta-api/scripts/_core/report_ops.py +113 -17
- package/skills/cosmic-build/skills/cosmic-meta-api/scripts/_core/reset.py +3 -3
- package/skills/cosmic-build/skills/cosmic-meta-api/scripts/_core/rule_contract.py +107 -26
- package/skills/cosmic-build/skills/cosmic-meta-api/scripts/build_meta_order.py +50 -49
- package/skills/cosmic-build/skills/cosmic-meta-api/scripts/cosmic_api.py +856 -150
- package/skills/cosmic-build/skills/cosmic-meta-api/scripts/field_decorator.py +47 -14
- package/skills/cosmic-build/skills/cosmic-meta-api/scripts/test/test_build_receipt_resume.py +374 -0
- package/skills/cosmic-build/skills/cosmic-meta-api/scripts/test/test_cli_failure_contract.py +24 -0
- package/skills/cosmic-build/skills/cosmic-meta-api/scripts/test/test_creation_identity_boundary.py +4 -2
- package/skills/cosmic-build/skills/cosmic-meta-api/scripts/test/test_dropdown_menu_contract.py +382 -0
- package/skills/cosmic-build/skills/cosmic-meta-api/scripts/test/test_existing_form_ui.py +0 -25
- package/skills/cosmic-build/skills/cosmic-meta-api/scripts/test/test_field_decorator.py +50 -6
- package/skills/cosmic-build/skills/cosmic-meta-api/scripts/test/test_functional_group_resolution.py +83 -16
- package/skills/cosmic-build/skills/cosmic-meta-api/scripts/test/test_identity_template_resolution.py +103 -0
- package/skills/cosmic-build/skills/cosmic-meta-api/scripts/test/test_report_plugin_contract.py +28 -2
- package/skills/cosmic-build/skills/cosmic-meta-api/scripts/test/test_report_readback_derivation.py +22 -0
- package/skills/cosmic-build/skills/cosmic-meta-api/scripts/test/test_report_typed_filters.py +65 -0
- package/skills/cosmic-build/skills/cosmic-meta-api/scripts/test/test_rule_write_closure.py +1041 -15
- package/skills/cosmic-build/skills/cosmic-meta-api/scripts/test/test_run_batch_post_build_recovery.py +65 -0
- package/skills/cosmic-build/skills/cosmic-meta-api/scripts/test/test_run_batch_verification_evidence.py +17 -0
- package/skills/cosmic-build/skills/cosmic-meta-knowledge/generation/api-param-checklist.md +1 -1
- package/skills/cosmic-build/skills/cosmic-meta-knowledge/generation/rule-modeling-guide.md +7 -4
- package/skills/cosmic-build/skills/cosmic-meta-modeling/SKILL.md +61 -13
- package/skills/cosmic-build/skills/cosmic-meta-modeling/modules/app-menu/SKILL.md +8 -0
- package/skills/cosmic-build/skills/cosmic-meta-modeling/modules/formtemplate/SKILL.md +5 -0
- package/skills/cosmic-build/skills/cosmic-meta-modeling/modules/formtemplate/dynamic-form-artifact-schema.md +5 -0
- package/skills/cosmic-build/skills/cosmic-meta-modeling/modules/report/SKILL.md +21 -9
- package/skills/cosmic-build/skills/cosmic-meta-modeling/references/authoring-entity-graphs.md +1 -1
- package/skills/cosmic-build/skills/cosmic-meta-modeling/references/authoring-storage-constraints.md +5 -3
- package/skills/cosmic-build/skills/cosmic-meta-modeling/references/authoring-ui-composition.md +6 -3
- package/skills/cosmic-build/skills/cosmic-meta-modeling/references/creation-recovery.md +13 -0
- package/skills/cosmic-build/skills/cosmic-meta-modeling/references/parse-core.md +3 -0
- package/skills/cosmic-build/skills/cosmic-meta-modeling/scripts/data_model_contract.py +6 -1
- package/skills/cosmic-build/skills/cosmic-meta-modeling/scripts/data_model_emit.py +135 -87
- package/skills/cosmic-build/skills/cosmic-meta-modeling/scripts/field_type_registry.py +11 -1
- package/skills/cosmic-build/skills/cosmic-meta-modeling/scripts/isv_resolver.py +1 -3
- package/skills/cosmic-build/skills/cosmic-meta-modeling/scripts/report_validator.py +29 -0
- package/skills/cosmic-build/skills/cosmic-meta-modifier/SKILL.md +4 -2
- package/skills/cosmic-build/skills/cosmic-meta-modifier/modules/context/SKILL.md +2 -2
- package/skills/cosmic-build/skills/cosmic-meta-modifier/modules/execute/SKILL.md +1 -1
- package/skills/cosmic-build/skills/cosmic-meta-modifier/modules/operation/SKILL.md +5 -4
- package/skills/cosmic-build/skills/cosmic-meta-modifier/modules/operation/operation-write.md +6 -2
- package/skills/cosmic-build/skills/cosmic-meta-modifier/modules/operation/validation.md +2 -0
- package/skills/cosmic-build/skills/cosmic-meta-modifier/modules/property/SKILL.md +20 -5
- package/skills/cosmic-build/skills/cosmic-meta-modifier/modules/property/complex-apis.md +1 -1
- package/skills/cosmic-build/skills/cosmic-meta-modifier/modules/property/policy-grammar.md +4 -1
- package/skills/cosmic-build/skills/cosmic-meta-modifier/modules/report-op/SKILL.md +9 -0
- package/skills/cosmic-build/skills/cosmic-meta-modifier/modules/rule/SKILL.md +61 -4
- package/skills/cosmic-build/skills/cosmic-meta-modifier/modules/rule/raw-rule-authoring.md +3 -1
- package/skills/cosmic-build/skills/cosmic-meta-modifier/modules/rule/rule-actions.md +2 -2
- package/skills/cosmic-build/skills/cosmic-meta-modifier/modules/rule/rule-reference.md +6 -6
- package/skills/cosmic-build/skills/cosmic-meta-modifier/modules/rule/state.md +1 -1
- package/skills/cosmic-build/skills/cosmic-meta-modifier/modules/unit/SKILL.md +6 -3
- package/skills/cosmic-build/skills/cosmic-meta-modifier/modules/verify/usage-guide.md +4 -4
- package/skills/cosmic-build/skills/cosmic-meta-modifier/references/list-filter-modification.md +4 -1
- package/skills/cosmic-build/skills/cosmic-meta-ui/SKILL.md +9 -1
- package/skills/cosmic-build/skills/cosmic-meta-ui/modules/button/SKILL.md +3 -0
- package/skills/cosmic-build/skills/mcp-server/SKILL.md +210 -0
- package/skills/cosmic-build/skills/mcp-server/scripts/mcp_cli.py +431 -0
- package/skills/cosmic-build/skills/openapi-gen/SKILL.md +3 -3
- package/skills/cosmic-build/skills/openapi-gen/scripts/api/gen_runner.py +2 -2
- package/skills/cosmic-dev-best-practices/references/bill-dev-convention.md +19 -9
- package/skills/cosmic-dev-best-practices/references/cosmic-meta-api.md +14 -11
- package/skills/cosmic-dev-best-practices/references/design-examples/basedata-design-example.md +1 -1
- package/skills/cosmic-dev-best-practices/references/design-examples/bill-design-example.md +1 -1
- package/skills/cosmic-dev-best-practices/references/elements/AssistantField.md +1 -1
- package/skills/cosmic-dev-best-practices/references/elements/BasedataField.md +2 -2
- package/skills/cosmic-dev-best-practices/references/elements/BasedataPropField.md +3 -3
- package/skills/cosmic-dev-best-practices/references/elements/CreaterField.md +2 -2
- package/skills/cosmic-dev-best-practices/references/elements/CurrencyField.md +2 -2
- package/skills/cosmic-dev-best-practices/references/elements/CustomerField.md +2 -2
- package/skills/cosmic-dev-best-practices/references/elements/FlexField.md +1 -1
- package/skills/cosmic-dev-best-practices/references/elements/MaterielField.md +2 -2
- package/skills/cosmic-dev-best-practices/references/elements/OrgField.md +2 -2
- package/skills/cosmic-dev-best-practices/references/elements/SupplierField.md +2 -2
- package/skills/cosmic-dev-best-practices/references/elements/UnitField.md +1 -1
- package/skills/cosmic-dev-best-practices/references/elements/UserField.md +3 -3
- package/skills/cosmic-dev-best-practices/references/elements/common-field-property-conventions.md +16 -11
- package/skills/cosmic-dev-best-practices/references/layout-control-convention.md +5 -4
- package/skills/erp-analysis/references/delivery-contract.md +4 -2
- package/skills/erp-analysis/templates/AGENTS.template.md +1 -1
- package/skills/cosmic-build/skills/cosmic-meta-api/scripts/.dsh/cosmic/.kd/config.json +0 -21
|
@@ -1,180 +1,104 @@
|
|
|
1
|
-
# Cosmic
|
|
1
|
+
# Cosmic Java 编码实现
|
|
2
2
|
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
3
|
+
针对用户已绑定的表单实现或修改 Java。未提供当前 handoff 时,按
|
|
4
|
+
[plugin-handoff-input.md](../../references/plugin-handoff-input.md) 准备。优先读取准备好的 `coding-start`
|
|
5
|
+
文件;否则从准确 handoff 查询 `coding-start`,缺失事实
|
|
6
|
+
通过准确 pointer 查询,不重复准备。
|
|
7
|
+
`{ROOT_DIR}` 是根技能的技能包目录。完整字段归属和运行时集合路径以 `formGraph` /
|
|
8
|
+
`relatedForms` 为准,可选 `fields` 别名不是完整字段清单。使用已准备的项目、包与源码路径,
|
|
9
|
+
不搜索兄弟项目或旧插件测试来重新推导。必需元数据缺失时,通过该目标的原生读取契约补齐;
|
|
10
|
+
结构不完整不能猜测。无需额外规划文档或编码 Agent。
|
|
6
11
|
|
|
7
|
-
|
|
8
|
-
都必须逐字使用它;本地化技能自身的 Base directory 不是 `ROOT_DIR`。
|
|
12
|
+
## 使用已提供的证据
|
|
9
13
|
|
|
10
|
-
|
|
14
|
+
`codingEvidence` 从唯一的类型/基类/后缀映射 `references/type-registry.json` 解析指南与 API
|
|
15
|
+
契约。其中的准确签名、导入和弃用提示已经是 API 证据,不要求为满足“本轮已读”而重复打开
|
|
16
|
+
页面。`coreLogic` 中的业务事件名不是 SDK 签名。
|
|
11
17
|
|
|
12
|
-
|
|
13
|
-
`trigger`、`ownershipMode`。`coreLogic` 必须是精确行为数组。
|
|
18
|
+
只读取缺失或适用的知识:
|
|
14
19
|
|
|
15
|
-
|
|
20
|
+
- 已有证据不能确定事件位置、必需 `super` 调用或异常行为时,读所选指南的相关生命周期/场景。
|
|
21
|
+
没有指南的类型,按实际实现读取准确 API 参考。
|
|
22
|
+
- 值访问、过滤或数据服务超出 `fieldContracts` 与 API 证据时,读
|
|
23
|
+
`knowledge/cosmic/platform/java-type-contracts.md` 的相关段落。
|
|
24
|
+
- 从 `knowledge/cosmic/platform/standards.md` 的严格禁止事项中读取适用平台约束;专项标准
|
|
25
|
+
只读 `specialized.hitModules` 点名的部分。源码检查覆盖部分生命周期错误,不覆盖全部生产约束。
|
|
16
26
|
|
|
17
|
-
|
|
18
|
-
- Java 访问字段/实体:`fields` / `entities` 必须提供业务名到真实 key 的映射。随之提供
|
|
19
|
-
`fieldContracts` 时,其中带有每个字段已验证的 `fieldType`,引用字段还带
|
|
20
|
-
`valueAccessor`、`idAccessor`、`filterValue`。这些取值方式必须照抄使用;已有契约的字段
|
|
21
|
-
不得用自行推导或凭记忆的取值方式读取。
|
|
22
|
-
- `ownershipMode=modify`:`sourcePath` 和 `existingMethods` 已提供。`sourcePath` 指向交接
|
|
23
|
-
编译器已经读取过的文件;`existingMethods` 列出该文件最外层类体已声明的方法签名。
|
|
24
|
-
- 命中安全、幂等、大数据或审计约束:通过 `specialized.hitModules/constraints/evidence`
|
|
25
|
-
直接提供;已验证产物之外的数据或服务精确契约通过 `specialized.externalContracts` 提供
|
|
26
|
-
(`externalApis` 仅为旧别名)。
|
|
27
|
-
交接编译器已保证 `specialized.unresolvedDependencies` 为空。禁止在编码阶段重新设计。
|
|
27
|
+
缺少 API 证据时,在一次本地查询中批量指定接收者类与所需成员:
|
|
28
28
|
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
`coreLogic` 只按业务语义处理。若其中混入 Java 事件、Helper、方法名或 SDK 调用步骤,不得
|
|
33
|
-
照抄;以已选 guide 的验证 API 为准。必须依赖的外部集成若没有精确的
|
|
34
|
-
`specialized.externalContracts`,返回 `L3-BLOCK`,不得猜服务名或用空值/默认值掩盖失败。
|
|
35
|
-
|
|
36
|
-
## 1. 确定类和路径
|
|
37
|
-
|
|
38
|
-
- `modify + sourcePath`:先完整读取该文件。起点是它,不是 guide 骨架。只写本次要求的改动
|
|
39
|
-
及直接相关辅助代码;为遵循工程惯例,可以窄范围读取同包附近已有插件。
|
|
40
|
-
- 新建:`className` 已给出则直接使用;否则将 `formNumber` 转为 PascalCase 后追加下表
|
|
41
|
-
`classSuffix`。类名只能包含 `[A-Za-z0-9]`。
|
|
42
|
-
- 新建输出固定为
|
|
43
|
-
`{projectRoot}/src/main/java/{packagePath}/{className}.java`。
|
|
44
|
-
- `packagePath` 直接转成 Java package;禁止重新发现其他模块或读取兄弟工程。
|
|
45
|
-
|
|
46
|
-
## 2. 最小知识读取
|
|
47
|
-
|
|
48
|
-
写任何取值、过滤条件或数据服务调用之前,先只读取一次
|
|
49
|
-
`{ROOT_DIR}/knowledge/cosmic/platform/java-type-contracts.md`。它收录的是"两种写法都能编译
|
|
50
|
-
通过"的类型事实:引用字段存的是记录而不是它的 id、`QFilter` 的值可以是什么、每个比较操作符
|
|
51
|
-
对应哪个 `QCP` 常量、以及最常被凭记忆写错的返回类型。编译边界会拒绝与登记返回类型矛盾的
|
|
52
|
-
声明,但取值类型写错只会在数据库层暴露。
|
|
53
|
-
|
|
54
|
-
生成源码之前,先只读取一次 `{ROOT_DIR}/knowledge/cosmic/platform/standards.md` 的
|
|
55
|
-
`强制禁止项` 一节。那是平台的生产事故清单:循环内不能做什么、日志/多语言/线程池/缓存 key 必须用
|
|
56
|
-
哪些 API、`initialize()` 里不能碰什么。本流程没有任何闸门检查其中任何一条,违反了照样能编译、能
|
|
57
|
-
注册,并进入生产环境。
|
|
29
|
+
```text
|
|
30
|
+
{python} "{ROOT_DIR}/scripts/platform_api_contract.py" --describe-class "<receiver class>" [--describe-class "<another class>"] [--member "<required member>"]
|
|
31
|
+
```
|
|
58
32
|
|
|
59
|
-
|
|
60
|
-
|
|
33
|
+
查询包含已文档化父类。未记载不等于不存在,剩余缺口查所选场景,或按返回的 `sdkLookup` 使用
|
|
34
|
+
[SDK 查证](../../references/sdk-inspection.md) 核对实际目标库。
|
|
35
|
+
插件、校验器和事件对象上的同名调用具有不同契约。需要搜索时,仅搜索相关平台知识或目标
|
|
36
|
+
模块附近代码。必需 API 或外部契约仍无法确定时返回 `L3-BLOCK`。
|
|
61
37
|
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
`
|
|
38
|
+
查询、加载、保存调用直接使用已准备场景的 `apiContracts`。`EntryType` 或
|
|
39
|
+
`collectionPath` 能证明字段归属,不能证明 `QueryServiceHelper` 接受该分录作为独立查询根。
|
|
40
|
+
缺少查询用法时,先按目标 SDK 示例或限定范围的只读平台验证查证。状态行为依据 `operationContracts`
|
|
41
|
+
和已验证枚举值,写源码前解决 `stateWarnings`;编译和注册保持已准备的操作键。
|
|
42
|
+
多操作插件使用 `codingEvidence.operationDispatch`:校验器 `getOperateKey()` 与事务参数
|
|
43
|
+
`getOperationKey()` 是不同接收者的契约。[操作分派参考](../../references/operation-dispatch.md)
|
|
44
|
+
给出 SDK 查证范围,不能把猜测的 `operateMeta` Map 键作为操作契约。
|
|
66
45
|
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
路由到哪里,该基类页面都是必读项:它是你所重写方法的签名,以及获取上下文、结果等对象的 getter
|
|
71
|
-
的唯一来源。
|
|
46
|
+
读取表头与分录时,可按需参考 [CosmicEntryQuery.java](../../../../examples/java-rules/CosmicEntryQuery.java):
|
|
47
|
+
在表单根查询 ID,再加载结构化对象并读取集合属性。示例通过 8.0 SDK 编译验证;实际表单编码、
|
|
48
|
+
集合属性、过滤条件与返回字段需在已授权目标中验证。展开查询继续使用已有 `query-entities.md` 场景。
|
|
72
49
|
|
|
73
|
-
|
|
74
|
-
OOM、幂等专项文档。`constraints` 必须逐项落实。
|
|
50
|
+
## 写入源码
|
|
75
51
|
|
|
76
|
-
|
|
52
|
+
modify 先完整读取现有文件,以它为起点。在已有触发方法内添加行为,`existingMethods` 是
|
|
53
|
+
方法清单,不是要求重新声明。保留无关代码、包、类与导入。create 使用所选类型的基类及生命
|
|
54
|
+
周期契约,写入返回的 `sourcePath`。
|
|
77
55
|
|
|
78
|
-
|
|
56
|
+
写入前复用准备阶段的 `sourceGate.state="coding"`;只有缺少该状态时才执行:
|
|
79
57
|
|
|
80
58
|
```text
|
|
81
59
|
{python} "{ROOT_DIR}/scripts/plugin_source_gate.py" --project-root "{projectRoot}" --class-name "{className}" --write coding
|
|
82
60
|
```
|
|
83
61
|
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
`
|
|
87
|
-
|
|
88
|
-
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
只读一次 `{ROOT_DIR}/references/compile-guide.md`,调用其中唯一编译脚本处理本轮
|
|
129
|
-
`sourcePath`。按结构化诊断做正常的窄范围调试,必要时查看目标模块相关代码或准确 API 证据。
|
|
130
|
-
禁止手工运行 Gradle、检查构建配置,或搜索 jar、兄弟工程、元数据、Gradle 缓存及外部源码。
|
|
131
|
-
现有证据不能解决时返回 `L3-BLOCK`。
|
|
132
|
-
|
|
133
|
-
编译命令同时写入当前类的归档项,并且只在编译和归档都成功后标记 gate。每个操作 key 单独
|
|
134
|
-
传参,数组为空时整项省略。禁止再单独调用 `write_archive_json.py` 或
|
|
135
|
-
`plugin_source_gate.py --write source_ready`。
|
|
136
|
-
|
|
137
|
-
最后只输出一行:
|
|
138
|
-
|
|
139
|
-
```text
|
|
140
|
-
::TASK_STATUS::{"status":"source_ready","className":"<className>","fqcn":"<package.className>","sourcePath":"<绝对路径>","formNumber":"<formNumber>","operationKeys":["<key>"]}
|
|
141
|
-
```
|
|
142
|
-
|
|
143
|
-
失败只输出 `status=failed` 和简短 `error`。禁止输出源码、长推理、编译或注册结果。
|
|
144
|
-
|
|
145
|
-
## 插件映射
|
|
146
|
-
|
|
147
|
-
| type | classSuffix | guide |
|
|
148
|
-
|---|---|---|
|
|
149
|
-
| `form` | `FormPlugin` | `{ROOT_DIR}/knowledge/cosmic/platform/form-plugin.md` |
|
|
150
|
-
| `billform` | `BillPlugin` | `{ROOT_DIR}/knowledge/cosmic/platform/form-plugin.md` |
|
|
151
|
-
| `baseform` | `FormPlugin` | `{ROOT_DIR}/knowledge/cosmic/platform/form-plugin.md` |
|
|
152
|
-
| `form_plugin` | `FormPlugin` | `{ROOT_DIR}/knowledge/cosmic/platform/form-plugin.md` |
|
|
153
|
-
| `listform` | `ListPlugin` | `{ROOT_DIR}/knowledge/cosmic/platform/list-plugin.md` |
|
|
154
|
-
| `mobbill` | `MobBillPlugin` | `{ROOT_DIR}/knowledge/cosmic/platform/form-plugin.md` |
|
|
155
|
-
| `mobform` | `MobPlugin` | `{ROOT_DIR}/knowledge/cosmic/platform/form-plugin.md` |
|
|
156
|
-
| `moblist` | `MobListPlugin` | `{ROOT_DIR}/knowledge/cosmic/platform/list-plugin.md` |
|
|
157
|
-
| `treelist` | `TreeListPlugin` | `{ROOT_DIR}/knowledge/cosmic/platform/standardtreelist-plugin.md` |
|
|
158
|
-
| `operation` | `OpPlugin` | `{ROOT_DIR}/knowledge/cosmic/platform/operation-plugin.md` |
|
|
159
|
-
| `workflow` | `WorkflowPlugin` | `{ROOT_DIR}/knowledge/cosmic/platform/workflow-plugin.md` |
|
|
160
|
-
| `task` | `Task` | `{ROOT_DIR}/knowledge/cosmic/platform/task-plugin.md` |
|
|
161
|
-
| `customapi` | `ApiController` | `{ROOT_DIR}/knowledge/cosmic/platform/openapi-customapi-java-plugin.md` |
|
|
162
|
-
| `apiplugin` | `ApiPlugin` | `{ROOT_DIR}/knowledge/cosmic/platform/openapi-ext-plugin.md` |
|
|
163
|
-
| `reportform` | `ReportPlugin` | `{ROOT_DIR}/knowledge/cosmic/platform/report-plugin.md` |
|
|
164
|
-
| `reportlist` | `ReportListPlugin` | `{ROOT_DIR}/knowledge/cosmic/platform/reportlistdata-plugin.md` |
|
|
165
|
-
| `reporttreelist` | `ReportTreePlugin` | `{ROOT_DIR}/knowledge/cosmic/platform/reporttreedata-plugin.md` |
|
|
166
|
-
| `report-plugin` | `ReportListPlugin` | `{ROOT_DIR}/knowledge/cosmic/platform/reportlistdata-plugin.md` |
|
|
167
|
-
| `compareplugin` | `FilterContantParser` | `{ROOT_DIR}/knowledge/cosmic/platform/compare-plugin.md` |
|
|
168
|
-
| `printplugin` | `PrintPlugin` | `{ROOT_DIR}/knowledge/cosmic/platform/print-plugin-guide.md` |
|
|
169
|
-
| `kwc` | `Controller` | `{ROOT_DIR}/knowledge/cosmic/platform/kwc-controller-plugin.md` |
|
|
170
|
-
| `writeback` | `WriteBackPlugin` | `{ROOT_DIR}/knowledge/cosmic/platform/writeback-plugin.md` |
|
|
171
|
-
| `botp` | `BotpPlugin` | `{ROOT_DIR}/knowledge/cosmic/platform/botp-plugin.md` |
|
|
172
|
-
| `import` | `ImportPlugin` | `{ROOT_DIR}/knowledge/cosmic/platform/import-plugin.md` |
|
|
173
|
-
| `service` | `Service` | 无 guide;所需 API 必须逐项取得文档依据 |
|
|
174
|
-
|
|
175
|
-
## 禁止行为
|
|
176
|
-
|
|
177
|
-
- 调用 app-build、建模技能、修改技能或插件设计。
|
|
178
|
-
- 读取 `archive.json` 作为输入,重新发现应用、表单、字段、操作或路径。
|
|
179
|
-
- 执行插件注册、`prepareFormMutationTarget`、describe/catalog 搜索或平台读回。
|
|
180
|
-
- 在 `{projectRoot}` 和 `{appRoot}/archive.json` 之外写文件。
|
|
62
|
+
- 使用已验证的 `fields` / `entities` 键,以及 `fieldContracts` 中的准确访问器和值类型。
|
|
63
|
+
引用字段的记录不是 ID,比较时使用其 `idAccessor` 或 `filterValue`。
|
|
64
|
+
目标 8.0 SDK 的 `TimeProp` 是距午夜的整秒数,使用返回的 `getInt` 访问器,
|
|
65
|
+
不用 `getDate`;空值及跨日情形另按实际业务规则处理。
|
|
66
|
+
[CosmicTimeAdapter.java](../../../../examples/java-rules/CosmicTimeAdapter.java)
|
|
67
|
+
示例演示先拒绝异常值,再转换为普通 Java 时间。
|
|
68
|
+
- 准确复制基类导入和重写签名,包括大小写与参数类型。按接收者证据核对平台调用,不靠近似名称猜 API。
|
|
69
|
+
- `QFilter` 使用操作符表推荐的辅助方法,否则使用对应 `QCP` 常量,不能用字符串操作符。
|
|
70
|
+
仅在所需操作符尚无证据时读取该表。
|
|
71
|
+
- 实现 `coreLogic`、已提供的 `reportContract` 和 `specialized.constraints`。
|
|
72
|
+
报表过滤读取 [report-filter-contract.md](../../references/report-filter-contract.md),
|
|
73
|
+
绑定实际取值 key、源字段类型、F7 组织身份、拆分日期和加载证据。
|
|
74
|
+
多个 `operationKeys` 保持独立;外部调用需要已提供的准确契约。
|
|
75
|
+
- 每项行为绑定到真实操作/事件,注册多个操作时分别使用对应条件,不能每个操作都执行全部行为。
|
|
76
|
+
从操作数据包读取的字段要在属性准备钩子中声明。
|
|
77
|
+
- 按真实状态字段和值显式实现所需业务状态变化;标准操作的 `statusFieldKey` 可能指向另一字段。
|
|
78
|
+
覆盖本任务要求的每条流转及其关联副作用。
|
|
79
|
+
- 独立加载的关联对象通过已验证保存/更新 API 持久化,核对事务边界及所需幂等性;
|
|
80
|
+
`set` 本身不代表关联对象已保存。
|
|
81
|
+
- 副作用保持在需求范围内,余额校验不隐含扣减或退款。附近测试/代码用于参考工程约定,
|
|
82
|
+
原始需求和 `coreLogic` 决定业务行为。
|
|
83
|
+
- 对存在边界情况的时段、金额或状态规则,将判定写成可脱离平台对象检查的普通 Java 代码;
|
|
84
|
+
元数据读取、事件绑定和持久化留在轻量的苍穹适配层。简单校验无需机械拆类。
|
|
85
|
+
测试时检查实际生产规则,不要为了脱离平台运行而把规则复制到测试专用类。
|
|
86
|
+
返回真实命令与结果,未执行时如实标记未运行。本地规则测试不能证明平台事件绑定或运行态业务覆盖。
|
|
87
|
+
- 按所选生命周期处理空值、异常和 `super`。标识符用英文,注释和用户可见文本跟随回复语言。
|
|
88
|
+
|
|
89
|
+
检查修改源码中的重复签名、导入/可见性、字段访问、空值和集合边界、吞异常及已提供约束,
|
|
90
|
+
在任务范围内修复。
|
|
91
|
+
将每项所需行为对应到源码方法/条件及可观察结果;对照原始 AC 索引和可用操作,明确返回冻结键
|
|
92
|
+
之外的未实现行为、缺少操作或依赖。常量或状态标签本身不代表实现了流转及关联副作用。
|
|
93
|
+
未经验证的修复原因保留为假设;
|
|
94
|
+
编译通过不能证明 SDK 查询行为正确或业务缺陷已经修复。
|
|
95
|
+
|
|
96
|
+
## 编译并继续交付
|
|
97
|
+
|
|
98
|
+
按 [compile-guide.md](../../references/compile-guide.md) 执行原生编译/归档边界。
|
|
99
|
+
该命令同时推进源码门禁,不单独写归档或标记 `source_ready`。
|
|
100
|
+
实施者随后继续 [java-plugin-delivery.md](../../references/java-plugin-delivery.md) 完成注册与交付;
|
|
101
|
+
达到 `source_ready` 不代表用户整体请求结束。
|
|
102
|
+
|
|
103
|
+
报告原生结果中的真实源码身份、编译/归档结果、`compileSkipped` 和未验证项。
|
|
104
|
+
源码及编译/归档写入保持在已验证项目和应用路径内。
|
|
@@ -26,7 +26,7 @@ action-catalog record) is Chinese-free.
|
|
|
26
26
|
| `references/examples/plugins/` | Plugin `templates/`, `community/`, and the source-language scenario-example directory (event/scenario-split real examples) |
|
|
27
27
|
| `references/docs/` | Custom-development runtime guides and pitfall docs |
|
|
28
28
|
| `references/typescript/` | `tsconfig.json` + `package.json` reference for a full `tsc --noEmit` setup |
|
|
29
|
-
| `references/sdk/` | **Retrieval layer only**: `README.md`, `strategy.md`, `docs/`, `templates/`, the small `indexes/` entry points
|
|
29
|
+
| `references/sdk/` | **Retrieval layer only**: `README.md`, `strategy.md`, `docs/`, `templates/`, and the small `indexes/` entry points |
|
|
30
30
|
|
|
31
31
|
## What was intentionally NOT ported
|
|
32
32
|
|
|
@@ -1,5 +1,9 @@
|
|
|
1
1
|
# Cosmic Coding Script
|
|
2
2
|
|
|
3
|
+
KWC 工程的 Controller(`app/ks/controller/*.ts`)使用
|
|
4
|
+
[KWC Controller 编写入口](references/kwc-controller-authoring.md),完成后返回 KWC。
|
|
5
|
+
该入口复用目标环境 SDK 检索和本地源码检查,不执行下方的插件注册流程。
|
|
6
|
+
|
|
3
7
|
根据调用方提供的已验证编码上下文,编写可注册的 KingScript 插件或脚本控制器,用本地
|
|
4
8
|
KingScript 门禁验证,并返回已验证源码。本技能是 `cosmic-coding-impl`(Java)的 KingScript
|
|
5
9
|
姊妹技能。应用、表单、目标类型、字段标识与脚本身份均已绑定;禁止从会话、留档或完整
|
|
@@ -16,6 +20,8 @@ false、脚本记录不可修改也不可删除,`registerPlugin` 对坏源码
|
|
|
16
20
|
- `{ROOT_DIR}` 为 app-build 根目录;`{python}` 为 Python 解释器。
|
|
17
21
|
- 技能知识根:`{KS_ROOT}` = `{ROOT_DIR}/skills/cosmic-coding-script`。
|
|
18
22
|
- 本地门禁:`{ROOT_DIR}/scripts/kingscript_source_gate.py`。
|
|
23
|
+
- 环境 SDK 同步:`{ROOT_DIR}/scripts/kingscript_sdk_sync.py`;其构建的缓存位于
|
|
24
|
+
`~/.kd/kingscript-sdk/<envName>/`。
|
|
19
25
|
|
|
20
26
|
下方所有知识路径均为加载时解析的 inline-code 引用;每个只读一次,当前层足够时绝不预加载
|
|
21
27
|
更高层。
|
|
@@ -61,8 +67,9 @@ false、脚本记录不可修改也不可删除,`registerPlugin` 对坏源码
|
|
|
61
67
|
字符数,达到上限即停止。绝不预加载整棵树、全部模板或全部示例。
|
|
62
68
|
|
|
63
69
|
- **Tier 0(始终加载)**:`{KS_ROOT}/references/examples/kingscript/README.md`(语法、命名、
|
|
64
|
-
保留关键字、模块/引用规则)+ `{KS_ROOT}/references/sdk/indexes/quick-lookup.md
|
|
65
|
-
SDK
|
|
70
|
+
保留关键字、模块/引用规则)+ `{KS_ROOT}/references/sdk/indexes/quick-lookup.md`(场景路由
|
|
71
|
+
到候选类;SDK 事实来自环境缓存,而非此处)+
|
|
72
|
+
`{KS_ROOT}/references/examples/plugins/templates/` 下最匹配的 1 个模板。
|
|
66
73
|
- **Tier 1(Medium+)**:`{KS_ROOT}/references/examples/plugins/community/` 下最贴近的 1 个社区
|
|
67
74
|
示例 + 事件签名索引 `{KS_ROOT}/references/sdk/indexes/methods-lifecycle.md` 或
|
|
68
75
|
`methods-hot.md` + `plugin-index.md` / `scenario-index.md` / `keyword-index.md` 之一。
|
|
@@ -77,25 +84,47 @@ grep-only 规则:绝不 `read_file` 任何大于 100KB 的文件;`indexes/`
|
|
|
77
84
|
`rg -n`(或 `rg --files`)在 `{KS_ROOT}` 上检索。
|
|
78
85
|
|
|
79
86
|
**可选外部 SDK 知识盘(不随仓库分发)。** 完整类卡层(`references/sdk/classes/`、`packages/`、
|
|
80
|
-
`indexes/class-index*.md`、`enum-index.md
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
87
|
+
`indexes/class-index*.md`、`enum-index.md`)**刻意不在**本仓库内,且在存在性事实上
|
|
88
|
+
已被下方环境 SDK 缓存——运行中平台自己的声明集——取代。把外部挂载的离线 SDK 资料包
|
|
89
|
+
(strategy.md 第 4 层)仅当作编辑性知识(用法说明、真实示例)的补充,且仅当维护者已在本地挂载
|
|
90
|
+
时;它绝不是存在性事实的来源。当它缺失时,下方检索链不依赖它也完整。只读了索引时,绝不声称
|
|
91
|
+
读了类卡。
|
|
92
|
+
|
|
93
|
+
## SDK 事实来源:目标环境,而非随仓快照
|
|
94
|
+
|
|
95
|
+
SDK 开放面依赖苍穹版本:随仓的 `{KS_ROOT}/references/sdk/` 树只是构建期快照,两个方向的漂移都
|
|
96
|
+
真实存在——旧环境缺少快照列出的类型,新环境暴露快照从未有过的模块(`@constellation/*` 业务
|
|
97
|
+
套件)。做任何 import 实证之前,先与运行中的平台对齐:
|
|
98
|
+
|
|
99
|
+
```text
|
|
100
|
+
{python} "{ROOT_DIR}/scripts/kingscript_sdk_sync.py" ensure
|
|
101
|
+
```
|
|
102
|
+
|
|
103
|
+
- `ready` / `synced`:动态层是 SDK 存在性、包与签名的唯一事实来源。
|
|
104
|
+
- `failed`(离线,或平台无 poll API):降级为只用随仓索引做路由,并在任务状态返回中携带
|
|
105
|
+
`"sdk": "snapshot-degraded"`——依快照解析出的 import 未经运行平台验证,必须如实报告。
|
|
106
|
+
|
|
107
|
+
缓存包含 `type-index.tsv`(`<类型>\t<模块>\t<包斜杠>\t<包点号>`,即 D4 三要素查询)与 `dts/`
|
|
108
|
+
(该环境实际的 `@cosmic/*` 声明:包级导出文件,加上携带方法签名、Javadoc 与 `@since` 标记的
|
|
109
|
+
模块根聚合声明)。使用 ensure 输出中的 `cacheDir` / `typeIndexPath` / `dtsDir` 值;绝不硬编码
|
|
110
|
+
环境名。
|
|
84
111
|
|
|
85
112
|
## D4 import 实证门控(写入任何 import 前)
|
|
86
113
|
|
|
87
114
|
只读一次 `{KS_ROOT}/rule/p0-group-d-imports.md`。每个非基础类型的 import(类、接口、事件参数、
|
|
88
115
|
枚举)在写入前必须实证到三要素:**类型全名 + 所属模块 + 包路径**。
|
|
89
116
|
|
|
90
|
-
|
|
117
|
+
检索链(动态优先):
|
|
91
118
|
|
|
92
|
-
1. `
|
|
93
|
-
2. `
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
119
|
+
1. `rg -F "<TypeName>" <typeIndexPath>`——来自环境缓存的直接三要素证明。
|
|
120
|
+
2. 方法/签名证明:在 `<dtsDir>` 下 `rg` 方法名,读取命中的包级导出文件,以及声明
|
|
121
|
+
`interface <Type>$ { ... }` 的模块根聚合。聚合还暴露继承链
|
|
122
|
+
(`type X_T = X$ & Parent ...`),因此“该方法属于该变量的类型还是其继承链”可以本地解答。
|
|
123
|
+
3. 随仓索引(`quick-lookup.md`、`methods-lifecycle.md` / `methods-hot.md`、
|
|
124
|
+
`plugin-index.md` / `scenario-index.md` / `keyword-index.md`)**仅作路由辅助**:它们把场景
|
|
125
|
+
与事件名映射到候选类型,但每个候选在写入 import 前仍须在第 1–2 步实证。
|
|
126
|
+
4. 在线 Javadoc(`https://dev.kingdee.com/sdk/Cosmic%20V8.0.1/index.html`)。
|
|
127
|
+
5. 有界回答。
|
|
99
128
|
|
|
100
129
|
快速失败:最多 3 次 grep 尝试。若三要素仍未解析,在源码中把该 import 标注为
|
|
101
130
|
`// [D4-PENDING] <类型> — <原因>`,在返回中报告它,并给出保守降级方案。绝不按命名模式臆测
|
|
@@ -211,4 +240,6 @@ List/Operation → `p0-group-a-syntax.md`(A1,A3,A4)+ `p0-group-d-imports.md`
|
|
|
211
240
|
- 按命名模式臆测 import 路径或 API、写 TODO/占位代码,或编造 SDK 类型、事件、上下文结构。
|
|
212
241
|
- 绕过门禁(`@ts-ignore`、`as any`、事件参数 `any`、`--skip-syntax`),或把降级/失败的证明报告
|
|
213
242
|
为已编译或通过。
|
|
243
|
+
- 在环境缓存可用时把随仓 SDK 索引当作存在性证明,或把 snapshot-degraded 的运行报告为完全
|
|
244
|
+
验证。
|
|
214
245
|
- 删除任何脚本记录,或在 `sourceArchiveRoot` 之外写入。
|
package/skills/cosmic-build/skills/cosmic-coding-script/references/kwc-controller-authoring.md
ADDED
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
# KWC Controller 编写入口
|
|
2
|
+
|
|
3
|
+
请读取唯一维护的 [KWC Controller authoring](../../../../../skills/cosmic-coding-script/references/kwc-controller-authoring.md)。
|
|
4
|
+
沿该文件所在位置解析 `{ROOT_DIR}`,复用其 SDK 同步和源码检查命令。
|
|
5
|
+
自然语言仍使用用户当前语言;KWC 保留 `.kws`、adapterApi、部署和最终验收职责。
|
|
6
|
+
本入口不引入 Java 插件、`createScript`、`registerPlugin` 或独立子 Agent。
|
|
@@ -2,6 +2,21 @@
|
|
|
2
2
|
|
|
3
3
|
这个目录不是原始 `node_modules` 的镜像,而是面向大模型检索和二开使用的 SDK 知识层。
|
|
4
4
|
|
|
5
|
+
## 事实来源:目标环境动态 SDK(权威)
|
|
6
|
+
|
|
7
|
+
SDK 面随苍穹版本变化:旧环境缺少本目录列出的类型,新环境多出本目录没有的模块(如
|
|
8
|
+
`@constellation/*` 业务套件)。**SDK 存在性、包归属、方法签名的事实判定一律以目标环境为准**:
|
|
9
|
+
|
|
10
|
+
```bash
|
|
11
|
+
# 拉取/校验目标环境的真实 @cosmic/* 声明(缓存 7 天)
|
|
12
|
+
python3 app-build/scripts/kingscript_sdk_sync.py ensure
|
|
13
|
+
# 三要素直查(类型 → 模块 → 包路径)
|
|
14
|
+
python3 app-build/scripts/kingscript_sdk_sync.py lookup --type AbstractFormPlugin
|
|
15
|
+
```
|
|
16
|
+
|
|
17
|
+
缓存位于 `~/.kd/kingscript-sdk/<envName>/`:`type-index.tsv`(三要素索引)+ `dts/`(真实声明树)。
|
|
18
|
+
本目录的索引仅作场景路由与离线回退,不作为存在性证据。
|
|
19
|
+
|
|
5
20
|
## 建设目标
|
|
6
21
|
|
|
7
22
|
- 让模型先找到正确的模块、包、类或场景,再读取细节
|
|
@@ -42,7 +57,7 @@
|
|
|
42
57
|
|
|
43
58
|
### 已知类名
|
|
44
59
|
|
|
45
|
-
|
|
60
|
+
先用环境缓存直查(`kingscript_sdk_sync.py lookup --type <类名>`),再按需打开外部知识盘类卡。
|
|
46
61
|
|
|
47
62
|
### 已知业务场景
|
|
48
63
|
|
|
@@ -70,14 +85,13 @@
|
|
|
70
85
|
|
|
71
86
|
## 全量 SDK 检索降级链路
|
|
72
87
|
|
|
73
|
-
|
|
88
|
+
当知识卡不足以回答问题时,必须按下面的顺序继续查找(第 -1 层为事实权威,详见 `strategy.md`):
|
|
74
89
|
|
|
75
|
-
1. `
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
6. 如果仍不确定,明确说明假设和缺口
|
|
90
|
+
-1. 环境动态层:`~/.kd/kingscript-sdk/<envName>/`(`type-index.tsv` + `dts/`,事实权威)
|
|
91
|
+
1. `indexes/`(路由辅助:场景/事件名 → 候选类型;候选仍须回 -1 层实证)
|
|
92
|
+
2. 外部知识盘类卡与本地 `.d.ts` 源文件(仅在维护者已挂载时)
|
|
93
|
+
3. 在线 Javadoc
|
|
94
|
+
4. 如果仍不确定,明确说明假设和缺口
|
|
81
95
|
|
|
82
96
|
当前外部兜底来源:
|
|
83
97
|
|
|
@@ -89,20 +103,15 @@
|
|
|
89
103
|
```text
|
|
90
104
|
sdk/
|
|
91
105
|
├─ README.md
|
|
92
|
-
├─ strategy.md —
|
|
106
|
+
├─ strategy.md — 分层 SDK 检索策略
|
|
93
107
|
├─ docs/ — 桥接文档和 SDK 概览
|
|
94
|
-
├─ indexes/ —
|
|
95
|
-
|
|
96
|
-
├─ packages/ — kd.* 包概述卡片
|
|
97
|
-
└─ manifests/ — JSON 元数据(packages.json, modules.json)
|
|
108
|
+
├─ indexes/ — 10 个 Markdown 索引(路由辅助,grep 目标)
|
|
109
|
+
└─ templates/ — SDK 文档生成模板
|
|
98
110
|
|
|
99
111
|
../examples/plugins/templates/ — 插件模板(SDK 方法速查由生成器自动注入)
|
|
100
112
|
```
|
|
101
113
|
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
- 模块清单(`modules.json`)
|
|
105
|
-
- kd.* 包清单(`packages.json`)
|
|
114
|
+
`classes/`、`packages/`、`class-index*.md`、`enum-index.md` 等大类卡资产刻意不随仓库分发(外部知识盘产物);SDK 存在性事实一律以环境动态缓存为准。
|
|
106
115
|
|
|
107
116
|
## 建设原则
|
|
108
117
|
|
|
@@ -146,14 +155,15 @@ sdk/
|
|
|
146
155
|
|
|
147
156
|
## 注意事项
|
|
148
157
|
|
|
149
|
-
-
|
|
150
|
-
- 面向模型阅读的知识卡统一放在 `classes/`、`packages/`
|
|
158
|
+
- 面向模型阅读的知识卡统一放在 `classes/`、`packages/`(外部知识盘,不随仓库分发)
|
|
151
159
|
- 插件模板统一放在 `../examples/plugins/templates/`(SDK 方法速查由生成器自动注入)
|
|
152
160
|
- 全量检索规则统一写在 `strategy.md`
|
|
153
161
|
- 没有真实来源时,不要伪造任何 SDK 类、方法、参数或返回值
|
|
154
162
|
|
|
155
163
|
## 本轮新增的高频入口
|
|
156
164
|
|
|
165
|
+
> 下列 `classes/*.md` 类卡为生成器/外部知识盘产物,不随仓库分发;仓库内请以环境缓存 `lookup --type` 实证同名类型。
|
|
166
|
+
|
|
157
167
|
- Java 与 Kingscript 类型桥接: `docs/java-kingscript-bridge.md`
|
|
158
168
|
- 数据操作: `classes/DynamicObject.md`、`classes/DynamicObjectCollection.md`
|
|
159
169
|
- 操作结果与校验: `classes/OperationResult.md`、`classes/ValidationErrorInfo.md`、`classes/ValidateResult.md`、`classes/ErrorLevel.md`
|
|
@@ -75,12 +75,11 @@ HTTP / 缓存 / 编码工具类
|
|
|
75
75
|
|
|
76
76
|
```
|
|
77
77
|
references/sdk/
|
|
78
|
-
manifests/ — 结构化 JSON 元数据
|
|
79
78
|
indexes/ — Markdown 索引
|
|
80
|
-
classes/ —
|
|
81
|
-
packages/ —
|
|
79
|
+
classes/ — 类知识卡片(外部知识盘,不随仓库分发)
|
|
80
|
+
packages/ — 包概述卡片(外部知识盘,不随仓库分发)
|
|
82
81
|
docs/ — 桥接文档和 SDK 概览
|
|
83
|
-
strategy.md —
|
|
82
|
+
strategy.md — 分层 SDK 检索策略
|
|
84
83
|
|
|
85
84
|
references/templates/
|
|
86
85
|
*.md — 插件模板(SDK 方法速查由生成器自动注入)
|
|
@@ -6,6 +6,13 @@ These files are 700KB+. ALWAYS use grep/rg to search them by exact class name or
|
|
|
6
6
|
If grep returns no results, try alternative keywords (English/Chinese) before escalating to next layer.
|
|
7
7
|
MAX 3 grep attempts per SDK type lookup. If still not found → use Layer 7 (bounded answer with assumptions).
|
|
8
8
|
Files in references/sdk/indexes/ are grep-only. Never read_file on index files > 100KB.
|
|
9
|
+
|
|
10
|
+
SDK existence facts are version-dependent. When the environment cache
|
|
11
|
+
(`~/.kd/kingscript-sdk/<envName>/`, built by `app-build/scripts/kingscript_sdk_sync.py`)
|
|
12
|
+
is available, `type-index.tsv` and `dts/` are the ONLY factual source;
|
|
13
|
+
the shipped indexes below are routing aids and offline fallback. Resolve
|
|
14
|
+
type → package → module from `type-index.tsv` first, prove signatures in
|
|
15
|
+
`dts/`, then use the shipped indexes only to find candidates.
|
|
9
16
|
<!-- @/rule -->
|
|
10
17
|
|
|
11
18
|
本文件用于定义 Kingscript skill 的全量 SDK 检索降级链路。
|
|
@@ -13,8 +20,7 @@ Files in references/sdk/indexes/ are grep-only. Never read_file on index files >
|
|
|
13
20
|
## 大文件警告
|
|
14
21
|
|
|
15
22
|
- `references/sdk/indexes/class-index-full.md` 为完整类型列表,仅供 grep 检索,不建议全文加载。
|
|
16
|
-
- `
|
|
17
|
-
- 处理 SDK 问题时,先走 `quick-lookup.md` → `classes/` → `indexes/`,只有在索引不足时再按需读取清单文件。
|
|
23
|
+
- 处理 SDK 问题时,先走 `quick-lookup.md` → `classes/` → `indexes/`,索引不足时直接降级外部知识盘。
|
|
18
24
|
|
|
19
25
|
## 目标
|
|
20
26
|
|
|
@@ -25,6 +31,19 @@ Files in references/sdk/indexes/ are grep-only. Never read_file on index files >
|
|
|
25
31
|
|
|
26
32
|
## 标准降级链路
|
|
27
33
|
|
|
34
|
+
### 第 -1 层:环境动态层(事实权威)
|
|
35
|
+
|
|
36
|
+
优先读取(缓存可用时必经):
|
|
37
|
+
|
|
38
|
+
- `~/.kd/kingscript-sdk/<envName>/type-index.tsv`(类型 → 模块 → 包路径三要素直查)
|
|
39
|
+
- `~/.kd/kingscript-sdk/<envName>/dts/`(目标环境真实的 `@cosmic/*` 声明:包级导出 + 模块根聚合,含方法签名与 `@since`)
|
|
40
|
+
|
|
41
|
+
适用场景:
|
|
42
|
+
|
|
43
|
+
- SDK 存在性、包归属、导入路径、方法签名的**事实判定**——苍穹版本不同,SDK 面不同,仓库快照只能作路由与离线回退
|
|
44
|
+
- 缓存缺失或过期时先跑 `app-build/scripts/kingscript_sdk_sync.py ensure`
|
|
45
|
+
- 缓存不可用(离线/老平台):回退第 0 层以下,并在结果中声明 snapshot-degraded
|
|
46
|
+
|
|
28
47
|
### 第 0 层:快速路由层(新增)
|
|
29
48
|
|
|
30
49
|
优先读取:
|
|
@@ -72,25 +91,15 @@ Files in references/sdk/indexes/ are grep-only. Never read_file on index files >
|
|
|
72
91
|
- 用户说法与 SDK 正式名称不一致
|
|
73
92
|
- 还没有对应知识卡
|
|
74
93
|
|
|
75
|
-
### 第 3
|
|
76
|
-
|
|
77
|
-
如果索引不足以回答细节,再读取结构化清单:
|
|
78
|
-
|
|
79
|
-
- `references/sdk/manifests/summary.json`
|
|
80
|
-
- `references/sdk/manifests/modules.json`
|
|
81
|
-
- `references/sdk/manifests/packages.json`
|
|
82
|
-
- `references/sdk/manifests/const-exports.json`
|
|
83
|
-
- `references/sdk/manifests/namespaces.json`
|
|
84
|
-
|
|
85
|
-
适用场景:
|
|
94
|
+
### 第 3 层:清单层(已移除)
|
|
86
95
|
|
|
87
|
-
-
|
|
88
|
-
-
|
|
89
|
-
|
|
96
|
+
原 `manifests/*.json` 结构化清单已随环境动态层(第 -1 层)的引入而移除:SDK 存在性、
|
|
97
|
+
导出名、namespace、模块归属的事实判定一律走环境缓存 `type-index.tsv`。索引(第 2 层)
|
|
98
|
+
未命中候选时直接降级第 4 层;缓存不可用(离线/老平台)时声明 snapshot-degraded。
|
|
90
99
|
|
|
91
100
|
### 第 4 层:外部挂载知识盘(可选扩展层)
|
|
92
101
|
|
|
93
|
-
|
|
102
|
+
如果仓库内知识卡和索引仍不足以回答问题,而维护者本地额外挂载了 SDK 文档包或反编译知识库,可以按需进入外部知识盘。
|
|
94
103
|
|
|
95
104
|
推荐入口:
|
|
96
105
|
|
|
@@ -172,10 +181,10 @@ Files in references/sdk/indexes/ are grep-only. Never read_file on index files >
|
|
|
172
181
|
|
|
173
182
|
- 当前命中的类或方法
|
|
174
183
|
- 来源层级
|
|
184
|
+
- 环境动态
|
|
175
185
|
- 快速路由
|
|
176
186
|
- 知识卡
|
|
177
187
|
- 索引
|
|
178
|
-
- 清单
|
|
179
188
|
- 本地声明
|
|
180
189
|
- 在线 Javadoc
|
|
181
190
|
- 已确认事实
|