@awebai/claude-channel 1.4.5 → 1.4.8

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,7 +1,7 @@
1
1
  {
2
2
  "name": "aweb-channel",
3
3
  "description": "aweb agent coordination channel — receive mail, chat, tasks, and control signals from your agent team in real time.",
4
- "version": "1.4.5",
4
+ "version": "1.4.8",
5
5
  "author": {
6
6
  "name": "awebai"
7
7
  },
package/dist/index.js CHANGED
@@ -25691,7 +25691,9 @@ async function resolveConfig(workdir) {
25691
25691
  const certificate = await loadConfiguredTeamCertificate(workdir, teamID, certPath);
25692
25692
  const identity = await readYAML(identityPath);
25693
25693
  const did = computeDIDKey(getPublicKey(signingKey));
25694
- const stableID = (identity?.stable_id || "").trim() || (certificate.member_did_aw || "").trim();
25694
+ const identityStableID = (identity?.stable_id || "").trim();
25695
+ const certificateStableID = (certificate.member_did_aw || "").trim();
25696
+ const stableID = certificateStableID || identityStableID;
25695
25697
  const address = (certificate.member_address || "").trim() || (identity?.address || "").trim();
25696
25698
  const registryURL = (identity?.registry_url || "").trim();
25697
25699
  if ((identity?.did || "").trim() && did !== identity?.did?.trim()) {
@@ -26133,14 +26135,14 @@ function verifyDidKeyResolution(resolution, cached2, nowMs) {
26133
26135
  return { outcome: "HARD_ERROR", error: "log_head seq must be >= 1" };
26134
26136
  }
26135
26137
  if (head.seq === 1) {
26136
- if (head.operation !== "create") {
26137
- return { outcome: "HARD_ERROR", error: "seq=1 requires create operation" };
26138
+ if (head.operation !== "create" && head.operation !== "register_did") {
26139
+ return { outcome: "HARD_ERROR", error: "seq=1 requires create/register_did operation" };
26138
26140
  }
26139
26141
  if (head.prev_entry_hash != null) {
26140
26142
  return { outcome: "HARD_ERROR", error: "seq=1 requires null prev_entry_hash" };
26141
26143
  }
26142
26144
  if (head.previous_did_key != null) {
26143
- return { outcome: "HARD_ERROR", error: "create requires null previous_did_key" };
26145
+ return { outcome: "HARD_ERROR", error: "seq=1 requires null previous_did_key" };
26144
26146
  }
26145
26147
  } else {
26146
26148
  if (!head.prev_entry_hash || !isLowerHex(head.prev_entry_hash)) {
@@ -26406,7 +26408,10 @@ var SenderTrustManager = class {
26406
26408
  if (recipientDID.startsWith("did:aw:")) {
26407
26409
  if (recipientStableID)
26408
26410
  return status;
26409
- return selfStableID ? "identity_mismatch" : status;
26411
+ if (selfStableID) {
26412
+ return recipientDID.toLowerCase() === selfStableID.toLowerCase() ? status : "identity_mismatch";
26413
+ }
26414
+ return status;
26410
26415
  }
26411
26416
  return recipientDID === selfDID ? status : "identity_mismatch";
26412
26417
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@awebai/claude-channel",
3
- "version": "1.4.5",
3
+ "version": "1.4.8",
4
4
  "license": "MIT",
5
5
  "type": "module",
6
6
  "main": "./dist/index.js",
@@ -16,7 +16,9 @@
16
16
  "scripts": {
17
17
  "build": "rm -rf dist && tsc -p tsconfig.json --noEmit && npx esbuild src/index.ts --bundle --platform=node --format=esm --outfile=dist/index.js",
18
18
  "sync-plugin-version": "node -e \"const p=JSON.parse(require('fs').readFileSync('.claude-plugin/plugin.json','utf8')); p.version=require('./package.json').version; require('fs').writeFileSync('.claude-plugin/plugin.json',JSON.stringify(p,null,2)+'\\n')\"",
19
- "prepublishOnly": "npm run build && npm run sync-plugin-version",
19
+ "test:package": "node scripts/check-package-dist.mjs",
20
+ "prepack": "npm run build && npm run sync-plugin-version && npm run test:package",
21
+ "prepublishOnly": "npm run prepack",
20
22
  "test": "vitest run --exclude test/integration.test.ts",
21
23
  "test:integration": "vitest run test/integration.test.ts",
22
24
  "start": "tsx src/index.ts"