slhaf
6ba5784a7f
将 .java 重命名为 .kt
2026-02-08 17:15:58 +08:00
slhaf
cdea8d6322
refactor(ActionData): migrate to Kotlin sealed class and data classes, update planner/scheduler usage
2026-02-08 16:27:44 +08:00
slhaf
8ca2b9998d
将 .java 重命名为 .kt
2026-02-08 16:27:44 +08:00
slhaf
d098b28f31
refactor(ActionExecutorInput): migrate to Kotlin data class
2026-02-08 15:12:10 +08:00
slhaf
98e4d4cf1b
将 .java 重命名为 .kt
2026-02-08 15:12:10 +08:00
slhaf
70489e57f7
chore(pom): add kotlinx-coroutines-test dependency
2026-02-08 14:34:19 +08:00
slhaf
a43c87006e
refactor(ActionCore): replace existing action with same UUID before putAction
2026-02-08 13:29:18 +08:00
slhaf
be43b7eec6
refactor(ActionScheduler): implement Kotlin time-wheel scheduling and requeue scheduled actions after execution
2026-02-08 13:24:56 +08:00
slhaf
3bc2ce839a
将 .java 重命名为 .kt
2026-02-08 13:24:56 +08:00
slhaf
fe5a366527
refactor(ActionExecutor): remove userId from ActionExecutorInput and use source
2026-02-08 11:29:36 +08:00
slhaf
9f724cee5d
chore(pom): remove test scope from coroutines dependency
2026-02-08 11:22:47 +08:00
slhaf
ad58b83020
refactor(ActionExecutor): rename actions variable for clarity
2026-02-08 11:22:30 +08:00
slhaf
c9b64fec2a
chore(pom): add cron-utils dependency
2026-02-07 15:36:45 +08:00
slhaf
0eb4765235
refactor(ActionExecutor): use HistoryAction record and track scheduled history reset
2026-02-07 15:35:34 +08:00
slhaf
050c39cbc7
refactor(ActionExecutor): correct input actions' type in ActionExecutor
2026-02-06 23:38:13 +08:00
slhaf
08100aea8a
refactor(ActionCore): replace prepared action APIs with generic list/put
2026-02-06 21:38:54 +08:00
slhaf
2cd0774834
refactor(ActionCapability): rename listAvailableActions to listAvailableMetaActions
2026-02-06 21:05:10 +08:00
slhaf
12df938d85
refactor(ActionCore): simplify handleInterventions to use ActionData
2026-02-06 20:41:08 +08:00
slhaf
277c0d437f
chore(ActionCore): update comment
2026-02-06 20:36:50 +08:00
slhaf
6b861f4b77
fix(ActionExecutor): correct logic in ActionExecutor when actionChain is empty, which will skip execution
2026-02-05 20:40:02 +08:00
slhaf
d33b6617c1
fix(ActionExecutor): support removing phaserRecord correctly when exception occurred in ActionCorrector
2026-02-05 19:40:28 +08:00
slhaf
a1dcf4a6fa
test(ActionExecutor): test with action failure
2026-02-05 17:05:53 +08:00
slhaf
9c38719514
test(ActionExecutor): test with additionalContext appending
2026-02-05 16:58:22 +08:00
slhaf
33df0fa017
test(ActionExecutor): test with virtual thread pool support
2026-02-05 16:53:38 +08:00
slhaf
08bda84471
refactor(ActionCore): Specifies the minimum platform thread pool size
...
Context:
The ActionExecutor needs at least 2 platform thread to support async action execution,
otherwise the current ActionExecutor logic cannot be executed
2026-02-05 16:49:58 +08:00
slhaf
76da3c29f8
fix(ActionExecutorTest): repair stub in test
2026-02-05 16:13:21 +08:00
slhaf
558b589830
refactor(ActionInterventor): redefine DTOs in ActionInterventor to adapt the actual intervention logic
2026-02-05 15:48:58 +08:00
slhaf
80d7c283c5
refactor(ActionExecutor): update ActionChain execution, support executing and advancing correctly
2026-02-04 00:29:42 +08:00
slhaf
b0bb40c5f0
test(ActionExecutor): add unit test for ActionExecutor
2026-02-01 19:49:21 +08:00
slhaf
eec8f71096
fix(action): correct return type of method runnerClient() in ActionCapability
2026-02-01 16:43:12 +08:00
slhaf
fbd30d1a96
build(maven): import Mockito related dependencies
2026-02-01 14:56:47 +08:00
slhaf
346f925b66
chore(ActionExecutor): update comment
2026-01-31 23:35:17 +08:00
slhaf
04e8d9e531
feat(ActionExecutor): support executing interventions in ActionExecutor
2026-01-30 20:58:12 +08:00
slhaf
63d1552de2
refactor(ActionInterventor): remove InterventionHandler and related data class
...
Context:
Since last commit, the logic of interventions has been moved into ActionCapability,
the InterventionHandler is not needed.
2026-01-30 20:52:36 +08:00
slhaf
77eb9b92a4
refactor(ActionCorrector): move intervention logic from InterventionHandler into ActionCapability
2026-01-30 20:10:01 +08:00
slhaf
a1b4743eeb
feat(ActionCorrector): complete corrector's executing logic
2026-01-30 19:19:48 +08:00
slhaf
0768cddd2d
fix(ActivateModel): correct modelSettings
2026-01-30 16:50:45 +08:00
slhaf
75145cc547
chore(ActionRepairer): correct name of AssemblyHelper
2026-01-30 16:30:10 +08:00
slhaf
d1ca1cda7d
feature(ActionExecutor): complete CorrectorInput
2026-01-28 23:11:45 +08:00
slhaf
fac6609d6b
refactor(ActionExecutor): remove useless method getHistoryActionResults
2026-01-28 23:00:53 +08:00
slhaf
dce8825e58
refactor(ActionExecutor): update type of history field in ActionData
2026-01-28 21:16:51 +08:00
slhaf
cd641ac8dd
fix(ActionExecutor): correct phaser block logic in method execute
2026-01-28 15:38:13 +08:00
slhaf
5ffdab9e4a
refactor(ActionExecutor): rework staged execution and runner submit
...
Context:
This refactor drops unnecessary method abstractions and cleans the action execution flow.
Additionally, method 'run' is renamed to 'submit' in RunnerClient, which better reflects that execution results are held in MetaAction.
2026-01-25 19:38:53 +08:00
slhaf
830503eee4
chore(ActionExecutor): update comments
2026-01-23 19:23:07 +08:00
slhaf
96e74ec877
test(LocalRunnerClient): add test for method run in RunnerClient
2026-01-17 11:28:21 +08:00
slhaf
420d51af15
fix(LocalRunnerClient): harden doRun branches and add tests
2026-01-16 23:28:46 +08:00
slhaf
8ead306b7b
fix(RunnerClient): correct RunnerResponse's visibility
2026-01-16 22:17:15 +08:00
slhaf
c793851107
fix(LocalRunnerClient): support cleaning non-existing MCP Servers' tools while MCP configuration files changed in CommonMcp
2026-01-16 21:48:17 +08:00
slhaf
fb5cabc747
fix(LocalRunnerClient): support read MetaActionInfo according to desc files when an MCP Client with described tools registered by CommonMcp
2026-01-16 21:28:45 +08:00
slhaf
c5f6c4e0ae
fix(LocalRunnerClient): recover desc watcher after root deletion and expand DescMcp tests
2026-01-14 19:57:24 +08:00
slhaf
200c0f3f13
fix(LocalRunnerClient): guard against null tool meta and ignore non-protocol MCP
2026-01-14 16:10:33 +08:00
slhaf
fdf398b86e
fix(LocalRunnerClient): close old MCP client while a new client's name is duplicated with the old one
2026-01-13 23:22:54 +08:00
slhaf
774e2b6cd5
fix(LocalRunnerClient): correct abnormal deleting condition in CommonMcp
2026-01-13 23:13:52 +08:00
slhaf
837a4c92d1
fix(LocalRunnerClient): treat missing action dir as invalid path during DELETE in DynamicMcp
...
Context:
Action directories may already be removed when DELETE events are handled.
Return null from loadFiles to signal invalid paths and lock behavior with DynamicAction watch tests.
2026-01-12 21:46:34 +08:00
slhaf
ddd999d47b
fix(LocalRunnerClient): prevent WatchService event loss caused by concurrent consumers
...
Context:
Shared WatchService with multiple watch threads caused WatchKey events to be consumed by mismatched processors, leading to missed file events.
Use isolated WatchService per WatchContext to restore correct semantics.
2026-01-12 19:46:45 +08:00
slhaf
9694a022c7
chore(gitignore): update gitignore
2026-01-12 19:35:41 +08:00
slhaf
31968c7076
chore(gitignore): create AGENTS.md for codex, and add it to .gitignore
2026-01-12 14:25:20 +08:00
slhaf
abec141e4e
fix(LocalRunnerClient): correct path creating logic in RunnerClient and its implementations
2026-01-11 16:47:14 +08:00
slhaf
cdb6ae9d01
fix(LocalRunnerClient): correct method loadFiles in LocalWatchEventProcessor
2026-01-11 16:30:44 +08:00
slhaf
dd8d86d3c4
chore(LocalRunnerClient): add logs to LocalRunnerClient
2026-01-11 16:27:14 +08:00
slhaf
99b42620d0
refactor(LocalRunnerClient): repair paths registering order and support creating directories automatically
2026-01-11 15:01:19 +08:00
slhaf
70b8335d49
feat(LocalRunnerClient): support atomic persist serialization in LocalRunnerClient
2026-01-11 14:24:34 +08:00
slhaf
8ca475beeb
feat(LocalRunnerClient): support registering CommonMcp
2026-01-08 22:28:12 +08:00
slhaf
4f36c0dd2d
feat(LocalRunnerClient): support deleting MCP configurations in CommonMcp
2026-01-08 22:23:08 +08:00
slhaf
00993bd763
feat(LocalRunnerClient): support creating MCP configurations in CommonMcp
2026-01-08 22:09:14 +08:00
slhaf
a0bca668cb
refactor(LocalRunnerClient): support update existedMetaActions in method registerMcpClient
2026-01-08 21:48:30 +08:00
slhaf
c6118c41b0
refactor(LocalRunnerClient): support loading primary fileMcpCache when CommonMcp launched
2026-01-08 21:33:39 +08:00
slhaf
872d21170a
feat(LocalRunnerClient): support modify and overflow events on mcp configurations in CommonMcp
...
Context:
Due to single file cannot present all mcp configurations, loading all MCPs at once is required.
This is compatible in both modify and overflow events.
2026-01-08 21:16:28 +08:00
slhaf
44ab6cfac8
feat(LocalRunnerClient): support registering MCP clients in CommonMcp
2026-01-05 23:06:17 +08:00
slhaf
ec30ac1922
refactor(LocalRunnerClient): remove tool change consumer in registerMcpClient
...
Context:
ExistedMetaActions' updating logic is covered by implementations of LocalWatchEventProcessor.
2026-01-03 16:34:04 +08:00
slhaf
74b6d0c653
chore(RunnerClient): fix RunnerClient error usages in implementations
2026-01-03 15:49:54 +08:00
slhaf
de462866b2
feat(LocalRunnerClient): support registering DescMcpServer watch service
2026-01-02 21:41:47 +08:00
slhaf
4ea8926363
feat(LocalRunnerClient): support repairing description data while OVERFLOW event happened in DescMcpServer
2026-01-02 21:29:18 +08:00
slhaf
04c98c7856
fix(LocalRunnerClient): support deleting descCache while *.desc.json is not available in DescMcpServer
2026-01-02 18:18:15 +08:00
slhaf
0757856187
feat(LocalRunnerClient): support deleting *.desc.json in DescMcpServer
2026-01-02 17:20:12 +08:00
slhaf
19ec93f248
feat(LocalRunnerClient): create modify *.desc.json in DescMcpServer
2026-01-02 16:45:01 +08:00
slhaf
5877b9e80d
feat(LocalRunnerClient): support modify *.desc.json in DescMcpServer
2026-01-02 16:42:56 +08:00
slhaf
5db0b5fad1
feat(LocalRunnerClient): support load *.desc.json when DescMcpServer launched
2026-01-02 15:55:29 +08:00
slhaf
623a86daab
chore(LocalRunnerClient): update mcp servers' comments
2026-01-02 15:52:44 +08:00
slhaf
64f24d3fc3
chore(LocalRunnerClient): adjust mcp servers' comments location
2026-01-02 13:38:43 +08:00
slhaf
3097efe453
feat(LocalRunnerClient): support register DynamicActionMcp watch service
2026-01-02 13:29:00 +08:00
slhaf
b58eeffd2f
feat(LocalRunnerClient): support overflow event in DynamicActionMcpServer
2026-01-01 23:32:21 +08:00
slhaf
62cec79005
refactor(LocalRunnerClient): extract duplicated action adding logic
2026-01-01 22:39:32 +08:00
slhaf
03a5935107
fix(LocalRunnerClient): support deleting event for action directories in DynamicActionMcp
2026-01-01 21:29:30 +08:00
slhaf
0ecaec0545
fix(LocalRunnerClient): repair loading logic of action subdirectories
2026-01-01 20:28:19 +08:00
slhaf
74f2c6c950
fix(LocalRunnerClient): support creating and registering new action in
...
method buildCreate in DynamicActionMcp
2026-01-01 00:32:34 +08:00
slhaf
f35a467ebc
fix(LocalRunnerClient): support registering subdirectories in LocalWatchServiceBuild
2025-12-31 23:15:27 +08:00
slhaf
64b907707a
refactor(LocalRunnerClient): introduce WatchContext and decouple build/processor state
2025-12-31 23:11:15 +08:00
slhaf
a6e33edc7a
refactor(LocalRunnerClient): support remove action temporarily while action is not usable
2025-12-31 16:27:34 +08:00
slhaf
94ef79c67d
feat(LocalRunnerClient): support program deletion for DynamicActionMcp
2025-12-31 13:41:35 +08:00
slhaf
a222015abb
feat(LocalRunnerClient): support program modify and unify action load protocol
...
Context:
The method buildModify reuses AsyncToolSpecification building logic in buildLoad.
This feature unifies local action directory protocol, and refactors related logic in buildLoad.
New action directory protocol defines the file names of program and description files.
2025-12-30 20:52:32 +08:00
slhaf
1c562f0e7b
refactor(LocalRunnerClient): update action keys building source in
...
DynamicActionMcp
Context:
Building action keys by subdirector's name keeps unique identity for each local action.
2025-12-30 16:43:39 +08:00
slhaf
89535a6b1c
feat(LocalRunnerClient): add initial support for loading local action tools from filesystem
...
Context:
This feature supports DynamicActionMcpServer.
During initialization, directories containing a program file and a
.meta.json description are scanned and registered as MCP tools.
Tool execution is handled asynchronously via boundedElastic to avoid blocking server threads.
2025-12-29 20:46:26 +08:00
slhaf
6e90bc8d67
refactor(LocalRunnerClient): co-locate system execution result
2025-12-29 18:53:41 +08:00
slhaf
0e741802d1
refactor(LocalRunnerClient): consolidate MCP client transport params
...
Context:
Group HTTP and STDIO transport parameter variants under a sealed internal transport parameter hierarchy.
2025-12-29 18:48:53 +08:00
slhaf
db3435fccf
refactor(LocalRunnerClient): co-locate watch service builder internals
...
Context:
Group WatchService build interfaces and registry implementation into a
single internal structure for better cohesion.
2025-12-29 18:40:20 +08:00
slhaf
e3294ec302
refactor(LocalRunnerClient): move system execution methods into SystemExecHelper
2025-12-29 18:26:30 +08:00
slhaf
bf99e01b51
feat(LocalRunnerClient): introduce LocalWatchServiceHelper and internal implementations
...
Context:
This change introduces an internal scaffold to organize WatchEventHandler building logic.
2025-12-29 17:45:39 +08:00
slhaf
1bd23b20c4
refactor(LocalRunnerClient): introduce DescMcpServer
...
Context:
This refactor supports creating descriptional files for common MCP Tools.
2025-12-29 17:35:03 +08:00
slhaf
442dd55686
refactor(LocalRunnerClient): rename LocalWatchServiceRegistry
2025-12-29 14:27:00 +08:00