@givolt/i3-composer-agent 3.1.0 → 4.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/.agents/plugins/marketplace.json +1 -1
- package/.claude/commands/i3-build.md +1 -0
- package/.claude/commands/i3-code-simplify.md +1 -0
- package/.claude/commands/i3-constraints.md +1 -0
- package/.claude/commands/i3-plan.md +1 -0
- package/.claude/commands/i3-review.md +1 -0
- package/.claude/commands/i3-ship.md +1 -0
- package/.claude/commands/i3-sop.md +3 -3
- package/.claude/commands/i3-spec.md +1 -0
- package/.claude/commands/i3-test.md +1 -0
- package/.claude/commands/i3-webperf.md +1 -0
- package/.claude-plugin/marketplace.json +1 -1
- package/.claude-plugin/plugin.json +1 -1
- package/.codex-plugin/plugin.json +2 -2
- package/.gemini/commands/i3-sop.toml +3 -3
- package/README.md +44 -43
- package/bin/i3-composer-agent.cjs +4 -59
- package/bin/install.cjs +6 -14
- package/bin/native-layout.cjs +11 -2
- package/bin/native-migration.cjs +68 -28
- package/bin/retired-custom-fingerprints.json +1597 -0
- package/bin/wizard.cjs +2 -13
- package/commands/i3-sop.toml +3 -3
- package/docs/antigravity-setup.md +3 -1
- package/docs/codebuddy-setup.md +19 -76
- package/docs/codex-setup.md +10 -4
- package/docs/comparison.md +1 -1
- package/docs/copilot-cli-setup.md +4 -4
- package/docs/cursor-setup.md +1 -1
- package/docs/gemini-cli-setup.md +1 -1
- package/docs/other-hosts.md +2 -2
- package/docs/windsurf-setup.md +2 -2
- package/docs/workbuddy-setup.md +9 -16
- package/evals/README.md +10 -0
- package/evals/cases/i3-code-simplification.json +8 -0
- package/evals/cases/i3-documentation-and-adrs.json +4 -0
- package/evals/cases/i3-enterprise-sop.json +70 -32
- package/evals/cases/i3-frontend-ui-engineering.json +1 -1
- package/evals/cases/i3-security-and-hardening.json +4 -0
- package/evals/cases/i3-ui-demo.json +2 -2
- package/evals/cases/i3-using-agent-skills.json +5 -5
- package/evals/plugin/simplify-fires-on-pasted-function/graders/behavior-kept-and-explained.md +7 -0
- package/evals/plugin/simplify-fires-on-pasted-function/graders/skill-fired.md +5 -0
- package/evals/plugin/simplify-fires-on-pasted-function/prompt.md +30 -0
- package/evals/plugin/simplify-stays-quiet-on-make-it-fast/graders/not-fired.md +8 -0
- package/evals/plugin/simplify-stays-quiet-on-make-it-fast/prompt.md +20 -0
- package/evals/zh-CN/cases/i3-code-simplification.json +8 -0
- package/evals/zh-CN/cases/i3-documentation-and-adrs.json +4 -0
- package/evals/zh-CN/cases/i3-enterprise-sop.json +77 -31
- package/evals/zh-CN/cases/i3-frontend-ui-engineering.json +2 -2
- package/evals/zh-CN/cases/i3-security-and-hardening.json +4 -0
- package/evals/zh-CN/cases/i3-ui-demo.json +2 -2
- package/evals/zh-CN/cases/i3-using-agent-skills.json +6 -6
- package/hooks/SDD-CACHE.md +1 -1
- package/package.json +13 -102
- package/plugin.json +15 -2
- package/references/accessibility-checklist.md +4 -4
- package/references/performance-checklist.md +5 -4
- package/references/testing-patterns.md +2 -1
- package/scripts/floor-guard-reference-test.js +32 -0
- package/scripts/lib/execution-status.js +44 -0
- package/scripts/run-evals-test.js +157 -7
- package/scripts/run-evals.js +59 -12
- package/scripts/ui-demo-test.js +2 -2
- package/scripts/validate-artifact-paths-test.js +14 -0
- package/scripts/validate-artifact-paths.js +4 -2
- package/skills/i3-api-and-interface-design/SKILL.md +3 -1
- package/skills/i3-ci-cd-and-automation/SKILL.md +7 -4
- package/skills/i3-code-simplification/SKILL.md +3 -3
- package/skills/i3-constraint-driven-development/SKILL.md +4 -4
- package/skills/i3-constraint-driven-development/references/floor-guard.md +2 -2
- package/skills/i3-context-engineering/SKILL.md +1 -1
- package/skills/i3-debugging-and-error-recovery/SKILL.md +1 -1
- package/skills/i3-deprecation-and-migration/SKILL.md +6 -1
- package/skills/i3-documentation-and-adrs/SKILL.md +3 -2
- package/skills/i3-enterprise-sop/SKILL.md +121 -94
- package/skills/i3-enterprise-sop/references/engineering-skeleton/directory-standard.md +31 -17
- package/skills/i3-enterprise-sop/references/handoff.py +235 -135
- package/skills/i3-enterprise-sop/references/read_text.py +60 -0
- package/skills/i3-enterprise-sop/references/technical-baseline/baselines/enterprise-application-technical-baseline-v0-0-4.md +47 -47
- package/skills/i3-enterprise-sop/references/technical-baseline/readme.md +9 -118
- package/skills/i3-enterprise-sop/references/technical-baseline/templates/technical-baseline.md +8 -8
- package/skills/i3-enterprise-sop/references/{ad/templates → templates}/ad.md +57 -50
- package/skills/i3-enterprise-sop/references/{brd/templates → templates}/brd.md +23 -12
- package/skills/i3-enterprise-sop/references/{prd/templates → templates}/prd.md +84 -51
- package/skills/i3-enterprise-sop/references/{testcase/templates → templates}/testcase.md +49 -39
- package/skills/i3-frontend-ui-engineering/SKILL.md +6 -10
- package/skills/i3-idea-refine/SKILL.md +4 -2
- package/skills/i3-incremental-implementation/SKILL.md +0 -4
- package/skills/i3-performance-optimization/SKILL.md +2 -2
- package/skills/i3-security-and-hardening/references/hardening-patterns.md +5 -0
- package/skills/i3-source-driven-development/SKILL.md +3 -2
- package/skills/i3-spec-driven-development/SKILL.md +1 -1
- package/skills/i3-ui-demo/SKILL.md +3 -1
- package/skills/i3-ui-demo/references/dependencies.md +1 -1
- package/skills/i3-ui-demo/references/resources.md +1 -1
- package/skills/i3-ui-demo/scripts/dependencies.cjs +0 -3
- package/skills/i3-using-agent-skills/SKILL.md +2 -2
- package/.claude/commands/i3-prototype.md +0 -23
- package/.gemini/commands/i3-prototype.toml +0 -23
- package/commands/i3-prototype.toml +0 -23
- package/docs/upstream-repository/AGENTS.md +0 -92
- package/docs/upstream-repository/CLAUDE.md +0 -60
- package/docs/upstream-repository/CONTRIBUTING.md +0 -137
- package/docs/upstream-repository/README.md +0 -8
- package/docs/upstream-repository/gitattributes.txt +0 -1
- package/docs/upstream-repository/gitignore.txt +0 -10
- package/docs/upstream-repository/manifest.json +0 -71
- package/docs/upstream-repository/opencode-skills.link +0 -1
- package/docs/upstream-repository/skill-gap.yml +0 -80
- package/docs/upstream-repository/skills-contributing.md +0 -15
- package/docs/upstream-repository/test-plugin-install.yml +0 -167
- package/evals/cases/i3-ui-prototype.json +0 -158
- package/evals/fixtures/i3-ui-prototype/admin-list/assets/reference.css +0 -3
- package/evals/fixtures/i3-ui-prototype/admin-list/assets/reference.js +0 -8
- package/evals/fixtures/i3-ui-prototype/admin-list/capability-definition.json +0 -67
- package/evals/fixtures/i3-ui-prototype/admin-list/index.html +0 -89
- package/evals/fixtures/i3-ui-prototype/admin-list/readme.md +0 -52
- package/evals/fixtures/i3-ui-prototype/admin-list/template.json +0 -8
- package/evals/fixtures/i3-ui-prototype/business-brief.md +0 -7
- package/evals/zh-CN/cases/i3-ui-prototype.json +0 -165
- package/hooks/PROTOTYPE.md +0 -31
- package/hooks/codebuddy-upstream.cjs +0 -93
- package/hooks/i3-prototype.cjs +0 -7
- package/hooks/manage.cjs +0 -169
- package/scripts/design-provider-discovery-test.js +0 -190
- package/scripts/design-provider-test.js +0 -75
- package/scripts/enterprise-template-test.js +0 -205
- package/scripts/lib/prototype-fixture.cjs +0 -17
- package/scripts/prototype-cache-test.js +0 -55
- package/scripts/prototype-generation-entry-test.js +0 -6
- package/scripts/prototype-generation-evidence-test.js +0 -10
- package/scripts/prototype-generation-native-test.js +0 -78
- package/scripts/prototype-generation-test.js +0 -99
- package/scripts/prototype-inventory-test.js +0 -43
- package/scripts/prototype-locations-test.js +0 -79
- package/scripts/prototype-project-test.js +0 -183
- package/scripts/template-adapter-test.js +0 -155
- package/scripts/ui-prototype-binding-recovery-test.js +0 -84
- package/scripts/ui-prototype-buddy-lifecycle-test.js +0 -102
- package/scripts/ui-prototype-codebuddy-hook-test.js +0 -112
- package/scripts/ui-prototype-content-test.js +0 -123
- package/scripts/ui-prototype-dependencies-test.js +0 -226
- package/scripts/ui-prototype-devtools-test.js +0 -53
- package/scripts/ui-prototype-execution-evidence-test.js +0 -62
- package/scripts/ui-prototype-execution-gates-test.js +0 -91
- package/scripts/ui-prototype-execution-policy-test.js +0 -53
- package/scripts/ui-prototype-execution-runtime-test.js +0 -27
- package/scripts/ui-prototype-ide-source-test.js +0 -73
- package/scripts/ui-prototype-native-test.js +0 -526
- package/scripts/ui-prototype-recovery-test.js +0 -81
- package/scripts/ui-prototype-registration-test.js +0 -53
- package/scripts/ui-prototype-template-test.js +0 -261
- package/scripts/ui-prototype-test.js +0 -124
- package/scripts/ui-prototype-transcript-auto-test.js +0 -67
- package/skills/i3-enterprise-sop/references/ad/assets-manifest.json +0 -86
- package/skills/i3-enterprise-sop/references/ad/prompts/01-generate.md +0 -58
- package/skills/i3-enterprise-sop/references/ad/prompts/02-review.md +0 -54
- package/skills/i3-enterprise-sop/references/ad/prompts/03-revise.md +0 -54
- package/skills/i3-enterprise-sop/references/ad/prompts/04-recheck.md +0 -54
- package/skills/i3-enterprise-sop/references/ad/readme.md +0 -70
- package/skills/i3-enterprise-sop/references/assets-manifest.json +0 -230
- package/skills/i3-enterprise-sop/references/brd/assets-manifest.json +0 -83
- package/skills/i3-enterprise-sop/references/brd/prompts/01-generate.md +0 -51
- package/skills/i3-enterprise-sop/references/brd/prompts/02-review.md +0 -47
- package/skills/i3-enterprise-sop/references/brd/prompts/03-revise.md +0 -47
- package/skills/i3-enterprise-sop/references/brd/prompts/04-recheck.md +0 -47
- package/skills/i3-enterprise-sop/references/brd/readme.md +0 -50
- package/skills/i3-enterprise-sop/references/codebuddy-project-guide.md +0 -34
- package/skills/i3-enterprise-sop/references/controlled-handoff.md +0 -41
- package/skills/i3-enterprise-sop/references/controlled_handoff.py +0 -379
- package/skills/i3-enterprise-sop/references/engineering-skeleton/adoption.md +0 -200
- package/skills/i3-enterprise-sop/references/engineering-skeleton/catalog.json +0 -17
- package/skills/i3-enterprise-sop/references/engineering-skeleton/readme.md +0 -52
- package/skills/i3-enterprise-sop/references/handoff-contract.md +0 -196
- package/skills/i3-enterprise-sop/references/lifecycle-contract.md +0 -91
- package/skills/i3-enterprise-sop/references/plan-handoff.md +0 -73
- package/skills/i3-enterprise-sop/references/prd/assets-manifest.json +0 -109
- package/skills/i3-enterprise-sop/references/prd/prompts/01-generate.md +0 -64
- package/skills/i3-enterprise-sop/references/prd/prompts/02-review.md +0 -49
- package/skills/i3-enterprise-sop/references/prd/prompts/03-revise.md +0 -48
- package/skills/i3-enterprise-sop/references/prd/prompts/04-recheck.md +0 -47
- package/skills/i3-enterprise-sop/references/prd/readme.md +0 -137
- package/skills/i3-enterprise-sop/references/prd/template-contracts.md +0 -39
- package/skills/i3-enterprise-sop/references/prd/templates/ad.md +0 -17
- package/skills/i3-enterprise-sop/references/readme.md +0 -167
- package/skills/i3-enterprise-sop/references/recovery-contract.md +0 -65
- package/skills/i3-enterprise-sop/references/review-handoff.md +0 -105
- package/skills/i3-enterprise-sop/references/selection-handoff.md +0 -55
- package/skills/i3-enterprise-sop/references/selection_handoff.py +0 -225
- package/skills/i3-enterprise-sop/references/stages.json +0 -271
- package/skills/i3-enterprise-sop/references/technical-baseline/assets-manifest.json +0 -84
- package/skills/i3-enterprise-sop/references/template-contracts.md +0 -142
- package/skills/i3-enterprise-sop/references/testcase/assets-manifest.json +0 -91
- package/skills/i3-enterprise-sop/references/testcase/prompts/01-generate.md +0 -53
- package/skills/i3-enterprise-sop/references/testcase/prompts/02-review.md +0 -51
- package/skills/i3-enterprise-sop/references/testcase/prompts/03-revise.md +0 -49
- package/skills/i3-enterprise-sop/references/testcase/prompts/04-recheck.md +0 -51
- package/skills/i3-enterprise-sop/references/testcase/readme.md +0 -61
- package/skills/i3-enterprise-sop/references/verification/check_execution.py +0 -185
- package/skills/i3-enterprise-sop/references/verification/check_native_execution.py +0 -282
- package/skills/i3-enterprise-sop/references/verification/check_reads.py +0 -348
- package/skills/i3-enterprise-sop/references/verification/readme.md +0 -149
- package/skills/i3-enterprise-sop/references/verification/review-output.schema.json +0 -155
- package/skills/i3-enterprise-sop/references/verification/review_handoff.py +0 -329
- package/skills/i3-ui-prototype/SKILL.md +0 -256
- package/skills/i3-ui-prototype/assets/capabilities/generation.json +0 -833
- package/skills/i3-ui-prototype/assets/capabilities/management.json +0 -294
- package/skills/i3-ui-prototype/assets/frameworks/vue-antdv-next/acceptance.json +0 -51
- package/skills/i3-ui-prototype/assets/frameworks/vue-antdv-next/component-map.json +0 -13
- package/skills/i3-ui-prototype/assets/frameworks/vue-antdv-next/generation-component-map.json +0 -300
- package/skills/i3-ui-prototype/assets/frameworks/vue-antdv-next/legacy-starter/index.html +0 -11
- package/skills/i3-ui-prototype/assets/frameworks/vue-antdv-next/legacy-starter/package-lock.json +0 -2298
- package/skills/i3-ui-prototype/assets/frameworks/vue-antdv-next/legacy-starter/package.json +0 -22
- package/skills/i3-ui-prototype/assets/frameworks/vue-antdv-next/legacy-starter/public/prototype-config.json +0 -6
- package/skills/i3-ui-prototype/assets/frameworks/vue-antdv-next/legacy-starter/src/App.vue +0 -136
- package/skills/i3-ui-prototype/assets/frameworks/vue-antdv-next/legacy-starter/src/components/DeviceEditor.vue +0 -111
- package/skills/i3-ui-prototype/assets/frameworks/vue-antdv-next/legacy-starter/src/config.ts +0 -19
- package/skills/i3-ui-prototype/assets/frameworks/vue-antdv-next/legacy-starter/src/content.ts +0 -28
- package/skills/i3-ui-prototype/assets/frameworks/vue-antdv-next/legacy-starter/src/domain/devices.ts +0 -50
- package/skills/i3-ui-prototype/assets/frameworks/vue-antdv-next/legacy-starter/src/domain/theme.ts +0 -25
- package/skills/i3-ui-prototype/assets/frameworks/vue-antdv-next/legacy-starter/src/main.ts +0 -18
- package/skills/i3-ui-prototype/assets/frameworks/vue-antdv-next/legacy-starter/src/style.css +0 -50
- package/skills/i3-ui-prototype/assets/frameworks/vue-antdv-next/legacy-starter/src/useDevices.ts +0 -66
- package/skills/i3-ui-prototype/assets/frameworks/vue-antdv-next/legacy-starter/tests/devices.test.ts +0 -44
- package/skills/i3-ui-prototype/assets/frameworks/vue-antdv-next/legacy-starter/tests/theme.test.ts +0 -26
- package/skills/i3-ui-prototype/assets/frameworks/vue-antdv-next/legacy-starter/tsconfig.json +0 -15
- package/skills/i3-ui-prototype/assets/frameworks/vue-antdv-next/legacy-starter/vite.config.ts +0 -4
- package/skills/i3-ui-prototype/assets/frameworks/vue-antdv-next/profile.json +0 -174
- package/skills/i3-ui-prototype/assets/frameworks/vue-antdv-next/readme.md +0 -61
- package/skills/i3-ui-prototype/assets/frameworks/vue-antdv-next/starter/index.html +0 -11
- package/skills/i3-ui-prototype/assets/frameworks/vue-antdv-next/starter/package-lock.json +0 -2298
- package/skills/i3-ui-prototype/assets/frameworks/vue-antdv-next/starter/package.json +0 -22
- package/skills/i3-ui-prototype/assets/frameworks/vue-antdv-next/starter/public/prototype-config.json +0 -21
- package/skills/i3-ui-prototype/assets/frameworks/vue-antdv-next/starter/src/App.vue +0 -62
- package/skills/i3-ui-prototype/assets/frameworks/vue-antdv-next/starter/src/PrototypeShell.vue +0 -59
- package/skills/i3-ui-prototype/assets/frameworks/vue-antdv-next/starter/src/config.ts +0 -23
- package/skills/i3-ui-prototype/assets/frameworks/vue-antdv-next/starter/src/domain/presentation.ts +0 -29
- package/skills/i3-ui-prototype/assets/frameworks/vue-antdv-next/starter/src/domain/theme.ts +0 -25
- package/skills/i3-ui-prototype/assets/frameworks/vue-antdv-next/starter/src/main.ts +0 -18
- package/skills/i3-ui-prototype/assets/frameworks/vue-antdv-next/starter/src/style.css +0 -26
- package/skills/i3-ui-prototype/assets/frameworks/vue-antdv-next/starter/tests/presentation.test.ts +0 -23
- package/skills/i3-ui-prototype/assets/frameworks/vue-antdv-next/starter/tests/theme.test.ts +0 -26
- package/skills/i3-ui-prototype/assets/frameworks/vue-antdv-next/starter/tsconfig.json +0 -15
- package/skills/i3-ui-prototype/assets/frameworks/vue-antdv-next/starter/vite.config.ts +0 -4
- package/skills/i3-ui-prototype/assets/hosts/codebuddy/profile.json +0 -17
- package/skills/i3-ui-prototype/assets/optional-skills/host-targets.json +0 -739
- package/skills/i3-ui-prototype/assets/optional-skills/sources.json +0 -27
- package/skills/i3-ui-prototype/assets/templates/catalog.js +0 -149
- package/skills/i3-ui-prototype/assets/templates/catalog.json +0 -149
- package/skills/i3-ui-prototype/assets/templates/classic-admin/manifest.json +0 -9
- package/skills/i3-ui-prototype/assets/templates/classic-admin/preset.json +0 -6
- package/skills/i3-ui-prototype/assets/templates/common/app/app.mjs +0 -89
- package/skills/i3-ui-prototype/assets/templates/common/app/config.json +0 -1
- package/skills/i3-ui-prototype/assets/templates/common/app/domain.mjs +0 -20
- package/skills/i3-ui-prototype/assets/templates/common/app/index.html +0 -17
- package/skills/i3-ui-prototype/assets/templates/common/app/serve.cjs +0 -16
- package/skills/i3-ui-prototype/assets/templates/common/app/styles.css +0 -670
- package/skills/i3-ui-prototype/assets/templates/common/app/tokens.css +0 -19
- package/skills/i3-ui-prototype/assets/templates/common/design-system/master.md +0 -20
- package/skills/i3-ui-prototype/assets/templates/common/gallery.html +0 -2
- package/skills/i3-ui-prototype/assets/templates/common/mocks/applications.json +0 -5
- package/skills/i3-ui-prototype/assets/templates/common/requirements-map.json +0 -8
- package/skills/i3-ui-prototype/assets/templates/common/serve-gallery.cjs +0 -16
- package/skills/i3-ui-prototype/assets/templates/credits.md +0 -17
- package/skills/i3-ui-prototype/assets/templates/data-operations/manifest.json +0 -9
- package/skills/i3-ui-prototype/assets/templates/data-operations/preset.json +0 -6
- package/skills/i3-ui-prototype/assets/templates/enterprise-admin/capability-definition.json +0 -294
- package/skills/i3-ui-prototype/assets/templates/enterprise-admin/component-inventory.json +0 -707
- package/skills/i3-ui-prototype/assets/templates/enterprise-admin/design-system.md +0 -32
- package/skills/i3-ui-prototype/assets/templates/enterprise-admin/generation.json +0 -49
- package/skills/i3-ui-prototype/assets/templates/enterprise-admin/index.html +0 -534
- package/skills/i3-ui-prototype/assets/templates/enterprise-admin/manifest.json +0 -9
- package/skills/i3-ui-prototype/assets/templates/enterprise-admin/offline-build.json +0 -265
- package/skills/i3-ui-prototype/assets/templates/enterprise-admin/offline.js +0 -8888
- package/skills/i3-ui-prototype/assets/templates/enterprise-admin/origin.json +0 -344
- package/skills/i3-ui-prototype/assets/templates/enterprise-admin/preset.json +0 -928
- package/skills/i3-ui-prototype/assets/templates/enterprise-admin/reference/app.js +0 -22
- package/skills/i3-ui-prototype/assets/templates/enterprise-admin/reference/assets/empty.svg +0 -1
- package/skills/i3-ui-prototype/assets/templates/enterprise-admin/reference/assets/reference-styles.json +0 -1
- package/skills/i3-ui-prototype/assets/templates/enterprise-admin/reference/assets/result-403.svg +0 -1
- package/skills/i3-ui-prototype/assets/templates/enterprise-admin/reference/assets/result-404.svg +0 -1
- package/skills/i3-ui-prototype/assets/templates/enterprise-admin/reference/assets-manifest.json +0 -334
- package/skills/i3-ui-prototype/assets/templates/enterprise-admin/reference/baseline.json +0 -173
- package/skills/i3-ui-prototype/assets/templates/enterprise-admin/reference/conversion.md +0 -30
- package/skills/i3-ui-prototype/assets/templates/enterprise-admin/reference/credits.md +0 -17
- package/skills/i3-ui-prototype/assets/templates/enterprise-admin/reference/design-tokens.json +0 -881
- package/skills/i3-ui-prototype/assets/templates/enterprise-admin/reference/index.html +0 -28
- package/skills/i3-ui-prototype/assets/templates/enterprise-admin/reference/licenses/@qin-ui-antdv-next-pro.txt +0 -9
- package/skills/i3-ui-prototype/assets/templates/enterprise-admin/reference/licenses/ant-design-icons.txt +0 -22
- package/skills/i3-ui-prototype/assets/templates/enterprise-admin/reference/licenses/antdv-next.txt +0 -21
- package/skills/i3-ui-prototype/assets/templates/enterprise-admin/reference/package.json +0 -12
- package/skills/i3-ui-prototype/assets/templates/enterprise-admin/reference/qa/browser-routes.json +0 -298
- package/skills/i3-ui-prototype/assets/templates/enterprise-admin/reference/qa/coverage.json +0 -180
- package/skills/i3-ui-prototype/assets/templates/enterprise-admin/reference/qa/integrity.json +0 -13
- package/skills/i3-ui-prototype/assets/templates/enterprise-admin/reference/qa/keyboard.json +0 -11
- package/skills/i3-ui-prototype/assets/templates/enterprise-admin/reference/qa/responsive.json +0 -125
- package/skills/i3-ui-prototype/assets/templates/enterprise-admin/reference/qa/review.md +0 -51
- package/skills/i3-ui-prototype/assets/templates/enterprise-admin/reference/qa/rules.log +0 -150
- package/skills/i3-ui-prototype/assets/templates/enterprise-admin/reference/qa/screenshots/flow-editor-html.png +0 -0
- package/skills/i3-ui-prototype/assets/templates/enterprise-admin/reference/qa/screenshots/flow-editor-original.png +0 -0
- package/skills/i3-ui-prototype/assets/templates/enterprise-admin/reference/qa/screenshots/intent-create-html.png +0 -0
- package/skills/i3-ui-prototype/assets/templates/enterprise-admin/reference/qa/screenshots/intent-create-original.png +0 -0
- package/skills/i3-ui-prototype/assets/templates/enterprise-admin/reference/qa/screenshots/models-html.png +0 -0
- package/skills/i3-ui-prototype/assets/templates/enterprise-admin/reference/qa/screenshots/models-original.png +0 -0
- package/skills/i3-ui-prototype/assets/templates/enterprise-admin/reference/qa/screenshots/workbench-html.png +0 -0
- package/skills/i3-ui-prototype/assets/templates/enterprise-admin/reference/qa/screenshots/workbench-original.png +0 -0
- package/skills/i3-ui-prototype/assets/templates/enterprise-admin/reference/qa/selection.json +0 -9
- package/skills/i3-ui-prototype/assets/templates/enterprise-admin/reference/qa/visual-comparison.json +0 -342
- package/skills/i3-ui-prototype/assets/templates/enterprise-admin/reference/readme.md +0 -73
- package/skills/i3-ui-prototype/assets/templates/enterprise-admin/reference/reference.md +0 -59
- package/skills/i3-ui-prototype/assets/templates/enterprise-admin/reference/routes.json +0 -178
- package/skills/i3-ui-prototype/assets/templates/enterprise-admin/reference/runtime/controls.js +0 -99
- package/skills/i3-ui-prototype/assets/templates/enterprise-admin/reference/runtime/dialogs.js +0 -54
- package/skills/i3-ui-prototype/assets/templates/enterprise-admin/reference/runtime/dom.js +0 -264
- package/skills/i3-ui-prototype/assets/templates/enterprise-admin/reference/runtime/forms.js +0 -47
- package/skills/i3-ui-prototype/assets/templates/enterprise-admin/reference/runtime/icons.js +0 -41
- package/skills/i3-ui-prototype/assets/templates/enterprise-admin/reference/runtime/layout.js +0 -47
- package/skills/i3-ui-prototype/assets/templates/enterprise-admin/reference/runtime/router.js +0 -63
- package/skills/i3-ui-prototype/assets/templates/enterprise-admin/reference/runtime/state.js +0 -90
- package/skills/i3-ui-prototype/assets/templates/enterprise-admin/reference/runtime/table.js +0 -41
- package/skills/i3-ui-prototype/assets/templates/enterprise-admin/reference/runtime/widgets.js +0 -8
- package/skills/i3-ui-prototype/assets/templates/enterprise-admin/reference/src/agents/AgentDetail.html +0 -3
- package/skills/i3-ui-prototype/assets/templates/enterprise-admin/reference/src/agents/AgentDetail.js +0 -36
- package/skills/i3-ui-prototype/assets/templates/enterprise-admin/reference/src/agents/AgentEditor.html +0 -2
- package/skills/i3-ui-prototype/assets/templates/enterprise-admin/reference/src/agents/AgentEditor.js +0 -51
- package/skills/i3-ui-prototype/assets/templates/enterprise-admin/reference/src/agents/AgentsPage.html +0 -3
- package/skills/i3-ui-prototype/assets/templates/enterprise-admin/reference/src/agents/AgentsPage.js +0 -48
- package/skills/i3-ui-prototype/assets/templates/enterprise-admin/reference/src/agents/CheckResults.html +0 -2
- package/skills/i3-ui-prototype/assets/templates/enterprise-admin/reference/src/agents/CheckResults.js +0 -6
- package/skills/i3-ui-prototype/assets/templates/enterprise-admin/reference/src/agents/ResourcePicker.html +0 -2
- package/skills/i3-ui-prototype/assets/templates/enterprise-admin/reference/src/agents/ResourcePicker.js +0 -13
- package/skills/i3-ui-prototype/assets/templates/enterprise-admin/reference/src/agents/data.js +0 -24
- package/skills/i3-ui-prototype/assets/templates/enterprise-admin/reference/src/agents/domain.js +0 -32
- package/skills/i3-ui-prototype/assets/templates/enterprise-admin/reference/src/agents/registry.js +0 -25
- package/skills/i3-ui-prototype/assets/templates/enterprise-admin/reference/src/agents/store.js +0 -85
- package/skills/i3-ui-prototype/assets/templates/enterprise-admin/reference/src/intents/IntentClose.html +0 -2
- package/skills/i3-ui-prototype/assets/templates/enterprise-admin/reference/src/intents/IntentClose.js +0 -17
- package/skills/i3-ui-prototype/assets/templates/enterprise-admin/reference/src/intents/IntentCreate.html +0 -2
- package/skills/i3-ui-prototype/assets/templates/enterprise-admin/reference/src/intents/IntentCreate.js +0 -66
- package/skills/i3-ui-prototype/assets/templates/enterprise-admin/reference/src/intents/IntentDecisions.html +0 -3
- package/skills/i3-ui-prototype/assets/templates/enterprise-admin/reference/src/intents/IntentDecisions.js +0 -38
- package/skills/i3-ui-prototype/assets/templates/enterprise-admin/reference/src/intents/IntentDetail.html +0 -2
- package/skills/i3-ui-prototype/assets/templates/enterprise-admin/reference/src/intents/IntentDetail.js +0 -66
- package/skills/i3-ui-prototype/assets/templates/enterprise-admin/reference/src/intents/IntentDocument.html +0 -2
- package/skills/i3-ui-prototype/assets/templates/enterprise-admin/reference/src/intents/IntentDocument.js +0 -5
- package/skills/i3-ui-prototype/assets/templates/enterprise-admin/reference/src/intents/IntentHeader.html +0 -2
- package/skills/i3-ui-prototype/assets/templates/enterprise-admin/reference/src/intents/IntentHeader.js +0 -12
- package/skills/i3-ui-prototype/assets/templates/enterprise-admin/reference/src/intents/IntentHistory.html +0 -2
- package/skills/i3-ui-prototype/assets/templates/enterprise-admin/reference/src/intents/IntentHistory.js +0 -11
- package/skills/i3-ui-prototype/assets/templates/enterprise-admin/reference/src/intents/IntentList.html +0 -2
- package/skills/i3-ui-prototype/assets/templates/enterprise-admin/reference/src/intents/IntentList.js +0 -116
- package/skills/i3-ui-prototype/assets/templates/enterprise-admin/reference/src/intents/IntentReplan.html +0 -2
- package/skills/i3-ui-prototype/assets/templates/enterprise-admin/reference/src/intents/IntentReplan.js +0 -32
- package/skills/i3-ui-prototype/assets/templates/enterprise-admin/reference/src/intents/IntentRevision.html +0 -2
- package/skills/i3-ui-prototype/assets/templates/enterprise-admin/reference/src/intents/IntentRevision.js +0 -49
- package/skills/i3-ui-prototype/assets/templates/enterprise-admin/reference/src/intents/IntentSummary.html +0 -2
- package/skills/i3-ui-prototype/assets/templates/enterprise-admin/reference/src/intents/IntentSummary.js +0 -10
- package/skills/i3-ui-prototype/assets/templates/enterprise-admin/reference/src/intents/IntentWorkspace.html +0 -2
- package/skills/i3-ui-prototype/assets/templates/enterprise-admin/reference/src/intents/IntentWorkspace.js +0 -77
- package/skills/i3-ui-prototype/assets/templates/enterprise-admin/reference/src/intents/data.js +0 -60
- package/skills/i3-ui-prototype/assets/templates/enterprise-admin/reference/src/intents/domain.js +0 -105
- package/skills/i3-ui-prototype/assets/templates/enterprise-admin/reference/src/intents/store.js +0 -212
- package/skills/i3-ui-prototype/assets/templates/enterprise-admin/reference/src/models/AuditPanel.html +0 -2
- package/skills/i3-ui-prototype/assets/templates/enterprise-admin/reference/src/models/AuditPanel.js +0 -18
- package/skills/i3-ui-prototype/assets/templates/enterprise-admin/reference/src/models/ModelDetail.html +0 -2
- package/skills/i3-ui-prototype/assets/templates/enterprise-admin/reference/src/models/ModelDetail.js +0 -23
- package/skills/i3-ui-prototype/assets/templates/enterprise-admin/reference/src/models/ModelEditor.html +0 -2
- package/skills/i3-ui-prototype/assets/templates/enterprise-admin/reference/src/models/ModelEditor.js +0 -78
- package/skills/i3-ui-prototype/assets/templates/enterprise-admin/reference/src/models/ModelGrant.html +0 -2
- package/skills/i3-ui-prototype/assets/templates/enterprise-admin/reference/src/models/ModelGrant.js +0 -55
- package/skills/i3-ui-prototype/assets/templates/enterprise-admin/reference/src/models/ModelReferences.html +0 -2
- package/skills/i3-ui-prototype/assets/templates/enterprise-admin/reference/src/models/ModelReferences.js +0 -26
- package/skills/i3-ui-prototype/assets/templates/enterprise-admin/reference/src/models/ModelRelease.html +0 -2
- package/skills/i3-ui-prototype/assets/templates/enterprise-admin/reference/src/models/ModelRelease.js +0 -38
- package/skills/i3-ui-prototype/assets/templates/enterprise-admin/reference/src/models/ModelStatus.html +0 -2
- package/skills/i3-ui-prototype/assets/templates/enterprise-admin/reference/src/models/ModelStatus.js +0 -7
- package/skills/i3-ui-prototype/assets/templates/enterprise-admin/reference/src/models/ModelTable.html +0 -2
- package/skills/i3-ui-prototype/assets/templates/enterprise-admin/reference/src/models/ModelTable.js +0 -72
- package/skills/i3-ui-prototype/assets/templates/enterprise-admin/reference/src/models/ModelTester.html +0 -2
- package/skills/i3-ui-prototype/assets/templates/enterprise-admin/reference/src/models/ModelTester.js +0 -46
- package/skills/i3-ui-prototype/assets/templates/enterprise-admin/reference/src/models/ModelsPage.html +0 -2
- package/skills/i3-ui-prototype/assets/templates/enterprise-admin/reference/src/models/ModelsPage.js +0 -52
- package/skills/i3-ui-prototype/assets/templates/enterprise-admin/reference/src/models/RowActions.html +0 -2
- package/skills/i3-ui-prototype/assets/templates/enterprise-admin/reference/src/models/RowActions.js +0 -19
- package/skills/i3-ui-prototype/assets/templates/enterprise-admin/reference/src/models/UsagePanel.html +0 -2
- package/skills/i3-ui-prototype/assets/templates/enterprise-admin/reference/src/models/UsagePanel.js +0 -30
- package/skills/i3-ui-prototype/assets/templates/enterprise-admin/reference/src/models/data.js +0 -48
- package/skills/i3-ui-prototype/assets/templates/enterprise-admin/reference/src/models/domain.js +0 -39
- package/skills/i3-ui-prototype/assets/templates/enterprise-admin/reference/src/models/store.js +0 -129
- package/skills/i3-ui-prototype/assets/templates/enterprise-admin/reference/src/operations/IncidentDetail.html +0 -4
- package/skills/i3-ui-prototype/assets/templates/enterprise-admin/reference/src/operations/IncidentDetail.js +0 -21
- package/skills/i3-ui-prototype/assets/templates/enterprise-admin/reference/src/operations/IntentSource.html +0 -2
- package/skills/i3-ui-prototype/assets/templates/enterprise-admin/reference/src/operations/IntentSource.js +0 -8
- package/skills/i3-ui-prototype/assets/templates/enterprise-admin/reference/src/operations/OperationActionDialog.html +0 -2
- package/skills/i3-ui-prototype/assets/templates/enterprise-admin/reference/src/operations/OperationActionDialog.js +0 -37
- package/skills/i3-ui-prototype/assets/templates/enterprise-admin/reference/src/operations/OperationEntry.html +0 -2
- package/skills/i3-ui-prototype/assets/templates/enterprise-admin/reference/src/operations/OperationEntry.js +0 -10
- package/skills/i3-ui-prototype/assets/templates/enterprise-admin/reference/src/operations/OperationsPage.html +0 -2
- package/skills/i3-ui-prototype/assets/templates/enterprise-admin/reference/src/operations/OperationsPage.js +0 -37
- package/skills/i3-ui-prototype/assets/templates/enterprise-admin/reference/src/operations/RepairTrack.html +0 -2
- package/skills/i3-ui-prototype/assets/templates/enterprise-admin/reference/src/operations/RepairTrack.js +0 -49
- package/skills/i3-ui-prototype/assets/templates/enterprise-admin/reference/src/operations/RunDetail.html +0 -4
- package/skills/i3-ui-prototype/assets/templates/enterprise-admin/reference/src/operations/RunDetail.js +0 -22
- package/skills/i3-ui-prototype/assets/templates/enterprise-admin/reference/src/operations/SourceSummary.html +0 -2
- package/skills/i3-ui-prototype/assets/templates/enterprise-admin/reference/src/operations/SourceSummary.js +0 -9
- package/skills/i3-ui-prototype/assets/templates/enterprise-admin/reference/src/operations/commands.js +0 -82
- package/skills/i3-ui-prototype/assets/templates/enterprise-admin/reference/src/operations/examples.js +0 -47
- package/skills/i3-ui-prototype/assets/templates/enterprise-admin/reference/src/operations/model.js +0 -61
- package/skills/i3-ui-prototype/assets/templates/enterprise-admin/reference/src/operations/repair.js +0 -68
- package/skills/i3-ui-prototype/assets/templates/enterprise-admin/reference/src/operations/store.js +0 -55
- package/skills/i3-ui-prototype/assets/templates/enterprise-admin/reference/src/operations/types.js +0 -1
- package/skills/i3-ui-prototype/assets/templates/enterprise-admin/reference/src/operations/workbench.js +0 -18
- package/skills/i3-ui-prototype/assets/templates/enterprise-admin/reference/src/pbc/ManagementTable.html +0 -3
- package/skills/i3-ui-prototype/assets/templates/enterprise-admin/reference/src/pbc/ManagementTable.js +0 -28
- package/skills/i3-ui-prototype/assets/templates/enterprise-admin/reference/src/pbc/PbcCreateEntry.html +0 -2
- package/skills/i3-ui-prototype/assets/templates/enterprise-admin/reference/src/pbc/PbcCreateEntry.js +0 -18
- package/skills/i3-ui-prototype/assets/templates/enterprise-admin/reference/src/pbc/PbcDetail.html +0 -2
- package/skills/i3-ui-prototype/assets/templates/enterprise-admin/reference/src/pbc/PbcDetail.js +0 -31
- package/skills/i3-ui-prototype/assets/templates/enterprise-admin/reference/src/pbc/PbcEditor.html +0 -2
- package/skills/i3-ui-prototype/assets/templates/enterprise-admin/reference/src/pbc/PbcEditor.js +0 -27
- package/skills/i3-ui-prototype/assets/templates/enterprise-admin/reference/src/pbc/PbcLifecycle.html +0 -2
- package/skills/i3-ui-prototype/assets/templates/enterprise-admin/reference/src/pbc/PbcLifecycle.js +0 -16
- package/skills/i3-ui-prototype/assets/templates/enterprise-admin/reference/src/pbc/PbcPage.html +0 -2
- package/skills/i3-ui-prototype/assets/templates/enterprise-admin/reference/src/pbc/PbcPage.js +0 -43
- package/skills/i3-ui-prototype/assets/templates/enterprise-admin/reference/src/pbc/PbcPicker.html +0 -4
- package/skills/i3-ui-prototype/assets/templates/enterprise-admin/reference/src/pbc/PbcPicker.js +0 -34
- package/skills/i3-ui-prototype/assets/templates/enterprise-admin/reference/src/pbc/PbcProgress.html +0 -2
- package/skills/i3-ui-prototype/assets/templates/enterprise-admin/reference/src/pbc/PbcProgress.js +0 -30
- package/skills/i3-ui-prototype/assets/templates/enterprise-admin/reference/src/pbc/PbcWizard.html +0 -3
- package/skills/i3-ui-prototype/assets/templates/enterprise-admin/reference/src/pbc/PbcWizard.js +0 -67
- package/skills/i3-ui-prototype/assets/templates/enterprise-admin/reference/src/pbc/PbcWorkspace.html +0 -2
- package/skills/i3-ui-prototype/assets/templates/enterprise-admin/reference/src/pbc/PbcWorkspace.js +0 -41
- package/skills/i3-ui-prototype/assets/templates/enterprise-admin/reference/src/pbc/PbcsPage.html +0 -2
- package/skills/i3-ui-prototype/assets/templates/enterprise-admin/reference/src/pbc/PbcsPage.js +0 -31
- package/skills/i3-ui-prototype/assets/templates/enterprise-admin/reference/src/pbc/ServiceEditor.html +0 -2
- package/skills/i3-ui-prototype/assets/templates/enterprise-admin/reference/src/pbc/ServiceEditor.js +0 -26
- package/skills/i3-ui-prototype/assets/templates/enterprise-admin/reference/src/pbc/ServiceList.html +0 -2
- package/skills/i3-ui-prototype/assets/templates/enterprise-admin/reference/src/pbc/ServiceList.js +0 -70
- package/skills/i3-ui-prototype/assets/templates/enterprise-admin/reference/src/pbc/data.js +0 -8
- package/skills/i3-ui-prototype/assets/templates/enterprise-admin/reference/src/pbc/domain.js +0 -62
- package/skills/i3-ui-prototype/assets/templates/enterprise-admin/reference/src/pbc/management.js +0 -36
- package/skills/i3-ui-prototype/assets/templates/enterprise-admin/reference/src/pbc/managementStore.js +0 -49
- package/skills/i3-ui-prototype/assets/templates/enterprise-admin/reference/src/pbc/store.js +0 -132
- package/skills/i3-ui-prototype/assets/templates/enterprise-admin/reference/src/permissions/AdminList.html +0 -2
- package/skills/i3-ui-prototype/assets/templates/enterprise-admin/reference/src/permissions/AdminList.js +0 -38
- package/skills/i3-ui-prototype/assets/templates/enterprise-admin/reference/src/permissions/EffectiveGrants.html +0 -2
- package/skills/i3-ui-prototype/assets/templates/enterprise-admin/reference/src/permissions/EffectiveGrants.js +0 -11
- package/skills/i3-ui-prototype/assets/templates/enterprise-admin/reference/src/permissions/GrantEditor.html +0 -2
- package/skills/i3-ui-prototype/assets/templates/enterprise-admin/reference/src/permissions/GrantEditor.js +0 -45
- package/skills/i3-ui-prototype/assets/templates/enterprise-admin/reference/src/permissions/MemberEditor.html +0 -2
- package/skills/i3-ui-prototype/assets/templates/enterprise-admin/reference/src/permissions/MemberEditor.js +0 -54
- package/skills/i3-ui-prototype/assets/templates/enterprise-admin/reference/src/permissions/MembersPage.html +0 -3
- package/skills/i3-ui-prototype/assets/templates/enterprise-admin/reference/src/permissions/MembersPage.js +0 -27
- package/skills/i3-ui-prototype/assets/templates/enterprise-admin/reference/src/permissions/RecordsPage.html +0 -2
- package/skills/i3-ui-prototype/assets/templates/enterprise-admin/reference/src/permissions/RecordsPage.js +0 -12
- package/skills/i3-ui-prototype/assets/templates/enterprise-admin/reference/src/permissions/RoleEditor.html +0 -2
- package/skills/i3-ui-prototype/assets/templates/enterprise-admin/reference/src/permissions/RoleEditor.js +0 -45
- package/skills/i3-ui-prototype/assets/templates/enterprise-admin/reference/src/permissions/RolesPage.html +0 -3
- package/skills/i3-ui-prototype/assets/templates/enterprise-admin/reference/src/permissions/RolesPage.js +0 -38
- package/skills/i3-ui-prototype/assets/templates/enterprise-admin/reference/src/permissions/domain.js +0 -61
- package/skills/i3-ui-prototype/assets/templates/enterprise-admin/reference/src/permissions/state.js +0 -51
- package/skills/i3-ui-prototype/assets/templates/enterprise-admin/reference/src/permissions/store.js +0 -116
- package/skills/i3-ui-prototype/assets/templates/enterprise-admin/reference/src/releases/ReleaseActionDialog.html +0 -2
- package/skills/i3-ui-prototype/assets/templates/enterprise-admin/reference/src/releases/ReleaseActionDialog.js +0 -45
- package/skills/i3-ui-prototype/assets/templates/enterprise-admin/reference/src/releases/ReleaseDetail.html +0 -4
- package/skills/i3-ui-prototype/assets/templates/enterprise-admin/reference/src/releases/ReleaseDetail.js +0 -30
- package/skills/i3-ui-prototype/assets/templates/enterprise-admin/reference/src/releases/ReleaseEditor.html +0 -2
- package/skills/i3-ui-prototype/assets/templates/enterprise-admin/reference/src/releases/ReleaseEditor.js +0 -67
- package/skills/i3-ui-prototype/assets/templates/enterprise-admin/reference/src/releases/ReleaseExecution.html +0 -2
- package/skills/i3-ui-prototype/assets/templates/enterprise-admin/reference/src/releases/ReleaseExecution.js +0 -5
- package/skills/i3-ui-prototype/assets/templates/enterprise-admin/reference/src/releases/ReleasesPage.html +0 -4
- package/skills/i3-ui-prototype/assets/templates/enterprise-admin/reference/src/releases/ReleasesPage.js +0 -60
- package/skills/i3-ui-prototype/assets/templates/enterprise-admin/reference/src/releases/commands.js +0 -157
- package/skills/i3-ui-prototype/assets/templates/enterprise-admin/reference/src/releases/model.js +0 -136
- package/skills/i3-ui-prototype/assets/templates/enterprise-admin/reference/src/releases/store.js +0 -76
- package/skills/i3-ui-prototype/assets/templates/enterprise-admin/reference/src/reviews/ReviewDetail.html +0 -3
- package/skills/i3-ui-prototype/assets/templates/enterprise-admin/reference/src/reviews/ReviewDetail.js +0 -26
- package/skills/i3-ui-prototype/assets/templates/enterprise-admin/reference/src/reviews/ReviewEvidence.html +0 -2
- package/skills/i3-ui-prototype/assets/templates/enterprise-admin/reference/src/reviews/ReviewEvidence.js +0 -14
- package/skills/i3-ui-prototype/assets/templates/enterprise-admin/reference/src/reviews/ReviewProcess.html +0 -2
- package/skills/i3-ui-prototype/assets/templates/enterprise-admin/reference/src/reviews/ReviewProcess.js +0 -113
- package/skills/i3-ui-prototype/assets/templates/enterprise-admin/reference/src/reviews/ReviewsPage.html +0 -3
- package/skills/i3-ui-prototype/assets/templates/enterprise-admin/reference/src/reviews/ReviewsPage.js +0 -62
- package/skills/i3-ui-prototype/assets/templates/enterprise-admin/reference/src/reviews/commands.js +0 -97
- package/skills/i3-ui-prototype/assets/templates/enterprise-admin/reference/src/reviews/model.js +0 -147
- package/skills/i3-ui-prototype/assets/templates/enterprise-admin/reference/src/reviews/store.js +0 -13
- package/skills/i3-ui-prototype/assets/templates/enterprise-admin/reference/src/shared/ColumnSettings.html +0 -2
- package/skills/i3-ui-prototype/assets/templates/enterprise-admin/reference/src/shared/ColumnSettings.js +0 -9
- package/skills/i3-ui-prototype/assets/templates/enterprise-admin/reference/src/shared/ListBatchBar.html +0 -2
- package/skills/i3-ui-prototype/assets/templates/enterprise-admin/reference/src/shared/ListBatchBar.js +0 -8
- package/skills/i3-ui-prototype/assets/templates/enterprise-admin/reference/src/shared/ListDeleteDialog.html +0 -2
- package/skills/i3-ui-prototype/assets/templates/enterprise-admin/reference/src/shared/ListDeleteDialog.js +0 -37
- package/skills/i3-ui-prototype/assets/templates/enterprise-admin/reference/src/shared/ListMore.html +0 -2
- package/skills/i3-ui-prototype/assets/templates/enterprise-admin/reference/src/shared/ListMore.js +0 -8
- package/skills/i3-ui-prototype/assets/templates/enterprise-admin/reference/src/shared/RecordMetadata.html +0 -2
- package/skills/i3-ui-prototype/assets/templates/enterprise-admin/reference/src/shared/RecordMetadata.js +0 -17
- package/skills/i3-ui-prototype/assets/templates/enterprise-admin/reference/src/shared/columns.js +0 -32
- package/skills/i3-ui-prototype/assets/templates/enterprise-admin/reference/src/shared/deliveryGuide.js +0 -49
- package/skills/i3-ui-prototype/assets/templates/enterprise-admin/reference/src/shared/deliveryView.js +0 -12
- package/skills/i3-ui-prototype/assets/templates/enterprise-admin/reference/src/shared/listBatch.js +0 -15
- package/skills/i3-ui-prototype/assets/templates/enterprise-admin/reference/src/shared/listSelection.js +0 -37
- package/skills/i3-ui-prototype/assets/templates/enterprise-admin/reference/src/shared/policy.js +0 -68
- package/skills/i3-ui-prototype/assets/templates/enterprise-admin/reference/src/shared/session.js +0 -44
- package/skills/i3-ui-prototype/assets/templates/enterprise-admin/reference/src/shell/ConfirmationDialog.html +0 -2
- package/skills/i3-ui-prototype/assets/templates/enterprise-admin/reference/src/shell/ConfirmationDialog.js +0 -25
- package/skills/i3-ui-prototype/assets/templates/enterprise-admin/reference/src/shell/ConsoleShell.html +0 -2
- package/skills/i3-ui-prototype/assets/templates/enterprise-admin/reference/src/shell/ConsoleShell.js +0 -53
- package/skills/i3-ui-prototype/assets/templates/enterprise-admin/reference/src/shell/PrototypeGuide.html +0 -10
- package/skills/i3-ui-prototype/assets/templates/enterprise-admin/reference/src/shell/PrototypeGuide.js +0 -30
- package/skills/i3-ui-prototype/assets/templates/enterprise-admin/reference/src/shell/ScopePage.html +0 -2
- package/skills/i3-ui-prototype/assets/templates/enterprise-admin/reference/src/shell/ScopePage.js +0 -10
- package/skills/i3-ui-prototype/assets/templates/enterprise-admin/reference/src/shell/SessionDialog.html +0 -2
- package/skills/i3-ui-prototype/assets/templates/enterprise-admin/reference/src/shell/SessionDialog.js +0 -9
- package/skills/i3-ui-prototype/assets/templates/enterprise-admin/reference/src/shell/confirmation.js +0 -3
- package/skills/i3-ui-prototype/assets/templates/enterprise-admin/reference/src/shell/navigation.js +0 -19
- package/skills/i3-ui-prototype/assets/templates/enterprise-admin/reference/src/specs/SpecDocument.html +0 -2
- package/skills/i3-ui-prototype/assets/templates/enterprise-admin/reference/src/specs/SpecDocument.js +0 -8
- package/skills/i3-ui-prototype/assets/templates/enterprise-admin/reference/src/specs/SpecEdit.html +0 -2
- package/skills/i3-ui-prototype/assets/templates/enterprise-admin/reference/src/specs/SpecEdit.js +0 -32
- package/skills/i3-ui-prototype/assets/templates/enterprise-admin/reference/src/specs/SpecHeader.html +0 -2
- package/skills/i3-ui-prototype/assets/templates/enterprise-admin/reference/src/specs/SpecHeader.js +0 -15
- package/skills/i3-ui-prototype/assets/templates/enterprise-admin/reference/src/specs/SpecHistory.html +0 -2
- package/skills/i3-ui-prototype/assets/templates/enterprise-admin/reference/src/specs/SpecHistory.js +0 -11
- package/skills/i3-ui-prototype/assets/templates/enterprise-admin/reference/src/specs/SpecReview.html +0 -2
- package/skills/i3-ui-prototype/assets/templates/enterprise-admin/reference/src/specs/SpecReview.js +0 -57
- package/skills/i3-ui-prototype/assets/templates/enterprise-admin/reference/src/specs/SpecWorkspace.html +0 -2
- package/skills/i3-ui-prototype/assets/templates/enterprise-admin/reference/src/specs/SpecWorkspace.js +0 -37
- package/skills/i3-ui-prototype/assets/templates/enterprise-admin/reference/src/specs/data.js +0 -20
- package/skills/i3-ui-prototype/assets/templates/enterprise-admin/reference/src/specs/domain.js +0 -55
- package/skills/i3-ui-prototype/assets/templates/enterprise-admin/reference/src/specs/store.js +0 -151
- package/skills/i3-ui-prototype/assets/templates/enterprise-admin/reference/src/tasks/ArtifactDetail.html +0 -3
- package/skills/i3-ui-prototype/assets/templates/enterprise-admin/reference/src/tasks/ArtifactDetail.js +0 -18
- package/skills/i3-ui-prototype/assets/templates/enterprise-admin/reference/src/tasks/TaskCreate.html +0 -2
- package/skills/i3-ui-prototype/assets/templates/enterprise-admin/reference/src/tasks/TaskCreate.js +0 -40
- package/skills/i3-ui-prototype/assets/templates/enterprise-admin/reference/src/tasks/TaskDetail.html +0 -2
- package/skills/i3-ui-prototype/assets/templates/enterprise-admin/reference/src/tasks/TaskDetail.js +0 -51
- package/skills/i3-ui-prototype/assets/templates/enterprise-admin/reference/src/tasks/TaskLaunch.html +0 -2
- package/skills/i3-ui-prototype/assets/templates/enterprise-admin/reference/src/tasks/TaskLaunch.js +0 -9
- package/skills/i3-ui-prototype/assets/templates/enterprise-admin/reference/src/tasks/TasksPage.html +0 -5
- package/skills/i3-ui-prototype/assets/templates/enterprise-admin/reference/src/tasks/TasksPage.js +0 -48
- package/skills/i3-ui-prototype/assets/templates/enterprise-admin/reference/src/tasks/domain.js +0 -204
- package/skills/i3-ui-prototype/assets/templates/enterprise-admin/reference/src/tasks/exampleSource.js +0 -22
- package/skills/i3-ui-prototype/assets/templates/enterprise-admin/reference/src/tasks/registry.js +0 -135
- package/skills/i3-ui-prototype/assets/templates/enterprise-admin/reference/src/tasks/store.js +0 -137
- package/skills/i3-ui-prototype/assets/templates/enterprise-admin/reference/src/workbench/WorkbenchPage.html +0 -3
- package/skills/i3-ui-prototype/assets/templates/enterprise-admin/reference/src/workbench/WorkbenchPage.js +0 -36
- package/skills/i3-ui-prototype/assets/templates/enterprise-admin/reference/src/workbench/model.js +0 -56
- package/skills/i3-ui-prototype/assets/templates/enterprise-admin/reference/src/workbench/store.js +0 -15
- package/skills/i3-ui-prototype/assets/templates/enterprise-admin/reference/src/workflows/FlowCanvas.html +0 -2
- package/skills/i3-ui-prototype/assets/templates/enterprise-admin/reference/src/workflows/FlowCanvas.js +0 -27
- package/skills/i3-ui-prototype/assets/templates/enterprise-admin/reference/src/workflows/FlowDetail.html +0 -4
- package/skills/i3-ui-prototype/assets/templates/enterprise-admin/reference/src/workflows/FlowDetail.js +0 -31
- package/skills/i3-ui-prototype/assets/templates/enterprise-admin/reference/src/workflows/FlowEditor.html +0 -2
- package/skills/i3-ui-prototype/assets/templates/enterprise-admin/reference/src/workflows/FlowEditor.js +0 -68
- package/skills/i3-ui-prototype/assets/templates/enterprise-admin/reference/src/workflows/WorkflowsPage.html +0 -5
- package/skills/i3-ui-prototype/assets/templates/enterprise-admin/reference/src/workflows/WorkflowsPage.js +0 -55
- package/skills/i3-ui-prototype/assets/templates/enterprise-admin/reference/src/workflows/data.js +0 -16
- package/skills/i3-ui-prototype/assets/templates/enterprise-admin/reference/src/workflows/domain.js +0 -83
- package/skills/i3-ui-prototype/assets/templates/enterprise-admin/reference/src/workflows/registry.js +0 -18
- package/skills/i3-ui-prototype/assets/templates/enterprise-admin/reference/src/workflows/store.js +0 -61
- package/skills/i3-ui-prototype/assets/templates/enterprise-admin/reference/styles/admin.css +0 -60
- package/skills/i3-ui-prototype/assets/templates/enterprise-admin/reference/styles/agents.css +0 -46
- package/skills/i3-ui-prototype/assets/templates/enterprise-admin/reference/styles/antdv.css +0 -295
- package/skills/i3-ui-prototype/assets/templates/enterprise-admin/reference/styles/app.css +0 -102
- package/skills/i3-ui-prototype/assets/templates/enterprise-admin/reference/styles/delivery.css +0 -4
- package/skills/i3-ui-prototype/assets/templates/enterprise-admin/reference/styles/intents.css +0 -37
- package/skills/i3-ui-prototype/assets/templates/enterprise-admin/reference/styles/native.css +0 -22
- package/skills/i3-ui-prototype/assets/templates/enterprise-admin/reference/styles/operations.css +0 -2
- package/skills/i3-ui-prototype/assets/templates/enterprise-admin/reference/styles/pbc.css +0 -3
- package/skills/i3-ui-prototype/assets/templates/enterprise-admin/reference/styles/permissions.css +0 -22
- package/skills/i3-ui-prototype/assets/templates/enterprise-admin/reference/styles/pro.css +0 -1
- package/skills/i3-ui-prototype/assets/templates/enterprise-admin/reference/styles/releases.css +0 -4
- package/skills/i3-ui-prototype/assets/templates/enterprise-admin/reference/styles/reset.css +0 -246
- package/skills/i3-ui-prototype/assets/templates/enterprise-admin/reference/styles/reviews.css +0 -8
- package/skills/i3-ui-prototype/assets/templates/enterprise-admin/reference/styles/tasks.css +0 -6
- package/skills/i3-ui-prototype/assets/templates/enterprise-admin/reference/styles/tokens.css +0 -15
- package/skills/i3-ui-prototype/assets/templates/enterprise-admin/reference/styles/workbench.css +0 -61
- package/skills/i3-ui-prototype/assets/templates/enterprise-admin/reference/styles/workflows.css +0 -1
- package/skills/i3-ui-prototype/assets/templates/enterprise-admin/reference/tests/admin-rules.test.js +0 -96
- package/skills/i3-ui-prototype/assets/templates/enterprise-admin/reference/tests/agents.test.js +0 -14
- package/skills/i3-ui-prototype/assets/templates/enterprise-admin/reference/tests/intent-state.test.js +0 -37
- package/skills/i3-ui-prototype/assets/templates/enterprise-admin/reference/tests/list-batch.test.js +0 -44
- package/skills/i3-ui-prototype/assets/templates/enterprise-admin/reference/tests/operation-fixtures.js +0 -19
- package/skills/i3-ui-prototype/assets/templates/enterprise-admin/reference/tests/operation-repair.test.js +0 -14
- package/skills/i3-ui-prototype/assets/templates/enterprise-admin/reference/tests/operations.test.js +0 -25
- package/skills/i3-ui-prototype/assets/templates/enterprise-admin/reference/tests/pbc-management.test.js +0 -17
- package/skills/i3-ui-prototype/assets/templates/enterprise-admin/reference/tests/pbc-state.test.js +0 -24
- package/skills/i3-ui-prototype/assets/templates/enterprise-admin/reference/tests/permission-config.test.js +0 -23
- package/skills/i3-ui-prototype/assets/templates/enterprise-admin/reference/tests/permissions.test.js +0 -24
- package/skills/i3-ui-prototype/assets/templates/enterprise-admin/reference/tests/releases.test.js +0 -50
- package/skills/i3-ui-prototype/assets/templates/enterprise-admin/reference/tests/reviews.test.js +0 -36
- package/skills/i3-ui-prototype/assets/templates/enterprise-admin/reference/tests/runtime-forms-router.test.js +0 -28
- package/skills/i3-ui-prototype/assets/templates/enterprise-admin/reference/tests/runtime-state.test.js +0 -42
- package/skills/i3-ui-prototype/assets/templates/enterprise-admin/reference/tests/runtime-stores.test.js +0 -16
- package/skills/i3-ui-prototype/assets/templates/enterprise-admin/reference/tests/spec-state.test.js +0 -11
- package/skills/i3-ui-prototype/assets/templates/enterprise-admin/reference/tests/tasks.test.js +0 -27
- package/skills/i3-ui-prototype/assets/templates/enterprise-admin/reference/tests/workbench.test.js +0 -34
- package/skills/i3-ui-prototype/assets/templates/enterprise-admin/reference/tests/workflows.test.js +0 -16
- package/skills/i3-ui-prototype/assets/templates/enterprise-admin/reference/tools/convert.mjs +0 -168
- package/skills/i3-ui-prototype/assets/templates/enterprise-admin/reference/tools/serve.mjs +0 -7
- package/skills/i3-ui-prototype/assets/templates/enterprise-admin/reference/tools/styles.mjs +0 -11
- package/skills/i3-ui-prototype/assets/templates/enterprise-admin/reference/tools/verify.mjs +0 -24
- package/skills/i3-ui-prototype/assets/templates/enterprise-admin/serve.cjs +0 -16
- package/skills/i3-ui-prototype/assets/templates/enterprise-admin/template-inventory.json +0 -28791
- package/skills/i3-ui-prototype/assets/templates/enterprise-admin/template.json +0 -9
- package/skills/i3-ui-prototype/assets/templates/enterprise-admin/usability.css +0 -44
- package/skills/i3-ui-prototype/assets/templates/gallery/index.html +0 -40
- package/skills/i3-ui-prototype/assets/templates/generation-options.js +0 -42
- package/skills/i3-ui-prototype/assets/templates/index.html +0 -3
- package/skills/i3-ui-prototype/assets/templates/modern-workspace/manifest.json +0 -9
- package/skills/i3-ui-prototype/assets/templates/modern-workspace/preset.json +0 -6
- package/skills/i3-ui-prototype/assets/templates/presentation.html +0 -17
- package/skills/i3-ui-prototype/assets/templates/serve-gallery.cjs +0 -23
- package/skills/i3-ui-prototype/references/artifact-contract.md +0 -66
- package/skills/i3-ui-prototype/references/content-template.md +0 -81
- package/skills/i3-ui-prototype/references/enterprise-admin.md +0 -44
- package/skills/i3-ui-prototype/references/entry-contract.md +0 -71
- package/skills/i3-ui-prototype/references/execution-evidence.md +0 -51
- package/skills/i3-ui-prototype/references/expert-adapter.md +0 -76
- package/skills/i3-ui-prototype/references/framework-contract.md +0 -76
- package/skills/i3-ui-prototype/references/generation-contract.md +0 -122
- package/skills/i3-ui-prototype/references/interaction-acceptance.md +0 -169
- package/skills/i3-ui-prototype/references/legacy-native.md +0 -58
- package/skills/i3-ui-prototype/references/optional-skills.md +0 -63
- package/skills/i3-ui-prototype/references/project-layout.md +0 -92
- package/skills/i3-ui-prototype/references/template-adapters.md +0 -63
- package/skills/i3-ui-prototype/references/workflow-contract.md +0 -77
- package/skills/i3-ui-prototype/scripts/adapters/easel-html.cjs +0 -30
- package/skills/i3-ui-prototype/scripts/adapters/legacy-html.cjs +0 -28
- package/skills/i3-ui-prototype/scripts/browser-workspace.cjs +0 -72
- package/skills/i3-ui-prototype/scripts/buddy-host.cjs +0 -40
- package/skills/i3-ui-prototype/scripts/check-design-provider.cjs +0 -9
- package/skills/i3-ui-prototype/scripts/check-prototype.cjs +0 -14
- package/skills/i3-ui-prototype/scripts/codebuddy-context.cjs +0 -92
- package/skills/i3-ui-prototype/scripts/codebuddy-hook.cjs +0 -298
- package/skills/i3-ui-prototype/scripts/codebuddy-ide-source.cjs +0 -69
- package/skills/i3-ui-prototype/scripts/codebuddy-registration.cjs +0 -125
- package/skills/i3-ui-prototype/scripts/content-template.cjs +0 -98
- package/skills/i3-ui-prototype/scripts/design-provider-discovery.cjs +0 -128
- package/skills/i3-ui-prototype/scripts/enterprise-template.cjs +0 -104
- package/skills/i3-ui-prototype/scripts/execution-assertions.cjs +0 -43
- package/skills/i3-ui-prototype/scripts/execution-diagnostics.cjs +0 -91
- package/skills/i3-ui-prototype/scripts/execution-evidence.cjs +0 -177
- package/skills/i3-ui-prototype/scripts/execution-gates.cjs +0 -216
- package/skills/i3-ui-prototype/scripts/execution-policy.cjs +0 -62
- package/skills/i3-ui-prototype/scripts/execution-recovery.cjs +0 -58
- package/skills/i3-ui-prototype/scripts/execution-runtime.cjs +0 -69
- package/skills/i3-ui-prototype/scripts/generation-assets.cjs +0 -18
- package/skills/i3-ui-prototype/scripts/generation-contract.cjs +0 -214
- package/skills/i3-ui-prototype/scripts/generation-evidence.cjs +0 -50
- package/skills/i3-ui-prototype/scripts/generation-replan.cjs +0 -34
- package/skills/i3-ui-prototype/scripts/hosts/codebuddy.cjs +0 -21
- package/skills/i3-ui-prototype/scripts/init-prototype.cjs +0 -8
- package/skills/i3-ui-prototype/scripts/manage-baseline.cjs +0 -11
- package/skills/i3-ui-prototype/scripts/native-browser.cjs +0 -785
- package/skills/i3-ui-prototype/scripts/native-build.cjs +0 -91
- package/skills/i3-ui-prototype/scripts/native-command.cjs +0 -35
- package/skills/i3-ui-prototype/scripts/native-delivery.cjs +0 -104
- package/skills/i3-ui-prototype/scripts/native-devtools.cjs +0 -92
- package/skills/i3-ui-prototype/scripts/native-files.cjs +0 -44
- package/skills/i3-ui-prototype/scripts/native-pilot-lib.cjs +0 -290
- package/skills/i3-ui-prototype/scripts/native-pilot.cjs +0 -59
- package/skills/i3-ui-prototype/scripts/native-tool-name.cjs +0 -5
- package/skills/i3-ui-prototype/scripts/native-tool-result.cjs +0 -14
- package/skills/i3-ui-prototype/scripts/optional-skill-install.cjs +0 -203
- package/skills/i3-ui-prototype/scripts/project-registry.cjs +0 -126
- package/skills/i3-ui-prototype/scripts/prototype-dependencies.cjs +0 -103
- package/skills/i3-ui-prototype/scripts/prototype-hooks.cjs +0 -94
- package/skills/i3-ui-prototype/scripts/prototype-lib.cjs +0 -277
- package/skills/i3-ui-prototype/scripts/prototype-locations.cjs +0 -69
- package/skills/i3-ui-prototype/scripts/ptc-callbacks.cjs +0 -131
- package/skills/i3-ui-prototype/scripts/sync-template.cjs +0 -19
- package/skills/i3-ui-prototype/scripts/template-adapters.cjs +0 -89
- package/skills/i3-ui-prototype/scripts/template-contract.cjs +0 -407
- package/skills/i3-ui-prototype/scripts/template-inventory.cjs +0 -78
- package/skills/i3-ui-prototype/scripts/validate-result.cjs +0 -117
|
@@ -1,155 +0,0 @@
|
|
|
1
|
-
{
|
|
2
|
-
"$schema": "https://json-schema.org/draft/2020-12/schema",
|
|
3
|
-
"$id": "urn:i3:i3-enterprise-sop:review-output:v1",
|
|
4
|
-
"title": "企业 SOP 只读文档审查会话输出 v1",
|
|
5
|
-
"description": "只约束审查报告结构;不是业务 handoff.json、批准或测试结果。",
|
|
6
|
-
"type": "object",
|
|
7
|
-
"required": [
|
|
8
|
-
"verdict",
|
|
9
|
-
"findings",
|
|
10
|
-
"checkedFacts",
|
|
11
|
-
"unread"
|
|
12
|
-
],
|
|
13
|
-
"additionalProperties": false,
|
|
14
|
-
"properties": {
|
|
15
|
-
"verdict": {
|
|
16
|
-
"type": "string",
|
|
17
|
-
"enum": [
|
|
18
|
-
"交人工审阅",
|
|
19
|
-
"可交人工审阅",
|
|
20
|
-
"需修订",
|
|
21
|
-
"无法判断"
|
|
22
|
-
]
|
|
23
|
-
},
|
|
24
|
-
"findings": {
|
|
25
|
-
"type": "array",
|
|
26
|
-
"items": {
|
|
27
|
-
"$ref": "#/$defs/finding"
|
|
28
|
-
}
|
|
29
|
-
},
|
|
30
|
-
"checkedFacts": {
|
|
31
|
-
"type": "array",
|
|
32
|
-
"minItems": 1,
|
|
33
|
-
"items": {
|
|
34
|
-
"$ref": "#/$defs/fact"
|
|
35
|
-
}
|
|
36
|
-
},
|
|
37
|
-
"unread": {
|
|
38
|
-
"type": "array",
|
|
39
|
-
"items": {
|
|
40
|
-
"type": "string",
|
|
41
|
-
"minLength": 1
|
|
42
|
-
}
|
|
43
|
-
}
|
|
44
|
-
},
|
|
45
|
-
"$defs": {
|
|
46
|
-
"reference": {
|
|
47
|
-
"type": "object",
|
|
48
|
-
"required": [
|
|
49
|
-
"path",
|
|
50
|
-
"startLine",
|
|
51
|
-
"quote"
|
|
52
|
-
],
|
|
53
|
-
"additionalProperties": false,
|
|
54
|
-
"properties": {
|
|
55
|
-
"path": {
|
|
56
|
-
"type": "string",
|
|
57
|
-
"minLength": 1
|
|
58
|
-
},
|
|
59
|
-
"startLine": {
|
|
60
|
-
"type": "integer",
|
|
61
|
-
"minimum": 1
|
|
62
|
-
},
|
|
63
|
-
"endLine": {
|
|
64
|
-
"type": "integer",
|
|
65
|
-
"minimum": 1
|
|
66
|
-
},
|
|
67
|
-
"quote": {
|
|
68
|
-
"type": "string",
|
|
69
|
-
"minLength": 1
|
|
70
|
-
},
|
|
71
|
-
"role": {
|
|
72
|
-
"type": "string",
|
|
73
|
-
"minLength": 1,
|
|
74
|
-
"description": "可选的机器来源标识。实际作业必须由build_review_schema(scope)注入sourceRoles键的枚举;普通资料引用省略role,资料性质写入reason或conclusion。"
|
|
75
|
-
}
|
|
76
|
-
}
|
|
77
|
-
},
|
|
78
|
-
"finding": {
|
|
79
|
-
"type": "object",
|
|
80
|
-
"required": [
|
|
81
|
-
"id",
|
|
82
|
-
"severity",
|
|
83
|
-
"target",
|
|
84
|
-
"source",
|
|
85
|
-
"reason",
|
|
86
|
-
"suggestion"
|
|
87
|
-
],
|
|
88
|
-
"additionalProperties": false,
|
|
89
|
-
"properties": {
|
|
90
|
-
"id": {
|
|
91
|
-
"type": "string",
|
|
92
|
-
"minLength": 1
|
|
93
|
-
},
|
|
94
|
-
"severity": {
|
|
95
|
-
"type": "string",
|
|
96
|
-
"enum": [
|
|
97
|
-
"low",
|
|
98
|
-
"medium",
|
|
99
|
-
"high",
|
|
100
|
-
"critical"
|
|
101
|
-
]
|
|
102
|
-
},
|
|
103
|
-
"kind": {
|
|
104
|
-
"type": "string",
|
|
105
|
-
"enum": [
|
|
106
|
-
"contradiction",
|
|
107
|
-
"evidence-gap",
|
|
108
|
-
"clarification",
|
|
109
|
-
"optional"
|
|
110
|
-
]
|
|
111
|
-
},
|
|
112
|
-
"target": {
|
|
113
|
-
"$ref": "#/$defs/reference"
|
|
114
|
-
},
|
|
115
|
-
"source": {
|
|
116
|
-
"$ref": "#/$defs/reference"
|
|
117
|
-
},
|
|
118
|
-
"reason": {
|
|
119
|
-
"type": "string",
|
|
120
|
-
"minLength": 1
|
|
121
|
-
},
|
|
122
|
-
"suggestion": {
|
|
123
|
-
"type": "string",
|
|
124
|
-
"minLength": 1
|
|
125
|
-
}
|
|
126
|
-
}
|
|
127
|
-
},
|
|
128
|
-
"fact": {
|
|
129
|
-
"type": "object",
|
|
130
|
-
"required": [
|
|
131
|
-
"id",
|
|
132
|
-
"target",
|
|
133
|
-
"source",
|
|
134
|
-
"conclusion"
|
|
135
|
-
],
|
|
136
|
-
"additionalProperties": false,
|
|
137
|
-
"properties": {
|
|
138
|
-
"id": {
|
|
139
|
-
"type": "string",
|
|
140
|
-
"minLength": 1
|
|
141
|
-
},
|
|
142
|
-
"target": {
|
|
143
|
-
"$ref": "#/$defs/reference"
|
|
144
|
-
},
|
|
145
|
-
"source": {
|
|
146
|
-
"$ref": "#/$defs/reference"
|
|
147
|
-
},
|
|
148
|
-
"conclusion": {
|
|
149
|
-
"type": "string",
|
|
150
|
-
"minLength": 1
|
|
151
|
-
}
|
|
152
|
-
}
|
|
153
|
-
}
|
|
154
|
-
}
|
|
155
|
-
}
|
|
@@ -1,329 +0,0 @@
|
|
|
1
|
-
#!/usr/bin/env python3
|
|
2
|
-
"""One explicit CodeBuddy review/recheck in a fresh read-only tool context.
|
|
3
|
-
|
|
4
|
-
Evidence goes outside the project. This is not a workflow scheduler, a business
|
|
5
|
-
approval mechanism, or an operating-system filesystem sandbox.
|
|
6
|
-
"""
|
|
7
|
-
import argparse
|
|
8
|
-
import copy
|
|
9
|
-
import hashlib
|
|
10
|
-
import importlib.util
|
|
11
|
-
import json
|
|
12
|
-
import os
|
|
13
|
-
from pathlib import Path
|
|
14
|
-
import shutil
|
|
15
|
-
import subprocess
|
|
16
|
-
import sys
|
|
17
|
-
import time
|
|
18
|
-
import uuid
|
|
19
|
-
|
|
20
|
-
sys.dont_write_bytecode = True
|
|
21
|
-
HERE = Path(__file__).resolve().parent
|
|
22
|
-
RESOURCES = HERE.parent
|
|
23
|
-
VERSION = '0.2.0'
|
|
24
|
-
# Filled from the reviewed source and its existing branding transform. These are
|
|
25
|
-
# compatibility fingerprints, not a lock on business documents or project edits.
|
|
26
|
-
CONTEXT_BASELINES = {"readme.md":["c4a7a2cdd5f81612ec58f15a24c682ceb329820b1b36b9becdaec3dcba2c46dc","79da8b70f3975046a35cd464cb690a4f2f87290dce41b980c74208926d97a200"],"ad/readme.md":["70b8e0b39b3e8c2ee6f1123fd0f57a10d9848c697ab43240970414b7f79a0246","0052fe43876055749d6988f9ad246c08bdfa3929985bcb53cc9d89e063ba0056"],"ad/assets-manifest.json":["952a14ca0e675d6faca73ba751cda6695b3244bbff37e5e371bae8574fcaa431","7b6e771687f4a50da500cca262620235d2c6171e71c41a227e7413619a3f5703"],"ad/prompts/02-review.md":["35178174982907ee623fa89a8f69cb7fc20bfbcef98b0c33a14c861e7dffd5ad","11a5b03a62ff7e78cff62881e3e22c2b14b5f65024264cb97c8893f8b47f228d"],"ad/prompts/04-recheck.md":["702e3c221a4b5e688eb13dccd9edc4bf8ccbe2f7b8b7aa2ca8c1af46434806e8","239031036b1877a88deb221355c39dd0dd25894b464487be73a718ebe227cdd8"],"ad/templates/ad.md":["0e48c7149792aede3b5c7be70b65b7e4f9b312889760f2fb4105d184162abeae","37d3f77efe23b85ebaf50cfad09d92344227d4f778ea7e965c4fea70d89817bb"],"brd/readme.md":["ea267d7072a0b257b82c79fe3524d3d13dd9360c7485e77edcde7dba3631d3b8","b0ac06d121b4fa34a3cdbaa4a43fd453fa08e20ead81679c2d90d1afaf865717"],"brd/assets-manifest.json":["5925d5f7e402602d81208a82311e505ea79e6a32edd6e1afa78ab20db40c9f5c","f4178f99b5210645dd2b03f5af2f0bfd839c8a8ae415f97be36347c217dfda1e"],"brd/prompts/02-review.md":["d93e6123e1149fad579dabf82de32bd4172a5fb1da19fb8ca4e6f3c791d0543e","45971e0896c80253f92de03de1246cd2ee0edafbe411144e72be8665916b35d0"],"brd/prompts/04-recheck.md":["573a81502f554a05c78c25e55385b67116c79d67914e4b235d766d4fe483881d","422442b1491457e8e05d1b1ec3df240d835fdce817ac2fb8eb324d813f52d7bb"],"brd/templates/brd.md":["2c9c4061e720877e984c6094232f797ebdf0380b8ff27693ac8d930fe648c47c","777f408fb596ec5f90ea8507d3b59974df11dde647df7edef070b30ee6f380af"],"handoff-contract.md":["0a38d6858e298f14e1a8cb07b3f67649f450cfb47e894d19835a014185c3df53","47337cadc2060a8ef24f2d00ea88ee712e47ac0ac7390dcaa7953263a666d110"],"lifecycle-contract.md":["0fd7446bf53b43795dcbde03832c7d8a1e7680ee53b8c1898185da8aa8a444c0","479a6ea40077594229fbddc8971ad92a73aad6a0f83b65ae6c0bf7d06b566a8b"],"prd/readme.md":["60603eaa38487fa2eb6ead60378ba4f832830c2dafc4fee612dac3a0679a05e3","c9667e22973d6c7b2a5e14d8fa6311fd99192a46404339e9cab5d044fc6038da"],"prd/assets-manifest.json":["efba4a5c287f89cde8a6f621b17faddf443577fe9afb60f9e7d3ce314c815381","b0d0e3e33b799ab26409a6c97c9230e485039df230001f185734209d3ec2db95"],"prd/prompts/02-review.md":["83b03378d7dec4a18217571e777b715a8aba02443ac453f3a5e118f114882f09","03278975fb19b69d9023ec834c450322582d92672422f4b04e555cac8472b07e"],"prd/prompts/04-recheck.md":["33f6d6f20b2c08daaf6ec833fd775c3ad73fa70803c7e386f8f27395e46521ae","bb457ebaadf55edd0aa913c4228b66786d2727c1b91d81abd4e8c3a2e5e22638"],"prd/templates/prd.md":["1c728d4865ae1ad3936a735d3543c21f4a06fd195f7f94c5ac721d560ca10aee","22f7b09d1b9914975d602e24f39ce7e63d945493f55a4654b6484a8569b73a8a"],"review-handoff.md":["ebe62b4a7d50bfd7a54dcff6897686a2fd3736302242a9144b6281ddff6085cb","a04238ea42eda2c9ed198a20917f589a53ee3a301472b312ffa60a68614115e3"],"stages.json":["e25f2ae57486912df3f4505d4af4b813e49dcb06998ae4480c5b7267a5e06ae0","ccf1cea6e4f2efc5a487f41915387c520af3792dcf20b5194ff97f8aec934942"],"template-contracts.md":["43c9fccc2319f476514df2c14a4520941b1176f77ef27a72022458db61aaee2b","b9b6ee9d936b7745a88616e5ffd77992fead16d89092b34147ab2c33237397ad"],"testcase/readme.md":["0919de2fa32c3c66383b357b1dc3e0142da2c7d07efbe943e9c34dfd6db9827c","4c24ab0f434e414afd94437cc5caf8bd27e454eb832335eb9d97c1ea702bcb0c"],"testcase/assets-manifest.json":["c9e017fd85b7e2382748cc4bd4017a0c9c62c6c05fc4b94a211def1b264dd95d","c3495698bff33906f4e458e9d09dba7ea984cf9964fc38d48d8954f312b370c6"],"testcase/prompts/02-review.md":["eb78b1c515e720be6910ae7d08d0f3833959e9684159dfb978046ae266c93fd6","7b8d6bc672bba40f191bc154efe48971024f988e990c4a5f9b0f3e2a9a8b3a26"],"testcase/prompts/04-recheck.md":["18555bad45f167ee121310b4e627549317d5bdeddf48596c16e05f8a98121b50","3d81f78a3a18a76abed8e18e2771c64063b830c6c1aec10c2a454257201da758"],"testcase/templates/testcase.md":["9b3d04762a37ca05f99567b2f1beb371f0d10a65e1c7ad1bdebbe6c9af71b914","ffb317bb73397a350fbd0b98fa4bcb6c03773c223dd06fcf6c94420cba19cf6a"],"verification/readme.md":["2ce5c4984bd2da9b1c3b451eeecf79fc50b189bea32844bb337592a86032b04c","fa39cdc3639911676397e891ed85d11558abf36ff8f0397384dd9b76d655c4a3"],"verification/review-output.schema.json":["366dcfe39d5dca6a99b6eff5af400f288ed164cca04e28de316b36cadcfc42b1","70e2e5c66c72fc52193310a5b52f43faaabda192619baa365751c398b4a4d944"]} # s10-fixed-context-baselines
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
def module(name, path):
|
|
30
|
-
spec = importlib.util.spec_from_file_location(name, path)
|
|
31
|
-
value = importlib.util.module_from_spec(spec)
|
|
32
|
-
spec.loader.exec_module(value)
|
|
33
|
-
return value
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
reads = module('s09_read_evidence', HERE / 'check_reads.py')
|
|
37
|
-
native = module('s09_native_evidence', HERE / 'check_native_execution.py')
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
def save(path, value):
|
|
41
|
-
path.write_text(json.dumps(value, ensure_ascii=False, indent=2) + '\n')
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
def file_at(base, raw, boundary=None):
|
|
45
|
-
if not isinstance(raw, str) or not raw.strip():
|
|
46
|
-
raise ValueError('input_path_missing')
|
|
47
|
-
path = (base / raw).resolve()
|
|
48
|
-
if not path.is_relative_to(boundary or base):
|
|
49
|
-
raise ValueError('outside_project_or_selected_resource:' + raw)
|
|
50
|
-
if not path.is_file():
|
|
51
|
-
raise ValueError('input_unreadable:' + raw)
|
|
52
|
-
path.read_text() # Fail before launch on unreadable or non-text input.
|
|
53
|
-
return path
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
def fingerprint(path):
|
|
57
|
-
return {'sha256': hashlib.sha256(path.read_bytes()).hexdigest(),
|
|
58
|
-
'mode': path.stat().st_mode & 0o777}
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
def prepare(project_root, request, *, resource_root=RESOURCES, session_id=None):
|
|
62
|
-
root, resources = Path(project_root).resolve(), Path(resource_root).resolve()
|
|
63
|
-
if not root.is_dir():
|
|
64
|
-
raise ValueError('project_root_unavailable')
|
|
65
|
-
if request.get('action') not in ('review', 'recheck'):
|
|
66
|
-
raise ValueError('review_action_required')
|
|
67
|
-
action, stage = request['action'], request.get('stage')
|
|
68
|
-
if stage not in ('brd', 'prd', 'ad', 'testcase'):
|
|
69
|
-
raise ValueError('explicit_document_stage_required')
|
|
70
|
-
target = file_at(root, request.get('target'))
|
|
71
|
-
sources = request.get('sources')
|
|
72
|
-
if not isinstance(sources, list) or not sources:
|
|
73
|
-
raise ValueError('explicit_business_sources_required')
|
|
74
|
-
sources = [file_at(root, raw) for raw in sources]
|
|
75
|
-
if target in sources:
|
|
76
|
-
raise ValueError('target_cannot_be_its_own_business_source')
|
|
77
|
-
authors = request.get('authorSessionIds', [])
|
|
78
|
-
if not isinstance(authors, list) or any(not isinstance(x, str) or not x for x in authors):
|
|
79
|
-
raise ValueError('author_sessions_invalid')
|
|
80
|
-
session = session_id or str(uuid.uuid4())
|
|
81
|
-
if session in authors:
|
|
82
|
-
raise ValueError('author_session_reused')
|
|
83
|
-
index_file = file_at(resources, 'stages.json')
|
|
84
|
-
index = native.loads(index_file.read_text())
|
|
85
|
-
shared = [file_at(resources, 'readme.md'), index_file]
|
|
86
|
-
shared += [file_at(resources, index[key]) for key in ('sharedContract', 'handoffContract', 'lifecycleContract')]
|
|
87
|
-
contract = file_at(resources, index['independentReview']['contract'])
|
|
88
|
-
guide = file_at(resources, index['readEvidenceChecker']['entry'])
|
|
89
|
-
schema_file = file_at(resources, index['readEvidenceChecker']['reviewOutputContract'])
|
|
90
|
-
shared += [contract, guide, schema_file]
|
|
91
|
-
selected = index['stages'][stage]
|
|
92
|
-
manifest = file_at(resources, selected['manifest'])
|
|
93
|
-
data = native.loads(manifest.read_text())
|
|
94
|
-
bundle_file = file_at(resources, 'assets-manifest.json')
|
|
95
|
-
bundle = native.loads(bundle_file.read_text())
|
|
96
|
-
if bundle.get('resourceVersion') != index.get('resourceVersion'):
|
|
97
|
-
raise ValueError('resource_version_mismatch:bundle')
|
|
98
|
-
if (selected.get('resourceVersion') != data.get('resourceVersion')
|
|
99
|
-
or selected.get('templateVersion') != data['source'].get('templateVersion')):
|
|
100
|
-
raise ValueError('resource_version_mismatch:' + stage)
|
|
101
|
-
stage_readme = file_at(manifest.parent, 'readme.md', resources)
|
|
102
|
-
template = file_at(manifest.parent, data['source']['resourcePath'], resources)
|
|
103
|
-
action_file = file_at(manifest.parent, data['prompts'][action], resources)
|
|
104
|
-
dependencies = [file_at(manifest.parent, item['path'], resources) for item in data.get('dependencies', [])]
|
|
105
|
-
stage_files = [manifest, stage_readme, template, action_file]
|
|
106
|
-
covered = {str(p.relative_to(resources)): p for p in shared + stage_files + dependencies}
|
|
107
|
-
compact = (index['independentReview'].get('contextProfile') == 'fixed-review-context-v1'
|
|
108
|
-
and all(fingerprint(p)['sha256'] in CONTEXT_BASELINES.get(name, [])
|
|
109
|
-
for name, p in covered.items()))
|
|
110
|
-
reason = 'fixed_resources_covered; project_rules_remain_authoritative' if compact else 'selected_resources_not_covered_by_fixed_profile'
|
|
111
|
-
project_rules = [file_at(root, name) for name in ('CODEBUDDY.md', 'README.md') if (root / name).is_file()]
|
|
112
|
-
if compact and any('三份共用合同' in p.read_text() and 'review/recheck按' not in p.read_text()
|
|
113
|
-
for p in project_rules):
|
|
114
|
-
compact, reason = False, 'project_instruction_requires_full_context'
|
|
115
|
-
files = [contract, stage_readme, template, action_file] if compact else shared + stage_files + dependencies
|
|
116
|
-
protected = shared + stage_files + dependencies
|
|
117
|
-
# Never drop metadata from drift protection merely because the model no
|
|
118
|
-
# longer reads it. Schema/checker/helper bytes also bind this one execution.
|
|
119
|
-
protected += [bundle_file,
|
|
120
|
-
file_at(resources, 'verification/review_handoff.py'),
|
|
121
|
-
file_at(resources, 'verification/check_reads.py'),
|
|
122
|
-
file_at(resources, 'verification/check_native_execution.py')]
|
|
123
|
-
files += [target, *sources]
|
|
124
|
-
prior = None
|
|
125
|
-
if action == 'recheck':
|
|
126
|
-
for key in ('priorReport', 'responses', 'previousTarget'):
|
|
127
|
-
if not request.get(key):
|
|
128
|
-
raise ValueError('recheck_input_missing:' + key)
|
|
129
|
-
files.append(file_at(root, request[key]))
|
|
130
|
-
prior = native.loads(file_at(root, request['priorReport']).read_text())
|
|
131
|
-
if not isinstance(prior, dict) or not isinstance(prior.get('findings'), list):
|
|
132
|
-
raise ValueError('prior_review_report_invalid')
|
|
133
|
-
ids = [item.get('id') for item in prior['findings']]
|
|
134
|
-
if any(not isinstance(x, str) or not x for x in ids) or len(ids) != len(set(ids)):
|
|
135
|
-
raise ValueError('prior_review_ids_invalid')
|
|
136
|
-
files += project_rules
|
|
137
|
-
for raw in request.get('inputs', []):
|
|
138
|
-
files.append(file_at(root, raw))
|
|
139
|
-
files = list(dict.fromkeys(files))
|
|
140
|
-
|
|
141
|
-
def relative(path):
|
|
142
|
-
return str(path.relative_to(root)) if path.is_relative_to(root) else str(path)
|
|
143
|
-
|
|
144
|
-
scope = {'requiredReads': [relative(path) for path in files], 'allowedWrites': [],
|
|
145
|
-
'forbiddenAccessPrefixes': request.get('forbiddenAccessPrefixes', []),
|
|
146
|
-
'reviewCarrier': 'structured_output'}
|
|
147
|
-
if request.get('sourceRoles') or request.get('requiredSourceRoles'):
|
|
148
|
-
scope['sourceRoles'] = copy.deepcopy(request.get('sourceRoles', {}))
|
|
149
|
-
scope['requiredSourceRoles'] = copy.deepcopy(request.get('requiredSourceRoles', []))
|
|
150
|
-
for raw in scope['sourceRoles'].values():
|
|
151
|
-
if file_at(root, raw) not in files:
|
|
152
|
-
raise ValueError('role_not_in_model_inputs:' + raw)
|
|
153
|
-
protected = list(dict.fromkeys(protected + files))
|
|
154
|
-
return {'root': str(root), 'request': copy.deepcopy(request), 'sessionId': session,
|
|
155
|
-
'target': relative(target), 'sources': [relative(path) for path in sources],
|
|
156
|
-
'scope': scope, 'schema': reads.build_review_schema(scope),
|
|
157
|
-
'files': native.inventory(root),
|
|
158
|
-
'inputSnapshots': {str(path): fingerprint(path) for path in protected},
|
|
159
|
-
'context': {'mode': 'compact' if compact else 'full-selected', 'reason': reason,
|
|
160
|
-
'profile': 'fixed-review-context-v1',
|
|
161
|
-
'modelRequiredFileCount': len(files),
|
|
162
|
-
'modelRequiredBytes': sum(p.stat().st_size for p in files),
|
|
163
|
-
'outerOnlyPaths': [relative(p) for p in protected if p not in files],
|
|
164
|
-
'outerParsingIsModelReadEvidence': False},
|
|
165
|
-
'priorFindingIds': [item['id'] for item in prior['findings']] if prior else []}
|
|
166
|
-
|
|
167
|
-
|
|
168
|
-
def prompt_for(prepared):
|
|
169
|
-
request = prepared['request']
|
|
170
|
-
return '\n'.join([
|
|
171
|
-
'本次是已明确委托的企业SOP独立只读' + request['action'] + ',不是文档生成或工程实施。',
|
|
172
|
-
'这是全新会话,不继承作者自查。只用Read/Glob/Grep读取准确材料,StructuredOutput返回报告;不要调用Skill、Shell、写入或其他Agent。',
|
|
173
|
-
'先完整读列出的统一审查约定、本阶段README、完整模板及唯一动作,再核目标和真实业务来源。只读标注问题,保留人工修改空间。',
|
|
174
|
-
'外层已经解析并保护索引、清单和校验说明,不冒充你已读;只按下列模型必读清单完整读正文,不重复加载纯元数据。',
|
|
175
|
-
'若实际项目规则另要求完整读选定原件,遵守项目规则并说明精简未适用;不要回退低优先级发行模板。',
|
|
176
|
-
'本次资源加载判定:' + prepared['context']['mode'] + ';' + prepared['context']['reason'],
|
|
177
|
-
'任务范围:' + request.get('task', '按本阶段审查规则核对指定目标和必要来源。'),
|
|
178
|
-
'精确目标:' + prepared['target'],
|
|
179
|
-
'真实业务来源:' + json.dumps(prepared['sources'], ensure_ascii=False),
|
|
180
|
-
'必读文件(长文允许分段覆盖,不用摘要冒充全文):',
|
|
181
|
-
*prepared['scope']['requiredReads'],
|
|
182
|
-
'不得读取未选版本、历史、其他主题或低优先级模板;必要来源未列入或不可读时如实报告缺口,不猜补。',
|
|
183
|
-
'复查时读旧稿、旧报告和逐项回应;checkedFacts中按旧finding.id逐项给结论,conclusion以“已关闭”“部分关闭”“未关闭”或“无法核实”开头。',
|
|
184
|
-
'原问题未核清不得关闭,新问题使用新ID。报告审查语义,不声称业务认可、工程通过或发布许可。',
|
|
185
|
-
'最终使用所给Schema的StructuredOutput,只提交verdict/findings/checkedFacts/unread。',
|
|
186
|
-
'每条引文用真实路径、实际行号和行内逐字短摘录;普通引用不加role,有绑定才用Schema枚举。无真实问题则findings为空。',
|
|
187
|
-
'报告由外层调用者另存;不要自行保存、修订目标、更新JSON或进入下一阶段。'])
|
|
188
|
-
|
|
189
|
-
|
|
190
|
-
def command(prepared, executable, max_turns=60):
|
|
191
|
-
if prepared['schema'] != reads.build_review_schema(prepared['scope']):
|
|
192
|
-
raise ValueError('schema_scope_mismatch')
|
|
193
|
-
return [executable, '-p', '--verbose', '--output-format', 'stream-json',
|
|
194
|
-
'--permission-mode', 'default', '--tools', 'Read,Glob,Grep,StructuredOutput',
|
|
195
|
-
'--allowedTools', 'Read', 'Glob', 'Grep', 'StructuredOutput',
|
|
196
|
-
'--disallowedTools', 'Bash', 'Write', 'Edit', 'PowerShell', 'NotebookEdit', 'Skill', 'Task', 'Agent',
|
|
197
|
-
'--strict-mcp-config', '--mcp-config', '{"mcpServers":{}}',
|
|
198
|
-
'--no-session-persistence', '--session-id', prepared['sessionId'],
|
|
199
|
-
'--max-turns', str(max_turns), '--json-schema',
|
|
200
|
-
json.dumps(prepared['schema'], ensure_ascii=False, separators=(',', ':'))]
|
|
201
|
-
|
|
202
|
-
|
|
203
|
-
def evaluate(prepared, events, process):
|
|
204
|
-
root, issues = Path(prepared['root']), []
|
|
205
|
-
finals = [event for event in events if event.get('type') == 'result']
|
|
206
|
-
starts = [event for event in events if event.get('type') == 'system' and event.get('subtype') == 'init']
|
|
207
|
-
if not starts or not finals or any(event.get('session_id') != prepared['sessionId'] for event in starts + finals):
|
|
208
|
-
issues.append('session_identity_mismatch')
|
|
209
|
-
if process.get('exitCode') != 0 or process.get('timedOut') or not finals or finals[-1].get('is_error'):
|
|
210
|
-
issues.append('native_completion_not_proven')
|
|
211
|
-
# CodeBuddy init lists the agent catalog before options.tools filtering.
|
|
212
|
-
# Bind the actual launch argv and inspect every real tool attempt instead.
|
|
213
|
-
calls, receipts, trace_issues = native.trace_calls(events)
|
|
214
|
-
issues += trace_issues
|
|
215
|
-
for call in calls:
|
|
216
|
-
name = call['name']
|
|
217
|
-
if name not in ('Read', 'Glob', 'Grep', 'StructuredOutput'):
|
|
218
|
-
issues.append('tool_outside_readonly_scope:' + name)
|
|
219
|
-
result = receipts.get(call['id'])
|
|
220
|
-
status, _ = native.outcome(result[1] if result else None, name)
|
|
221
|
-
if status != 'succeeded':
|
|
222
|
-
issues.append('tool_attempt_' + status + ':' + name)
|
|
223
|
-
if name == 'Read':
|
|
224
|
-
file = (root / (call.get('input') or {}).get('file_path', '')).resolve()
|
|
225
|
-
if str(file) not in prepared['inputSnapshots']:
|
|
226
|
-
issues.append('read_outside_selected_inputs:' + str(file))
|
|
227
|
-
current = native.inventory(root)
|
|
228
|
-
changed = sorted(name for name in set(current) | set(prepared['files'])
|
|
229
|
-
if current.get(name) != prepared['files'].get(name))
|
|
230
|
-
if changed:
|
|
231
|
-
issues.append('project_changed_during_review')
|
|
232
|
-
if any(not Path(raw).is_file() or fingerprint(Path(raw)) != frozen
|
|
233
|
-
for raw, frozen in prepared['inputSnapshots'].items()):
|
|
234
|
-
issues.append('inputs_changed')
|
|
235
|
-
reading = reads.assess(root, prepared['scope'], events)
|
|
236
|
-
quoting = reads.check_review(root, events, reading, prepared['scope'])
|
|
237
|
-
if not reading['passed']:
|
|
238
|
-
issues += reading['failures']
|
|
239
|
-
if not quoting['passed']:
|
|
240
|
-
issues += quoting['errorCodes']
|
|
241
|
-
report = finals[-1].get('structured_output') if finals else None
|
|
242
|
-
if quoting['passed']:
|
|
243
|
-
references = report['findings'] + report['checkedFacts']
|
|
244
|
-
targets = str((root / prepared['target']).resolve())
|
|
245
|
-
sources = {str((root / raw).resolve()) for raw in prepared['sources']}
|
|
246
|
-
if not any(str((root / item['target']['path']).resolve()) == targets
|
|
247
|
-
and str((root / item['source']['path']).resolve()) in sources for item in references):
|
|
248
|
-
issues.append('review_target_not_bound')
|
|
249
|
-
facts = {item['id']: item for item in report['checkedFacts']}
|
|
250
|
-
for old_id in prepared['priorFindingIds']:
|
|
251
|
-
if old_id not in facts or not facts[old_id]['conclusion'].startswith(('已关闭', '部分关闭', '未关闭', '无法核实')):
|
|
252
|
-
issues.append('prior_finding_not_rechecked:' + old_id)
|
|
253
|
-
return {'helperVersion': VERSION, 'status': 'needs_human_review' if issues else 'evidence_accepted',
|
|
254
|
-
'issues': list(dict.fromkeys(issues)), 'sessionId': prepared['sessionId'],
|
|
255
|
-
'target': prepared['target'], 'changedFiles': changed,
|
|
256
|
-
'hostToolCatalogIsEffectiveAllowlist': False,
|
|
257
|
-
'reads': reading, 'quotes': quoting, 'report': report,
|
|
258
|
-
'context': copy.deepcopy(prepared['context']),
|
|
259
|
-
'businessApproved': False, 'implementationApproved': False, 'published': False,
|
|
260
|
-
'proofScope': 'one fresh CLI session, readonly tool/trace evidence, input snapshots and report references; not semantic approval or OS sandbox'}
|
|
261
|
-
|
|
262
|
-
|
|
263
|
-
def run(project_root, request, evidence_dir, *, resource_root=RESOURCES, timeout=420, max_turns=60):
|
|
264
|
-
root, evidence = Path(project_root).resolve(), Path(evidence_dir).resolve()
|
|
265
|
-
if evidence.is_relative_to(root):
|
|
266
|
-
raise ValueError('evidence_must_be_outside_project')
|
|
267
|
-
prepared = prepare(root, request, resource_root=resource_root)
|
|
268
|
-
evidence.mkdir(parents=True, exist_ok=False)
|
|
269
|
-
save(evidence / 'request.json', request)
|
|
270
|
-
save(evidence / 'prepared.json', prepared)
|
|
271
|
-
(evidence / 'task.md').write_text(prompt_for(prepared) + '\n')
|
|
272
|
-
executable = shutil.which('codebuddy')
|
|
273
|
-
if not executable:
|
|
274
|
-
result = {'status': 'new_session_required', 'reason': 'codebuddy_unavailable',
|
|
275
|
-
'recommendation': '在明确的新会话中使用task.md;没有宿主权限证明时只声明提示约束。',
|
|
276
|
-
'businessApproved': False, 'implementationApproved': False, 'published': False}
|
|
277
|
-
save(evidence / 'result.json', result)
|
|
278
|
-
return result
|
|
279
|
-
argv = command(prepared, executable, max_turns)
|
|
280
|
-
save(evidence / 'invocation.json', {'argv': argv, 'cwd': str(root), 'attempts': 1,
|
|
281
|
-
'newSession': True, 'resumed': False,
|
|
282
|
-
'modelOverridden': False, 'systemPromptOverridden': False})
|
|
283
|
-
started, timed_out = time.monotonic(), False
|
|
284
|
-
with (evidence / 'task.md').open('rb') as inp, (evidence / 'trace.jsonl').open('wb') as out, (evidence / 'stderr.log').open('wb') as err:
|
|
285
|
-
proc = subprocess.Popen(argv, cwd=root, stdin=inp, stdout=out, stderr=err,
|
|
286
|
-
env={**os.environ, 'PYTHONDONTWRITEBYTECODE': '1',
|
|
287
|
-
'CODEBUDDY_DISABLE_AUTO_MEMORY': '1', 'CODEBUDDY_CODE_DISABLE_AUTO_MEMORY': '1'})
|
|
288
|
-
try:
|
|
289
|
-
proc.wait(timeout=timeout)
|
|
290
|
-
except subprocess.TimeoutExpired:
|
|
291
|
-
timed_out = True
|
|
292
|
-
proc.terminate()
|
|
293
|
-
try:
|
|
294
|
-
proc.wait(timeout=10)
|
|
295
|
-
except subprocess.TimeoutExpired:
|
|
296
|
-
proc.kill()
|
|
297
|
-
proc.wait()
|
|
298
|
-
process = {'exitCode': proc.returncode, 'timedOut': timed_out,
|
|
299
|
-
'elapsedSeconds': round(time.monotonic() - started, 2)}
|
|
300
|
-
save(evidence / 'process.json', process)
|
|
301
|
-
events = [native.loads(line) for line in (evidence / 'trace.jsonl').read_text().splitlines() if line.strip()]
|
|
302
|
-
result = evaluate(prepared, events, process)
|
|
303
|
-
save(evidence / 'result.json', result)
|
|
304
|
-
if result.get('report') is not None:
|
|
305
|
-
save(evidence / 'report.json', result['report'])
|
|
306
|
-
return result
|
|
307
|
-
|
|
308
|
-
|
|
309
|
-
def main():
|
|
310
|
-
parser = argparse.ArgumentParser(description=__doc__)
|
|
311
|
-
parser.add_argument('--project-root', required=True)
|
|
312
|
-
parser.add_argument('--request', required=True)
|
|
313
|
-
parser.add_argument('--evidence-dir', required=True)
|
|
314
|
-
parser.add_argument('--timeout', type=int, default=420)
|
|
315
|
-
parser.add_argument('--max-turns', type=int, default=60)
|
|
316
|
-
args = parser.parse_args()
|
|
317
|
-
try:
|
|
318
|
-
result = run(args.project_root, native.loads(Path(args.request).read_text()), args.evidence_dir,
|
|
319
|
-
timeout=args.timeout, max_turns=args.max_turns)
|
|
320
|
-
except (ValueError, OSError, KeyError, TypeError) as error:
|
|
321
|
-
result = {'status': 'blocked', 'reason': str(error),
|
|
322
|
-
'recommendation': '核对准确目标、来源及所选资料;缺隔离时使用新会话任务,不修改业务稿。',
|
|
323
|
-
'businessApproved': False, 'implementationApproved': False, 'published': False}
|
|
324
|
-
print(json.dumps(result, ensure_ascii=False))
|
|
325
|
-
return 0 if result['status'] == 'evidence_accepted' else 1
|
|
326
|
-
|
|
327
|
-
|
|
328
|
-
if __name__ == '__main__':
|
|
329
|
-
raise SystemExit(main())
|