@varde-flyt/vfac 0.14.1 → 0.15.2

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 (3) hide show
  1. package/README.md +31 -9
  2. package/dist/vfac.mjs +1195 -387
  3. package/package.json +1 -1
package/README.md CHANGED
@@ -26,10 +26,10 @@ vfac guide
26
26
  vfac whoami
27
27
  ```
28
28
 
29
- `doctor` checks the endpoint, which Project this terminal has selected, the API,
30
- whether this client is new enough for the platform it is pointed at, how this
31
- terminal is signed in and what that credential reaches, in that order, and reports
32
- the first thing that is actually wrong. Both ways of signing in count: a Context
29
+ `doctor` checks the endpoint, which Project this terminal has selected and which
30
+ one this command will act in, the API, whether this client is new enough for the
31
+ platform it is pointed at, how this terminal is signed in and what that credential
32
+ reaches, in that order, and reports the first thing that is actually wrong. Both ways of signing in count: a Context
33
33
  Gate exchanged from `VFAC_CREDENTIAL_ID` and `VFAC_CREDENTIAL_SECRET`, or a
34
34
  sign-in from `vfac login` that is still valid. A platform declares the oldest client it supports;
35
35
  below that, `doctor` fails and says so before sending your credential anywhere.
@@ -37,7 +37,10 @@ below that, `doctor` fails and says so before sending your credential anywhere.
37
37
  The selected Project and the Projects your credential reaches are two different
38
38
  lines, and reading the second as the first is the mistake worth naming: a command
39
39
  with no `--project` uses the SELECTED one, and having access to a Project is not
40
- the same as being in it. `doctor` also says so when it has just started a fresh
40
+ the same as being in it. `--project` overrides the selection for one command and
41
+ writes nothing, so `vfac doctor --project prj_…` reports the Project it would act
42
+ in, says the flag is where that came from, and still names what your context has
43
+ selected. `doctor` also says so when it has just started a fresh
41
44
  config because the old one could not be read — the endpoint and Project you had
42
45
  set are gone in that case, and the unreadable file is kept beside it rather than
43
46
  discarded.
@@ -68,7 +71,7 @@ vfac context set --project <projectId>
68
71
 
69
72
  ```sh
70
73
  vfac product list
71
- vfac product show <productId>
74
+ vfac product show <productId> # every setting, and when you must answer it
72
75
  vfac manifest init --product <productId> --name "My resource" > resource.yaml
73
76
  ```
74
77
 
@@ -95,11 +98,28 @@ file pins the release the catalog currently offers. **Plan the run that sets one
95
98
  apply will carry**: `plan` takes the flag exactly as `apply` does, and without it
96
99
  the plan describes a different request.
97
100
 
101
+ `--secret` names a root setting by its name, and a setting inside a group by its
102
+ path — `--secret /upstreamAuth/clientSecret=env:UPSTREAM_CLIENT_SECRET` for the
103
+ `clientSecret` under `upstreamAuth`. `vfac product show` prints that form beside
104
+ EVERY credential the Product declares, with a line saying whether it is required
105
+ of everyone, required when another setting holds a particular value, or required
106
+ because another setting was answered — `dependentRequired` is directional, and
107
+ the line says which way it runs; `vfac manifest init` names the ones required
108
+ outright. A path never names an item of a list: no secret is declared there.
109
+
98
110
  `requiredSecrets` in a plan is what the Product requires for the configuration in
99
111
  your document — not a list of what the platform is missing. It names a credential
100
112
  whether or not this resource already holds one, so it is not a shopping list to
101
113
  act on. `secretsToWrite` is the field that says what this apply would write.
102
114
 
115
+ A credential the Product requires for your document — outright, or because of
116
+ what a setting is set to — that the run neither supplies nor the resource already
117
+ holds is refused by `plan` and `apply` alike, before anything is written: the
118
+ error names every one, by the path `--secret` takes, and the command exits 1. So
119
+ is a credential the run DOES supply whose value the Product's own declaration
120
+ refuses: the error names the setting and the bound it missed, never the value.
121
+ `vfac validate` carries no secrets and refuses none; it lists them.
122
+
103
123
  ### `metadata.key` is the name you choose
104
124
 
105
125
  `manifest init` writes one into the file, derived from `--name`. It is what the
@@ -217,9 +237,11 @@ it.
217
237
  ## For an agent or a pipeline
218
238
 
219
239
  Every command takes `--output json`, and it is the same data rather than a
220
- prettier subset — the human format of `vfac product show` prints a readable
221
- selection on purpose and says so at the foot of its output, and the JSON carries
222
- the whole Product contract.
240
+ prettier subset. The human format of `vfac product show` lists every setting the
241
+ Product declares and says when each must be answered; what it leaves to the JSON
242
+ form is the prose and the value constraints — descriptions, patterns, bounds —
243
+ and it says so at the foot of its output. The JSON carries the whole Product
244
+ contract.
223
245
 
224
246
  ```sh
225
247
  vfac product show <productId> --output json