@xgent-ai/skills 0.3.0 → 0.4.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/README.md +94 -10
- package/bin/xgent-skills.js +55 -9
- package/package.json +1 -1
- package/skills/agi-mode/SKILL.md +225 -0
- package/skills/agi-mode/evals/baseline-coverage.md +96 -0
- package/skills/agi-mode/evals/scenarios.md +331 -0
- package/skills/agi-mode/evals/test_check_evidence.py +141 -0
- package/skills/agi-mode/playbooks/arena.md +47 -0
- package/skills/agi-mode/playbooks/authoring-a-skill.md +26 -0
- package/skills/agi-mode/playbooks/autonomous-run.md +39 -0
- package/skills/agi-mode/playbooks/bug-fix.md +27 -0
- package/skills/agi-mode/playbooks/design-prototype.md +41 -0
- package/skills/agi-mode/playbooks/eval.md +72 -0
- package/skills/agi-mode/playbooks/feature.md +26 -0
- package/skills/agi-mode/playbooks/forensics.md +31 -0
- package/skills/agi-mode/playbooks/hillclimb.md +73 -0
- package/skills/agi-mode/playbooks/investigation.md +29 -0
- package/skills/agi-mode/playbooks/migration-refactoring.md +27 -0
- package/skills/agi-mode/playbooks/optimization.md +27 -0
- package/skills/agi-mode/playbooks/pr-lifecycle.md +38 -0
- package/skills/agi-mode/playbooks/program.md +57 -0
- package/skills/agi-mode/playbooks/reflection.md +41 -0
- package/skills/agi-mode/playbooks/resource-cleanup.md +24 -0
- package/skills/agi-mode/playbooks/review.md +27 -0
- package/skills/agi-mode/playbooks/session-handoff.md +37 -0
- package/skills/agi-mode/playbooks/shipping.md +35 -0
- package/skills/agi-mode/playbooks/ui-delivery.md +34 -0
- package/skills/agi-mode/playbooks/unblock.md +54 -0
- package/skills/agi-mode/principles/autonomous-decisions.md +21 -0
- package/skills/agi-mode/principles/behavioral-tests.md +21 -0
- package/skills/agi-mode/principles/boundary-discipline.md +21 -0
- package/skills/agi-mode/principles/bounded-convergence.md +21 -0
- package/skills/agi-mode/principles/build-leverage.md +21 -0
- package/skills/agi-mode/principles/challenge-premises.md +21 -0
- package/skills/agi-mode/principles/complete-migrations.md +21 -0
- package/skills/agi-mode/principles/context-as-state.md +21 -0
- package/skills/agi-mode/principles/critical-path-throughput.md +21 -0
- package/skills/agi-mode/principles/domain-models-and-types.md +23 -0
- package/skills/agi-mode/principles/evidence-lifetime.md +21 -0
- package/skills/agi-mode/principles/experience-first.md +21 -0
- package/skills/agi-mode/principles/explore-alternatives.md +21 -0
- package/skills/agi-mode/principles/falsifiable-verification.md +21 -0
- package/skills/agi-mode/principles/foundations-first.md +21 -0
- package/skills/agi-mode/principles/idempotent-effects.md +21 -0
- package/skills/agi-mode/principles/information-first.md +21 -0
- package/skills/agi-mode/principles/minimize-complexity.md +21 -0
- package/skills/agi-mode/principles/outcome-ownership.md +21 -0
- package/skills/agi-mode/principles/prove-real-outcomes.md +21 -0
- package/skills/agi-mode/principles/redesign-from-constraints.md +21 -0
- package/skills/agi-mode/principles/root-cause.md +21 -0
- package/skills/agi-mode/principles/state-ownership.md +21 -0
- package/skills/agi-mode/principles/structural-learning.md +21 -0
- package/skills/agi-mode/principles/verifiable-units.md +21 -0
- package/skills/agi-mode/references/continuity.md +75 -0
- package/skills/agi-mode/references/eval-protocol.md +71 -0
- package/skills/agi-mode/references/evidence-contract.md +57 -0
- package/skills/agi-mode/references/evolution-evidence.md +71 -0
- package/skills/agi-mode/references/experiments.md +82 -0
- package/skills/agi-mode/references/reflection/divergent-reviewer.md +45 -0
- package/skills/agi-mode/references/reflection/judgment-reviewer.md +44 -0
- package/skills/agi-mode/references/reflection/synthesizer.md +39 -0
- package/skills/agi-mode/references/reflection/tooling-reviewer.md +57 -0
- package/skills/agi-mode/references/skill-evolution.md +50 -0
- package/skills/agi-mode/scripts/check_evidence.py +147 -0
- package/skills/apply-code-review/SKILL.md +53 -0
- package/skills/apply-code-review/agents/openai.yaml +4 -0
- package/skills/apply-code-review/references/record-contract.md +77 -0
- package/skills/apply-doc-review/SKILL.md +79 -0
- package/skills/apply-doc-review/agents/openai.yaml +4 -0
- package/skills/apply-doc-review/references/disposition-contract.md +57 -0
- package/skills/archify/LICENSE +22 -0
- package/skills/archify/SKILL.md +137 -0
- package/skills/archify/THIRD_PARTY_NOTICES.md +69 -0
- package/skills/archify/assets/JetBrainsMono-OFL.txt +93 -0
- package/skills/archify/assets/template.html +14937 -0
- package/skills/archify/bin/archify.mjs +2139 -0
- package/skills/archify/bin/open-artifact.mjs +86 -0
- package/skills/archify/bin/preview.mjs +653 -0
- package/skills/archify/bin/visual-check.mjs +829 -0
- package/skills/archify/brand-marks/README.md +31 -0
- package/skills/archify/brand-marks/catalog.json +131 -0
- package/skills/archify/delta/architecture-delta.mjs +1232 -0
- package/skills/archify/examples/agent-run.lifecycle.json +60 -0
- package/skills/archify/examples/agent-tool-call.workflow.json +94 -0
- package/skills/archify/examples/async-job-roundtrip.sequence.json +61 -0
- package/skills/archify/examples/brand-aware-delivery.architecture.json +47 -0
- package/skills/archify/examples/cache-miss-request.sequence.json +82 -0
- package/skills/archify/examples/checkout-platform.base.architecture.json +31 -0
- package/skills/archify/examples/checkout-platform.head.architecture.json +31 -0
- package/skills/archify/examples/dataflow-product-analytics.html +15048 -0
- package/skills/archify/examples/deployment-release.lifecycle.json +49 -0
- package/skills/archify/examples/event-stream.dataflow.json +57 -0
- package/skills/archify/examples/incident-response.workflow.json +64 -0
- package/skills/archify/examples/lifecycle-agent-run.html +14983 -0
- package/skills/archify/examples/product-analytics.dataflow.json +76 -0
- package/skills/archify/examples/production-deployment.architecture.json +71 -0
- package/skills/archify/examples/release-delivery.workflow.json +62 -0
- package/skills/archify/examples/sequence-cache-miss-request.html +15063 -0
- package/skills/archify/examples/web-app-rendered.html +15012 -0
- package/skills/archify/examples/web-app.architecture.json +46 -0
- package/skills/archify/examples/workflow-agent-tool-call-rendered.html +15054 -0
- package/skills/archify/migrations/workflow-v2.mjs +279 -0
- package/skills/archify/package-lock.json +149 -0
- package/skills/archify/package.json +39 -0
- package/skills/archify/recipes/scenarios.mjs +391 -0
- package/skills/archify/references/authoring-contract.md +247 -0
- package/skills/archify/references/brand-marks.md +65 -0
- package/skills/archify/references/delivery-contract.md +138 -0
- package/skills/archify/references/viewer-runtime.md +45 -0
- package/skills/archify/renderers/architecture/grid.mjs +62 -0
- package/skills/archify/renderers/architecture/render-architecture.mjs +1078 -0
- package/skills/archify/renderers/dataflow/README.md +104 -0
- package/skills/archify/renderers/dataflow/render-dataflow.mjs +483 -0
- package/skills/archify/renderers/lifecycle/README.md +115 -0
- package/skills/archify/renderers/lifecycle/render-lifecycle.mjs +561 -0
- package/skills/archify/renderers/sequence/README.md +114 -0
- package/skills/archify/renderers/sequence/render-sequence.mjs +464 -0
- package/skills/archify/renderers/shared/brand-marks.mjs +563 -0
- package/skills/archify/renderers/shared/cli.mjs +218 -0
- package/skills/archify/renderers/shared/desktop-readability.mjs +26 -0
- package/skills/archify/renderers/shared/diagnostics.mjs +160 -0
- package/skills/archify/renderers/shared/engineering-profiles.mjs +157 -0
- package/skills/archify/renderers/shared/generated-brand-marks.mjs +2003 -0
- package/skills/archify/renderers/shared/generated-validators.mjs +13 -0
- package/skills/archify/renderers/shared/geometry.mjs +1423 -0
- package/skills/archify/renderers/shared/i18n.mjs +595 -0
- package/skills/archify/renderers/shared/layout-report.mjs +40 -0
- package/skills/archify/renderers/shared/legend.mjs +217 -0
- package/skills/archify/renderers/shared/output-path.mjs +340 -0
- package/skills/archify/renderers/shared/repository-evidence.mjs +239 -0
- package/skills/archify/renderers/shared/repository-location.mjs +58 -0
- package/skills/archify/renderers/shared/text-fit.mjs +49 -0
- package/skills/archify/renderers/shared/utils.mjs +232 -0
- package/skills/archify/renderers/shared/validator.mjs +86 -0
- package/skills/archify/renderers/workflow/README.md +223 -0
- package/skills/archify/renderers/workflow/render-workflow.mjs +35 -0
- package/skills/archify/renderers/workflow/workflow-compiler.mjs +4400 -0
- package/skills/archify/renderers/workflow/workflow-migration-geometry.mjs +144 -0
- package/skills/archify/schemas/README.md +211 -0
- package/skills/archify/schemas/architecture.schema.json +178 -0
- package/skills/archify/schemas/common.schema.json +115 -0
- package/skills/archify/schemas/dataflow.schema.json +243 -0
- package/skills/archify/schemas/lifecycle.schema.json +266 -0
- package/skills/archify/schemas/sequence.schema.json +223 -0
- package/skills/archify/schemas/workflow.schema.json +428 -0
- package/skills/archify/scripts/check-render-output.mjs +916 -0
- package/skills/archify/scripts/check-update.mjs +1667 -0
- package/skills/archify/scripts/generate-brand-marks.mjs +141 -0
- package/skills/archify/scripts/generate-validators.mjs +66 -0
- package/skills/archify/scripts/render-examples.mjs +26 -0
- package/skills/archify/scripts/update-contract.mjs +182 -0
- package/skills/archify/skill-release.json +10 -0
- package/skills/archify/test/adaptive-reader-layout.test.mjs +86 -0
- package/skills/archify/test/animation.test.mjs +179 -0
- package/skills/archify/test/architecture-compare-recovery.test.mjs +157 -0
- package/skills/archify/test/architecture-delta-markers.test.mjs +137 -0
- package/skills/archify/test/architecture-delta.test.mjs +705 -0
- package/skills/archify/test/artifact-receipt-flush.test.mjs +126 -0
- package/skills/archify/test/authored-reachability.test.mjs +95 -0
- package/skills/archify/test/authoring-safety-contract.test.mjs +54 -0
- package/skills/archify/test/automatic-port-spread.test.mjs +376 -0
- package/skills/archify/test/base-input-compatibility.test.mjs +42 -0
- package/skills/archify/test/brand-marks.test.mjs +678 -0
- package/skills/archify/test/chapter-delta-preview.test.mjs +157 -0
- package/skills/archify/test/chapter-handoff.test.mjs +97 -0
- package/skills/archify/test/chapter-rail.test.mjs +86 -0
- package/skills/archify/test/checkout-line-endings.test.mjs +72 -0
- package/skills/archify/test/ci-scope.test.mjs +59 -0
- package/skills/archify/test/clean-skill-staging.test.mjs +440 -0
- package/skills/archify/test/cli-output-types.test.mjs +201 -0
- package/skills/archify/test/cli.test.mjs +986 -0
- package/skills/archify/test/community-proof-intake.test.mjs +125 -0
- package/skills/archify/test/cursor-onboarding.test.mjs +74 -0
- package/skills/archify/test/degraded.test.mjs +161 -0
- package/skills/archify/test/delivery-contract.test.mjs +52 -0
- package/skills/archify/test/desktop-reader-browser.test.mjs +80 -0
- package/skills/archify/test/diagram-guide.test.mjs +92 -0
- package/skills/archify/test/engineering-profile.test.mjs +209 -0
- package/skills/archify/test/export-browser.test.mjs +305 -0
- package/skills/archify/test/export-cleanup-browser.test.mjs +294 -0
- package/skills/archify/test/finder-browser.test.mjs +274 -0
- package/skills/archify/test/finder.test.mjs +104 -0
- package/skills/archify/test/fixtures/automatic-routing-node-border-clearance.workflow.json +40 -0
- package/skills/archify/test/fixtures/fail-migration-cleanup.mjs +17 -0
- package/skills/archify/test/fixtures/issue-126/custom-widths.workflow.json +18 -0
- package/skills/archify/test/fixtures/issue-126/explicit-route.workflow.json +28 -0
- package/skills/archify/test/fixtures/issue-126/explicit-viewbox.workflow.json +19 -0
- package/skills/archify/test/fixtures/issue-126/labels.workflow.json +18 -0
- package/skills/archify/test/fixtures/v1-baseline/agent-run.lifecycle.json +64 -0
- package/skills/archify/test/fixtures/v1-baseline/agent-tool-call.workflow.json +88 -0
- package/skills/archify/test/fixtures/v1-baseline/cache-miss-request.sequence.json +75 -0
- package/skills/archify/test/fixtures/v1-baseline/event-stream.dataflow.json +57 -0
- package/skills/archify/test/fixtures/v1-baseline/product-analytics.dataflow.json +70 -0
- package/skills/archify/test/fixtures/v1-baseline/production-deployment.architecture.json +71 -0
- package/skills/archify/test/fixtures/v1-baseline/web-app.architecture.json +41 -0
- package/skills/archify/test/fixtures/v1-workflow-700x400.workflow.json +22 -0
- package/skills/archify/test/fixtures/v1-workflow-explicit-coordinates.workflow.json +47 -0
- package/skills/archify/test/focus-browser.test.mjs +226 -0
- package/skills/archify/test/gallery.test.mjs +130 -0
- package/skills/archify/test/generate-validators.test.mjs +59 -0
- package/skills/archify/test/generate-viewer.test.mjs +165 -0
- package/skills/archify/test/generated-artifact-xml.test.mjs +88 -0
- package/skills/archify/test/geometry.test.mjs +739 -0
- package/skills/archify/test/golden.mjs +207 -0
- package/skills/archify/test/grid.test.mjs +47 -0
- package/skills/archify/test/guide-page.test.mjs +85 -0
- package/skills/archify/test/guide.test.mjs +81 -0
- package/skills/archify/test/guided-views-browser.test.mjs +460 -0
- package/skills/archify/test/guided-views.test.mjs +144 -0
- package/skills/archify/test/helpers/desktop-browser.mjs +48 -0
- package/skills/archify/test/helpers/offline-fonts.mjs +76 -0
- package/skills/archify/test/helpers/viewer-click.mjs +72 -0
- package/skills/archify/test/helpers/xml.mjs +37 -0
- package/skills/archify/test/i18n.test.mjs +422 -0
- package/skills/archify/test/intent-trace-browser.test.mjs +284 -0
- package/skills/archify/test/intent-trace.test.mjs +111 -0
- package/skills/archify/test/landing.test.mjs +97 -0
- package/skills/archify/test/layout-rules.test.mjs +1498 -0
- package/skills/archify/test/legend-contract.test.mjs +404 -0
- package/skills/archify/test/motion-governor-browser.test.mjs +342 -0
- package/skills/archify/test/motion-governor.test.mjs +111 -0
- package/skills/archify/test/offline-font-browser.test.mjs +210 -0
- package/skills/archify/test/offline-self-containment.test.mjs +80 -0
- package/skills/archify/test/open-artifact.test.mjs +118 -0
- package/skills/archify/test/ordinary-model-floor.test.mjs +1052 -0
- package/skills/archify/test/output-path.test.mjs +587 -0
- package/skills/archify/test/presentation.test.mjs +71 -0
- package/skills/archify/test/preset-tryon.test.mjs +113 -0
- package/skills/archify/test/preview-contract.test.mjs +40 -0
- package/skills/archify/test/preview.test.mjs +530 -0
- package/skills/archify/test/proof-aperture.test.mjs +78 -0
- package/skills/archify/test/reach-share-card.test.mjs +149 -0
- package/skills/archify/test/reader-layout-browser.test.mjs +320 -0
- package/skills/archify/test/readme-showcase.test.mjs +319 -0
- package/skills/archify/test/real-repository-proof.test.mjs +209 -0
- package/skills/archify/test/relationship-direct-explorer.test.mjs +115 -0
- package/skills/archify/test/relationship-lens.test.mjs +128 -0
- package/skills/archify/test/relationship-permalink.test.mjs +130 -0
- package/skills/archify/test/relationship-pulse.test.mjs +122 -0
- package/skills/archify/test/release-identity.test.mjs +476 -0
- package/skills/archify/test/release-package-gates.test.mjs +750 -0
- package/skills/archify/test/render-output-checks.test.mjs +588 -0
- package/skills/archify/test/renderer-diagnostic-boundary.test.mjs +107 -0
- package/skills/archify/test/repair-receipt.test.mjs +181 -0
- package/skills/archify/test/repository-evidence-replacement.test.mjs +136 -0
- package/skills/archify/test/repository-evidence.test.mjs +605 -0
- package/skills/archify/test/repository-language-metadata.test.mjs +67 -0
- package/skills/archify/test/route-journey.test.mjs +125 -0
- package/skills/archify/test/route-probe-browser.test.mjs +363 -0
- package/skills/archify/test/route-probe.test.mjs +114 -0
- package/skills/archify/test/route-share-card.test.mjs +163 -0
- package/skills/archify/test/semantic-camera.test.mjs +88 -0
- package/skills/archify/test/semantic-flow.test.mjs +90 -0
- package/skills/archify/test/semantic-legend-gateway.test.mjs +156 -0
- package/skills/archify/test/semantic-lens-browser.test.mjs +372 -0
- package/skills/archify/test/semantic-lens.test.mjs +103 -0
- package/skills/archify/test/semantic-passport.test.mjs +99 -0
- package/skills/archify/test/semantic-radar.test.mjs +735 -0
- package/skills/archify/test/semantic-zoom.test.mjs +86 -0
- package/skills/archify/test/sequence-column-fit.test.mjs +137 -0
- package/skills/archify/test/settled-flow.test.mjs +97 -0
- package/skills/archify/test/share-card-export.test.mjs +132 -0
- package/skills/archify/test/site-language-continuity.test.mjs +569 -0
- package/skills/archify/test/site-language-integration.mjs +9 -0
- package/skills/archify/test/skill-metadata.test.mjs +84 -0
- package/skills/archify/test/stable-update-manifest.test.mjs +167 -0
- package/skills/archify/test/start-page.test.mjs +312 -0
- package/skills/archify/test/story-beat-navigator.test.mjs +103 -0
- package/skills/archify/test/story-carrier.test.mjs +90 -0
- package/skills/archify/test/story-director-strip.test.mjs +91 -0
- package/skills/archify/test/story-follow-camera.test.mjs +103 -0
- package/skills/archify/test/story-horizon.test.mjs +91 -0
- package/skills/archify/test/story-moment-link.test.mjs +93 -0
- package/skills/archify/test/story-shelf.test.mjs +84 -0
- package/skills/archify/test/story-trail.test.mjs +81 -0
- package/skills/archify/test/toolbar-polish.test.mjs +57 -0
- package/skills/archify/test/update-contract.test.mjs +133 -0
- package/skills/archify/test/update-notifier.test.mjs +3317 -0
- package/skills/archify/test/v1-compatibility.test.mjs +329 -0
- package/skills/archify/test/vertical-edge.test.mjs +68 -0
- package/skills/archify/test/viewer-camera-browser.test.mjs +395 -0
- package/skills/archify/test/viewer-chrome-layout.test.mjs +1104 -0
- package/skills/archify/test/viewer-identifiers-browser.test.mjs +135 -0
- package/skills/archify/test/visual-check.test.mjs +400 -0
- package/skills/archify/test/webm-artifact.smoke.mjs +1855 -0
- package/skills/archify/test/workflow-compiler-hard-contract.test.mjs +2136 -0
- package/skills/archify/test/workflow-compiler.test.mjs +1163 -0
- package/skills/archify/test/workflow-migration.test.mjs +620 -0
- package/skills/archify/test/workflow-semantic-contract.test.mjs +131 -0
- package/skills/architect/SKILL.md +83 -0
- package/skills/architect/references/design-red-flags.md +33 -0
- package/skills/architect/references/rationale-template.md +35 -0
- package/skills/architect/references/runner-prompt.md +20 -0
- package/skills/arena/SKILL.md +13 -0
- package/skills/automate-me/SKILL.md +104 -0
- package/skills/autoresearch/SKILL.md +14 -0
- package/skills/debugging/SKILL.md +279 -0
- package/skills/dev-plan/SKILL.md +24 -19
- package/skills/dev-plan/references/execution-workflow.md +8 -61
- package/skills/dev-plan/references/plan-skeleton.md +43 -28
- package/skills/dev-plan/scripts/check_progress.sh +4 -0
- package/skills/documentation-writer/SKILL.md +204 -0
- package/skills/documentation-writer/assets/templates/ARCHITECTURE.md +49 -0
- package/skills/documentation-writer/assets/templates/CONCERNS.md +56 -0
- package/skills/documentation-writer/assets/templates/CONVENTIONS.md +52 -0
- package/skills/documentation-writer/assets/templates/FEATURES.md +43 -0
- package/skills/documentation-writer/assets/templates/INTEGRATIONS.md +48 -0
- package/skills/documentation-writer/assets/templates/STACK.md +56 -0
- package/skills/documentation-writer/assets/templates/STRUCTURE.md +44 -0
- package/skills/documentation-writer/assets/templates/TESTING.md +57 -0
- package/skills/documentation-writer/references/api-docs.md +185 -0
- package/skills/documentation-writer/references/architecture.md +134 -0
- package/skills/documentation-writer/references/codebase-map.md +113 -0
- package/skills/documentation-writer/references/inquiry-checkpoints.md +78 -0
- package/skills/documentation-writer/references/readme.md +89 -0
- package/skills/documentation-writer/references/stack-detection.md +134 -0
- package/skills/documentation-writer/references/user-manual.md +103 -0
- package/skills/documentation-writer/references/writing-style.md +220 -0
- package/skills/documentation-writer/scripts/check_doc.py +273 -0
- package/skills/documentation-writer/scripts/scan.py +712 -0
- package/skills/elintp/SKILL.md +27 -1
- package/skills/figure-it-out/SKILL.md +53 -0
- package/skills/gdpr-compliant/SKILL.md +283 -0
- package/skills/gdpr-compliant/references/Security.md +266 -0
- package/skills/gdpr-compliant/references/data-rights.md +177 -0
- package/skills/how/SKILL.md +58 -0
- package/skills/how/references/explainer-prompt.md +55 -0
- package/skills/how/references/explorer-prompt.md +52 -0
- package/skills/humanize-writing/SKILL.md +417 -0
- package/skills/humanize-writing/references/ai-tells.md +291 -0
- package/skills/kpi-dashboard-design/SKILL.md +103 -0
- package/skills/landing-page-conversion-audit/SKILL.md +122 -0
- package/skills/meeting-minutes/SKILL.md +235 -0
- package/skills/portal-app-exchange/SKILL.md +8 -17
- package/skills/portal-dev-setup/SKILL.md +137 -46
- package/skills/portal-dev-setup/puller.env.example +3 -2
- package/skills/portal-dev-setup/references/kafka.md +140 -0
- package/skills/portal-dev-setup/references/troubleshooting.md +22 -26
- package/skills/portal-dev-setup/scripts/onebox.sh +510 -56
- package/skills/portal-external-app/SKILL.md +57 -21
- package/skills/portal-external-app/references/contract-doc-template.md +1 -1
- package/skills/portal-external-app/references/integration-contract.md +4 -4
- package/skills/portal-external-app/references/public-entrypoints.md +100 -0
- package/skills/portal-external-app/references/quota-and-seats.md +12 -31
- package/skills/portal-external-app/references/registration-and-onebox.md +67 -11
- package/skills/portal-micro-app/SKILL.md +18 -28
- package/skills/portal-micro-app/references/manifest-and-acl.md +21 -3
- package/skills/portal-micro-app/references/open-api-and-extensions.md +1 -1
- package/skills/portal-micro-app/references/sdk-reference.md +1 -1
- package/skills/prd/SKILL.md +56 -38
- package/skills/prd/references/prd-skeleton.md +72 -34
- package/skills/prd/references/product-quality.md +89 -0
- package/skills/prd/references/spms-mapping.md +9 -7
- package/skills/react/SKILL.md +26 -4
- package/skills/react/references/actions.md +251 -0
- package/skills/react/references/data-fetching.md +25 -1
- package/skills/react/references/react19-migration.md +407 -0
- package/skills/reflect/SKILL.md +13 -0
- package/skills/review-code/SKILL.md +63 -0
- package/skills/review-code/agents/openai.yaml +4 -0
- package/skills/review-code/references/git-scopes.md +38 -0
- package/skills/review-code/references/report-contract.md +56 -0
- package/skills/review-code/references/review-lenses.md +33 -0
- package/skills/review-dev-plan/SKILL.md +88 -0
- package/skills/review-dev-plan/agents/openai.yaml +4 -0
- package/skills/review-dev-plan/references/report-contract.md +59 -0
- package/skills/review-dev-plan/references/review-lenses.md +82 -0
- package/skills/review-prd/SKILL.md +84 -0
- package/skills/review-prd/agents/openai.yaml +4 -0
- package/skills/review-prd/references/report-contract.md +64 -0
- package/skills/review-prd/references/review-lenses.md +82 -0
- package/skills/review-prd-dev-gaps/SKILL.md +84 -0
- package/skills/review-prd-dev-gaps/agents/openai.yaml +4 -0
- package/skills/review-prd-dev-gaps/references/report-contract.md +72 -0
- package/skills/security-audit/SKILL.md +191 -0
- package/skills/security-audit/references/language-patterns.md +221 -0
- package/skills/security-audit/references/report-format.md +194 -0
- package/skills/security-audit/references/secret-patterns.md +178 -0
- package/skills/security-audit/references/vuln-categories.md +288 -0
- package/skills/security-audit/references/vulnerable-packages.md +111 -0
- package/skills/sql-optimization/SKILL.md +296 -0
- package/skills/summarize/SKILL.md +1 -0
- package/skills/swarm/references/teams/product.md +2 -2
- package/skills/tdd/SKILL.md +42 -0
- package/skills/teach/SKILL.md +21 -0
- package/skills/test-plan/SKILL.md +12 -11
- package/skills/test-plan/references/case-taxonomy.md +3 -2
- package/skills/why/SKILL.md +158 -0
- package/skills/why/references/epistemics.md +144 -0
- package/skills/why/references/investigator-prompt.md +103 -0
- package/skills/why/references/source-playbook.md +17 -0
- package/skills/why/references/sources/code-archaeology.md +88 -0
- package/skills/why/references/sources/databricks.md +70 -0
- package/skills/why/references/sources/datadog.md +99 -0
- package/skills/why/references/sources/incident-postmortem.md +15 -0
- package/skills/why/references/sources/linear.md +48 -0
- package/skills/why/references/sources/notion.md +55 -0
- package/skills/why/references/sources/sentry.md +100 -0
- package/skills/why/references/sources/slack.md +54 -0
- package/skills/why/references/synthesizer-prompt.md +135 -0
- package/skills/xgent-app-release/SKILL.md +97 -28
- package/skills/xgent-app-release/references/build-and-package.md +8 -3
- package/skills/xgent-app-release/references/embed-csp.mjs +126 -0
- package/skills/xgent-app-release/references/frontend-archive.md +67 -0
- package/skills/xgent-app-release/references/public-delivery.md +75 -0
- package/skills/xgent-app-release/references/publish-api.md +62 -56
- package/skills/xgent-app-release/references/troubleshooting.md +18 -2
- package/skills/xgent-app-release/references/verify-preflight.mjs +50 -0
- package/skills/xgent-app-release/scripts/npm-token.mjs +8 -3
- package/skills/xgent-app-release/scripts/preflight.mjs +13 -2
- package/skills/xgent-init/SKILL.md +23 -82
- package/skills/xgent-init/references/external-app-AGENTS.template.md +149 -0
- package/skills/xgent-init/references/fill-guide.md +10 -22
- package/skills/xgent-init/scripts/check-docs.mjs +14 -86
- package/vendor/impeccable/VERSION.json +10 -16
- package/vendor/impeccable/bundle/blobs/{daa2a8ecd874f9f940dfd72aaa329318b06bb9be25515be85fea84c871b637a6 → 00c067253d37cd20a41dbe9c806d6a72cbff983ad1418b3c3e447998f577b9c2} +18 -11
- package/vendor/impeccable/bundle/blobs/{4ce929b8cafd37247ea4c148bbe39a9afe15908d1abf4a8248c5122275d16499 → 00d167d9183c8d0c6c0682055107382e6672bacf7a712de0abc8f157c2cb2210} +3 -2
- package/vendor/impeccable/bundle/blobs/{a9515f6f084d8f51c378eb3cdc6db1f12e06dba2d32fc61b7ee7950fa2586f2e → 016c082dcd2aa8f3c080a757c8ed335c6070a904bd2f39668bb9d3e6f95929c1} +1 -1
- package/vendor/impeccable/bundle/blobs/0221a193d111a9de33a785706a603e55dd974a115f549dbdf74e0f9ec72bde7d +101 -0
- package/vendor/impeccable/bundle/blobs/055c571f2960b8f929d6a8d3806a4d32dfcb9750b3ef8b60adc8930fff34b559 +101 -0
- package/vendor/impeccable/bundle/blobs/{3aa908c18db91d5f31d6bba6402eab6afc4e0b75137f841a86bd012386e0d8e2 → 0605c8729dc638a46798e90ab12486fe3ae3372a869757cfb387a08e23b3c84a} +18 -11
- package/vendor/impeccable/bundle/blobs/{ec58806f16fc7ba29bccef08f2e158cd00be077ce05d45e943a59bd26dc6dc55 → 0648e4e06d01cabc91fa7dc19256ceedeeeea213b9265e9d36b0918370e16fb2} +6 -0
- package/vendor/impeccable/bundle/blobs/06b20bd42e5682a42c5d6fbfaad4c55e66ff9b9d99a604bd31d3545af120fc2d +101 -0
- package/vendor/impeccable/bundle/blobs/{420e2fdee2b7f555d9a37ce348cf62610ddd98f96b1a0a511796ba600881588c → 08346755b13f1a3f7c6fb4e512387884b80467aaeff109fd41f5521d2a95635a} +3 -1
- package/vendor/impeccable/bundle/blobs/{8f651cb1f8cde0acc5cc511b77fddd98558a527f54974698a1650b0fd7e849a7 → 08398fa2d8e2b06b849f1c0f032e1e93b832e9294aed35c1c7f62b938d62ee80} +1 -1
- package/vendor/impeccable/bundle/blobs/087f6715114e901c2ce00b438e75b82fd48978c020a782f3dc361d39eb7198a6 +26 -0
- package/vendor/impeccable/bundle/blobs/{bc7a5128cfed46148396c08798b6b9429406fbe477e84e331a36ee2840b6b776 → 09310582ed23393b171eb99ad4a288cc422ac53c26d76311586ce54c6df77b22} +3 -1
- package/vendor/impeccable/bundle/blobs/{633903ba7cb38ed502448a66691fbf655805786a2f06be67043f12294ad08e86 → 0bc2bc36ca6e74f9f610392f1a4fb8f57b2676238ba1f9c65cd8714f5d27e8a2} +5 -0
- package/vendor/impeccable/bundle/blobs/0c064c9975f25f6eb5cf7911c2eeafd3e695d729f8c86a49a24ff2d76cb3cd94 +63 -0
- package/vendor/impeccable/bundle/blobs/{4a7d8695741e2cd354baada215b06798c050aa7a8e1ca6814f0e395e054d1ab1 → 0ccf57f758eb0d53bc32c5c77156f016e528d20fe2c2740662bf19964dfbb00b} +18 -11
- package/vendor/impeccable/bundle/blobs/0dd1e6ccf053cb80e057caf7bf2fef30fd0197a41d907a1a8d2d2d02f6978674 +63 -0
- package/vendor/impeccable/bundle/blobs/{943b0d7c9ce4f6802d8440a07b2ad3c61cbd1cc00ab63962bab7eea9ca584d20 → 0ed5986d1503399f48c11104df5e523a63be2d6558770ebfbbeb2323ca3f2ad3} +5 -5
- package/vendor/impeccable/bundle/blobs/14c9c9a7816026dd77494d06b8d1777c8d64785126b0c9ac8db5ebd996dfd6b6 +101 -0
- package/vendor/impeccable/bundle/blobs/{54cb270e8826380caefc8c40642a5d973f27df46bfdb762d822541a0c72a9877 → 14ef0ab84c10331f8af6b4124387a3f80b493175a04a3f89200719b4b5aea221} +18 -11
- package/vendor/impeccable/bundle/blobs/{6abbf5979db5cb1d7965bf5f91d589e984843069c587f4d1e63aab135bbace0f → 1547005438784032de3254cb35bff393e8187d7a459d0c20a693d9bfb0b5c1a4} +5 -0
- package/vendor/impeccable/bundle/blobs/162b814ddd1133923b9584bb95f85959e64844c94341d6bf10a81c06ab7cc02c +101 -0
- package/vendor/impeccable/bundle/blobs/16498466a97a5b19a593d5b3f245468c71784bea069d7fc8aa9690db5ac1d968 +29 -0
- package/vendor/impeccable/bundle/blobs/{b31ff29c7a1ea979c6d039f7e8d17007410697ab49536690dca109f0af3f20f8 → 16ba7fca1973c5faf53dd2ca523559129c0fe9e5f8d50b645f527afa78186cd2} +9 -0
- package/vendor/impeccable/bundle/blobs/1725ca4aa546a34770f29191b58bf8dc14957d4258fb9e7d02f7b1c59c412ea4 +63 -0
- package/vendor/impeccable/bundle/blobs/{598bfed550954471ba4d257d46b4d608cd82e4cdbf36d07bf93c5f4a563f7727 → 1898529e994bf0a31ee9ff3f87c343caea3d8a7e0986f404e129fbf89078ade0} +4 -3
- package/vendor/impeccable/bundle/blobs/{6e20041e209e8705d14aa9c4fb8cca3f0d743791de633785e5b46e2dd1ff1a6b → 19b439d7d16e139357459d3874f739ea94dbdffeb2a0e201df1620ed1e40574d} +1 -1
- package/vendor/impeccable/bundle/blobs/{04af9f2d6883fe76f9539d310d9c369052822a24886d2c330ab1e3fe5981c8a1 → 1b289c8c09de9d4442109ada91b1fa3a190e113a310cab7aa26a3633c5df0bb0} +1 -1
- package/vendor/impeccable/bundle/blobs/{eb3213b9c9f4d6b2f153e7b457f13aa131bcf633695229dad4eac39a920bdf38 → 1bb3bdce54386e96e21b5956713a80583e6b3b9d1170f3bb8dec3819fa341bc3} +5 -5
- package/vendor/impeccable/bundle/blobs/{e71d6b97680084a7ccec01844e658cbd2042aec00da0c91bec62a240ad7dcf6a → 1c11cb8ea42536c7a51e197f1aa32198960bb89262da2eaf32e0feb03c70792c} +18 -11
- package/vendor/impeccable/bundle/blobs/{f0c4d0615c7d520dfc2536c01cc7f1f3aab9b60ddc399ba01289fe62edb12370 → 1c6258015ed02c522948f8f1a3b6457395a8f7954497b87c1cd83f1791f9f819} +1 -1
- package/vendor/impeccable/bundle/blobs/{27c4b6c90ad12a186136f9ece9cb1830d4a6e36b11382ab334efc4543f8082de → 1d7145fd5bf65282b2e05cf42faf41766d68e83e2b75f460b3b62d81ada5e5d7} +18 -11
- package/vendor/impeccable/bundle/blobs/{1484a7ae206ab4f0e6262b21afe0f6307a629ed27d28fb7de69536a6800a4883 → 1e2f696760ee55fb154bdcc302c7d7b0fbb807e0308130594bd892dae14dc9ea} +5 -0
- package/vendor/impeccable/bundle/blobs/{6989120346e87907d59cc6d4708dd9dee29227ad583fbefee28935395b68ce34 → 1f6c3a1d7344f44eaa88b6f38334ad7d7b60201709589039a58cee73de486f5d} +1 -1
- package/vendor/impeccable/bundle/blobs/207d443cabe4e6fe1351f91785748957f757bf1e7aeca405433c0329dad46a15 +63 -0
- package/vendor/impeccable/bundle/blobs/{f7916d0113da7a19d4e03c113d5563d181457e44f1646ecab9191cfee5ae776d → 20e2111b3e065e8e8054f715ea3902e64b77886b30d2bddee723558f22942620} +4 -3
- package/vendor/impeccable/bundle/blobs/21e78c8a77badb3f83290cd4577ed3b24bd4dd3b57136d7da75733d4f3ee9ac0 +19 -0
- package/vendor/impeccable/bundle/blobs/{0f83648f6b425225290305bced51eacebacf9bf9bc05e21cdbad46863fbc89ce → 223f08673b267f81d7586f686afe05d7cd7529a8e11ac37d979f95c2ceaae8ce} +1 -1
- package/vendor/impeccable/bundle/blobs/2499b18f26639694344ca95682f47c65494f730cfff88aa9bd2aa83a22e5926d +101 -0
- package/vendor/impeccable/bundle/blobs/{074575671f24cf4298d06f0019f76e94f62e9a6ed205fce05b8e507341e64266 → 26cd88d10f8a14ed0ddb6e6b21e5e2c981f410eac93afa179202c354d7d1c0d5} +3 -1
- package/vendor/impeccable/bundle/blobs/{5f24c5a97b4ffcabc7c432b064cfdd04c7a2ad52f52e765be648dc0aadab8f38 → 275dd1b6e63bbd30d2713227c4f79b880a8bc4e01cc48d392068bb86939d3afa} +1 -1
- package/vendor/impeccable/bundle/blobs/{356cfa0ebf61589cf5d52691d101a69d69256062fe1d11d71d95d41a78289cbd → 28f65b42c1ce9aaea35dc37a51257d7c703bb7f6553ebe3b8ca238a1007251e0} +3 -1
- package/vendor/impeccable/bundle/blobs/{a1dbde501ffabb50f30f28f2de6755b5e91b3d4028292c5a3abd3358106eb457 → 2ac1624b1253f3b6fcf2da54d54293624176539b2e9609a49245e7e46c65ca5f} +5 -0
- package/vendor/impeccable/bundle/blobs/{3895765e9434400dfc1b30e364be002cf499c1718fb2431e65b907c14ae2cb27 → 2b9379cdb329890eebe2384fbaa23f771745f30d8cfc43e180ebd092e69bcd2f} +4 -3
- package/vendor/impeccable/bundle/blobs/{1a9180cec754f8afd354e7cb759750247e97c5bd26d3242ad4c45e315069e8c0 → 2bc5d62463cc83d6417df7b8f4a02b4135e2b1bb654aa7727890662496f86e3d} +5 -0
- package/vendor/impeccable/bundle/blobs/2ce1722bd1a9f366182d9357d629796b1448f7a0126a854df507eb044d891cab +26 -0
- package/vendor/impeccable/bundle/blobs/{e21af575fcc0f1df54ae422bea4dfa1e5211422606908919f6a86e19e0d5c20c → 3149a87bbed84bffe3558d5eaf1dc596b2e84d3c1be290fc7b1c13e481ae0803} +4 -3
- package/vendor/impeccable/bundle/blobs/3253eab02b62efa80abc74a5c85da08f3e2c6c20dff8dec38f4d236cbbfa0f3c +63 -0
- package/vendor/impeccable/bundle/blobs/{38c2e839e130008b6da814ab9c16f3fcbbedfdf721a9638eebd31a9e65341a7a → 37680abf9a8e446619fcd33862718f483d197bf2652f966adca8dc54d2909b9d} +3 -2
- package/vendor/impeccable/bundle/blobs/385a0efe833bd4afe4a257e7159590de0cf1b7fd8f7b213b732f1e537c62dab7 +21 -0
- package/vendor/impeccable/bundle/blobs/{8a1c872773996dfa1c1eb765ac7ed8e8d41f99d4f12f090b4725b694e85eaa62 → 3898bd9b56a042e860a0db4fb4dd81ac81126fa218b604702e2ac0c2287ae09b} +9 -0
- package/vendor/impeccable/bundle/blobs/3b2b60f23fa8ed9d73e721e17142c3933dc5318fa9a251742a76fee890ac81a8 +26 -0
- package/vendor/impeccable/bundle/blobs/3bd55b35c253f7841ca4e6e1a855a4b477d59aa2daf6e61e93fd685caaaff131 +63 -0
- package/vendor/impeccable/bundle/blobs/{dde1b74aeab3d90320e134f0ed0422bef99917dcab4c1749aa1720a2c94f725f → 3bed76a0d528e2d73da8acae4dc63702bdb5baca5ab11600d70e75fc9f2ba90b} +5 -0
- package/vendor/impeccable/bundle/blobs/{9b2fc50c5062073d097140cde85602bba181e325ec6b9eea1bd3da74582acb9d → 3ef9a43006bc68d83bc958fc8401e59f9beb6379048f5ced047747fdad05b895} +5 -5
- package/vendor/impeccable/bundle/blobs/{30e006fdee873bac23edaeadce0371161625e021e3cf442dff4b05bb82297ba1 → 400419aaa20f710e1a7e5ca1fce9e8bc995c4db84053f40cf778d987619e0210} +1 -1
- package/vendor/impeccable/bundle/blobs/40cd6024312a1339aa66801df533afa543e60c36e708f0f9659dd8d558f83dce +63 -0
- package/vendor/impeccable/bundle/blobs/{55e95137b3f9198c1d4dfc425366b82f1ef5f77d602682b2edf91f2ce9296289 → 412dd9a5238aee223397591fe49b3bd27b6b53d649a0e67ed8570f3e199cebb9} +1 -1
- package/vendor/impeccable/bundle/blobs/{181e814c1b9317098b2300c1b02ad0d137b6d82bd1e7e8cc64de4d00b4c50c25 → 41ef23c048ab739f48afdce26a2678d36ee40bcced34ef4b969d1d8ffafca64c} +3 -1
- package/vendor/impeccable/bundle/blobs/{edddeb3fad88adec9a055b1bf9d5c75418cbe97a13b1a7f6765e73249e482563 → 42831c3cd874346d8e7f120808d91e6ed3cda5c3eca6eefd76b126659536bc87} +5 -1
- package/vendor/impeccable/bundle/blobs/{e3c331cc21d9a216e25e08628610ea99c97e150893c3d26e5c0cecc532f26d7b → 43dbfcb7c2e54c9cca9fce66024f17c06a2f2be645547b718b75c8828a463de2} +1 -1
- package/vendor/impeccable/bundle/blobs/4435529820c3fc2eceae8b1ee35c906a34c7612fb860117e896152b45aee0770 +26 -0
- package/vendor/impeccable/bundle/blobs/44a60aedcc350c2d7d501d0f830a31a586a6511a9ff9b4e361cb328bb747339d +101 -0
- package/vendor/impeccable/bundle/blobs/{c6a0ec6c28ae55fe539f0f41a507b1638495afd285d6eb15c00245fc8cc7e7fe → 45dcea8da47cc21f447041daa942cf5d92cddde9a5a02c196cedbd159c829304} +5 -0
- package/vendor/impeccable/bundle/blobs/{015725eeca94f52bffd2132d4cb49bc3eb1ee76e6ac7378c065e629d59f56613 → 4700adf4542874f204c680ebad8317a97bf7169dbc04147082618ab59ce70c7d} +3 -2
- package/vendor/impeccable/bundle/blobs/4777bbeaff2efcd6a2a66b07aacaaf57cd32f3fab1c1da5a0513937fafb48bd1 +63 -0
- package/vendor/impeccable/bundle/blobs/{b6022a8c7200e96b0b55c2ff599a01d64123a2f5fe01557d4ca5192a6e0f0b0c → 484ea165f6d49ecc15b7a5c5623e377f2e203f4dad366df23eae99255ecf4572} +18 -11
- package/vendor/impeccable/bundle/blobs/485774d58dfd5796956024cdd9c12f05e692a3703f70b12a02ab43918885c3fd +101 -0
- package/vendor/impeccable/bundle/blobs/{3bf5d8661351831dbb2195e3b677fea1f128ca319c0589d538b66d9c9d7dddbc → 488da2e7406c6b4b5c92d7bc8cbd370cdaafc82a5f3ab5adbcffb21d1d1c4df4} +3 -1
- package/vendor/impeccable/bundle/blobs/{6f1d52863482fa0f6fff877f0cc8f6dd0b4230d28050b0d267e082776e61a332 → 492a8030d11e2f4908d934bd817bd6d16a3164056c74a7172f60e2cec5ff3055} +5 -0
- package/vendor/impeccable/bundle/blobs/{51e2f8963377f142ebdc9864e0ecc5aa1e5b7d344ed72d0e9d748d2d3d8c71b3 → 4972f28d96897c8dec891f0de7a0d9d51f36030ff780ed9d960241c75413da2b} +5 -5
- package/vendor/impeccable/bundle/blobs/4a6f0386bff78bb42efa285df2919e75209ec336672cf5fff91ba66ffb352eaa +63 -0
- package/vendor/impeccable/bundle/blobs/{12c1afcd15e86d840b89a78c6d17ce6d1b5609bac713d59271c6ab5932975dac → 4e3cc4d0e229ca96dd2e28fb2da0478a7f0bb64e447d07a652c425d8fbc57573} +3 -1
- package/vendor/impeccable/bundle/blobs/4ea8e05d0f88d24f182ad554da84317f90b9730e29fad262143ddf423a1f8645 +26 -0
- package/vendor/impeccable/bundle/blobs/{402656ca6df17bad1cd55ede0a966a7bb5b187cf4f89c517851f9efe7f14c0fd → 50d4b14134fc06daeac0aab6960800f171ef85250d3bcce6f246cf81e824463f} +3 -2
- package/vendor/impeccable/bundle/blobs/{43852ca5917de66704f73f9019d15482bb1efd92f2eefaeeeae23610b4c0c6a0 → 50f3b5714ca3e2c1bcf070003733407935ee050609d3123c2c065489fbc9950b} +5 -0
- package/vendor/impeccable/bundle/blobs/{f597742c8e5562263d3bce725cb55e920d8c2c60223f41a632d523ca30cdd12b → 51032bb883137007127d30189b44b516d0e6140271bf5881da7eca76f8bd282c} +3 -1
- package/vendor/impeccable/bundle/blobs/{13bd27aa8573e6d45d8bbf9f3fc991e4719d28a7e8f709009a4a5a49a227fff3 → 511ecde67e6bd976c9bdfa8d92f0dba359621344f8135c2a5ce5a66b385a4cb5} +5 -0
- package/vendor/impeccable/bundle/blobs/514a27fc9830455828d337cfc2fa95fa86be8e5464501bbabb9aca09a66b40ad +63 -0
- package/vendor/impeccable/bundle/blobs/{78ac93689928a580c2f90242cbaa96dda3fa4e55ff1f1d00e412b2a62ad85232 → 529cb2ace696ec11a86f4b010c9b137acf282072e483932181be1871df2aa690} +18 -11
- package/vendor/impeccable/bundle/blobs/53628d05b7eff0d4f48b95e48fad40266452fe1b42f398bd88dd9328353e0dd8 +101 -0
- package/vendor/impeccable/bundle/blobs/{00023f9e7f2e27604fde978b56510a8f837b76eeadd93221d11adcf4c98f1a10 → 53de37260c4f1c37e467557e9b038faa0f285b056bb2b95f435e0a7d1b69b0de} +3 -2
- package/vendor/impeccable/bundle/blobs/{0dbbef70048cc3ae44e6710ff09992ce14ad049ce8ed519b0ff8a1ddb4633f4e → 5415103ca4422ea1422e23bfe9f9bae181f5d6d6407442f7fba31856ada58d12} +3 -1
- package/vendor/impeccable/bundle/blobs/{af34b8af89edb10e228c0482754423f48238fce816eceb8703b8781c130da54e → 56285b28b0ffe471761c2ad062d3f933ed2346ca1b617f1323a30fed99a1a852} +1 -1
- package/vendor/impeccable/bundle/blobs/{12fefe52d80d25014e5f7e2f9b278275a675653d3d99ae8f0ecf344cdb9abbe6 → 56cc1bba51e6805de370160ce4a9399fef3740571204f13c3c751725870305e5} +3 -1
- package/vendor/impeccable/bundle/blobs/571f5c3bcf01c9b1bd02ab853a54db3f88375c4b8f39dd67d53e983a33e08bb7 +26 -0
- package/vendor/impeccable/bundle/blobs/{5ce02fc8f353d7f659535fb80e453963dc047a07c4396adf098fe010b479e7c0 → 5855d7595b0212bb8d521e0265378d437df8d2343d5f8a30408c3edde0a14d96} +3 -2
- package/vendor/impeccable/bundle/blobs/{2b21f0142ee88a11dbe2593362f5a910718a61062e3a64e7ff936ef1e74fd394 → 5a07d4769a741cd00fdf8c95b943ef072eb12cd0c9e2c2d2622d5fe0a4fa3894} +5 -5
- package/vendor/impeccable/bundle/blobs/{3dd45e1c32db3d3163a96ef198954905807b25cb9a1d206a7d77986f21d27652 → 5a9626fb8c1e9051155c68626fe7c765a55be325113245d44b4991fc3d3b014e} +5 -0
- package/vendor/impeccable/bundle/blobs/{d07e3131cdf3e392e59eaa3e2f59fcb0799d9494df4adfee12a21067fb8365ce → 5e354ae11913d5846faa3681a9ed98b68d1881fbbb1ecebf0769e3010bb0a426} +5 -0
- package/vendor/impeccable/bundle/blobs/{ad389ab12800738b0e5c97618278b7a824654b25990166ec9f389caa5c3386ca → 5e6eea05456108b8766cf354dda998e90b6a5ecca7f15d807e28659ee78c306f} +5 -0
- package/vendor/impeccable/bundle/blobs/{85b9c2d051de94ee9129c58be111946f73035ca62bbd2a3936f4fa48768fe5cf → 634257e766b1fecacd25e27dbfc7e21ef3b440b01e94e92b8b17711018d8a661} +18 -11
- package/vendor/impeccable/bundle/blobs/6428239079f98fd6500e9fd032dd289b52052da7a4364ff357b0a5341b6444db +63 -0
- package/vendor/impeccable/bundle/blobs/{f424dafa190533cd32c0bc3e4131d0c472d58e16bb191eab14f0ae73c2cea917 → 647bab2f5cf6279d58d808f4df05d1ac63c1c86c6df9d13406ae776458653995} +5 -0
- package/vendor/impeccable/bundle/blobs/{8e7bb79db7331b93f99de314dd5599de8587ec0b6c25e26cf1efab25c0777fcb → 6528f2aebe4a425b724de293c8f6dc8a42ca80c7f1ed3039b8b9a813b004956a} +4 -3
- package/vendor/impeccable/bundle/blobs/{89eb0206a0d9308c6c6a7cc01bc4fd8812d2bd34bb9a831988c5d86fac2c60de → 6575a657642ccdab42d0743ceaee06621c77811b4dc4f21c616e28aabf5e28ef} +1 -1
- package/vendor/impeccable/bundle/blobs/66d60356172ccafdd334fca9bf33243c8409216a733dcde0d66a24fd70ee8132 +1 -0
- package/vendor/impeccable/bundle/blobs/{759bab1d8adc071fdde2efcf6e2157aa4026f3c2b4f3c342a8070bf328011616 → 69cad1ae7355825ef320ac9638a1c9675ba9fda01c9a0fa12244cc4a1973e550} +2 -2
- package/vendor/impeccable/bundle/blobs/6d21d8e2729effaecc5b6239dadbcffb1ec8d51e8bdadeb47a39827266a61c5e +26 -0
- package/vendor/impeccable/bundle/blobs/{ff882c59c9aced92338aa194cc99a521ea2f083fd22eef3b1c1225e06bc72f66 → 6d9258a49c0b0583ec255eeb1092554298d5eea676fb9391f5a5a1377c3fd770} +4 -3
- package/vendor/impeccable/bundle/blobs/{68bc52a604731ca024610051fc763f4d78a53eb2a45d35b40a8c0383043baa63 → 6f4dfe968f47302ea64dca0e02f8c6d81497d93e4f436d09236e305456cbcc02} +4 -3
- package/vendor/impeccable/bundle/blobs/{f97a6891c80bbbc728edefcf4b638d1a823b38f3cb16ecd0fbb717734cc5c0c8 → 6f7f1639a933ed88e116aa8ab0cfb951096930d14f413349ae22ed04e28d2358} +5 -5
- package/vendor/impeccable/bundle/blobs/713a942482531ef8ef103adf48d9decd7327697450e444289aa0479458e4ee1f +101 -0
- package/vendor/impeccable/bundle/blobs/{6d47503587ad6da17ac529f44a96123bbb96a9c91a7a9350b7690fc467561a5d → 7212014fb2477d1d54aedaa79cdb861071a58afb2ae6d4dc5a495fa4810c6f8a} +5 -5
- package/vendor/impeccable/bundle/blobs/{21bc91f6e07691e82b7bba99f9e1d956f9d7a6810dcdc18d231fe73b53a13b23 → 73f8bdec7d9a97476fd7d7e0b4114b5c3e9c7b84c22cbb876cd18c3e64a9b8c5} +5 -0
- package/vendor/impeccable/bundle/blobs/{a8547c8565979894f0c07f92a96ac2a38e681a31fbf155ffeefc7566e185d9c2 → 754e9f0aa2101245a83cb17d8cc5bc49cf87997b29a83dedbfff283dbd0a8c4f} +5 -0
- package/vendor/impeccable/bundle/blobs/{84df879a0332a56ece4bff1922ecf4f50635951b3c67e67eb46f31bc5d30fa9a → 765d3e890cd7f58ca94b6834181052166e9c4f9ef06278dc241da4d64da2d595} +3 -1
- package/vendor/impeccable/bundle/blobs/778cedc9199b407d3e23fa1041e38d548b00b1101a33517aa2a2eb299f9d0edc +26 -0
- package/vendor/impeccable/bundle/blobs/{ef0b8eca20e1321cf7216fd0bda41ce54b0cca197cfd1b075eb51f3436f59059 → 77ae09542fbc10aa4e8b119d6fd19359908a47c13c30068d6a150bfdb50e3e10} +1 -1
- package/vendor/impeccable/bundle/blobs/{15b4837dccb27d7382e2f134ef050b244c4488b1906e0308f288112183cc09ac → 796bbd8231413fcbf22eb7e6f40c402842aa4b10b1894545a7b05d9201ca7c4a} +18 -11
- package/vendor/impeccable/bundle/blobs/{5e3616ac45568f239fda3a4764f7d3bf3473b8b5eefd91e402dd9208a4b851d1 → 7af7fcc09c6b14f26ba78734460a2f9dddd2dcd2e2fa0c47c682f539e2f4cad5} +1 -1
- package/vendor/impeccable/bundle/blobs/7b1a4cc5ce94837c8309962a204c47361927e442b7a1c3cc472f90276eca8b8c +63 -0
- package/vendor/impeccable/bundle/blobs/7c417abe75f0ce4341b6f5acbadcafbbeabcc32cdb13c930aecc5cabda9f9242 +26 -0
- package/vendor/impeccable/bundle/blobs/7e36403ed58e0e82c0e42bf2fbea1c066b8e63276978647a6f1e44bf1edb23fb +63 -0
- package/vendor/impeccable/bundle/blobs/80191b3580a996a2045105976f728e0f46de22c412fc7640741add9767b2d8f4 +101 -0
- package/vendor/impeccable/bundle/blobs/814610dee1081abc4213476ff0c4ae3e8f457909550d250ea0f89953687c85c6 +63 -0
- package/vendor/impeccable/bundle/blobs/8157b5a376e46980117f1ad6d08b24ee7be966f5de64b041bd213d486ea8c077 +26 -0
- package/vendor/impeccable/bundle/blobs/{bad9250670c18d89722563fd747bae4c4bec64d1db0ee09d12d4fea04fe271b8 → 8373668da1aa37c39888809ed9e834a7edfcb884af12f74934c270d004fba626} +3 -2
- package/vendor/impeccable/bundle/blobs/{46250caaec1bd69619a5b28a73cb3c845b319d029b0af9228aaa7001e7e0104a → 83d614fec61078175383012a088f49a9c0bb08b9ebd2b651c77cb94a323474ab} +5 -0
- package/vendor/impeccable/bundle/blobs/{a5371492582dbeb69b24a1a2947b256a2da8a4d55917af709bbab6e452d9d23c → 8449781319a33d4a10a7fab9bfa4812241c303b95f33703b300b097dba51089a} +18 -11
- package/vendor/impeccable/bundle/blobs/{12d2a8043ae8668ad29c32bfa92995849fc49cb016e6ebd4f7e59539d96e7b03 → 857c4a0db5859f1fa91152db684528299dfc552525f50f416d1625a270e12671} +5 -5
- package/vendor/impeccable/bundle/blobs/{bead87679caad7c537dd7c04c3bb78be56ac7eec279ad6aad7322f48ff2df2d9 → 871a8e4d749b807c693ebabd83defbd6c76e1bd2a0f53a28a460cb1308ba8634} +6 -0
- package/vendor/impeccable/bundle/blobs/{cf3ae16765e7b5bc333ef76e24ab37f080e3d62e931c4986158e3cbcda6b9f7a → 881a58aadf300bcc8f4947243e82192ae8dd7f14822a70fabc84fc74a5f9199c} +5 -5
- package/vendor/impeccable/bundle/blobs/{896da399bafcffb0623bdd81bb18709d6eab25c9d5917e739c8798f31ff0d076 → 88549c11ea55d5dfc9f551db9a9c270d7362a9d42aa83db7747c9a7f020e1255} +5 -5
- package/vendor/impeccable/bundle/blobs/9287af96048c58ed0e72493cf7eb90c3957d4ba8b19e70ecf5d1f54264e9e597 +101 -0
- package/vendor/impeccable/bundle/blobs/92b7ab84c828fa888f4882c417c3d7f8fde2e5445b40f96f4fc8181a3e058afc +101 -0
- package/vendor/impeccable/bundle/blobs/{e2f98c4136d0ab70ec32fcdef58edb20ed8ec4f6cc067e0dae952b22cfd6a471 → 93c53421c3376f695fe9dad5c82102f74bb5dd15e4ced81bb4ad50a71e5f1027} +1 -1
- package/vendor/impeccable/bundle/blobs/{a8f4056a85706c0c8f80ec48e9b437e198464100aa42786f9252051f4b931c19 → 95f0c7935a6d0375e09ae67ae0066c0ce7b583bf1d445d268cc4d2f4f900b1bb} +3 -1
- package/vendor/impeccable/bundle/blobs/98384b78af087855dbb526ec1e870a676ecd87f57237643dfea815317dad8a07 +26 -0
- package/vendor/impeccable/bundle/blobs/{948326fab89f0d5c07355a06b9b9c30d08bba2e3a673a0151ebbf5a39dff7b9a → 99e4a6facdb07986aa721bda8a4e35466b30091f32e38d7a71d9fcbe3591f65a} +5 -0
- package/vendor/impeccable/bundle/blobs/{44a91b3f0810f43829d8584e912812444d15614e4b57ca8070aee7ab899f7c1e → 9a4aa0d4903eabee987fdc92053466ff7f6eb0604797aee0efe67d67999b3eae} +5 -5
- package/vendor/impeccable/bundle/blobs/{9b85b85443aec09918befb83208c72f475457db8261a8fc5e83ef7eec474c869 → 9d45e5f6c082de6df4a2cfff11deb969715c49b5d9891d100dd1b2252c5bdcdd} +18 -11
- package/vendor/impeccable/bundle/blobs/9db3c0857f4c2c8877b1fe24a47a229fee0de76ec9057bd8ee95f0677fb58d74 +26 -0
- package/vendor/impeccable/bundle/blobs/{5738bcf9ac21dbb2113fd0c5cc7e4bbfc8174778916ab5843644332b3dbbc36e → 9e82126a2e08aa365f9c430d383cf6e1921e04d1e0a1b5777716ff97828cfad8} +5 -5
- package/vendor/impeccable/bundle/blobs/{b3782f2d9215eb0f5df4fe3c0e0bec07cef011e1836d4d0e45ef02bc48d3adde → 9f2993499adadfdef4065a9a7fb69c75f888d892d4ee6bdbe62619bc772f495c} +1 -1
- package/vendor/impeccable/bundle/blobs/{1c804990fd8ac23a4b19c42972b5ae591d17f620d0006f0f32927c8db5d5bf50 → a1af8b8a97665a3692eb39872c235796684a387a0b83785872f81aebd9dab046} +18 -11
- package/vendor/impeccable/bundle/blobs/{824b994782a1fe68a244bbdff7218a2e0854655d90cc0fb5ade7ef9259ba6305 → a27399e3056c77a28ddd310fb5b4dee6e8e440dfa1737f7e38815097bec4c3a9} +5 -5
- package/vendor/impeccable/bundle/blobs/a569989e6a3d6453b4c45e9474e162a15cc54e11732ac6baa7990a6e7cccc0b5 +21 -0
- package/vendor/impeccable/bundle/blobs/a75b892696469e3ccd2af33c9eef793e635efc3c5ac45336b0c1373d90c856b0 +63 -0
- package/vendor/impeccable/bundle/blobs/{3ba92d4aa840ec1b6c2fda224339489d6dd65eedf43bb45836af02584d1faa88 → a7e8e60df83c6f47590467094ab2a13f1fe28ce45959a4e69dd89575a4208646} +5 -0
- package/vendor/impeccable/bundle/blobs/{e49d2b0110c55751da3c965b4ae4d294aa676c961a09f8efbbbf22c1ec7c4fa0 → a892e337eee548d53252abb72ba5aa85cbcf556ffd8dc74e05534652c010d574} +1 -1
- package/vendor/impeccable/bundle/blobs/{8f0867db7c6f6a54348a0d951f198a1bd852cd12505d821e6e1ac6bd42e7fcea → a93397adc906e245c69b42d4b25931fc92dc75baa60ca9a3749ba23b52ba01a0} +3 -2
- package/vendor/impeccable/bundle/blobs/{424b2e75cb204e2dca7db4a40dfe5a81f78dc0fc58ac4790e8b7bbf2f330bba4 → a9e63b2df611805e845e0bb1cca1a0c27e83640a78185c9fd9de90d53a539cdc} +5 -0
- package/vendor/impeccable/bundle/blobs/ab80e6a971baa66342548a846ce3fb69824ef9ef4e0f26c6f02685f225d00bbd +26 -0
- package/vendor/impeccable/bundle/blobs/af35b5fb6e45acb6483a5fbb864c3eaa9c57bacc43857f48183c836041c670ae +101 -0
- package/vendor/impeccable/bundle/blobs/af5842c4844b692b817319d5375611d4211dc7f459fb12da358baefc3a6cd373 +63 -0
- package/vendor/impeccable/bundle/blobs/b2732083f8f1d1924d38f84f179491430aebda8e0fd1f1d0785e3f883bcf3a40 +63 -0
- package/vendor/impeccable/bundle/blobs/b3b1d5a4c80ce279d88896601deee9ccfeacdae0d0cd433600985a5f7ac93c72 +26 -0
- package/vendor/impeccable/bundle/blobs/{fd5579dbae1fc2495b7dddde48df9673acebd27953bbb56d506d3b470375c9e9 → b4be5499f404a926cdd2c55d8fb7409ba74a56b3d0c7d865594cc0254d3e499a} +5 -0
- package/vendor/impeccable/bundle/blobs/{2fd096823e4a93f19edd421a69e10f90ebb630a014c673d1802a927c6f47b7d2 → b626e0677288a1660e9ce80c4f0454b527010239681f6b8dcc0f36b4a4d6bcb2} +3 -1
- package/vendor/impeccable/bundle/blobs/{33b6b32c0c3c0c4a2b22bd2275176b1c88a006dd94592a854f629911a0b21cdc → b719be9c5d4ced5d649ec6c0c90630196e7ee513d0da482aef13c705fdc23ab6} +3 -1
- package/vendor/impeccable/bundle/blobs/{df0eb9e9a484fc7b8a0f3e50573a7d7f81e0f17598ac30d9f3fe5a6c6aa5fefa → b8938fea3399aa639b4c873248035c219658069eef7be62672254e2f72c056f4} +5 -0
- package/vendor/impeccable/bundle/blobs/{ee0a15fcfc244b76b896a2650a17b35e444d4311166b69a3cfa32d11f8f44851 → ba0d96d88ab40fad1cb522e60b11affc568cfe9d340110ac5e71f834ac3d0f4a} +12 -0
- package/vendor/impeccable/bundle/blobs/{426c7f5437dd3c23a4cfaef6964dc7f1e038480f92238499b85f3ce7e4472bf4 → bc48bca63dff44e1f0205bafb64e16b2d6fb294ace405dbc9ae06a3bc6107154} +3 -1
- package/vendor/impeccable/bundle/blobs/{c3ad2a5fa570876af6645c48d246c664859e19f253d2dc9e0ead34e785d5b40a → bdd676c8f29295addfdbceaab285bb1184ec3ef7ff60501908b97ea8269580c4} +3 -2
- package/vendor/impeccable/bundle/blobs/{38d4d404030c6ea935d3223db1eeb22c45d04a94f41f98e02a43cdc5af7ff2e3 → c06effcdc60859157208d3b7ee23d56160f2386f6a2dfa2514ba82fe21828ae0} +1 -1
- package/vendor/impeccable/bundle/blobs/c100b67a4ae248ad564182b181acb1ee2fe64c00049aeef62d4e7a3213726f37 +26 -0
- package/vendor/impeccable/bundle/blobs/c2dfc965319745c403b99e00e9e97de15f1300ea721bd3f708f0ac47aadc537b +101 -0
- package/vendor/impeccable/bundle/blobs/{e9da72a13eb3411d6bbb316953022f62abc4434f505e5345907b216eda9f793b → c6b3bc811eb23d90ff9add1e0e5b40999a0bbbab364f5e6d08061f36d30429a5} +1 -1
- package/vendor/impeccable/bundle/blobs/{82a5e564563333aabb7ab4d2f8c26c785dfe2c2416ac6e9f30cba31440676194 → cdf8a88b9865599c58fe285041d2d46eea7d9bd2d4075d82de358191742b20ad} +5 -5
- package/vendor/impeccable/bundle/blobs/cf3d3a296890ac1ee363fee930f252e20d0935cd575367ad017b3cdc2dc5a50d +26 -0
- package/vendor/impeccable/bundle/blobs/{a1e4febca3455787d7c753fe177a150dccde6e742957de400b0307247802d200 → d2e16da9bb6b33c931378d1bf57dcfff5dc426a71434bc352cec6aece715a66f} +18 -11
- package/vendor/impeccable/bundle/blobs/{c36f6aac0ddf52eabbb21df09fd3310540dca6b09e7a4017d18e94c06c469405 → d4a9e18a879bbb92aa0a56e16b45481090dffa4470efdecf52fb0da8c900be5d} +5 -5
- package/vendor/impeccable/bundle/blobs/{869fa5390b84bfd00d072f5280a9002ea3e3936edf5985241be641a87f03ff7b → d57c3e0453f601ad688911fca4471057c7b46b561fcd42a1e12a581101c5186c} +1 -1
- package/vendor/impeccable/bundle/blobs/{910461b1c1f8216155165955c860a884a1e2f557cb38f21ef512ea90ef6503c2 → d5f83912eda93d42f93522bb74aeff0ea04d9c559577ec52fcccc130dd03166d} +2 -1
- package/vendor/impeccable/bundle/blobs/{9deb14303b421b5a9232755b5b9f317716f33e1e211557a98a00a9c409775c4d → d6489d7f3e607ce3f8514a7a7d3a0eb5e8f1ac55859eaf7d5c31b53de8fab9f3} +18 -11
- package/vendor/impeccable/bundle/blobs/{37080ea5e5b381adb7eae7a427231b0ad0dee0f0916fc1d6b673b7101a5b425b → d6a51f4df6d76f16b95ab81268a689f4c5936d505c5bb25c80ad7423f927bbc6} +5 -0
- package/vendor/impeccable/bundle/blobs/{61c72fdde649bf7f2e0668e48f9d222666c81672100b5f2265940e7aa13c8767 → d7b99a57652cb8741d57a15ba7e06de4707fac02a97e5e001179da007272f2b8} +3 -1
- package/vendor/impeccable/bundle/blobs/{57402ef6fd9d0745f8c60d778f77da83a8b16edf751fa1013598a0f6e5f0f541 → d9963fd73bf6129fe0c8ec25c5148f50617ec85683b8eeae7e411c9a42e2db33} +2 -1
- package/vendor/impeccable/bundle/blobs/{581409ace104a81744b7d08f5398a2c207cf76d9e50751f807b4382eaf66454f → da3b2399814db89d67959268c646601957d3e8c641b09a5bdbce84217c1c2cfe} +5 -5
- package/vendor/impeccable/bundle/blobs/{249f0437a52ab3eb4bc4d4a9f38e085334c0fbb7795e88dd419e32b5f58c924d → dc3aeccbea3e997704ce8b170f56b0eaf343a14ad4fedb22a6dbee0f205aa37f} +5 -0
- package/vendor/impeccable/bundle/blobs/{433a79eee3ce4c99e79a7aebe3a6d8ec9ff70216772e0c2ff9dce3a01d672963 → dcc1572e739cdabcbf084f276b447cb686aa18459896e6d8fe29f4d7d807bd1d} +5 -5
- package/vendor/impeccable/bundle/blobs/{2d7086992c07df1fc734cdf9c420c4bd8ad409ab7909e07c8b486c303d420732 → dd66761b291c7dbca6e9efd22023e38f8c53ad310f3a6cdab5dc7ecd7ae8f31f} +3 -2
- package/vendor/impeccable/bundle/blobs/dd953992625c240fd1842aaf533a865aabd09487cbc16fa01fe8bb4b4365b843 +101 -0
- package/vendor/impeccable/bundle/blobs/{df4f14df1daaad1606b682995f649da19a85debf264092447b3b7ddb8b4bc1ce → de70398719140e4951aa111e9625de5ed916ad1ef0877e4ab6f6b4a7e3cc5f8f} +18 -11
- package/vendor/impeccable/bundle/blobs/{8b23562ccc3e41609ce6e67fdad6cc57b6c961964c329eff6975a1b4c5471c0d → deaaa533475b6a9f7dd52e01a1f1997aa3af146694334981650f8c846f939559} +3 -1
- package/vendor/impeccable/bundle/blobs/{041535231366047a0beeb5daa64ea9c23d5a566580f7dafdb8c0623cb4a7e76b → e07176229b8a330970ca3c9c5e3dd68c2aaeb726285e30f471e91053d7f8e798} +1 -1
- package/vendor/impeccable/bundle/blobs/{115e1c3f1b58b5129910ed925dbf65d61d5ac4c2036618847555ce40098aae97 → e1075ea5b34ac9c60f7c5bda97356eeaf1b683b599592d324fd3704f0852ad7a} +18 -11
- package/vendor/impeccable/bundle/blobs/e3af212117e0c552b0976687200fe8f95846a01725a482e8e4dbfd75e40dbfa6 +26 -0
- package/vendor/impeccable/bundle/blobs/e3c2031978cd670d7150ff3140f12cf8b6882ef638ea9a9985caffa9a80c8713 +63 -0
- package/vendor/impeccable/bundle/blobs/e6e18e7c23cfe82961d90b9714cb466c20bd83f222ac63e9339b6b2c304e1787 +26 -0
- package/vendor/impeccable/bundle/blobs/e7af7ad18b307a3171fcf49421df2a557f93289d27af2430f10ee74e2a2fc2d3 +101 -0
- package/vendor/impeccable/bundle/blobs/{b161198874e4e77599bc31691e78790be14bacc2eb03be168c8a7543ece9fbe1 → e85da3098368807689009184eca2bb09a91bdb6cb1be3e7a61f91f1ae31cd69b} +18 -11
- package/vendor/impeccable/bundle/blobs/{6bdbc3f745ceee15e10b050f109ce42bbeb53ab3c3b5239257de1d596654dee7 → e8720f3aa41135211cc58cc299a39eeda86c75651f4279cc1ede8db10dcc0584} +4 -0
- package/vendor/impeccable/bundle/blobs/e9861052457cc1ddc42c687bb8c33a877834ced94fed74af2a4f00f6bae50795 +101 -0
- package/vendor/impeccable/bundle/blobs/{d1faa55eb956033d28e9f27fd2bc2a9f62c5da0f0abd6534819cc0a04db54d9d → eb3e86876c20f1cfc443dcbe48d8f41fea6e815082a304610be432272429a06d} +5 -0
- package/vendor/impeccable/bundle/blobs/{0e1819750e5448311a051d35ab6d0be0830418f78ca872ef10469fafebb27d4f → eba472f6190541c28e2e647ed019f43564ba5b92d629963f34c899175b25b31e} +5 -5
- package/vendor/impeccable/bundle/blobs/{f173ff03f989f162cee815feb2d8ca72daf00019c48694d89db16d52171a79c0 → eba609589a5a051643a7bae60b7cceef7cfe44d0f8bd9229e61473ac75910fb3} +1 -1
- package/vendor/impeccable/bundle/blobs/{8eb466778023fccea641654d662157b123eeb360f4a0875bf6fbe3d93680851c → ec81b008d2641402e3352b09b1a90562ef7a24598d7c5aded475038cce63aca0} +1 -1
- package/vendor/impeccable/bundle/blobs/{4acfb9e38f6e09f7484e36fc19704d69eab159436ee9329168be74c493042f22 → ec86b8633fbeb14ef2272f220fdd98089972b03b99da83e49eeb6a8b73b00617} +3 -1
- package/vendor/impeccable/bundle/blobs/{d15a2914d93e07a4956acd5c8b8211af17380f527acd10d8acf4f4920badaaaf → ef2e97cd690baf6fe5c895dd2d8844aff9fcc4a8bc04973402678a739c81d712} +4 -3
- package/vendor/impeccable/bundle/blobs/f0fbe529f63961a027bada2e6a3cbe86f4af0dba4b8e1010da22b007f9002f66 +63 -0
- package/vendor/impeccable/bundle/blobs/{c02feba25a961a72647ad317aba2d65baeeed53c4cdcc072f25bb37f4d867d43 → f254d59ff973e907cacdc2c34b8b4de075437d292de31dac30e10a9d7035086c} +3 -2
- package/vendor/impeccable/bundle/blobs/f5efb1b1dd4cd18e1d4789d7c8e0188f4342b25fffd53af6088ba8b67774fb99 +26 -0
- package/vendor/impeccable/bundle/blobs/{7af0a8665057c83b39bca2c8c7427ef2343734f70d4128c377113a6726a1e3b1 → f68a3d68ac92606e91aa8878e003d9432ddd09aa97ca01c6b3ce46c937dca316} +524 -4
- package/vendor/impeccable/bundle/blobs/{381ff89aa76e82a0d98456ec31cb117555ae045539fba47c45056daa50f611ca → f84b653ede0804d21e6210c6d21fd5352023914fedceae6ff14e20f1e93b06e7} +5 -5
- package/vendor/impeccable/bundle/blobs/{5b30a06646ad5e453d6b5ed1b8d446f69fca3cd13b8aeda28f0d0b2cbe8f62d1 → fb32d99751c5fc24493ff4460be1767bd5236dc820fd337775067c0620d1a7a6} +3 -1
- package/vendor/impeccable/bundle/blobs/{733504a70ed20bcfca9c26c353f7b88f8491d24f3f2fe124dc1e73b28eefa296 → fb5fec24adafa48df43eece6907c1c986a4772cbdc64142c881f00c3b312e9ca} +18 -11
- package/vendor/impeccable/bundle/blobs/fc149b5bc7a8d0cc9b9bf86e5013793f3857c1c302212e9aaf101cb95427386b +101 -0
- package/vendor/impeccable/bundle/manifest.json +413 -298
- package/skills/grafton-view-dev/SKILL.md +0 -195
- package/skills/grafton-view-dev/references/bindings.md +0 -120
- package/skills/grafton-view-dev/references/components.md +0 -168
- package/skills/grafton-view-dev/references/recipes.md +0 -208
- package/skills/grafton-view-dev/references/schema.md +0 -86
- package/skills/grafton-view-dev/references/stores.md +0 -310
- package/skills/portal-backend-app/SKILL.md +0 -56
- package/skills/portal-backend-app/references/gate-and-tokens.md +0 -93
- package/skills/portal-backend-app/references/wiring-and-conventions.md +0 -71
- package/skills/xgent-init/references/external-app-CLAUDE.template.md +0 -249
- package/vendor/impeccable/bundle/blobs/800cf1c0392b24de7c0a1c6ea6778ecb433dec71c49a150bce96a98477527b2f +0 -1
|
@@ -3,12 +3,16 @@
|
|
|
3
3
|
> 除非用户显式指定其他模板,dev-plan 一律使用本骨架,不依赖目标仓库存在模板文件。
|
|
4
4
|
> 按改动面与风险裁剪章节;删除不适用的占位和写作指引,不为满足形式填充内容。
|
|
5
5
|
> 目标读者是后续实现者,因此事实、决策、接口、迁移、失败和验收必须闭环。
|
|
6
|
-
>
|
|
6
|
+
> 同一信息只展开一次:已有 PRD 用 ID 与来源引用,账本已含完整设计/验收落点时删 §13;其余章节与里程碑引用定义和检查 ID。模块内测试就近完成,昂贵集成验收按可行性集中到阶段收口,独立风险门保留。
|
|
7
|
+
> 同理,写作过程不进计划:用了哪份 skill、骨架或参考资料,读过哪些规则文件、哪些确认无约束,调查、复核与评审改稿的经过,以及“本次只写计划、未实施”这类写作当时的状态,实现者都不需要知道;计划只陈述当前结论。
|
|
7
8
|
> 仓库规则里真正约束实现的条目落成 §0.1 的 `C-*` 或 §12 的一行一坑,带规则路径与被约束的具体行为。
|
|
9
|
+
> 开头的「实施须知」与「实施者定位」「实施进度」两节是实施期的完整合同:实施者只读计划、不加载本 skill,所以实施需要的规则只能写在这两节里。「实施须知」与两节的协议文字原样带入,其中唯一的填空是 `<进度校验命令>`;恢复快照与完成记录按真实状态初始化。
|
|
8
10
|
|
|
9
11
|
```markdown
|
|
10
12
|
# <代号> · <项目名> · <功能名>(<形态 · 关键架构特征>)
|
|
11
13
|
|
|
14
|
+
> **实施须知:实施或续做本计划时不要加载 `dev-plan` skill。** 它只用于撰写和评审计划;实施所需约定已全部写在下方「实施者定位」「实施进度」两节,加载它只会白占上下文。
|
|
15
|
+
>
|
|
12
16
|
> **计划状态:<Ready / Proposed / Blocked>**
|
|
13
17
|
>
|
|
14
18
|
> 调查基线:<YYYY-MM-DD> · <commit/version> · <clean/dirty;dirty 时说明事实基于当前工作树>。
|
|
@@ -19,25 +23,24 @@
|
|
|
19
23
|
|
|
20
24
|
## 实施者定位
|
|
21
25
|
|
|
22
|
-
执行本计划的 agent
|
|
26
|
+
执行本计划的 agent 是**资深软件工程师**,依据本计划、仓库规则和当前代码实施。
|
|
23
27
|
|
|
24
|
-
-
|
|
25
|
-
-
|
|
26
|
-
-
|
|
27
|
-
-
|
|
28
|
-
- **源码干净**:注释解释为什么,不解释是什么。源码里不出现工单或需求编号(如 `# FR-12`、`// BUG-42`)、本计划的 R-* / M* 编号、agent 工作流标记或任何规划元数据;追溯关系记在计划摘要、独立实现/验收记录和提交说明里。交付的是可直接上生产的代码:干净、最小,没有多余防御、空洞注释或重复样板这类 AI 生成痕迹。
|
|
28
|
+
- **表达与源码**:报告用路径、需求/检查/里程碑 ID 定位,不复述计划。源码不放需求编号、agent 标记或规划元数据,注释解释必要原因;追溯放记录或提交说明。
|
|
29
|
+
- **完成的定义**:本里程碑退出检查全部通过才能记完成;未运行、失败、环境缺失分别记缺口,不冒充通过。集中到阶段收口的终验由收口里程碑负责,通过前不宣称整期或跨期需求已验收。
|
|
30
|
+
- **工作顺序**:需要行为测试的改动先红、再绿、再重构。按实际前置成果及检查推进,不等无关终验,数据、安全、发布及用户分期门不得绕过;稳定契约下可用 fixture 开发,不能替代真实集成。按 §9 执行局部检查与集中验收,同环境走查可合并;相关代码、配置、依赖、输入与环境未变可引用已通过证据,否则重跑受影响检查,收口仍跑必要集成回归。
|
|
31
|
+
- **并行交付**:独立任务在收益超过委派/集成成本且工具可用时使用 subagents,模型默认继承。任务说明只给目标/ID、稳定契约、可写与禁改路径、运行资源和检查;共享文件单人负责,数据库、端口、浏览器等隔离或串行。子 agent 返回结果、路径、验证证据与缺口,默认不另写任务文档;主 agent 审查并集成验收。边界变化先回报,失败只阻塞依赖任务;结束对话前收集或停止仍在运行的任务。
|
|
29
32
|
|
|
30
33
|
## 实施进度(实施期持续更新)
|
|
31
34
|
|
|
32
|
-
|
|
35
|
+
本节是跨对话恢复的**唯一汇总入口**,协议文字不随实施改写,实施期只更新「恢复快照」和「完成记录」。续做时先读仓库规则、本节、当前任务相关正文与依赖,再核对 `git status` 和相关 diff;记录与工作树不符时先查明原因,不凭记录覆盖用户改动,也不凭代码存在推断验收已通过。只有继续未完任务、核验前置验收、排错或审查时,才按链接读取对应记录的相关部分;不要默认加载全部记录或原始日志。
|
|
33
36
|
|
|
34
|
-
|
|
37
|
+
**回写时机**:里程碑完成后立即回写,再报告完成或提交;下游只需部分成果时,所需前置检查通过并在记录保存证据即可推进。实质进展后受阻、暂停、交接、发现偏差或结束对话时也保存成果与缺口;普通子任务切换不单独回写。
|
|
35
38
|
|
|
36
|
-
|
|
39
|
+
**一次回写**:主 agent 更新对应记录,再同步快照变化字段和完成记录一行,不重写无变化内容或追加流水。快照写当前任务、进展与下一步,命令及证据只进记录。首次回写删占位行,每个已记进展的里程碑恰好一行,状态仅「进行中 / 阻塞 / 已完成」;完成时移至已完成行末,最近完成取该行。更新时间带时区,摘要 1–2 句,记录填相对计划的链接(如 `[M1 记录](FEATURE.records/M1.md)`)。范围、决策、接口、数据、风险或退出条件有偏差时,就地修订对应正文,不追加勘误历史。
|
|
37
40
|
|
|
38
|
-
|
|
41
|
+
**独立记录**:按需建 `<计划名>.records/M<n>.md`,头部写计划链接、更新时区、状态及验证基线(commit SHA;未提交写 dirty@起始SHA 与关键改动路径)。正文只写交付行为/路径、必要偏差、未完项与继续动作;验收按 `检查 ID/覆盖范围 | 命令或步骤 | 结果/必要证据` 记录,共同环境和基线在头部写一次,有差异再单列。同一测试组可覆盖多条退出条件,须逐条可追溯;引用原证据与复用依据,不复制断言全文、成功日志或调试流水。未运行、失败、环境缺失明确区分;只有复杂交接、排错或证据需独立保存时才另建任务记录/日志/截图并链接。
|
|
39
42
|
|
|
40
|
-
**回写后自查**:「当前进度 n/N」的 N 等于里程碑总数,n
|
|
43
|
+
**回写后自查**:「当前进度 n/N」的 N 等于里程碑总数,n 只计状态为「已完成」的行;「最近完成」对应最后一条已完成记录,不按编号推算;链接指向已落盘文件。每次回写后运行 `<进度校验命令>`:它只查上述结构、计数与链接存在性,不证明验收真实通过。
|
|
41
44
|
|
|
42
45
|
### 恢复快照
|
|
43
46
|
|
|
@@ -55,7 +58,7 @@
|
|
|
55
58
|
| --- | --- | --- | --- | --- |
|
|
56
59
|
| — | — | — | 尚未开始任何里程碑 | — |
|
|
57
60
|
|
|
58
|
-
|
|
61
|
+
<初稿保留上面的占位行,不预建空记录、不填写虚假完成事实;本条写作指引不带入计划。>
|
|
59
62
|
|
|
60
63
|
## 0. 需求、范围与决策
|
|
61
64
|
|
|
@@ -68,7 +71,7 @@
|
|
|
68
71
|
| C-1 | 约束 | <规则/代码路径> | <技术栈/兼容/交付约束> | <影响章节> | 已确认 |
|
|
69
72
|
| A-1 | 假设 | <为何暂时依赖> | <假设内容> | <验证办法 + 责任人 + 最晚确认点> | 开放/阻塞 |
|
|
70
73
|
|
|
71
|
-
|
|
74
|
+
<已有 PRD 沿用其 ID,内容仅写能力摘要或本期差异,不重抄需求/验收原文;设计/验收落点引用正文和 §9 检查 ID,不能只有里程碑编号。只列相关 NFR,不编造数字。本表已完整覆盖映射时删除 §13。>
|
|
72
75
|
|
|
73
76
|
### 0.2 决策表
|
|
74
77
|
|
|
@@ -187,7 +190,14 @@
|
|
|
187
190
|
|
|
188
191
|
### 9.1 行为与接口验证
|
|
189
192
|
|
|
190
|
-
|
|
193
|
+
<按下表定义检查,后续里程碑与验收记录引用 ID。已有 PRD/测试定义用链接 + 本期增量断言,不重复展开;通过公开接口验证行为,避免绑定内部实现。>
|
|
194
|
+
|
|
195
|
+
| 检查 ID | 需求/验收行与可观察结果 | 命令/入口与环境 | 执行时点 |
|
|
196
|
+
| --- | --- | --- | --- |
|
|
197
|
+
| V-1 | <需求 ID/验收行 + 新增行为/边界> | <实际测试入口与 fixture/环境> | <所需能力/环境就绪后;是下游前置则写清> |
|
|
198
|
+
| V-2 | <跨模块主路径/API + UI> | <同一部署与用户/角色> | <阶段收口;可合并的走查范围> |
|
|
199
|
+
|
|
200
|
+
<以下 §9.2–§9.5 只补本表未表达的回归、故障、真实环境与静态检查;已在表中定义则引用 ID 或省略对应小节。>
|
|
191
201
|
|
|
192
202
|
### 9.2 集成与回归
|
|
193
203
|
|
|
@@ -199,22 +209,24 @@
|
|
|
199
209
|
|
|
200
210
|
### 9.4 真实环境与 UI
|
|
201
211
|
|
|
202
|
-
|
|
212
|
+
<从登录/配置到核心结果的走查;角色、语言、主题、错误、另一租户/账户边界。同环境的 API/UI 走查合并执行,前期已核实的未变部分引用证据,收口验证受影响范围与完整主路径。>
|
|
203
213
|
|
|
204
214
|
### 9.5 静态校验
|
|
205
215
|
|
|
206
216
|
<项目实际提供的 typecheck/lint/build/schema/i18n/依赖检查命令。>
|
|
207
217
|
|
|
208
|
-
## 10.
|
|
218
|
+
## 10. 里程碑与验收安排
|
|
219
|
+
|
|
220
|
+
<围绕可验证的能力/交付切片分组,不按模块或工种拆里程碑。同能力、同环境且无独立风险门可合并,内部任务保留局部检查;阶段收口集中昂贵集成、走查、故障演练和评测。发布、迁移、不可逆操作、安全边界和用户约定的分期门保留必要检查。>
|
|
209
221
|
|
|
210
222
|
| # | 里程碑 | 前置依赖 | 内容与并行边界 | 验证/退出条件 |
|
|
211
223
|
| --- | --- | --- | --- | --- |
|
|
212
|
-
| M1 | <行为基线/骨架> |
|
|
213
|
-
| Mn |
|
|
224
|
+
| M1 | <行为基线/骨架> | <实际需要的成果 + 前置检查 ID,不默认等整个里程碑> | <最小改动;独立任务与共享文件/资源归属> | <§9 局部检查 ID + 必要风险门>;回写「实施进度」 |
|
|
225
|
+
| Mn | <阶段收口/终验> | <本阶段交付物齐备 + 所需前置检查> | <统一部署、集成、走查、评测;负责人> | <§9 集成/终验检查 ID,覆盖本阶段全部验收>;回写「实施进度」 |
|
|
214
226
|
|
|
215
|
-
|
|
227
|
+
<每行退出条件以「回写『实施进度』」结尾;只引用检查 ID 和本里程碑独有条件,不再抄需求验收清单。局部完成不等于阶段终验通过。>
|
|
216
228
|
|
|
217
|
-
|
|
229
|
+
<依赖区分开发/集成/终验;已验证的子任务可解除对应开发前置,无关走查或发布排练不阻塞代码开发,除非用户分期或风险门要求。并行说明到可写路径与资源,按收益决定委派;共享契约先定、共享文件单人修改,统一集成,不为并行硬拆。>
|
|
218
230
|
|
|
219
231
|
## 11. 风险、开放问题与就绪状态
|
|
220
232
|
|
|
@@ -229,7 +241,9 @@
|
|
|
229
241
|
|
|
230
242
|
- <一行一坑 + 规则/事故/进度文档路径;说明本计划如何规避>。
|
|
231
243
|
|
|
232
|
-
## 13. 需求 → 设计 →
|
|
244
|
+
## 13. 需求 → 设计 → 验证映射(§0.1 未完整映射时使用)
|
|
245
|
+
|
|
246
|
+
<与 §0.1 二选一作为完整映射入口;使用本节时 §0.1 不重复设计/验收落点,不重抄需求内容。>
|
|
233
247
|
|
|
234
248
|
| ID | 需求/约束/假设 | 设计落点 | 验证/解除办法 | 结果 |
|
|
235
249
|
| --- | --- | --- | --- | --- |
|
|
@@ -244,13 +258,14 @@
|
|
|
244
258
|
|
|
245
259
|
- [ ] 默认使用本文件;未探测或依赖目标仓库中的模板。
|
|
246
260
|
- [ ] 计划记录调查日期、commit/version 和 dirty 状态。
|
|
247
|
-
- [ ]
|
|
261
|
+
- [ ] 除开头「实施须知」外,全文没有写作过程元信息:用了哪份 skill/骨架/参考、读过哪些规则文件的清单、调查步骤、评审处置与改稿经过、“本次只写计划”类状态;相关约束已落成 `C-*` 或 §12。
|
|
248
262
|
- [ ] 顶部实施进度已按真实状态初始化,0/N、M1、里程碑总数和代码基线互相一致;没有预填虚假完成记录。
|
|
249
|
-
- [ ]
|
|
250
|
-
- [ ]
|
|
251
|
-
- [ ]
|
|
252
|
-
- [ ]
|
|
253
|
-
- [ ]
|
|
263
|
+
- [ ] 「实施进度」的回写协议为骨架原文在位,`<进度校验命令>` 已替换;每个里程碑的退出条件都以「回写『实施进度』」结尾。
|
|
264
|
+
- [ ] 计划只留简要进度与链接;记录按检查组保留可追溯证据,不默认建子任务文档,进行中/阻塞不计完成。
|
|
265
|
+
- [ ] 依赖落到实际成果和前置检查;合并验收有覆盖范围与收口负责人,独立风险/分期门保留,局部通过不冒充终验。
|
|
266
|
+
- [ ] 并行收益与边界明确,共享文件/资源单人负责或隔离,主 agent 集成验收并单写计划。
|
|
267
|
+
- [ ] 开头“实施须知”与“实施者定位”为骨架原文,未改写、未删减。
|
|
268
|
+
- [ ] R/NFR/C/A 在账本或 §13 全部映射,未重复展开需求/断言;未知数字未被伪造成目标。
|
|
254
269
|
- [ ] 关键决策有真实备选、正负后果和重新评估触发;普通选择未被 ADR 化。
|
|
255
270
|
- [ ] 复杂设计写清模块、接口、接缝、依赖分类与测试面;没有假想抽象。
|
|
256
271
|
- [ ] 契约均为“已核实足够 / 已核实缺口 / 未核实阻塞”之一。
|
|
@@ -59,6 +59,10 @@ done
|
|
|
59
59
|
while IFS= read -r l; do
|
|
60
60
|
[ -n "$l" ] && err "恢复快照残留模板占位:$(trim "$l")"
|
|
61
61
|
done < <(sed 's/`[^`]*`//g' <<<"$snap" | grep -E '<[^<>]+>' || true)
|
|
62
|
+
# 协议里唯一的填空:实施者不加载写计划的 skill,留着占位就等于没有校验命令。
|
|
63
|
+
if grep -qF '<进度校验命令>' <<<"$prog"; then
|
|
64
|
+
err "「回写后自查」的 <进度校验命令> 未替换为可运行命令或人工核对说明"
|
|
65
|
+
fi
|
|
62
66
|
|
|
63
67
|
# ③ 识别新摘要索引与旧内联证据表,核对 ID 和记录字段。
|
|
64
68
|
mcount="$(mrows "$mile" | grep -c . || true)"
|
|
@@ -0,0 +1,204 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: documentation-writer
|
|
3
|
+
description: 基于代码事实写和更新技术文档:README、API 文档(HTTP 接口 / OpenAPI / 库与 SDK 参考)、架构文档、代码库说明文档(docs/codebase/ 成套)、用户手册与操作指南。每条结论都能追到仓库里的文件,文字去 AI 味;需要架构图、流程图、时序图时,本地装了 archify skill 就优先用它出图,没有再用 Mermaid。凡用户要求写或更新 README、补接口文档、生成 OpenAPI、写架构文档、画系统架构、梳理仓库、写新人上手文档、写用户手册 / 使用说明 / 教程,或改完代码要同步文档,都用本 skill,即使用户没说「文档」二字。Use for READMEs, API/OpenAPI/SDK reference, architecture docs, codebase onboarding docs, user manuals, tutorials and how-to guides, or syncing docs after code changes.
|
|
4
|
+
disable-model-invocation: true
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
# documentation-writer · 基于代码事实的技术文档
|
|
8
|
+
|
|
9
|
+
**路径约定**:`references/`、`scripts/`、`assets/` 都相对于本 `SKILL.md` 所在目录。运行脚本前先设 `SKILL_DIR="<本 SKILL.md 所在目录>"`;文档路径、仓库根等参数按目标仓填写。
|
|
10
|
+
|
|
11
|
+
这份 skill 要的文档有三个特点:说的都是仓库里真实存在的东西;读者拿到就能用(命令能跑、例子能抄、图能看懂);读起来像熟悉这套代码的工程师写的,不像模型生成的。三者冲突时,准确优先。
|
|
12
|
+
|
|
13
|
+
## 选文档类型
|
|
14
|
+
|
|
15
|
+
| 用户要的 | 读者 | 先读 | 默认位置(仓库已有约定时从约定) |
|
|
16
|
+
|---|---|---|---|
|
|
17
|
+
| README:新建、补全、按代码变更同步 | 第一次接触项目的人 | [references/readme.md](references/readme.md) | 仓库根或子包根的 `README.md` |
|
|
18
|
+
| API 文档:HTTP 接口、OpenAPI、库 / SDK 参考 | 调用方开发者 | [references/api-docs.md](references/api-docs.md) | `docs/api/` 或服务目录下 `docs/` |
|
|
19
|
+
| 架构文档:系统怎么搭起来、为什么这样搭 | 新加入的工程师、评审者 | [references/architecture.md](references/architecture.md) | `docs/architecture.md` 或 `ARCHITECTURE.md` |
|
|
20
|
+
| 代码库说明:成套的结构、约定、功能、测试、风险文档 | 日常改代码的人和 AI agent | [references/codebase-map.md](references/codebase-map.md) | `docs/codebase/` |
|
|
21
|
+
| 用户手册、教程、操作指南、运维手册 | 最终用户、运营、运维 | [references/user-manual.md](references/user-manual.md) | `docs/user-guide/` 或 `docs/manual/` |
|
|
22
|
+
|
|
23
|
+
架构文档和代码库说明容易混。用户要**一份**能从头读到尾的「系统是怎么工作的」,走架构文档;要一**套**放在仓库里、按主题随查随用的参考(技术栈、目录、约定、功能清单、测试、风险),或者明确说「代码库说明 / 功能说明 / map this codebase」,走代码库说明。拿不准时问一句,问不了就写架构文档,并在交付说明里提一句另一种选择。
|
|
24
|
+
|
|
25
|
+
一个请求涉及多类文档(比如「给这个服务写 README 和接口文档」),按类型分别读对应参考,各写各的,互相链接,不要把 API 参考塞进 README。
|
|
26
|
+
|
|
27
|
+
**不归本 skill 管**:只改代码注释或 docstring、写 commit message、写 PRD(用 prd skill)、写开发计划(用 dev-plan skill)、制定迁移或现代化方案。
|
|
28
|
+
|
|
29
|
+
## 通用流程
|
|
30
|
+
|
|
31
|
+
每类文档都走这六步,差别在参考文件里。
|
|
32
|
+
|
|
33
|
+
### 1. 定读者、目的和范围
|
|
34
|
+
|
|
35
|
+
先弄清三件事:谁读、读完要能做什么、覆盖哪些不覆盖哪些。按 [Diátaxis](https://diataxis.fr/) 分清这份文档属于哪一类,四类写法不同,不要混在一起:
|
|
36
|
+
|
|
37
|
+
- **教程**:带新手完整做成一件事,一步一个结果,不讲原理。
|
|
38
|
+
- **操作指南**:解决一个具体问题,假设读者已经会基本操作。
|
|
39
|
+
- **参考**:准确、完整、结构统一,像字典,不讲故事。
|
|
40
|
+
- **解释**:讲清楚为什么这样设计、有哪些取舍。
|
|
41
|
+
|
|
42
|
+
能从请求和仓库推断出来的,不要问。真正缺的信息一次问完。新写大文档(架构文档、用户手册、代码库说明)时,先把大纲给用户看:章节、每节一句话、打算画哪几张图,确认后再写。用户已经给了结构、说了「直接写」,或者当前环境没法提问,就把假设写进交付说明,直接写。
|
|
43
|
+
|
|
44
|
+
输出语言:目标仓已有文档用什么语言就用什么语言;仓库没有文档时用对话的语言。目标仓的 `AGENTS.md` / `CLAUDE.md` / `CONTRIBUTING.md` 里有文档约定(位置、格式、术语)的,照约定来。
|
|
45
|
+
|
|
46
|
+
### 2. 摸清事实(本地优先)
|
|
47
|
+
|
|
48
|
+
文档描述的是**眼前这份代码**,所以事实从本地 checkout 里取,不从记忆、网络或远端仓库取。
|
|
49
|
+
|
|
50
|
+
1. **锚定快照**:`git remote -v`、`git branch --show-current`、`git log -1 --format='%h %ad %s' --date=short`。架构文档和代码库说明要把这三项写进文档,读者才知道描述的是哪个版本。remote URL 里如果带了凭据(`https://<token>@host/...`),写进文档前删掉。
|
|
51
|
+
2. **读真实的清单文件**:`package.json`、`go.mod`、`pyproject.toml`、`Cargo.toml`、`pom.xml` 这类 manifest,`Makefile` 或其他任务脚本,CI 配置,`.env.example`,已有的 `README` / `docs/`。技术栈和命令以这些文件为准,不以你对框架的印象为准。栈不明确时读 [references/stack-detection.md](references/stack-detection.md)。
|
|
52
|
+
3. **仓库大或者陌生时先扫一遍**:在目标目录下跑
|
|
53
|
+
|
|
54
|
+
```bash
|
|
55
|
+
python3 "$SKILL_DIR/scripts/scan.py" --output /tmp/codebase-scan.txt
|
|
56
|
+
```
|
|
57
|
+
|
|
58
|
+
会输出目录树、manifest、入口、lint 配置、环境变量模板、TODO、近期提交、高频改动文件、CI、容器、代码量。monorepo 里只写一个子包时,在子包目录里跑。扫描结果是线索,结论仍要回到源文件确认。
|
|
59
|
+
4. **已有文档是意图,不是事实**。README 常常写的是「打算怎么做」。和代码对不上时以代码为准,把分歧记下来,交付时告诉用户。
|
|
60
|
+
5. **只写源码,不写产物**。`dist/`、`build/`、`generated/`、`.next/`、`__pycache__/`、`node_modules/` 里的东西不当作项目约定。
|
|
61
|
+
|
|
62
|
+
找不到答案的,网络查询是最后手段,只在事实确实影响文档、又无法从本地确定时用,而且要标 `[UNVERIFIED]` 说明来源。
|
|
63
|
+
|
|
64
|
+
### 3. 写
|
|
65
|
+
|
|
66
|
+
按对应参考文件的结构写。贯穿所有类型的规矩见下文「证据纪律」和「写作风格」。
|
|
67
|
+
|
|
68
|
+
### 4. 出图
|
|
69
|
+
|
|
70
|
+
见下文「出图:archify 优先,Mermaid 兜底」。
|
|
71
|
+
|
|
72
|
+
### 5. 自检
|
|
73
|
+
|
|
74
|
+
写完先跑检查脚本,它会核对文中引用的路径是否存在、行号是否越界,扫出凭据、没填的模板占位、AI 腔词汇和破折号密度:
|
|
75
|
+
|
|
76
|
+
```bash
|
|
77
|
+
python3 "$SKILL_DIR/scripts/check_doc.py" <文档路径...> --repo-root <仓库根>
|
|
78
|
+
```
|
|
79
|
+
|
|
80
|
+
脚本报「路径不存在」的逐条修掉;报 AI 腔的逐条看,确属术语或引用原文的可以保留。然后人工过一遍:
|
|
81
|
+
|
|
82
|
+
- [ ] 写到的命令都在 manifest / 任务脚本 / CI 里出现过;没亲自跑过、又有疑问的,标出来
|
|
83
|
+
- [ ] 例子里的字段名、取值形状来自 schema、测试或 seed,不是编的;密钥、token 用占位符
|
|
84
|
+
- [ ] 数量写具体数字(「13 个路由文件」),不写「很多」
|
|
85
|
+
- [ ] 不确定的地方都打了标记
|
|
86
|
+
- [ ] 图的文件存在,链接能点开
|
|
87
|
+
- [ ] 按 [references/writing-style.md](references/writing-style.md) 的清单去一遍 AI 腔
|
|
88
|
+
|
|
89
|
+
### 6. 交付说明
|
|
90
|
+
|
|
91
|
+
回复用户时说清:
|
|
92
|
+
|
|
93
|
+
- 新建或改动了哪些文件(路径)
|
|
94
|
+
- 图用了 archify 还是 Mermaid;用 archify 的,列出每张图的 HTML 路径、`deliver` 结果和 `visual-check` 状态(通过 / 失败 / 跳过),不要把没做过的检查说成做过
|
|
95
|
+
- 所有 `[ASK USER]` 问题,编号列出
|
|
96
|
+
- 文档和代码对不上的地方(README 说 A,代码是 B)
|
|
97
|
+
- 写作时做的假设
|
|
98
|
+
|
|
99
|
+
## 证据纪律
|
|
100
|
+
|
|
101
|
+
文档的价值在于读者可以直接信,不用自己再核一遍。所以:
|
|
102
|
+
|
|
103
|
+
- **非显而易见的结论都要有出处**。架构文档、代码库说明、API 文档里,用相对仓库根的路径加行号引用:`apps/api/src/index.ts:42` 或 `src/routes/users.ts#L10-L35`。引用了哪一行,就要真的读过那一行。README 和用户手册面向的读者不看源码,正文不放行号引用,但写之前同样要核实。
|
|
104
|
+
- **统一用这四个标记**,含义不同,不要混用:
|
|
105
|
+
|
|
106
|
+
| 标记 | 用在 |
|
|
107
|
+
|---|---|
|
|
108
|
+
| `[INFERRED]` | 从代码推理出来的,但没有哪里直接写明 |
|
|
109
|
+
| `[UNVERIFIED]` | 转述了别处的说法,自己没核实(例如文档里写的构建耗时、CI 是否是必需检查) |
|
|
110
|
+
| `[TODO]` | 仓库里查不到,需要后续补 |
|
|
111
|
+
| `[ASK USER]` | 取决于团队意图,只有人能回答 |
|
|
112
|
+
|
|
113
|
+
标记用英文原样,中文文档也一样,方便 grep。
|
|
114
|
+
- **矛盾要裁定,不要转述**。两个来源说法不同(manifest 写的版本和代码里的常量不一致),去读代码,给出结论,并写一句「已核对:X 写的是 A,实际生效的是 B,因为……」。
|
|
115
|
+
- **能数就数**。「共 73 个 service 包」读起来是核实过的,「有很多服务」读起来是猜的。
|
|
116
|
+
- **诚实的空白比虚假的完整有用**。写不出来的部分标 `[TODO]`,不要用泛泛之词填满。
|
|
117
|
+
|
|
118
|
+
## 出图:archify 优先,Mermaid 兜底
|
|
119
|
+
|
|
120
|
+
### 先想清楚要不要画
|
|
121
|
+
|
|
122
|
+
图用来表达文字说不清的东西:组件之间怎么连、请求怎么穿过系统、状态怎么流转。三步以内的线性流程,用一句话或编号列表就够了。一份文档通常一到四张图,每张图正文里要有一句话说明它在讲什么、读者该看哪里。
|
|
123
|
+
|
|
124
|
+
### 探测 archify
|
|
125
|
+
|
|
126
|
+
由 Agent 自行检查当前环境的可用 skill 列表;列表中未找到或列表未提供时,直接查找本 skill 同级目录及当前环境的项目级、用户级 skill 目录中的 `archify/SKILL.md`。找到后加载或读取它,按其流程出图;没有安装时用 Mermaid。不新增或调用 archify 安装检测脚本,不自动安装 skill。
|
|
127
|
+
|
|
128
|
+
### 用 archify 出图
|
|
129
|
+
|
|
130
|
+
怎么写 JSON、怎么校验、怎么修布局,全按 archify 自己的 `SKILL.md` 来,这里不复述。本 skill 只约定和文档衔接的部分:
|
|
131
|
+
|
|
132
|
+
**类型对应**
|
|
133
|
+
|
|
134
|
+
| 文档里的图 | archify 类型 |
|
|
135
|
+
|---|---|
|
|
136
|
+
| 系统上下文图、容器图、部署拓扑、模块依赖 | `architecture` |
|
|
137
|
+
| 请求链路、接口调用时序、鉴权 / token 交换握手 | `sequence` |
|
|
138
|
+
| 业务流程、审批流、CI/CD、操作步骤 | `workflow` |
|
|
139
|
+
| 数据管道、ETL、数据血缘、事件流 | `dataflow` |
|
|
140
|
+
| 状态机、订单或任务的状态流转、重试与终态 | `lifecycle` |
|
|
141
|
+
|
|
142
|
+
**文件放在哪**:在文档所在目录下建 `diagrams/`,源文件和产物同名:`docs/diagrams/system-context.json` 和 `docs/diagrams/system-context.html`。源 JSON 要留着,以后改图从它改。
|
|
143
|
+
|
|
144
|
+
**图里的文字**和文档同语言,中文文档设 `meta.locale: "zh-CN"`。节点名、接口路径、命令等标识符保持原样。
|
|
145
|
+
|
|
146
|
+
**在 Markdown 里怎么放**:先跑 archify 的 `deliver`,再跑 `visual-check`(需要本机有 Chrome / Chromium)。`visual-check` 成功时会在 HTML 旁边留下截图 `<名字>.visual-check.1440x900.light.png`,把它嵌进正文,下面给出交互版链接:
|
|
147
|
+
|
|
148
|
+
```markdown
|
|
149
|
+

|
|
150
|
+
|
|
151
|
+
交互版:[diagrams/system-context.html](diagrams/system-context.html),用浏览器打开,可缩放、搜索、追踪调用链。
|
|
152
|
+
```
|
|
153
|
+
|
|
154
|
+
`visual-check` 失败或被跳过时,只放交互版链接,并在交付说明里写明截图没有生成。同一张图不再另画一份 Mermaid,两份会各改各的,最后对不上。
|
|
155
|
+
|
|
156
|
+
**只留三个文件**:每张图在仓库里保留 `<名字>.json`(源)、`<名字>.html`(交互版)和正文嵌入的 `<名字>.visual-check.1440x900.light.png`。`visual-check` 另外生成的深色和 2048 尺寸截图、`<名字>.visual-check.html` 汇总页、`<名字>.visual-check.json` 回执都是检查证据,把检查结果写进交付说明后删掉,不然一张图会在 `diagrams/` 里留下八个文件。
|
|
157
|
+
|
|
158
|
+
**修不好就退回**:某张图按 archify 的修复流程连续两轮没有改善,这一张改用 Mermaid,交付说明里写清楚原因和 archify 的报错。
|
|
159
|
+
|
|
160
|
+
### 用 Mermaid 出图
|
|
161
|
+
|
|
162
|
+
- 类型:结构用 `flowchart`,时序用 `sequenceDiagram`,状态用 `stateDiagram-v2`。
|
|
163
|
+
- 一张图不超过 12 个节点,超了就拆成两张,或者只画主干。
|
|
164
|
+
- 节点标签用读者认识的名字(服务名、模块名),不用内部变量名。
|
|
165
|
+
- 在紧挨着图的正文里写一句这张图在说什么。
|
|
166
|
+
- 交付说明里提一句:装了 archify 可以得到可交互、可导出的图(仓库地址 `https://github.com/tt-a1i/archify`)。只提一次,不要反复推销。
|
|
167
|
+
|
|
168
|
+
## 写作风格
|
|
169
|
+
|
|
170
|
+
技术文档去 AI 味,靠的是具体、直接、可核对,不靠加个性。完整清单和中英文例子在 [references/writing-style.md](references/writing-style.md),写完对照检查。最常见的几条:
|
|
171
|
+
|
|
172
|
+
- **开头直接说是什么、给谁用、能做什么**。不写「在当今……的背景下」「随着……的快速发展」。
|
|
173
|
+
- **删空话**:赋能、助力、打造、一站式、全方位、无缝、强大的、极致、深度融合、值得注意的是、综上所述;英文的 delve、leverage、seamless、robust、comprehensive、cutting-edge。删掉之后句子不成立,说明原来就没有内容,换成具体事实(数字、名称、行为)。
|
|
174
|
+
- **不给标题和列表加 emoji**,不写「**性能:** 性能得到提升」这种加粗小标题列表。参考类文档里「**术语**:定义」的格式是正常的,可以用。
|
|
175
|
+
- **术语前后一致**。同一个东西第一次叫「租户」,后面就一直叫「租户」,不要换成「组织」「空间」「团队」轮着用。
|
|
176
|
+
- **不写总结、展望式结尾**。文档讲完就停。
|
|
177
|
+
- **参考文档保持中性**,不加第一人称和观点。教程和 README 可以用「你」直接跟读者说话,可以写真实踩过的坑(「第一次跑 `db:migrate` 会失败,因为 Redis 还没起」),这是技术文档里合适的「人味」。
|
|
178
|
+
- **更新已有文档时沿用它的风格**:标题层级、术语、emoji 习惯、中英文混排方式都照旧,只保证你新增和改动的部分没有 AI 腔。
|
|
179
|
+
|
|
180
|
+
## 更新已有文档
|
|
181
|
+
|
|
182
|
+
用户说「同步一下文档」「README 过时了」「接口改了,更新文档」时:
|
|
183
|
+
|
|
184
|
+
1. 先通读现有文档,再看代码变更(`git diff`、`git log -p -- <路径>`,或用户描述的改动)。
|
|
185
|
+
2. 列出文档里和现状不符的地方,逐条对应到要改的段落。代码变更和文档章节的对应关系见 [references/readme.md](references/readme.md) 的「变更映射」。
|
|
186
|
+
3. 只改需要改的段落,结构、语气、格式保持不变。不借机重写整篇。
|
|
187
|
+
4. 删掉已经不存在的功能、参数、命令,不要只加不减。
|
|
188
|
+
5. 交付说明里列出改了哪几处、为什么。
|
|
189
|
+
|
|
190
|
+
## 参考文件索引
|
|
191
|
+
|
|
192
|
+
| 文件 | 什么时候读 |
|
|
193
|
+
|---|---|
|
|
194
|
+
| [references/readme.md](references/readme.md) | 写或更新 README |
|
|
195
|
+
| [references/api-docs.md](references/api-docs.md) | 写 HTTP 接口文档、OpenAPI、库 / SDK 参考 |
|
|
196
|
+
| [references/architecture.md](references/architecture.md) | 写架构文档、系统设计说明 |
|
|
197
|
+
| [references/codebase-map.md](references/codebase-map.md) | 写 `docs/codebase/` 成套说明 |
|
|
198
|
+
| [references/inquiry-checkpoints.md](references/inquiry-checkpoints.md) | 写代码库说明时,每份文档要回答的问题 |
|
|
199
|
+
| [references/user-manual.md](references/user-manual.md) | 写用户手册、教程、操作指南、运维手册 |
|
|
200
|
+
| [references/writing-style.md](references/writing-style.md) | 每次交付前,去 AI 味 |
|
|
201
|
+
| [references/stack-detection.md](references/stack-detection.md) | 技术栈不明确、多种 manifest 并存时 |
|
|
202
|
+
| `assets/templates/*.md` | 代码库说明的八份模板 |
|
|
203
|
+
| `scripts/scan.py` | 大仓或陌生仓,动笔前扫描 |
|
|
204
|
+
| `scripts/check_doc.py` | 交付前自检 |
|
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
# Architecture
|
|
2
|
+
|
|
3
|
+
## Core Sections (Required)
|
|
4
|
+
|
|
5
|
+
### 1) Architectural Style
|
|
6
|
+
|
|
7
|
+
- Primary style: [layered/feature/event-driven/other]
|
|
8
|
+
- Why this classification: [short evidence-backed rationale]
|
|
9
|
+
- Primary constraints: [2-3 constraints that shape design]
|
|
10
|
+
|
|
11
|
+
### 2) System Flow
|
|
12
|
+
|
|
13
|
+
```text
|
|
14
|
+
[entry] -> [processing] -> [domain logic] -> [data/integration] -> [response/output]
|
|
15
|
+
```
|
|
16
|
+
|
|
17
|
+
Describe the flow in 4-6 steps using file-backed evidence.
|
|
18
|
+
|
|
19
|
+
### 3) Layer/Module Responsibilities
|
|
20
|
+
|
|
21
|
+
| Layer or module | Owns | Must not own | Evidence |
|
|
22
|
+
|-----------------|------|--------------|----------|
|
|
23
|
+
| [name] | [responsibility] | [non-responsibility] | [file] |
|
|
24
|
+
|
|
25
|
+
### 4) Reused Patterns
|
|
26
|
+
|
|
27
|
+
| Pattern | Where found | Why it exists |
|
|
28
|
+
|---------|-------------|---------------|
|
|
29
|
+
| [singleton/repository/adapter/etc] | [path] | [reason] |
|
|
30
|
+
|
|
31
|
+
### 5) Known Architectural Risks
|
|
32
|
+
|
|
33
|
+
- [Risk 1 + impact]
|
|
34
|
+
- [Risk 2 + impact]
|
|
35
|
+
|
|
36
|
+
### 6) Evidence
|
|
37
|
+
|
|
38
|
+
- [path/to/entrypoint]
|
|
39
|
+
- [path/to/main-layer-files]
|
|
40
|
+
- [path/to/data-or-integration-layer]
|
|
41
|
+
|
|
42
|
+
## Extended Sections (Optional)
|
|
43
|
+
|
|
44
|
+
Add only when needed:
|
|
45
|
+
|
|
46
|
+
- Startup or initialization order details
|
|
47
|
+
- Async/event topology diagrams
|
|
48
|
+
- Anti-pattern catalog with refactoring paths
|
|
49
|
+
- Failure-mode analysis and resilience posture
|
|
@@ -0,0 +1,56 @@
|
|
|
1
|
+
# Codebase Concerns
|
|
2
|
+
|
|
3
|
+
## Core Sections (Required)
|
|
4
|
+
|
|
5
|
+
### 1) Top Risks (Prioritized)
|
|
6
|
+
|
|
7
|
+
| Severity | Concern | Evidence | Impact | Suggested action |
|
|
8
|
+
|----------|---------|----------|--------|------------------|
|
|
9
|
+
| [high/med/low] | [issue] | [file or scan output] | [impact] | [next action] |
|
|
10
|
+
|
|
11
|
+
### 2) Technical Debt
|
|
12
|
+
|
|
13
|
+
List the most important debt items only.
|
|
14
|
+
|
|
15
|
+
| Debt item | Why it exists | Where | Risk if ignored | Suggested fix |
|
|
16
|
+
|-----------|---------------|-------|-----------------|---------------|
|
|
17
|
+
| [item] | [reason] | [path] | [risk] | [fix] |
|
|
18
|
+
|
|
19
|
+
### 3) Security Concerns
|
|
20
|
+
|
|
21
|
+
| Risk | OWASP category (if applicable) | Evidence | Current mitigation | Gap |
|
|
22
|
+
|------|--------------------------------|----------|--------------------|-----|
|
|
23
|
+
| [risk] | [A01/A03/etc or N/A] | [path] | [what exists] | [what is missing] |
|
|
24
|
+
|
|
25
|
+
### 4) Performance and Scaling Concerns
|
|
26
|
+
|
|
27
|
+
| Concern | Evidence | Current symptom | Scaling risk | Suggested improvement |
|
|
28
|
+
|---------|----------|-----------------|-------------|-----------------------|
|
|
29
|
+
| [issue] | [path/metric] | [symptom] | [risk] | [action] |
|
|
30
|
+
|
|
31
|
+
### 5) Fragile/High-Churn Areas
|
|
32
|
+
|
|
33
|
+
| Area | Why fragile | Churn signal | Safe change strategy |
|
|
34
|
+
|------|-------------|-------------|----------------------|
|
|
35
|
+
| [path] | [reason] | [recent churn evidence] | [approach] |
|
|
36
|
+
|
|
37
|
+
### 6) `[ASK USER]` Questions
|
|
38
|
+
|
|
39
|
+
Add unresolved intent-dependent questions as a numbered list.
|
|
40
|
+
|
|
41
|
+
1. [ASK USER] [question]
|
|
42
|
+
|
|
43
|
+
### 7) Evidence
|
|
44
|
+
|
|
45
|
+
- [scan output section reference]
|
|
46
|
+
- [path/to/code-file]
|
|
47
|
+
- [path/to/config-or-history-evidence]
|
|
48
|
+
|
|
49
|
+
## Extended Sections (Optional)
|
|
50
|
+
|
|
51
|
+
Add only when needed:
|
|
52
|
+
|
|
53
|
+
- Full bug inventory
|
|
54
|
+
- Component-level remediation roadmap
|
|
55
|
+
- Cost/effort estimates by concern
|
|
56
|
+
- Dependency-risk and ownership mapping
|
|
@@ -0,0 +1,52 @@
|
|
|
1
|
+
# Coding Conventions
|
|
2
|
+
|
|
3
|
+
## Core Sections (Required)
|
|
4
|
+
|
|
5
|
+
### 1) Naming Rules
|
|
6
|
+
|
|
7
|
+
| Item | Rule | Example | Evidence |
|
|
8
|
+
|------|------|---------|----------|
|
|
9
|
+
| Files | [RULE] | [EXAMPLE] | [FILE] |
|
|
10
|
+
| Functions/methods | [RULE] | [EXAMPLE] | [FILE] |
|
|
11
|
+
| Types/interfaces | [RULE] | [EXAMPLE] | [FILE] |
|
|
12
|
+
| Constants/env vars | [RULE] | [EXAMPLE] | [FILE] |
|
|
13
|
+
|
|
14
|
+
### 2) Formatting and Linting
|
|
15
|
+
|
|
16
|
+
- Formatter: [TOOL + CONFIG FILE]
|
|
17
|
+
- Linter: [TOOL + CONFIG FILE]
|
|
18
|
+
- Most relevant enforced rules: [RULE_1], [RULE_2], [RULE_3]
|
|
19
|
+
- Run commands: [COMMANDS]
|
|
20
|
+
|
|
21
|
+
### 3) Import and Module Conventions
|
|
22
|
+
|
|
23
|
+
- Import grouping/order: [RULE]
|
|
24
|
+
- Alias vs relative import policy: [RULE]
|
|
25
|
+
- Public exports/barrel policy: [RULE]
|
|
26
|
+
|
|
27
|
+
### 4) Error and Logging Conventions
|
|
28
|
+
|
|
29
|
+
- Error strategy by layer: [SHORT SUMMARY]
|
|
30
|
+
- Logging style and required context fields: [SUMMARY]
|
|
31
|
+
- Sensitive-data redaction rules: [SUMMARY]
|
|
32
|
+
|
|
33
|
+
### 5) Testing Conventions
|
|
34
|
+
|
|
35
|
+
- Test file naming/location rule: [RULE]
|
|
36
|
+
- Mocking strategy norm: [RULE]
|
|
37
|
+
- Coverage expectation: [RULE or TODO]
|
|
38
|
+
|
|
39
|
+
### 6) Evidence
|
|
40
|
+
|
|
41
|
+
- [path/to/lint-config]
|
|
42
|
+
- [path/to/format-config]
|
|
43
|
+
- [path/to/representative-source-file]
|
|
44
|
+
|
|
45
|
+
## Extended Sections (Optional)
|
|
46
|
+
|
|
47
|
+
Add only for large or inconsistent codebases:
|
|
48
|
+
|
|
49
|
+
- Layer-specific error handling matrix
|
|
50
|
+
- Language-specific strictness options
|
|
51
|
+
- Repo-specific commit/branching conventions
|
|
52
|
+
- Known convention violations to clean up
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
# Features
|
|
2
|
+
|
|
3
|
+
## Core Sections (Required)
|
|
4
|
+
|
|
5
|
+
### 1) Feature Inventory
|
|
6
|
+
|
|
7
|
+
List every user- or caller-facing capability found in routes, pages, CLI commands, menus, or permission definitions. Group by domain.
|
|
8
|
+
|
|
9
|
+
| Feature | What it does (observable behavior) | Entry point (route/page/command) | Core logic | Data touched | Evidence |
|
|
10
|
+
|---------|-----------------------------------|----------------------------------|-----------|--------------|----------|
|
|
11
|
+
| [name] | [behavior] | [route or page] | [path] | [tables/services] | [file] |
|
|
12
|
+
|
|
13
|
+
Total: [N] features across [M] domains.
|
|
14
|
+
|
|
15
|
+
### 2) Key Feature Walkthroughs
|
|
16
|
+
|
|
17
|
+
Pick the 3-5 most important features (most used, most changed, or most complex). For each:
|
|
18
|
+
|
|
19
|
+
- Trigger: [who does what, where]
|
|
20
|
+
- Path through the code: [entry file:line] -> [service file:line] -> [data/integration file:line]
|
|
21
|
+
- Side effects: [events, notifications, audit logs, external calls]
|
|
22
|
+
- Failure modes: [what can go wrong and how it surfaces to the user]
|
|
23
|
+
|
|
24
|
+
### 3) Switches That Change Behavior
|
|
25
|
+
|
|
26
|
+
| Switch | Type (feature flag/tenant setting/plan limit/env var) | Affects | Default | Evidence |
|
|
27
|
+
|--------|------------------------------------------------------|---------|---------|----------|
|
|
28
|
+
| [name] | [type] | [feature] | [value] | [file] |
|
|
29
|
+
|
|
30
|
+
### 4) Evidence
|
|
31
|
+
|
|
32
|
+
- [path/to/route-or-page-registry]
|
|
33
|
+
- [path/to/permission-or-menu-definition]
|
|
34
|
+
- [path/to/key-service-file]
|
|
35
|
+
|
|
36
|
+
## Extended Sections (Optional)
|
|
37
|
+
|
|
38
|
+
Add only when needed:
|
|
39
|
+
|
|
40
|
+
- Role/permission x feature matrix
|
|
41
|
+
- Features declared but not wired to an entry point (dead or unfinished)
|
|
42
|
+
- Feature-level dependency map
|
|
43
|
+
- Per-feature test coverage notes
|
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
# External Integrations
|
|
2
|
+
|
|
3
|
+
## Core Sections (Required)
|
|
4
|
+
|
|
5
|
+
### 1) Integration Inventory
|
|
6
|
+
|
|
7
|
+
| System | Type (API/DB/Queue/etc) | Purpose | Auth model | Criticality | Evidence |
|
|
8
|
+
|--------|---------------------------|---------|------------|-------------|----------|
|
|
9
|
+
| [name] | [type] | [purpose] | [auth] | [high/med/low] | [file] |
|
|
10
|
+
|
|
11
|
+
### 2) Data Stores
|
|
12
|
+
|
|
13
|
+
| Store | Role | Access layer | Key risk | Evidence |
|
|
14
|
+
|-------|------|--------------|----------|----------|
|
|
15
|
+
| [db/cache/etc] | [role] | [module] | [risk] | [file] |
|
|
16
|
+
|
|
17
|
+
### 3) Secrets and Credentials Handling
|
|
18
|
+
|
|
19
|
+
- Credential sources: [env/secrets manager/config]
|
|
20
|
+
- Hardcoding checks: [result]
|
|
21
|
+
- Rotation or lifecycle notes: [known/unknown]
|
|
22
|
+
|
|
23
|
+
### 4) Reliability and Failure Behavior
|
|
24
|
+
|
|
25
|
+
- Retry/backoff behavior: [implemented/none/partial]
|
|
26
|
+
- Timeout policy: [where configured]
|
|
27
|
+
- Circuit-breaker or fallback behavior: [if any]
|
|
28
|
+
|
|
29
|
+
### 5) Observability for Integrations
|
|
30
|
+
|
|
31
|
+
- Logging around external calls: [yes/no + where]
|
|
32
|
+
- Metrics/tracing coverage: [yes/no + where]
|
|
33
|
+
- Missing visibility gaps: [list]
|
|
34
|
+
|
|
35
|
+
### 6) Evidence
|
|
36
|
+
|
|
37
|
+
- [path/to/integration-wrapper]
|
|
38
|
+
- [path/to/config-or-env-template]
|
|
39
|
+
- [path/to/monitoring-or-logging-config]
|
|
40
|
+
|
|
41
|
+
## Extended Sections (Optional)
|
|
42
|
+
|
|
43
|
+
Add only when needed:
|
|
44
|
+
|
|
45
|
+
- Endpoint-by-endpoint catalog
|
|
46
|
+
- Auth flow sequence diagrams
|
|
47
|
+
- SLA/SLO per integration
|
|
48
|
+
- Region/failover topology notes
|