-
Notifications
You must be signed in to change notification settings - Fork 0
Feature configuration system #103
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Open
viksachdev
wants to merge
158
commits into
main
Choose a base branch
from
feature/configuration-system
base: main
Could not load branches
Branch not found: {{ refName }}
Loading
Could not load tags
Nothing to show
Loading
Are you sure you want to change the base?
Some commits from the old base branch may be removed from the timeline,
and old review comments may become outdated.
Open
Changes from all commits
Commits
Show all changes
158 commits
Select commit
Hold shift + click to select a range
651cec7
Add configuration system data models (#102)
viksachdev cd65b11
Add server and filter configuration data models (#102)
viksachdev 35dd2ca
Fix header guard issue in types.h (#102)
viksachdev f121f77
Add improved config types with proper merge semantics (#102)
viksachdev b48ee0a
Add unit parsing for config values (#102)
viksachdev 7041e85
Add unknown field validation policies (#102)
viksachdev 501977f
Add enhanced error diagnostics for config parsing (#102)
viksachdev 022fc3d
Add ConfigurationManager interface (#102)
viksachdev a51c636
Implement ConfigurationManager (#102)
viksachdev 22b3f9d
Fix PathScope misuse in validation (#102)
viksachdev a1cb44b
Add duplicate filter chain name validation (#102)
viksachdev 7679d63
Fix undefined behavior in character classification (#102)
viksachdev 0768a20
Add comprehensive type error wrapping in config parsing
viksachdev 7dd12fd
Fix pointer misuse in parseConfiguration
viksachdev 2a852d9
Apply validation policy to config parsing
viksachdev f17c4ad
Fix listener invocation under lock
viksachdev 1d58938
Fix thread-unsafe std::localtime in generateVersionId
viksachdev ca4f681
Add configuration type tests
viksachdev b4b304e
Add configuration merge tests
viksachdev 934775d
Add unit conversion tests
viksachdev 86bced8
Add validation policy tests
viksachdev b3e0caa
Add parse error handling tests
viksachdev f52cfc2
Add FileConfigSource implementation
viksachdev 99e70d1
Add comprehensive logging to ConfigurationManager
viksachdev 31921e9
Add comprehensive FileConfigSource tests
viksachdev 3b844ed
Implement FileConfigSource with ConfigSource interface compliance
viksachdev 8b9353d
Remove duplicate FileConfigSource from ConfigurationManager
viksachdev f74e316
Update ConfigSource interface and factory function
viksachdev e5ad009
Add comprehensive configuration types
viksachdev 37df3b6
Fix C++14 compatibility in ConfigurationManager
viksachdev 8c17bc1
Add FileConfigSource interface compliance tests
viksachdev c608964
Add configuration test suite to build system
viksachdev 8ba009c
Fix ConfigurationManager to use discovery logic
viksachdev df772f3
Fix getLastModified() to track max mtime across all config files
viksachdev 601ce1d
Add yaml-cpp dependency and config sources to build
viksachdev 32e9c51
Update test method names to match ConfigSource interface
viksachdev 954c378
Add configuration merger with deep merge support
viksachdev 6d8a3cf
Add configuration validator framework
viksachdev 45bfb7e
Add merger and validator to build configuration
viksachdev d673545
Add tests for merger and validator to build
viksachdev 16a393c
Add comprehensive tests for merger and validator
viksachdev df14aec
Enhance search policy with detailed logging
viksachdev 1eb4a8b
Add search precedence tests
viksachdev 8215a96
Add units parsing and validation framework
viksachdev 7e485f1
Add comprehensive unit tests for duration and size parsing
viksachdev df04535
Add units.cc to build configuration
viksachdev 09991c1
Add units test to build configuration
viksachdev 3cb6fd6
Enhance merge semantics with detailed logging
viksachdev adc7186
Add comprehensive merge semantics tests
viksachdev 30d2549
Add merge semantics test to build
viksachdev 5afba9d
Add json-schema-validator dependency for config validation
viksachdev 83c67fa
Add enhanced FileConfigSource tests
viksachdev 316df4e
Add YAML environment substitution tests
viksachdev 04eba2e
Fix duplicate test_units entries in CMakeLists.txt
viksachdev 8e6213c
Fix config_manager.cc compilation issues
viksachdev 315af77
Add configuration system architecture headers (#102)
viksachdev 3ae1474
Fix extractJsonValue template ambiguity (#102)
viksachdev 84642b6
Implement configuration validation and merging system (#102)
viksachdev ddf3761
Migrate configuration system from nlohmann to JsonValue (#102)
viksachdev 4894557
Update remaining components for JsonValue migration (#102)
viksachdev 100fd0d
Add test helper utilities for JsonValue migration (#102)
viksachdev 9e05000
Migrate core config tests from nlohmann to JsonValue (#102)
viksachdev a14950a
Migrate file source and validation tests to JsonValue (#102)
viksachdev c909e92
Migrate remaining config tests to JsonValue (#102)
viksachdev a7692cb
Update test build configuration (#102)
viksachdev 75383a6
Add filter registry interface and factory base class (#102)
viksachdev f73a655
Implement filter registry with thread-safe factory management (#102)
viksachdev 7741619
Add filter_registry.cc to build system (#102)
viksachdev dda95a3
Add comprehensive test suite for filter registry (#102)
viksachdev e1ae50a
Add filter registry test to build system (#102)
viksachdev 48a4d9a
Improve JsonValue assignment in test helpers (#102)
viksachdev d3d26f9
Add validation helper methods and private members to validators (#102)
viksachdev ce211b8
Refactor config validator implementation structure (#102)
viksachdev 39e6c2d
Improve config file parsing and JsonValue integration (#102)
viksachdev 6190a4f
Add HTTP codec filter factory with configuration support (#102)
viksachdev 8139ee5
Add SSE codec filter factory with event streaming config (#102)
viksachdev ea264d0
Add JSON-RPC protocol filter factory (#102)
viksachdev 3fe3baa
Add core filter factories to build system (#102)
viksachdev a3a6dd3
Add rate limit filter factory with multiple algorithms (#102)
viksachdev 5f63ae8
Add circuit breaker filter factory (#102)
viksachdev a4221bd
Add metrics filter factory with provider support (#102)
viksachdev f2a93d1
Add QoS filter factories to build system (#102)
viksachdev ca296bb
Add FilterChainBuilder with fluent interface and configuration suppor…
viksachdev 934dc33
Add filter chain builder to build system (#102)
viksachdev f676e30
Add configurable filter chain support to MCP server (#102)
viksachdev 7c24ad5
Add --config command line option to mcp_example_server (#102)
viksachdev b93498c
Add runtime configuration logging to JsonRpcProtocolFilter (#102)
viksachdev 0f3223e
Fix lambda static variable capture in filter chain builder (#102)
viksachdev 34fef9b
Add filter configuration examples (#102)
viksachdev ed5275a
Add filter configuration documentation (#102)
viksachdev 3b20a07
Refactor JsonValue with improved memory management (#102)
viksachdev bd049a0
Add thread-local version tracking to ConfigManager (#102)
viksachdev 556643c
Update FileConfigSource to use GOPHER_LOG (#102)
viksachdev d85e63d
Fix unit conversions and add JsonException handling (#102)
viksachdev 4305dd0
Update unit tests for decimal size conversions (#102)
viksachdev cf8c9a2
Fix config merge test expectations (#102)
viksachdev c640145
Fix file source test expectations (#102)
viksachdev a5f6b8b
Add CMake configuration for filter tests (#102)
viksachdev 4a1bedc
Add core and QoS filter factory tests (#102)
viksachdev 7239c38
Add filter chain builder and configuration tests (#102)
viksachdev c31abe8
Add filter order validator interface (#102)
viksachdev 96e0d7b
Implement filter order validator (#102)
viksachdev fed7367
Add filter order validator to build (#102)
viksachdev 3a20561
Add filter ordering validator tests (#102)
viksachdev 1c0bbb5
Add filter ordering test to build (#102)
viksachdev cc9c8ee
Add predicate evaluator for conditional filter inclusion (#102)
viksachdev d16d259
Add conditional enablement fields to FilterConfig (#102)
viksachdev d87c065
Add predicate evaluator to build system (#102)
viksachdev 42f6ea9
Add comprehensive tests for predicate evaluator (#102)
viksachdev d0bc53d
Add conditional enablement fields to FilterConfig (#102)
viksachdev d1943f8
Add JSON value converter for C API (#102)
viksachdev f2ebad6
Implement JSON-based filter chain creation (#102)
viksachdev fdc7082
Add tests for C API chain creation (#102)
viksachdev d06a3dd
Add unique_ptr overload to HandleManager (#102)
viksachdev 68e94d2
Add unit tests for HandleManager ownership (#102)
viksachdev 946a80c
Add HandleManager test to build (#102)
viksachdev 7e01251
Make g_filter_manager externally accessible (#102)
viksachdev 93484a2
Implement real filter instantiation in JSON chain creation (#102)
viksachdev 498977e
Add integration tests for JSON chain creation (#102)
viksachdev 13f112f
Fix mcp_chain_clone by preserving dispatcher (#102)
viksachdev 97e1b4c
Update tests to verify mcp_chain_clone fix (#102)
viksachdev e7521a0
Add test_chain_from_json to build (#102)
viksachdev de9adfc
Add exception guards to C API functions for FFI safety (#102)
viksachdev 3f57e81
Add exception safety tests for C API filter chain (#102)
viksachdev ff7dc1a
Add UnifiedFilterChain wrapper for handle unification (#102)
viksachdev 22af04b
Update mcp_c_filter_chain to use unified handle manager (#102)
viksachdev 40a3595
Update mcp_c_filter_api to use unified handle manager (#102)
viksachdev 40097e8
Add smoke test for unified chain handle system (#102)
viksachdev b2a6775
Enforce thread affinity for filter chain operations (#102)
viksachdev b59cabb
Add thread affinity tests for filter chain C API (#102)
viksachdev ef37ba9
Remove duplicate mcp_json_free declaration (#102)
viksachdev e67453d
Add JSON API compatibility wrappers (#102)
viksachdev 189cf9a
Implement JSON API using JsonValue converter (#102)
viksachdev b497934
Add unified JSON API test suite (#102)
viksachdev 8a860de
Remove duplicate JSON implementation from types (#102)
viksachdev b232daf
Add string buffer management functions (#102)
viksachdev f3bac8b
Implement working JSON stringify buffer wrapper (#102)
viksachdev e4a1e6e
Update tests for string buffer implementation (#102)
viksachdev 5adcee7
Implement full export in mcp_chain_export_to_json (#102)
viksachdev 0bea87e
Add round-trip tests for chain export/import (#102)
viksachdev df8a8ee
Add full export implementation and logging safety (#102)
viksachdev 7d18de7
Fix C API test compilation errors (#102)
viksachdev 9a025cd
Fix JSON chain creation test issues (#102)
viksachdev 2225a88
Fix test linking error (#102)
viksachdev 9f596e3
Add filter creation context and metadata structures (#102)
viksachdev 856d8cd
Introduce filter chain assembler infrastructure (#102)
viksachdev 66c2a3c
Add callback bridges for filter data flow (#102)
viksachdev 09be7e5
Implement core filter factories (#102)
viksachdev 1c9a0ee
Update filter registry with factory support (#102)
viksachdev b73a0a7
Refactor core filters for context-aware creation (#102)
viksachdev 9f6c246
Update network filter implementation (#102)
viksachdev de927cb
Add comprehensive test coverage for new filter architecture (#102)
viksachdev 10af63c
Update existing tests for new assembler architecture (#102)
viksachdev c81432b
Remove deprecated filter chain builder implementation (#102)
viksachdev 7977634
Update main CMake configuration for assembler pipeline (#102)
viksachdev 349a526
Update MCP server to use assembler-based filter chains (#102)
viksachdev 5b49d30
Update C API for assembler-based architecture (#102)
viksachdev 64af71b
Update test and example CMake configurations (#102)
viksachdev File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.
Oops, something went wrong.
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Uh oh!
There was an error while loading. Please reload this page.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Please fallback to auto-install (e.g. refer to other FetchContent_Declare) if pre-installed is not available.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I am doing this