@rubytech/create-maxy-code 0.1.451 → 0.1.453

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 (140) hide show
  1. package/dist/__tests__/preserve-house-cloudflare.test.js +81 -2
  2. package/dist/index.js +10 -1
  3. package/dist/preserve-house-cloudflare.js +49 -2
  4. package/package.json +1 -1
  5. package/payload/platform/lib/storage-broker/dist/__tests__/cf-exec.test.js +24 -0
  6. package/payload/platform/lib/storage-broker/dist/__tests__/cf-exec.test.js.map +1 -1
  7. package/payload/platform/lib/storage-broker/dist/__tests__/house-scoped-token.test.d.ts +2 -0
  8. package/payload/platform/lib/storage-broker/dist/__tests__/house-scoped-token.test.d.ts.map +1 -0
  9. package/payload/platform/lib/storage-broker/dist/__tests__/house-scoped-token.test.js +48 -0
  10. package/payload/platform/lib/storage-broker/dist/__tests__/house-scoped-token.test.js.map +1 -0
  11. package/payload/platform/lib/storage-broker/dist/__tests__/remediate.test.js +6 -0
  12. package/payload/platform/lib/storage-broker/dist/__tests__/remediate.test.js.map +1 -1
  13. package/payload/platform/lib/storage-broker/dist/bin/remediate-run.d.ts.map +1 -1
  14. package/payload/platform/lib/storage-broker/dist/bin/remediate-run.js +14 -4
  15. package/payload/platform/lib/storage-broker/dist/bin/remediate-run.js.map +1 -1
  16. package/payload/platform/lib/storage-broker/dist/cf-exec.d.ts +1 -0
  17. package/payload/platform/lib/storage-broker/dist/cf-exec.d.ts.map +1 -1
  18. package/payload/platform/lib/storage-broker/dist/cf-exec.js +18 -0
  19. package/payload/platform/lib/storage-broker/dist/cf-exec.js.map +1 -1
  20. package/payload/platform/lib/storage-broker/dist/house-scoped-token.d.ts +9 -0
  21. package/payload/platform/lib/storage-broker/dist/house-scoped-token.d.ts.map +1 -0
  22. package/payload/platform/lib/storage-broker/dist/house-scoped-token.js +60 -0
  23. package/payload/platform/lib/storage-broker/dist/house-scoped-token.js.map +1 -0
  24. package/payload/platform/lib/storage-broker/dist/index.d.ts +1 -0
  25. package/payload/platform/lib/storage-broker/dist/index.d.ts.map +1 -1
  26. package/payload/platform/lib/storage-broker/dist/index.js +1 -0
  27. package/payload/platform/lib/storage-broker/dist/index.js.map +1 -1
  28. package/payload/platform/lib/storage-broker/dist/remediate.d.ts.map +1 -1
  29. package/payload/platform/lib/storage-broker/dist/remediate.js +14 -1
  30. package/payload/platform/lib/storage-broker/dist/remediate.js.map +1 -1
  31. package/payload/platform/lib/storage-broker/src/__tests__/cf-exec.test.ts +28 -1
  32. package/payload/platform/lib/storage-broker/src/__tests__/house-scoped-token.test.ts +48 -0
  33. package/payload/platform/lib/storage-broker/src/__tests__/remediate.test.ts +8 -0
  34. package/payload/platform/lib/storage-broker/src/bin/remediate-run.ts +17 -5
  35. package/payload/platform/lib/storage-broker/src/cf-exec.ts +22 -0
  36. package/payload/platform/lib/storage-broker/src/house-scoped-token.ts +72 -0
  37. package/payload/platform/lib/storage-broker/src/index.ts +1 -0
  38. package/payload/platform/lib/storage-broker/src/remediate.ts +14 -1
  39. package/payload/platform/plugins/admin/PLUGIN.md +1 -0
  40. package/payload/platform/plugins/admin/hooks/__tests__/quote-render-gate.test.sh +107 -0
  41. package/payload/platform/plugins/admin/hooks/quote-render-gate.sh +74 -0
  42. package/payload/platform/plugins/admin/skills/platform-architecture/SKILL.md +4 -4
  43. package/payload/platform/plugins/cloudflare/bin/__tests__/cf-token.test.sh +25 -1
  44. package/payload/platform/plugins/cloudflare/bin/cf-token.sh +9 -1
  45. package/payload/platform/plugins/cloudflare/references/api.md +3 -1
  46. package/payload/platform/plugins/cloudflare/skills/cloudflare/SKILL.md +1 -1
  47. package/payload/platform/plugins/docs/references/outlook-guide.md +3 -3
  48. package/payload/platform/plugins/outlook/.claude-plugin/plugin.json +1 -1
  49. package/payload/platform/plugins/outlook/PLUGIN.md +3 -3
  50. package/payload/platform/plugins/outlook/mcp/dist/__tests__/complete-registration.test.d.ts +2 -0
  51. package/payload/platform/plugins/outlook/mcp/dist/__tests__/complete-registration.test.d.ts.map +1 -0
  52. package/payload/platform/plugins/outlook/mcp/dist/__tests__/complete-registration.test.js +131 -0
  53. package/payload/platform/plugins/outlook/mcp/dist/__tests__/complete-registration.test.js.map +1 -0
  54. package/payload/platform/plugins/outlook/mcp/dist/__tests__/graph-client-paged.test.d.ts +2 -0
  55. package/payload/platform/plugins/outlook/mcp/dist/__tests__/graph-client-paged.test.d.ts.map +1 -0
  56. package/payload/platform/plugins/outlook/mcp/dist/__tests__/graph-client-paged.test.js +55 -0
  57. package/payload/platform/plugins/outlook/mcp/dist/__tests__/graph-client-paged.test.js.map +1 -0
  58. package/payload/platform/plugins/outlook/mcp/dist/__tests__/mail-list-paging.test.d.ts +2 -0
  59. package/payload/platform/plugins/outlook/mcp/dist/__tests__/mail-list-paging.test.d.ts.map +1 -0
  60. package/payload/platform/plugins/outlook/mcp/dist/__tests__/mail-list-paging.test.js +120 -0
  61. package/payload/platform/plugins/outlook/mcp/dist/__tests__/mail-list-paging.test.js.map +1 -0
  62. package/payload/platform/plugins/outlook/mcp/dist/__tests__/mail-search-paging.test.d.ts +2 -0
  63. package/payload/platform/plugins/outlook/mcp/dist/__tests__/mail-search-paging.test.d.ts.map +1 -0
  64. package/payload/platform/plugins/outlook/mcp/dist/__tests__/mail-search-paging.test.js +66 -0
  65. package/payload/platform/plugins/outlook/mcp/dist/__tests__/mail-search-paging.test.js.map +1 -0
  66. package/payload/platform/plugins/outlook/mcp/dist/__tests__/pending-scan.test.d.ts +2 -0
  67. package/payload/platform/plugins/outlook/mcp/dist/__tests__/pending-scan.test.d.ts.map +1 -0
  68. package/payload/platform/plugins/outlook/mcp/dist/__tests__/pending-scan.test.js +48 -0
  69. package/payload/platform/plugins/outlook/mcp/dist/__tests__/pending-scan.test.js.map +1 -0
  70. package/payload/platform/plugins/outlook/mcp/dist/auth/complete-registration.d.ts +31 -0
  71. package/payload/platform/plugins/outlook/mcp/dist/auth/complete-registration.d.ts.map +1 -0
  72. package/payload/platform/plugins/outlook/mcp/dist/auth/complete-registration.js +47 -0
  73. package/payload/platform/plugins/outlook/mcp/dist/auth/complete-registration.js.map +1 -0
  74. package/payload/platform/plugins/outlook/mcp/dist/auth/pending-scan.d.ts +11 -0
  75. package/payload/platform/plugins/outlook/mcp/dist/auth/pending-scan.d.ts.map +1 -0
  76. package/payload/platform/plugins/outlook/mcp/dist/auth/pending-scan.js +31 -0
  77. package/payload/platform/plugins/outlook/mcp/dist/auth/pending-scan.js.map +1 -0
  78. package/payload/platform/plugins/outlook/mcp/dist/index.js +13 -9
  79. package/payload/platform/plugins/outlook/mcp/dist/index.js.map +1 -1
  80. package/payload/platform/plugins/outlook/mcp/dist/lib/graph-client.d.ts +19 -0
  81. package/payload/platform/plugins/outlook/mcp/dist/lib/graph-client.d.ts.map +1 -1
  82. package/payload/platform/plugins/outlook/mcp/dist/lib/graph-client.js +14 -0
  83. package/payload/platform/plugins/outlook/mcp/dist/lib/graph-client.js.map +1 -1
  84. package/payload/platform/plugins/outlook/mcp/dist/scripts/complete-registration.d.ts +2 -0
  85. package/payload/platform/plugins/outlook/mcp/dist/scripts/complete-registration.d.ts.map +1 -0
  86. package/payload/platform/plugins/outlook/mcp/dist/scripts/complete-registration.js +111 -0
  87. package/payload/platform/plugins/outlook/mcp/dist/scripts/complete-registration.js.map +1 -0
  88. package/payload/platform/plugins/outlook/mcp/dist/tools/mail-list.d.ts +16 -1
  89. package/payload/platform/plugins/outlook/mcp/dist/tools/mail-list.d.ts.map +1 -1
  90. package/payload/platform/plugins/outlook/mcp/dist/tools/mail-list.js +37 -7
  91. package/payload/platform/plugins/outlook/mcp/dist/tools/mail-list.js.map +1 -1
  92. package/payload/platform/plugins/outlook/mcp/dist/tools/mail-search.d.ts +12 -1
  93. package/payload/platform/plugins/outlook/mcp/dist/tools/mail-search.d.ts.map +1 -1
  94. package/payload/platform/plugins/outlook/mcp/dist/tools/mail-search.js +16 -12
  95. package/payload/platform/plugins/outlook/mcp/dist/tools/mail-search.js.map +1 -1
  96. package/payload/platform/plugins/outlook/references/auth.md +2 -0
  97. package/payload/platform/plugins/outlook/references/graph-surfaces.md +20 -9
  98. package/payload/platform/plugins/outlook/skills/outlook/SKILL.md +7 -7
  99. package/payload/platform/plugins/scheduling/PLUGIN.md +1 -1
  100. package/payload/platform/plugins/scheduling/mcp/dist/lib/__tests__/house-scoped-token.test.d.ts +2 -0
  101. package/payload/platform/plugins/scheduling/mcp/dist/lib/__tests__/house-scoped-token.test.d.ts.map +1 -0
  102. package/payload/platform/plugins/scheduling/mcp/dist/lib/__tests__/house-scoped-token.test.js +36 -0
  103. package/payload/platform/plugins/scheduling/mcp/dist/lib/__tests__/house-scoped-token.test.js.map +1 -0
  104. package/payload/platform/plugins/scheduling/mcp/dist/lib/house-scoped-token.d.ts +9 -0
  105. package/payload/platform/plugins/scheduling/mcp/dist/lib/house-scoped-token.d.ts.map +1 -0
  106. package/payload/platform/plugins/scheduling/mcp/dist/lib/house-scoped-token.js +51 -0
  107. package/payload/platform/plugins/scheduling/mcp/dist/lib/house-scoped-token.js.map +1 -0
  108. package/payload/platform/plugins/scheduling/mcp/dist/scripts/publish-availability.js +16 -2
  109. package/payload/platform/plugins/scheduling/mcp/dist/scripts/publish-availability.js.map +1 -1
  110. package/payload/platform/plugins/scheduling/mcp/dist/scripts/reconcile-bookings.js +16 -2
  111. package/payload/platform/plugins/scheduling/mcp/dist/scripts/reconcile-bookings.js.map +1 -1
  112. package/payload/platform/scripts/lib/provision-account-dir.sh +6 -0
  113. package/payload/platform/scripts/smoke-boot-services.sh +1 -0
  114. package/payload/platform/scripts/voice-mirror-audit.sh +70 -0
  115. package/payload/platform/services/claude-session-manager/dist/config.d.ts +5 -0
  116. package/payload/platform/services/claude-session-manager/dist/config.d.ts.map +1 -1
  117. package/payload/platform/services/claude-session-manager/dist/config.js +7 -1
  118. package/payload/platform/services/claude-session-manager/dist/config.js.map +1 -1
  119. package/payload/platform/services/claude-session-manager/dist/fs-watcher.d.ts +15 -0
  120. package/payload/platform/services/claude-session-manager/dist/fs-watcher.d.ts.map +1 -1
  121. package/payload/platform/services/claude-session-manager/dist/fs-watcher.js +38 -3
  122. package/payload/platform/services/claude-session-manager/dist/fs-watcher.js.map +1 -1
  123. package/payload/platform/services/claude-session-manager/dist/http-server.d.ts.map +1 -1
  124. package/payload/platform/services/claude-session-manager/dist/http-server.js +21 -10
  125. package/payload/platform/services/claude-session-manager/dist/http-server.js.map +1 -1
  126. package/payload/platform/services/claude-session-manager/dist/index.js +20 -0
  127. package/payload/platform/services/claude-session-manager/dist/index.js.map +1 -1
  128. package/payload/platform/services/claude-session-manager/dist/plugin-enum.d.ts +34 -0
  129. package/payload/platform/services/claude-session-manager/dist/plugin-enum.d.ts.map +1 -0
  130. package/payload/platform/services/claude-session-manager/dist/plugin-enum.js +66 -0
  131. package/payload/platform/services/claude-session-manager/dist/plugin-enum.js.map +1 -0
  132. package/payload/platform/services/claude-session-manager/dist/pty-spawner.d.ts.map +1 -1
  133. package/payload/platform/services/claude-session-manager/dist/pty-spawner.js +8 -1
  134. package/payload/platform/services/claude-session-manager/dist/pty-spawner.js.map +1 -1
  135. package/payload/platform/services/claude-session-manager/dist/rc-daemon.d.ts.map +1 -1
  136. package/payload/platform/services/claude-session-manager/dist/rc-daemon.js +7 -0
  137. package/payload/platform/services/claude-session-manager/dist/rc-daemon.js.map +1 -1
  138. package/payload/server/{chunk-TTKYHVA7.js → chunk-SDYRKIYY.js} +70 -3
  139. package/payload/server/server.js +59 -10
  140. package/payload/server/{src-FBUXV2FV.js → src-554BYJMN.js} +5 -1
