sinapse-ai 1.24.0 → 1.25.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.agents/skills/react-bits-frontend/SKILL.md +66 -0
- package/.agents/skills/react-bits-frontend/agents/openai.yaml +4 -0
- package/.agents/skills/react-bits-frontend/references/corpus-map.md +29 -0
- package/.agents/skills/sinapse/SKILL.md +10 -0
- package/.agents/skills/sinapse-agent/SKILL.md +22 -0
- package/{.codex → .agents}/skills/sinapse-claude/SKILL.md +1 -1
- package/.agents/skills/sinapse-loop/SKILL.md +35 -0
- package/.agents/skills/sinapse-orqx/SKILL.md +44 -0
- package/.agents/skills/sinapse-spec-driven/SKILL.md +35 -0
- package/.agents/skills/snps/SKILL.md +10 -0
- package/.agents/skills/snps-orqx/SKILL.md +10 -0
- package/.claude/agents/README.md +67 -0
- package/.claude/agents/sinapse-ad-copywriter.md +14 -0
- package/.claude/agents/sinapse-agent-forger.md +14 -0
- package/.claude/agents/sinapse-analyst.md +14 -0
- package/.claude/agents/sinapse-animation-interpreter.md +14 -0
- package/.claude/agents/sinapse-animation-performance-engineer.md +14 -0
- package/.claude/agents/sinapse-animations-orqx.md +14 -0
- package/.claude/agents/sinapse-architect.md +14 -0
- package/.claude/agents/sinapse-assessment-creator.md +14 -0
- package/.claude/agents/sinapse-audience-intelligence.md +14 -0
- package/.claude/agents/sinapse-blake-snyder.md +14 -0
- package/.claude/agents/sinapse-brand-archetype-strategist.md +14 -0
- package/.claude/agents/sinapse-brand-auditor.md +14 -0
- package/.claude/agents/sinapse-brand-collateral-designer.md +14 -0
- package/.claude/agents/sinapse-brand-compiler.md +14 -0
- package/.claude/agents/sinapse-brand-creative-engineer.md +14 -0
- package/.claude/agents/sinapse-brand-culture-architect.md +14 -0
- package/.claude/agents/sinapse-brand-growth-strategist.md +14 -0
- package/.claude/agents/sinapse-brand-identity-designer.md +14 -0
- package/.claude/agents/sinapse-brand-motion-vfx.md +14 -0
- package/.claude/agents/sinapse-brand-naming-specialist.md +14 -0
- package/.claude/agents/sinapse-brand-orqx.md +14 -0
- package/.claude/agents/sinapse-brand-positioning-strategist.md +14 -0
- package/.claude/agents/sinapse-brand-sonic-designer.md +14 -0
- package/.claude/agents/sinapse-brand-strategist.md +14 -0
- package/.claude/agents/sinapse-brand-system-architect.md +14 -0
- package/.claude/agents/sinapse-brand-voice-writer.md +14 -0
- package/.claude/agents/sinapse-brene-brown.md +14 -0
- package/.claude/agents/sinapse-budget-controller.md +14 -0
- package/.claude/agents/sinapse-campaign-analyst.md +14 -0
- package/.claude/agents/sinapse-charlie-munger.md +14 -0
- package/.claude/agents/sinapse-claude-mastery-chief.md +14 -0
- package/.claude/agents/sinapse-cloning-orqx.md +14 -0
- package/.claude/agents/sinapse-cloud-security-engineer.md +14 -0
- package/.claude/agents/sinapse-cognitive-extractor.md +14 -0
- package/.claude/agents/sinapse-commercial-orqx.md +14 -0
- package/.claude/agents/sinapse-competitive-intelligence.md +14 -0
- package/.claude/agents/sinapse-compliance-officer.md +14 -0
- package/.claude/agents/sinapse-config-engineer.md +14 -0
- package/.claude/agents/sinapse-content-analyst.md +14 -0
- package/.claude/agents/sinapse-content-capturer.md +14 -0
- package/.claude/agents/sinapse-content-engineer.md +14 -0
- package/.claude/agents/sinapse-content-governor.md +14 -0
- package/.claude/agents/sinapse-content-orqx.md +14 -0
- package/.claude/agents/sinapse-content-writer.md +14 -0
- package/.claude/agents/sinapse-conversion-writer.md +14 -0
- package/.claude/agents/sinapse-copy-editor.md +14 -0
- package/.claude/agents/sinapse-copy-orqx.md +14 -0
- package/.claude/agents/sinapse-copy-strategist.md +14 -0
- package/.claude/agents/sinapse-cost-optimizer.md +14 -0
- package/.claude/agents/sinapse-council-orqx.md +14 -0
- package/.claude/agents/sinapse-courses-orqx.md +14 -0
- package/.claude/agents/sinapse-creative-strategist.md +14 -0
- package/.claude/agents/sinapse-cro-persuasion.md +14 -0
- package/.claude/agents/sinapse-cro-specialist.md +14 -0
- package/.claude/agents/sinapse-cs-business-auditor.md +14 -0
- package/.claude/agents/sinapse-cs-client-success.md +14 -0
- package/.claude/agents/sinapse-cs-crm-specialist.md +14 -0
- package/.claude/agents/sinapse-cs-funnel-architect.md +14 -0
- package/.claude/agents/sinapse-cs-lead-generation-strategist.md +14 -0
- package/.claude/agents/sinapse-cs-offer-designer.md +14 -0
- package/.claude/agents/sinapse-cs-revops-analyst.md +14 -0
- package/.claude/agents/sinapse-cs-sales-closer.md +14 -0
- package/.claude/agents/sinapse-cs-sales-enablement.md +14 -0
- package/.claude/agents/sinapse-css-motion-artist.md +14 -0
- package/.claude/agents/sinapse-curriculum-designer.md +14 -0
- package/.claude/agents/sinapse-cyber-orqx.md +14 -0
- package/.claude/agents/sinapse-dan-harmon.md +14 -0
- package/.claude/agents/sinapse-data-engineer.md +14 -0
- package/.claude/agents/sinapse-data-synthesizer.md +14 -0
- package/.claude/agents/sinapse-deep-researcher.md +14 -0
- package/.claude/agents/sinapse-derek-sivers.md +14 -0
- package/.claude/agents/sinapse-design-orqx.md +14 -0
- package/.claude/agents/sinapse-design-system.md +14 -0
- package/.claude/agents/sinapse-developer.md +14 -0
- package/.claude/agents/sinapse-devops.md +14 -0
- package/.claude/agents/sinapse-direct-response-writer.md +14 -0
- package/.claude/agents/sinapse-dx-accessibility-specialist.md +14 -0
- package/.claude/agents/sinapse-dx-design-system-architect.md +14 -0
- package/.claude/agents/sinapse-dx-frontend-engineer.md +14 -0
- package/.claude/agents/sinapse-dx-interaction-designer.md +14 -0
- package/.claude/agents/sinapse-dx-performance-engineer.md +14 -0
- package/.claude/agents/sinapse-dx-ui-designer.md +14 -0
- package/.claude/agents/sinapse-dx-ux-strategist.md +14 -0
- package/.claude/agents/sinapse-editorial-strategist.md +14 -0
- package/.claude/agents/sinapse-email-sequence-strategist.md +14 -0
- package/.claude/agents/sinapse-finance-orqx.md +14 -0
- package/.claude/agents/sinapse-fiscal-compliance-br.md +14 -0
- package/.claude/agents/sinapse-forecast-strategist.md +14 -0
- package/.claude/agents/sinapse-funnel-copywriter.md +14 -0
- package/.claude/agents/sinapse-ga-analytics-engineer.md +14 -0
- package/.claude/agents/sinapse-ga-campaign-analyst.md +14 -0
- package/.claude/agents/sinapse-ga-cro-specialist.md +14 -0
- package/.claude/agents/sinapse-ga-data-analyst.md +14 -0
- package/.claude/agents/sinapse-ga-growth-hacker.md +14 -0
- package/.claude/agents/sinapse-ga-seo-strategist.md +14 -0
- package/.claude/agents/sinapse-generative-particle-engineer.md +14 -0
- package/.claude/agents/sinapse-google-ads-specialist.md +14 -0
- package/.claude/agents/sinapse-growth-orqx.md +14 -0
- package/.claude/agents/sinapse-headline-specialist.md +14 -0
- package/.claude/agents/sinapse-hooks-architect.md +14 -0
- package/.claude/agents/sinapse-incident-responder.md +14 -0
- package/.claude/agents/sinapse-joseph-campbell.md +14 -0
- package/.claude/agents/sinapse-kb-architect.md +14 -0
- package/.claude/agents/sinapse-keith-johnstone.md +14 -0
- package/.claude/agents/sinapse-kindra-hall.md +14 -0
- package/.claude/agents/sinapse-launch-strategist.md +14 -0
- package/.claude/agents/sinapse-lesson-architect.md +14 -0
- package/.claude/agents/sinapse-long-form-writer.md +14 -0
- package/.claude/agents/sinapse-market-analyst.md +14 -0
- package/.claude/agents/sinapse-marshall-ganz.md +14 -0
- package/.claude/agents/sinapse-mcp-integrator.md +14 -0
- package/.claude/agents/sinapse-meta-ads-specialist.md +14 -0
- package/.claude/agents/sinapse-mind-synthesizer.md +14 -0
- package/.claude/agents/sinapse-motion-choreographer.md +14 -0
- package/.claude/agents/sinapse-nancy-duarte.md +14 -0
- package/.claude/agents/sinapse-naval-ravikant.md +14 -0
- package/.claude/agents/sinapse-network-security-engineer.md +14 -0
- package/.claude/agents/sinapse-oren-klaff.md +14 -0
- package/.claude/agents/sinapse-paidmedia-orqx.md +14 -0
- package/.claude/agents/sinapse-park-howell.md +14 -0
- package/.claude/agents/sinapse-patrick-lencioni.md +14 -0
- package/.claude/agents/sinapse-penetration-tester.md +14 -0
- package/.claude/agents/sinapse-performance-engineer.md +14 -0
- package/.claude/agents/sinapse-persuasion-psychologist.md +14 -0
- package/.claude/agents/sinapse-peter-thiel.md +14 -0
- package/.claude/agents/sinapse-platform-aesthetic-director.md +14 -0
- package/.claude/agents/sinapse-platform-specialist.md +14 -0
- package/.claude/agents/sinapse-pm-creative-performance-analyst.md +14 -0
- package/.claude/agents/sinapse-pm-youtube-ads-specialist.md +14 -0
- package/.claude/agents/sinapse-premium-packaging-strategist.md +14 -0
- package/.claude/agents/sinapse-pricing-strategist.md +14 -0
- package/.claude/agents/sinapse-product-lead.md +14 -0
- package/.claude/agents/sinapse-product-orqx.md +14 -0
- package/.claude/agents/sinapse-product-surface-director.md +14 -0
- package/.claude/agents/sinapse-production-director.md +14 -0
- package/.claude/agents/sinapse-profitability-analyst.md +14 -0
- package/.claude/agents/sinapse-project-integrator.md +14 -0
- package/.claude/agents/sinapse-project-lead.md +14 -0
- package/.claude/agents/sinapse-proof-architect.md +14 -0
- package/.claude/agents/sinapse-ps-client-product-manager.md +14 -0
- package/.claude/agents/sinapse-ps-delivery-manager.md +14 -0
- package/.claude/agents/sinapse-ps-discovery-lead.md +14 -0
- package/.claude/agents/sinapse-ps-product-analyst.md +14 -0
- package/.claude/agents/sinapse-ps-product-ops-specialist.md +14 -0
- package/.claude/agents/sinapse-ps-product-strategist.md +14 -0
- package/.claude/agents/sinapse-quality-gate.md +14 -0
- package/.claude/agents/sinapse-ray-dalio.md +14 -0
- package/.claude/agents/sinapse-reid-hoffman.md +14 -0
- package/.claude/agents/sinapse-research-orqx.md +14 -0
- package/.claude/agents/sinapse-revenue-analyst.md +14 -0
- package/.claude/agents/sinapse-roadmap-sentinel.md +14 -0
- package/.claude/agents/sinapse-scroll-narrative-engineer.md +14 -0
- package/.claude/agents/sinapse-shader-artist.md +14 -0
- package/.claude/agents/sinapse-signal-intelligence.md +14 -0
- package/.claude/agents/sinapse-simon-sinek.md +14 -0
- package/.claude/agents/sinapse-skill-craftsman.md +14 -0
- package/.claude/agents/sinapse-slide-designer.md +14 -0
- package/.claude/agents/sinapse-snps-orqx.md +14 -0
- package/.claude/agents/sinapse-soc-analyst.md +14 -0
- package/.claude/agents/sinapse-sop-extractor.md +14 -0
- package/.claude/agents/sinapse-source-hunter.md +14 -0
- package/.claude/agents/sinapse-sprint-lead.md +14 -0
- package/.claude/agents/sinapse-squad-assembler.md +14 -0
- package/.claude/agents/sinapse-squad-creator.md +14 -0
- package/.claude/agents/sinapse-storytelling-orqx.md +14 -0
- package/.claude/agents/sinapse-swarm-orqx.md +14 -0
- package/.claude/agents/sinapse-threat-analyst.md +14 -0
- package/.claude/agents/sinapse-threejs-architect.md +14 -0
- package/.claude/agents/sinapse-trend-forecaster.md +14 -0
- package/.claude/agents/sinapse-ux-design-expert.md +14 -0
- package/.claude/agents/sinapse-ux-designer.md +14 -0
- package/.claude/agents/sinapse-yvon-chouinard.md +14 -0
- package/.claude/rules/software-engineering-applicability.md +13 -0
- package/.claude/settings.json +170 -0
- package/.claude/skill-manifest.json +41 -0
- package/.claude/skills/api-review.md +50 -0
- package/.claude/skills/component-check.md +47 -0
- package/.claude/skills/db-review.md +41 -0
- package/.claude/skills/sinapse/SKILL.md +11 -0
- package/.claude/skills/sinapse-agent/SKILL.md +11 -0
- package/.claude/skills/sinapse-analyst/SKILL.md +11 -0
- package/.claude/skills/sinapse-animations/SKILL.md +11 -0
- package/.claude/skills/sinapse-architect/SKILL.md +11 -0
- package/.claude/skills/sinapse-brand/SKILL.md +11 -0
- package/.claude/skills/sinapse-claude/SKILL.md +11 -0
- package/.claude/skills/sinapse-cloning/SKILL.md +11 -0
- package/.claude/skills/sinapse-commercial/SKILL.md +11 -0
- package/.claude/skills/sinapse-content/SKILL.md +11 -0
- package/.claude/skills/sinapse-copy/SKILL.md +11 -0
- package/.claude/skills/sinapse-council/SKILL.md +11 -0
- package/.claude/skills/sinapse-courses/SKILL.md +11 -0
- package/.claude/skills/sinapse-cyber/SKILL.md +11 -0
- package/.claude/skills/sinapse-data-engineer/SKILL.md +11 -0
- package/.claude/skills/sinapse-design/SKILL.md +11 -0
- package/.claude/skills/sinapse-dev/SKILL.md +11 -0
- package/.claude/skills/sinapse-devops/SKILL.md +11 -0
- package/.claude/skills/sinapse-finance/SKILL.md +11 -0
- package/.claude/skills/sinapse-growth/SKILL.md +11 -0
- package/.claude/skills/sinapse-loop/SKILL.md +11 -0
- package/.claude/skills/sinapse-orqx/SKILL.md +11 -0
- package/.claude/skills/sinapse-paidmedia/SKILL.md +11 -0
- package/.claude/skills/sinapse-pm/SKILL.md +11 -0
- package/.claude/skills/sinapse-po/SKILL.md +11 -0
- package/.claude/skills/sinapse-product/SKILL.md +11 -0
- package/.claude/skills/sinapse-qa/SKILL.md +11 -0
- package/.claude/skills/sinapse-research/SKILL.md +11 -0
- package/.claude/skills/sinapse-sm/SKILL.md +11 -0
- package/.claude/skills/sinapse-spec-driven/SKILL.md +11 -0
- package/.claude/skills/sinapse-squad-creator/SKILL.md +11 -0
- package/.claude/skills/sinapse-storytelling/SKILL.md +11 -0
- package/.claude/skills/sinapse-swarm/SKILL.md +11 -0
- package/.claude/skills/sinapse-ux-design-expert/SKILL.md +11 -0
- package/.claude/skills/snps/SKILL.md +11 -0
- package/.claude/skills/snps-orqx/SKILL.md +11 -0
- package/.claude/skills/story-update.md +52 -0
- package/.claude/skills/test-guard.md +41 -0
- package/.codex/agents/ad-copywriter.toml +3 -0
- package/.codex/agents/agent-forger.toml +3 -0
- package/.codex/agents/analyst.toml +3 -0
- package/.codex/agents/animation-interpreter.toml +3 -0
- package/.codex/agents/animation-performance-engineer.toml +3 -0
- package/.codex/agents/animations-orqx.toml +3 -0
- package/.codex/agents/architect.toml +3 -0
- package/.codex/agents/assessment-creator.toml +3 -0
- package/.codex/agents/audience-intelligence.toml +3 -0
- package/.codex/agents/blake-snyder.toml +3 -0
- package/.codex/agents/brand-archetype-strategist.toml +3 -0
- package/.codex/agents/brand-auditor.toml +3 -0
- package/.codex/agents/brand-collateral-designer.toml +3 -0
- package/.codex/agents/brand-compiler.toml +3 -0
- package/.codex/agents/brand-creative-engineer.toml +3 -0
- package/.codex/agents/brand-culture-architect.toml +3 -0
- package/.codex/agents/brand-growth-strategist.toml +3 -0
- package/.codex/agents/brand-identity-designer.toml +3 -0
- package/.codex/agents/brand-motion-vfx.toml +3 -0
- package/.codex/agents/brand-naming-specialist.toml +3 -0
- package/.codex/agents/brand-orqx.toml +3 -0
- package/.codex/agents/brand-positioning-strategist.toml +3 -0
- package/.codex/agents/brand-sonic-designer.toml +3 -0
- package/.codex/agents/brand-strategist.toml +3 -0
- package/.codex/agents/brand-system-architect.toml +3 -0
- package/.codex/agents/brand-voice-writer.toml +3 -0
- package/.codex/agents/brene-brown.toml +3 -0
- package/.codex/agents/budget-controller.toml +3 -0
- package/.codex/agents/campaign-analyst.toml +3 -0
- package/.codex/agents/charlie-munger.toml +3 -0
- package/.codex/agents/claude-mastery-chief.toml +3 -0
- package/.codex/agents/cloning-orqx.toml +3 -0
- package/.codex/agents/cloud-security-engineer.toml +3 -0
- package/.codex/agents/cognitive-extractor.toml +3 -0
- package/.codex/agents/commercial-orqx.toml +3 -0
- package/.codex/agents/competitive-intelligence.toml +3 -0
- package/.codex/agents/compliance-officer.toml +3 -0
- package/.codex/agents/config-engineer.toml +3 -0
- package/.codex/agents/content-analyst.toml +3 -0
- package/.codex/agents/content-capturer.toml +3 -0
- package/.codex/agents/content-engineer.toml +3 -0
- package/.codex/agents/content-governor.toml +3 -0
- package/.codex/agents/content-orqx.toml +3 -0
- package/.codex/agents/content-writer.toml +3 -0
- package/.codex/agents/conversion-writer.toml +3 -0
- package/.codex/agents/copy-editor.toml +3 -0
- package/.codex/agents/copy-orqx.toml +3 -0
- package/.codex/agents/copy-strategist.toml +3 -0
- package/.codex/agents/cost-optimizer.toml +3 -0
- package/.codex/agents/council-orqx.toml +3 -0
- package/.codex/agents/courses-orqx.toml +3 -0
- package/.codex/agents/creative-strategist.toml +3 -0
- package/.codex/agents/cro-persuasion.toml +3 -0
- package/.codex/agents/cro-specialist.toml +3 -0
- package/.codex/agents/cs-business-auditor.toml +3 -0
- package/.codex/agents/cs-client-success.toml +3 -0
- package/.codex/agents/cs-crm-specialist.toml +3 -0
- package/.codex/agents/cs-funnel-architect.toml +3 -0
- package/.codex/agents/cs-lead-generation-strategist.toml +3 -0
- package/.codex/agents/cs-offer-designer.toml +3 -0
- package/.codex/agents/cs-revops-analyst.toml +3 -0
- package/.codex/agents/cs-sales-closer.toml +3 -0
- package/.codex/agents/cs-sales-enablement.toml +3 -0
- package/.codex/agents/css-motion-artist.toml +3 -0
- package/.codex/agents/curriculum-designer.toml +3 -0
- package/.codex/agents/cyber-orqx.toml +3 -0
- package/.codex/agents/dan-harmon.toml +3 -0
- package/.codex/agents/data-engineer.toml +3 -0
- package/.codex/agents/data-synthesizer.toml +3 -0
- package/.codex/agents/deep-researcher.toml +3 -0
- package/.codex/agents/derek-sivers.toml +3 -0
- package/.codex/agents/design-orqx.toml +3 -0
- package/.codex/agents/design-system.toml +3 -0
- package/.codex/agents/developer.toml +3 -0
- package/.codex/agents/devops.toml +3 -0
- package/.codex/agents/direct-response-writer.toml +3 -0
- package/.codex/agents/dx-accessibility-specialist.toml +3 -0
- package/.codex/agents/dx-design-system-architect.toml +3 -0
- package/.codex/agents/dx-frontend-engineer.toml +3 -0
- package/.codex/agents/dx-interaction-designer.toml +3 -0
- package/.codex/agents/dx-performance-engineer.toml +3 -0
- package/.codex/agents/dx-ui-designer.toml +3 -0
- package/.codex/agents/dx-ux-strategist.toml +3 -0
- package/.codex/agents/editorial-strategist.toml +3 -0
- package/.codex/agents/email-sequence-strategist.toml +3 -0
- package/.codex/agents/finance-orqx.toml +3 -0
- package/.codex/agents/fiscal-compliance-br.toml +3 -0
- package/.codex/agents/forecast-strategist.toml +3 -0
- package/.codex/agents/funnel-copywriter.toml +3 -0
- package/.codex/agents/ga-analytics-engineer.toml +3 -0
- package/.codex/agents/ga-campaign-analyst.toml +3 -0
- package/.codex/agents/ga-cro-specialist.toml +3 -0
- package/.codex/agents/ga-data-analyst.toml +3 -0
- package/.codex/agents/ga-growth-hacker.toml +3 -0
- package/.codex/agents/ga-seo-strategist.toml +3 -0
- package/.codex/agents/generative-particle-engineer.toml +3 -0
- package/.codex/agents/google-ads-specialist.toml +3 -0
- package/.codex/agents/growth-orqx.toml +3 -0
- package/.codex/agents/headline-specialist.toml +3 -0
- package/.codex/agents/hooks-architect.toml +3 -0
- package/.codex/agents/incident-responder.toml +3 -0
- package/.codex/agents/joseph-campbell.toml +3 -0
- package/.codex/agents/kb-architect.toml +3 -0
- package/.codex/agents/keith-johnstone.toml +3 -0
- package/.codex/agents/kindra-hall.toml +3 -0
- package/.codex/agents/launch-strategist.toml +3 -0
- package/.codex/agents/lesson-architect.toml +3 -0
- package/.codex/agents/long-form-writer.toml +3 -0
- package/.codex/agents/market-analyst.toml +3 -0
- package/.codex/agents/marshall-ganz.toml +3 -0
- package/.codex/agents/mcp-integrator.toml +3 -0
- package/.codex/agents/meta-ads-specialist.toml +3 -0
- package/.codex/agents/mind-synthesizer.toml +3 -0
- package/.codex/agents/motion-choreographer.toml +3 -0
- package/.codex/agents/nancy-duarte.toml +3 -0
- package/.codex/agents/naval-ravikant.toml +3 -0
- package/.codex/agents/network-security-engineer.toml +3 -0
- package/.codex/agents/oren-klaff.toml +3 -0
- package/.codex/agents/paidmedia-orqx.toml +3 -0
- package/.codex/agents/park-howell.toml +3 -0
- package/.codex/agents/patrick-lencioni.toml +3 -0
- package/.codex/agents/penetration-tester.toml +3 -0
- package/.codex/agents/performance-engineer.toml +3 -0
- package/.codex/agents/persuasion-psychologist.toml +3 -0
- package/.codex/agents/peter-thiel.toml +3 -0
- package/.codex/agents/platform-aesthetic-director.toml +3 -0
- package/.codex/agents/platform-specialist.toml +3 -0
- package/.codex/agents/pm-creative-performance-analyst.toml +3 -0
- package/.codex/agents/pm-youtube-ads-specialist.toml +3 -0
- package/.codex/agents/premium-packaging-strategist.toml +3 -0
- package/.codex/agents/pricing-strategist.toml +3 -0
- package/.codex/agents/product-lead.toml +3 -0
- package/.codex/agents/product-orqx.toml +3 -0
- package/.codex/agents/product-surface-director.toml +3 -0
- package/.codex/agents/production-director.toml +3 -0
- package/.codex/agents/profitability-analyst.toml +3 -0
- package/.codex/agents/project-integrator.toml +3 -0
- package/.codex/agents/project-lead.toml +3 -0
- package/.codex/agents/proof-architect.toml +3 -0
- package/.codex/agents/ps-client-product-manager.toml +3 -0
- package/.codex/agents/ps-delivery-manager.toml +3 -0
- package/.codex/agents/ps-discovery-lead.toml +3 -0
- package/.codex/agents/ps-product-analyst.toml +3 -0
- package/.codex/agents/ps-product-ops-specialist.toml +3 -0
- package/.codex/agents/ps-product-strategist.toml +3 -0
- package/.codex/agents/quality-gate.toml +3 -0
- package/.codex/agents/ray-dalio.toml +3 -0
- package/.codex/agents/reid-hoffman.toml +3 -0
- package/.codex/agents/research-orqx.toml +3 -0
- package/.codex/agents/revenue-analyst.toml +3 -0
- package/.codex/agents/roadmap-sentinel.toml +3 -0
- package/.codex/agents/scroll-narrative-engineer.toml +3 -0
- package/.codex/agents/shader-artist.toml +3 -0
- package/.codex/agents/signal-intelligence.toml +3 -0
- package/.codex/agents/simon-sinek.toml +3 -0
- package/.codex/agents/skill-craftsman.toml +3 -0
- package/.codex/agents/slide-designer.toml +3 -0
- package/.codex/agents/snps-orqx.toml +3 -0
- package/.codex/agents/soc-analyst.toml +3 -0
- package/.codex/agents/sop-extractor.toml +3 -0
- package/.codex/agents/source-hunter.toml +3 -0
- package/.codex/agents/sprint-lead.toml +3 -0
- package/.codex/agents/squad-assembler.toml +3 -0
- package/.codex/agents/squad-creator.toml +3 -0
- package/.codex/agents/storytelling-orqx.toml +3 -0
- package/.codex/agents/swarm-orqx.toml +3 -0
- package/.codex/agents/threat-analyst.toml +3 -0
- package/.codex/agents/threejs-architect.toml +3 -0
- package/.codex/agents/trend-forecaster.toml +3 -0
- package/.codex/agents/ux-design-expert.toml +3 -0
- package/.codex/agents/ux-designer.toml +3 -0
- package/.codex/agents/yvon-chouinard.toml +3 -0
- package/.codex/catalog.json +20 -5
- package/.codex/command-registry.json +94 -0
- package/.codex/config.toml +8 -0
- package/.codex/delegation-matrix.json +39 -25
- package/.codex/delegation-parity.json +46 -41
- package/.codex/hooks/claude-compat.cjs +547 -0
- package/.codex/hooks.json +123 -0
- package/.codex/scripts/resolve-codex-agent.js +30 -1
- package/.codex/scripts/resolve-codex-workflow.js +283 -0
- package/.codex/scripts/sinapse-codex.js +304 -0
- package/.codex/scripts/sync-codex-native.js +581 -0
- package/.codex/scripts/validate-codex-native.js +277 -0
- package/.codex/tasks/onboard-sinapse-codex.md +1 -1
- package/.sinapse-ai/data/entity-registry.yaml +91 -39
- package/.sinapse-ai/install-manifest.yaml +5 -5
- package/.sinapse-ai/product/templates/statusline/agent-badges.json +37 -37
- package/AGENTS.md +5 -4
- package/CHANGELOG.md +23 -7
- package/README.en.md +1 -1
- package/README.md +25 -10
- package/bin/cli.js +8 -1
- package/bin/commands/help.js +3 -2
- package/bin/commands/install.js +79 -53
- package/bin/commands/status.js +4 -3
- package/bin/commands/uninstall.js +247 -29
- package/bin/commands/update.js +38 -23
- package/bin/lib/command-generator.js +25 -3
- package/bin/lib/global-provider-adapters.js +199 -0
- package/bin/lib/provider-parity.js +22 -0
- package/bin/postinstall.js +11 -11
- package/bin/utils/validate-publish.js +43 -10
- package/docs/framework/codex-parity/codex-integration-process.md +6 -7
- package/docs/framework/codex-parity/codex-native-runtime-v2.md +230 -0
- package/docs/framework/codex-parity/codex-parity-program.md +4 -4
- package/docs/framework/codex-parity/codex-total-parity-orchestration-plan.md +1 -1
- package/docs/framework/codex-parity/codex-workflow-task-parity.md +21 -7
- package/docs/framework/react-bits/animations.md +49 -0
- package/docs/framework/react-bits/audit-findings.md +103 -0
- package/docs/framework/react-bits/backgrounds.md +63 -0
- package/docs/framework/react-bits/catalog-summary.json +61 -0
- package/docs/framework/react-bits/components.md +58 -0
- package/docs/framework/react-bits/implementation-playbook.md +161 -0
- package/docs/framework/react-bits/index.md +130 -0
- package/docs/framework/react-bits/inventory.json +9333 -0
- package/docs/framework/react-bits/text-animations.md +41 -0
- package/docs/framework/software-engineering-applicability.md +31 -0
- package/docs/getting-started.md +6 -2
- package/docs/guides/codex-config.md +2 -2
- package/docs/guides/development-setup.md +1 -2
- package/docs/guides/ide-integration.md +6 -6
- package/docs/guides/quality-gates.md +2 -2
- package/docs/ide-integration.md +2 -2
- package/docs/installation/README.md +2 -2
- package/docs/installation/faq.md +1 -1
- package/docs/installation/troubleshooting.md +2 -2
- package/docs/installation/v4-quick-start.md +1 -1
- package/docs/pt/contributing.md +1 -1
- package/docs/pt/guides/development-setup.md +1 -2
- package/docs/pt/guides/quality-gates.md +2 -2
- package/docs/pt/ide-integration.md +6 -6
- package/docs/pt/installation/faq.md +1 -1
- package/docs/pt/installation/troubleshooting.md +2 -3
- package/docs/pt/installation/v4-quick-start.md +1 -2
- package/docs/pt/platforms/claude-code.md +4 -4
- package/docs/sinapse-agent-flows/analyst-system.md +1 -1
- package/docs/sinapse-agent-flows/architect-system.md +1 -1
- package/docs/sinapse-agent-flows/data-engineer-system.md +1 -1
- package/docs/sinapse-agent-flows/dev-system.md +1 -1
- package/docs/sinapse-agent-flows/pm-system.md +1 -1
- package/docs/sinapse-agent-flows/qa-system.md +1 -1
- package/docs/sinapse-agent-flows/sm-system.md +1 -1
- package/docs/sinapse-agent-flows/snps-orqx-system.md +1 -1
- package/docs/sinapse-agent-flows/squad-creator-system.md +2 -2
- package/docs/sinapse-agent-flows/ux-design-expert-system.md +1 -1
- package/package.json +37 -19
- package/packages/engineering-applicability/fixtures.json +52 -0
- package/packages/engineering-applicability/index.js +150 -0
- package/packages/installer/src/config/ide-configs.js +1 -1
- package/packages/installer/src/installer/sinapse-ai-installer.js +359 -2
- package/packages/installer/src/migrations/legacy-claude-agent-command-hashes.json +36 -0
- package/packages/installer/src/migrations/legacy-codex-native-skill-hashes.json +42 -0
- package/packages/installer/src/updater/index.js +51 -13
- package/packages/installer/src/wizard/feedback.js +1 -1
- package/packages/installer/src/wizard/ide-config-generator.js +22 -0
- package/packages/installer/src/wizard/index.js +106 -75
- package/scripts/gen-agent-badges.js +17 -1
- package/scripts/release-readiness.js +9 -3
- package/scripts/research/generate-react-bits-catalog.mjs +206 -0
- package/scripts/sync-provider-adapters.js +203 -0
- package/scripts/validate-codex-command-registry.js +101 -0
- package/scripts/validate-provider-adapters.js +243 -0
- package/squads/claude-code-mastery/agents/skill-craftsman.md +2 -2
- package/squads/claude-code-mastery/knowledge-base/skill-creation-patterns.md +1 -1
- package/squads/squad-animations/knowledge-base/react-bits-operational-guide.md +43 -0
- package/squads/squad-animations/squad.yaml +10 -5
- package/squads/squad-animations/tasks/orchestrate-react-bits-frontend.md +60 -0
- package/squads/squad-design/agents/ux-designer.md +1 -1
- package/.codex/skills/sinapse-orqx/SKILL.md +0 -25
- /package/{.codex → .agents}/skills/sinapse-analyst/SKILL.md +0 -0
- /package/{.codex → .agents}/skills/sinapse-animations/SKILL.md +0 -0
- /package/{.codex → .agents}/skills/sinapse-architect/SKILL.md +0 -0
- /package/{.codex → .agents}/skills/sinapse-brand/SKILL.md +0 -0
- /package/{.codex → .agents}/skills/sinapse-cloning/SKILL.md +0 -0
- /package/{.codex → .agents}/skills/sinapse-commercial/SKILL.md +0 -0
- /package/{.codex → .agents}/skills/sinapse-content/SKILL.md +0 -0
- /package/{.codex → .agents}/skills/sinapse-copy/SKILL.md +0 -0
- /package/{.codex → .agents}/skills/sinapse-council/SKILL.md +0 -0
- /package/{.codex → .agents}/skills/sinapse-courses/SKILL.md +0 -0
- /package/{.codex → .agents}/skills/sinapse-cyber/SKILL.md +0 -0
- /package/{.codex → .agents}/skills/sinapse-data-engineer/SKILL.md +0 -0
- /package/{.codex → .agents}/skills/sinapse-design/SKILL.md +0 -0
- /package/{.codex → .agents}/skills/sinapse-dev/SKILL.md +0 -0
- /package/{.codex → .agents}/skills/sinapse-devops/SKILL.md +0 -0
- /package/{.codex → .agents}/skills/sinapse-finance/SKILL.md +0 -0
- /package/{.codex → .agents}/skills/sinapse-growth/SKILL.md +0 -0
- /package/{.codex → .agents}/skills/sinapse-paidmedia/SKILL.md +0 -0
- /package/{.codex → .agents}/skills/sinapse-pm/SKILL.md +0 -0
- /package/{.codex → .agents}/skills/sinapse-po/SKILL.md +0 -0
- /package/{.codex → .agents}/skills/sinapse-product/SKILL.md +0 -0
- /package/{.codex → .agents}/skills/sinapse-qa/SKILL.md +0 -0
- /package/{.codex → .agents}/skills/sinapse-research/SKILL.md +0 -0
- /package/{.codex → .agents}/skills/sinapse-sm/SKILL.md +0 -0
- /package/{.codex → .agents}/skills/sinapse-squad-creator/SKILL.md +0 -0
- /package/{.codex → .agents}/skills/sinapse-storytelling/SKILL.md +0 -0
- /package/{.codex → .agents}/skills/sinapse-swarm/SKILL.md +0 -0
- /package/{.codex → .agents}/skills/sinapse-ux-design-expert/SKILL.md +0 -0
package/package.json
CHANGED
|
@@ -1,11 +1,12 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "sinapse-ai",
|
|
3
|
-
"version": "1.
|
|
3
|
+
"version": "1.25.1",
|
|
4
4
|
"description": "SINAPSE AI: Framework de orquestracao de IA — 17 squads, 172 agentes especializados",
|
|
5
5
|
"bin": {
|
|
6
6
|
"sinapse": "bin/sinapse.js",
|
|
7
7
|
"sinapse-ai": "bin/cli.js",
|
|
8
|
-
"sinapse-delegate": "bin/sinapse-delegate.js"
|
|
8
|
+
"sinapse-delegate": "bin/sinapse-delegate.js",
|
|
9
|
+
"sinapse-codex": ".codex/scripts/sinapse-codex.js"
|
|
9
10
|
},
|
|
10
11
|
"main": ".sinapse-ai/index.js",
|
|
11
12
|
"module": ".sinapse-ai/index.esm.js",
|
|
@@ -30,8 +31,13 @@
|
|
|
30
31
|
"!.sinapse-ai/node_modules",
|
|
31
32
|
"!**/node_modules/**",
|
|
32
33
|
".claude/CLAUDE.md",
|
|
34
|
+
".claude/settings.json",
|
|
33
35
|
".claude/rules/",
|
|
34
36
|
".claude/hooks/",
|
|
37
|
+
".claude/agents/",
|
|
38
|
+
".claude/skills/",
|
|
39
|
+
".claude/skill-manifest.json",
|
|
40
|
+
"!.claude/agents/coderabbit-reviewer.md",
|
|
35
41
|
".codex/catalog.json",
|
|
36
42
|
".codex/command-registry.json",
|
|
37
43
|
".codex/delegation-matrix.json",
|
|
@@ -40,10 +46,13 @@
|
|
|
40
46
|
".codex/handoff-packet.template.json",
|
|
41
47
|
".codex/delegation-parity.json",
|
|
42
48
|
".codex/instructions.md",
|
|
49
|
+
".codex/config.toml",
|
|
50
|
+
".codex/hooks.json",
|
|
51
|
+
".codex/hooks/",
|
|
43
52
|
".codex/agents/",
|
|
44
53
|
".codex/scripts/",
|
|
45
|
-
".codex/skills/",
|
|
46
54
|
".codex/tasks/",
|
|
55
|
+
".agents/skills/",
|
|
47
56
|
"AGENTS.md",
|
|
48
57
|
"squads/squad-*/**",
|
|
49
58
|
"squads/claude-code-mastery/**",
|
|
@@ -104,25 +113,29 @@
|
|
|
104
113
|
"validate:manifest": "node scripts/validate-manifest.js",
|
|
105
114
|
"validate:manifest:parity": "node .sinapse-ai/infrastructure/scripts/validate-manifest-parity.js",
|
|
106
115
|
"validate:agents": "node .sinapse-ai/infrastructure/scripts/validate-agents.js",
|
|
107
|
-
"sync:ide": "node
|
|
108
|
-
"sync:ide:validate": "node
|
|
109
|
-
"sync:ide:check": "node
|
|
110
|
-
"sync:ide:claude": "node
|
|
111
|
-
"sync:ide:codex": "node .sinapse-ai/infrastructure/scripts/sync-codex-local-first.js",
|
|
112
|
-
"
|
|
113
|
-
"validate:claude-
|
|
116
|
+
"sync:ide": "node scripts/sync-provider-adapters.js",
|
|
117
|
+
"sync:ide:validate": "node scripts/validate-provider-adapters.js",
|
|
118
|
+
"sync:ide:check": "node scripts/validate-provider-adapters.js",
|
|
119
|
+
"sync:ide:claude": "node scripts/sync-provider-adapters.js",
|
|
120
|
+
"sync:ide:codex": "node .sinapse-ai/infrastructure/scripts/sync-codex-local-first.js && node .codex/scripts/sync-codex-native.js",
|
|
121
|
+
"sync:providers": "node scripts/sync-provider-adapters.js",
|
|
122
|
+
"validate:claude-sync": "node scripts/validate-provider-adapters.js",
|
|
123
|
+
"validate:claude-integration": "node scripts/validate-provider-adapters.js",
|
|
124
|
+
"validate:providers": "node scripts/validate-provider-adapters.js",
|
|
125
|
+
"validate:engineering-applicability": "jest tests/unit/engineering-applicability.test.js --runInBand",
|
|
114
126
|
"validate:squad-schema": "node scripts/validate-squad-yaml.js",
|
|
115
127
|
"validate:squad-schema:strict": "node scripts/validate-squad-yaml.js --strict",
|
|
116
|
-
"validate:codex-sync": "node .sinapse-ai/infrastructure/scripts/validate-codex-
|
|
128
|
+
"validate:codex-sync": "node .codex/scripts/validate-codex-native.js && node scripts/validate-codex-command-registry.js && node .sinapse-ai/infrastructure/scripts/validate-codex-integration.js && node .sinapse-ai/infrastructure/scripts/validate-codex-delegation.js",
|
|
129
|
+
"validate:codex-native": "node .codex/scripts/validate-codex-native.js",
|
|
117
130
|
"validate:codex-integration": "node .sinapse-ai/infrastructure/scripts/validate-codex-integration.js",
|
|
118
|
-
"validate:codex-commands": "node
|
|
131
|
+
"validate:codex-commands": "node scripts/validate-codex-command-registry.js",
|
|
119
132
|
"validate:codex-delegation": "node .sinapse-ai/infrastructure/scripts/validate-codex-delegation.js",
|
|
120
|
-
"sync:skills:codex": "node .
|
|
121
|
-
"sync:skills:codex:global": "node
|
|
122
|
-
"validate:codex-skills": "node .
|
|
133
|
+
"sync:skills:codex": "node .codex/scripts/sync-codex-native.js",
|
|
134
|
+
"sync:skills:codex:global": "node bin/cli.js install --llm=codex --global-only",
|
|
135
|
+
"validate:codex-skills": "node .codex/scripts/validate-codex-native.js",
|
|
123
136
|
"validate:paths": "node .sinapse-ai/infrastructure/scripts/validate-paths.js",
|
|
124
|
-
"validate:parity": "node .sinapse-ai/infrastructure/scripts/validate-
|
|
125
|
-
"validate:parity:fast": "node
|
|
137
|
+
"validate:parity": "node scripts/validate-provider-adapters.js && node .codex/scripts/validate-codex-native.js && node scripts/validate-codex-command-registry.js && node .sinapse-ai/infrastructure/scripts/validate-codex-integration.js && node .sinapse-ai/infrastructure/scripts/validate-codex-delegation.js && node .sinapse-ai/infrastructure/scripts/validate-paths.js",
|
|
138
|
+
"validate:parity:fast": "node scripts/validate-provider-adapters.js && node scripts/validate-codex-command-registry.js",
|
|
126
139
|
"collab:adopt": "node bin/utils/collab-start.js --adopt-current",
|
|
127
140
|
"collab:check": "node bin/utils/collab-start.js --check",
|
|
128
141
|
"collab:start": "node bin/utils/collab-start.js",
|
|
@@ -167,7 +180,6 @@
|
|
|
167
180
|
"execa": "^5.1.1",
|
|
168
181
|
"fast-glob": "^3.3.3",
|
|
169
182
|
"fs-extra": "^11.3.2",
|
|
170
|
-
"glob": "^10.4.4",
|
|
171
183
|
"handlebars": "^4.7.8",
|
|
172
184
|
"inquirer": "^8.2.6",
|
|
173
185
|
"js-yaml": "^4.2.0",
|
|
@@ -219,6 +231,7 @@
|
|
|
219
231
|
"@typescript-eslint/parser": "^8.46.2",
|
|
220
232
|
"conventional-changelog-conventionalcommits": "^9.1.0",
|
|
221
233
|
"eslint": "^9.38.0",
|
|
234
|
+
"glob": "^10.4.4",
|
|
222
235
|
"husky": "^9.1.7",
|
|
223
236
|
"jest": "^30.2.0",
|
|
224
237
|
"lint-staged": "^16.1.1",
|
|
@@ -251,5 +264,10 @@
|
|
|
251
264
|
"ip-address": "^10.1.1",
|
|
252
265
|
"@babel/core": "^7.29.6",
|
|
253
266
|
"js-yaml": "^4.2.0"
|
|
254
|
-
}
|
|
267
|
+
},
|
|
268
|
+
"directories": {
|
|
269
|
+
"doc": "docs",
|
|
270
|
+
"test": "tests"
|
|
271
|
+
},
|
|
272
|
+
"type": "commonjs"
|
|
255
273
|
}
|
|
@@ -0,0 +1,52 @@
|
|
|
1
|
+
{
|
|
2
|
+
"greenfield-web-low": {
|
|
3
|
+
"schemaVersion": "1.0.0",
|
|
4
|
+
"projectType": "greenfield",
|
|
5
|
+
"surfaces": ["frontend", "api"],
|
|
6
|
+
"changeKind": "feature",
|
|
7
|
+
"dataClasses": ["public"],
|
|
8
|
+
"deploymentTargets": ["web", "cloud"],
|
|
9
|
+
"reversibility": "reversible",
|
|
10
|
+
"risk": { "security": "low", "privacy": "low", "availability": "low" }
|
|
11
|
+
},
|
|
12
|
+
"greenfield-data-high": {
|
|
13
|
+
"schemaVersion": "1.0.0",
|
|
14
|
+
"projectType": "greenfield",
|
|
15
|
+
"surfaces": ["database", "api"],
|
|
16
|
+
"changeKind": "feature",
|
|
17
|
+
"dataClasses": ["personal"],
|
|
18
|
+
"deploymentTargets": ["cloud"],
|
|
19
|
+
"reversibility": "conditional",
|
|
20
|
+
"risk": { "security": "high", "privacy": "high", "availability": "medium" }
|
|
21
|
+
},
|
|
22
|
+
"brownfield-ui-low": {
|
|
23
|
+
"schemaVersion": "1.0.0",
|
|
24
|
+
"projectType": "brownfield",
|
|
25
|
+
"surfaces": ["frontend"],
|
|
26
|
+
"changeKind": "fix",
|
|
27
|
+
"dataClasses": ["public"],
|
|
28
|
+
"deploymentTargets": ["web"],
|
|
29
|
+
"reversibility": "reversible",
|
|
30
|
+
"risk": { "security": "low", "privacy": "low", "availability": "low" }
|
|
31
|
+
},
|
|
32
|
+
"brownfield-service-high": {
|
|
33
|
+
"schemaVersion": "1.0.0",
|
|
34
|
+
"projectType": "brownfield",
|
|
35
|
+
"surfaces": ["api", "database"],
|
|
36
|
+
"changeKind": "migration",
|
|
37
|
+
"dataClasses": ["personal"],
|
|
38
|
+
"deploymentTargets": ["cloud"],
|
|
39
|
+
"reversibility": "irreversible",
|
|
40
|
+
"risk": { "security": "high", "privacy": "high", "availability": "high" }
|
|
41
|
+
},
|
|
42
|
+
"unknown-surface": {
|
|
43
|
+
"schemaVersion": "1.0.0",
|
|
44
|
+
"projectType": "brownfield",
|
|
45
|
+
"surfaces": ["quantum-ui"],
|
|
46
|
+
"changeKind": "feature",
|
|
47
|
+
"dataClasses": ["public"],
|
|
48
|
+
"deploymentTargets": ["cloud"],
|
|
49
|
+
"reversibility": "reversible",
|
|
50
|
+
"risk": { "security": "low", "privacy": "low", "availability": "low" }
|
|
51
|
+
}
|
|
52
|
+
}
|
|
@@ -0,0 +1,150 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
const crypto = require('crypto');
|
|
4
|
+
|
|
5
|
+
const SCHEMA_VERSION = '1.0.0';
|
|
6
|
+
const ENUMS = Object.freeze({
|
|
7
|
+
projectType: ['brownfield', 'greenfield'],
|
|
8
|
+
surfaces: ['api', 'database', 'frontend'],
|
|
9
|
+
changeKind: ['feature', 'fix', 'infrastructure', 'migration', 'release'],
|
|
10
|
+
dataClasses: ['confidential', 'personal', 'public', 'restricted'],
|
|
11
|
+
deploymentTargets: ['cloud', 'edge', 'mobile', 'on-premise', 'web'],
|
|
12
|
+
reversibility: ['conditional', 'irreversible', 'reversible'],
|
|
13
|
+
risk: ['critical', 'high', 'low', 'medium'],
|
|
14
|
+
});
|
|
15
|
+
|
|
16
|
+
const SOURCES = Object.freeze({
|
|
17
|
+
lifecycle: ['constitution:III', 'engineering-audit:project-workflows'],
|
|
18
|
+
appsec: ['domain:29', 'constitution:X'],
|
|
19
|
+
design: ['domain:43', 'engineering-audit:greenfield-ui'],
|
|
20
|
+
legacy: ['domain:08', 'engineering-audit:brownfield'],
|
|
21
|
+
privacy: ['domain:36', 'constitution:X'],
|
|
22
|
+
availability: ['domain:10', 'constitution:V'],
|
|
23
|
+
});
|
|
24
|
+
|
|
25
|
+
function stable(value) {
|
|
26
|
+
if (Array.isArray(value)) return value.map(stable);
|
|
27
|
+
if (!value || typeof value !== 'object') return value;
|
|
28
|
+
return Object.fromEntries(Object.keys(value).sort().map((key) => [key, stable(value[key])]));
|
|
29
|
+
}
|
|
30
|
+
|
|
31
|
+
function digest(value) {
|
|
32
|
+
return `sha256:${crypto.createHash('sha256').update(JSON.stringify(stable(value))).digest('hex')}`;
|
|
33
|
+
}
|
|
34
|
+
|
|
35
|
+
function uniqueSorted(values) {
|
|
36
|
+
return [...new Set(Array.isArray(values) ? values : [])].sort();
|
|
37
|
+
}
|
|
38
|
+
|
|
39
|
+
function normalizeInput(input = {}) {
|
|
40
|
+
const unknown = [];
|
|
41
|
+
const normalized = {
|
|
42
|
+
schemaVersion: input.schemaVersion,
|
|
43
|
+
projectType: input.projectType,
|
|
44
|
+
surfaces: uniqueSorted(input.surfaces),
|
|
45
|
+
changeKind: input.changeKind,
|
|
46
|
+
dataClasses: uniqueSorted(input.dataClasses),
|
|
47
|
+
deploymentTargets: uniqueSorted(input.deploymentTargets),
|
|
48
|
+
reversibility: input.reversibility,
|
|
49
|
+
risk: {
|
|
50
|
+
availability: input.risk?.availability,
|
|
51
|
+
privacy: input.risk?.privacy,
|
|
52
|
+
security: input.risk?.security,
|
|
53
|
+
},
|
|
54
|
+
};
|
|
55
|
+
|
|
56
|
+
if (normalized.schemaVersion !== SCHEMA_VERSION) unknown.push({ field: 'schemaVersion', value: normalized.schemaVersion, reasonCode: 'UNSUPPORTED_SCHEMA' });
|
|
57
|
+
for (const field of ['projectType', 'changeKind', 'reversibility']) {
|
|
58
|
+
if (!ENUMS[field].includes(normalized[field])) unknown.push({ field, value: normalized[field], reasonCode: 'UNKNOWN_SIGNAL' });
|
|
59
|
+
}
|
|
60
|
+
for (const field of ['surfaces', 'dataClasses', 'deploymentTargets']) {
|
|
61
|
+
for (const value of normalized[field]) {
|
|
62
|
+
if (!ENUMS[field].includes(value)) unknown.push({ field, value, reasonCode: 'UNKNOWN_SIGNAL' });
|
|
63
|
+
}
|
|
64
|
+
}
|
|
65
|
+
for (const field of ['availability', 'privacy', 'security']) {
|
|
66
|
+
if (!ENUMS.risk.includes(normalized.risk[field])) unknown.push({ field: `risk.${field}`, value: normalized.risk[field], reasonCode: 'UNKNOWN_SIGNAL' });
|
|
67
|
+
}
|
|
68
|
+
|
|
69
|
+
return { normalized: stable(normalized), unknown: unknown.sort((a, b) => `${a.field}:${a.value}`.localeCompare(`${b.field}:${b.value}`)) };
|
|
70
|
+
}
|
|
71
|
+
|
|
72
|
+
function obligation(id, reasonCode, sourceRefs, severity = 'advisory') {
|
|
73
|
+
return { id, reasonCodes: [reasonCode], severity, sourceRefs: [...sourceRefs].sort() };
|
|
74
|
+
}
|
|
75
|
+
|
|
76
|
+
function decideApplicability(input) {
|
|
77
|
+
const { normalized, unknown } = normalizeInput(input);
|
|
78
|
+
const inputDigest = digest(normalized);
|
|
79
|
+
if (unknown.length) {
|
|
80
|
+
const body = {
|
|
81
|
+
schemaVersion: SCHEMA_VERSION,
|
|
82
|
+
mode: 'advisory',
|
|
83
|
+
status: 'unknown-signal',
|
|
84
|
+
inputDigest,
|
|
85
|
+
normalized,
|
|
86
|
+
selected: [],
|
|
87
|
+
excluded: [],
|
|
88
|
+
unknown,
|
|
89
|
+
humanCheckpoints: [{ id: 'classify-unknown-signal', reasonCodes: [...new Set(unknown.map((item) => item.reasonCode))].sort() }],
|
|
90
|
+
};
|
|
91
|
+
const decisionDigest = digest(body);
|
|
92
|
+
return { ...body, decisionId: `ap_${decisionDigest.slice(7, 23)}`, decisionDigest };
|
|
93
|
+
}
|
|
94
|
+
|
|
95
|
+
const selected = [
|
|
96
|
+
obligation('story-spec-readiness', 'LIFECYCLE_REQUIRED', SOURCES.lifecycle),
|
|
97
|
+
obligation('quality-assurance', 'QUALITY_REQUIRED', SOURCES.lifecycle),
|
|
98
|
+
obligation('requirements-traceability', 'NO_INVENTION', SOURCES.lifecycle),
|
|
99
|
+
];
|
|
100
|
+
const excluded = [];
|
|
101
|
+
const surfaces = new Set(normalized.surfaces);
|
|
102
|
+
const riskRank = { low: 0, medium: 1, high: 2, critical: 3 };
|
|
103
|
+
|
|
104
|
+
if (surfaces.has('frontend')) selected.push(obligation('design-system-grounding', 'SURFACE_FRONTEND', SOURCES.design));
|
|
105
|
+
else excluded.push(obligation('design-system-grounding', 'SURFACE_ABSENT', SOURCES.design));
|
|
106
|
+
|
|
107
|
+
if (surfaces.has('frontend') || surfaces.has('api')) selected.push(obligation('application-security', 'EXPOSED_APPLICATION_SURFACE', SOURCES.appsec));
|
|
108
|
+
else excluded.push(obligation('application-security', 'SURFACE_ABSENT', SOURCES.appsec));
|
|
109
|
+
|
|
110
|
+
if (surfaces.has('database')) selected.push(obligation('database-safety', 'SURFACE_DATABASE', SOURCES.appsec));
|
|
111
|
+
else excluded.push(obligation('database-safety', 'SURFACE_ABSENT', SOURCES.appsec));
|
|
112
|
+
|
|
113
|
+
if (normalized.projectType === 'brownfield') {
|
|
114
|
+
selected.push(obligation('characterization-baseline', 'PROJECT_BROWNFIELD', SOURCES.legacy));
|
|
115
|
+
selected.push(obligation('incremental-change-strategy', 'PROJECT_BROWNFIELD', SOURCES.legacy));
|
|
116
|
+
} else {
|
|
117
|
+
excluded.push(obligation('characterization-baseline', 'PROJECT_GREENFIELD', SOURCES.legacy));
|
|
118
|
+
excluded.push(obligation('incremental-change-strategy', 'PROJECT_GREENFIELD', SOURCES.legacy));
|
|
119
|
+
}
|
|
120
|
+
|
|
121
|
+
if (riskRank[normalized.risk.security] >= 2) selected.push(obligation('threat-model', 'SECURITY_HIGH', SOURCES.appsec));
|
|
122
|
+
if (riskRank[normalized.risk.privacy] >= 2 || normalized.dataClasses.includes('personal')) selected.push(obligation('privacy-impact-assessment', 'PRIVACY_ELEVATED', SOURCES.privacy));
|
|
123
|
+
if (riskRank[normalized.risk.availability] >= 2) selected.push(obligation('availability-plan', 'AVAILABILITY_HIGH', SOURCES.availability));
|
|
124
|
+
|
|
125
|
+
const humanCheckpoints = [];
|
|
126
|
+
if (normalized.reversibility === 'irreversible') humanCheckpoints.push({ id: 'irreversible-action-approval', reasonCodes: ['IRREVERSIBLE_CHANGE'] });
|
|
127
|
+
|
|
128
|
+
selected.sort((a, b) => a.id.localeCompare(b.id));
|
|
129
|
+
excluded.sort((a, b) => a.id.localeCompare(b.id));
|
|
130
|
+
const body = {
|
|
131
|
+
schemaVersion: SCHEMA_VERSION,
|
|
132
|
+
mode: 'advisory',
|
|
133
|
+
status: humanCheckpoints.length ? 'human-checkpoint' : 'advisory',
|
|
134
|
+
inputDigest,
|
|
135
|
+
normalized,
|
|
136
|
+
selected,
|
|
137
|
+
excluded,
|
|
138
|
+
unknown: [],
|
|
139
|
+
humanCheckpoints,
|
|
140
|
+
};
|
|
141
|
+
const decisionDigest = digest(body);
|
|
142
|
+
return { ...body, decisionId: `ap_${decisionDigest.slice(7, 23)}`, decisionDigest };
|
|
143
|
+
}
|
|
144
|
+
|
|
145
|
+
function renderForProvider(provider, decision) {
|
|
146
|
+
if (!['claude-code', 'codex'].includes(provider)) throw new Error(`Unsupported provider: ${provider}`);
|
|
147
|
+
return { provider, mode: 'advisory', blocking: false, executedWorkflows: [], verifiedEvidence: [], decision };
|
|
148
|
+
}
|
|
149
|
+
|
|
150
|
+
module.exports = { SCHEMA_VERSION, ENUMS, normalizeInput, decideApplicability, renderForProvider, digest };
|