@groundnuty/macf 0.2.21 → 0.2.23

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.
@@ -1,4 +1,4 @@
1
1
  {
2
- "commit": "09ffe6fde18d7c632ded0cca08d7c6a31e02a154",
3
- "built_at": "2026-05-04T17:46:55.150Z"
2
+ "commit": "404cf1ee5173d477e7e6953b364807101954897b",
3
+ "built_at": "2026-05-18T12:47:09.617Z"
4
4
  }
@@ -89,17 +89,33 @@ export declare function generateEnvRegistry(config: MacfAgentConfig): string;
89
89
  /**
90
90
  * Generate `.claude/.macf/env.telemetry` content.
91
91
  *
92
- * The 3 OTel mandatory gates + per-signal exporters + endpoint resolution.
93
- * Mirrors `claude-sh.ts`'s `otelTelemetryLines` (including the same
94
- * shell-unsafe-char rejection on MACF_OTEL_ENDPOINT and the same default
95
- * endpoint `http://localhost:14318` per macf-devops-toolkit canonical k3d
96
- * topology).
92
+ * The 3 OTel mandatory gates + per-signal exporters + endpoint resolution
93
+ * + identity-bearing OTel resource attributes (macf#357). Mirrors
94
+ * `claude-sh.ts`'s `otelTelemetryLines` (including the same shell-unsafe-
95
+ * char rejection on MACF_OTEL_ENDPOINT and the same default endpoint
96
+ * `http://localhost:14318` per macf-devops-toolkit canonical k3d topology).
97
97
  *
98
98
  * **Minimal placeholder when `MACF_OTEL_DISABLED=1`** (operator opt-out at
99
99
  * template-time per macf#197). Body shrinks to header + schema_version +
100
100
  * a comment explaining the opt-out — no OTel exports emitted, so sourcing
101
101
  * the file is a no-op.
102
102
  *
103
+ * **Resource-attribute composition (macf#357).** OTEL_RESOURCE_ATTRIBUTES
104
+ * uses shell-variable expansion (`${MACF_PROJECT}`, `${MACF_AGENT_NAME}`,
105
+ * etc.) rather than baked literals, because env.identity + env.registry
106
+ * source FIRST per the alphabetical glob in claude.sh (`env._helpers` →
107
+ * `env.certs` → `env.github` → `env.identity` → `env.registry` →
108
+ * `env.telemetry` → `env.tmux` — `te` < `tm` on the second char). All
109
+ * identity / registry-mode vars are already exported when this file
110
+ * sources, so the `${VAR}` expansions resolve at export-time.
111
+ *
112
+ * `MACF_VERSION` is the only baked-as-literal value: it's the macf CLI
113
+ * version pinned in `.macf/macf-agent.json` `versions.cli` at this
114
+ * workspace's last `macf init` / `macf update`. Substrate / hand-
115
+ * configured workspaces (no `versions` block) get `MACF_VERSION=unknown`
116
+ * so OTEL_RESOURCE_ATTRIBUTES gets a clean label rather than an empty
117
+ * string.
118
+ *
103
119
  * @param env — defaults to `process.env`; tests inject a fake.
104
120
  */
105
121
  export declare function generateEnvTelemetry(config: MacfAgentConfig, env?: NodeJS.ProcessEnv): string;
