@bovinphang/craft-common 1.0.1 → 2.0.0
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/CHANGELOG.md +39 -0
- package/CHANGELOG.zh-CN.md +39 -0
- package/README.md +17 -3
- package/dist/content/applicability.d.ts +17 -0
- package/dist/content/catalog.d.ts +1 -1
- package/dist/content/snapshot.d.ts +32 -0
- package/dist/index.d.ts +18 -0
- package/dist/index.js +10873 -208
- package/dist/install/file-transition.d.ts +10 -0
- package/dist/install/product/lifecycle.d.ts +17 -0
- package/dist/install/product/locks.d.ts +2 -0
- package/dist/install/product/ownership.d.ts +3 -0
- package/dist/install/product/paths.d.ts +17 -0
- package/dist/install/product/runtime-descriptors.d.ts +109 -0
- package/dist/install/product/session.d.ts +31 -0
- package/dist/install/product/shared-config/hash.d.ts +9 -0
- package/dist/install/product/shared-config/index.d.ts +16 -0
- package/dist/install/product/shared-config/json.d.ts +11 -0
- package/dist/install/product/shared-config/text.d.ts +5 -0
- package/dist/install/product/shared-config/toml.d.ts +7 -0
- package/dist/install/product/shared-config/types.d.ts +21 -0
- package/dist/install/product/transaction.d.ts +10 -0
- package/dist/install/product/types.d.ts +65 -0
- package/dist/project/discover.d.ts +2 -0
- package/dist/project/evidence.d.ts +37 -0
- package/dist/project/frameworks.d.ts +5 -0
- package/dist/project/recommend.d.ts +17 -0
- package/dist/project/types.d.ts +42 -0
- package/docs/consuming-common.md +65 -6
- package/docs/releases/2.0.0.md +58 -0
- package/localized/zh-CN/methods/engineering-practices.md +237 -0
- package/localized/zh-CN/methods/engineering-practices.rules.json +121 -0
- package/localized/zh-CN/methods/engineering-practices.sources.json +377 -0
- package/localized/zh-CN/skills/cc-c-project-standard/SKILL.md +25 -0
- package/localized/zh-CN/skills/cc-c-project-standard/examples/engineering/README.md +7 -0
- package/localized/zh-CN/skills/cc-c-project-standard/examples/engineering/boundary.c +26 -0
- package/localized/zh-CN/skills/cc-c-project-standard/examples/engineering/boundary.h +15 -0
- package/localized/zh-CN/skills/cc-c-project-standard/examples/engineering/boundary_test.c +73 -0
- package/localized/zh-CN/skills/cc-c-project-standard/references/common/engineering-practices.md +237 -0
- package/localized/zh-CN/skills/cc-c-project-standard/references/common/engineering-practices.rules.json +121 -0
- package/localized/zh-CN/skills/cc-c-project-standard/references/common/engineering-practices.sources.json +377 -0
- package/localized/zh-CN/skills/cc-c-project-standard/references/engineering-practices.md +106 -0
- package/localized/zh-CN/skills/cc-c-project-standard/references/practice.md +37 -0
- package/localized/zh-CN/skills/cc-cpp-project-standard/SKILL.md +25 -0
- package/localized/zh-CN/skills/cc-cpp-project-standard/examples/engineering/README.md +7 -0
- package/localized/zh-CN/skills/cc-cpp-project-standard/examples/engineering/boundary.cpp +26 -0
- package/localized/zh-CN/skills/cc-cpp-project-standard/examples/engineering/boundary.hpp +12 -0
- package/localized/zh-CN/skills/cc-cpp-project-standard/examples/engineering/boundary_test.cpp +38 -0
- package/localized/zh-CN/skills/cc-cpp-project-standard/references/common/engineering-practices.md +237 -0
- package/localized/zh-CN/skills/cc-cpp-project-standard/references/common/engineering-practices.rules.json +121 -0
- package/localized/zh-CN/skills/cc-cpp-project-standard/references/common/engineering-practices.sources.json +377 -0
- package/localized/zh-CN/skills/cc-cpp-project-standard/references/engineering-practices.md +106 -0
- package/localized/zh-CN/skills/cc-cpp-project-standard/references/practice.md +37 -0
- package/localized/zh-CN/skills/cc-electron-project-standard/SKILL.md +21 -0
- package/localized/zh-CN/skills/cc-electron-project-standard/examples/engineering/README.md +7 -0
- package/localized/zh-CN/skills/cc-electron-project-standard/examples/engineering/ipc-lifecycle.cjs +44 -0
- package/localized/zh-CN/skills/cc-electron-project-standard/examples/engineering/ipc-lifecycle.test.cjs +44 -0
- package/localized/zh-CN/skills/cc-electron-project-standard/examples/engineering/package.json +8 -0
- package/localized/zh-CN/skills/cc-electron-project-standard/examples/minimal/README.md +9 -0
- package/localized/zh-CN/skills/cc-electron-project-standard/examples/minimal/boundary.cjs +19 -0
- package/localized/zh-CN/skills/cc-electron-project-standard/examples/minimal/boundary.test.cjs +7 -0
- package/localized/zh-CN/skills/cc-electron-project-standard/examples/minimal/index.html +1 -0
- package/localized/zh-CN/skills/cc-electron-project-standard/examples/minimal/main.cjs +20 -0
- package/localized/zh-CN/skills/cc-electron-project-standard/examples/minimal/package.json +9 -0
- package/localized/zh-CN/skills/cc-electron-project-standard/examples/minimal/preload.cjs +2 -0
- package/localized/zh-CN/skills/cc-electron-project-standard/examples/minimal/renderer.js +4 -0
- package/localized/zh-CN/skills/cc-electron-project-standard/references/common/engineering-practices.md +237 -0
- package/localized/zh-CN/skills/cc-electron-project-standard/references/common/engineering-practices.rules.json +121 -0
- package/localized/zh-CN/skills/cc-electron-project-standard/references/common/engineering-practices.sources.json +377 -0
- package/localized/zh-CN/skills/cc-electron-project-standard/references/engineering-practices.md +73 -0
- package/localized/zh-CN/skills/cc-electron-project-standard/references/practice.md +19 -0
- package/localized/zh-CN/skills/cc-electron-project-standard/references/verification.md +17 -0
- package/localized/zh-CN/skills/cc-go-concurrency/SKILL.md +25 -0
- package/localized/zh-CN/skills/cc-go-concurrency/references/common/engineering-practices.md +237 -0
- package/localized/zh-CN/skills/cc-go-concurrency/references/common/engineering-practices.rules.json +121 -0
- package/localized/zh-CN/skills/cc-go-concurrency/references/common/engineering-practices.sources.json +377 -0
- package/localized/zh-CN/skills/cc-go-concurrency/references/engineering-practices.md +73 -0
- package/localized/zh-CN/skills/cc-go-concurrency/references/practice.md +37 -0
- package/localized/zh-CN/skills/cc-go-project-standard/SKILL.md +25 -0
- package/localized/zh-CN/skills/cc-go-project-standard/examples/engineering/README.md +7 -0
- package/localized/zh-CN/skills/cc-go-project-standard/examples/engineering/go.mod +3 -0
- package/localized/zh-CN/skills/cc-go-project-standard/examples/engineering/lifecycle.go +71 -0
- package/localized/zh-CN/skills/cc-go-project-standard/examples/engineering/lifecycle_test.go +22 -0
- package/localized/zh-CN/skills/cc-go-project-standard/references/common/engineering-practices.md +237 -0
- package/localized/zh-CN/skills/cc-go-project-standard/references/common/engineering-practices.rules.json +121 -0
- package/localized/zh-CN/skills/cc-go-project-standard/references/common/engineering-practices.sources.json +377 -0
- package/localized/zh-CN/skills/cc-go-project-standard/references/engineering-practices.md +106 -0
- package/localized/zh-CN/skills/cc-go-project-standard/references/practice.md +37 -0
- package/localized/zh-CN/skills/cc-java-project-standard/SKILL.md +25 -0
- package/localized/zh-CN/skills/cc-java-project-standard/examples/engineering/README.md +5 -0
- package/localized/zh-CN/skills/cc-java-project-standard/examples/engineering/ResourceBoundary.java +26 -0
- package/localized/zh-CN/skills/cc-java-project-standard/examples/engineering/ResourceBoundaryTest.java +41 -0
- package/localized/zh-CN/skills/cc-java-project-standard/references/common/engineering-practices.md +237 -0
- package/localized/zh-CN/skills/cc-java-project-standard/references/common/engineering-practices.rules.json +121 -0
- package/localized/zh-CN/skills/cc-java-project-standard/references/common/engineering-practices.sources.json +377 -0
- package/localized/zh-CN/skills/cc-java-project-standard/references/engineering-practices.md +106 -0
- package/localized/zh-CN/skills/cc-java-project-standard/references/practice.md +37 -0
- package/localized/zh-CN/skills/cc-java-runtime/SKILL.md +25 -0
- package/localized/zh-CN/skills/cc-java-runtime/references/common/engineering-practices.md +237 -0
- package/localized/zh-CN/skills/cc-java-runtime/references/common/engineering-practices.rules.json +121 -0
- package/localized/zh-CN/skills/cc-java-runtime/references/common/engineering-practices.sources.json +377 -0
- package/localized/zh-CN/skills/cc-java-runtime/references/engineering-practices.md +73 -0
- package/localized/zh-CN/skills/cc-java-runtime/references/practice.md +37 -0
- package/localized/zh-CN/skills/cc-native-memory-safety/SKILL.md +25 -0
- package/localized/zh-CN/skills/cc-native-memory-safety/references/common/engineering-practices.md +237 -0
- package/localized/zh-CN/skills/cc-native-memory-safety/references/common/engineering-practices.rules.json +121 -0
- package/localized/zh-CN/skills/cc-native-memory-safety/references/common/engineering-practices.sources.json +377 -0
- package/localized/zh-CN/skills/cc-native-memory-safety/references/engineering-practices.md +73 -0
- package/localized/zh-CN/skills/cc-native-memory-safety/references/practice.md +37 -0
- package/localized/zh-CN/skills/cc-python-async/SKILL.md +25 -0
- package/localized/zh-CN/skills/cc-python-async/references/common/engineering-practices.md +237 -0
- package/localized/zh-CN/skills/cc-python-async/references/common/engineering-practices.rules.json +121 -0
- package/localized/zh-CN/skills/cc-python-async/references/common/engineering-practices.sources.json +377 -0
- package/localized/zh-CN/skills/cc-python-async/references/engineering-practices.md +73 -0
- package/localized/zh-CN/skills/cc-python-async/references/practice.md +37 -0
- package/localized/zh-CN/skills/cc-python-project-standard/SKILL.md +25 -0
- package/localized/zh-CN/skills/cc-python-project-standard/examples/engineering/README.md +7 -0
- package/localized/zh-CN/skills/cc-python-project-standard/examples/engineering/resource_boundary.py +37 -0
- package/localized/zh-CN/skills/cc-python-project-standard/examples/engineering/test_resource_boundary.py +49 -0
- package/localized/zh-CN/skills/cc-python-project-standard/references/common/engineering-practices.md +237 -0
- package/localized/zh-CN/skills/cc-python-project-standard/references/common/engineering-practices.rules.json +121 -0
- package/localized/zh-CN/skills/cc-python-project-standard/references/common/engineering-practices.sources.json +377 -0
- package/localized/zh-CN/skills/cc-python-project-standard/references/engineering-practices.md +106 -0
- package/localized/zh-CN/skills/cc-python-project-standard/references/practice.md +37 -0
- package/localized/zh-CN/skills/cc-rust-async/SKILL.md +25 -0
- package/localized/zh-CN/skills/cc-rust-async/references/common/engineering-practices.md +237 -0
- package/localized/zh-CN/skills/cc-rust-async/references/common/engineering-practices.rules.json +121 -0
- package/localized/zh-CN/skills/cc-rust-async/references/common/engineering-practices.sources.json +377 -0
- package/localized/zh-CN/skills/cc-rust-async/references/engineering-practices.md +73 -0
- package/localized/zh-CN/skills/cc-rust-async/references/practice.md +37 -0
- package/localized/zh-CN/skills/cc-rust-project-standard/SKILL.md +25 -0
- package/localized/zh-CN/skills/cc-rust-project-standard/examples/engineering/Cargo.lock +7 -0
- package/localized/zh-CN/skills/cc-rust-project-standard/examples/engineering/Cargo.toml +8 -0
- package/localized/zh-CN/skills/cc-rust-project-standard/examples/engineering/README.md +5 -0
- package/localized/zh-CN/skills/cc-rust-project-standard/examples/engineering/src/lib.rs +43 -0
- package/localized/zh-CN/skills/cc-rust-project-standard/references/common/engineering-practices.md +237 -0
- package/localized/zh-CN/skills/cc-rust-project-standard/references/common/engineering-practices.rules.json +121 -0
- package/localized/zh-CN/skills/cc-rust-project-standard/references/common/engineering-practices.sources.json +377 -0
- package/localized/zh-CN/skills/cc-rust-project-standard/references/engineering-practices.md +106 -0
- package/localized/zh-CN/skills/cc-rust-project-standard/references/practice.md +37 -0
- package/localized/zh-CN/skills/cc-tauri-project-standard/SKILL.md +21 -0
- package/localized/zh-CN/skills/cc-tauri-project-standard/examples/minimal/README.md +9 -0
- package/localized/zh-CN/skills/cc-tauri-project-standard/examples/minimal/core/Cargo.lock +5 -0
- package/localized/zh-CN/skills/cc-tauri-project-standard/examples/minimal/core/Cargo.toml +9 -0
- package/localized/zh-CN/skills/cc-tauri-project-standard/examples/minimal/core/src/lib.rs +46 -0
- package/localized/zh-CN/skills/cc-tauri-project-standard/examples/minimal/src-tauri/Cargo.toml +12 -0
- package/localized/zh-CN/skills/cc-tauri-project-standard/examples/minimal/src-tauri/build.rs +5 -0
- package/localized/zh-CN/skills/cc-tauri-project-standard/examples/minimal/src-tauri/capabilities/main.json +6 -0
- package/localized/zh-CN/skills/cc-tauri-project-standard/examples/minimal/src-tauri/permissions/documents.toml +4 -0
- package/localized/zh-CN/skills/cc-tauri-project-standard/examples/minimal/src-tauri/src/main.rs +22 -0
- package/localized/zh-CN/skills/cc-tauri-project-standard/examples/minimal/src-tauri/tauri.conf.json +13 -0
- package/localized/zh-CN/skills/cc-tauri-project-standard/examples/minimal/ui/app.js +5 -0
- package/localized/zh-CN/skills/cc-tauri-project-standard/examples/minimal/ui/index.html +1 -0
- package/localized/zh-CN/skills/cc-tauri-project-standard/references/common/engineering-practices.md +237 -0
- package/localized/zh-CN/skills/cc-tauri-project-standard/references/common/engineering-practices.rules.json +121 -0
- package/localized/zh-CN/skills/cc-tauri-project-standard/references/common/engineering-practices.sources.json +377 -0
- package/localized/zh-CN/skills/cc-tauri-project-standard/references/engineering-practices.md +73 -0
- package/localized/zh-CN/skills/cc-tauri-project-standard/references/practice.md +20 -0
- package/localized/zh-CN/skills/cc-tauri-project-standard/references/verification.md +18 -0
- package/localized/zh-CN/skills/cc-typescript-project-standard/SKILL.md +60 -0
- package/localized/zh-CN/skills/cc-typescript-project-standard/examples/engineering/README.md +7 -0
- package/localized/zh-CN/skills/cc-typescript-project-standard/examples/engineering/boundary.test.ts +16 -0
- package/localized/zh-CN/skills/cc-typescript-project-standard/examples/engineering/input.ts +12 -0
- package/localized/zh-CN/skills/cc-typescript-project-standard/examples/engineering/package.json +12 -0
- package/localized/zh-CN/skills/cc-typescript-project-standard/examples/engineering/pnpm-lock.yaml +39 -0
- package/localized/zh-CN/skills/cc-typescript-project-standard/examples/engineering/pnpm-workspace.yaml +1 -0
- package/localized/zh-CN/skills/cc-typescript-project-standard/examples/engineering/tsconfig.json +8 -0
- package/localized/zh-CN/skills/cc-typescript-project-standard/references/common/engineering-practices.md +237 -0
- package/localized/zh-CN/skills/cc-typescript-project-standard/references/common/engineering-practices.rules.json +121 -0
- package/localized/zh-CN/skills/cc-typescript-project-standard/references/common/engineering-practices.sources.json +377 -0
- package/localized/zh-CN/skills/cc-typescript-project-standard/references/engineering-practices.md +106 -0
- package/localized/zh-CN/skills/cc-typescript-project-standard/references/type-safety-patterns.md +73 -0
- package/localized/zh-CN/skills/cc-typescript-project-standard/references/type-safety.md +154 -0
- package/localized/zh-CN/skills/eval_queries.json +336 -0
- package/localized/zh-CN/skills/metadata.json +545 -7
- package/localized/zh-CN/skills/relations.json +143 -0
- package/methods/engineering-practices.md +237 -0
- package/methods/engineering-practices.rules.json +121 -0
- package/methods/engineering-practices.sources.json +377 -0
- package/package.json +10 -2
- package/skills/cc-c-project-standard/SKILL.md +25 -0
- package/skills/cc-c-project-standard/examples/engineering/README.md +7 -0
- package/skills/cc-c-project-standard/examples/engineering/boundary.c +26 -0
- package/skills/cc-c-project-standard/examples/engineering/boundary.h +15 -0
- package/skills/cc-c-project-standard/examples/engineering/boundary_test.c +73 -0
- package/skills/cc-c-project-standard/references/common/engineering-practices.md +237 -0
- package/skills/cc-c-project-standard/references/common/engineering-practices.rules.json +121 -0
- package/skills/cc-c-project-standard/references/common/engineering-practices.sources.json +377 -0
- package/skills/cc-c-project-standard/references/engineering-practices.md +106 -0
- package/skills/cc-c-project-standard/references/practice.md +37 -0
- package/skills/cc-cpp-project-standard/SKILL.md +25 -0
- package/skills/cc-cpp-project-standard/examples/engineering/README.md +7 -0
- package/skills/cc-cpp-project-standard/examples/engineering/boundary.cpp +26 -0
- package/skills/cc-cpp-project-standard/examples/engineering/boundary.hpp +12 -0
- package/skills/cc-cpp-project-standard/examples/engineering/boundary_test.cpp +38 -0
- package/skills/cc-cpp-project-standard/references/common/engineering-practices.md +237 -0
- package/skills/cc-cpp-project-standard/references/common/engineering-practices.rules.json +121 -0
- package/skills/cc-cpp-project-standard/references/common/engineering-practices.sources.json +377 -0
- package/skills/cc-cpp-project-standard/references/engineering-practices.md +106 -0
- package/skills/cc-cpp-project-standard/references/practice.md +37 -0
- package/skills/cc-electron-project-standard/SKILL.md +21 -0
- package/skills/cc-electron-project-standard/examples/engineering/README.md +7 -0
- package/skills/cc-electron-project-standard/examples/engineering/ipc-lifecycle.cjs +44 -0
- package/skills/cc-electron-project-standard/examples/engineering/ipc-lifecycle.test.cjs +44 -0
- package/skills/cc-electron-project-standard/examples/engineering/package.json +8 -0
- package/skills/cc-electron-project-standard/examples/minimal/README.md +9 -0
- package/skills/cc-electron-project-standard/examples/minimal/boundary.cjs +19 -0
- package/skills/cc-electron-project-standard/examples/minimal/boundary.test.cjs +7 -0
- package/skills/cc-electron-project-standard/examples/minimal/index.html +1 -0
- package/skills/cc-electron-project-standard/examples/minimal/main.cjs +20 -0
- package/skills/cc-electron-project-standard/examples/minimal/package.json +9 -0
- package/skills/cc-electron-project-standard/examples/minimal/preload.cjs +2 -0
- package/skills/cc-electron-project-standard/examples/minimal/renderer.js +4 -0
- package/skills/cc-electron-project-standard/references/common/engineering-practices.md +237 -0
- package/skills/cc-electron-project-standard/references/common/engineering-practices.rules.json +121 -0
- package/skills/cc-electron-project-standard/references/common/engineering-practices.sources.json +377 -0
- package/skills/cc-electron-project-standard/references/engineering-practices.md +73 -0
- package/skills/cc-electron-project-standard/references/practice.md +19 -0
- package/skills/cc-electron-project-standard/references/verification.md +17 -0
- package/skills/cc-go-concurrency/SKILL.md +25 -0
- package/skills/cc-go-concurrency/references/common/engineering-practices.md +237 -0
- package/skills/cc-go-concurrency/references/common/engineering-practices.rules.json +121 -0
- package/skills/cc-go-concurrency/references/common/engineering-practices.sources.json +377 -0
- package/skills/cc-go-concurrency/references/engineering-practices.md +73 -0
- package/skills/cc-go-concurrency/references/practice.md +37 -0
- package/skills/cc-go-project-standard/SKILL.md +25 -0
- package/skills/cc-go-project-standard/examples/engineering/README.md +7 -0
- package/skills/cc-go-project-standard/examples/engineering/go.mod +3 -0
- package/skills/cc-go-project-standard/examples/engineering/lifecycle.go +71 -0
- package/skills/cc-go-project-standard/examples/engineering/lifecycle_test.go +22 -0
- package/skills/cc-go-project-standard/references/common/engineering-practices.md +237 -0
- package/skills/cc-go-project-standard/references/common/engineering-practices.rules.json +121 -0
- package/skills/cc-go-project-standard/references/common/engineering-practices.sources.json +377 -0
- package/skills/cc-go-project-standard/references/engineering-practices.md +106 -0
- package/skills/cc-go-project-standard/references/practice.md +37 -0
- package/skills/cc-java-project-standard/SKILL.md +25 -0
- package/skills/cc-java-project-standard/examples/engineering/README.md +7 -0
- package/skills/cc-java-project-standard/examples/engineering/ResourceBoundary.java +26 -0
- package/skills/cc-java-project-standard/examples/engineering/ResourceBoundaryTest.java +41 -0
- package/skills/cc-java-project-standard/references/common/engineering-practices.md +237 -0
- package/skills/cc-java-project-standard/references/common/engineering-practices.rules.json +121 -0
- package/skills/cc-java-project-standard/references/common/engineering-practices.sources.json +377 -0
- package/skills/cc-java-project-standard/references/engineering-practices.md +106 -0
- package/skills/cc-java-project-standard/references/practice.md +35 -0
- package/skills/cc-java-runtime/SKILL.md +25 -0
- package/skills/cc-java-runtime/references/common/engineering-practices.md +237 -0
- package/skills/cc-java-runtime/references/common/engineering-practices.rules.json +121 -0
- package/skills/cc-java-runtime/references/common/engineering-practices.sources.json +377 -0
- package/skills/cc-java-runtime/references/engineering-practices.md +73 -0
- package/skills/cc-java-runtime/references/practice.md +37 -0
- package/skills/cc-native-memory-safety/SKILL.md +25 -0
- package/skills/cc-native-memory-safety/references/common/engineering-practices.md +237 -0
- package/skills/cc-native-memory-safety/references/common/engineering-practices.rules.json +121 -0
- package/skills/cc-native-memory-safety/references/common/engineering-practices.sources.json +377 -0
- package/skills/cc-native-memory-safety/references/engineering-practices.md +73 -0
- package/skills/cc-native-memory-safety/references/practice.md +37 -0
- package/skills/cc-python-async/SKILL.md +25 -0
- package/skills/cc-python-async/references/common/engineering-practices.md +237 -0
- package/skills/cc-python-async/references/common/engineering-practices.rules.json +121 -0
- package/skills/cc-python-async/references/common/engineering-practices.sources.json +377 -0
- package/skills/cc-python-async/references/engineering-practices.md +73 -0
- package/skills/cc-python-async/references/practice.md +37 -0
- package/skills/cc-python-project-standard/SKILL.md +25 -0
- package/skills/cc-python-project-standard/examples/engineering/README.md +7 -0
- package/skills/cc-python-project-standard/examples/engineering/resource_boundary.py +37 -0
- package/skills/cc-python-project-standard/examples/engineering/test_resource_boundary.py +49 -0
- package/skills/cc-python-project-standard/references/common/engineering-practices.md +237 -0
- package/skills/cc-python-project-standard/references/common/engineering-practices.rules.json +121 -0
- package/skills/cc-python-project-standard/references/common/engineering-practices.sources.json +377 -0
- package/skills/cc-python-project-standard/references/engineering-practices.md +106 -0
- package/skills/cc-python-project-standard/references/practice.md +37 -0
- package/skills/cc-rust-async/SKILL.md +25 -0
- package/skills/cc-rust-async/references/common/engineering-practices.md +237 -0
- package/skills/cc-rust-async/references/common/engineering-practices.rules.json +121 -0
- package/skills/cc-rust-async/references/common/engineering-practices.sources.json +377 -0
- package/skills/cc-rust-async/references/engineering-practices.md +73 -0
- package/skills/cc-rust-async/references/practice.md +37 -0
- package/skills/cc-rust-project-standard/SKILL.md +25 -0
- package/skills/cc-rust-project-standard/examples/engineering/Cargo.lock +7 -0
- package/skills/cc-rust-project-standard/examples/engineering/Cargo.toml +8 -0
- package/skills/cc-rust-project-standard/examples/engineering/README.md +5 -0
- package/skills/cc-rust-project-standard/examples/engineering/src/lib.rs +43 -0
- package/skills/cc-rust-project-standard/references/common/engineering-practices.md +237 -0
- package/skills/cc-rust-project-standard/references/common/engineering-practices.rules.json +121 -0
- package/skills/cc-rust-project-standard/references/common/engineering-practices.sources.json +377 -0
- package/skills/cc-rust-project-standard/references/engineering-practices.md +106 -0
- package/skills/cc-rust-project-standard/references/practice.md +37 -0
- package/skills/cc-tauri-project-standard/SKILL.md +21 -0
- package/skills/cc-tauri-project-standard/examples/minimal/README.md +9 -0
- package/skills/cc-tauri-project-standard/examples/minimal/core/Cargo.lock +5 -0
- package/skills/cc-tauri-project-standard/examples/minimal/core/Cargo.toml +9 -0
- package/skills/cc-tauri-project-standard/examples/minimal/core/src/lib.rs +46 -0
- package/skills/cc-tauri-project-standard/examples/minimal/src-tauri/Cargo.toml +12 -0
- package/skills/cc-tauri-project-standard/examples/minimal/src-tauri/build.rs +5 -0
- package/skills/cc-tauri-project-standard/examples/minimal/src-tauri/capabilities/main.json +6 -0
- package/skills/cc-tauri-project-standard/examples/minimal/src-tauri/permissions/documents.toml +4 -0
- package/skills/cc-tauri-project-standard/examples/minimal/src-tauri/src/main.rs +22 -0
- package/skills/cc-tauri-project-standard/examples/minimal/src-tauri/tauri.conf.json +13 -0
- package/skills/cc-tauri-project-standard/examples/minimal/ui/app.js +5 -0
- package/skills/cc-tauri-project-standard/examples/minimal/ui/index.html +1 -0
- package/skills/cc-tauri-project-standard/references/common/engineering-practices.md +237 -0
- package/skills/cc-tauri-project-standard/references/common/engineering-practices.rules.json +121 -0
- package/skills/cc-tauri-project-standard/references/common/engineering-practices.sources.json +377 -0
- package/skills/cc-tauri-project-standard/references/engineering-practices.md +73 -0
- package/skills/cc-tauri-project-standard/references/practice.md +20 -0
- package/skills/cc-tauri-project-standard/references/verification.md +18 -0
- package/skills/cc-typescript-project-standard/SKILL.md +60 -0
- package/skills/cc-typescript-project-standard/examples/engineering/README.md +9 -0
- package/skills/cc-typescript-project-standard/examples/engineering/boundary.test.ts +16 -0
- package/skills/cc-typescript-project-standard/examples/engineering/input.ts +12 -0
- package/skills/cc-typescript-project-standard/examples/engineering/package.json +12 -0
- package/skills/cc-typescript-project-standard/examples/engineering/pnpm-lock.yaml +39 -0
- package/skills/cc-typescript-project-standard/examples/engineering/pnpm-workspace.yaml +1 -0
- package/skills/cc-typescript-project-standard/examples/engineering/tsconfig.json +8 -0
- package/skills/cc-typescript-project-standard/references/common/engineering-practices.md +237 -0
- package/skills/cc-typescript-project-standard/references/common/engineering-practices.rules.json +121 -0
- package/skills/cc-typescript-project-standard/references/common/engineering-practices.sources.json +377 -0
- package/skills/cc-typescript-project-standard/references/engineering-practices.md +106 -0
- package/skills/cc-typescript-project-standard/references/type-safety-patterns.md +73 -0
- package/skills/cc-typescript-project-standard/references/type-safety.md +154 -0
- package/skills/eval_queries.json +336 -0
- package/skills/metadata.json +545 -7
- package/skills/relations.json +143 -0
package/CHANGELOG.md
ADDED
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
# Changelog
|
|
2
|
+
|
|
3
|
+
[简体中文](CHANGELOG.zh-CN.md)
|
|
4
|
+
|
|
5
|
+
Notable changes follow Keep a Changelog and Semantic Versioning. An **Unreleased** heading identifies prepared source, not an npm publication.
|
|
6
|
+
|
|
7
|
+
## [2.0.0] - 2026-11-09
|
|
8
|
+
|
|
9
|
+
### Added
|
|
10
|
+
|
|
11
|
+
- Expand the shared catalog to 21 English/Simplified Chinese `cc-*` entries. TypeScript, Rust, Go, Java, Python, C and C++ have independent language foundations; Rust async, Go concurrency, Python async, Java runtime and native memory safety have focused entries. Tauri and Electron provide desktop adaptations.
|
|
12
|
+
- Add bounded, read-only workspace inspection and task-scoped capability recommendations. Languages, application roles and framework evidence remain separate; discovery does not execute project code or install tools.
|
|
13
|
+
- Add shared product lifecycle APIs for explicit planning sessions, 15-runtime target resolution, per-entry configuration ownership, cross-product locking and recoverable product/common transactions.
|
|
14
|
+
- Add the sixth reusable method, engineering practices: eight core principles, 31 primary-source records with applicability limits, and local language/desktop decisions in 14 common entries. Guidance uses required/recommended/conditional levels and preserves project conventions.
|
|
15
|
+
- Add isolated, paired behavior examples for seven languages and the IPC handler core. Preparation is explicit; missing tools, compilation failures and empty/skipped tests are distinguished from demonstrated behavior. GUI, signing, real databases and distributed guarantees are separate validation boundaries.
|
|
16
|
+
|
|
17
|
+
### Changed
|
|
18
|
+
|
|
19
|
+
- Keep common content authoritative in this package. Products generate complete bilingual snapshots, embedded methods and provenance locks from the same exact package version and bytes. Standalone skills retain their own references, examples and license.
|
|
20
|
+
- Preserve frontend/backend product identities and adapters while sharing stable installation mechanics. No-Skill runtime references do not become native Skills or create shared Skill consumers.
|
|
21
|
+
- Use the existing npm packer through `pnpm exec npm pack` for release archives: pnpm 12.4.1's pack command omits nested `pnpm-lock.yaml` files, even with an explicit files whitelist. Dependency management remains on pnpm 12.4.1.
|
|
22
|
+
|
|
23
|
+
### Fixed
|
|
24
|
+
|
|
25
|
+
- Replace seven-entry catalog reconstruction in method synchronization with bilingual preflight and incremental planning. Preserve all 21 entries, applicability, unknown fields and query bytes; support read-only checks and idempotent synchronization.
|
|
26
|
+
- Reject invalid indexes, missing language resources, unsafe internal links and modified/unknown generated outputs before writing.
|
|
27
|
+
- Retain the transaction recovery, Windows equivalent-path and fixed-line-ending repairs released in 1.0.1.
|
|
28
|
+
|
|
29
|
+
## [1.0.1] - 2026-11-06
|
|
30
|
+
|
|
31
|
+
### Fixed
|
|
32
|
+
|
|
33
|
+
- Repair recovery of larger transaction journals, Windows equivalent-path handling and consistent line endings. Preserve modified or unknown files during recovery and shared-resource cleanup.
|
|
34
|
+
|
|
35
|
+
## [1.0.0] - 2026-11-05
|
|
36
|
+
|
|
37
|
+
### Added
|
|
38
|
+
|
|
39
|
+
- Initial common package with seven shared methodology/diagram entries, bilingual resources, catalog/resource APIs and shared installation ownership, conflict detection and transaction recovery.
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
# 变更日志
|
|
2
|
+
|
|
3
|
+
[English](CHANGELOG.md)
|
|
4
|
+
|
|
5
|
+
采用 Keep a Changelog 分类和语义化版本。**未发布**表示源码已准备,不代表已上传 npm。
|
|
6
|
+
|
|
7
|
+
## [2.0.0] - 2026-11-09
|
|
8
|
+
|
|
9
|
+
### 新增
|
|
10
|
+
|
|
11
|
+
- 公共目录扩展为21个英文/简体中文 `cc-*` 入口。TypeScript、Rust、Go、Java、Python、C、C++分别提供独立语言基础;另有Rust异步、Go并发、Python异步、Java运行时和原生内存安全专项,以及Tauri/Electron桌面适配。
|
|
12
|
+
- 新增有界、只读的工程事实扫描和任务范围能力推荐。语言、应用角色和框架证据分别判断,不执行工程代码或安装工具。
|
|
13
|
+
- 新增公共产品生命周期接口:显式规划会话、15宿主目标解析、配置条目所有权、跨产品锁,以及产品/公共资源可恢复事务。
|
|
14
|
+
- 新增第六类通用方法“工程实践”:八项公共原则、31条带适用限制的一手来源,及14个公共入口的语言/桌面细则。采用required/recommended/conditional级别,尊重项目既有约定。
|
|
15
|
+
- 新增七语言和IPC处理核心的隔离缺陷/修复配对案例。环境准备须显式执行,缺工具、编译失败、零用例及跳过与真实行为结果分开;GUI、签名、外部数据库和分布式保证另行验证。
|
|
16
|
+
|
|
17
|
+
### 变更
|
|
18
|
+
|
|
19
|
+
- 公共内容只在本包维护。产品从同一精确版本与字节生成完整双语快照、内嵌方法及来源锁;独立Skill保留自身参考、示例和许可证。
|
|
20
|
+
- 产品身份和适配转换仍由前后端各自管理,稳定安装机制共同复用。无Skill宿主的参考资料不伪装为原生Skill,也不登记公共Skill消费者。
|
|
21
|
+
- 发行归档使用现有npm打包器,通过`pnpm exec npm pack`执行;pnpm 12.4.1的pack会排除嵌套pnpm-lock.yaml,显式白名单也不能保留。依赖管理仍使用pnpm 12.4.1。
|
|
22
|
+
|
|
23
|
+
### 修复
|
|
24
|
+
|
|
25
|
+
- 方法同步由七项整表重建改为双语预检与增量规划,保留全部21入口、适用条件、未知字段与查询字节,支持只读检查及幂等同步。
|
|
26
|
+
- 索引非法、语言资源缺失、内部链接不安全,以及生成目标被修改或存在未知内容时,在写入前拒绝。
|
|
27
|
+
- 保留1.0.1已发布的事务恢复、Windows等价路径及固定换行修复。
|
|
28
|
+
|
|
29
|
+
## [1.0.1] - 2026-11-06
|
|
30
|
+
|
|
31
|
+
### 修复
|
|
32
|
+
|
|
33
|
+
- 修复较大事务日志恢复、Windows等价路径及换行一致性;恢复和公共资源清理保留用户修改及未知文件。
|
|
34
|
+
|
|
35
|
+
## [1.0.0] - 2026-11-05
|
|
36
|
+
|
|
37
|
+
### 新增
|
|
38
|
+
|
|
39
|
+
- 首个公共包,包含七个通用方法/图表入口、双语资源、目录/资源接口,以及共享安装所有权、冲突检查和事务恢复。
|
package/README.md
CHANGED
|
@@ -1,13 +1,27 @@
|
|
|
1
1
|
# craft-common
|
|
2
2
|
|
|
3
|
-
Craft AI Coding 的公共能力包,由 frontend-craft 和backend-craft 自动交付;用户无需手动安装第三个插件。
|
|
3
|
+
Craft AI Coding 的公共能力包,由 frontend-craft 和 backend-craft 自动交付;用户无需手动安装第三个插件。
|
|
4
4
|
|
|
5
5
|
公共能力使用 `cc-*` 标识。此仓库是公共 Skill、资源与方法的唯一维护来源,产品中的对应目录由固定版本生成并校验。
|
|
6
6
|
|
|
7
7
|
开发要求 Node.js >=22 和 pnpm 12.4.1。使用 `pnpm install`、`pnpm lint`、`pnpm typecheck`、`pnpm test`、`pnpm build` 校验。
|
|
8
8
|
|
|
9
|
-
|
|
9
|
+
提供 21 个双语公共入口:既有七个方法与图表入口、十二个跨领域语言入口,以及 Tauri/Electron 桌面专项。TypeScript、Rust、Go、Java、Python、C、C++ 可用于 UI、桌面核心、原生库、服务或 CLI;能力由工程证据和任务选择,不按产品名称限制语言。
|
|
10
10
|
|
|
11
|
-
|
|
11
|
+
公共安装引擎统一十五宿主的路径、显式规划会话、共享配置所有权、跨产品配置锁及事务恢复。产品保留身份声明、历史清单编解码和内容转换。共享协议以真实 Skill 目标定位消费者,检查精确版本、语言和内容摘要;卸载保留其他消费者及用户修改。原生插件双产品去重需另外按 Runtime 验证。
|
|
12
12
|
|
|
13
13
|
消费和维护约定见[消费指南](docs/consuming-common.md)。公共包和前端 3.0 的公开发布仍是独立发布步骤,仓库中的本地验证不代表 npm registry 已有可下载版本。
|
|
14
|
+
|
|
15
|
+
[工程结构与维护入口](docs/consuming-common.md#工程结构与维护入口)说明公共源、方法同步和生成产物边界。frontend-craft 3.0.0 与 backend-craft 1.0.0 均精确依赖正式版本号 `2.0.0`,当前处于待发布阶段;公共包不提供独立 CLI。
|
|
16
|
+
|
|
17
|
+
<!-- engineering-practices-20261108 -->
|
|
18
|
+
|
|
19
|
+
## 分层工程实践
|
|
20
|
+
|
|
21
|
+
公开企业经验和语言官方资料按“公共原则 → 语言 → 场景 → 验证证据”融入既有入口。公共八项原则、31条一手来源与适用限制由 [methods](methods/engineering-practices.md) 及其 [来源记录](methods/engineering-practices.sources.json) 唯一维护;不把企业内部偏好直接变为项目强制规则。14个公共入口增强,产品分别补8个前端及14个服务入口,总数仍为21/74/42。
|
|
22
|
+
|
|
23
|
+
规则级别为required/recommended/conditional;项目兼容、安全及现有工具约定优先。每个增强入口的references/engineering-practices.md给出风险、条件、例外、正反示意和验证。代码/锁双语同字节,说明本地化;关联案例ID不证明该条全部语义。
|
|
24
|
+
|
|
25
|
+
维护者显式运行`pnpm run verify:engineering`,缺工具按MISSING报告;`--prepare`才准备环境,Docker方式见脚本参数。八个公共案例覆盖七语言及IPC,另两例由产品拥有。真实运行、四组模型对照与结构完整性分别记录,均不代表GUI、数据库或分布式保证。
|
|
26
|
+
|
|
27
|
+
[变更日志](CHANGELOG.zh-CN.md) · [English changelog](CHANGELOG.md) · [2.0.0发布步骤](docs/releases/2.0.0.md)。前端3.0.0、后端1.0.0继续保持未发布状态,发布本包不自动发布两产品。
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
export declare const PROJECT_ROLES: readonly ["ui", "desktop-core", "native-library", "service", "cli", "unknown"];
|
|
2
|
+
export declare const TASK_KINDS: readonly ["ui", "ipc", "native-memory", "api", "data", "build", "review"];
|
|
3
|
+
export type ProjectRole = (typeof PROJECT_ROLES)[number];
|
|
4
|
+
export type TaskKind = (typeof TASK_KINDS)[number];
|
|
5
|
+
export interface CapabilityApplicability {
|
|
6
|
+
languages?: string[];
|
|
7
|
+
frameworks?: string[];
|
|
8
|
+
roles?: ProjectRole[];
|
|
9
|
+
taskKinds?: TaskKind[];
|
|
10
|
+
}
|
|
11
|
+
export interface CapabilityCandidate {
|
|
12
|
+
id: string;
|
|
13
|
+
sourcePackage: string;
|
|
14
|
+
applicability?: CapabilityApplicability;
|
|
15
|
+
}
|
|
16
|
+
/** Source identities come from the caller's verified catalog, never self-reported metadata. */
|
|
17
|
+
export declare function readCapabilityCandidates(metadata: unknown, sources: Readonly<Record<string, string>>): CapabilityCandidate[];
|
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
import type { ContentCatalog, InstallLanguage } from "./types.js";
|
|
2
|
-
export type MethodName = "source-driven-development" | "doc-sync" | "debug" | "refactoring" | "tdd";
|
|
2
|
+
export type MethodName = "source-driven-development" | "doc-sync" | "debug" | "refactoring" | "tdd" | "engineering-practices";
|
|
3
3
|
export declare function readMethodResource(packageRoot: string, method: MethodName, language: InstallLanguage): Buffer;
|
|
4
4
|
export declare function readContentCatalog(packageRoot: string, language: InstallLanguage): ContentCatalog;
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
import { type MethodName } from "./catalog.js";
|
|
2
|
+
import type { ContentCatalog, InstallLanguage } from "./types.js";
|
|
3
|
+
export interface CommonContentLock {
|
|
4
|
+
schemaVersion: 1;
|
|
5
|
+
packageName: "@bovinphang/craft-common";
|
|
6
|
+
packageVersion: string;
|
|
7
|
+
catalogs: Record<InstallLanguage, Omit<ContentCatalog, "root">>;
|
|
8
|
+
files: Array<{
|
|
9
|
+
relativePath: string;
|
|
10
|
+
hash: string;
|
|
11
|
+
}>;
|
|
12
|
+
}
|
|
13
|
+
export interface SnapshotDeclarations {
|
|
14
|
+
domainMethods: ReadonlyArray<{
|
|
15
|
+
target: string;
|
|
16
|
+
method: MethodName;
|
|
17
|
+
}>;
|
|
18
|
+
extraResources: ReadonlyArray<{
|
|
19
|
+
source: string;
|
|
20
|
+
target: string;
|
|
21
|
+
}>;
|
|
22
|
+
retiredIds: Readonly<Record<string, string>>;
|
|
23
|
+
}
|
|
24
|
+
export interface ProductSnapshotInput extends SnapshotDeclarations {
|
|
25
|
+
productRoot: string;
|
|
26
|
+
commonRoot: string;
|
|
27
|
+
check: boolean;
|
|
28
|
+
}
|
|
29
|
+
export declare function snapshotPath(root: string, relative: string): string;
|
|
30
|
+
export declare const mixedIndex: (relative: string) => boolean;
|
|
31
|
+
export declare function isSnapshotResource(relative: string, declarations: Pick<SnapshotDeclarations, "domainMethods" | "extraResources">): boolean;
|
|
32
|
+
export declare function syncProductSnapshot(input: ProductSnapshotInput): void;
|
package/dist/index.d.ts
CHANGED
|
@@ -1,7 +1,25 @@
|
|
|
1
1
|
export * from "./content/types.js";
|
|
2
|
+
export * from "./content/applicability.js";
|
|
3
|
+
export * from "./project/types.js";
|
|
4
|
+
export * from "./project/evidence.js";
|
|
5
|
+
export * from "./project/frameworks.js";
|
|
6
|
+
export { inspectWorkspace } from "./project/discover.js";
|
|
7
|
+
export * from "./content/snapshot.js";
|
|
2
8
|
export { readContentCatalog, readMethodResource, type MethodName, } from "./content/catalog.js";
|
|
3
9
|
export { collectSkillResources } from "./content/resources.js";
|
|
4
10
|
export * from "./install/types.js";
|
|
11
|
+
export * from "./install/product/types.js";
|
|
12
|
+
export type { OwnedEntry } from "./install/product/shared-config/types.js";
|
|
13
|
+
export { resolveRuntimeTargets, safeProductPath, productPathKey, type RuntimeTargetInput, type RuntimeTargets, } from "./install/product/paths.js";
|
|
14
|
+
export { RUNTIME_DESCRIPTORS, type RuntimeId, } from "./install/product/runtime-descriptors.js";
|
|
15
|
+
export { createInstallSession, type FileInstallSession, type InstallSession, type InstallSessionOptions, } from "./install/product/session.js";
|
|
16
|
+
export { planConfigEntry, configEntryStatus, entryHash, hashBytes, validateConfigEntry, } from "./install/product/shared-config/index.js";
|
|
5
17
|
export { resolveSharedIdentity } from "./install/identity.js";
|
|
18
|
+
export { canonicalPath as canonicalProductPath } from "./install/identity.js";
|
|
19
|
+
export { currentHash as currentProductHash } from "./install/planner.js";
|
|
20
|
+
export { runProductLifecycle, type ProductLifecycleInput, type ProductInstallationSeed, } from "./install/product/lifecycle.js";
|
|
21
|
+
export { withProductConfigurationLocks } from "./install/product/locks.js";
|
|
22
|
+
export { executeProductPlan, recoverProductTransaction, type ProductTransactionInput, } from "./install/product/transaction.js";
|
|
6
23
|
export { planSharedDeployment } from "./install/planner.js";
|
|
7
24
|
export { executeSharedPlan, recoverSharedTransaction, } from "./install/transaction.js";
|
|
25
|
+
export { recommendCapabilities, type CapabilityRecommendation, } from "./project/recommend.js";
|