forge-openclaw-plugin 0.2.80 → 0.2.81

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.
@@ -3419,7 +3419,7 @@ const AGENT_ONBOARDING_ENTITY_CONVERSATION_PLAYBOOKS = [
3419
3419
  coachingGoal: "Clarify whether the user wants flow discovery, editing, execution, run history, published outputs, or node-level inspection before using the dedicated workbench route family.",
3420
3420
  askSequence: [
3421
3421
  "Ask what they are trying to learn, repair, publish, or run through Workbench before you narrow to flow discovery, editing, execution, or results.",
3422
- "Ask whether the job is flow discovery, one flow edit, execution, run history, published output, node-level inspection, or latest-node-output lookup.",
3422
+ "Ask whether the job is flow discovery, one flow edit, execution, run history, published output, node-level inspection, latest-node-output lookup, or a follow-up message in a saved flow chat.",
3423
3423
  "Treat saved-flow catalog, box catalog, run history, run detail, node result, latest node output, and published output as internal read lanes. With the user, ask whether they need the saved flow, its input contract, one run, one node, or the public result instead of listing route keys.",
3424
3424
  "Use listFlows for the saved flow catalog and boxCatalog for available input-box contracts; do not collapse both into a vague catalog read.",
3425
3425
  "Ask which flow, slug, run, or node the request is about.",
@@ -5142,7 +5142,7 @@ function buildAgentOnboardingPayload(request) {
5142
5142
  specializedRouteToolExamples: {
5143
5143
  movementAllTime: '{"routeKey":"allTime","query":{"userIds":["user_operator"]}}',
5144
5144
  movementTimeline: '{"routeKey":"timeline","query":{"from":"2026-05-01T00:00:00.000Z","to":"2026-05-06T23:59:59.999Z","userIds":["user_operator"]}}',
5145
- movementSelection: '{"routeKey":"selection","query":{"from":"2026-05-01T00:00:00.000Z","to":"2026-05-14T23:59:59.999Z","placeIds":["place_home"],"userIds":["user_operator"]}}',
5145
+ movementSelection: '{"routeKey":"selection","body":{"from":"2026-05-01T00:00:00.000Z","to":"2026-05-14T23:59:59.999Z","placeIds":["place_home"],"userIds":["user_operator"]}}',
5146
5146
  movementTripDetail: '{"routeKey":"tripDetail","pathParams":{"id":"trip_123"}}',
5147
5147
  movementSettings: '{"routeKey":"settings","query":{"userIds":["user_operator"]}}',
5148
5148
  movementSettingsUpdate: '{"routeKey":"settingsUpdate","body":{"trackingEnabled":true,"publishMode":"draft_review","retentionMode":"aggregates_only"}}',
@@ -2754,9 +2754,21 @@ function parseDeflateBase64ChunkPayload(payloadJsonDeflateBase64, context) {
2754
2754
  }
2755
2755
  let decoded;
2756
2756
  try {
2757
- decoded = inflateSync(compressed);
2757
+ decoded = inflateSync(compressed, {
2758
+ maxOutputLength: HEALTH_MOBILE_SYNC_CHUNK_MAX_BYTES + 1
2759
+ });
2758
2760
  }
2759
2761
  catch (error) {
2762
+ const errorCode = typeof error === "object" && error !== null && "code" in error
2763
+ ? error.code
2764
+ : undefined;
2765
+ if (errorCode === "ERR_BUFFER_TOO_LARGE") {
2766
+ throw new HttpError(413, "chunk_too_large", "The HealthKit sync compressed chunk expands beyond the maximum decoded size.", {
2767
+ maxBytes: HEALTH_MOBILE_SYNC_CHUNK_MAX_BYTES,
2768
+ compressedBytes: compressed.length,
2769
+ mode: HEALTH_MOBILE_SYNC_COMPRESSED_CHUNK_PAYLOAD_ENCODING
2770
+ });
2771
+ }
2760
2772
  console.warn("[healthkit-sync] invalid compressed chunk payload", {
2761
2773
  syncSessionId: context.syncSessionId,
2762
2774
  chunkId: context.chunkId,
@@ -2,7 +2,7 @@
2
2
  "id": "forge-openclaw-plugin",
3
3
  "name": "Forge",
4
4
  "description": "Curated OpenClaw adapter for the Forge collaboration API, UI entrypoint, and localhost auto-start runtime.",
5
- "version": "0.2.80",
5
+ "version": "0.2.81",
6
6
  "activation": {
7
7
  "onStartup": true,
8
8
  "onCapabilities": [
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "forge-openclaw-plugin",
3
- "version": "0.2.80",
3
+ "version": "0.2.81",
4
4
  "description": "Curated OpenClaw adapter for the Forge collaboration API, UI entrypoint, and localhost auto-start runtime.",
5
5
  "type": "module",
6
6
  "license": "Apache-2.0",
@@ -109,7 +109,7 @@ Concrete route-key examples for internal use:
109
109
  - Movement timeline read:
110
110
  `{"routeKey":"timeline","query":{"from":"2026-05-01T00:00:00.000Z","to":"2026-05-06T23:59:59.999Z","userIds":["user_operator"]}}`
111
111
  - Movement selection aggregate:
112
- `{"routeKey":"selection","query":{"from":"2026-05-01T00:00:00.000Z","to":"2026-05-14T23:59:59.999Z","placeIds":["place_home"],"userIds":["user_operator"]}}`
112
+ `{"routeKey":"selection","body":{"from":"2026-05-01T00:00:00.000Z","to":"2026-05-14T23:59:59.999Z","placeIds":["place_home"],"userIds":["user_operator"]}}`
113
113
  - Movement trip detail:
114
114
  `{"routeKey":"tripDetail","pathParams":{"id":"trip_123"}}`
115
115
  - Movement settings read: