Commit Graph

66940 Commits

Author SHA1 Message Date
Alex Knight
e68db3a1b8 fix(config): remove unnecessary dm warning conversion 2026-06-17 18:07:35 +10:00
Alex Knight
57b66b2ec8 fix(config): tighten dm policy warnings 2026-06-17 18:07:35 +10:00
Alex Knight
90e72a67a3 fix(config): resolve DM allowFrom via canonical-or-legacy before warning
The generic dmPolicy/allowFrom warning read only the canonical top-level
allowFrom, so channels that keep their wildcard under the legacy dm.allowFrom
alias (e.g. Discord/Slack, mode=topOnly/topOrNested) got a false 'all DMs
dropped' warning even though runtime honors dm.allowFrom. Resolve policy and
allowFrom through the shared resolveChannelDm* helpers with the channel's
dmAllowFromMode (matching runtime and doctor), and skip nestedOnly channels
whose canonical fields live under dm.* and do not match this warning's
top-level paths. Adds a Discord legacy-alias regression test.

Addresses ClawSweeper review finding P1 (false positives on legacy dm.allowFrom).
2026-06-17 18:07:35 +10:00
Alex Knight
6810c67f0c refactor(config): make DM policy/allowFrom validation generic across channels
Replace the hardcoded Mattermost-only open-DM config check with a generic,
plugin-agnostic warning driven by a single shared evaluator
(evaluateDmPolicyAllowFromDependency) reused by the Zod refinements and the
CLI validator. Surface warnings at 'config validate' and on config load.
Remove the Mattermost-specific status-issues module now covered generically;
keep the runtime drop-log diagnostic.
2026-06-17 18:07:35 +10:00
Alex Knight
ba91eb7acf Fix Mattermost open DM validation 2026-06-17 18:07:35 +10:00
Vincent Koc
c12d921291 refactor(shared): trim helper constants 2026-06-17 16:06:41 +08:00
Vincent Koc
884a6a113c refactor(shared): hide helper option types 2026-06-17 16:03:38 +08:00
Vincent Koc
bed5bf339e fix(sdk): refresh plugin api baseline 2026-06-17 10:00:29 +02:00
Vincent Koc
d1923085e3 refactor(shared): hide parser helper internals 2026-06-17 15:59:58 +08:00
Vincent Koc
3b4808100d refactor(sessions): hide internal helper types 2026-06-17 15:56:51 +08:00
Vincent Koc
0455028a3c refactor(agents): trim session tool internals 2026-06-17 15:53:58 +08:00
Vincent Koc
e0b1cb76e0 refactor(agents): trim session helper exports 2026-06-17 15:50:28 +08:00
Vincent Koc
be4c541176 refactor(agents): trim sandbox helper exports 2026-06-17 15:43:09 +08:00
Vincent Koc
cbf6f0001b refactor(agents): narrow runner harness helper types 2026-06-17 15:38:50 +08:00
heichl_xydigit
bda7581126 fix(feishu): fetch quoted content before empty-message guard (#90192)
* fix(feishu): fetch quoted content before empty-message guard

Moves the quoted/replied message content fetching before the empty-message
early return so a reply with only @bot mention (no text, no media) is not
dropped when it quotes a message with meaningful content. The guard now also
checks that quoted text is empty before skipping.

Note: because the fetch is now unconditional on parentId after passing the
group admission/mention gate, an empty-text reply that quotes a parent in an
open group (requireMention: false) without mentioning the bot will now be
dispatched, where before it was dropped. This is the intended behavior for
open groups — any non-empty turn (including one where context comes from a
quote) should reach the agent. For requireMention:true groups, unmentioned
messages still exit at the mention gate before the fetch, so no over-fetch
occurs.

Adds group-based regression tests for the #90177 scenario:
- Positive: mention-only reply in requireMention:true group with quoted
  parent — dispatches with [Replying to: "..."] in the body.
- Negative: empty reply with no bot mention in requireMention:true group —
  getMessageFeishu is never called and nothing is dispatched.

* fix(feishu): fetch quoted content before empty-message guard (#90192) (thanks @bladin)

---------

Co-authored-by: 黑承亮0668000844 <bladin@users.noreply.github.com>
Co-authored-by: sliverp <870080352@qq.com>
2026-06-17 15:34:23 +08:00
Vincent Koc
e349bdb949 refactor(agents): narrow command helper types 2026-06-17 15:33:16 +08:00
Vincent Koc
768704e906 refactor(agents): hide sqlite cache store internals 2026-06-17 15:30:50 +08:00
Vincent Koc
ba1403604d refactor(agents): remove external auth oauth aliases 2026-06-17 15:28:44 +08:00
Vincent Koc
e939963784 refactor(agents): trim provider config helper exports 2026-06-17 15:26:19 +08:00
Vincent Koc
5ff7242391 refactor(agents): trim live media classifiers 2026-06-17 15:20:09 +08:00
Vincent Koc
c25a4e6d0b refactor(agents): trim runtime constant exports 2026-06-17 15:16:50 +08:00
Vincent Koc
4ea1b4fc4a refactor(agents): trim exec helper exports 2026-06-17 15:13:35 +08:00
Vincent Koc
3881cb3426 refactor(agents): trim media helper exports 2026-06-17 15:10:01 +08:00
Vincent Koc
bfd11ee29f refactor(agents): trim session helper facades 2026-06-17 15:06:19 +08:00
Vincent Koc
664948e7bf refactor(agents): hide tool helper internals 2026-06-17 15:01:41 +08:00
Vincent Koc
8142c12db2 fix(agents): route BTW through canonical Codex runtime (#93881)
Merged via squash.

Prepared head SHA: e88fb50880
Co-authored-by: TurboTheTurtle <35905412+TurboTheTurtle@users.noreply.github.com>
Co-authored-by: vincentkoc <25068+vincentkoc@users.noreply.github.com>
Reviewed-by: @vincentkoc
2026-06-17 14:58:32 +08:00
Vincent Koc
963783e3be refactor(auto-reply): hide command turn helper types 2026-06-17 14:54:41 +08:00
Vincent Koc
283e8cf793 refactor(agents): hide tool provider helper types 2026-06-17 14:49:43 +08:00
Vincent Koc
78f7ef88eb ci: allow longer testbox helper runs 2026-06-17 08:47:42 +02:00
Vincent Koc
abee98feaa refactor(agents): hide media tool helper exports 2026-06-17 14:46:41 +08:00
Vincent Koc
53ff3085f9 refactor(agents): hide sandbox helper types 2026-06-17 14:44:11 +08:00
Vincent Koc
e2fa4f396b refactor(agents): hide settings helper types 2026-06-17 14:39:39 +08:00
Vincent Koc
2d91aaa9ed refactor(agents): hide steering queue types 2026-06-17 14:34:11 +08:00
Vincent Koc
e15dadec64 refactor(agents): drop runtime context re-export 2026-06-17 14:32:08 +08:00
Vincent Koc
18aa327655 refactor(agents): drop preemptive route re-export 2026-06-17 14:30:10 +08:00
Vincent Koc
94e79a052c refactor(agents): hide message merge helper types 2026-06-17 14:28:14 +08:00
Vincent Koc
0804901c11 refactor(agents): hide failover policy types 2026-06-17 14:26:24 +08:00
Vincent Koc
7b03f11084 test(agents): hide spawn workspace support internals 2026-06-17 14:24:22 +08:00
Vincent Koc
812dcc5d4d refactor(agents): hide bootstrap context type 2026-06-17 14:22:17 +08:00
Vincent Koc
0b698709d8 refactor(agents): hide message transform type 2026-06-17 14:14:22 +08:00
Vincent Koc
58ec07c598 refactor(agents): hide bootstrap routing types 2026-06-17 14:12:28 +08:00
Vincent Koc
7aac97c1a9 refactor(agents): hide prompt helper types 2026-06-17 14:09:03 +08:00
Vincent Koc
d9c4f9a964 refactor(agents): hide session owner timeout error 2026-06-17 14:06:55 +08:00
Vincent Koc
f06539d8ba refactor(agents): hide queue message timeout 2026-06-17 14:05:01 +08:00
Vincent Koc
9e3db6bedd refactor(agents): remove unused compaction reserve helper 2026-06-17 14:03:05 +08:00
Vincent Koc
580bba0637 refactor(agents): remove unused transcript runtime helpers 2026-06-17 13:57:07 +08:00
Ayaan Zaidi
68eb5031bd fix(telegram): surface rich-message disabled state 2026-06-17 11:26:52 +05:30
Vincent Koc
aca48b55ad refactor(agents): drop stream resolution test alias 2026-06-17 13:55:05 +08:00
Vincent Koc
69abb2c090 fix(codex): send legacy dynamic tool start specs 2026-06-17 07:54:25 +02:00
Vincent Koc
6ee989a235 refactor(agents): drop stale model alias re-export 2026-06-17 13:53:22 +08:00