agentic 0.1.0 → 0.2.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/.agentic.yml +2 -0
- data/.architecture/decisions/ArchitecturalFeatureBuilder.md +136 -0
- data/.architecture/decisions/ArchitectureConsiderations.md +200 -0
- data/.architecture/decisions/adr_001_observer_pattern_implementation.md +196 -0
- data/.architecture/decisions/adr_002_plan_orchestrator.md +320 -0
- data/.architecture/decisions/adr_003_plan_orchestrator_interface.md +179 -0
- data/.architecture/decisions/adrs/ADR-001-dependency-management.md +147 -0
- data/.architecture/decisions/adrs/ADR-002-system-boundaries.md +162 -0
- data/.architecture/decisions/adrs/ADR-003-content-safety.md +158 -0
- data/.architecture/decisions/adrs/ADR-004-agent-permissions.md +161 -0
- data/.architecture/decisions/adrs/ADR-005-adaptation-engine.md +127 -0
- data/.architecture/decisions/adrs/ADR-006-extension-system.md +273 -0
- data/.architecture/decisions/adrs/ADR-007-learning-system.md +156 -0
- data/.architecture/decisions/adrs/ADR-008-prompt-generation.md +325 -0
- data/.architecture/decisions/adrs/ADR-009-task-failure-handling.md +353 -0
- data/.architecture/decisions/adrs/ADR-010-task-input-handling.md +251 -0
- data/.architecture/decisions/adrs/ADR-011-task-observable-pattern.md +391 -0
- data/.architecture/decisions/adrs/ADR-012-task-output-handling.md +205 -0
- data/.architecture/decisions/adrs/ADR-013-architecture-alignment.md +211 -0
- data/.architecture/decisions/adrs/ADR-014-agent-capability-registry.md +80 -0
- data/.architecture/decisions/adrs/ADR-015-persistent-agent-store.md +100 -0
- data/.architecture/decisions/adrs/ADR-016-agent-assembly-engine.md +117 -0
- data/.architecture/decisions/adrs/ADR-017-streaming-observability.md +171 -0
- data/.architecture/decisions/capability_tools_distinction.md +150 -0
- data/.architecture/decisions/cli_command_structure.md +61 -0
- data/.architecture/implementation/agent_self_assembly_implementation.md +267 -0
- data/.architecture/implementation/agent_self_assembly_summary.md +138 -0
- data/.architecture/members.yml +187 -0
- data/.architecture/planning/self_implementation_exercise.md +295 -0
- data/.architecture/planning/session_compaction_rule.md +43 -0
- data/.architecture/planning/streaming_observability_feature.md +223 -0
- data/.architecture/principles.md +151 -0
- data/.architecture/recalibration/0-2-0.md +92 -0
- data/.architecture/recalibration/agent_self_assembly.md +238 -0
- data/.architecture/recalibration/cli_command_structure.md +91 -0
- data/.architecture/recalibration/implementation_roadmap_0-2-0.md +301 -0
- data/.architecture/recalibration/progress_tracking_0-2-0.md +114 -0
- data/.architecture/recalibration_process.md +127 -0
- data/.architecture/reviews/0-2-0.md +181 -0
- data/.architecture/reviews/cli_command_duplication.md +98 -0
- data/.architecture/templates/adr.md +105 -0
- data/.architecture/templates/implementation_roadmap.md +125 -0
- data/.architecture/templates/progress_tracking.md +89 -0
- data/.architecture/templates/recalibration_plan.md +70 -0
- data/.architecture/templates/version_comparison.md +124 -0
- data/.claude/settings.local.json +13 -0
- data/.claude-sessions/001-task-class-architecture-implementation.md +129 -0
- data/.claude-sessions/002-plan-orchestrator-interface-review.md +105 -0
- data/.claude-sessions/architecture-governance-implementation.md +37 -0
- data/.claude-sessions/architecture-review-session.md +27 -0
- data/ArchitecturalFeatureBuilder.md +136 -0
- data/ArchitectureConsiderations.md +229 -0
- data/CHANGELOG.md +57 -2
- data/CLAUDE.md +111 -0
- data/CONTRIBUTING.md +286 -0
- data/MAINTAINING.md +301 -0
- data/README.md +582 -28
- data/docs/agent_capabilities_api.md +259 -0
- data/docs/artifact_extension_points.md +757 -0
- data/docs/artifact_generation_architecture.md +323 -0
- data/docs/artifact_implementation_plan.md +596 -0
- data/docs/artifact_integration_points.md +345 -0
- data/docs/artifact_verification_strategies.md +581 -0
- data/docs/streaming_observability_architecture.md +510 -0
- data/exe/agentic +6 -1
- data/lefthook.yml +5 -0
- data/lib/agentic/adaptation_engine.rb +124 -0
- data/lib/agentic/agent.rb +181 -4
- data/lib/agentic/agent_assembly_engine.rb +442 -0
- data/lib/agentic/agent_capability_registry.rb +260 -0
- data/lib/agentic/agent_config.rb +63 -0
- data/lib/agentic/agent_specification.rb +46 -0
- data/lib/agentic/capabilities/examples.rb +530 -0
- data/lib/agentic/capabilities.rb +14 -0
- data/lib/agentic/capability_provider.rb +146 -0
- data/lib/agentic/capability_specification.rb +118 -0
- data/lib/agentic/cli/agent.rb +31 -0
- data/lib/agentic/cli/capabilities.rb +191 -0
- data/lib/agentic/cli/config.rb +134 -0
- data/lib/agentic/cli/execution_observer.rb +796 -0
- data/lib/agentic/cli.rb +1068 -0
- data/lib/agentic/default_agent_provider.rb +35 -0
- data/lib/agentic/errors/llm_error.rb +184 -0
- data/lib/agentic/execution_plan.rb +53 -0
- data/lib/agentic/execution_result.rb +91 -0
- data/lib/agentic/expected_answer_format.rb +46 -0
- data/lib/agentic/extension/domain_adapter.rb +109 -0
- data/lib/agentic/extension/plugin_manager.rb +163 -0
- data/lib/agentic/extension/protocol_handler.rb +116 -0
- data/lib/agentic/extension.rb +45 -0
- data/lib/agentic/factory_methods.rb +9 -1
- data/lib/agentic/generation_stats.rb +61 -0
- data/lib/agentic/learning/README.md +84 -0
- data/lib/agentic/learning/capability_optimizer.rb +613 -0
- data/lib/agentic/learning/execution_history_store.rb +251 -0
- data/lib/agentic/learning/pattern_recognizer.rb +500 -0
- data/lib/agentic/learning/strategy_optimizer.rb +706 -0
- data/lib/agentic/learning.rb +131 -0
- data/lib/agentic/llm_assisted_composition_strategy.rb +188 -0
- data/lib/agentic/llm_client.rb +215 -15
- data/lib/agentic/llm_config.rb +65 -1
- data/lib/agentic/llm_response.rb +163 -0
- data/lib/agentic/logger.rb +1 -1
- data/lib/agentic/observable.rb +51 -0
- data/lib/agentic/persistent_agent_store.rb +385 -0
- data/lib/agentic/plan_execution_result.rb +129 -0
- data/lib/agentic/plan_orchestrator.rb +464 -0
- data/lib/agentic/plan_orchestrator_config.rb +57 -0
- data/lib/agentic/retry_config.rb +63 -0
- data/lib/agentic/retry_handler.rb +125 -0
- data/lib/agentic/structured_outputs.rb +1 -1
- data/lib/agentic/task.rb +193 -0
- data/lib/agentic/task_definition.rb +39 -0
- data/lib/agentic/task_execution_result.rb +92 -0
- data/lib/agentic/task_failure.rb +66 -0
- data/lib/agentic/task_output_schemas.rb +112 -0
- data/lib/agentic/task_planner.rb +54 -19
- data/lib/agentic/task_result.rb +48 -0
- data/lib/agentic/ui.rb +244 -0
- data/lib/agentic/verification/critic_framework.rb +116 -0
- data/lib/agentic/verification/llm_verification_strategy.rb +60 -0
- data/lib/agentic/verification/schema_verification_strategy.rb +47 -0
- data/lib/agentic/verification/verification_hub.rb +62 -0
- data/lib/agentic/verification/verification_result.rb +50 -0
- data/lib/agentic/verification/verification_strategy.rb +26 -0
- data/lib/agentic/version.rb +1 -1
- data/lib/agentic.rb +74 -2
- data/plugins/README.md +41 -0
- metadata +245 -6
data/MAINTAINING.md
ADDED
@@ -0,0 +1,301 @@
|
|
1
|
+
# Maintaining Agentic
|
2
|
+
|
3
|
+
This document provides guidance for maintainers of the Agentic framework, including architectural responsibilities, release processes, and long-term maintenance considerations.
|
4
|
+
|
5
|
+
## Maintainer Responsibilities
|
6
|
+
|
7
|
+
### Architectural Stewardship
|
8
|
+
|
9
|
+
As a maintainer, you are responsible for:
|
10
|
+
|
11
|
+
1. **Preserving Architectural Integrity**
|
12
|
+
- Ensure changes align with architectural principles in `.architecture/principles.md`
|
13
|
+
- Review architectural implications of all significant changes
|
14
|
+
- Maintain clear separation between system layers
|
15
|
+
- Protect extension points and interfaces
|
16
|
+
|
17
|
+
2. **Design Quality**
|
18
|
+
- Enforce design patterns established in the codebase
|
19
|
+
- Ensure new components follow established conventions
|
20
|
+
- Maintain high code quality standards
|
21
|
+
- Review for proper abstraction levels
|
22
|
+
|
23
|
+
3. **Documentation Accuracy**
|
24
|
+
- Keep architectural documentation up-to-date
|
25
|
+
- Ensure ADRs accurately reflect current decisions
|
26
|
+
- Maintain accurate API documentation
|
27
|
+
- Update examples and guides as needed
|
28
|
+
|
29
|
+
### Review Guidelines
|
30
|
+
|
31
|
+
#### Code Review Focus Areas
|
32
|
+
|
33
|
+
1. **Architectural Alignment**
|
34
|
+
- Does the change fit within existing system layers?
|
35
|
+
- Are interfaces properly defined and documented?
|
36
|
+
- Is the separation of concerns maintained?
|
37
|
+
- Are extension points preserved or enhanced?
|
38
|
+
|
39
|
+
2. **Design Patterns**
|
40
|
+
- Registry pattern usage for capability management
|
41
|
+
- Observer pattern for state notifications
|
42
|
+
- Strategy pattern for pluggable behavior
|
43
|
+
- Factory pattern for object construction
|
44
|
+
|
45
|
+
3. **Error Handling**
|
46
|
+
- Comprehensive error context in TaskFailure objects
|
47
|
+
- Proper retry mechanisms where appropriate
|
48
|
+
- Graceful degradation strategies
|
49
|
+
- Clear error messages for debugging
|
50
|
+
|
51
|
+
4. **Performance Impact**
|
52
|
+
- LLM API efficiency considerations
|
53
|
+
- Memory usage implications
|
54
|
+
- Threading and concurrency safety
|
55
|
+
- Resource cleanup and lifecycle management
|
56
|
+
|
57
|
+
5. **Security Considerations**
|
58
|
+
- Input validation and sanitization
|
59
|
+
- Permission and capability restrictions
|
60
|
+
- Audit logging completeness
|
61
|
+
- Secure default configurations
|
62
|
+
|
63
|
+
#### Architectural Review Process
|
64
|
+
|
65
|
+
For significant changes, follow the architectural review process:
|
66
|
+
|
67
|
+
1. **Initial Assessment**
|
68
|
+
- Determine if an ADR is needed
|
69
|
+
- Identify affected system layers
|
70
|
+
- Assess backward compatibility impact
|
71
|
+
|
72
|
+
2. **Multi-Perspective Review**
|
73
|
+
- Systems architecture perspective
|
74
|
+
- Domain expertise perspective
|
75
|
+
- Security implications
|
76
|
+
- Performance impact
|
77
|
+
- Maintainability considerations
|
78
|
+
|
79
|
+
3. **Documentation Requirements**
|
80
|
+
- ADR creation for significant decisions
|
81
|
+
- Architecture document updates
|
82
|
+
- API documentation updates
|
83
|
+
- Migration guide creation (if needed)
|
84
|
+
|
85
|
+
### Release Management
|
86
|
+
|
87
|
+
#### Version Strategy
|
88
|
+
|
89
|
+
Follow semantic versioning strictly:
|
90
|
+
|
91
|
+
- **Major (X.0.0)**: Breaking API changes, architectural shifts
|
92
|
+
- **Minor (0.X.0)**: New features, enhancements, non-breaking changes
|
93
|
+
- **Patch (0.0.X)**: Bug fixes, documentation updates, security patches
|
94
|
+
|
95
|
+
#### Pre-Release Checklist
|
96
|
+
|
97
|
+
Before any release:
|
98
|
+
|
99
|
+
- [ ] All tests pass on supported Ruby versions
|
100
|
+
- [ ] Code coverage meets standards (>90% for new code)
|
101
|
+
- [ ] Documentation is updated and accurate
|
102
|
+
- [ ] CHANGELOG.md is complete and properly formatted
|
103
|
+
- [ ] Version number follows semantic versioning
|
104
|
+
- [ ] Breaking changes have migration guides
|
105
|
+
- [ ] Security implications have been reviewed
|
106
|
+
|
107
|
+
#### Release Process
|
108
|
+
|
109
|
+
1. **Prepare Release**
|
110
|
+
```bash
|
111
|
+
# Update version
|
112
|
+
vim lib/agentic/version.rb
|
113
|
+
|
114
|
+
# Update changelog
|
115
|
+
vim CHANGELOG.md
|
116
|
+
|
117
|
+
# Run full test suite
|
118
|
+
bundle exec rake
|
119
|
+
|
120
|
+
# Check for security issues
|
121
|
+
bundle audit
|
122
|
+
```
|
123
|
+
|
124
|
+
2. **Create Release PR**
|
125
|
+
- Include version bump
|
126
|
+
- Include changelog updates
|
127
|
+
- Tag with "release" label
|
128
|
+
- Require architectural review for minor/major versions
|
129
|
+
|
130
|
+
3. **Execute Release**
|
131
|
+
```bash
|
132
|
+
# After PR merge
|
133
|
+
bundle exec rake release
|
134
|
+
```
|
135
|
+
|
136
|
+
4. **Post-Release**
|
137
|
+
- Monitor for issues
|
138
|
+
- Update documentation sites if applicable
|
139
|
+
- Announce in community channels
|
140
|
+
|
141
|
+
### Long-Term Maintenance
|
142
|
+
|
143
|
+
#### Technical Debt Management
|
144
|
+
|
145
|
+
1. **Regular Assessment**
|
146
|
+
- Monthly code quality reviews
|
147
|
+
- Quarterly architectural health checks
|
148
|
+
- Annual major dependency updates
|
149
|
+
- Continuous security vulnerability monitoring
|
150
|
+
|
151
|
+
2. **Prioritization Framework**
|
152
|
+
- **Critical**: Security vulnerabilities, data corruption risks
|
153
|
+
- **High**: Performance degradation, API inconsistencies
|
154
|
+
- **Medium**: Code complexity, test coverage gaps
|
155
|
+
- **Low**: Documentation improvements, minor refactoring
|
156
|
+
|
157
|
+
3. **Refactoring Guidelines**
|
158
|
+
- Maintain backward compatibility unless major version
|
159
|
+
- Comprehensive test coverage before refactoring
|
160
|
+
- Gradual refactoring over big-bang changes
|
161
|
+
- Document architectural decision changes
|
162
|
+
|
163
|
+
#### Dependency Management
|
164
|
+
|
165
|
+
1. **Update Strategy**
|
166
|
+
- Security patches: Immediate
|
167
|
+
- Minor updates: Monthly review
|
168
|
+
- Major updates: Quarterly assessment
|
169
|
+
- Ruby version support: Follow Ruby EOL schedule
|
170
|
+
|
171
|
+
2. **Evaluation Criteria**
|
172
|
+
- Security implications
|
173
|
+
- Performance impact
|
174
|
+
- API stability
|
175
|
+
- Community maintenance status
|
176
|
+
- License compatibility
|
177
|
+
|
178
|
+
#### Community Engagement
|
179
|
+
|
180
|
+
1. **Issue Management**
|
181
|
+
- Triage new issues within 48 hours
|
182
|
+
- Label appropriately (bug, enhancement, question)
|
183
|
+
- Provide architectural guidance for complex features
|
184
|
+
- Close stale issues with clear communication
|
185
|
+
|
186
|
+
2. **Pull Request Review**
|
187
|
+
- Respond to PRs within one week
|
188
|
+
- Provide constructive architectural feedback
|
189
|
+
- Guide contributors toward architectural alignment
|
190
|
+
- Recognize and celebrate contributions
|
191
|
+
|
192
|
+
3. **Documentation Maintenance**
|
193
|
+
- Keep examples current and working
|
194
|
+
- Update architectural documentation as system evolves
|
195
|
+
- Respond to documentation issues promptly
|
196
|
+
- Regular review of accuracy and completeness
|
197
|
+
|
198
|
+
### Architectural Evolution
|
199
|
+
|
200
|
+
#### Planning Process
|
201
|
+
|
202
|
+
1. **Quarterly Planning**
|
203
|
+
- Review architectural health
|
204
|
+
- Assess community feedback and needs
|
205
|
+
- Plan major architectural improvements
|
206
|
+
- Update implementation roadmap
|
207
|
+
|
208
|
+
2. **Annual Strategy Review**
|
209
|
+
- Evaluate architectural principles relevance
|
210
|
+
- Assess technology landscape changes
|
211
|
+
- Plan major version roadmap
|
212
|
+
- Review community growth and needs
|
213
|
+
|
214
|
+
#### Change Management
|
215
|
+
|
216
|
+
1. **Breaking Changes**
|
217
|
+
- Require community discussion period
|
218
|
+
- Provide clear migration path
|
219
|
+
- Maintain backward compatibility layer when possible
|
220
|
+
- Document rationale in ADR
|
221
|
+
|
222
|
+
2. **New Architecture Patterns**
|
223
|
+
- Pilot in small scope first
|
224
|
+
- Document pattern thoroughly
|
225
|
+
- Provide examples and best practices
|
226
|
+
- Gradually expand usage
|
227
|
+
|
228
|
+
### Monitoring and Metrics
|
229
|
+
|
230
|
+
#### Health Indicators
|
231
|
+
|
232
|
+
Track these metrics for project health:
|
233
|
+
|
234
|
+
- **Code Quality**: Test coverage, complexity metrics, linting results
|
235
|
+
- **Community Health**: Issue response time, PR merge rate, contributor growth
|
236
|
+
- **Documentation Quality**: Documentation coverage, example accuracy
|
237
|
+
- **Performance**: Benchmark results, resource usage trends
|
238
|
+
- **Security**: Vulnerability scan results, dependency health
|
239
|
+
|
240
|
+
#### Regular Reviews
|
241
|
+
|
242
|
+
1. **Monthly**: Code quality metrics, issue triage, PR backlog
|
243
|
+
2. **Quarterly**: Architectural health, dependency updates, community metrics
|
244
|
+
3. **Annually**: Strategic direction, major architectural decisions, roadmap updates
|
245
|
+
|
246
|
+
### Emergency Procedures
|
247
|
+
|
248
|
+
#### Security Vulnerabilities
|
249
|
+
|
250
|
+
1. **Assessment**
|
251
|
+
- Determine severity using CVSS framework
|
252
|
+
- Assess impact on users
|
253
|
+
- Identify affected versions
|
254
|
+
|
255
|
+
2. **Response**
|
256
|
+
- Critical: Immediate patch and release
|
257
|
+
- High: Fix within 48 hours
|
258
|
+
- Medium: Fix in next patch release
|
259
|
+
- Low: Fix in regular release cycle
|
260
|
+
|
261
|
+
3. **Communication**
|
262
|
+
- Security advisory for critical/high severity
|
263
|
+
- Clear upgrade instructions
|
264
|
+
- Credit security researchers appropriately
|
265
|
+
|
266
|
+
#### Critical Bugs
|
267
|
+
|
268
|
+
1. **Triage Criteria**
|
269
|
+
- Data loss or corruption
|
270
|
+
- Security implications
|
271
|
+
- Complete functionality failure
|
272
|
+
- Performance degradation >50%
|
273
|
+
|
274
|
+
2. **Response Process**
|
275
|
+
- Immediate acknowledgment
|
276
|
+
- Hotfix development and testing
|
277
|
+
- Emergency release if needed
|
278
|
+
- Post-mortem and prevention measures
|
279
|
+
|
280
|
+
### Tools and Automation
|
281
|
+
|
282
|
+
#### Development Tools
|
283
|
+
|
284
|
+
- **CI/CD**: GitHub Actions for testing and releases
|
285
|
+
- **Code Quality**: StandardRB, RuboCop, Brakeman
|
286
|
+
- **Documentation**: YARD for API docs
|
287
|
+
- **Testing**: RSpec, VCR for HTTP interactions
|
288
|
+
- **Security**: Bundle audit, GitHub security advisories
|
289
|
+
|
290
|
+
#### Monitoring Tools
|
291
|
+
|
292
|
+
- **Performance**: Ruby profiling tools, benchmark suites
|
293
|
+
- **Security**: Automated vulnerability scanning
|
294
|
+
- **Dependencies**: Dependabot for update notifications
|
295
|
+
- **Quality**: Code coverage tracking, complexity analysis
|
296
|
+
|
297
|
+
## Conclusion
|
298
|
+
|
299
|
+
Maintaining Agentic requires balancing architectural integrity with community needs, ensuring long-term sustainability while enabling innovation. This document provides the framework for making these decisions consistently and effectively.
|
300
|
+
|
301
|
+
Regular review and updates of this document ensure it remains relevant and useful as the project evolves.
|