@planu/cli 0.96.5 → 0.97.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/dist/cli/commands/install.d.ts.map +1 -1
- package/dist/cli/commands/install.js +3 -1
- package/dist/cli/commands/install.js.map +1 -1
- package/dist/config/compliance-profiles.json +62 -0
- package/dist/config/license-plans.json +18 -2
- package/dist/config/spec-templates/crud-rest-api/spec.md +35 -0
- package/dist/config/spec-templates/crud-rest-api/template.json +10 -0
- package/dist/config/spec-templates/email-notifications/spec.md +31 -0
- package/dist/config/spec-templates/email-notifications/template.json +10 -0
- package/dist/config/spec-templates/file-upload-s3/spec.md +31 -0
- package/dist/config/spec-templates/file-upload-s3/template.json +11 -0
- package/dist/config/spec-templates/jwt-auth/spec.md +35 -0
- package/dist/config/spec-templates/jwt-auth/template.json +10 -0
- package/dist/config/spec-templates/oauth-social-login/spec.md +31 -0
- package/dist/config/spec-templates/oauth-social-login/template.json +10 -0
- package/dist/config/spec-templates/rate-limiting/spec.md +31 -0
- package/dist/config/spec-templates/rate-limiting/template.json +10 -0
- package/dist/config/spec-templates/stripe-payments/spec.md +32 -0
- package/dist/config/spec-templates/stripe-payments/template.json +10 -0
- package/dist/config/spec-templates/webhook-system/spec.md +36 -0
- package/dist/config/spec-templates/webhook-system/template.json +10 -0
- package/dist/engine/agent-ready-exporter/formatters/devin.d.ts +7 -0
- package/dist/engine/agent-ready-exporter/formatters/devin.d.ts.map +1 -0
- package/dist/engine/agent-ready-exporter/formatters/devin.js +23 -0
- package/dist/engine/agent-ready-exporter/formatters/devin.js.map +1 -0
- package/dist/engine/agent-ready-exporter/formatters/generic.d.ts +7 -0
- package/dist/engine/agent-ready-exporter/formatters/generic.d.ts.map +1 -0
- package/dist/engine/agent-ready-exporter/formatters/generic.js +9 -0
- package/dist/engine/agent-ready-exporter/formatters/generic.js.map +1 -0
- package/dist/engine/agent-ready-exporter/formatters/kiro.d.ts +6 -0
- package/dist/engine/agent-ready-exporter/formatters/kiro.d.ts.map +1 -0
- package/dist/engine/agent-ready-exporter/formatters/kiro.js +34 -0
- package/dist/engine/agent-ready-exporter/formatters/kiro.js.map +1 -0
- package/dist/engine/agent-ready-exporter/formatters/swe-agent.d.ts +6 -0
- package/dist/engine/agent-ready-exporter/formatters/swe-agent.d.ts.map +1 -0
- package/dist/engine/agent-ready-exporter/formatters/swe-agent.js +40 -0
- package/dist/engine/agent-ready-exporter/formatters/swe-agent.js.map +1 -0
- package/dist/engine/agent-ready-exporter.d.ts +11 -0
- package/dist/engine/agent-ready-exporter.d.ts.map +1 -0
- package/dist/engine/agent-ready-exporter.js +86 -0
- package/dist/engine/agent-ready-exporter.js.map +1 -0
- package/dist/engine/compliance-checker.d.ts +19 -0
- package/dist/engine/compliance-checker.d.ts.map +1 -0
- package/dist/engine/compliance-checker.js +145 -0
- package/dist/engine/compliance-checker.js.map +1 -0
- package/dist/engine/generate-tests/generators/property-based-generator.d.ts +12 -0
- package/dist/engine/generate-tests/generators/property-based-generator.d.ts.map +1 -0
- package/dist/engine/generate-tests/generators/property-based-generator.js +159 -0
- package/dist/engine/generate-tests/generators/property-based-generator.js.map +1 -0
- package/dist/engine/jira-exporter.d.ts +39 -0
- package/dist/engine/jira-exporter.d.ts.map +1 -0
- package/dist/engine/jira-exporter.js +190 -0
- package/dist/engine/jira-exporter.js.map +1 -0
- package/dist/engine/linear-exporter.d.ts +32 -0
- package/dist/engine/linear-exporter.d.ts.map +1 -0
- package/dist/engine/linear-exporter.js +184 -0
- package/dist/engine/linear-exporter.js.map +1 -0
- package/dist/engine/property-test-generator.d.ts +14 -0
- package/dist/engine/property-test-generator.d.ts.map +1 -0
- package/dist/engine/property-test-generator.js +223 -0
- package/dist/engine/property-test-generator.js.map +1 -0
- package/dist/engine/skill-evaluator.d.ts +21 -0
- package/dist/engine/skill-evaluator.d.ts.map +1 -0
- package/dist/engine/skill-evaluator.js +126 -0
- package/dist/engine/skill-evaluator.js.map +1 -0
- package/dist/engine/spec-quality-scorer.d.ts +4 -0
- package/dist/engine/spec-quality-scorer.d.ts.map +1 -0
- package/dist/engine/spec-quality-scorer.js +334 -0
- package/dist/engine/spec-quality-scorer.js.map +1 -0
- package/dist/engine/spec-template-engine.d.ts +26 -0
- package/dist/engine/spec-template-engine.d.ts.map +1 -0
- package/dist/engine/spec-template-engine.js +127 -0
- package/dist/engine/spec-template-engine.js.map +1 -0
- package/dist/index.js +10 -0
- package/dist/index.js.map +1 -1
- package/dist/storage/compliance-store.d.ts +11 -0
- package/dist/storage/compliance-store.d.ts.map +1 -0
- package/dist/storage/compliance-store.js +30 -0
- package/dist/storage/compliance-store.js.map +1 -0
- package/dist/storage/jira-store.d.ts +30 -0
- package/dist/storage/jira-store.d.ts.map +1 -0
- package/dist/storage/jira-store.js +84 -0
- package/dist/storage/jira-store.js.map +1 -0
- package/dist/storage/linear-store.d.ts +30 -0
- package/dist/storage/linear-store.d.ts.map +1 -0
- package/dist/storage/linear-store.js +84 -0
- package/dist/storage/linear-store.js.map +1 -0
- package/dist/tools/check-readiness.d.ts.map +1 -1
- package/dist/tools/check-readiness.js +8 -2
- package/dist/tools/check-readiness.js.map +1 -1
- package/dist/tools/compliance-handler.d.ts +6 -0
- package/dist/tools/compliance-handler.d.ts.map +1 -0
- package/dist/tools/compliance-handler.js +99 -0
- package/dist/tools/compliance-handler.js.map +1 -0
- package/dist/tools/eval-skill-handler.d.ts +4 -0
- package/dist/tools/eval-skill-handler.d.ts.map +1 -0
- package/dist/tools/eval-skill-handler.js +26 -0
- package/dist/tools/eval-skill-handler.js.map +1 -0
- package/dist/tools/export-spec.d.ts.map +1 -1
- package/dist/tools/export-spec.js +42 -1
- package/dist/tools/export-spec.js.map +1 -1
- package/dist/tools/generate-tests/generators/property-based-generator.d.ts +11 -0
- package/dist/tools/generate-tests/generators/property-based-generator.d.ts.map +1 -0
- package/dist/tools/generate-tests/generators/property-based-generator.js +27 -0
- package/dist/tools/generate-tests/generators/property-based-generator.js.map +1 -0
- package/dist/tools/generate-tests/spec-dispatcher.d.ts +5 -0
- package/dist/tools/generate-tests/spec-dispatcher.d.ts.map +1 -1
- package/dist/tools/generate-tests/spec-dispatcher.js +18 -1
- package/dist/tools/generate-tests/spec-dispatcher.js.map +1 -1
- package/dist/tools/jira-sync-handler.d.ts +6 -0
- package/dist/tools/jira-sync-handler.d.ts.map +1 -0
- package/dist/tools/jira-sync-handler.js +220 -0
- package/dist/tools/jira-sync-handler.js.map +1 -0
- package/dist/tools/linear-sync-handler.d.ts +6 -0
- package/dist/tools/linear-sync-handler.d.ts.map +1 -0
- package/dist/tools/linear-sync-handler.js +212 -0
- package/dist/tools/linear-sync-handler.js.map +1 -0
- package/dist/tools/register-export-tools.d.ts.map +1 -1
- package/dist/tools/register-export-tools.js +10 -3
- package/dist/tools/register-export-tools.js.map +1 -1
- package/dist/tools/register-spec-314.d.ts +3 -0
- package/dist/tools/register-spec-314.d.ts.map +1 -0
- package/dist/tools/register-spec-314.js +38 -0
- package/dist/tools/register-spec-314.js.map +1 -0
- package/dist/tools/register-spec-316.d.ts +3 -0
- package/dist/tools/register-spec-316.d.ts.map +1 -0
- package/dist/tools/register-spec-316.js +71 -0
- package/dist/tools/register-spec-316.js.map +1 -0
- package/dist/tools/register-spec-317.d.ts +3 -0
- package/dist/tools/register-spec-317.d.ts.map +1 -0
- package/dist/tools/register-spec-317.js +158 -0
- package/dist/tools/register-spec-317.js.map +1 -0
- package/dist/tools/register-spec-319.d.ts +3 -0
- package/dist/tools/register-spec-319.d.ts.map +1 -0
- package/dist/tools/register-spec-319.js +59 -0
- package/dist/tools/register-spec-319.js.map +1 -0
- package/dist/tools/register-spec-320.d.ts +3 -0
- package/dist/tools/register-spec-320.d.ts.map +1 -0
- package/dist/tools/register-spec-320.js +60 -0
- package/dist/tools/register-spec-320.js.map +1 -0
- package/dist/tools/spec-marketplace-handler.d.ts +6 -0
- package/dist/tools/spec-marketplace-handler.d.ts.map +1 -0
- package/dist/tools/spec-marketplace-handler.js +113 -0
- package/dist/tools/spec-marketplace-handler.js.map +1 -0
- package/dist/tools/spec-quality-score-handler.d.ts +7 -0
- package/dist/tools/spec-quality-score-handler.d.ts.map +1 -0
- package/dist/tools/spec-quality-score-handler.js +106 -0
- package/dist/tools/spec-quality-score-handler.js.map +1 -0
- package/dist/tools/start-hooks/configure.d.ts +4 -0
- package/dist/tools/start-hooks/configure.d.ts.map +1 -0
- package/dist/tools/start-hooks/configure.js +122 -0
- package/dist/tools/start-hooks/configure.js.map +1 -0
- package/dist/tools/start-hooks/engine.d.ts +13 -0
- package/dist/tools/start-hooks/engine.d.ts.map +1 -0
- package/dist/tools/start-hooks/engine.js +314 -0
- package/dist/tools/start-hooks/engine.js.map +1 -0
- package/dist/tools/start-hooks.d.ts +2 -23
- package/dist/tools/start-hooks.d.ts.map +1 -1
- package/dist/tools/start-hooks.js +4 -516
- package/dist/tools/start-hooks.js.map +1 -1
- package/dist/types/agent-ready.d.ts +58 -0
- package/dist/types/agent-ready.d.ts.map +1 -0
- package/dist/types/agent-ready.js +3 -0
- package/dist/types/agent-ready.js.map +1 -0
- package/dist/types/compliance.d.ts +44 -0
- package/dist/types/compliance.d.ts.map +1 -0
- package/dist/types/compliance.js +3 -0
- package/dist/types/compliance.js.map +1 -0
- package/dist/types/export.d.ts +5 -1
- package/dist/types/export.d.ts.map +1 -1
- package/dist/types/export.js +1 -1
- package/dist/types/export.js.map +1 -1
- package/dist/types/index.d.ts +7 -0
- package/dist/types/index.d.ts.map +1 -1
- package/dist/types/index.js +7 -0
- package/dist/types/index.js.map +1 -1
- package/dist/types/jira-linear.d.ts +216 -0
- package/dist/types/jira-linear.d.ts.map +1 -0
- package/dist/types/jira-linear.js +3 -0
- package/dist/types/jira-linear.js.map +1 -0
- package/dist/types/property-testing.d.ts +50 -0
- package/dist/types/property-testing.d.ts.map +1 -0
- package/dist/types/property-testing.js +3 -0
- package/dist/types/property-testing.js.map +1 -0
- package/dist/types/skill-eval.d.ts +41 -0
- package/dist/types/skill-eval.d.ts.map +1 -0
- package/dist/types/skill-eval.js +3 -0
- package/dist/types/skill-eval.js.map +1 -0
- package/dist/types/spec-marketplace.d.ts +31 -0
- package/dist/types/spec-marketplace.d.ts.map +1 -0
- package/dist/types/spec-marketplace.js +3 -0
- package/dist/types/spec-marketplace.js.map +1 -0
- package/dist/types/spec-quality.d.ts +36 -0
- package/dist/types/spec-quality.d.ts.map +1 -0
- package/dist/types/spec-quality.js +3 -0
- package/dist/types/spec-quality.js.map +1 -0
- package/package.json +7 -2
- package/src/config/compliance-profiles.json +62 -0
- package/src/config/license-plans.json +18 -2
- package/src/config/spec-templates/crud-rest-api/spec.md +35 -0
- package/src/config/spec-templates/crud-rest-api/template.json +10 -0
- package/src/config/spec-templates/email-notifications/spec.md +31 -0
- package/src/config/spec-templates/email-notifications/template.json +10 -0
- package/src/config/spec-templates/file-upload-s3/spec.md +31 -0
- package/src/config/spec-templates/file-upload-s3/template.json +11 -0
- package/src/config/spec-templates/jwt-auth/spec.md +35 -0
- package/src/config/spec-templates/jwt-auth/template.json +10 -0
- package/src/config/spec-templates/oauth-social-login/spec.md +31 -0
- package/src/config/spec-templates/oauth-social-login/template.json +10 -0
- package/src/config/spec-templates/rate-limiting/spec.md +31 -0
- package/src/config/spec-templates/rate-limiting/template.json +10 -0
- package/src/config/spec-templates/stripe-payments/spec.md +32 -0
- package/src/config/spec-templates/stripe-payments/template.json +10 -0
- package/src/config/spec-templates/webhook-system/spec.md +36 -0
- package/src/config/spec-templates/webhook-system/template.json +10 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"install.d.ts","sourceRoot":"","sources":["../../../src/cli/commands/install.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,UAAU,EAAe,MAAM,oBAAoB,CAAC;AAUlE,MAAM,WAAW,uBAAuB;IACtC,GAAG,EAAE,MAAM,CAAC;IACZ,aAAa,EAAE,MAAM,CAAC;IACtB,WAAW,EAAE,MAAM,CAAC;CACrB;AAMD,UAAU,QAAQ;IAChB,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,EAAE,MAAM,EAAE,CAAC;IACf,GAAG,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CAC9B;AAED,UAAU,iBAAiB;IACzB,UAAU,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;CACvC;AAED,UAAU,gBAAgB;IACxB,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,EAAE,CAAC;IACf,GAAG,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CAC9B;AAED,UAAU,gBAAgB;IACxB,OAAO,CAAC,EAAE,gBAAgB,CAAC;IAC3B,GAAG,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CAC9B;AAED,UAAU,SAAS;IACjB,eAAe,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,gBAAgB,CAAC,CAAC;CACpD;AAED,KAAK,UAAU,GAAG,iBAAiB,GAAG,SAAS,CAAC;AAEhD,UAAU,cAAc;IACtB,IAAI,EAAE,MAAM,CAAC;IACb,aAAa,EAAE,MAAM,CAAC;IACtB,gBAAgB,EAAE,MAAM,GAAG,IAAI,CAAC;IAChC,MAAM,EAAE,UAAU,GAAG,KAAK,CAAC;CAC5B;AA0ED,iBAAS,aAAa,CAAC,UAAU,CAAC,EAAE,MAAM,GAAG,QAAQ,CAYpD;AAED,iBAAS,YAAY,CAAC,QAAQ,EAAE,MAAM,GAAG,UAAU,CASlD;AAED,iBAAS,aAAa,CAAC,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,cAAc,CAAC,QAAQ,CAAC,GAAG,OAAO,CAOpF;AASD,iBAAS,kBAAkB,CAAC,QAAQ,EAAE,MAAM,EAAE,KAAK,EAAE,QAAQ,GAAG,IAAI,CAWnE;AAED,iBAAS,aAAa,CAAC,QAAQ,EAAE,MAAM,EAAE,KAAK,EAAE,QAAQ,GAAG,IAAI,CAiB9D;AA4BD,iBAAS,WAAW,CAAC,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,cAAc,CAAC,QAAQ,CAAC,GAAG,IAAI,CAc7E;AAMD;;;;GAIG;AACH,wBAAsB,aAAa,IAAI,OAAO,CAAC,uBAAuB,GAAG,IAAI,CAAC,CAgD7E;AAGD,OAAO,EACL,aAAa,EACb,YAAY,EACZ,aAAa,EACb,kBAAkB,EAClB,aAAa,EACb,WAAW,GACZ,CAAC;
|
|
1
|
+
{"version":3,"file":"install.d.ts","sourceRoot":"","sources":["../../../src/cli/commands/install.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,UAAU,EAAe,MAAM,oBAAoB,CAAC;AAUlE,MAAM,WAAW,uBAAuB;IACtC,GAAG,EAAE,MAAM,CAAC;IACZ,aAAa,EAAE,MAAM,CAAC;IACtB,WAAW,EAAE,MAAM,CAAC;CACrB;AAMD,UAAU,QAAQ;IAChB,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,EAAE,MAAM,EAAE,CAAC;IACf,GAAG,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CAC9B;AAED,UAAU,iBAAiB;IACzB,UAAU,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;CACvC;AAED,UAAU,gBAAgB;IACxB,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,EAAE,CAAC;IACf,GAAG,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CAC9B;AAED,UAAU,gBAAgB;IACxB,OAAO,CAAC,EAAE,gBAAgB,CAAC;IAC3B,GAAG,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CAC9B;AAED,UAAU,SAAS;IACjB,eAAe,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,gBAAgB,CAAC,CAAC;CACpD;AAED,KAAK,UAAU,GAAG,iBAAiB,GAAG,SAAS,CAAC;AAEhD,UAAU,cAAc;IACtB,IAAI,EAAE,MAAM,CAAC;IACb,aAAa,EAAE,MAAM,CAAC;IACtB,gBAAgB,EAAE,MAAM,GAAG,IAAI,CAAC;IAChC,MAAM,EAAE,UAAU,GAAG,KAAK,CAAC;CAC5B;AA0ED,iBAAS,aAAa,CAAC,UAAU,CAAC,EAAE,MAAM,GAAG,QAAQ,CAYpD;AAED,iBAAS,YAAY,CAAC,QAAQ,EAAE,MAAM,GAAG,UAAU,CASlD;AAED,iBAAS,aAAa,CAAC,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,cAAc,CAAC,QAAQ,CAAC,GAAG,OAAO,CAOpF;AASD,iBAAS,kBAAkB,CAAC,QAAQ,EAAE,MAAM,EAAE,KAAK,EAAE,QAAQ,GAAG,IAAI,CAWnE;AAED,iBAAS,aAAa,CAAC,QAAQ,EAAE,MAAM,EAAE,KAAK,EAAE,QAAQ,GAAG,IAAI,CAiB9D;AA4BD,iBAAS,WAAW,CAAC,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,cAAc,CAAC,QAAQ,CAAC,GAAG,IAAI,CAc7E;AAMD;;;;GAIG;AACH,wBAAsB,aAAa,IAAI,OAAO,CAAC,uBAAuB,GAAG,IAAI,CAAC,CAgD7E;AAGD,OAAO,EACL,aAAa,EACb,YAAY,EACZ,aAAa,EACb,kBAAkB,EAClB,aAAa,EACb,WAAW,GACZ,CAAC;AAoJF,eAAO,MAAM,cAAc,EAAE,UA2F5B,CAAC"}
|
|
@@ -250,7 +250,7 @@ function printBanner() {
|
|
|
250
250
|
// ---------------------------------------------------------------------------
|
|
251
251
|
function printWelcome() {
|
|
252
252
|
const docsUrl = claudeCodeDocsUrl();
|
|
253
|
-
process.stdout.write(`${bold(
|
|
253
|
+
process.stdout.write(`${bold("🚀 You're all set — welcome to Planu!")}\n\n`);
|
|
254
254
|
process.stdout.write(` ${dim('How to get started:')}\n\n`);
|
|
255
255
|
process.stdout.write(` ${bold('1.')} Open your AI tool and describe what you want to build\n` +
|
|
256
256
|
` ${dim('→')} Planu will create a spec automatically\n\n` +
|
|
@@ -260,6 +260,8 @@ function printWelcome() {
|
|
|
260
260
|
` ${dim('→')} Full audit trail, no hallucinated features, zero tech debt\n\n`);
|
|
261
261
|
process.stdout.write(` ${dim('Docs:')} ${cyan(docsUrl)}\n`);
|
|
262
262
|
process.stdout.write(` ${dim('Website:')} ${cyan('https://planu.dev')}\n\n`);
|
|
263
|
+
process.stdout.write(` ${dim('🔒')} ${dim('Your code never leaves your machine.')} ` +
|
|
264
|
+
`${dim('Planu runs 100% locally — no cloud, no telemetry.')}\n\n`);
|
|
263
265
|
process.stdout.write(` ${dim('Happy building! ✨')}\n\n`);
|
|
264
266
|
}
|
|
265
267
|
// ---------------------------------------------------------------------------
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"install.js","sourceRoot":"","sources":["../../../src/cli/commands/install.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"install.js","sourceRoot":"","sources":["../../../src/cli/commands/install.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,62 @@
|
|
|
1
|
+
{
|
|
2
|
+
"gdpr": {
|
|
3
|
+
"keywords": ["user", "personal", "data", "store", "email", "profile", "privacy", "consent", "gdpr"],
|
|
4
|
+
"criteria": [
|
|
5
|
+
"Users can request deletion of their personal data (right to erasure)",
|
|
6
|
+
"Data collection requires explicit user consent with opt-in mechanism",
|
|
7
|
+
"Personal data is encrypted at rest and in transit",
|
|
8
|
+
"Data retention policy is defined and enforced (max retention period)",
|
|
9
|
+
"Audit log records all access to personal data",
|
|
10
|
+
"Users can export their personal data in a portable format (right to data portability)",
|
|
11
|
+
"Privacy policy is clearly communicated to users before data collection"
|
|
12
|
+
]
|
|
13
|
+
},
|
|
14
|
+
"hipaa": {
|
|
15
|
+
"keywords": ["health", "medical", "patient", "phi", "ehr", "clinical", "diagnosis", "treatment", "hipaa", "healthcare"],
|
|
16
|
+
"criteria": [
|
|
17
|
+
"Protected Health Information (PHI) is encrypted at rest using AES-256 or equivalent",
|
|
18
|
+
"PHI transmission is secured with TLS 1.2+ encryption",
|
|
19
|
+
"Access to PHI is role-based and requires authentication",
|
|
20
|
+
"All PHI access events are logged in a tamper-evident audit trail",
|
|
21
|
+
"Business Associate Agreements (BAA) are in place for all third-party PHI processors",
|
|
22
|
+
"PHI breach notification procedure is defined and documented",
|
|
23
|
+
"Minimum necessary access principle is enforced for PHI queries"
|
|
24
|
+
]
|
|
25
|
+
},
|
|
26
|
+
"pci-dss": {
|
|
27
|
+
"keywords": ["payment", "card", "credit", "debit", "checkout", "billing", "stripe", "transaction", "pci", "cvv", "pan"],
|
|
28
|
+
"criteria": [
|
|
29
|
+
"Cardholder data (PAN, CVV) is never stored in plaintext",
|
|
30
|
+
"Payment card data is masked in logs and UI displays",
|
|
31
|
+
"Network segmentation isolates cardholder data environment",
|
|
32
|
+
"All cardholder data access is logged with user identity and timestamp",
|
|
33
|
+
"Strong cryptography (TLS 1.2+) protects cardholder data in transit",
|
|
34
|
+
"Anti-malware and intrusion detection are deployed in the cardholder data environment",
|
|
35
|
+
"Default vendor passwords and security parameters are changed before deployment"
|
|
36
|
+
]
|
|
37
|
+
},
|
|
38
|
+
"soc2": {
|
|
39
|
+
"keywords": ["security", "availability", "confidentiality", "integrity", "audit", "compliance", "soc2", "soc 2", "trust"],
|
|
40
|
+
"criteria": [
|
|
41
|
+
"Access control policy is documented and enforced with least-privilege principle",
|
|
42
|
+
"System availability is monitored with defined SLA targets and incident response",
|
|
43
|
+
"Data confidentiality classification is defined (public, internal, confidential, restricted)",
|
|
44
|
+
"Change management process ensures all changes are reviewed and tested before deployment",
|
|
45
|
+
"Incident response plan is documented, tested, and updated annually",
|
|
46
|
+
"Penetration testing is performed at least annually by a qualified third party",
|
|
47
|
+
"Security awareness training is provided to all personnel with system access"
|
|
48
|
+
]
|
|
49
|
+
},
|
|
50
|
+
"ccpa": {
|
|
51
|
+
"keywords": ["california", "consumer", "ccpa", "opt-out", "sale", "personal information", "resident"],
|
|
52
|
+
"criteria": [
|
|
53
|
+
"Consumers can opt-out of the sale of their personal information",
|
|
54
|
+
"Privacy notice discloses categories of personal information collected and purposes",
|
|
55
|
+
"Consumers can request access to their personal information collected in the last 12 months",
|
|
56
|
+
"Consumers can request deletion of their personal information",
|
|
57
|
+
"Non-discrimination policy ensures consumers are not penalized for exercising CCPA rights",
|
|
58
|
+
"Requests from consumers are fulfilled within 45 days",
|
|
59
|
+
"Authorized agent mechanism allows consumers to submit requests on behalf of others"
|
|
60
|
+
]
|
|
61
|
+
}
|
|
62
|
+
}
|
|
@@ -257,7 +257,23 @@
|
|
|
257
257
|
"search_all_projects",
|
|
258
258
|
"validate_browser",
|
|
259
259
|
"sync_google_workspace",
|
|
260
|
-
"generate_diagram"
|
|
260
|
+
"generate_diagram",
|
|
261
|
+
"spec_quality_score",
|
|
262
|
+
"eval_skill",
|
|
263
|
+
"eval_rule",
|
|
264
|
+
"configure_jira",
|
|
265
|
+
"sync_to_jira",
|
|
266
|
+
"jira_status",
|
|
267
|
+
"remove_jira",
|
|
268
|
+
"configure_linear",
|
|
269
|
+
"sync_to_linear",
|
|
270
|
+
"linear_status",
|
|
271
|
+
"remove_linear",
|
|
272
|
+
"check_compliance",
|
|
273
|
+
"configure_compliance",
|
|
274
|
+
"apply_spec_template",
|
|
275
|
+
"publish_spec_template",
|
|
276
|
+
"search_spec_templates"
|
|
261
277
|
],
|
|
262
278
|
"alwaysAllowed": [
|
|
263
279
|
"activate_license",
|
|
@@ -276,4 +292,4 @@
|
|
|
276
292
|
"Planu Team": "team"
|
|
277
293
|
},
|
|
278
294
|
"upgradeUrl": "https://planu.dev/pricing"
|
|
279
|
-
}
|
|
295
|
+
}
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
# CRUD REST API — {{entity}}
|
|
2
|
+
|
|
3
|
+
## Overview
|
|
4
|
+
Full CRUD REST API for the {{entity}} resource at {{base_path}}, with {{id_type}} identifiers, input validation, pagination, and consistent error responses.
|
|
5
|
+
|
|
6
|
+
## Acceptance Criteria
|
|
7
|
+
|
|
8
|
+
### AC-1: Create
|
|
9
|
+
- `POST {{base_path}}` accepts a JSON body and creates a new {{entity}}
|
|
10
|
+
- Validates all required fields and returns 422 with field-level errors on failure
|
|
11
|
+
- Returns 201 with the created resource including its generated {{id_type}} ID
|
|
12
|
+
|
|
13
|
+
### AC-2: Read
|
|
14
|
+
- `GET {{base_path}}/:id` returns a single {{entity}} by {{id_type}} ID
|
|
15
|
+
- `GET {{base_path}}` returns a paginated list with `page`, `limit`, and `total` fields
|
|
16
|
+
- Returns 404 when the resource does not exist
|
|
17
|
+
|
|
18
|
+
### AC-3: Update
|
|
19
|
+
- `PUT {{base_path}}/:id` fully replaces the {{entity}} resource
|
|
20
|
+
- `PATCH {{base_path}}/:id` partially updates only provided fields
|
|
21
|
+
- Returns 200 with the updated resource
|
|
22
|
+
|
|
23
|
+
### AC-4: Delete
|
|
24
|
+
- `DELETE {{base_path}}/:id` soft-deletes the {{entity}} (sets `deletedAt` timestamp)
|
|
25
|
+
- Returns 204 on success, 404 if not found
|
|
26
|
+
|
|
27
|
+
### AC-5: Filtering and Sorting
|
|
28
|
+
- Support query parameters `filter[field]=value` for equality filters
|
|
29
|
+
- Support `sort=field` and `order=asc|desc` query parameters
|
|
30
|
+
- Ignore unknown filter parameters without error
|
|
31
|
+
|
|
32
|
+
## Technical Notes
|
|
33
|
+
- All timestamps in ISO 8601 format
|
|
34
|
+
- IDs are {{id_type}} type — validate format before database lookup
|
|
35
|
+
- Paginate using cursor-based pagination for large datasets
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "crud-rest-api",
|
|
3
|
+
"description": "Full CRUD REST API for a domain entity with validation, pagination, and error handling",
|
|
4
|
+
"variables": [
|
|
5
|
+
{ "name": "entity", "description": "Name of the domain entity (e.g. Product, User, Order)", "default": "Entity" },
|
|
6
|
+
{ "name": "base_path", "description": "Base URL path for the resource (e.g. /api/products)", "default": "/api/entities" },
|
|
7
|
+
{ "name": "id_type", "description": "Type of the entity ID field (uuid, number)", "default": "uuid" }
|
|
8
|
+
],
|
|
9
|
+
"tags": ["crud", "rest-api", "backend", "database"]
|
|
10
|
+
}
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
# Email Notifications — {{provider}}
|
|
2
|
+
|
|
3
|
+
## Overview
|
|
4
|
+
Transactional email system using {{provider}} sent from `{{from_address}}`, with template rendering, {{queue_enabled}} async queuing, and delivery tracking.
|
|
5
|
+
|
|
6
|
+
## Acceptance Criteria
|
|
7
|
+
|
|
8
|
+
### AC-1: Template Rendering
|
|
9
|
+
- Define email templates with subject and HTML/text body variants
|
|
10
|
+
- Interpolate dynamic variables (e.g. `{{user_name}}`, `{{action_url}}`) at send time
|
|
11
|
+
- Validate all required variables are provided before queuing
|
|
12
|
+
|
|
13
|
+
### AC-2: Sending via {{provider}}
|
|
14
|
+
- Send emails via {{provider}} API using environment-configured credentials
|
|
15
|
+
- Set `From: {{from_address}}` on all outgoing emails
|
|
16
|
+
- Handle API errors with retry logic (3 attempts, exponential backoff)
|
|
17
|
+
|
|
18
|
+
### AC-3: Async Queue
|
|
19
|
+
- When `queue_enabled` is {{queue_enabled}}, enqueue emails instead of sending synchronously
|
|
20
|
+
- Worker processes the queue and marks emails as `sent` or `failed`
|
|
21
|
+
- Retry failed sends up to 3 times before marking as permanently failed
|
|
22
|
+
|
|
23
|
+
### AC-4: Delivery Tracking
|
|
24
|
+
- Store delivery records: recipient, template, status, sentAt, provider message ID
|
|
25
|
+
- Expose delivery status via an internal admin API
|
|
26
|
+
- Alert when failure rate exceeds 5% in a 1-hour window
|
|
27
|
+
|
|
28
|
+
## Technical Notes
|
|
29
|
+
- Never log email body content — only metadata (recipient, template name, status)
|
|
30
|
+
- Implement unsubscribe links and honor opt-out preferences
|
|
31
|
+
- Test with {{provider}} sandbox/test mode before production deployment
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "email-notifications",
|
|
3
|
+
"description": "Transactional email system with templates, queuing, and delivery tracking",
|
|
4
|
+
"variables": [
|
|
5
|
+
{ "name": "provider", "description": "Email provider (sendgrid, mailgun, ses, resend)", "default": "sendgrid" },
|
|
6
|
+
{ "name": "from_address", "description": "Default sender email address", "default": "noreply@example.com" },
|
|
7
|
+
{ "name": "queue_enabled", "description": "Whether to queue emails asynchronously (true/false)", "default": "true" }
|
|
8
|
+
],
|
|
9
|
+
"tags": ["email", "notifications", "backend", "queuing"]
|
|
10
|
+
}
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
# File Upload — {{provider}}
|
|
2
|
+
|
|
3
|
+
## Overview
|
|
4
|
+
Secure file upload system using {{provider}} bucket `{{bucket_name}}` with presigned URLs, a maximum file size of {{max_size_mb}} MB, and allowed types: {{allowed_types}}.
|
|
5
|
+
|
|
6
|
+
## Acceptance Criteria
|
|
7
|
+
|
|
8
|
+
### AC-1: Presigned URL Generation
|
|
9
|
+
- Generate a presigned upload URL valid for 15 minutes
|
|
10
|
+
- URL is scoped to the authenticated user's namespace
|
|
11
|
+
- Enforce `Content-Type` matching one of: {{allowed_types}}
|
|
12
|
+
|
|
13
|
+
### AC-2: File Validation
|
|
14
|
+
- Reject uploads exceeding {{max_size_mb}} MB with a clear error
|
|
15
|
+
- Validate MIME type against the Content-Type header
|
|
16
|
+
- Scan file content for malicious patterns before confirming upload
|
|
17
|
+
|
|
18
|
+
### AC-3: Upload Confirmation
|
|
19
|
+
- Client calls confirm endpoint after direct upload to {{provider}}
|
|
20
|
+
- Server verifies the object exists in `{{bucket_name}}` before saving metadata
|
|
21
|
+
- Store file metadata (name, size, type, owner, uploadedAt) in the database
|
|
22
|
+
|
|
23
|
+
### AC-4: Download and Deletion
|
|
24
|
+
- Generate presigned download URLs valid for 1 hour
|
|
25
|
+
- Delete the object from `{{bucket_name}}` and metadata on user request
|
|
26
|
+
- Restrict access so users can only download/delete their own files
|
|
27
|
+
|
|
28
|
+
## Technical Notes
|
|
29
|
+
- Never expose {{provider}} credentials to the client
|
|
30
|
+
- Use server-side encryption at rest in `{{bucket_name}}`
|
|
31
|
+
- Log all upload attempts (success and failure) with user ID and file metadata
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "file-upload-s3",
|
|
3
|
+
"description": "File upload system with cloud storage, presigned URLs, and file validation",
|
|
4
|
+
"variables": [
|
|
5
|
+
{ "name": "provider", "description": "Cloud storage provider (s3, gcs, r2)", "default": "s3" },
|
|
6
|
+
{ "name": "bucket_name", "description": "Name of the storage bucket", "default": "uploads" },
|
|
7
|
+
{ "name": "max_size_mb", "description": "Maximum allowed file size in megabytes", "default": "10" },
|
|
8
|
+
{ "name": "allowed_types", "description": "Comma-separated list of allowed MIME types", "default": "image/jpeg,image/png,application/pdf" }
|
|
9
|
+
],
|
|
10
|
+
"tags": ["file-upload", "s3", "storage", "backend"]
|
|
11
|
+
}
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
# JWT Authentication
|
|
2
|
+
|
|
3
|
+
## Overview
|
|
4
|
+
JWT-based authentication with {{algorithm}} signing, access tokens valid for {{access_token_ttl}}, refresh tokens valid for {{refresh_token_ttl}}, and token rotation on refresh.
|
|
5
|
+
|
|
6
|
+
## Acceptance Criteria
|
|
7
|
+
|
|
8
|
+
### AC-1: Login
|
|
9
|
+
- Accept `email` and `password` credentials
|
|
10
|
+
- Issue a signed access token ({{algorithm}}, TTL {{access_token_ttl}}) and refresh token (TTL {{refresh_token_ttl}})
|
|
11
|
+
- Return tokens in the response body; set refresh token as `HttpOnly` cookie
|
|
12
|
+
|
|
13
|
+
### AC-2: Token Verification
|
|
14
|
+
- Validate signature, expiry, and issuer on every protected route
|
|
15
|
+
- Return 401 with a clear message when token is expired or invalid
|
|
16
|
+
- Extract user claims (id, role, email) from token without a database lookup
|
|
17
|
+
|
|
18
|
+
### AC-3: Token Refresh
|
|
19
|
+
- Accept refresh token from `HttpOnly` cookie
|
|
20
|
+
- Issue new access and refresh tokens (rotation)
|
|
21
|
+
- Blacklist the previous refresh token to prevent reuse
|
|
22
|
+
|
|
23
|
+
### AC-4: Logout
|
|
24
|
+
- Blacklist the current refresh token on logout
|
|
25
|
+
- Clear the `HttpOnly` cookie
|
|
26
|
+
- Return 204 on success
|
|
27
|
+
|
|
28
|
+
### AC-5: Token Blacklist
|
|
29
|
+
- Store blacklisted token JTIs in a fast store (Redis recommended)
|
|
30
|
+
- Entries expire automatically at token TTL to prevent unbounded growth
|
|
31
|
+
|
|
32
|
+
## Technical Notes
|
|
33
|
+
- Never store the raw JWT secret in application code — use environment variables
|
|
34
|
+
- Include `jti` (JWT ID) claim for blacklist lookups
|
|
35
|
+
- Rotate signing keys on a quarterly schedule
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "jwt-auth",
|
|
3
|
+
"description": "JWT authentication with access/refresh token rotation, blacklisting, and role-based claims",
|
|
4
|
+
"variables": [
|
|
5
|
+
{ "name": "access_token_ttl", "description": "Access token time-to-live (e.g. 15m, 1h)", "default": "15m" },
|
|
6
|
+
{ "name": "refresh_token_ttl", "description": "Refresh token time-to-live (e.g. 7d, 30d)", "default": "7d" },
|
|
7
|
+
{ "name": "algorithm", "description": "JWT signing algorithm (HS256, RS256)", "default": "HS256" }
|
|
8
|
+
],
|
|
9
|
+
"tags": ["auth", "jwt", "security", "backend"]
|
|
10
|
+
}
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
# OAuth2 Social Login — {{provider}}
|
|
2
|
+
|
|
3
|
+
## Overview
|
|
4
|
+
Implement OAuth2 social login via {{provider}} with secure token handling and session management lasting {{session_duration}} seconds.
|
|
5
|
+
|
|
6
|
+
## Acceptance Criteria
|
|
7
|
+
|
|
8
|
+
### AC-1: OAuth Authorization Flow
|
|
9
|
+
- Redirect users to {{provider}} authorization endpoint with correct scopes
|
|
10
|
+
- Handle the callback at {{callback_path}} and exchange code for tokens
|
|
11
|
+
- Validate the `state` parameter to prevent CSRF attacks
|
|
12
|
+
|
|
13
|
+
### AC-2: User Account Linking
|
|
14
|
+
- Create a new user account if the OAuth identity does not exist
|
|
15
|
+
- Link the OAuth identity to an existing account if the email matches
|
|
16
|
+
- Store the provider, provider user ID, and access token securely
|
|
17
|
+
|
|
18
|
+
### AC-3: Session Management
|
|
19
|
+
- Issue a signed session token valid for {{session_duration}} seconds after successful login
|
|
20
|
+
- Invalidate session on explicit logout
|
|
21
|
+
- Refresh session silently when less than 10% of lifetime remains
|
|
22
|
+
|
|
23
|
+
### AC-4: Error Handling
|
|
24
|
+
- Return clear errors when the user denies authorization
|
|
25
|
+
- Handle provider API outages with a user-friendly fallback message
|
|
26
|
+
- Log all authentication failures with anonymized user identifiers
|
|
27
|
+
|
|
28
|
+
## Technical Notes
|
|
29
|
+
- Never store OAuth access tokens in client-accessible cookies
|
|
30
|
+
- Use PKCE (Proof Key for Code Exchange) when supported by the provider
|
|
31
|
+
- Implement rate limiting on the callback endpoint to prevent abuse
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "oauth-social-login",
|
|
3
|
+
"description": "OAuth2 social login with Google and GitHub, including token handling and session management",
|
|
4
|
+
"variables": [
|
|
5
|
+
{ "name": "provider", "description": "OAuth provider to integrate (google, github, or both)", "default": "google" },
|
|
6
|
+
{ "name": "callback_path", "description": "OAuth callback URL path", "default": "/auth/callback" },
|
|
7
|
+
{ "name": "session_duration", "description": "Session duration in seconds", "default": "86400" }
|
|
8
|
+
],
|
|
9
|
+
"tags": ["auth", "oauth2", "social-login", "google", "github", "backend"]
|
|
10
|
+
}
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
# Rate Limiting Middleware
|
|
2
|
+
|
|
3
|
+
## Overview
|
|
4
|
+
Sliding window rate limiting middleware with a limit of {{requests_per_window}} requests per {{window_seconds}} seconds, applied per {{strategy}}.
|
|
5
|
+
|
|
6
|
+
## Acceptance Criteria
|
|
7
|
+
|
|
8
|
+
### AC-1: Sliding Window Enforcement
|
|
9
|
+
- Track request counts in a {{window_seconds}}-second sliding window per {{strategy}}
|
|
10
|
+
- Block requests exceeding {{requests_per_window}} with HTTP 429
|
|
11
|
+
- Include `Retry-After` header indicating seconds until the window resets
|
|
12
|
+
|
|
13
|
+
### AC-2: Response Headers
|
|
14
|
+
- Include `X-RateLimit-Limit: {{requests_per_window}}` on all responses
|
|
15
|
+
- Include `X-RateLimit-Remaining` with current remaining count
|
|
16
|
+
- Include `X-RateLimit-Reset` with the Unix timestamp of window expiry
|
|
17
|
+
|
|
18
|
+
### AC-3: Strategy Configuration
|
|
19
|
+
- Apply limits by {{strategy}} (ip address, authenticated user ID, or API key)
|
|
20
|
+
- Fall back to IP-based limiting for unauthenticated requests
|
|
21
|
+
- Support per-route override limits via middleware options
|
|
22
|
+
|
|
23
|
+
### AC-4: Bypass and Exemptions
|
|
24
|
+
- Allow exemption list for internal service IPs
|
|
25
|
+
- Support admin-level bypass via a trusted header `X-Internal-Request: true`
|
|
26
|
+
- Log all exemptions for audit purposes
|
|
27
|
+
|
|
28
|
+
## Technical Notes
|
|
29
|
+
- Use atomic Redis operations (INCR + EXPIRE) to avoid race conditions
|
|
30
|
+
- Store counters in Redis with TTL equal to the window duration
|
|
31
|
+
- Degrade gracefully to allow-all if Redis is unavailable (fail open with alert)
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "rate-limiting",
|
|
3
|
+
"description": "Rate limiting middleware with sliding window algorithm, per-user and per-IP limits",
|
|
4
|
+
"variables": [
|
|
5
|
+
{ "name": "requests_per_window", "description": "Maximum requests allowed per window", "default": "100" },
|
|
6
|
+
{ "name": "window_seconds", "description": "Time window in seconds", "default": "60" },
|
|
7
|
+
{ "name": "strategy", "description": "Rate limiting strategy (ip, user, api-key)", "default": "ip" }
|
|
8
|
+
],
|
|
9
|
+
"tags": ["rate-limiting", "middleware", "security", "backend"]
|
|
10
|
+
}
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
# Stripe Payments Integration
|
|
2
|
+
|
|
3
|
+
## Overview
|
|
4
|
+
Integrate Stripe payment processing to support one-time payments and subscriptions for {{plan_name}} in {{currency}} currency.
|
|
5
|
+
|
|
6
|
+
## Acceptance Criteria
|
|
7
|
+
|
|
8
|
+
### AC-1: Checkout Session Creation
|
|
9
|
+
- Create a Stripe checkout session for {{plan_name}} with currency {{currency}}
|
|
10
|
+
- Return a redirect URL to the hosted Stripe payment page
|
|
11
|
+
- Store the session ID for reconciliation
|
|
12
|
+
|
|
13
|
+
### AC-2: Webhook Processing
|
|
14
|
+
- Handle incoming Stripe events at {{webhook_endpoint}}
|
|
15
|
+
- Verify HMAC signature using `Stripe-Signature` header
|
|
16
|
+
- Process `checkout.session.completed` and `invoice.payment_failed` events
|
|
17
|
+
- Idempotently handle duplicate webhook deliveries
|
|
18
|
+
|
|
19
|
+
### AC-3: Subscription Management
|
|
20
|
+
- Retrieve subscription status from Stripe API
|
|
21
|
+
- Cancel subscriptions on user request
|
|
22
|
+
- Expose subscription status in user profile response
|
|
23
|
+
|
|
24
|
+
### AC-4: Error Handling
|
|
25
|
+
- Return user-friendly errors when payment fails
|
|
26
|
+
- Log Stripe API errors with request IDs for debugging
|
|
27
|
+
- Handle network timeouts with retry logic (max 3 attempts)
|
|
28
|
+
|
|
29
|
+
## Technical Notes
|
|
30
|
+
- Store Stripe customer IDs and subscription IDs in the database, never card data
|
|
31
|
+
- All prices defined in cents to avoid floating-point errors
|
|
32
|
+
- Use Stripe's idempotency keys for all write operations
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "stripe-payments",
|
|
3
|
+
"description": "Stripe payment integration with checkout sessions, webhooks, and subscription management",
|
|
4
|
+
"variables": [
|
|
5
|
+
{ "name": "currency", "description": "Default currency code (e.g. usd, eur)", "default": "usd" },
|
|
6
|
+
{ "name": "plan_name", "description": "Name of the subscription plan or product", "default": "Pro Plan" },
|
|
7
|
+
{ "name": "webhook_endpoint", "description": "Path for the Stripe webhook endpoint", "default": "/api/webhooks/stripe" }
|
|
8
|
+
],
|
|
9
|
+
"tags": ["payments", "stripe", "subscriptions", "backend"]
|
|
10
|
+
}
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
# Webhook System
|
|
2
|
+
|
|
3
|
+
## Overview
|
|
4
|
+
Webhook delivery system with event subscriptions, HMAC signature verification via `{{signature_header}}`, retry logic (max {{max_retries}} attempts), and {{timeout_seconds}}s per request timeout.
|
|
5
|
+
|
|
6
|
+
## Acceptance Criteria
|
|
7
|
+
|
|
8
|
+
### AC-1: Subscription Management
|
|
9
|
+
- Allow consumers to register webhook endpoints with target URL and event types
|
|
10
|
+
- Validate that the target URL is reachable via a test ping on registration
|
|
11
|
+
- Store subscriptions with status (active, paused, failed)
|
|
12
|
+
|
|
13
|
+
### AC-2: Event Delivery
|
|
14
|
+
- Deliver event payloads via HTTP POST to registered endpoints
|
|
15
|
+
- Include `{{signature_header}}` HMAC-SHA256 signature in each request
|
|
16
|
+
- Set request timeout to {{timeout_seconds}} seconds per attempt
|
|
17
|
+
|
|
18
|
+
### AC-3: Retry Logic
|
|
19
|
+
- Retry failed deliveries up to {{max_retries}} times
|
|
20
|
+
- Use exponential backoff: 1min, 5min, 30min between retries
|
|
21
|
+
- Mark subscription as `failed` after exhausting all retries
|
|
22
|
+
|
|
23
|
+
### AC-4: Signature Verification (Consumer Guide)
|
|
24
|
+
- Compute HMAC-SHA256 of the raw request body using the shared secret
|
|
25
|
+
- Compare computed signature with the value in `{{signature_header}}`
|
|
26
|
+
- Reject requests with invalid or missing signatures
|
|
27
|
+
|
|
28
|
+
### AC-5: Delivery Log
|
|
29
|
+
- Store delivery attempts: endpoint, event type, response code, latency, attempt number
|
|
30
|
+
- Expose delivery history per subscription via admin API
|
|
31
|
+
- Purge logs older than 30 days automatically
|
|
32
|
+
|
|
33
|
+
## Technical Notes
|
|
34
|
+
- Use a unique shared secret per subscription — never reuse across consumers
|
|
35
|
+
- Process delivery queue asynchronously to avoid blocking event producers
|
|
36
|
+
- Validate registered URLs against an allowlist to prevent SSRF attacks
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "webhook-system",
|
|
3
|
+
"description": "Webhook system with event subscriptions, HMAC signature verification, and retry logic",
|
|
4
|
+
"variables": [
|
|
5
|
+
{ "name": "max_retries", "description": "Maximum delivery retry attempts", "default": "3" },
|
|
6
|
+
{ "name": "timeout_seconds", "description": "HTTP request timeout per delivery attempt", "default": "10" },
|
|
7
|
+
{ "name": "signature_header", "description": "HTTP header name for HMAC signature", "default": "X-Webhook-Signature" }
|
|
8
|
+
],
|
|
9
|
+
"tags": ["webhooks", "events", "backend", "integrations"]
|
|
10
|
+
}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import type { AgentReadySpec } from '../../../types/agent-ready.js';
|
|
2
|
+
/**
|
|
3
|
+
* Augment an AgentReadySpec with Devin sandbox instructions.
|
|
4
|
+
* Devin requires explicit environment setup and command sequences.
|
|
5
|
+
*/
|
|
6
|
+
export declare function formatDevin(spec: AgentReadySpec): string;
|
|
7
|
+
//# sourceMappingURL=devin.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"devin.d.ts","sourceRoot":"","sources":["../../../../src/engine/agent-ready-exporter/formatters/devin.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,cAAc,EAAa,MAAM,+BAA+B,CAAC;AAE/E;;;GAGG;AACH,wBAAgB,WAAW,CAAC,IAAI,EAAE,cAAc,GAAG,MAAM,CAgBxD"}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
// engine/agent-ready-exporter/formatters/devin.ts — Devin sandbox formatter — SPEC-318
|
|
2
|
+
/**
|
|
3
|
+
* Augment an AgentReadySpec with Devin sandbox instructions.
|
|
4
|
+
* Devin requires explicit environment setup and command sequences.
|
|
5
|
+
*/
|
|
6
|
+
export function formatDevin(spec) {
|
|
7
|
+
const devinSpec = {
|
|
8
|
+
...spec,
|
|
9
|
+
_format: 'devin',
|
|
10
|
+
sandbox_instructions: {
|
|
11
|
+
setup: [
|
|
12
|
+
'Install project dependencies with the project package manager',
|
|
13
|
+
'Run typecheck to verify environment is clean before starting',
|
|
14
|
+
'Read existing tests to understand project conventions',
|
|
15
|
+
],
|
|
16
|
+
run_tests: spec.agent_context.test_command,
|
|
17
|
+
validate: spec.agent_context.validation_command,
|
|
18
|
+
environment: 'Use the existing project environment — do not install new global tools',
|
|
19
|
+
},
|
|
20
|
+
};
|
|
21
|
+
return JSON.stringify(devinSpec, null, 2);
|
|
22
|
+
}
|
|
23
|
+
//# sourceMappingURL=devin.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"devin.js","sourceRoot":"","sources":["../../../../src/engine/agent-ready-exporter/formatters/devin.ts"],"names":[],"mappings":"AAAA,uFAAuF;AAIvF;;;GAGG;AACH,MAAM,UAAU,WAAW,CAAC,IAAoB;IAC9C,MAAM,SAAS,GAAc;QAC3B,GAAG,IAAI;QACP,OAAO,EAAE,OAAO;QAChB,oBAAoB,EAAE;YACpB,KAAK,EAAE;gBACL,+DAA+D;gBAC/D,8DAA8D;gBAC9D,uDAAuD;aACxD;YACD,SAAS,EAAE,IAAI,CAAC,aAAa,CAAC,YAAY;YAC1C,QAAQ,EAAE,IAAI,CAAC,aAAa,CAAC,kBAAkB;YAC/C,WAAW,EAAE,wEAAwE;SACtF;KACF,CAAC;IACF,OAAO,IAAI,CAAC,SAAS,CAAC,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC;AAC5C,CAAC"}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import type { AgentReadySpec } from '../../../types/agent-ready.js';
|
|
2
|
+
/**
|
|
3
|
+
* Serialize an AgentReadySpec to a JSON-based YAML-like string.
|
|
4
|
+
* Uses JSON.stringify with indentation as a dependency-free serialization.
|
|
5
|
+
*/
|
|
6
|
+
export declare function formatGeneric(spec: AgentReadySpec): string;
|
|
7
|
+
//# sourceMappingURL=generic.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"generic.d.ts","sourceRoot":"","sources":["../../../../src/engine/agent-ready-exporter/formatters/generic.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,+BAA+B,CAAC;AAEpE;;;GAGG;AACH,wBAAgB,aAAa,CAAC,IAAI,EAAE,cAAc,GAAG,MAAM,CAE1D"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
// engine/agent-ready-exporter/formatters/generic.ts — Generic YAML formatter — SPEC-318
|
|
2
|
+
/**
|
|
3
|
+
* Serialize an AgentReadySpec to a JSON-based YAML-like string.
|
|
4
|
+
* Uses JSON.stringify with indentation as a dependency-free serialization.
|
|
5
|
+
*/
|
|
6
|
+
export function formatGeneric(spec) {
|
|
7
|
+
return JSON.stringify(spec, null, 2);
|
|
8
|
+
}
|
|
9
|
+
//# sourceMappingURL=generic.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"generic.js","sourceRoot":"","sources":["../../../../src/engine/agent-ready-exporter/formatters/generic.ts"],"names":[],"mappings":"AAAA,wFAAwF;AAIxF;;;GAGG;AACH,MAAM,UAAU,aAAa,CAAC,IAAoB;IAChD,OAAO,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC;AACvC,CAAC"}
|