@pulse-compute/cli 0.0.0 → 1.0.0-beta.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.
Files changed (190) hide show
  1. package/API.md +539 -0
  2. package/CHANGELOG.md +47 -0
  3. package/README.md +70 -1
  4. package/bin/pulse.js +15 -0
  5. package/bin/pulsewasm-extract.js +22 -0
  6. package/cli-spec.json +575 -0
  7. package/completions/_pulse +106 -0
  8. package/completions/pulse.bash +31 -0
  9. package/completions/pulse.fish +76 -0
  10. package/docs/README.md +77 -0
  11. package/docs/architecture/current-contracts.md +381 -0
  12. package/docs/architecture/overview.md +93 -0
  13. package/docs/architecture/vision.md +515 -0
  14. package/docs/concepts/bodies.md +186 -0
  15. package/docs/concepts/compilation-and-lowering.md +496 -0
  16. package/docs/concepts/contracts-and-providers.md +158 -0
  17. package/docs/concepts/effects-and-continuations.md +243 -0
  18. package/docs/concepts/entities-and-adapters.md +71 -0
  19. package/docs/concepts/package-owned-lowering.md +175 -0
  20. package/docs/concepts/targets-and-hosts.md +62 -0
  21. package/docs/contributing/README.md +38 -0
  22. package/docs/contributing/adding-core-provider.md +315 -0
  23. package/docs/contributing/adding-first-party-lowerer.md +327 -0
  24. package/docs/contributing/entities-lowering.md +91 -0
  25. package/docs/contributing/package-lowerer-contract.md +383 -0
  26. package/docs/contributing/pulse-aware-packages.md +149 -0
  27. package/docs/examples.md +112 -0
  28. package/docs/fixtures/inspect-fetch-composition.selected.json +181 -0
  29. package/docs/getting-started.md +128 -0
  30. package/docs/guides/compatibility-imports.md +60 -0
  31. package/docs/guides/deploying-fastly.md +188 -0
  32. package/docs/guides/deploying-node.md +143 -0
  33. package/docs/guides/events.md +233 -0
  34. package/docs/guides/fastly-capabilities.md +153 -0
  35. package/docs/guides/fetching-and-composition.md +101 -0
  36. package/docs/guides/grip.md +94 -0
  37. package/docs/guides/json-schemas.md +233 -0
  38. package/docs/guides/migrating-from-express.md +192 -0
  39. package/docs/guides/project-lifecycle.md +143 -0
  40. package/docs/guides/routing.md +184 -0
  41. package/docs/guides/troubleshooting.md +47 -0
  42. package/docs/maintainers/README.md +60 -0
  43. package/docs/maintainers/codex-maintainer.md +71 -0
  44. package/docs/maintainers/documentation-deployment.md +147 -0
  45. package/docs/maintainers/documentation-system.md +58 -0
  46. package/docs/maintainers/documentation-versioning.md +65 -0
  47. package/docs/maintainers/maintainer-charter.md +84 -0
  48. package/docs/maintainers/maintenance-policy.json +778 -0
  49. package/docs/maintainers/maintenance-policy.md +124 -0
  50. package/docs/maintainers/npm-publishing.md +154 -0
  51. package/docs/maintainers/plugin-readiness.json +19 -0
  52. package/docs/maintainers/plugin-readiness.md +31 -0
  53. package/docs/maintainers/public-site.md +158 -0
  54. package/docs/maintainers/release-acceptance.md +250 -0
  55. package/docs/maintainers/release-manifest.md +88 -0
  56. package/docs/maintainers/repository-setup.md +145 -0
  57. package/docs/maintainers/scope-policy.md +93 -0
  58. package/docs/maintainers/support-and-triage.md +74 -0
  59. package/docs/maintainers/testing.md +288 -0
  60. package/docs/packages/README.md +59 -0
  61. package/docs/packages/assets.md +85 -0
  62. package/docs/packages/cli.md +190 -0
  63. package/docs/packages/crypto.md +71 -0
  64. package/docs/packages/entities.md +129 -0
  65. package/docs/packages/grip.md +82 -0
  66. package/docs/packages/implementation-packages.md +113 -0
  67. package/docs/packages/jwt.md +55 -0
  68. package/docs/packages/provider-fastly.md +217 -0
  69. package/docs/packages/pulse.md +159 -0
  70. package/docs/packages/runtime.md +256 -0
  71. package/docs/preview-scope.md +142 -0
  72. package/docs/reference/README.md +33 -0
  73. package/docs/reference/cli-spec.json +575 -0
  74. package/docs/reference/cli.md +457 -0
  75. package/docs/reference/compatibility-matrix.md +169 -0
  76. package/docs/reference/diagnostics.md +1872 -0
  77. package/docs/reference/documentation-versions.json +14 -0
  78. package/docs/reference/environment.md +347 -0
  79. package/docs/reference/handler-authoring.md +264 -0
  80. package/docs/reference/project-config.md +554 -0
  81. package/docs/reference/project-config.schema.json +918 -0
  82. package/docs/reference/release-manifest.json +427 -0
  83. package/docs/reference/shell-completion.md +23 -0
  84. package/documentation-site.json +661 -0
  85. package/documentation-versions.json +14 -0
  86. package/examples/01-hello-json/.pulse/.gitignore +3 -0
  87. package/examples/01-hello-json/.pulse/config.ts +16 -0
  88. package/examples/01-hello-json/README.md +119 -0
  89. package/examples/01-hello-json/package.json +20 -0
  90. package/examples/01-hello-json/src/index.ts +9 -0
  91. package/examples/01-hello-json/tests/pulse.harness.ts +22 -0
  92. package/examples/01-hello-json/tsconfig.json +14 -0
  93. package/examples/02-request-schema/.pulse/.gitignore +3 -0
  94. package/examples/02-request-schema/.pulse/config.ts +17 -0
  95. package/examples/02-request-schema/README.md +145 -0
  96. package/examples/02-request-schema/package.json +20 -0
  97. package/examples/02-request-schema/src/index.ts +18 -0
  98. package/examples/02-request-schema/src/schemas.ts +20 -0
  99. package/examples/02-request-schema/tests/pulse.harness.ts +37 -0
  100. package/examples/02-request-schema/tsconfig.json +14 -0
  101. package/examples/03-fetch-composition/.pulse/.gitignore +3 -0
  102. package/examples/03-fetch-composition/.pulse/config.ts +31 -0
  103. package/examples/03-fetch-composition/README.md +210 -0
  104. package/examples/03-fetch-composition/package.json +20 -0
  105. package/examples/03-fetch-composition/src/index.ts +60 -0
  106. package/examples/03-fetch-composition/tests/pulse.harness.ts +47 -0
  107. package/examples/03-fetch-composition/tsconfig.json +14 -0
  108. package/examples/05-fastly-capabilities/.pulse/.gitignore +3 -0
  109. package/examples/05-fastly-capabilities/.pulse/config.ts +57 -0
  110. package/examples/05-fastly-capabilities/README.md +257 -0
  111. package/examples/05-fastly-capabilities/package.json +22 -0
  112. package/examples/05-fastly-capabilities/src/index.ts +55 -0
  113. package/examples/05-fastly-capabilities/tests/pulse.harness.ts +66 -0
  114. package/examples/05-fastly-capabilities/tsconfig.json +14 -0
  115. package/examples/07-opaque-proxy/.pulse/.gitignore +3 -0
  116. package/examples/07-opaque-proxy/.pulse/config.ts +38 -0
  117. package/examples/07-opaque-proxy/README.md +150 -0
  118. package/examples/07-opaque-proxy/package.json +21 -0
  119. package/examples/07-opaque-proxy/src/index.ts +9 -0
  120. package/examples/07-opaque-proxy/tests/pulse.harness.ts +25 -0
  121. package/examples/07-opaque-proxy/tsconfig.json +14 -0
  122. package/examples/09-router-lowering/.pulse/.gitignore +3 -0
  123. package/examples/09-router-lowering/.pulse/config.ts +22 -0
  124. package/examples/09-router-lowering/README.md +287 -0
  125. package/examples/09-router-lowering/package.json +22 -0
  126. package/examples/09-router-lowering/src/index.ts +65 -0
  127. package/examples/09-router-lowering/tests/pulse.harness.ts +91 -0
  128. package/examples/09-router-lowering/tsconfig.json +14 -0
  129. package/examples/10-entities-tools/.pulse/.gitignore +4 -0
  130. package/examples/10-entities-tools/.pulse/config.ts +23 -0
  131. package/examples/10-entities-tools/README.md +165 -0
  132. package/examples/10-entities-tools/package.json +21 -0
  133. package/examples/10-entities-tools/src/handlers.ts +15 -0
  134. package/examples/10-entities-tools/src/index.ts +31 -0
  135. package/examples/10-entities-tools/src/schemas.ts +18 -0
  136. package/examples/10-entities-tools/tests/pulse.harness.ts +40 -0
  137. package/examples/10-entities-tools/tools-facade.cjs +158 -0
  138. package/examples/10-entities-tools/tsconfig.json +14 -0
  139. package/examples/11-events/.pulse/.gitignore +4 -0
  140. package/examples/11-events/.pulse/config.ts +24 -0
  141. package/examples/11-events/README.md +194 -0
  142. package/examples/11-events/package.json +20 -0
  143. package/examples/11-events/src/index.ts +27 -0
  144. package/examples/11-events/src/schemas.ts +19 -0
  145. package/examples/11-events/tests/pulse.harness.ts +34 -0
  146. package/examples/11-events/tsconfig.json +15 -0
  147. package/examples/12-mcp-proxy/.pulse/.gitignore +3 -0
  148. package/examples/12-mcp-proxy/.pulse/config.ts +25 -0
  149. package/examples/12-mcp-proxy/README.md +149 -0
  150. package/examples/12-mcp-proxy/package.json +20 -0
  151. package/examples/12-mcp-proxy/src/index.ts +17 -0
  152. package/examples/12-mcp-proxy/tests/pulse.harness.ts +29 -0
  153. package/examples/12-mcp-proxy/tsconfig.json +14 -0
  154. package/examples/13-jwt-es256/.pulse/config.ts +19 -0
  155. package/examples/13-jwt-es256/README.md +195 -0
  156. package/examples/13-jwt-es256/package.json +21 -0
  157. package/examples/13-jwt-es256/src/index.ts +21 -0
  158. package/examples/13-jwt-es256/tests/pulse.harness.ts +54 -0
  159. package/examples/13-jwt-es256/tsconfig.json +14 -0
  160. package/examples/README.md +36 -0
  161. package/package.json +66 -6
  162. package/project-config.schema.json +918 -0
  163. package/release-manifest.json +427 -0
  164. package/src/command-spec.js +279 -0
  165. package/src/completion.js +113 -0
  166. package/src/diagnostics.js +350 -0
  167. package/src/documentation.js +45 -0
  168. package/src/index.d.ts +133 -0
  169. package/src/index.js +15 -0
  170. package/src/internal/command-executor.d.ts +29 -0
  171. package/src/internal/command-executor.js +143 -0
  172. package/src/internal/command-plan.d.ts +9 -0
  173. package/src/internal/command-plan.js +73 -0
  174. package/src/internal/command-reporter.d.ts +15 -0
  175. package/src/internal/command-reporter.js +133 -0
  176. package/src/internal/command-request.d.ts +35 -0
  177. package/src/internal/command-request.js +154 -0
  178. package/src/internal/node-http.js +54 -0
  179. package/src/internal/project-context.d.ts +66 -0
  180. package/src/internal/project-context.js +175 -0
  181. package/src/project-config-reference.js +4 -0
  182. package/src/project-config-schema.d.ts +23 -0
  183. package/src/project-config-schema.js +271 -0
  184. package/src/project-config.js +724 -0
  185. package/src/project-execution.js +2930 -0
  186. package/src/provider-drivers.js +3 -0
  187. package/src/target-support.js +3 -0
  188. package/src/typescript-module-loader.js +269 -0
  189. package/src/workflow.js +78 -0
  190. package/src/workspace.js +82 -0
