@intentius/behold 0.18.0 → 0.20.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.
- package/AGENTS.md +377 -76
- package/README.md +238 -190
- package/demos.json +17 -8
- package/dist/cli.js +13118 -11622
- package/example-argo-estate/README.md +8 -8
- package/example-argo-estate/app-a/package.json +2 -2
- package/example-argo-estate/app-b/package.json +2 -2
- package/example-argo-estate/chant.workspace.json +27 -0
- package/example-argo-estate/control-plane/package.json +2 -2
- package/example-argo-estate/package-lock.json +139 -62
- package/example-carve/README.md +14 -14
- package/example-carve/app/package-lock.json +75 -12
- package/example-carve/app/package.json +2 -2
- package/example-carve/legacy-tf/versions.tf +1 -1
- package/example-choudoufu-estate/README.md +4 -4
- package/example-choudoufu-estate/chant.workspace.json +32 -0
- package/example-choudoufu-estate/scripts/choudoufu-up.sh +21 -0
- package/example-flux-estate/README.md +5 -5
- package/example-flux-estate/app-a/package.json +2 -2
- package/example-flux-estate/app-b/package.json +2 -2
- package/example-flux-estate/chant.workspace.json +27 -0
- package/example-flux-estate/control-plane/package.json +2 -2
- package/example-flux-estate/package-lock.json +139 -62
- package/example-k8s/README.md +20 -20
- package/example-k8s/chant.config.ts +1 -1
- package/example-k8s/ops/k3d-apply.op.ts +1 -1
- package/example-k8s/package-lock.json +135 -217
- package/example-k8s/package.json +2 -3
- package/example-terraform-estate/README.md +109 -0
- package/example-terraform-estate/backends/backend.s3.tf +10 -0
- package/example-terraform-estate/chant.workspace.json +22 -0
- package/example-terraform-estate/envs/dev/README.md +5 -0
- package/example-terraform-estate/envs/prod/data.tf +18 -0
- package/example-terraform-estate/envs/prod/network.tf +80 -0
- package/example-terraform-estate/envs/prod/outputs.tf +13 -0
- package/example-terraform-estate/envs/prod/provider.tf +10 -0
- package/example-terraform-estate/envs/prod/services.tf +21 -0
- package/example-terraform-estate/envs/prod/storage.tf +31 -0
- package/example-terraform-estate/envs/prod/variables.tf +17 -0
- package/example-terraform-estate/envs/prod/versions.tf +10 -0
- package/example-terraform-estate/modules/service/main.tf +58 -0
- package/example-terraform-estate/modules/service/outputs.tf +7 -0
- package/example-terraform-estate/modules/service/variables.tf +16 -0
- package/example-terraform-estate/modules/service/versions.tf +10 -0
- package/example-terraform-estate/platform/iam.tf +40 -0
- package/example-terraform-estate/platform/kms.tf +16 -0
- package/example-terraform-estate/platform/outputs.tf +7 -0
- package/example-terraform-estate/platform/variables.tf +10 -0
- package/example-terraform-estate/platform/versions.tf +10 -0
- package/example-writes/README.md +5 -5
- package/example-writes/chant.config.ts +1 -1
- package/example-writes/ops/apply.op.ts +1 -1
- package/example-writes/ops/floci.op.ts +2 -2
- package/example-writes/ops/reconcile.op.ts +1 -1
- package/example-writes/package-lock.json +65 -178
- package/example-writes/package.json +2 -3
- package/package.json +7 -6
- package/web/app.js +439 -34
- package/web/behaviour-scale.js +32 -0
- package/web/behaviour-scale.test.js +39 -0
- package/web/index.html +23 -1
- package/web/pending.js +67 -0
- package/web/pending.test.js +62 -0
- package/web/read-cost.js +49 -0
- package/web/read-cost.test.js +76 -0
- package/web/refresh-queue.js +26 -0
- package/web/refresh-queue.test.js +54 -0
- package/example-choudoufu-estate/.behold.json +0 -8
package/demos.json
CHANGED
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
"demos": [
|
|
3
3
|
{
|
|
4
4
|
"name": "writes",
|
|
5
|
-
"description": "One S3 bucket + policy on a local Floci emulator
|
|
5
|
+
"description": "One S3 bucket + policy on a local Floci emulator — blue to green in five minutes. The default.",
|
|
6
6
|
"source": "bundled",
|
|
7
7
|
"dir": "example-writes",
|
|
8
8
|
"requires": [
|
|
@@ -15,7 +15,7 @@
|
|
|
15
15
|
},
|
|
16
16
|
{
|
|
17
17
|
"name": "k8s",
|
|
18
|
-
"description": "An nginx Deployment + Service on a throwaway k3d cluster
|
|
18
|
+
"description": "An nginx Deployment + Service on a throwaway k3d cluster — runtime children (Pods), field ownership, honest unobserved. Cluster persists across runs; scripts/local/local-down.sh removes it.",
|
|
19
19
|
"source": "bundled",
|
|
20
20
|
"dir": "example-k8s",
|
|
21
21
|
"requires": [
|
|
@@ -31,7 +31,7 @@
|
|
|
31
31
|
},
|
|
32
32
|
{
|
|
33
33
|
"name": "flux-estate",
|
|
34
|
-
"description": "A GitOps estate: a Flux control plane (GitRepository + Kustomizations) plus two app projects, served as one composed estate
|
|
34
|
+
"description": "A GitOps estate: a Flux control plane (GitRepository + Kustomizations) plus two app projects, served as one composed estate — cross-stack sourceRef edges, estate-wide drift, and the namespace join that reads app-b where the control plane's targetNamespace puts it. k3d + Flux, no cloud. scripts/estate-down.sh removes the cluster.",
|
|
35
35
|
"source": "bundled",
|
|
36
36
|
"dir": "example-flux-estate",
|
|
37
37
|
"requires": [
|
|
@@ -51,7 +51,7 @@
|
|
|
51
51
|
},
|
|
52
52
|
{
|
|
53
53
|
"name": "argo-estate",
|
|
54
|
-
"description": "The Argo CD mirror of flux-estate, declared only: an AppProject plus one Application per app project, served with the two apps as one composed estate
|
|
54
|
+
"description": "The Argo CD mirror of flux-estate, declared only: an AppProject plus one Application per app project, served with the two apps as one composed estate — project edges from each Application to the AppProject it names, and each Application's destination namespace drawn as a box holding that app's objects. No cluster, no Argo install, no Docker.",
|
|
55
55
|
"source": "bundled",
|
|
56
56
|
"dir": "example-argo-estate",
|
|
57
57
|
"requires": [],
|
|
@@ -63,9 +63,17 @@
|
|
|
63
63
|
]
|
|
64
64
|
}
|
|
65
65
|
},
|
|
66
|
+
{
|
|
67
|
+
"name": "terraform-estate",
|
|
68
|
+
"description": "A multi-root Terraform estate, declared only: two roots applied separately (envs/prod and platform) plus the shared module both are built on — 37 cards boxed by root, module calls expanded into their own contents, and the two look-alike versions.tf files told apart. Shows what behold does NOT infer as clearly as what it draws: platform declares the KMS key and prod reads it back by alias, and no edge is drawn between them, because both ends carry the same unresolved interpolation (#381). Needs chant's terraform lexicon beside behold, which behold does not install: npm install --no-save @intentius/chant-lexicon-terraform @cdktn/hcl2json (the refusal names the exact line). No cloud, no Docker, no terraform binary.",
|
|
69
|
+
"source": "bundled",
|
|
70
|
+
"dir": "example-terraform-estate",
|
|
71
|
+
"requires": [],
|
|
72
|
+
"serve": {}
|
|
73
|
+
},
|
|
66
74
|
{
|
|
67
75
|
"name": "carve",
|
|
68
|
-
"description": "The peel walkthrough: a half-migrated estate
|
|
76
|
+
"description": "The peel walkthrough: a half-migrated estate — a chant project beside a Terraform one — scored by `chant carve advise`, then a six-step stepper that carves one S3 bucket across the line on camera (advise, pick, emit, bridge, handoff, done). Emit and bridge really run, into the demo copy; the destructive terraform commands stay yours to paste. No cloud, no Docker, no terraform binary.",
|
|
69
77
|
"source": "bundled",
|
|
70
78
|
"dir": "example-carve",
|
|
71
79
|
"requires": [],
|
|
@@ -81,7 +89,7 @@
|
|
|
81
89
|
},
|
|
82
90
|
{
|
|
83
91
|
"name": "choudoufu-estate",
|
|
84
|
-
"description": "A tag-owned estate: four choudoufu estates (an OpenTofu fork whose ownership is two AWS tags) served composed
|
|
92
|
+
"description": "A tag-owned estate: four choudoufu estates (an OpenTofu fork whose ownership is two AWS tags) served composed — the terralith applied to a scratch floci, three team estates whose declared resources are the monolith's (every card `owned by` it, dashed to its card), a cross-estate data-source edge, and a move plan whose `live-mv` lines you run by hand while behold previews with -dry-run and reads the receipt. A card's colour is ownership, not \"nothing changed\": attribute drift is a separate plan read, opt-in through ⌘K → \"Re-check live with plan\". Docker + choudoufu (0.16.0+, or a build from main) on PATH; provider download on first init. scripts/choudoufu-down.sh removes the container.",
|
|
85
93
|
"source": "bundled",
|
|
86
94
|
"dir": "example-choudoufu-estate",
|
|
87
95
|
"requires": [
|
|
@@ -101,13 +109,14 @@
|
|
|
101
109
|
"AWS_ENDPOINT_URL": "http://127.0.0.1:4650",
|
|
102
110
|
"AWS_ACCESS_KEY_ID": "test",
|
|
103
111
|
"AWS_SECRET_ACCESS_KEY": "test",
|
|
104
|
-
"AWS_REGION": "us-east-1"
|
|
112
|
+
"AWS_REGION": "us-east-1",
|
|
113
|
+
"TOFU_LIVE_COLLECT_UNCLAIMED": "1"
|
|
105
114
|
}
|
|
106
115
|
}
|
|
107
116
|
},
|
|
108
117
|
{
|
|
109
118
|
"name": "fountain",
|
|
110
|
-
"description": "The mature estate: self-hosted fountain (a real app) on a throwaway k3d cluster
|
|
119
|
+
"description": "The mature estate: self-hosted fountain (a real app) on a throwaway k3d cluster — tiers (try the ha tier picker), seams, drift, runtime Pods. Clones INTENTIUS/fountain-ops; ~5 minutes, mostly image pulls. `just down` in the clone removes the cluster.",
|
|
111
120
|
"source": "git",
|
|
112
121
|
"repo": "https://github.com/INTENTIUS/fountain-ops",
|
|
113
122
|
"requires": [
|