@@ -1 +1 @@
1
- {"version":3,"file":"env-files.d.ts","sourceRoot":"","sources":["../../src/cli/env-files.ts"],"names":[],"mappings":"AAyCA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAiHnD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6BG;AACH,wBAAgB,kBAAkB,IAAI,MAAM,CAwB3C;AAMD;;;;;;;;;;;;;;;;;;;;;;GAsBG;AACH,wBAAgB,mBAAmB,CAAC,MAAM,EAAE,eAAe,GAAG,MAAM,CA6BnE;AAMD;;;;;;;;;;;;;GAaG;AACH,wBAAgB,iBAAiB,CAAC,MAAM,EAAE,eAAe,GAAG,MAAM,CAkEjE;AAMD;;;;;;;GAOG;AACH,wBAAgB,gBAAgB,CAAC,MAAM,EAAE,eAAe,GAAG,MAAM,CA+BhE;AAMD;;;;;;GAMG;AACH,wBAAgB,mBAAmB,CAAC,MAAM,EAAE,eAAe,GAAG,MAAM,CAuCnE;AAMD;;;;;;;;;;;;;;;GAeG;AACH,wBAAgB,oBAAoB,CAClC,MAAM,EAAE,eAAe,EACvB,GAAG,GAAE,MAAM,CAAC,UAAwB,GACnC,MAAM,CA8DR;AAMD;;;;;;;;;;;GAWG;AACH,wBAAgB,eAAe,CAAC,MAAM,EAAE,eAAe,GAAG,MAAM,CAiC/D;AAMD;;;;;;;;GAQG;AACH,MAAM,WAAW,mBAAmB;IAClC,QAAQ,CAAC,OAAO,EAAE,SAAS,MAAM,EAAE,CAAC;IACpC,QAAQ,CAAC,OAAO,EAAE,SAAS,MAAM,EAAE,CAAC;CACrC;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAkCG;AACH,wBAAgB,aAAa,CAC3B,UAAU,EAAE,MAAM,EAClB,MAAM,EAAE,eAAe,GACtB,mBAAmB,CA2BrB"}
1
+ {"version":3,"file":"env-files.d.ts","sourceRoot":"","sources":["../../src/cli/env-files.ts"],"names":[],"mappings":"AAyCA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAiHnD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6BG;AACH,wBAAgB,kBAAkB,IAAI,MAAM,CAwB3C;AAMD;;;;;;;;;;;;;;;;;;;;;;GAsBG;AACH,wBAAgB,mBAAmB,CAAC,MAAM,EAAE,eAAe,GAAG,MAAM,CA6BnE;AAMD;;;;;;;;;;;;;GAaG;AACH,wBAAgB,iBAAiB,CAAC,MAAM,EAAE,eAAe,GAAG,MAAM,CAkEjE;AAMD;;;;;;;GAOG;AACH,wBAAgB,gBAAgB,CAAC,MAAM,EAAE,eAAe,GAAG,MAAM,CA+BhE;AAMD;;;;;;GAMG;AACH,wBAAgB,mBAAmB,CAAC,MAAM,EAAE,eAAe,GAAG,MAAM,CAuCnE;AAMD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA+BG;AACH,wBAAgB,oBAAoB,CAClC,MAAM,EAAE,eAAe,EACvB,GAAG,GAAE,MAAM,CAAC,UAAwB,GACnC,MAAM,CAwGR;AAMD;;;;;;;;;;;GAWG;AACH,wBAAgB,eAAe,CAAC,MAAM,EAAE,eAAe,GAAG,MAAM,CAiC/D;AAMD;;;;;;;;GAQG;AACH,MAAM,WAAW,mBAAmB;IAClC,QAAQ,CAAC,OAAO,EAAE,SAAS,MAAM,EAAE,CAAC;IACpC,QAAQ,CAAC,OAAO,EAAE,SAAS,MAAM,EAAE,CAAC;CACrC;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAkCG;AACH,wBAAgB,aAAa,CAC3B,UAAU,EAAE,MAAM,EAClB,MAAM,EAAE,eAAe,GACtB,mBAAmB,CA2BrB"}
@@ -404,17 +404,33 @@ export function generateEnvRegistry(config) {
404
404
  /**
405
405
  * Generate `.claude/.macf/env.telemetry` content.
406
406
  *
407
- * The 3 OTel mandatory gates + per-signal exporters + endpoint resolution.
408
- * Mirrors `claude-sh.ts`'s `otelTelemetryLines` (including the same
409
- * shell-unsafe-char rejection on MACF_OTEL_ENDPOINT and the same default
410
- * endpoint `http://localhost:14318` per macf-devops-toolkit canonical k3d
411
- * topology).
407
+ * The 3 OTel mandatory gates + per-signal exporters + endpoint resolution
408
+ * + identity-bearing OTel resource attributes (macf#357). Mirrors
409
+ * `claude-sh.ts`'s `otelTelemetryLines` (including the same shell-unsafe-
410
+ * char rejection on MACF_OTEL_ENDPOINT and the same default endpoint
411
+ * `http://localhost:14318` per macf-devops-toolkit canonical k3d topology).
412
412
  *
413
413
  * **Minimal placeholder when `MACF_OTEL_DISABLED=1`** (operator opt-out at
414
414
  * template-time per macf#197). Body shrinks to header + schema_version +
415
415
  * a comment explaining the opt-out — no OTel exports emitted, so sourcing
416
416
  * the file is a no-op.
417
417
  *
418
+ * **Resource-attribute composition (macf#357).** OTEL_RESOURCE_ATTRIBUTES
419
+ * uses shell-variable expansion (`${MACF_PROJECT}`, `${MACF_AGENT_NAME}`,
420
+ * etc.) rather than baked literals, because env.identity + env.registry
421
+ * source FIRST per the alphabetical glob in claude.sh (`env._helpers` →
422
+ * `env.certs` → `env.github` → `env.identity` → `env.registry` →
423
+ * `env.telemetry` → `env.tmux` — `te` < `tm` on the second char). All
424
+ * identity / registry-mode vars are already exported when this file
425
+ * sources, so the `${VAR}` expansions resolve at export-time.
426
+ *
427
+ * `MACF_VERSION` is the only baked-as-literal value: it's the macf CLI
428
+ * version pinned in `.macf/macf-agent.json` `versions.cli` at this
429
+ * workspace's last `macf init` / `macf update`. Substrate / hand-
430
+ * configured workspaces (no `versions` block) get `MACF_VERSION=unknown`
431
+ * so OTEL_RESOURCE_ATTRIBUTES gets a clean label rather than an empty
432
+ * string.
433
+ *
418
434
  * @param env — defaults to `process.env`; tests inject a fake.
419
435
  */
420
436
  export function generateEnvTelemetry(config, env = process.env) {
@@ -438,12 +454,40 @@ export function generateEnvTelemetry(config, env = process.env) {
438
454
  `Got: ${JSON.stringify(endpoint)}. ` +
439
455
  `Expected a plain URL like http://host:port.`);
440
456
  }
457
+ // macf#357: bake the macf CLI version pinned for this workspace. Reads
458
+ // `versions.cli` from `.macf/macf-agent.json` (resolved at `macf init`
459
+ // / `macf update`). Falls back to literal "unknown" if the workspace
460
+ // is pre-P6 / hand-configured / lacks the versions block — keeps the
461
+ // OTel resource attribute well-formed (no empty-string label that
462
+ // Prometheus / Tempo would render as missing-but-not-absent).
463
+ const macfVersion = config.versions?.cli ?? 'unknown';
464
+ // OTEL_RESOURCE_ATTRIBUTES — the new attribute set per macf#357.
465
+ // Shell-var expansion at export time pulls identity from env.identity +
466
+ // registry-mode from env.registry (both source before this file per
467
+ // alphabetical glob). `host.name` uses `hostname -s` for the short
468
+ // form (consistent with the convention OTel resource detectors emit).
469
+ // `service.instance.id` is `<project>-<agent>@<host>` — distinguishes
470
+ // same-named agents on different hosts (PPAM macbook vs VM substrate).
471
+ // `macf.framework=macf` is the designed "all macf agents" single-label
472
+ // filter; replaces the accidental reliance on `service.namespace=macf`
473
+ // (which now correctly carries the project, not the framework).
474
+ const resourceAttrs = [
475
+ 'service.namespace=${MACF_PROJECT}',
476
+ 'service.version=${MACF_VERSION:-unknown}',
477
+ 'service.instance.id=${MACF_PROJECT}-${MACF_AGENT_NAME}@$(hostname -s)',
478
+ 'host.name=$(hostname -s)',
479
+ 'gen_ai.agent.name=${MACF_AGENT_NAME}',
480
+ 'gen_ai.agent.role=${MACF_AGENT_ROLE}',
481
+ 'macf.framework=macf',
482
+ 'macf.agent.type=${MACF_AGENT_TYPE}',
483
+ 'macf.registry.type=${MACF_REGISTRY_TYPE}',
484
+ ].join(',');
441
485
  const body = [
442
486
  '# Generator: generateEnvTelemetry (env-files.ts)',
443
487
  '#',
444
488
  '# Claude Code native OTEL telemetry → observability stack',
445
- '# (macf#197 + macf#245). Three telemetry signal gates — each',
446
- '# independent, ALL required for the corresponding signal to emit:',
489
+ '# (macf#197 + macf#245 + macf#357). Three telemetry signal gates —',
490
+ '# each independent, ALL required for the corresponding signal to emit:',
447
491
  '# CLAUDE_CODE_ENABLE_TELEMETRY — master telemetry gate',
448
492
  '# CLAUDE_CODE_ENHANCED_TELEMETRY_BETA — additional gate for traces',
449
493
  '# OTEL_TRACES_EXPORTER=otlp — emit traces',
@@ -458,20 +502,32 @@ export function generateEnvTelemetry(config, env = process.env) {
458
502
  '# `macf update` bakes a different default into this file',
459
503
  '# - Run-time: OTEL_EXPORTER_OTLP_ENDPOINT=<url> in the shell',
460
504
  '# BEFORE invoking ./claude.sh overrides the baked default',
505
+ '#',
506
+ '# OTEL_RESOURCE_ATTRIBUTES (macf#357): identity-bearing labels keyed',
507
+ '# off env.identity + env.registry exports. service.namespace carries',
508
+ '# the project (not the framework — reserve macf.framework=macf for',
509
+ '# the "all macf agents" filter). service.version baked from',
510
+ '# .macf/macf-agent.json `versions.cli` at template-write time;',
511
+ '# unknown when the workspace is pre-P6.',
461
512
  'export CLAUDE_CODE_ENABLE_TELEMETRY=1',
462
513
  'export CLAUDE_CODE_ENHANCED_TELEMETRY_BETA=1',
463
514
  'export OTEL_TRACES_EXPORTER=otlp',
464
515
  'export OTEL_METRICS_EXPORTER=otlp',
465
516
  'export OTEL_LOGS_EXPORTER=otlp',
466
517
  // 4-layer endpoint resolution chain (macf#313). Requires
467
- // macf_settings_get to be defined upstream — env.identity defines it,
468
- // and PR-B's claude.sh sources env.identity before env.telemetry.
518
+ // macf_settings_get to be defined upstream — env._helpers defines it,
519
+ // and PR-B's claude.sh sources env._helpers before env.telemetry.
469
520
  `MACF_OTEL_ENDPOINT="\${MACF_OTEL_ENDPOINT:-$(macf_settings_get MACF_OTEL_ENDPOINT)}"`,
470
521
  `MACF_OTEL_ENDPOINT="\${MACF_OTEL_ENDPOINT:-${endpoint}}"`,
471
522
  'export OTEL_EXPORTER_OTLP_ENDPOINT="${OTEL_EXPORTER_OTLP_ENDPOINT:-$MACF_OTEL_ENDPOINT}"',
472
523
  'export OTEL_EXPORTER_OTLP_PROTOCOL=http/protobuf',
473
- `export OTEL_SERVICE_NAME="macf-agent-${config.agent_name}"`,
474
- `export OTEL_RESOURCE_ATTRIBUTES="gen_ai.agent.name=${config.agent_name},gen_ai.agent.role=${config.agent_role},service.namespace=macf"`,
524
+ // macf#357: MACF_VERSION baked literal — workspace's pinned CLI
525
+ // version. Falls back to "unknown" via ${MACF_VERSION:-unknown} in
526
+ // the resource-attrs string so substrate workspaces produce a
527
+ // well-formed label even without re-running macf update.
528
+ `export MACF_VERSION="${macfVersion}"`,
529
+ `export OTEL_SERVICE_NAME="macf-agent-\${MACF_AGENT_NAME}"`,
530
+ `export OTEL_RESOURCE_ATTRIBUTES="${resourceAttrs}"`,
475
531
  ];
476
532
  return assemble(operatorHeaderLines('generateEnvTelemetry'), body);
477
533
  }
@@ -1 +1 @@
1
- {"version":3,"file":"env-files.js","sourceRoot":"","sources":["../../src/cli/env-files.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"env-files.js","sourceRoot":"","sources":["../../src/cli/env-files.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@groundnuty/macf",
3
- "version": "0.2.21",
3
+ "version": "0.2.23",
4
4
  "description": "Multi-Agent Coordination Framework CLI — coordinate Claude Code agents via GitHub. Installs as `macf` binary; use `macf init` to set up an agent workspace, `macf update` to refresh rules + version pins.",
5
5
  "type": "module",
6
6
  "main": "dist/index.js",
@@ -35,7 +35,7 @@
35
35
  "test:watch": "vitest"
36
36
  },
37
37
  "dependencies": {
38
- "@groundnuty/macf-core": "0.2.21",
38
+ "@groundnuty/macf-core": "0.2.23",
39
39
  "commander": "^14.0.3",
40
40
  "reflect-metadata": "^0.2.2",
41
41
  "zod": "^4.0.0"
@@ -148,14 +148,22 @@ COMMENT_AUTHOR=$(gh issue view N --json comments --jq '.comments[-1].author.logi
148
148
 
149
149
  ### Pattern B — Pre-flight state validation
150
150
 
151
- Before the operation, validate that the precondition for the good path holds:
151
+ Before the operation, validate that the precondition for the good path holds. **Validate the full shape of the state, not just a coarse prefix** — coarse-grained checks admit malformed-but-prefix-conformant values that satisfy the gate but violate the actual contract.
152
152
 
153
153
  ```bash
154
- # Token prefix check before gh ops
154
+ # WRONG: prefix-only check admits values like "ghs_; rm -rf x" through
155
155
  [[ "$GH_TOKEN" == ghs_* ]] || { echo "FATAL: bad token"; exit 1; }
156
156
  gh ...
157
+
158
+ # RIGHT: shape validation — restricts to the actual installation-token alphabet
159
+ [[ "$GH_TOKEN" =~ ^ghs_[A-Za-z0-9_]+$ ]] || { echo "FATAL: bad token shape"; exit 1; }
160
+ gh ...
157
161
  ```
158
162
 
163
+ **Why this matters:** the §4.4 failure-injection sprint (paper-research §27) found that the deployed `check-gh-token.sh` PreToolUse hook used a substring prefix check (`${GH_TOKEN_VALUE:0:4} == ghs_`), which admitted the injection `GH_TOKEN=ghs_; rm -rf <sentinel>` (first-4-char check passes; full shape contains shell metacharacters). End-to-end attribution was still caught at the gh API boundary (HTTP 401 on a malformed token), so production behavior was unaffected — but Pattern B's specific contract (block-at-the-boundary) was bypassed for that injection class. The hardened regex above (or equivalent full-shape validation) restores the contract.
164
+
165
+ **Coverage-gap classification:** defense-pattern coverage gaps inside the deployed boundary are themselves a sub-class of silent-fallback hazard, distinct from the designed-defense gap the pattern targets. The Pattern B example above is the canonical instance; sister observations may surface in other patterns where coarse-grained checks substitute for full-shape validation. Reviewers extending this catalog should test their patterns' deployed implementations against shape-violation injections, not just contract-violation injections.
166
+
159
167
  ### Pattern C — Heartbeat / activity invariant
160
168
 
161
169
  For routing-style operations, check that recipient state advanced post-delivery: