wicked-garden 12.27.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/.claude-plugin/archetypes.json +166 -0
- package/.claude-plugin/components.json +75 -0
- package/.claude-plugin/marketplace.json +15 -0
- package/.claude-plugin/plugin.json +174 -0
- package/.claude-plugin/specialist.json +48 -0
- package/.claude-plugin/stack-registry.json +96 -0
- package/AGENTS.md +13 -0
- package/CHANGELOG.md +712 -0
- package/CONTRIBUTING.md +99 -0
- package/ETHOS.md +83 -0
- package/LICENSE +21 -0
- package/README.md +115 -0
- package/WICKED_GARDEN_BUS_EVENTS.md +149 -0
- package/agents/agentic/architect.md +449 -0
- package/agents/agentic/performance-analyst.md +702 -0
- package/agents/agentic/safety-reviewer.md +662 -0
- package/agents/crew/implementer.md +163 -0
- package/agents/crew/researcher.md +94 -0
- package/agents/crew/reviewer.md +184 -0
- package/agents/data/data-engineer.md +227 -0
- package/agents/engineering/api-documentarian.md +440 -0
- package/agents/engineering/migration-engineer.md +301 -0
- package/agents/engineering/solution-architect.md +208 -0
- package/agents/jam/brainstorm-facilitator.md +297 -0
- package/agents/jam/council.md +322 -0
- package/agents/jam/quick-facilitator.md +85 -0
- package/agents/persona/persona-agent.md +121 -0
- package/agents/platform/compliance-officer.md +266 -0
- package/agents/platform/privacy-expert.md +496 -0
- package/agents/platform/security-engineer.md +287 -0
- package/agents/product/a11y-expert.md +323 -0
- package/agents/product/requirements-analyst.md +238 -0
- package/agents/product/ui-reviewer.md +180 -0
- package/agents/product/ux-designer.md +199 -0
- package/agents/product/value-strategist.md +269 -0
- package/agents/qe/semantic-reviewer.md +78 -0
- package/commands/agentic/audit.md +24 -0
- package/commands/agentic/design.md +24 -0
- package/commands/agentic/frameworks.md +25 -0
- package/commands/agentic/review.md +27 -0
- package/commands/archetype/build.md +12 -0
- package/commands/archetype/decide.md +12 -0
- package/commands/archetype/explore.md +12 -0
- package/commands/archetype/incident.md +12 -0
- package/commands/archetype/migrate.md +12 -0
- package/commands/archetype/modernize.md +12 -0
- package/commands/archetype/review.md +14 -0
- package/commands/archetype/ship.md +12 -0
- package/commands/archetype/specify.md +12 -0
- package/commands/archetype/triage.md +12 -0
- package/commands/compile.md +37 -0
- package/commands/data/analyze.md +18 -0
- package/commands/data/data.md +21 -0
- package/commands/data/ml.md +18 -0
- package/commands/data/ontology.md +22 -0
- package/commands/data/pipeline.md +17 -0
- package/commands/deliberate.md +181 -0
- package/commands/engineering/add-field.md +77 -0
- package/commands/engineering/apply.md +58 -0
- package/commands/engineering/arch.md +26 -0
- package/commands/engineering/debug.md +27 -0
- package/commands/engineering/docs.md +27 -0
- package/commands/engineering/new-generator.md +257 -0
- package/commands/engineering/patch-plan.md +59 -0
- package/commands/engineering/plan.md +29 -0
- package/commands/engineering/remove.md +48 -0
- package/commands/engineering/rename.md +44 -0
- package/commands/engineering/review.md +32 -0
- package/commands/help.md +128 -0
- package/commands/install.md +118 -0
- package/commands/intent.md +54 -0
- package/commands/jam/brainstorm.md +37 -0
- package/commands/jam/council.md +49 -0
- package/commands/jam/quick.md +21 -0
- package/commands/jam/revisit.md +79 -0
- package/commands/persona/as.md +136 -0
- package/commands/persona/define.md +24 -0
- package/commands/persona/list.md +118 -0
- package/commands/platform/actions.md +20 -0
- package/commands/platform/assert.md +18 -0
- package/commands/platform/audit.md +23 -0
- package/commands/platform/compliance.md +20 -0
- package/commands/platform/gh.md +22 -0
- package/commands/platform/health.md +22 -0
- package/commands/platform/incident.md +23 -0
- package/commands/platform/infra.md +24 -0
- package/commands/platform/peer-health.md +103 -0
- package/commands/platform/plugin-health.md +58 -0
- package/commands/platform/security.md +38 -0
- package/commands/platform/toolchain.md +96 -0
- package/commands/platform/traces.md +20 -0
- package/commands/product/a11y.md +19 -0
- package/commands/product/acceptance.md +19 -0
- package/commands/product/align.md +20 -0
- package/commands/product/analyze.md +23 -0
- package/commands/product/elicit.md +19 -0
- package/commands/product/listen.md +24 -0
- package/commands/product/mockup.md +20 -0
- package/commands/product/screenshot.md +19 -0
- package/commands/product/strategy.md +40 -0
- package/commands/product/synthesize.md +23 -0
- package/commands/product/ux-review.md +42 -0
- package/commands/product/ux.md +20 -0
- package/commands/product/visual-direction.md +34 -0
- package/commands/prove.md +47 -0
- package/commands/report-issue.md +243 -0
- package/commands/reset.md +144 -0
- package/commands/search/blast-radius.md +58 -0
- package/commands/search/hotspots.md +55 -0
- package/commands/search/index.md +38 -0
- package/commands/search/lineage.md +47 -0
- package/commands/search/service-map.md +79 -0
- package/commands/setup.md +363 -0
- package/commands/smaht/briefing.md +200 -0
- package/commands/smaht/events-import.md +95 -0
- package/commands/smaht/state.md +19 -0
- package/commands/where-am-i.md +58 -0
- package/docs/README.md +32 -0
- package/docs/adr/0001-code-relationship-graph-engine.md +116 -0
- package/docs/adr/0002-major-cleanup-keep-cut.md +91 -0
- package/docs/adr/0003-peers-gate-required-layers-optin.md +41 -0
- package/docs/adr/0004-code-graph-moves-to-wicked-brain.md +47 -0
- package/docs/brain-chunk-format.md +135 -0
- package/docs/compiler.md +95 -0
- package/docs/daemon-api.md +70 -0
- package/docs/domains.md +197 -0
- package/docs/getting-started.md +208 -0
- package/docs/plans/2026-06-08-wicked-loom-conduct.md +1337 -0
- package/docs/plans/2026-06-08-wicked-loom-contract.md +638 -0
- package/docs/plans/2026-06-08-wicked-loom-cutover.md +1300 -0
- package/docs/plans/2026-06-08-wicked-loom-expand-compose.md +843 -0
- package/docs/plans/2026-06-08-wicked-loom-flow-cutover.md +403 -0
- package/docs/plans/2026-06-10-codegraph-to-brain-phase1a-graph-core.md +838 -0
- package/docs/plans/2026-06-10-codegraph-to-brain-phase1b-injected-edges.md +44 -0
- package/docs/required-peers.md +60 -0
- package/docs/specs/2026-06-08-wicked-loom-extraction.md +225 -0
- package/docs/specs/2026-06-10-codegraph-to-brain-migration.md +168 -0
- package/docs/v11/archetypes.md +231 -0
- package/hooks/hooks.json +275 -0
- package/hooks/scripts/bootstrap.py +1797 -0
- package/hooks/scripts/invoke.py +62 -0
- package/hooks/scripts/notification.py +166 -0
- package/hooks/scripts/permission_request.py +223 -0
- package/hooks/scripts/post_tool.py +1374 -0
- package/hooks/scripts/pre_compact.py +272 -0
- package/hooks/scripts/pre_tool.py +1278 -0
- package/hooks/scripts/prompt_submit.py +1109 -0
- package/hooks/scripts/session_end.py +95 -0
- package/hooks/scripts/stop.py +624 -0
- package/hooks/scripts/subagent_lifecycle.py +464 -0
- package/hooks/scripts/subscribers/on_gate_decided.py +84 -0
- package/hooks/scripts/task_completed.py +322 -0
- package/hooks/scripts/worktree_guard.py +148 -0
- package/hooks/subscriptions/on_gate_decided.json +9 -0
- package/install.mjs +128 -0
- package/package.json +41 -0
- package/pyproject.toml +59 -0
- package/schemas/README.md +32 -0
- package/schemas/assert_contracts.json +37 -0
- package/schemas/health_probe.json +46 -0
- package/schemas/plugin_status.json +37 -0
- package/scripts/_adapters/__init__.py +166 -0
- package/scripts/_adapters/jira_adapter.py +18 -0
- package/scripts/_adapters/linear_adapter.py +18 -0
- package/scripts/_adapters/miro_adapter.py +18 -0
- package/scripts/_adapters/notion_adapter.py +18 -0
- package/scripts/_agents.py +357 -0
- package/scripts/_brain_ingest/__init__.py +2 -0
- package/scripts/_brain_ingest/session_fact_extractor.py +341 -0
- package/scripts/_brain_port.py +163 -0
- package/scripts/_bus.py +1081 -0
- package/scripts/_bus_catalog_gen.py +93 -0
- package/scripts/_bus_consumers.json +46 -0
- package/scripts/_bus_emit.py +43 -0
- package/scripts/_capability_registry.py +334 -0
- package/scripts/_capability_resolver.py +322 -0
- package/scripts/_domain_store.py +559 -0
- package/scripts/_event_log_reader.py +154 -0
- package/scripts/_event_schema.py +305 -0
- package/scripts/_event_store.py +397 -0
- package/scripts/_heavy_cadence.py +324 -0
- package/scripts/_integration_resolver.py +321 -0
- package/scripts/_logger.py +151 -0
- package/scripts/_loom.py +482 -0
- package/scripts/_paths.py +133 -0
- package/scripts/_python.sh +22 -0
- package/scripts/_run.py +137 -0
- package/scripts/_session.py +502 -0
- package/scripts/_validate_registry.py +1042 -0
- package/scripts/_wicked_testing_probe.py +277 -0
- package/scripts/agentic/analyze_agents.py +391 -0
- package/scripts/agentic/detect_framework.py +420 -0
- package/scripts/agentic/issue_taxonomy.py +357 -0
- package/scripts/agentic/pattern_scorer.py +434 -0
- package/scripts/classify/persist.py +169 -0
- package/scripts/compiler/compile.py +552 -0
- package/scripts/compiler/phase0/VERDICT.md +60 -0
- package/scripts/compiler/phase0/detect.py +292 -0
- package/scripts/compiler/phase0/emit.py +228 -0
- package/scripts/compiler/phase0/evidence/Enterprise-AISDLC.bindings.json +30 -0
- package/scripts/compiler/phase0/evidence/Enterprise-AISDLC.lint-output.txt +17 -0
- package/scripts/compiler/phase0/evidence/Enterprise-AISDLC.stage/.wg/evidence/failing-tests.txt +4 -0
- package/scripts/compiler/phase0/evidence/Enterprise-AISDLC.stage/.wg/evidence/honest-tests.txt +2 -0
- package/scripts/compiler/phase0/evidence/Enterprise-AISDLC.stage/fab-fail.build.md +8 -0
- package/scripts/compiler/phase0/evidence/Enterprise-AISDLC.stage/fab-missing.build.md +8 -0
- package/scripts/compiler/phase0/evidence/Enterprise-AISDLC.stage/honest.build.md +8 -0
- package/scripts/compiler/phase0/evidence/Enterprise-AISDLC.stage/wg_check_claims.py +174 -0
- package/scripts/compiler/phase0/evidence/command_iq.bindings.json +45 -0
- package/scripts/compiler/phase0/evidence/command_iq.lint-output.txt +17 -0
- package/scripts/compiler/phase0/evidence/command_iq.stage/.projects/evidence-domain/phase-1-clarify/evidence/failing-tests.txt +4 -0
- package/scripts/compiler/phase0/evidence/command_iq.stage/.projects/evidence-domain/phase-1-clarify/evidence/honest-tests.txt +3 -0
- package/scripts/compiler/phase0/evidence/command_iq.stage/fab-fail.build.md +8 -0
- package/scripts/compiler/phase0/evidence/command_iq.stage/fab-missing.build.md +8 -0
- package/scripts/compiler/phase0/evidence/command_iq.stage/honest.build.md +8 -0
- package/scripts/compiler/phase0/evidence/command_iq.stage/wg_check_claims.py +174 -0
- package/scripts/compiler/phase0/evidence/memos.bindings.json +28 -0
- package/scripts/compiler/phase0/evidence/memos.lint-output.txt +17 -0
- package/scripts/compiler/phase0/evidence/memos.stage/.wg/evidence/failing-tests.txt +4 -0
- package/scripts/compiler/phase0/evidence/memos.stage/.wg/evidence/honest-tests.txt +2 -0
- package/scripts/compiler/phase0/evidence/memos.stage/fab-fail.build.md +8 -0
- package/scripts/compiler/phase0/evidence/memos.stage/fab-missing.build.md +8 -0
- package/scripts/compiler/phase0/evidence/memos.stage/honest.build.md +8 -0
- package/scripts/compiler/phase0/evidence/memos.stage/wg_check_claims.py +174 -0
- package/scripts/compiler/phase0/evidence/verdict.json +104 -0
- package/scripts/compiler/phase0/evidence/wicked-bus.bindings.json +29 -0
- package/scripts/compiler/phase0/evidence/wicked-bus.lint-output.txt +17 -0
- package/scripts/compiler/phase0/evidence/wicked-bus.stage/coverage/failing-tests.txt +4 -0
- package/scripts/compiler/phase0/evidence/wicked-bus.stage/coverage/honest-tests.txt +3 -0
- package/scripts/compiler/phase0/evidence/wicked-bus.stage/fab-fail.build.md +8 -0
- package/scripts/compiler/phase0/evidence/wicked-bus.stage/fab-missing.build.md +8 -0
- package/scripts/compiler/phase0/evidence/wicked-bus.stage/honest.build.md +8 -0
- package/scripts/compiler/phase0/evidence/wicked-bus.stage/wg_check_claims.py +174 -0
- package/scripts/compiler/phase0/evidence/wire-vault-transcript.txt +60 -0
- package/scripts/compiler/phase0/run_probe.py +234 -0
- package/scripts/compiler/phase0/wire_vault.py +310 -0
- package/scripts/crew/__init__.py +0 -0
- package/scripts/crew/_task_audit_writer.py +243 -0
- package/scripts/crew/_task_reader.py +389 -0
- package/scripts/crew/archetypes_v11.py +348 -0
- package/scripts/crew/detectors/__init__.py +12 -0
- package/scripts/crew/flow_compiler.py +121 -0
- package/scripts/crew/phase_manager.py +703 -0
- package/scripts/crew/scope_delta.py +264 -0
- package/scripts/crew/specialist_resolver.py +218 -0
- package/scripts/crew/stack_registry.py +189 -0
- package/scripts/data/data_profiler.py +271 -0
- package/scripts/data/ontology_recommender.py +231 -0
- package/scripts/data/schema_validator.py +267 -0
- package/scripts/delivery/drift.py +739 -0
- package/scripts/delivery/telemetry.py +614 -0
- package/scripts/engineering/patch/codegraph_db.py +125 -0
- package/scripts/engineering/patch/generators/__init__.py +56 -0
- package/scripts/engineering/patch/generators/base.py +373 -0
- package/scripts/engineering/patch/generators/csharp_generator.py +494 -0
- package/scripts/engineering/patch/generators/go_generator.py +430 -0
- package/scripts/engineering/patch/generators/java_generator.py +928 -0
- package/scripts/engineering/patch/generators/jsp_generator.py +454 -0
- package/scripts/engineering/patch/generators/kotlin_generator.py +561 -0
- package/scripts/engineering/patch/generators/perl_generator.py +510 -0
- package/scripts/engineering/patch/generators/php_generator.py +644 -0
- package/scripts/engineering/patch/generators/propagation_engine.py +929 -0
- package/scripts/engineering/patch/generators/python_generator.py +487 -0
- package/scripts/engineering/patch/generators/ruby_generator.py +463 -0
- package/scripts/engineering/patch/generators/rust_generator.py +400 -0
- package/scripts/engineering/patch/generators/sql_generator.py +594 -0
- package/scripts/engineering/patch/generators/typescript_generator.py +439 -0
- package/scripts/engineering/patch/patch.py +800 -0
- package/scripts/engineering/patch/safety.py +429 -0
- package/scripts/jam/__init__.py +0 -0
- package/scripts/jam/_bus_consumers.py +271 -0
- package/scripts/jam/agentic_cli_registry.py +703 -0
- package/scripts/jam/consensus.py +737 -0
- package/scripts/jam/detect_clis.py +409 -0
- package/scripts/jam/jam.py +283 -0
- package/scripts/jam/save_transcript.py +171 -0
- package/scripts/loom/__init__.py +22 -0
- package/scripts/loom/cli.py +170 -0
- package/scripts/loom/compose.py +180 -0
- package/scripts/loom/gate.py +120 -0
- package/scripts/loom/manifest.py +140 -0
- package/scripts/loom/resolve.py +59 -0
- package/scripts/persona/__init__.py +0 -0
- package/scripts/persona/registry.py +688 -0
- package/scripts/platform/guard_pipeline.py +1214 -0
- package/scripts/platform/guard_profiles.py +216 -0
- package/scripts/platform/observability/assert_contracts.py +434 -0
- package/scripts/platform/observability/health_probe.py +915 -0
- package/scripts/platform/observability/ops_log_viewer.py +209 -0
- package/scripts/platform/prereq_doctor.py +567 -0
- package/scripts/qe/conditions_manifest.py +260 -0
- package/scripts/qe/content_sanitizer.py +160 -0
- package/scripts/qe/coverage_tracker.py +535 -0
- package/scripts/qe/discover_scenarios.py +243 -0
- package/scripts/qe/evidence_tracker.py +232 -0
- package/scripts/qe/prove.py +196 -0
- package/scripts/qe/registry_lookup.py +80 -0
- package/scripts/qe/registry_store.py +176 -0
- package/scripts/qe/semantic_review.py +1005 -0
- package/scripts/qe/vault_gate.py +382 -0
- package/scripts/qe/verdict_audit.py +175 -0
- package/scripts/qe/verdict_schema.py +335 -0
- package/scripts/reset.py +220 -0
- package/scripts/resolve_path.py +22 -0
- package/scripts/sentinel/invariants.py +402 -0
- package/scripts/sentinel/pre_push.py +73 -0
- package/scripts/setup/__init__.py +1 -0
- package/scripts/setup/detect_state.py +114 -0
- package/scripts/setup/migrate_legacy.py +67 -0
- package/scripts/setup/migrate_v6_projects.py +232 -0
- package/scripts/setup/onboarding.py +114 -0
- package/scripts/smaht/_bus_consumers.py +98 -0
- package/scripts/smaht/adapters/__init__.py +83 -0
- package/scripts/smaht/adapters/brain_adapter.py +254 -0
- package/scripts/smaht/adapters/context7_adapter.py +438 -0
- package/scripts/smaht/adapters/delegation_adapter.py +104 -0
- package/scripts/smaht/adapters/domain_adapter.py +206 -0
- package/scripts/smaht/adapters/events_adapter.py +231 -0
- package/scripts/smaht/adapters/tools_adapter.py +49 -0
- package/scripts/smaht/cheatsheet_store.py +236 -0
- package/scripts/smaht/context_package.py +386 -0
- package/scripts/smaht/knowledge_graph.py +395 -0
- package/scripts/smaht/propose_skills.py +856 -0
- package/scripts/smaht/test_cheatsheet_store.py +428 -0
- package/scripts/statusline.py +151 -0
- package/scripts/where_am_i.py +236 -0
- package/skills/agentic/agentic-patterns/SKILL.md +91 -0
- package/skills/agentic/agentic-patterns/refs/anti-patterns-design.md +283 -0
- package/skills/agentic/agentic-patterns/refs/anti-patterns-operational.md +216 -0
- package/skills/agentic/agentic-patterns/refs/pattern-catalog.md +329 -0
- package/skills/agentic/context-engineering/SKILL.md +142 -0
- package/skills/agentic/context-engineering/refs/caching-and-optimization.md +251 -0
- package/skills/agentic/context-engineering/refs/compression-techniques.md +171 -0
- package/skills/agentic/context-engineering/refs/cost-calculation-budget.md +250 -0
- package/skills/agentic/context-engineering/refs/cost-optimization-reporting.md +300 -0
- package/skills/agentic/context-engineering/refs/selective-loading.md +179 -0
- package/skills/agentic/frameworks/SKILL.md +191 -0
- package/skills/agentic/frameworks/refs/framework-profiles-1.md +209 -0
- package/skills/agentic/frameworks/refs/framework-profiles-2.md +214 -0
- package/skills/agentic/frameworks/refs/migration-patterns-paths.md +267 -0
- package/skills/agentic/frameworks/refs/migration-patterns-testing.md +208 -0
- package/skills/agentic/refs/audit.md +134 -0
- package/skills/agentic/refs/design.md +137 -0
- package/skills/agentic/refs/frameworks.md +102 -0
- package/skills/agentic/refs/review.md +160 -0
- package/skills/agentic/review-methodology/SKILL.md +186 -0
- package/skills/agentic/review-methodology/refs/deliverable-templates.md +246 -0
- package/skills/agentic/review-methodology/refs/issue-taxonomy-quality-testing.md +277 -0
- package/skills/agentic/review-methodology/refs/issue-taxonomy-reliability-safety.md +253 -0
- package/skills/agentic/trust-and-safety/SKILL.md +177 -0
- package/skills/agentic/trust-and-safety/refs/guardrails-actions.md +246 -0
- package/skills/agentic/trust-and-safety/refs/guardrails-input-output.md +238 -0
- package/skills/agentic/trust-and-safety/refs/guardrails-resources.md +209 -0
- package/skills/agentic/trust-and-safety/refs/safety-checklist-advanced.md +209 -0
- package/skills/agentic/trust-and-safety/refs/safety-checklist-core.md +215 -0
- package/skills/archetype/SKILL.md +104 -0
- package/skills/archetype/refs/build.md +142 -0
- package/skills/archetype/refs/decide.md +117 -0
- package/skills/archetype/refs/explore.md +66 -0
- package/skills/archetype/refs/incident.md +149 -0
- package/skills/archetype/refs/migrate.md +170 -0
- package/skills/archetype/refs/modernize.md +187 -0
- package/skills/archetype/refs/review.md +145 -0
- package/skills/archetype/refs/ship.md +117 -0
- package/skills/archetype/refs/specify.md +108 -0
- package/skills/archetype/refs/triage.md +62 -0
- package/skills/classify/SKILL.md +157 -0
- package/skills/data/analysis/SKILL.md +125 -0
- package/skills/data/analysis/refs/templates.md +170 -0
- package/skills/data/data/SKILL.md +118 -0
- package/skills/data/data/refs/examples.md +235 -0
- package/skills/data/ml/SKILL.md +125 -0
- package/skills/data/ml/refs/templates.md +172 -0
- package/skills/data/pipeline/SKILL.md +136 -0
- package/skills/data/pipeline/refs/templates.md +175 -0
- package/skills/data/refs/analyze.md +123 -0
- package/skills/data/refs/data.md +95 -0
- package/skills/data/refs/ml.md +118 -0
- package/skills/data/refs/pipeline.md +92 -0
- package/skills/deliberate/SKILL.md +125 -0
- package/skills/deliberate/refs/architecture-lens.md +37 -0
- package/skills/deliberate/refs/assumptions-lens.md +43 -0
- package/skills/deliberate/refs/code-lens.md +38 -0
- package/skills/deliberate/refs/content-lens.md +37 -0
- package/skills/deliberate/refs/data-lens.md +43 -0
- package/skills/deliberate/refs/design-lens.md +37 -0
- package/skills/deliberate/refs/opportunity-patterns.md +107 -0
- package/skills/deliberate/refs/ops-lens.md +43 -0
- package/skills/deliberate/refs/product-lens.md +46 -0
- package/skills/deliberate/refs/rethink-framework.md +77 -0
- package/skills/deliberate/refs/security-lens.md +47 -0
- package/skills/deliberate/refs/testing-lens.md +45 -0
- package/skills/deliberate/refs/timing-lens.md +42 -0
- package/skills/engineering/architecture/SKILL.md +177 -0
- package/skills/engineering/architecture/refs/adr-template.md +268 -0
- package/skills/engineering/architecture/refs/architecture-template-deployment.md +176 -0
- package/skills/engineering/architecture/refs/architecture-template-design.md +300 -0
- package/skills/engineering/architecture/refs/examples-ecommerce-analytics.md +299 -0
- package/skills/engineering/architecture/refs/examples-saas-trading.md +291 -0
- package/skills/engineering/architecture/refs/patterns-advanced.md +238 -0
- package/skills/engineering/architecture/refs/patterns-structural.md +303 -0
- package/skills/engineering/backend/SKILL.md +102 -0
- package/skills/engineering/backend/refs/checklists.md +146 -0
- package/skills/engineering/backend/refs/patterns.md +181 -0
- package/skills/engineering/debugging/SKILL.md +99 -0
- package/skills/engineering/debugging/refs/patterns.md +248 -0
- package/skills/engineering/debugging/refs/process.md +203 -0
- package/skills/engineering/docs/SKILL.md +97 -0
- package/skills/engineering/engineering/SKILL.md +88 -0
- package/skills/engineering/engineering/refs/checklists.md +91 -0
- package/skills/engineering/engineering/refs/templates.md +71 -0
- package/skills/engineering/frontend/SKILL.md +92 -0
- package/skills/engineering/frontend/refs/checklists.md +96 -0
- package/skills/engineering/frontend/refs/patterns.md +167 -0
- package/skills/engineering/integration/SKILL.md +183 -0
- package/skills/engineering/integration/refs/error-handling-best-practices.md +139 -0
- package/skills/engineering/integration/refs/error-handling-error-classes-typescript.md +212 -0
- package/skills/engineering/integration/refs/error-handling-error-response-format.md +301 -0
- package/skills/engineering/integration/refs/error-handling-retry-strategies.md +190 -0
- package/skills/engineering/integration/refs/event-schemas-best-practices.md +225 -0
- package/skills/engineering/integration/refs/event-schemas-event-naming-conventions.md +303 -0
- package/skills/engineering/integration/refs/event-schemas-event-structure.md +288 -0
- package/skills/engineering/integration/refs/graphql-best-practices.md +138 -0
- package/skills/engineering/integration/refs/graphql-error-handling.md +198 -0
- package/skills/engineering/integration/refs/graphql-graphql-basics.md +197 -0
- package/skills/engineering/integration/refs/graphql-query-examples.md +226 -0
- package/skills/engineering/integration/refs/graphql-schema-design-patterns.md +280 -0
- package/skills/engineering/integration/refs/grpc-grpc-overview.md +246 -0
- package/skills/engineering/integration/refs/grpc-implementation-examples.md +269 -0
- package/skills/engineering/integration/refs/grpc-metadata-headers.md +304 -0
- package/skills/engineering/integration/refs/grpc-testing.md +49 -0
- package/skills/engineering/integration/refs/openapi-template.yaml +682 -0
- package/skills/engineering/integration/refs/resilience-best-practices.md +109 -0
- package/skills/engineering/integration/refs/resilience-circuit-breaker-pattern.md +302 -0
- package/skills/engineering/integration/refs/resilience-rate-limiting.md +245 -0
- package/skills/engineering/integration/refs/resilience-timeout-pattern.md +212 -0
- package/skills/engineering/integration/refs/rest-api-fundamentals.md +299 -0
- package/skills/engineering/integration/refs/rest-api-responses-security.md +302 -0
- package/skills/engineering/integration/refs/versioning-breaking-changes.md +237 -0
- package/skills/engineering/integration/refs/versioning-migration-strategies.md +257 -0
- package/skills/engineering/integration/refs/versioning-versioning-strategies.md +296 -0
- package/skills/engineering/large-scale-migration/SKILL.md +65 -0
- package/skills/engineering/patch/SKILL.md +184 -0
- package/skills/engineering/refs/arch.md +126 -0
- package/skills/engineering/refs/debug.md +142 -0
- package/skills/engineering/refs/docs.md +190 -0
- package/skills/engineering/refs/plan.md +109 -0
- package/skills/engineering/refs/review.md +138 -0
- package/skills/engineering/system-design/SKILL.md +154 -0
- package/skills/engineering/system-design/refs/anti-patterns-big-ball-of-mud.md +254 -0
- package/skills/engineering/system-design/refs/anti-patterns-circular-dependencies.md +241 -0
- package/skills/engineering/system-design/refs/anti-patterns-feature-envy.md +168 -0
- package/skills/engineering/system-design/refs/anti-patterns-god-object.md +247 -0
- package/skills/engineering/system-design/refs/component-template-lifecycle.md +210 -0
- package/skills/engineering/system-design/refs/component-template-maintenance.md +219 -0
- package/skills/engineering/system-design/refs/component-template-structure.md +276 -0
- package/skills/engineering/system-design/refs/dependencies-best-practices.md +260 -0
- package/skills/engineering/system-design/refs/dependencies-dependency-principles.md +295 -0
- package/skills/engineering/system-design/refs/dependencies-dependency-tracking.md +261 -0
- package/skills/engineering/system-design/refs/interface-template-lifecycle.md +211 -0
- package/skills/engineering/system-design/refs/interface-template-maintenance.md +212 -0
- package/skills/engineering/system-design/refs/interface-template-structure.md +269 -0
- package/skills/engineering/system-design/refs/patterns-dependency-injection.md +151 -0
- package/skills/engineering/system-design/refs/patterns-facade-pattern.md +257 -0
- package/skills/engineering/system-design/refs/patterns-layered-pattern.md +204 -0
- package/skills/engineering/system-design/refs/patterns-plugin-architecture.md +229 -0
- package/skills/engineering/unit-test-quality/SKILL.md +194 -0
- package/skills/ground/SKILL.md +130 -0
- package/skills/integration-discovery/SKILL.md +168 -0
- package/skills/integration-discovery/refs/capabilities.md +282 -0
- package/skills/integration-discovery/refs/cli-detection.md +295 -0
- package/skills/integration-discovery/refs/discovery-sources.md +233 -0
- package/skills/integration-discovery/refs/task-patterns.md +206 -0
- package/skills/jam/SKILL.md +45 -0
- package/skills/jam/refs/facilitation-patterns.md +125 -0
- package/skills/jam/refs/quick.md +64 -0
- package/skills/jam/refs/synthesis-patterns.md +114 -0
- package/skills/multi-model/SKILL.md +168 -0
- package/skills/multi-model/refs/aichat.md +119 -0
- package/skills/multi-model/refs/aider.md +100 -0
- package/skills/multi-model/refs/auditability.md +238 -0
- package/skills/multi-model/refs/codex.md +169 -0
- package/skills/multi-model/refs/context.md +306 -0
- package/skills/multi-model/refs/copilot.md +161 -0
- package/skills/multi-model/refs/examples.md +224 -0
- package/skills/multi-model/refs/gemini.md +185 -0
- package/skills/multi-model/refs/goose.md +112 -0
- package/skills/multi-model/refs/llm.md +124 -0
- package/skills/multi-model/refs/opencode.md +196 -0
- package/skills/multi-model/refs/orchestration.md +188 -0
- package/skills/multi-model/refs/pi.md +208 -0
- package/skills/persona/SKILL.md +144 -0
- package/skills/persona/refs/define.md +133 -0
- package/skills/platform/actions/refs/actions.md +114 -0
- package/skills/platform/audit/SKILL.md +174 -0
- package/skills/platform/audit/refs/audit.md +145 -0
- package/skills/platform/audit/refs/checklists-evidence-operations.md +144 -0
- package/skills/platform/audit/refs/checklists-gdpr-pci-evidence.md +213 -0
- package/skills/platform/audit/refs/checklists-soc2-hipaa.md +120 -0
- package/skills/platform/audit/refs/frameworks-gdpr-pci.md +225 -0
- package/skills/platform/audit/refs/frameworks-soc2-hipaa.md +228 -0
- package/skills/platform/compliance/SKILL.md +169 -0
- package/skills/platform/compliance/refs/checklists.md +303 -0
- package/skills/platform/compliance/refs/compliance.md +117 -0
- package/skills/platform/compliance/refs/frameworks.md +282 -0
- package/skills/platform/errors/SKILL.md +183 -0
- package/skills/platform/errors/refs/patterns.md +271 -0
- package/skills/platform/errors/refs/severity.md +264 -0
- package/skills/platform/gate-benchmark-rebaseline/SKILL.md +108 -0
- package/skills/platform/gh/refs/gh.md +105 -0
- package/skills/platform/gh-cli/SKILL.md +120 -0
- package/skills/platform/gh-cli/refs/automation.md +63 -0
- package/skills/platform/gh-cli/refs/gh-ops.md +103 -0
- package/skills/platform/gh-cli/refs/patterns.md +132 -0
- package/skills/platform/gh-cli/scripts/gh_ops.py +454 -0
- package/skills/platform/github-actions/SKILL.md +159 -0
- package/skills/platform/github-actions/refs/security.md +150 -0
- package/skills/platform/github-actions/refs/templates.md +230 -0
- package/skills/platform/github-actions/refs/troubleshooting.md +174 -0
- package/skills/platform/github-actions/scripts/workflow_gen.py +215 -0
- package/skills/platform/gitlab-ci/SKILL.md +140 -0
- package/skills/platform/gitlab-ci/refs/templates.md +223 -0
- package/skills/platform/gitlab-ci/refs/troubleshooting.md +213 -0
- package/skills/platform/glab-cli/SKILL.md +133 -0
- package/skills/platform/glab-cli/refs/ci-debugging.md +95 -0
- package/skills/platform/glab-cli/refs/glab-ops.md +78 -0
- package/skills/platform/glab-cli/refs/patterns.md +131 -0
- package/skills/platform/glab-cli/scripts/glab_ops.py +313 -0
- package/skills/platform/health/SKILL.md +177 -0
- package/skills/platform/health/refs/health.md +72 -0
- package/skills/platform/health/refs/sources.md +302 -0
- package/skills/platform/incident/refs/incident.md +136 -0
- package/skills/platform/infra/refs/infra.md +104 -0
- package/skills/platform/observability/SKILL.md +128 -0
- package/skills/platform/observability/refs/toolchain-discovery.md +243 -0
- package/skills/platform/prereq-doctor/SKILL.md +57 -0
- package/skills/platform/prereq-doctor/refs/tool-registry.md +58 -0
- package/skills/platform/traces/refs/traces.md +101 -0
- package/skills/product/acceptance-criteria/SKILL.md +193 -0
- package/skills/product/acceptance-criteria/refs/ac-anti-patterns.md +291 -0
- package/skills/product/acceptance-criteria/refs/ac-examples.md +277 -0
- package/skills/product/accessibility/SKILL.md +197 -0
- package/skills/product/accessibility/refs/aria-patterns-basics.md +250 -0
- package/skills/product/accessibility/refs/aria-patterns-dynamic.md +187 -0
- package/skills/product/accessibility/refs/aria-patterns-interactive.md +246 -0
- package/skills/product/accessibility/refs/audit-report-findings.md +248 -0
- package/skills/product/accessibility/refs/audit-report-results.md +276 -0
- package/skills/product/accessibility/refs/common-violations-html-css.md +270 -0
- package/skills/product/accessibility/refs/common-violations-interactive.md +303 -0
- package/skills/product/accessibility/refs/keyboard-testing-basics.md +222 -0
- package/skills/product/accessibility/refs/keyboard-testing-patterns.md +173 -0
- package/skills/product/accessibility/refs/screen-reader-testing-advanced.md +294 -0
- package/skills/product/accessibility/refs/screen-reader-testing-commands.md +255 -0
- package/skills/product/accessibility/refs/wcag-checklist.md +262 -0
- package/skills/product/analyze/SKILL.md +164 -0
- package/skills/product/analyze/refs/algorithms.md +238 -0
- package/skills/product/analyze/refs/sentiment-patterns.md +180 -0
- package/skills/product/imagery/SKILL.md +97 -0
- package/skills/product/imagery/alter/SKILL.md +105 -0
- package/skills/product/imagery/alter/refs/editing-reference.md +146 -0
- package/skills/product/imagery/create/SKILL.md +109 -0
- package/skills/product/imagery/create/refs/prompt-engineering.md +112 -0
- package/skills/product/imagery/create/refs/provider-reference.md +219 -0
- package/skills/product/imagery/review/SKILL.md +101 -0
- package/skills/product/imagery/review/refs/analysis-lenses.md +136 -0
- package/skills/product/imagery/review/refs/quality-gates.md +153 -0
- package/skills/product/imagery/scripts/analyze.sh +23 -0
- package/skills/product/imagery/scripts/edit.sh +14 -0
- package/skills/product/imagery/scripts/generate.sh +13 -0
- package/skills/product/imagery/scripts/provider.py +787 -0
- package/skills/product/listen/SKILL.md +175 -0
- package/skills/product/listen/refs/channels.md +220 -0
- package/skills/product/mockup/SKILL.md +106 -0
- package/skills/product/mockup/refs/templates.md +95 -0
- package/skills/product/refs/a11y.md +109 -0
- package/skills/product/refs/acceptance.md +79 -0
- package/skills/product/refs/align.md +67 -0
- package/skills/product/refs/analyze.md +77 -0
- package/skills/product/refs/elicit.md +67 -0
- package/skills/product/refs/listen.md +58 -0
- package/skills/product/refs/mockup.md +77 -0
- package/skills/product/refs/screenshot.md +59 -0
- package/skills/product/refs/strategy.md +77 -0
- package/skills/product/refs/synthesize.md +54 -0
- package/skills/product/refs/ux-review.md +68 -0
- package/skills/product/refs/ux.md +101 -0
- package/skills/product/requirements-analysis/SKILL.md +136 -0
- package/skills/product/requirements-analysis/refs/requirements-example-auth.md +264 -0
- package/skills/product/requirements-analysis/refs/requirements-example-export-integration.md +88 -0
- package/skills/product/requirements-analysis/refs/requirements-output-format-template.md +247 -0
- package/skills/product/requirements-analysis/refs/user-story-guide.md +296 -0
- package/skills/product/requirements-graph/SKILL.md +155 -0
- package/skills/product/requirements-graph/refs/examples.md +223 -0
- package/skills/product/requirements-graph/refs/schema.md +162 -0
- package/skills/product/requirements-migrate/SKILL.md +90 -0
- package/skills/product/requirements-navigate/SKILL.md +141 -0
- package/skills/product/requirements-navigate/refs/meta-templates.md +141 -0
- package/skills/product/screenshot/SKILL.md +147 -0
- package/skills/product/strategy/SKILL.md +198 -0
- package/skills/product/strategy/refs/frameworks.md +295 -0
- package/skills/product/strategy/refs/templates-competitive-market.md +299 -0
- package/skills/product/strategy/refs/templates-roi-value.md +207 -0
- package/skills/product/synthesize/SKILL.md +116 -0
- package/skills/product/synthesize/refs/journey-mapping.md +212 -0
- package/skills/product/synthesize/refs/prioritization.md +193 -0
- package/skills/product/ux-review/SKILL.md +164 -0
- package/skills/product/visual-direction/SKILL.md +137 -0
- package/skills/product/visual-review/SKILL.md +131 -0
- package/skills/runtime-exec/SKILL.md +138 -0
- package/skills/search/codebase-narrator/SKILL.md +131 -0
- package/skills/search/codebase-narrator/refs/output-template.md +100 -0
- package/skills/smaht/SKILL.md +72 -0
- package/skills/smaht/discovery/SKILL.md +65 -0
- package/skills/smaht/intent/SKILL.md +89 -0
- package/skills/smaht/propose-skills/SKILL.md +142 -0
- package/skills/smaht/refs/state.md +76 -0
- package/skills/swarm/SKILL.md +132 -0
- package/skills/swarm/refs/fan-out.md +104 -0
- package/skills/swarm/refs/independent-verification.md +86 -0
- package/skills/swarm/refs/receipts-and-evidence.md +69 -0
- package/skills/swarm/refs/recon-synthesis.md +87 -0
- package/skills/swarm/refs/ship-discipline.md +90 -0
- package/skills/wickedizer/SKILL.md +147 -0
- package/skills/wickedizer/refs/artifact-types.md +238 -0
- package/skills/wickedizer/refs/complexity.md +278 -0
- package/skills/wickedizer/refs/de-ai-pass.md +140 -0
- package/skills/wickedizer/refs/failure-modes.md +249 -0
- package/skills/wickedizer/refs/patterns.md +282 -0
- package/skills/wickedizer/refs/review.md +221 -0
- package/skills/wickedizer/refs/structure.md +282 -0
- package/skills/wickedizer/refs/voice-profile.md +125 -0
- package/skills/workflow/SKILL.md +132 -0
- package/skills/workflow/refs/archetype-adjustments.md +205 -0
- package/skills/workflow/refs/evidence.md +58 -0
- package/skills/workflow/refs/integration.md +130 -0
- package/skills/workflow/refs/risk-dimension-signals.md +260 -0
- package/skills/workflow/refs/scoring-rubric.md +49 -0
- package/skills/workflow/refs/signal-keywords.md +176 -0
- package/skills/workflow/refs/specialist-routing-rules.md +159 -0
- package/skills/worktrees/SKILL.md +87 -0
- package/skills/worktrees/refs/recipes.md +96 -0
|
@@ -0,0 +1,68 @@
|
|
|
1
|
+
# UX / Design Review Rubric (4 lenses)
|
|
2
|
+
|
|
3
|
+
Apply this inline. A broad design audit across four lenses: **flows · ui · a11y ·
|
|
4
|
+
research**. Each lens returns a score 1-5 + findings (severity + file:line + impact
|
|
5
|
+
+ fix). Scope with `--focus`; `--quick` = critical-only.
|
|
6
|
+
|
|
7
|
+
> **Dispatch only for `--focus all`.** When all lenses run, dispatch the specialist
|
|
8
|
+
> agents in parallel (ux-designer, ui-reviewer, a11y-expert) — real concurrency on a
|
|
9
|
+
> large surface earns the hop. The research lens is folded into the ux-designer
|
|
10
|
+
> dispatch (same artifact + reviewer skill). For a single `--focus`, apply that lens's
|
|
11
|
+
> rubric inline; do not dispatch.
|
|
12
|
+
|
|
13
|
+
Auto-detect focus when absent: `.tsx/.jsx/.vue` -> flows+ui+a11y; `.css/.scss` ->
|
|
14
|
+
ui; requirements `.md` -> research; directory -> all.
|
|
15
|
+
|
|
16
|
+
## Lens: flows (ux-designer)
|
|
17
|
+
|
|
18
|
+
Evaluate flow clarity, error/empty/loading states, interaction patterns, IA.
|
|
19
|
+
Happy path <=7 steps; every decision mapped; recovery on errors; back nav at every
|
|
20
|
+
step; confirmation on destructive actions. Nielsen's 10 heuristics. (Full rubric:
|
|
21
|
+
`refs/ux.md`.)
|
|
22
|
+
|
|
23
|
+
## Lens: ui (ui-reviewer)
|
|
24
|
+
|
|
25
|
+
Establish the design-system baseline (tokens file, component library, grid). Then:
|
|
26
|
+
- **Consistency**: color palette, typography scale, spacing (4px/8px grid), radius,
|
|
27
|
+
elevation, icon style.
|
|
28
|
+
- **Component patterns**: button variants; input states (default/focus/error/disabled);
|
|
29
|
+
card/modal/list patterns.
|
|
30
|
+
- **Code violations**: hardcoded hex outside token files, magic-number spacing
|
|
31
|
+
(`12px`/`15px`), inline styles, duplicate components, missing interactive states.
|
|
32
|
+
- **Responsive**: mobile-first breakpoints (~640/768/1024/1280), no fixed widths that
|
|
33
|
+
break narrow, touch targets >=44x44px, fluid sizing (clamp/min/max).
|
|
34
|
+
- **Polish**: transitions (200-300ms), loading skeletons, empty/error styling, overflow/truncation.
|
|
35
|
+
|
|
36
|
+
Score 1-5; verdict Ship it / Minor polish / Needs work / Significant issues.
|
|
37
|
+
|
|
38
|
+
## Lens: a11y (a11y-expert)
|
|
39
|
+
|
|
40
|
+
Audit WCAG 2.1 AA via POUR: semantic HTML, ARIA, keyboard reachability + order,
|
|
41
|
+
screen-reader announcements, contrast (4.5:1 / 3:1), visible focus. Report WCAG
|
|
42
|
+
level + issues with criterion + fix. (Full rubric: `refs/a11y.md`.)
|
|
43
|
+
|
|
44
|
+
## Lens: research (folded into ux-designer)
|
|
45
|
+
|
|
46
|
+
Assess personas (evidence-based, 3-5 distinct), user journeys (phases, pain points,
|
|
47
|
+
opportunities), Jobs-to-be-Done (`When {situation}, I want {motivation}, so I can
|
|
48
|
+
{outcome}`), and validation status (Validated / Assumed / Unknown). Return a gap list.
|
|
49
|
+
|
|
50
|
+
## Output
|
|
51
|
+
|
|
52
|
+
```markdown
|
|
53
|
+
## UX/Design Review: {target} (focus: {flows|ui|a11y|research|all})
|
|
54
|
+
|
|
55
|
+
| Lens | Score 1-5 | Verdict |
|
|
56
|
+
|------|-----------|---------|
|
|
57
|
+
| Flows | {n} | {…} |
|
|
58
|
+
| UI | {n} | {…} |
|
|
59
|
+
| A11y | {n} | {WCAG level} |
|
|
60
|
+
| Research | {n} | {…} |
|
|
61
|
+
|
|
62
|
+
### Findings (by severity)
|
|
63
|
+
#### Critical — {issue} — {file:line} — Impact: {who} — Fix: {change}
|
|
64
|
+
#### Major / Minor — …
|
|
65
|
+
|
|
66
|
+
### Top Fixes
|
|
67
|
+
1. … 2. … 3. …
|
|
68
|
+
```
|
|
@@ -0,0 +1,101 @@
|
|
|
1
|
+
# UX Flow Design + Analysis Rubric
|
|
2
|
+
|
|
3
|
+
Apply this inline. Design (`create`) or evaluate (`analyze`) user flows, interaction
|
|
4
|
+
patterns, and information architecture — in-chat, no design tool. For research
|
|
5
|
+
synthesis / journey maps grounded in study data, see the `ux-flow` skill
|
|
6
|
+
(`skills/product/ux-flow/`).
|
|
7
|
+
|
|
8
|
+
## Mode
|
|
9
|
+
|
|
10
|
+
- **create** — generate flows from a requirement/description.
|
|
11
|
+
- **analyze** — evaluate existing flows in code or a document.
|
|
12
|
+
- Auto-detect: description string (no path) -> create; file/dir path -> analyze.
|
|
13
|
+
|
|
14
|
+
## Create mode
|
|
15
|
+
|
|
16
|
+
1. **Extract user goals** — what is the user accomplishing?
|
|
17
|
+
2. **Identify entry points** — how do they arrive?
|
|
18
|
+
3. **Map the happy path** — minimum steps to goal (<=7, Miller's Law).
|
|
19
|
+
4. **Define decision points** — where flows branch.
|
|
20
|
+
5. **Handle edge cases** — empty, error, loading, cancel states.
|
|
21
|
+
6. **Document IA** — where this fits in the broader navigation.
|
|
22
|
+
|
|
23
|
+
## Analyze mode
|
|
24
|
+
|
|
25
|
+
1. **Trace the happy path** — is it clear and short?
|
|
26
|
+
2. **Find dead ends** — any branch with no recovery?
|
|
27
|
+
3. **Check error handling** — every failure has a user-facing message?
|
|
28
|
+
4. **Validate back navigation** — can users always go back?
|
|
29
|
+
5. **Assess cognitive load** — too many decisions at once?
|
|
30
|
+
6. Score against the flow checklist + Nielsen heuristics.
|
|
31
|
+
|
|
32
|
+
## Flow checklist
|
|
33
|
+
|
|
34
|
+
- [ ] Happy path <=7 steps
|
|
35
|
+
- [ ] Every decision has all outcomes mapped
|
|
36
|
+
- [ ] Error states have recovery paths (not dead ends)
|
|
37
|
+
- [ ] Back navigation available at every step
|
|
38
|
+
- [ ] Confirmation on destructive actions
|
|
39
|
+
- [ ] Progress indicators on 3+ step flows
|
|
40
|
+
- [ ] Empty + loading states defined
|
|
41
|
+
|
|
42
|
+
## Nielsen's 10 heuristics (audit)
|
|
43
|
+
|
|
44
|
+
1. Visibility of system status · 2. Match system ↔ real world · 3. User control
|
|
45
|
+
and freedom · 4. Consistency and standards · 5. Error prevention · 6. Recognition
|
|
46
|
+
over recall · 7. Flexibility and efficiency · 8. Aesthetic and minimalist design ·
|
|
47
|
+
9. Help users recognize/diagnose/recover from errors · 10. Help and documentation.
|
|
48
|
+
|
|
49
|
+
## Interaction pattern guidance
|
|
50
|
+
|
|
51
|
+
| Pattern | Use when |
|
|
52
|
+
|---------|----------|
|
|
53
|
+
| Modal | Focused action without losing page context |
|
|
54
|
+
| Slide-over | Editing a list item |
|
|
55
|
+
| Inline edit | Single-field quick edit |
|
|
56
|
+
| Wizard | Complex multi-step with dependencies |
|
|
57
|
+
| Accordion | Progressive disclosure for dense content |
|
|
58
|
+
| Tab | Peer-level content switching |
|
|
59
|
+
|
|
60
|
+
## Diagram formats
|
|
61
|
+
|
|
62
|
+
ASCII (quick) or Mermaid `flowchart TD`. IA as a tree (`App / Public / Authenticated`).
|
|
63
|
+
|
|
64
|
+
```
|
|
65
|
+
[Entry] -> [Step 1] -> {Decision?}
|
|
66
|
+
/ \
|
|
67
|
+
Yes No
|
|
68
|
+
v v
|
|
69
|
+
[Step 2] [Alt Path]
|
|
70
|
+
v
|
|
71
|
+
[Success]
|
|
72
|
+
```
|
|
73
|
+
|
|
74
|
+
## Output
|
|
75
|
+
|
|
76
|
+
```markdown
|
|
77
|
+
## UX {Flow | Review}: {feature or component}
|
|
78
|
+
|
|
79
|
+
### Information Architecture
|
|
80
|
+
{IA tree}
|
|
81
|
+
|
|
82
|
+
### User Flow
|
|
83
|
+
{ASCII or Mermaid diagram}
|
|
84
|
+
|
|
85
|
+
### Step-by-Step Walkthrough
|
|
86
|
+
1. {step} -> {system response}
|
|
87
|
+
|
|
88
|
+
### Edge Cases
|
|
89
|
+
- Empty: {what shows} · Error: {what shows + recovery} · Loading: {feedback}
|
|
90
|
+
|
|
91
|
+
### Issues Found
|
|
92
|
+
#### Critical — {issue} — Impact: {who} — Recommendation: {fix}
|
|
93
|
+
#### Major — {friction} — Recommendation: {improvement}
|
|
94
|
+
#### Minor — {polish}
|
|
95
|
+
|
|
96
|
+
### Open Questions
|
|
97
|
+
- {question for product/stakeholder}
|
|
98
|
+
|
|
99
|
+
### Recommendations
|
|
100
|
+
1. {priority action} 2. {pattern suggestion}
|
|
101
|
+
```
|
|
@@ -0,0 +1,136 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: requirements-analysis
|
|
3
|
+
description: |
|
|
4
|
+
Use when turning a vague idea or stakeholder ask into structured user stories with acceptance criteria
|
|
5
|
+
and a requirements graph. For complexity >= 3 or compliance projects, defaults to graph mode.
|
|
6
|
+
NOT for navigating an existing requirements graph (use requirements-navigate) or stakeholder alignment (use product:align).
|
|
7
|
+
phase_relevance: ["clarify", "design", "review"]
|
|
8
|
+
archetype_relevance: ["*"]
|
|
9
|
+
---
|
|
10
|
+
|
|
11
|
+
# Requirements Analysis Skill
|
|
12
|
+
|
|
13
|
+
Structured requirements elicitation from discovery through documentation.
|
|
14
|
+
|
|
15
|
+
> **Default: Graph mode.** For complexity >= 3 or compliance projects, produce
|
|
16
|
+
> a `requirements/` graph (see `requirements-graph` skill) instead of a
|
|
17
|
+
> monolithic document. Use `--monolith` to force the legacy single-file format.
|
|
18
|
+
> See: `requirements-graph/SKILL.md` for graph layout and schema.
|
|
19
|
+
> See: `requirements-navigate/SKILL.md` for querying and maintaining the graph.
|
|
20
|
+
|
|
21
|
+
## Process
|
|
22
|
+
|
|
23
|
+
### 1. Context Gathering
|
|
24
|
+
- Read project brief, outcome.md, or requirements
|
|
25
|
+
- Identify existing documentation
|
|
26
|
+
- Note assumptions and constraints
|
|
27
|
+
|
|
28
|
+
### 2. Stakeholder Identification
|
|
29
|
+
- Who are the users/personas?
|
|
30
|
+
- Who are secondary stakeholders?
|
|
31
|
+
- Who has decision authority?
|
|
32
|
+
|
|
33
|
+
### 3. Requirements Elicitation
|
|
34
|
+
|
|
35
|
+
Ask the 5 W's:
|
|
36
|
+
- **Who**: Which users/personas?
|
|
37
|
+
- **What**: What capabilities needed?
|
|
38
|
+
- **When**: What triggers the need?
|
|
39
|
+
- **Where**: What context/environment?
|
|
40
|
+
- **Why**: What value/benefit?
|
|
41
|
+
|
|
42
|
+
### 4. User Story Definition
|
|
43
|
+
|
|
44
|
+
Format: **As a [persona], I want [capability], so that [benefit]**
|
|
45
|
+
|
|
46
|
+
Quality criteria:
|
|
47
|
+
- Specific persona identified
|
|
48
|
+
- Capability clearly stated
|
|
49
|
+
- Benefit/value articulated
|
|
50
|
+
- Testable outcome
|
|
51
|
+
|
|
52
|
+
### 5. Acceptance Criteria
|
|
53
|
+
|
|
54
|
+
For each story:
|
|
55
|
+
```
|
|
56
|
+
Given [context/precondition]
|
|
57
|
+
When [action/event]
|
|
58
|
+
Then [expected outcome]
|
|
59
|
+
```
|
|
60
|
+
|
|
61
|
+
Include:
|
|
62
|
+
- Happy path scenarios
|
|
63
|
+
- Error conditions
|
|
64
|
+
- Edge cases
|
|
65
|
+
- Non-functional requirements
|
|
66
|
+
|
|
67
|
+
### 6. Validation
|
|
68
|
+
|
|
69
|
+
Check:
|
|
70
|
+
- [ ] All stories have persona, capability, benefit
|
|
71
|
+
- [ ] Acceptance criteria are testable
|
|
72
|
+
- [ ] Edge cases identified
|
|
73
|
+
- [ ] Dependencies mapped
|
|
74
|
+
- [ ] Ambiguities flagged
|
|
75
|
+
|
|
76
|
+
## User Story Template
|
|
77
|
+
|
|
78
|
+
```markdown
|
|
79
|
+
### US{N}: {Story Title}
|
|
80
|
+
|
|
81
|
+
**As a** {specific persona}
|
|
82
|
+
**I want** {specific capability}
|
|
83
|
+
**So that** {specific benefit}
|
|
84
|
+
|
|
85
|
+
**Priority**: {P0/P1/P2}
|
|
86
|
+
**Complexity**: {S/M/L/XL}
|
|
87
|
+
|
|
88
|
+
**Acceptance Criteria**:
|
|
89
|
+
1. Given {context}, When {action}, Then {outcome}
|
|
90
|
+
2. Given {error condition}, When {action}, Then {error handling}
|
|
91
|
+
3. Given {edge case}, When {action}, Then {graceful handling}
|
|
92
|
+
|
|
93
|
+
**Non-Functional**:
|
|
94
|
+
- Performance: {requirement}
|
|
95
|
+
- Security: {requirement}
|
|
96
|
+
- Usability: {requirement}
|
|
97
|
+
|
|
98
|
+
**Dependencies**: {Other stories or systems}
|
|
99
|
+
**Assumptions**: {What we're assuming}
|
|
100
|
+
**Open Questions**: {What needs clarification}
|
|
101
|
+
```
|
|
102
|
+
|
|
103
|
+
## Common Patterns
|
|
104
|
+
|
|
105
|
+
**CRUD Operations**:
|
|
106
|
+
- Create: As a user, I want to create X, so that I can track Y
|
|
107
|
+
- Read: As a user, I want to view X, so that I can understand Y
|
|
108
|
+
- Update: As a user, I want to edit X, so that I can correct Y
|
|
109
|
+
- Delete: As a user, I want to remove X, so that I can clean up Y
|
|
110
|
+
|
|
111
|
+
**Authentication/Authorization**:
|
|
112
|
+
- Login, logout, password reset
|
|
113
|
+
- Role-based access control
|
|
114
|
+
- Session management
|
|
115
|
+
|
|
116
|
+
**Data Validation**:
|
|
117
|
+
- Input validation
|
|
118
|
+
- Error messaging
|
|
119
|
+
- Constraint enforcement
|
|
120
|
+
|
|
121
|
+
## Integration with Tools
|
|
122
|
+
|
|
123
|
+
```bash
|
|
124
|
+
# Search for similar requirements (FTS5 over indexed docs + wiki)
|
|
125
|
+
wicked-brain:search "user story"
|
|
126
|
+
|
|
127
|
+
# Store requirements on the active clarify task via native TaskUpdate
|
|
128
|
+
# TaskUpdate(taskId="{task_id}", description="{previous}\n\n## Requirements\n{user_stories}")
|
|
129
|
+
|
|
130
|
+
# Recall past patterns
|
|
131
|
+
Skill(skill="wicked-brain:memory", args="recall \"requirements for {feature_type}\"")
|
|
132
|
+
```
|
|
133
|
+
|
|
134
|
+
## Output Format
|
|
135
|
+
|
|
136
|
+
See: `refs/requirements-output-format-template.md`, `refs/requirements-example-auth.md`, and `refs/requirements-example-export-integration.md`
|
|
@@ -0,0 +1,264 @@
|
|
|
1
|
+
---
|
|
2
|
+
phase_relevance: ["clarify", "design", "review"]
|
|
3
|
+
archetype_relevance: ["*"]
|
|
4
|
+
---
|
|
5
|
+
# Requirements Output: Authentication Example
|
|
6
|
+
|
|
7
|
+
Full domain-specific example of requirements analysis output for an authentication feature.
|
|
8
|
+
|
|
9
|
+
## Example: Authentication Feature
|
|
10
|
+
|
|
11
|
+
```markdown
|
|
12
|
+
# Requirements Analysis: User Authentication System
|
|
13
|
+
|
|
14
|
+
**Date**: 2026-01-24
|
|
15
|
+
**Analyzed By**: Product Team
|
|
16
|
+
**Stakeholders**: Engineering, QE, Security, Customer Success
|
|
17
|
+
**Status**: Review
|
|
18
|
+
|
|
19
|
+
## Executive Summary
|
|
20
|
+
|
|
21
|
+
Build a secure authentication system supporting email/password login with password reset capabilities. Enables customers to create accounts, securely access their data, and manage credentials.
|
|
22
|
+
|
|
23
|
+
## Context
|
|
24
|
+
|
|
25
|
+
### Business Goals
|
|
26
|
+
- Enable user account creation for personalized experiences
|
|
27
|
+
- Meet security compliance requirements (SOC2)
|
|
28
|
+
- Reduce support tickets related to access issues
|
|
29
|
+
|
|
30
|
+
### User Needs
|
|
31
|
+
- Quick account creation
|
|
32
|
+
- Secure login
|
|
33
|
+
- Easy password recovery
|
|
34
|
+
- Persistent sessions
|
|
35
|
+
|
|
36
|
+
### Constraints
|
|
37
|
+
- Must launch within 6 weeks
|
|
38
|
+
- Integrate with existing user database schema
|
|
39
|
+
- GDPR compliance required for EU users
|
|
40
|
+
|
|
41
|
+
## Personas
|
|
42
|
+
|
|
43
|
+
### New Customer
|
|
44
|
+
- **Role**: First-time visitor wanting to create account
|
|
45
|
+
- **Goals**: Quickly sign up and access features
|
|
46
|
+
- **Pain Points**: Forgot password, complex registration flows
|
|
47
|
+
- **Technical Proficiency**: Low to Medium
|
|
48
|
+
|
|
49
|
+
### Returning Customer
|
|
50
|
+
- **Role**: Existing user returning to service
|
|
51
|
+
- **Goals**: Quick, secure access to account
|
|
52
|
+
- **Pain Points**: Remembering credentials, account lockouts
|
|
53
|
+
- **Technical Proficiency**: Medium
|
|
54
|
+
|
|
55
|
+
### Support Agent
|
|
56
|
+
- **Role**: Customer support helping with access issues
|
|
57
|
+
- **Goals**: Quickly help users regain access
|
|
58
|
+
- **Pain Points**: Unable to reset passwords, no visibility into account status
|
|
59
|
+
- **Technical Proficiency**: High
|
|
60
|
+
|
|
61
|
+
## User Stories
|
|
62
|
+
|
|
63
|
+
### US-AUTH-001: User Registration
|
|
64
|
+
|
|
65
|
+
**As a** new customer
|
|
66
|
+
**I want to** register with email and password
|
|
67
|
+
**So that** I can create an account and save my preferences
|
|
68
|
+
|
|
69
|
+
**Priority**: P0
|
|
70
|
+
**Complexity**: M
|
|
71
|
+
|
|
72
|
+
**Acceptance Criteria**:
|
|
73
|
+
1. Given valid email and password (8+ chars), When I submit registration, Then account created
|
|
74
|
+
2. Given email already registered, When I submit, Then error "Email already in use"
|
|
75
|
+
3. Given weak password (<8 chars), When I submit, Then error with strength requirements
|
|
76
|
+
4. Given successful registration, When account created, Then confirmation email sent
|
|
77
|
+
|
|
78
|
+
**Dependencies**: Email service integration
|
|
79
|
+
**Assumptions**: Email verification required before full access
|
|
80
|
+
**Open Questions**:
|
|
81
|
+
- [ ] Support social login (Google, GitHub)?
|
|
82
|
+
- [ ] Password strength requirements (special chars, numbers)?
|
|
83
|
+
|
|
84
|
+
### US-AUTH-002: User Login
|
|
85
|
+
|
|
86
|
+
**As a** returning customer
|
|
87
|
+
**I want to** log in with email and password
|
|
88
|
+
**So that** I can access my account and data
|
|
89
|
+
|
|
90
|
+
**Priority**: P0
|
|
91
|
+
**Complexity**: S
|
|
92
|
+
|
|
93
|
+
**Acceptance Criteria**:
|
|
94
|
+
1. Given valid credentials, When I submit login, Then redirected to dashboard
|
|
95
|
+
2. Given invalid password, When I submit, Then error "Invalid email or password"
|
|
96
|
+
3. Given account locked, When I submit, Then error "Account locked. Reset password."
|
|
97
|
+
4. Given successful login, When I close browser and return within 24h, Then still logged in
|
|
98
|
+
|
|
99
|
+
**Dependencies**: Session management
|
|
100
|
+
**Assumptions**: Sessions expire after 24 hours of inactivity
|
|
101
|
+
**Open Questions**:
|
|
102
|
+
- [ ] "Remember me" functionality?
|
|
103
|
+
- [ ] Multi-device session limits?
|
|
104
|
+
|
|
105
|
+
### US-AUTH-003: Password Reset
|
|
106
|
+
|
|
107
|
+
**As a** customer who forgot password
|
|
108
|
+
**I want to** reset my password via email
|
|
109
|
+
**So that** I can regain access to my account
|
|
110
|
+
|
|
111
|
+
**Priority**: P0
|
|
112
|
+
**Complexity**: M
|
|
113
|
+
|
|
114
|
+
**Acceptance Criteria**:
|
|
115
|
+
1. Given registered email, When I request reset, Then reset link sent to email
|
|
116
|
+
2. Given valid reset link, When I submit new password, Then password updated
|
|
117
|
+
3. Given expired reset link (>24h), When I try to reset, Then error "Link expired"
|
|
118
|
+
4. Given non-existent email, When I request reset, Then generic success message (no disclosure)
|
|
119
|
+
|
|
120
|
+
**Dependencies**: Email service, token generation
|
|
121
|
+
**Assumptions**: Reset links expire after 24 hours
|
|
122
|
+
**Open Questions**:
|
|
123
|
+
- [ ] Security questions as alternative?
|
|
124
|
+
- [ ] SMS-based reset option?
|
|
125
|
+
|
|
126
|
+
## Functional Requirements
|
|
127
|
+
|
|
128
|
+
### Authentication
|
|
129
|
+
1. **REQ-AUTH-001**: Support email/password authentication
|
|
130
|
+
- **Rationale**: Primary authentication method
|
|
131
|
+
- **Acceptance**: User can register and login
|
|
132
|
+
- **Priority**: P0
|
|
133
|
+
|
|
134
|
+
2. **REQ-AUTH-002**: Hash passwords with bcrypt (cost factor 12)
|
|
135
|
+
- **Rationale**: Security best practice
|
|
136
|
+
- **Acceptance**: Passwords never stored in plaintext
|
|
137
|
+
- **Priority**: P0
|
|
138
|
+
|
|
139
|
+
3. **REQ-AUTH-003**: Lock account after 3 failed login attempts
|
|
140
|
+
- **Rationale**: Prevent brute force attacks
|
|
141
|
+
- **Acceptance**: Account locked, only unlockable via password reset
|
|
142
|
+
- **Priority**: P1
|
|
143
|
+
|
|
144
|
+
### Session Management
|
|
145
|
+
1. **REQ-SESS-001**: Sessions expire after 24 hours of inactivity
|
|
146
|
+
- **Rationale**: Balance security and convenience
|
|
147
|
+
- **Acceptance**: User logged out after 24h inactive
|
|
148
|
+
- **Priority**: P1
|
|
149
|
+
|
|
150
|
+
2. **REQ-SESS-002**: Support session persistence across browser restarts
|
|
151
|
+
- **Rationale**: User convenience
|
|
152
|
+
- **Acceptance**: User stays logged in if within 24h window
|
|
153
|
+
- **Priority**: P2
|
|
154
|
+
|
|
155
|
+
## Non-Functional Requirements
|
|
156
|
+
|
|
157
|
+
### Performance
|
|
158
|
+
- **REQ-PERF-001**: Login response time <500ms (95th percentile)
|
|
159
|
+
- Target: Fast, responsive login
|
|
160
|
+
- Measured by: Application performance monitoring
|
|
161
|
+
|
|
162
|
+
### Security
|
|
163
|
+
- **REQ-SEC-001**: All authentication endpoints must use HTTPS
|
|
164
|
+
- Compliance: SOC2, GDPR
|
|
165
|
+
- Verification: SSL/TLS enforcement
|
|
166
|
+
|
|
167
|
+
- **REQ-SEC-002**: Password reset tokens must be single-use
|
|
168
|
+
- Compliance: Security best practice
|
|
169
|
+
- Verification: Token invalidated after use
|
|
170
|
+
|
|
171
|
+
- **REQ-SEC-003**: Log all authentication events (login, logout, failed attempts)
|
|
172
|
+
- Compliance: Audit requirements
|
|
173
|
+
- Verification: Events logged to security audit trail
|
|
174
|
+
|
|
175
|
+
### Usability
|
|
176
|
+
- **REQ-UX-001**: Error messages must not disclose whether email is registered
|
|
177
|
+
- Standard: Security best practice (prevent enumeration)
|
|
178
|
+
- Verification: Consistent messaging for valid/invalid emails
|
|
179
|
+
|
|
180
|
+
- **REQ-UX-002**: Mobile-responsive login/registration forms
|
|
181
|
+
- Standard: Mobile-first design
|
|
182
|
+
- Verification: Forms usable on 320px+ screens
|
|
183
|
+
|
|
184
|
+
## Scope Definition
|
|
185
|
+
|
|
186
|
+
### In Scope
|
|
187
|
+
- Email/password registration
|
|
188
|
+
- Email/password login
|
|
189
|
+
- Password reset via email
|
|
190
|
+
- Session management
|
|
191
|
+
- Account lockout after failed attempts
|
|
192
|
+
|
|
193
|
+
### Out of Scope
|
|
194
|
+
- Social login (Google, GitHub) - future consideration
|
|
195
|
+
- Two-factor authentication (2FA) - future consideration
|
|
196
|
+
- SSO/SAML integration - future consideration
|
|
197
|
+
- Password strength meter UI - nice-to-have
|
|
198
|
+
- Biometric authentication - future consideration
|
|
199
|
+
|
|
200
|
+
### Future Considerations
|
|
201
|
+
- 2FA for high-security accounts
|
|
202
|
+
- OAuth2 integration for third-party apps
|
|
203
|
+
- Passwordless authentication (magic links)
|
|
204
|
+
|
|
205
|
+
## Dependencies
|
|
206
|
+
|
|
207
|
+
### Internal
|
|
208
|
+
- Email service for verification and reset emails
|
|
209
|
+
- Database schema updates for user table
|
|
210
|
+
- Frontend team for login/registration UI
|
|
211
|
+
|
|
212
|
+
### External
|
|
213
|
+
- Email delivery service (SendGrid/SES)
|
|
214
|
+
- Session storage (Redis or database)
|
|
215
|
+
|
|
216
|
+
## Assumptions
|
|
217
|
+
|
|
218
|
+
1. Email service is reliable with >99% delivery rate
|
|
219
|
+
2. Users have access to email for verification
|
|
220
|
+
3. Existing user table can be extended for auth fields
|
|
221
|
+
4. 24-hour session timeout is acceptable for users
|
|
222
|
+
|
|
223
|
+
## Risks
|
|
224
|
+
|
|
225
|
+
| Risk | Impact | Probability | Mitigation |
|
|
226
|
+
|------|--------|-------------|------------|
|
|
227
|
+
| Email delivery failures | High | Medium | Implement retry logic, provide alternative contact |
|
|
228
|
+
| Credential stuffing attacks | High | Medium | Account lockout, rate limiting, monitoring |
|
|
229
|
+
| Password reset token leakage | High | Low | Short expiry, single-use tokens, secure transport |
|
|
230
|
+
| Poor mobile UX | Medium | Medium | Responsive design, user testing |
|
|
231
|
+
|
|
232
|
+
## Open Questions
|
|
233
|
+
|
|
234
|
+
- [ ] Should we support "remember me" functionality?
|
|
235
|
+
- [ ] What password complexity requirements? (special chars, numbers, length)
|
|
236
|
+
- [ ] Support social login in this phase or defer?
|
|
237
|
+
- [ ] Multi-device session limits (e.g., max 5 active sessions)?
|
|
238
|
+
- [ ] Account deletion/deactivation flow needed?
|
|
239
|
+
|
|
240
|
+
## Traceability
|
|
241
|
+
|
|
242
|
+
- **Source Document**: outcome.md
|
|
243
|
+
- **Design Phase**: phases/design/auth-architecture.md
|
|
244
|
+
- **Test Scenarios**: phases/qe/auth-test-scenarios.md
|
|
245
|
+
- **Tasks**: Native tasks with `metadata.initiative="auth"`
|
|
246
|
+
- **Memory**: Tags: auth, security, user-management
|
|
247
|
+
|
|
248
|
+
## Appendices
|
|
249
|
+
|
|
250
|
+
### A. Glossary
|
|
251
|
+
- **Session**: Server-side authentication state
|
|
252
|
+
- **Token**: Single-use, time-limited credential for password reset
|
|
253
|
+
- **Account Lockout**: Temporary disabling of account after failed login attempts
|
|
254
|
+
|
|
255
|
+
### B. References
|
|
256
|
+
- [OWASP Authentication Cheat Sheet](https://cheatsheetseries.owasp.org/cheatsheets/Authentication_Cheat_Sheet.html)
|
|
257
|
+
- [SOC2 Authentication Requirements](https://example.com)
|
|
258
|
+
- [GDPR User Data Guidelines](https://example.com)
|
|
259
|
+
|
|
260
|
+
### C. Revision History
|
|
261
|
+
| Date | Author | Changes |
|
|
262
|
+
|------|--------|---------|
|
|
263
|
+
| 2026-01-24 | Product Team | Initial draft |
|
|
264
|
+
```
|
|
@@ -0,0 +1,88 @@
|
|
|
1
|
+
---
|
|
2
|
+
phase_relevance: ["clarify", "design", "review"]
|
|
3
|
+
archetype_relevance: ["*"]
|
|
4
|
+
---
|
|
5
|
+
# Requirements Output: Minimal Example & Integration Points
|
|
6
|
+
|
|
7
|
+
Minimal format example and integration points for requirements analysis output.
|
|
8
|
+
|
|
9
|
+
## Example: Data Export Feature (Minimal Format)
|
|
10
|
+
|
|
11
|
+
```markdown
|
|
12
|
+
# Requirements: CSV Export for Reports
|
|
13
|
+
|
|
14
|
+
## Summary
|
|
15
|
+
Enable managers to export report data to CSV for offline analysis in Excel.
|
|
16
|
+
|
|
17
|
+
## User Stories
|
|
18
|
+
|
|
19
|
+
### US-EXPORT-001: Export Report Data
|
|
20
|
+
|
|
21
|
+
**As a** manager
|
|
22
|
+
**I want to** export report data to CSV
|
|
23
|
+
**So that** I can analyze trends offline in Excel
|
|
24
|
+
|
|
25
|
+
**Priority**: P1
|
|
26
|
+
**Complexity**: M
|
|
27
|
+
|
|
28
|
+
**Acceptance Criteria**:
|
|
29
|
+
1. Given report data exists, When I click export, Then CSV downloads with all data
|
|
30
|
+
2. Given large dataset (10k+ rows), When I export, Then async job with email notification
|
|
31
|
+
3. Given no data in report, When I click export, Then message "No data to export"
|
|
32
|
+
4. Given CSV contains special characters, When I export, Then properly escaped for Excel
|
|
33
|
+
|
|
34
|
+
### US-EXPORT-002: Custom Date Range Export
|
|
35
|
+
|
|
36
|
+
**As a** manager
|
|
37
|
+
**I want to** select date range for export
|
|
38
|
+
**So that** I can focus on specific time periods
|
|
39
|
+
|
|
40
|
+
**Priority**: P2
|
|
41
|
+
**Complexity**: S
|
|
42
|
+
|
|
43
|
+
**Acceptance Criteria**:
|
|
44
|
+
1. Given date range selected, When I export, Then only data in range included
|
|
45
|
+
2. Given invalid date range (start > end), When I try export, Then validation error
|
|
46
|
+
|
|
47
|
+
## Out of Scope
|
|
48
|
+
- PDF export format
|
|
49
|
+
- Scheduled/recurring exports
|
|
50
|
+
- Custom column selection
|
|
51
|
+
- Multiple file format options (Excel, JSON, XML)
|
|
52
|
+
|
|
53
|
+
## Open Questions
|
|
54
|
+
- [ ] Max row limit for synchronous export? (suggest 10k)
|
|
55
|
+
- [ ] Column headers customizable?
|
|
56
|
+
- [ ] Include metadata (export date, user, filters)?
|
|
57
|
+
```
|
|
58
|
+
|
|
59
|
+
## Integration Points
|
|
60
|
+
|
|
61
|
+
### With native tasks
|
|
62
|
+
Store requirements as native tasks:
|
|
63
|
+
```
|
|
64
|
+
TaskCreate(
|
|
65
|
+
subject="US-AUTH-001",
|
|
66
|
+
description="$(cat requirements.md)",
|
|
67
|
+
metadata={
|
|
68
|
+
"event_type": "task",
|
|
69
|
+
"chain_id": "auth.clarify",
|
|
70
|
+
"source_agent": "requirements-analyst",
|
|
71
|
+
"phase": "clarify",
|
|
72
|
+
"priority": "P0",
|
|
73
|
+
"initiative": "auth"
|
|
74
|
+
}
|
|
75
|
+
)
|
|
76
|
+
```
|
|
77
|
+
|
|
78
|
+
### With wicked-brain:memory
|
|
79
|
+
Store for pattern recall:
|
|
80
|
+
```
|
|
81
|
+
Skill(skill="wicked-brain:memory", args="store \"auth-requirements-2026\" \"$(cat requirements.md)\"")
|
|
82
|
+
```
|
|
83
|
+
|
|
84
|
+
### With Wicked QE
|
|
85
|
+
Requirements feed test scenarios:
|
|
86
|
+
```
|
|
87
|
+
Requirements -> User Stories -> Acceptance Criteria -> Test Scenarios
|
|
88
|
+
```
|