agent-first-data 0.29.2 → 0.30.0

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.
@@ -35,6 +35,28 @@
35
35
  "lifecycle_output": {
36
36
  "$ref": "#/$defs/output"
37
37
  },
38
+ "exit_codes": {
39
+ "type": "array",
40
+ "description": "Exit codes this CLI returns beyond AFDATA's 0/1/2, rendered into the reference's exit-code table. 0/1/2 are AFDATA's own and may not be redeclared.",
41
+ "items": {
42
+ "type": "object",
43
+ "additionalProperties": false,
44
+ "required": [
45
+ "code",
46
+ "meaning"
47
+ ],
48
+ "properties": {
49
+ "code": {
50
+ "type": "integer",
51
+ "minimum": 3,
52
+ "maximum": 255
53
+ },
54
+ "meaning": {
55
+ "$ref": "#/$defs/nonEmpty"
56
+ }
57
+ }
58
+ }
59
+ },
38
60
  "commands": {
39
61
  "type": "array",
40
62
  "minItems": 1,
package/dist/format.js CHANGED
@@ -774,7 +774,13 @@ function redactSecrets(value, context = DEFAULT_CONTEXT, depth = 0) {
774
774
  for (const k of Object.keys(value)) {
775
775
  const v = value[k];
776
776
  if (isSecretKey(k, context.secretNames)) {
777
- value[k] = REDACTED_MARKER;
777
+ // A null secret is an absent secret. Masking it would manufacture the
778
+ // appearance of a configured credential — readers cannot tell
779
+ // "***"-because-set from "***"-because-null. Redaction hides a value
780
+ // that exists; it does not invent one.
781
+ if (v !== null) {
782
+ value[k] = REDACTED_MARKER;
783
+ }
778
784
  }
779
785
  else if (keyHasUrlSuffix(k)) {
780
786
  if (typeof v === "string") {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "agent-first-data",
3
- "version": "0.29.2",
3
+ "version": "0.30.0",
4
4
  "description": "A naming convention that lets AI agents understand your data without being told what it means, plus a CLI and library for reading Markdown structure and safely editing structured JSON, TOML, YAML, dotenv, and INI documents.",
5
5
  "license": "MIT",
6
6
  "repository": {