@@ -114,11 +114,10 @@ import {
114
114
  import {
115
115
  authorizeAccess,
116
116
  listResources,
117
- makeCfExec,
118
- readHouseCredential,
117
+ makeHouseCfExec,
119
118
  registerResource,
120
119
  resolveOwner
121
- } from "./chunk-TTKYHVA7.js";
120
+ } from "./chunk-SDYRKIYY.js";
122
121
  import {
123
122
  __commonJS,
124
123
  __toESM
@@ -1448,7 +1447,7 @@ var serveStatic = (options = { root: "" }) => {
1448
1447
  };
1449
1448
 
1450
1449
  // server/index.ts
1451
- import { readFileSync as readFileSync38, existsSync as existsSync36, watchFile } from "fs";
1450
+ import { readFileSync as readFileSync38, existsSync as existsSync36, watchFile, readdirSync as readdirSync21, statSync as statSync14 } from "fs";
1452
1451
  import { spawn as spawn3 } from "child_process";
1453
1452
  import { createHash as createHash7 } from "crypto";
1454
1453
  import { resolve as resolve35, join as join38, basename as basename12 } from "path";
@@ -8583,7 +8582,7 @@ function log(action, kind, account, target, owner, result) {
8583
8582
  );
8584
8583
  }
8585
8584
  function cfExec() {
8586
- return makeCfExec(readHouseCredential(platformRoot()));
8585
+ return makeHouseCfExec(platformRoot());
8587
8586
  }
