@intentius/chant 0.29.0 → 0.31.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.
Files changed (60) hide show
  1. package/dist/cli/handlers/graph.d.ts.map +1 -1
  2. package/dist/cli/handlers/lifecycle.d.ts.map +1 -1
  3. package/dist/cli/main.d.ts.map +1 -1
  4. package/dist/cli/registry.d.ts +14 -0
  5. package/dist/cli/registry.d.ts.map +1 -1
  6. package/dist/codegen/generate.d.ts +16 -0
  7. package/dist/codegen/generate.d.ts.map +1 -1
  8. package/dist/deep-observation.d.ts +257 -0
  9. package/dist/deep-observation.d.ts.map +1 -0
  10. package/dist/discovery/fold-import.d.ts.map +1 -1
  11. package/dist/fold/fold.d.ts +23 -3
  12. package/dist/fold/fold.d.ts.map +1 -1
  13. package/dist/fold/subset.d.ts +9 -0
  14. package/dist/fold/subset.d.ts.map +1 -1
  15. package/dist/graph-ir.d.ts +44 -0
  16. package/dist/graph-ir.d.ts.map +1 -1
  17. package/dist/index.d.ts +1 -0
  18. package/dist/index.d.ts.map +1 -1
  19. package/dist/kubectl-context.d.ts +18 -1
  20. package/dist/kubectl-context.d.ts.map +1 -1
  21. package/dist/lexicon.d.ts +47 -0
  22. package/dist/lexicon.d.ts.map +1 -1
  23. package/dist/lifecycle/deep-diff.d.ts +103 -0
  24. package/dist/lifecycle/deep-diff.d.ts.map +1 -0
  25. package/dist/lifecycle/deep-observe.d.ts +62 -0
  26. package/dist/lifecycle/deep-observe.d.ts.map +1 -0
  27. package/dist/lifecycle/index.d.ts +3 -0
  28. package/dist/lifecycle/index.d.ts.map +1 -1
  29. package/dist/lifecycle/observation-baseline.d.ts +118 -0
  30. package/dist/lifecycle/observation-baseline.d.ts.map +1 -0
  31. package/dist/lifecycle/snapshot.d.ts.map +1 -1
  32. package/package.json +1 -1
  33. package/src/cli/handlers/graph.test.ts +86 -0
  34. package/src/cli/handlers/graph.ts +64 -3
  35. package/src/cli/handlers/lifecycle.test.ts +126 -1
  36. package/src/cli/handlers/lifecycle.ts +184 -3
  37. package/src/cli/main.test.ts +6 -0
  38. package/src/cli/main.ts +12 -0
  39. package/src/cli/registry.ts +14 -0
  40. package/src/codegen/generate.ts +25 -0
  41. package/src/deep-observation.test.ts +234 -0
  42. package/src/deep-observation.ts +489 -0
  43. package/src/discovery/fold-import.test.ts +372 -1
  44. package/src/discovery/fold-import.ts +235 -79
  45. package/src/fold/fold.test.ts +105 -0
  46. package/src/fold/fold.ts +88 -18
  47. package/src/fold/subset.test.ts +38 -7
  48. package/src/fold/subset.ts +9 -0
  49. package/src/graph-ir.ts +47 -0
  50. package/src/index.ts +1 -0
  51. package/src/kubectl-context.ts +22 -2
  52. package/src/lexicon.ts +59 -0
  53. package/src/lifecycle/deep-diff.test.ts +157 -0
  54. package/src/lifecycle/deep-diff.ts +213 -0
  55. package/src/lifecycle/deep-observe.test.ts +174 -0
  56. package/src/lifecycle/deep-observe.ts +173 -0
  57. package/src/lifecycle/index.ts +3 -0
  58. package/src/lifecycle/observation-baseline.test.ts +99 -0
  59. package/src/lifecycle/observation-baseline.ts +217 -0
  60. package/src/lifecycle/snapshot.ts +6 -11
@@ -10,16 +10,11 @@ import { computeBuildDigest } from "./digest";
10
10
  import { writeSnapshot, snapshotStorageKey, getHeadCommit, pushLifecycle } from "./git";
11
11
  import { sortedJsonReplacer } from "../utils";
12
12
  import { formatUnobserved, normalizeObservation, unobservedAll, type UnobservedEntity } from "../observation";
13
-
14
- /** Patterns in attribute names that suggest sensitive data. */
15
- const SENSITIVE_PATTERNS = [
16
- /password/i,
17
- /secret/i,
18
- /token/i,
19
- /private.?key/i,
20
- /credential/i,
21
- /connection.?string/i,
22
- ];
13
+ // One list of secret-bearing property names for both observation depths
14
+ // (#1014): the thin path warns on them here, the deep path masks them before a
15
+ // property tree is ever rendered or committed. Two lists would eventually
16
+ // disagree about what counts as a secret.
17
+ import { isSensitiveKey } from "../deep-observation";
23
18
 
24
19
  /**
25
20
  * Check for potential sensitive data in resource attributes and return warnings.
@@ -31,7 +26,7 @@ function checkSensitiveData(
31
26
  for (const [name, meta] of Object.entries(resources)) {
32
27
  if (!meta.attributes) continue;
33
28
  for (const attrName of Object.keys(meta.attributes)) {
34
- if (SENSITIVE_PATTERNS.some((p) => p.test(attrName))) {
29
+ if (isSensitiveKey(attrName)) {
35
30
  warnings.push(
36
31
  `Potential sensitive data in ${name}.attributes.${attrName} — ensure it is scrubbed`,
37
32
  );