46 Commits

Author SHA1 Message Date
Alishahryar1 d501e5223a Fix live provider smoke defaults
Update live smoke model defaults for NIM, OpenRouter, and Gemini; normalize tool-call indexes; downgrade DeepSeek forced tool_choice; and add coverage for the provider smoke fixes.
2026-05-31 13:02:15 -07:00
Alishahryar1 ac2c37f613 Use canonical FCC server log path 2026-05-16 11:51:45 -07:00
Alishahryar1 29e7714337 feat(logging): structured TRACE events and end-to-end request correlation
Add core/trace.py with trace_event, traced_async_stream, and payload snapshots.
Merge TRACE fields into JSON logs; promote claude_session_id, http path/method.
Instrument API, messaging/CLI, and OpenAI-compat/native provider paths.
Harden log sink with enqueue and stdlib intercept re-entrancy guard.
Document behavior in .env.example and README; extend tests.
2026-05-10 18:24:48 -07:00
Alishahryar1 8ee72968ed Initial admin impl 2026-05-10 01:21:16 -07:00
Alishahryar1 d9040ce901 Report startup validation failures without tracebacks 2026-04-30 00:43:43 -07:00
Alishahryar1 f3a7528d49 Major refactor: API, providers, messaging, and Anthropic protocol
Consolidates the incremental refactor work into a single change set: modular web tools (api/web_tools), native Anthropic request building and SSE block policy, OpenAI conversion and error handling, provider transports and rate limiting, messaging handler and tree queue, safe logging, smoke tests, and broad test coverage.
2026-04-26 03:01:14 -07:00
Alishahryar1 b926f60f64 feat: Anthropic web server tools, provider metadata, messaging hardening
- Add local web_search/web_fetch SSE handling and optional tool schemas
- Extend HeuristicToolParser for JSON-style WebFetch/WebSearch text
- Consolidate provider defaults, ids, and exception typing; stream contracts
- Messaging: typed options, voice config injection, platform contract cleanup
- Tests for web server tools, converters, parsers, contracts; ignore debug-*.log
2026-04-24 23:01:14 -07:00
Alishahryar1 0e3b2c24b4 refactor: remove OpenRouter rollback, shims, and redundant layers
- OpenRouter: native Anthropic only; remove chat_request and OPENROUTER_TRANSPORT
- Drop OpenAICompatibleProvider alias, api.request_utils, voice_pipeline facade
- Simplify OpenRouter SSE, generic reasoning in conversion, messaging dispatch
- Shared markdown table helpers; API optimization response helper; contract guards
- Restore PLAN.md; update docs and tests
2026-04-24 21:08:38 -07:00
Alishahryar1 26b8a29537 Architecture refactor: core anthropic, runtime, smoke tiers, remove providers.common 2026-04-24 20:03:14 -07:00
Alishahryar1 48b085950a Warn on inherited auth token 2026-04-24 00:42:33 -07:00
Alishahryar1 35a2760f6e Fixed encapsulation violations 2026-03-01 04:28:22 -08:00
Ali Khokhar aee9f0ad93 Add code review fix plan covering 11 issues across modularity, encapsulation, performance, and dead code (#62) 2026-03-01 00:45:33 -08:00
Ali Khokhar c4d8681000 Backup/before cleanup 20260222 230402 (#58) 2026-02-27 19:50:21 -08:00
Alishahryar1 0c8d59e33e Removed deprecated modules and updated imports 2026-02-19 20:38:11 -08:00
Claude 99f99fce90 Remove max_cli_sessions — CLI session pool is now unbounded
The max_sessions cap in CLISessionManager was the only thing enforcing
a limit on concurrent CLI processes. Now that provider concurrency is
controlled at the streaming layer (PROVIDER_MAX_CONCURRENCY semaphore),
the CLI session pool cap is redundant and removed entirely.

Changes:
- cli/manager.py: remove max_sessions param, cap check, _cleanup_idle_sessions_unlocked, max_sessions from get_stats()
- config/settings.py: remove max_cli_sessions field
- api/app.py: remove max_sessions=settings.max_cli_sessions from CLISessionManager constructor
- messaging/handler.py: remove "Waiting for slot" status check; stats display no longer shows Max CLI
- .env.example: remove MAX_CLI_SESSIONS line
- tests/cli/test_cli.py: remove max_sessions args and assertion from manager tests
- tests/cli/test_cli_manager_edge_cases.py: remove two tests for cap/cleanup behavior
- tests/api/test_app_lifespan_and_errors.py: remove max_cli_sessions from all SimpleNamespace settings
- tests/config/test_config.py: remove max_cli_sessions isinstance assertion
- tests/conftest.py: remove max_sessions from mock stats
- tests/messaging/test_handler.py: merge slot/capacity tests into single new-conversation test; remove Max CLI assertion from stats test
- tests/messaging/test_handler_markdown_and_status_edges.py: remove "Waiting for slot" assertion; drop max_sessions from all stats mocks

https://claude.ai/code/session_014mrF1WMNgmNjtPBuoQHsbg
2026-02-19 14:31:47 +00:00
Alishahryar1 b05d0d2703 new linter rules and fixes 2026-02-18 04:13:41 -08:00
Alishahryar1 71cc814efb Add plans directory support to CLI session management
- Introduced `plans_directory` parameter in `CLISessionManager`, `CLISession`, and updated related methods to handle plan files.
- Updated `api/app.py` to pass the plans directory to the CLI session manager.
- Added a new test in `test_cli.py` to verify that the `--settings plansDirectory` argument is included when starting a task with a specified plans directory.
2026-02-16 15:34:26 -08:00
Alishahryar1 6511542bfe Implement Discord bot support and update README for messaging platform changes 2026-02-16 00:08:09 -08:00
Alishahryar1 ad44594197 Added ruff check to workflow and fixed ruff check errors 2026-02-15 22:02:15 -08:00
Alishahryar1 539854fe7b Refactor done using GLM-5 2026-02-15 21:58:03 -08:00
Alishahryar1 7259b1def8 Optimized code in hot paths with z-ai/glm5 2026-02-14 19:59:46 -08:00
Alishahryar1 ba344f26c9 Revamped logging 2026-02-14 18:55:33 -08:00
Alishahryar1 25b9d9d1e4 Added ruff and ty dependencies and lint 2026-02-14 18:00:21 -08:00
Alishahryar1 42a833245f Removed all signal handler logic 2026-02-14 17:17:58 -08:00
Alishahryar1 bd1e097d74 fixed tool parser and added signal handlers 2026-02-14 04:25:12 -08:00
Alishahryar1 fabca59f5c lint 2026-02-13 17:24:18 -08:00
Alishahryar1 de7677ba6c added graceful shutdown 2026-02-13 13:40:49 -08:00
Alishahryar1 697bc37faf Upon dequeue the current request immediately displays processing state instead of position 1 waiting 2026-02-08 04:06:41 -08:00
Alishahryar1 6d8f13d84e Added feature to update queue positions on telegram when messages are dequeued and added new tests 2026-02-08 04:00:58 -08:00
Alishahryar1 6102583026 Major Refactor Part 2 with kimi-k2.5 in claude code 2026-02-05 16:09:16 -08:00
Alishahryar1 fcbe204f44 Major refactor done with kimi-k2.5 in claude code 2026-02-05 10:51:33 -08:00
Alishahryar1 b3b3389ced fixed logging race condition 2026-02-03 19:42:30 -08:00
Alishahryar1 78d0276d03 fixed /stop 2026-01-31 14:39:24 -08:00
Alishahryar1 0ea3ec8741 added tree persistence 2026-01-31 13:56:06 -08:00
Alishahryar1 7045e0ed44 add retry for telegram message edits with tests and updated rate telegram limit 2026-01-30 15:41:24 -08:00
Alishahryar1 d958544c3d Migrated from telethon to telegram bot api 2026-01-30 00:38:39 -08:00
Alishahryar1 6eca7377ce Revert "Added rate limiter queue for telegram"
This reverts commit 6a4409d625.
2026-01-29 23:16:01 -08:00
Alishahryar1 82ab6d64e1 Revert "added messaging app rate limiter params"
This reverts commit 8ee1da7140.
2026-01-29 23:14:59 -08:00
Alishahryar1 8ee1da7140 added messaging app rate limiter params 2026-01-29 22:38:26 -08:00
Alishahryar1 6a4409d625 Added rate limiter queue for telegram 2026-01-29 22:28:18 -08:00
Alishahryar1 5fd7268d3f added tree based session handler 2026-01-29 18:17:42 -08:00
Alishahryar1 34035dfc05 fixed /stop not updating ui for all messages 2026-01-29 17:04:30 -08:00
Alishahryar1 bbbc38d6dd fixed start dir and workspace for telegram agent 2026-01-29 15:00:34 -08:00
Alishahryar1 f1efa22a82 fixed issues after refactor 2026-01-29 14:50:05 -08:00
Alishahryar1 83e23bfc31 added missing message handler 2026-01-29 14:45:15 -08:00
Alishahryar1 8678a62915 Major refactor done by itself 2026-01-29 14:40:08 -08:00