8588
8587
  app3.get("/d1/list", async (c) => {
8589
8588
  const account = caller(c);
@@ -8611,7 +8610,7 @@ app3.post("/d1/create", async (c) => {
8611
8610
  log("write", "d1", account, name, existing, "deny");
8612
8611
  return c.json({ error: "cross-account" }, 403);
8613
8612
  }
8614
- const created = await cfExec().d1Create(name);
8613
+ const created = await (await cfExec()).d1Create(name);
8615
8614
  await registerResource(session, { accountId: account, kind: "d1", name, cfResourceId: created.uuid });
8616
8615
  log("write", "d1", account, name, account, "allow");
8617
8616
  return c.json({ database: { name, uuid: created.uuid } });
@@ -8633,7 +8632,7 @@ app3.post("/d1/query", async (c) => {
8633
8632
  const decision = authorizeAccess({ caller: account, owner, action: "read" });
8634
8633
  log("read", "d1", account, name, owner, decision.allow ? "allow" : "deny");
8635
8634
  if (!decision.allow) return c.json({ error: decision.reason }, 403);
8636
- const result = await cfExec().d1Query(name, sql);
8635
+ const result = await (await cfExec()).d1Query(name, sql);
8637
8636
  return c.json({ result });
8638
8637
  } catch (err) {
8639
8638
  return c.json({ error: String(err) }, 500);
@@ -8667,7 +8666,7 @@ app3.post("/r2/create", async (c) => {
8667
8666
  log("write", "r2", account, name, existing, "deny");
8668
8667
  return c.json({ error: "cross-account" }, 403);
8669
8668
  }
8670
- await cfExec().r2Create(name);
8669
+ await (await cfExec()).r2Create(name);
8671
8670
  await registerResource(session, { accountId: account, kind: "r2", name, cfResourceId: name });
8672
8671
  log("write", "r2", account, name, account, "allow");
8673
8672
  return c.json({ bucket: { name } });
@@ -8679,10 +8678,10 @@ app3.post("/r2/create", async (c) => {
8679
8678
  });
8680
8679
  var storage_broker_default = app3;
8681
8680
  async function runStorageAudit(root) {
8682
- const { reconcileStorage } = await import("./src-FBUXV2FV.js");
8681
+ const { reconcileStorage } = await import("./src-554BYJMN.js");
8683
8682
  const session = getSession();
8684
8683
  try {
8685
- const cf = makeCfExec(readHouseCredential(root));
8684
+ const cf = await makeHouseCfExec(root);
8686
8685
  const accountsDir = resolve11(root, "..", "data", "accounts");
8687
8686
  const strays = (await reconcileStorage({
8688
8687
  cfD1: async () => (await cf.d1List()).map((d) => d.name),
@@ -26756,6 +26755,56 @@ console.log(`${BRAND.productName} listening on http://${hostname}:${port}`);
26756
26755
  const loop = setInterval(runReconcile, RECONCILE_INTERVAL_MS);
26757
26756
  loop.unref();
26758
26757
  }
26758
+ {
26759
+ const outlookPlatformRoot = process.env.MAXY_PLATFORM_ROOT ?? join38(__dirname, "..");
26760
+ const outlookScript = resolve35(outlookPlatformRoot, "plugins/outlook/mcp/dist/scripts/complete-registration.js");
26761
+ const OUTLOOK_COMPLETE_INTERVAL_MS = 3e4;
26762
+ const runOutlookComplete = () => {
26763
+ if (!existsSync36(outlookScript)) return;
26764
+ try {
26765
+ const child = spawn3(process.execPath, [outlookScript], {
26766
+ env: { ...process.env, PLATFORM_ROOT: outlookPlatformRoot },
26767
+ stdio: "inherit"
26768
+ });
26769
+ child.unref();
26770
+ child.on("error", (err) => console.error(`[outlook-complete] spawn-failed err="${err.message}"`));
26771
+ } catch (err) {
26772
+ console.error(`[outlook-complete] spawn-failed err="${err.message}"`);
26773
+ }
26774
+ };
26775
+ const outlookFirst = setTimeout(runOutlookComplete, 18e3);
26776
+ outlookFirst.unref();
26777
+ const outlookLoop = setInterval(runOutlookComplete, OUTLOOK_COMPLETE_INTERVAL_MS);
26778
+ outlookLoop.unref();
26779
+ }
26780
+ {
26781
+ const auditRoot = process.env.MAXY_PLATFORM_ROOT ?? join38(__dirname, "..");
26782
+ const strandedAccountsDir = resolve35(auditRoot, "..", "data/accounts");
26783
+ const STRANDED_AUDIT_INTERVAL_MS = 3e5;
26784
+ const STRANDED_AGE_MS = 16 * 6e4;
26785
+ const STRANDED_UUID_RE = /^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$/i;
26786
+ const runStrandedAudit = () => {
26787
+ try {
26788
+ if (!existsSync36(strandedAccountsDir)) return;
26789
+ const now = Date.now();
26790
+ for (const name of readdirSync21(strandedAccountsDir)) {
26791
+ if (!STRANDED_UUID_RE.test(name)) continue;
26792
+ const pendingPath2 = resolve35(strandedAccountsDir, name, "secrets/outlook/pending-devicecode.enc");
26793
+ if (!existsSync36(pendingPath2)) continue;
26794
+ const ageMs = now - statSync14(pendingPath2).mtimeMs;
26795
+ if (ageMs > STRANDED_AGE_MS) {
26796
+ console.error(`[outlook-mcp] devicecode-stranded account=${name} ageSec=${Math.floor(ageMs / 1e3)}`);
26797
+ }
26798
+ }
26799
+ } catch (err) {
26800
+ console.error(`[outlook-mcp] devicecode-stranded-audit error="${err.message}"`);
26801
+ }
26802
+ };
26803
+ const strandedFirst = setTimeout(runStrandedAudit, 25e3);
26804
+ strandedFirst.unref();
26805
+ const strandedLoop = setInterval(runStrandedAudit, STRANDED_AUDIT_INTERVAL_MS);
26806
+ strandedLoop.unref();
26807
+ }
26759
26808
  {
26760
26809
  const auditPlatformRoot = process.env.MAXY_PLATFORM_ROOT ?? join38(__dirname, "..");
26761
26810
  const STORAGE_AUDIT_INTERVAL_MS = 3e5;
@@ -3,21 +3,25 @@ import {
3
3
  authorizeAccess,
4
4
  listResources,
5
5
  makeCfExec,
6
+ makeHouseCfExec,
6
7
  readHouseCredential,
7
8
  reconcileStorage,
8
9
  registerResource,
10
+ resolveHouseScopedToken,
9
11
  resolveOwner,
10
12
  stripAccountWideTokens,
11
13
  validateMapping
12
- } from "./chunk-TTKYHVA7.js";
14
+ } from "./chunk-SDYRKIYY.js";
13
15
  import "./chunk-PFF6I7KP.js";
14
16
  export {
15
17
  authorizeAccess,
16
18
  listResources,
17
19
  makeCfExec,
20
+ makeHouseCfExec,
18
21
  readHouseCredential,
19
22
  reconcileStorage,
20
23
  registerResource,
24
+ resolveHouseScopedToken,
21
25
  resolveOwner,
22
26
  stripAccountWideTokens,
23
27
  validateMapping