Skip to content

2.4.0#15

Closed
chenliuyun wants to merge 1 commit intomainfrom
release/2.4.0
Closed

2.4.0#15
chenliuyun wants to merge 1 commit intomainfrom
release/2.4.0

Conversation

@chenliuyun
Copy link
Copy Markdown
Collaborator

Bundles 19 OpenClaw/Claude feedback items (P0-P3) plus a new device-history subsystem into a single minor release. All schema changes are additive; no existing fields were removed or renamed.

Highlights:

  • P0: IR verification flag on device commands; set-token argv scrubbing
  • P1: --name subcommand scope, fuzzy name resolution w/ ambiguity contract, compact schema/capabilities, leaf-level agent safety metadata
  • D : JSONL device-history storage + rotation, history range/stats, MCP query_device_history tool
  • P2: stable doctor --json contract, events mqtt-tail control events, batch stagger/concurrency, idempotency replayed + conflict contract, profile label/daily-cap, verbose header redaction + --trace-unsafe
  • P3: quota show alias, tree-wide did-you-mean, schema cliAddedFields, agent-bootstrap aggregate command, --table-style, audit-log versioning + docs/audit-log.md + history verify

832/832 tests pass.

♻️ Current situation

Describe the current situation. Explain current problems, if there are any. Be as descriptive as possible (e.g., including examples or code snippets).

💡 Proposed solution

Describe the proposed solution and changes. How does it affect the project? How does it affect the internal structure (e.g., refactorings)?

⚙️ Release Notes

Provide a summary of the changes or features from a user's point of view. If there are breaking changes, provide migration guides using code examples of the affected features.

➕ Additional Information

If applicable, provide additional context in this section.

Testing

Which tests were added? Which existing tests were adapted/changed? Which situations are covered, and what edge cases are missing?

Reviewer Nudging

Where should the reviewer start? what is a good entry point?

Bundles 19 OpenClaw/Claude feedback items (P0-P3) plus a new device-history
subsystem into a single minor release. All schema changes are additive; no
existing fields were removed or renamed.

Highlights:
- P0: IR verification flag on device commands; set-token argv scrubbing
- P1: --name subcommand scope, fuzzy name resolution w/ ambiguity contract,
      compact schema/capabilities, leaf-level agent safety metadata
- D : JSONL device-history storage + rotation, history range/stats,
      MCP query_device_history tool
- P2: stable doctor --json contract, events mqtt-tail control events,
      batch stagger/concurrency, idempotency replayed + conflict contract,
      profile label/daily-cap, verbose header redaction + --trace-unsafe
- P3: quota show alias, tree-wide did-you-mean, schema cliAddedFields,
      agent-bootstrap aggregate command, --table-style, audit-log versioning
      + docs/audit-log.md + history verify

832/832 tests pass.

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
@chenliuyun chenliuyun closed this Apr 20, 2026
@chenliuyun chenliuyun deleted the release/2.4.0 branch April 20, 2026 04:15
chenliuyun pushed a commit that referenced this pull request Apr 20, 2026
C1 (#14): update --idempotency-key / --idempotency-key-prefix help text
  in devices.ts and batch.ts to mention process-local scope, per-process
  cache semantics, and that independent CLI invocations do not share cache.

C2 (#15): mcp --help "eight tools" → "eleven tools"; list all 11 by name
  including get_device_history, query_device_history, aggregate_device_history.

C3 (#17): add `scenes describe <sceneId>` subcommand. Returns sceneId,
  sceneName, stepCount:null, and a note explaining v1.1 API limitation.
  Exits 2 with scene_not_found + candidate list on unknown sceneId.
  Adds 'scenes describe' to COMMAND_META in capabilities.ts.
  Adds 2 tests (known + unknown scene).

C4 (#13): add JSDoc comment on hints field in agent-bootstrap.ts clarifying
  empty array semantics. Add 'hints' field to cliAddedFields in schema.ts.

C5 (#16): create docs/verbose-redaction.md documenting masked headers
  (authorization, token, sign, nonce, x-api-key, cookie, set-cookie,
  x-auth-token, t) and the --trace-unsafe opt-out flag.

C6 (#18): plan schema output now includes agentNotes.deviceNameStrategy
  documenting that deviceName uses require-unique resolution and plans
  should pin deviceId for determinism.

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
chenliuyun pushed a commit that referenced this pull request Apr 20, 2026
Document every fix landed in this branch beyond the history-aggregate
feature: bugs #1, #4, #5, #6, #8, #9, #10, #11, #12, #13, #14, #15,
#16, #17, #18 from the OpenClaw v2.4.0 smoke-test report. Call out
the deferred items (#2, #7) explicitly so readers don't assume they
were overlooked.

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
chenliuyun pushed a commit that referenced this pull request Apr 20, 2026
C1 (#14): update --idempotency-key / --idempotency-key-prefix help text
  in devices.ts and batch.ts to mention process-local scope, per-process
  cache semantics, and that independent CLI invocations do not share cache.

C2 (#15): mcp --help "eight tools" → "eleven tools"; list all 11 by name
  including get_device_history, query_device_history, aggregate_device_history.

C3 (#17): add `scenes describe <sceneId>` subcommand. Returns sceneId,
  sceneName, stepCount:null, and a note explaining v1.1 API limitation.
  Exits 2 with scene_not_found + candidate list on unknown sceneId.
  Adds 'scenes describe' to COMMAND_META in capabilities.ts.
  Adds 2 tests (known + unknown scene).

C4 (#13): add JSDoc comment on hints field in agent-bootstrap.ts clarifying
  empty array semantics. Add 'hints' field to cliAddedFields in schema.ts.

C5 (#16): create docs/verbose-redaction.md documenting masked headers
  (authorization, token, sign, nonce, x-api-key, cookie, set-cookie,
  x-auth-token, t) and the --trace-unsafe opt-out flag.

C6 (#18): plan schema output now includes agentNotes.deviceNameStrategy
  documenting that deviceName uses require-unique resolution and plans
  should pin deviceId for determinism.
chenliuyun pushed a commit that referenced this pull request Apr 20, 2026
Document every fix landed in this branch beyond the history-aggregate
feature: bugs #1, #4, #5, #6, #8, #9, #10, #11, #12, #13, #14, #15,
#16, #17, #18 from the OpenClaw v2.4.0 smoke-test report. Call out
the deferred items (#2, #7) explicitly so readers don't assume they
were overlooked.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant