saasfunnels 0.2.3 → 0.3.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/README.md CHANGED
@@ -10,12 +10,16 @@ This repository contains only the MIT-licensed CLI and its bounded runtime contr
10
10
 
11
11
  ## Install
12
12
 
13
- Install the stable CLI:
13
+ Start in your app repository:
14
14
 
15
15
  ```bash
16
- npm install --global saasfunnels
16
+ npx --yes saasfunnels@latest setup
17
17
  ```
18
18
 
19
+ The explicit version tag avoids running an older project-local CLI. Setup asks where developer access is saved (Doppler or `.env.local`) when needed, requests approval before uploading findings, and shows each discovery stage. It never prints keys, rewrites env files, deploys your app, or approves inferred plans. Connect Stripe and create app credentials in the web Setup first. `setup run` remains a compatible entry point.
20
+
21
+ For scripts, use `--env-file .env.local --send --non-interactive`, or inject `SAASFUNNELS_API_KEY` from your secret manager. Without explicit approval, non-interactive runs stop without uploading. Run `setup --help` for setup-only guidance. Runtime implementation and payment verification remain in the web Setup.
22
+
19
23
  ## Use
20
24
 
21
25
  ```bash
@@ -37,9 +41,9 @@ saasfunnels plans handoff --integration-id <id> \
37
41
  prices. Files that reference a Stripe price are reported as evidence; files that
38
42
  only look commercial by name and content are reported separately as guesses.
39
43
  Nothing leaves the machine until `.saasfunnels/plan-sources.json` lists the files
40
- and `plans handoff --send` is run, because plan mapping receives file contents
41
- rather than the `file:line` references a feature manifest sends. Commit that file
42
- so the approved set is reviewable.
44
+ and `plans handoff --send` is run. The CLI extracts normalized mapping evidence
45
+ locally; source contents stay on your machine. Commit the approval file so the
46
+ approved set is reviewable.
43
47
 
44
48
  ### GitHub Action
45
49
 
@@ -51,7 +55,7 @@ so the approved set is reviewable.
51
55
  discovery-roots: app,lib
52
56
  ```
53
57
 
54
- On a pull request the Action scans as a `candidate`: the result is compared
58
+ The Action uploads an existing feature manifest; it does not freshly scan application source. On a pull request the upload is a `candidate`: the result is compared
55
59
  against the branch's baseline and discarded. Only the default branch advances
56
60
  the lineage. Changing `discovery-roots` starts a new lineage, so drift is
57
61
  measured against a comparable scan rather than a wider or narrower one.
@@ -91,3 +95,13 @@ The package allowlist is enforced as `LICENSE`, `README.md`, `package.json`, the
91
95
  Documentation: https://docs.saasfunnels.ai/developer-tools/saasfunnels-cli
92
96
 
93
97
  Support: support@saasfunnels.ai
98
+
99
+ ### Guided application discovery
100
+
101
+ Use `saasfunnels setup run` from the application repository after creating app credentials in Setup. Load `SAASFUNNELS_API_KEY` from **Developer setup access** into the local process environment. Its scopes are `developer:read` and `features:write`; it is not a browser or payment-administration key.
102
+
103
+ The command asks before uploading structured discovery proposals. `--send` provides explicit non-interactive approval. It coordinates features, pricing extraction, and plan branches, reports progress, and waits for the Stripe catalog. Run `saasfunnels setup run --resume` after an interruption. Existing accepted stages and customer review decisions are preserved.
104
+
105
+ If extraction is unsupported, review a `.saasfunnels/setup-pricing.json` file with `{ "plans": [{ "key": "pro", "name": "Pro", "features": { "export": true }, "prices": [{ "key": "price_ACTUAL_ID" }] }] }`, then resume. Use real identifiers from the connected merchant. Raw source files are never uploaded by guided setup or the pricing handoff.
106
+
107
+ The command does not implement arbitrary payment code, approve feature access, or verify transactions. Complete **Review and verify** in Setup after deploying the runtime and payment integration. Requires the server's guided setup API release.
package/dist/library.js CHANGED
@@ -1,4 +1,4 @@
1
- import { createRequire as __saasfunnelsCreateRequire } from "node:module"; const require = __saasfunnelsCreateRequire(import.meta.url);
1
+ import { createRequire as __saasfunnelsCreateRequire } from "node:module"; const require = __saasfunnelsCreateRequire(import.meta.url); const __filename = new URL(import.meta.url).pathname; const __dirname = require("node:path").dirname(__filename);
2
2
  var __create = Object.create;
3
3
  var __defProp = Object.defineProperty;
4
4
  var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
@@ -24264,7 +24264,7 @@ function validateFeatureCatalogManifest(value) {
24264
24264
 
24265
24265
  // src/identity.ts
24266
24266
  var SAASFUNNELS_CLI_NAME = "saasfunnels";
24267
- var SAASFUNNELS_CLI_VERSION = "0.2.3";
24267
+ var SAASFUNNELS_CLI_VERSION = "0.3.1";
24268
24268
  var SAASFUNNELS_PRODUCT_NAME = "SaaSFunnels";
24269
24269
  var SAASFUNNELS_DEFAULT_API_BASE_URL = "https://app.saasfunnels.ai";
24270
24270
  var SAASFUNNELS_ENV = Object.freeze({