All notable changes to techknowmad-mcp are documented in this file.
First release. Built autonomously via the Edgecraft Protocol — 8 development cycles.
- Added
conftest.pywith shared fixtures for all test modules - Added 244 new tests (from 24 to 268 total)
- Coverage improved from 71% to 99% across 8 server modules
- Extended test files for every module: edgecraft-benchmark, forge-generate, graph-forge, ground-truth, idea-killer, negativa-score, phyloid-evolve, trace-agent
- Fixed
Noneconstraints crashing_generate_edge_cases_logic - Fixed
Nonetest_cases crashing_run_benchmark_logic - Fixed non-dict args crashing
_compare_benchmarks_logic - Fixed
Nonenodes/edges crashing_build_adjacency - Fixed
Noneidea/mode/domain/scenarios/dimensions crashing idea-killer, negativa-score - Fixed
Nonepopulation crashing_evolve_population_logic - Fixed
Noneindividual crashing_mutate_individual_logic - All 9 None-input paths now return graceful results
- Added
@lru_cache(maxsize=512)to_score_dimensionin negativa-score- 15x measured speedup on repeated calls (96x with warm cache)
- Added
@lru_cache(maxsize=1024)to_token_overlapin ground-truth-mcp - Both functions are pure (deterministic) — cache correctness guaranteed
- Security scan: 0 hardcoded secrets found
- 2 false positives documented: SQL injection test fixture (intentional), JSON Schema URL (static)
- Added
_MAX_IDEA_LENGTH = 10,000input truncation guard in negativa-score (DoS protection) - Added
_MAX_SEQUENCES = 500cap in phyloid-evolve_compute_phylogeny_logic(O(n²) DoS guard)
- Added
.github/workflows/ci.yml:- Checkout, setup-python 3.12, uv install, ruff check, pytest with coverage ≥90%
- Added
.pre-commit-config.yamlwith ruff + ruff-format + mypy hooks - Fixed 87 ruff lint issues (unsorted imports, unused variables, bare f-strings)
- Added
.gitignorefor pycache, build artifacts, venv
- Added 35 Hypothesis property tests across 4 modules
- edgecraft-benchmark: passed+failed==total, pass_rate∈[0,100], identity invariant
- negativa-score: score∈[0,10], total==sum of dimensions, sorted descending
- graph-forge: density∈[0,1], centrality≥0, path invariant in linear graphs
- phyloid-evolve: Hamming symmetry/non-negative/bounded, population size preserved
- Added
examples/example_benchmark_edgecases.py— edge case generation + benchmarking - Added
examples/example_idea_analysis.py— adversarial critique + risk profiling pipeline - Added
examples/example_graph_phylogeny.py— knowledge graphs + genetic evolution + phylogeny - Enhanced docstrings for
_run_benchmark_logic,_bfs_path,_query_graph_logic,_start_trace_logic
- Updated
pyproject.tomlwith author, keywords, classifiers, readme field - Added
CHANGELOG.md(this file) - Added
Makefilewithtest,lint,format,security,cleantargets - Added
AGENTS.mddocumenting the Edgecraft autonomous development protocol - Added
EVOLUTION.mddocumenting all 8 cycles with timestamps and findings - Tagged
v0.1.0
| Metric | Before | After |
|---|---|---|
| Tests | 24 | 303 |
| Coverage | 71% | 99% |
| Lint issues | 87 | 0 |
| Security findings | — | 0 real (2 FP) |
| Property tests | 0 | 35 |
| Working examples | 0 | 3 |
| CI pipeline | None | GitHub Actions |