@@ -0,0 +1,106 @@
1
+ #compdef pulse
2
+ # Generated from @pulse-compute/cli/src/command-spec.js.
3
+ local -a commands
4
+ commands=(
5
+ 'init:Create a conventional .pulse workspace with an async Pulse application and dedicated test harness.'
6
+ 'doctor:Audit project shape, compilation, schemas, provider bindings, output safety, and required tools.'
7
+ 'inspect:Report canonical compiler, schema, effect, continuation, capability, provider, and build-mode details.'
8
+ 'test:Run configured cases through the selected provider local-conformance runtime.'
9
+ 'dev:Start the foreground local server with the selected provider conformance runtime.'
10
+ 'compile:Compile the canonical project into provider-neutral Pulse-owned WebAssembly.'
11
+ 'build:Compile the canonical project and realize the deployment provider selected by the active project profile.'
12
+ 'completion:Print a generated shell completion script'
13
+ 'help:Print public help'
14
+ 'version:Print the installed CLI version'
15
+ '--help:Print public help'
16
+ '-h:Print public help'
17
+ '--version:Print the installed CLI version'
18
+ '-v:Print the installed CLI version'
19
+ )
20
+
21
+ if (( CURRENT == 2 )); then
22
+ _describe 'pulse command' commands
23
+ return
24
+ fi
25
+
26
+ case $words[2] in
27
+ completion)
28
+ _values 'shell' bash zsh fish
29
+ ;;
30
+ init)
31
+ _arguments -s '--help[Print public CLI help and exit.]' \
32
+ '-h[Print public CLI help and exit.]' \
33
+ '--json[Emit machine-readable JSON. pulse dev emits one JSON event per line.]' \
34
+ '--dry-run[Resolve and report the command plan without executing it.]' \
35
+ '--plan[Resolve and report the command plan without executing it.]' \
36
+ '--force[Allow generated files to replace entries in a non-empty target directory.]' \
37
+ '--name[Set the generated npm package name.]:value:'
38
+ ;;
39
+ doctor)
40
+ _arguments -s '--help[Print public CLI help and exit.]' \
41
+ '-h[Print public CLI help and exit.]' \
42
+ '--json[Emit machine-readable JSON. pulse dev emits one JSON event per line.]' \
43
+ '--dry-run[Resolve and report the command plan without executing it.]' \
44
+ '--plan[Resolve and report the command plan without executing it.]' \
45
+ '--strict[Treat doctor warnings as failed checks.]' \
46
+ '--profile[Select a project profile. Precedence: --profile, PULSE_PROFILE, pulse.defaultProfile.]:value:'
47
+ ;;
48
+ inspect)
49
+ _arguments -s '--help[Print public CLI help and exit.]' \
50
+ '-h[Print public CLI help and exit.]' \
51
+ '--json[Emit machine-readable JSON. pulse dev emits one JSON event per line.]' \
52
+ '--dry-run[Resolve and report the command plan without executing it.]' \
53
+ '--plan[Resolve and report the command plan without executing it.]' \
54
+ '--profile[Select a project profile. Precedence: --profile, PULSE_PROFILE, pulse.defaultProfile.]:value:' \
55
+ '--artifact[Inspect an existing JSON build or compiler artifact instead of a project.]:file:_files'
56
+ ;;
57
+ test)
58
+ _arguments -s '--help[Print public CLI help and exit.]' \
59
+ '-h[Print public CLI help and exit.]' \
60
+ '--json[Emit machine-readable JSON. pulse dev emits one JSON event per line.]' \
61
+ '--dry-run[Resolve and report the command plan without executing it.]' \
62
+ '--plan[Resolve and report the command plan without executing it.]' \
63
+ '--profile[Select a project profile. Precedence: --profile, PULSE_PROFILE, pulse.defaultProfile.]:value:' \
64
+ '--case[Run one named project test case.]:value:'
65
+ ;;
66
+ dev)
67
+ _arguments -s '--help[Print public CLI help and exit.]' \
68
+ '-h[Print public CLI help and exit.]' \
69
+ '--json[Emit machine-readable JSON. pulse dev emits one JSON event per line.]' \
70
+ '--dry-run[Resolve and report the command plan without executing it.]' \
71
+ '--plan[Resolve and report the command plan without executing it.]' \
72
+ '--once[Close the development server after the first completed request.]' \
73
+ '--watch[Enable or disable entry and schema dependency watching. Watching is enabled by default.]' \
74
+ '--no-watch[Enable or disable entry and schema dependency watching. Watching is enabled by default.]' \
75
+ '--profile[Select a project profile. Precedence: --profile, PULSE_PROFILE, pulse.defaultProfile.]:value:' \
76
+ '--host[Override the development listen host.]:value:' \
77
+ '--port[Override the development listen port. Use 0 to request an ephemeral port.]:value:'
78
+ ;;
79
+ compile)
80
+ _arguments -s '--help[Print public CLI help and exit.]' \
81
+ '-h[Print public CLI help and exit.]' \
82
+ '--json[Emit machine-readable JSON. pulse dev emits one JSON event per line.]' \
83
+ '--dry-run[Resolve and report the command plan without executing it.]' \
84
+ '--plan[Resolve and report the command plan without executing it.]' \
85
+ '--clean[Remove or preserve the selected output directory before writing artifacts. Cleaning is enabled by default.]' \
86
+ '--no-clean[Remove or preserve the selected output directory before writing artifacts. Cleaning is enabled by default.]' \
87
+ '--experimental-native-size[Experimentally optimize Native Wasm for size. JavaScript build targets reject this flag.]' \
88
+ '--profile[Select a project profile. Precedence: --profile, PULSE_PROFILE, pulse.defaultProfile.]:value:' \
89
+ '--out[Override the project-relative artifact output directory.]:directory:_directories'
90
+ ;;
91
+ build)
92
+ _arguments -s '--help[Print public CLI help and exit.]' \
93
+ '-h[Print public CLI help and exit.]' \
94
+ '--json[Emit machine-readable JSON. pulse dev emits one JSON event per line.]' \
95
+ '--dry-run[Resolve and report the command plan without executing it.]' \
96
+ '--plan[Resolve and report the command plan without executing it.]' \
97
+ '--clean[Remove or preserve the selected output directory before writing artifacts. Cleaning is enabled by default.]' \
98
+ '--no-clean[Remove or preserve the selected output directory before writing artifacts. Cleaning is enabled by default.]' \
99
+ '--experimental-native-size[Experimentally optimize Native Wasm for size. JavaScript build targets reject this flag.]' \
100
+ '--profile[Select a project profile. Precedence: --profile, PULSE_PROFILE, pulse.defaultProfile.]:value:' \
101
+ '--out[Override the project-relative artifact output directory.]:directory:_directories'
102
+ ;;
103
+ *)
104
+ _describe 'pulse command' commands
105
+ ;;
106
+ esac
@@ -0,0 +1,31 @@
1
+ # Generated from @pulse-compute/cli/src/command-spec.js.
2
+ # Install for the current shell with: source <(pulse completion bash)
3
+ _pulse_completion() {
4
+ local cur command words
5
+ COMPREPLY=()
6
+ cur="${COMP_WORDS[COMP_CWORD]}"
7
+ command="${COMP_WORDS[1]}"
8
+
9
+ if (( COMP_CWORD == 1 )); then
10
+ COMPREPLY=( $(compgen -W "init doctor inspect test dev compile build completion help version --help -h --version -v" -- "$cur") )
11
+ return 0
12
+ fi
13
+
14
+ if [[ "$command" == "completion" ]]; then
15
+ COMPREPLY=( $(compgen -W "bash zsh fish" -- "$cur") )
16
+ return 0
17
+ fi
18
+
19
+ case "$command" in
20
+ init) words="--help -h --json --dry-run --plan --force --name" ;;
21
+ doctor) words="--help -h --json --dry-run --plan --strict --profile" ;;
22
+ inspect) words="--help -h --json --dry-run --plan --profile --artifact" ;;
23
+ test) words="--help -h --json --dry-run --plan --profile --case" ;;
24
+ dev) words="--help -h --json --dry-run --plan --once --watch --no-watch --profile --host --port" ;;
25
+ compile) words="--help -h --json --dry-run --plan --clean --no-clean --experimental-native-size --profile --out" ;;
26
+ build) words="--help -h --json --dry-run --plan --clean --no-clean --experimental-native-size --profile --out" ;;
27
+ *) words="init doctor inspect test dev compile build completion help version --help -h --version -v" ;;
28
+ esac
29
+ COMPREPLY=( $(compgen -W "$words" -- "$cur") )
30
+ }
31
+ complete -F _pulse_completion pulse
@@ -0,0 +1,76 @@
1
+ # Generated from @pulse-compute/cli/src/command-spec.js.
2
+ # Install for the current shell with: pulse completion fish | source
3
+ complete -c pulse -f
4
+ complete -c pulse -n '__fish_use_subcommand' -a 'init' -d 'Create a conventional .pulse workspace with an async Pulse application and dedicated test harness.'
5
+ complete -c pulse -n '__fish_use_subcommand' -a 'doctor' -d 'Audit project shape, compilation, schemas, provider bindings, output safety, and required tools.'
6
+ complete -c pulse -n '__fish_use_subcommand' -a 'inspect' -d 'Report canonical compiler, schema, effect, continuation, capability, provider, and build-mode details.'
7
+ complete -c pulse -n '__fish_use_subcommand' -a 'test' -d 'Run configured cases through the selected provider local-conformance runtime.'
8
+ complete -c pulse -n '__fish_use_subcommand' -a 'dev' -d 'Start the foreground local server with the selected provider conformance runtime.'
9
+ complete -c pulse -n '__fish_use_subcommand' -a 'compile' -d 'Compile the canonical project into provider-neutral Pulse-owned WebAssembly.'
10
+ complete -c pulse -n '__fish_use_subcommand' -a 'build' -d 'Compile the canonical project and realize the deployment provider selected by the active project profile.'
11
+ complete -c pulse -n '__fish_use_subcommand' -a 'completion' -d 'Print a generated shell completion script'
12
+ complete -c pulse -n '__fish_seen_subcommand_from completion' -a 'bash zsh fish'
13
+ complete -c pulse -n '__fish_use_subcommand' -a 'help version'
14
+ complete -c pulse -n '__fish_use_subcommand' -l help -d 'Print public help'
15
+ complete -c pulse -n '__fish_use_subcommand' -s h -d 'Print public help'
16
+ complete -c pulse -n '__fish_use_subcommand' -l version -d 'Print the installed CLI version'
17
+ complete -c pulse -n '__fish_use_subcommand' -s v -d 'Print the installed CLI version'
18
+ complete -c pulse -n '__fish_seen_subcommand_from init' -l help -d 'Print public CLI help and exit.'
19
+ complete -c pulse -n '__fish_seen_subcommand_from init' -s h -d 'Print public CLI help and exit.'
20
+ complete -c pulse -n '__fish_seen_subcommand_from init' -l json -d 'Emit machine-readable JSON. pulse dev emits one JSON event per line.'
21
+ complete -c pulse -n '__fish_seen_subcommand_from init' -l dry-run -d 'Resolve and report the command plan without executing it.'
22
+ complete -c pulse -n '__fish_seen_subcommand_from init' -l plan -d 'Resolve and report the command plan without executing it.'
23
+ complete -c pulse -n '__fish_seen_subcommand_from init' -l force -d 'Allow generated files to replace entries in a non-empty target directory.'
24
+ complete -c pulse -n '__fish_seen_subcommand_from init' -l name -r -d 'Set the generated npm package name.'
25
+ complete -c pulse -n '__fish_seen_subcommand_from doctor' -l help -d 'Print public CLI help and exit.'
26
+ complete -c pulse -n '__fish_seen_subcommand_from doctor' -s h -d 'Print public CLI help and exit.'
27
+ complete -c pulse -n '__fish_seen_subcommand_from doctor' -l json -d 'Emit machine-readable JSON. pulse dev emits one JSON event per line.'
28
+ complete -c pulse -n '__fish_seen_subcommand_from doctor' -l dry-run -d 'Resolve and report the command plan without executing it.'
29
+ complete -c pulse -n '__fish_seen_subcommand_from doctor' -l plan -d 'Resolve and report the command plan without executing it.'
30
+ complete -c pulse -n '__fish_seen_subcommand_from doctor' -l strict -d 'Treat doctor warnings as failed checks.'
31
+ complete -c pulse -n '__fish_seen_subcommand_from doctor' -l profile -r -d 'Select a project profile. Precedence: --profile, PULSE_PROFILE, pulse.defaultProfile.'
32
+ complete -c pulse -n '__fish_seen_subcommand_from inspect' -l help -d 'Print public CLI help and exit.'
33
+ complete -c pulse -n '__fish_seen_subcommand_from inspect' -s h -d 'Print public CLI help and exit.'
34
+ complete -c pulse -n '__fish_seen_subcommand_from inspect' -l json -d 'Emit machine-readable JSON. pulse dev emits one JSON event per line.'
35
+ complete -c pulse -n '__fish_seen_subcommand_from inspect' -l dry-run -d 'Resolve and report the command plan without executing it.'
36
+ complete -c pulse -n '__fish_seen_subcommand_from inspect' -l plan -d 'Resolve and report the command plan without executing it.'
37
+ complete -c pulse -n '__fish_seen_subcommand_from inspect' -l profile -r -d 'Select a project profile. Precedence: --profile, PULSE_PROFILE, pulse.defaultProfile.'
38
+ complete -c pulse -n '__fish_seen_subcommand_from inspect' -l artifact -r -d 'Inspect an existing JSON build or compiler artifact instead of a project.'
39
+ complete -c pulse -n '__fish_seen_subcommand_from test' -l help -d 'Print public CLI help and exit.'
40
+ complete -c pulse -n '__fish_seen_subcommand_from test' -s h -d 'Print public CLI help and exit.'
41
+ complete -c pulse -n '__fish_seen_subcommand_from test' -l json -d 'Emit machine-readable JSON. pulse dev emits one JSON event per line.'
42
+ complete -c pulse -n '__fish_seen_subcommand_from test' -l dry-run -d 'Resolve and report the command plan without executing it.'
43
+ complete -c pulse -n '__fish_seen_subcommand_from test' -l plan -d 'Resolve and report the command plan without executing it.'
44
+ complete -c pulse -n '__fish_seen_subcommand_from test' -l profile -r -d 'Select a project profile. Precedence: --profile, PULSE_PROFILE, pulse.defaultProfile.'
45
+ complete -c pulse -n '__fish_seen_subcommand_from test' -l case -r -d 'Run one named project test case.'
46
+ complete -c pulse -n '__fish_seen_subcommand_from dev' -l help -d 'Print public CLI help and exit.'
47
+ complete -c pulse -n '__fish_seen_subcommand_from dev' -s h -d 'Print public CLI help and exit.'
48
+ complete -c pulse -n '__fish_seen_subcommand_from dev' -l json -d 'Emit machine-readable JSON. pulse dev emits one JSON event per line.'
49
+ complete -c pulse -n '__fish_seen_subcommand_from dev' -l dry-run -d 'Resolve and report the command plan without executing it.'
50
+ complete -c pulse -n '__fish_seen_subcommand_from dev' -l plan -d 'Resolve and report the command plan without executing it.'
51
+ complete -c pulse -n '__fish_seen_subcommand_from dev' -l once -d 'Close the development server after the first completed request.'
52
+ complete -c pulse -n '__fish_seen_subcommand_from dev' -l watch -d 'Enable or disable entry and schema dependency watching. Watching is enabled by default.'
53
+ complete -c pulse -n '__fish_seen_subcommand_from dev' -l no-watch -d 'Enable or disable entry and schema dependency watching. Watching is enabled by default.'
54
+ complete -c pulse -n '__fish_seen_subcommand_from dev' -l profile -r -d 'Select a project profile. Precedence: --profile, PULSE_PROFILE, pulse.defaultProfile.'
55
+ complete -c pulse -n '__fish_seen_subcommand_from dev' -l host -r -d 'Override the development listen host.'
56
+ complete -c pulse -n '__fish_seen_subcommand_from dev' -l port -r -d 'Override the development listen port. Use 0 to request an ephemeral port.'
57
+ complete -c pulse -n '__fish_seen_subcommand_from compile' -l help -d 'Print public CLI help and exit.'
58
+ complete -c pulse -n '__fish_seen_subcommand_from compile' -s h -d 'Print public CLI help and exit.'
59
+ complete -c pulse -n '__fish_seen_subcommand_from compile' -l json -d 'Emit machine-readable JSON. pulse dev emits one JSON event per line.'
60
+ complete -c pulse -n '__fish_seen_subcommand_from compile' -l dry-run -d 'Resolve and report the command plan without executing it.'
61
+ complete -c pulse -n '__fish_seen_subcommand_from compile' -l plan -d 'Resolve and report the command plan without executing it.'
62
+ complete -c pulse -n '__fish_seen_subcommand_from compile' -l clean -d 'Remove or preserve the selected output directory before writing artifacts. Cleaning is enabled by default.'
63
+ complete -c pulse -n '__fish_seen_subcommand_from compile' -l no-clean -d 'Remove or preserve the selected output directory before writing artifacts. Cleaning is enabled by default.'
64
+ complete -c pulse -n '__fish_seen_subcommand_from compile' -l experimental-native-size -d 'Experimentally optimize Native Wasm for size. JavaScript build targets reject this flag.'
65
+ complete -c pulse -n '__fish_seen_subcommand_from compile' -l profile -r -d 'Select a project profile. Precedence: --profile, PULSE_PROFILE, pulse.defaultProfile.'
66
+ complete -c pulse -n '__fish_seen_subcommand_from compile' -l out -r -d 'Override the project-relative artifact output directory.'
67
+ complete -c pulse -n '__fish_seen_subcommand_from build' -l help -d 'Print public CLI help and exit.'
68
+ complete -c pulse -n '__fish_seen_subcommand_from build' -s h -d 'Print public CLI help and exit.'
69
+ complete -c pulse -n '__fish_seen_subcommand_from build' -l json -d 'Emit machine-readable JSON. pulse dev emits one JSON event per line.'
70
+ complete -c pulse -n '__fish_seen_subcommand_from build' -l dry-run -d 'Resolve and report the command plan without executing it.'
71
+ complete -c pulse -n '__fish_seen_subcommand_from build' -l plan -d 'Resolve and report the command plan without executing it.'
72
+ complete -c pulse -n '__fish_seen_subcommand_from build' -l clean -d 'Remove or preserve the selected output directory before writing artifacts. Cleaning is enabled by default.'
73
+ complete -c pulse -n '__fish_seen_subcommand_from build' -l no-clean -d 'Remove or preserve the selected output directory before writing artifacts. Cleaning is enabled by default.'
74
+ complete -c pulse -n '__fish_seen_subcommand_from build' -l experimental-native-size -d 'Experimentally optimize Native Wasm for size. JavaScript build targets reject this flag.'
75
+ complete -c pulse -n '__fish_seen_subcommand_from build' -l profile -r -d 'Select a project profile. Precedence: --profile, PULSE_PROFILE, pulse.defaultProfile.'
76
+ complete -c pulse -n '__fish_seen_subcommand_from build' -l out -r -d 'Override the project-relative artifact output directory.'
package/docs/README.md ADDED
@@ -0,0 +1,77 @@
1
+ # Pulse documentation
2
+
3
+ Pulse documentation is organized in layers so you can stop when you have enough detail. The `1.0.0-beta.1` candidate uses async-shaped managed handlers, trusted Pulse effects, a conventional `.pulse/config.ts` workspace, and the `pulse` CLI. The synchronized 18-package release catalog remains the authority for npm availability and support tiers.
4
+
5
+ ## 1. Start and ship a first project
6
+
7
+ 1. [Getting started](./getting-started.md) — install and create a first project.
8
+ 2. [Project lifecycle](./guides/project-lifecycle.md) — the normal `init → doctor → test → dev → build` journey and the advanced `inspect`/`compile` branches.
9
+ 3. [Beta scope](./preview-scope.md) — what the release guarantees and deliberately excludes.
10
+ 4. [Canonical examples](./examples.md) — nine source-bound projects,
11
+ including focused Entities, events, and MCP proxy shapes.
12
+
13
+ ## 2. Follow a task-oriented guide
14
+
15
+ - [Migrate an Express service](./guides/migrating-from-express.md)
16
+ - [Fetching and composing data](./guides/fetching-and-composition.md)
17
+ - [Explicit JSON schemas](./guides/json-schemas.md)
18
+ - [Static events and outbound emission](./guides/events.md)
19
+ - [Fastly config, secrets, and KV](./guides/fastly-capabilities.md)
20
+ - [GRIP and Fanout](./guides/grip.md)
21
+ - [Compatibility imports and migration](./guides/compatibility-imports.md)
22
+ - [Static Router authoring](./guides/routing.md)
23
+ - [Node build and execution](./guides/deploying-node.md)
24
+ - [Fastly deployment candidates](./guides/deploying-fastly.md)
25
+ - [Troubleshooting](./guides/troubleshooting.md)
26
+
27
+ ## 3. Understand the model
28
+
29
+ - [Compilation and lowering](./concepts/compilation-and-lowering.md)
30
+ - [Effects and continuations](./concepts/effects-and-continuations.md)
31
+ - [Structured and opaque bodies](./concepts/bodies.md)
32
+ - [Contracts and providers](./concepts/contracts-and-providers.md)
33
+ - [Targets and host work](./concepts/targets-and-hosts.md)
34
+ - [Package-owned lowering](./concepts/package-owned-lowering.md)
35
+ - [Entity engine, adapters, and facades](./concepts/entities-and-adapters.md)
36
+ - [Architecture overview](./architecture/overview.md)
37
+ - [Current architecture contracts](./architecture/current-contracts.md)
38
+ - [Architecture vision](./architecture/vision.md)
39
+
40
+ ## 4. Use a package directly
41
+
42
+ - [`@pulse-compute/pulse`](./packages/pulse.md)
43
+ - [`@pulse-compute/runtime`](./packages/runtime.md)
44
+ - [`@pulse-compute/cli`](./packages/cli.md)
45
+ - [`@pulse-compute/provider-fastly`](./packages/provider-fastly.md)
46
+ - [`@pulse-compute/grip`](./packages/grip.md)
47
+ - [`@pulse-compute/assets`](./packages/assets.md)
48
+ - [`@pulse-compute/crypto`](./packages/crypto.md)
49
+ - [`@pulse-compute/jwt`](./packages/jwt.md)
50
+ - [`@pulse-compute/entities`](./packages/entities.md)
51
+ - [All package support tiers](./packages/README.md)
52
+ - [Implementation packages](./packages/implementation-packages.md)
53
+
54
+ ## 5. Look up exact behavior
55
+
56
+ - [Reference overview](./reference/README.md)
57
+ - [Canonical API](../API.md)
58
+ - [Provider and target compatibility](./reference/compatibility-matrix.md)
59
+ - [Managed handler TypeScript and JavaScript](./reference/handler-authoring.md)
60
+ - [CLI](./reference/cli.md)
61
+ - [Project configuration](./reference/project-config.md)
62
+ - [Diagnostics and remediation](./reference/diagnostics.md)
63
+ - [Environment variables](./reference/environment.md)
64
+ - [Shell completion](./reference/shell-completion.md)
65
+ - [CLI machine specification](./reference/cli-spec.json)
66
+ - [Project configuration JSON Schema bundle](./reference/project-config.schema.json)
67
+
68
+ ## 6. Authors and contributors
69
+
70
+ - [Pulse-aware package authoring](./contributing/pulse-aware-packages.md)
71
+ - [Contributor guide index](./contributing/README.md)
72
+ - [Package-owned lowerer contract](./contributing/package-lowerer-contract.md)
73
+ - [Add a first-party package-owned lowerer](./contributing/adding-first-party-lowerer.md)
74
+ - [Entities lowering maintainer reference](./contributing/entities-lowering.md)
75
+ - [Add a core provider](./contributing/adding-core-provider.md)
76
+ - [Changelog](../CHANGELOG.md)
77
+ - [Package support and extension boundaries](./packages/README.md)