Commit 156960a
authored
feat: architecture improvements, performance optimizations, security hardening (M24) (#417)
* feat: architecture improvements, performance optimizations, security hardening (M24)
Extract ProviderKind enum replacing stringly-typed provider selection.
Group Agent loose fields into RuntimeConfig struct.
Consolidate provider construction via shared create_named_provider.
Add AnyProvider::embed_fn() eliminating duplicate closures.
Move AnyChannel to zeph-channels crate.
Trim default features to minimal set (qdrant, self-learning, vault-age).
Performance: String::with_capacity in context loops, buffer_unordered(20),
embedding timeout wrappers, inline cosine_similarity.
Security: reject empty Telegram allowed_users, Config::validate() with
bounds checking, sanitize_paths() for error message path disclosure.
Resolves #392, #394, #395, #396, #397, #399, #401, #403, #404, #405,
#408, #409, #412, #415, #416
* fix: update integration test for ProviderKind enum
Replace string comparison with ProviderKind::Ollama in config defaults test.
* docs: update documentation, changelog, and readme for M24
Update feature-flags, configuration, channels, architecture, and
security docs to reflect ProviderKind enum, minimal default features,
Telegram auth guard, config validation, and path sanitization.
Add doc tests step to CI workflow.
Update CHANGELOG.md with Unreleased section for M24 changes.
Update README.md with new feature flags and architecture notes.1 parent 0b8825f commit 156960a
File tree
26 files changed
+627
-429
lines changed- .github/workflows
- crates
- zeph-channels/src
- zeph-core/src
- agent
- config
- zeph-llm/src
- zeph-skills
- src
- docs/src
- architecture
- getting-started
- guide
- src
- tests
26 files changed
+627
-429
lines changed| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
44 | 44 | | |
45 | 45 | | |
46 | 46 | | |
47 | | - | |
| 47 | + | |
48 | 48 | | |
49 | 49 | | |
50 | 50 | | |
| |||
67 | 67 | | |
68 | 68 | | |
69 | 69 | | |
70 | | - | |
| 70 | + | |
| 71 | + | |
| 72 | + | |
| 73 | + | |
| 74 | + | |
| 75 | + | |
71 | 76 | | |
72 | 77 | | |
73 | 78 | | |
| |||
86 | 91 | | |
87 | 92 | | |
88 | 93 | | |
89 | | - | |
| 94 | + | |
90 | 95 | | |
91 | 96 | | |
92 | 97 | | |
| |||
106 | 111 | | |
107 | 112 | | |
108 | 113 | | |
109 | | - | |
| 114 | + | |
110 | 115 | | |
111 | 116 | | |
112 | 117 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
6 | 6 | | |
7 | 7 | | |
8 | 8 | | |
| 9 | + | |
| 10 | + | |
| 11 | + | |
| 12 | + | |
| 13 | + | |
| 14 | + | |
| 15 | + | |
| 16 | + | |
| 17 | + | |
| 18 | + | |
| 19 | + | |
| 20 | + | |
| 21 | + | |
| 22 | + | |
| 23 | + | |
| 24 | + | |
| 25 | + | |
| 26 | + | |
| 27 | + | |
| 28 | + | |
| 29 | + | |
| 30 | + | |
| 31 | + | |
| 32 | + | |
| 33 | + | |
| 34 | + | |
| 35 | + | |
| 36 | + | |
9 | 37 | | |
10 | 38 | | |
11 | 39 | | |
| |||
0 commit comments