@praneeth_54/agentdoctor 2.0.0 → 2.1.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.
- package/CHANGELOG.md +141 -4
- package/README.md +329 -153
- package/dist/agent/approvals.d.ts +24 -0
- package/dist/agent/approvals.js +64 -0
- package/dist/agent/chat/index.d.ts +7 -0
- package/dist/agent/chat/index.js +5 -0
- package/dist/agent/chat/memory.d.ts +44 -0
- package/dist/agent/chat/memory.js +103 -0
- package/dist/agent/chat/project-summary.d.ts +16 -0
- package/dist/agent/chat/project-summary.js +70 -0
- package/dist/agent/chat/prompts.d.ts +6 -0
- package/dist/agent/chat/prompts.js +39 -0
- package/dist/agent/chat/response.d.ts +19 -0
- package/dist/agent/chat/response.js +109 -0
- package/dist/agent/chat/service.d.ts +42 -0
- package/dist/agent/chat/service.js +252 -0
- package/dist/agent/chat/types.d.ts +48 -0
- package/dist/agent/chat/types.js +1 -0
- package/dist/agent/context/retrieve.d.ts +21 -0
- package/dist/agent/context/retrieve.js +117 -0
- package/dist/agent/context/truth.d.ts +6 -0
- package/dist/agent/context/truth.js +19 -0
- package/dist/agent/context/types.d.ts +23 -0
- package/dist/agent/context/types.js +4 -0
- package/dist/agent/index.d.ts +26 -0
- package/dist/agent/index.js +14 -0
- package/dist/agent/loop.d.ts +51 -0
- package/dist/agent/loop.js +222 -0
- package/dist/agent/modes.d.ts +18 -0
- package/dist/agent/modes.js +102 -0
- package/dist/agent/plan.d.ts +30 -0
- package/dist/agent/plan.js +121 -0
- package/dist/agent/runtime.d.ts +67 -0
- package/dist/agent/runtime.js +180 -0
- package/dist/agent/state.d.ts +30 -0
- package/dist/agent/state.js +95 -0
- package/dist/agent/student.d.ts +56 -0
- package/dist/agent/student.js +230 -0
- package/dist/agent/tools/execute.d.ts +18 -0
- package/dist/agent/tools/execute.js +355 -0
- package/dist/agent/tools/index.d.ts +6 -0
- package/dist/agent/tools/index.js +5 -0
- package/dist/agent/tools/registry.d.ts +7 -0
- package/dist/agent/tools/registry.js +212 -0
- package/dist/agent/tools/run.d.ts +24 -0
- package/dist/agent/tools/run.js +44 -0
- package/dist/agent/tools/types.d.ts +32 -0
- package/dist/agent/tools/types.js +10 -0
- package/dist/agent/tools/write.d.ts +24 -0
- package/dist/agent/tools/write.js +121 -0
- package/dist/agent/verify.d.ts +29 -0
- package/dist/agent/verify.js +210 -0
- package/dist/ai/config.d.ts +22 -0
- package/dist/ai/config.js +68 -0
- package/dist/ai/index.d.ts +17 -0
- package/dist/ai/index.js +52 -0
- package/dist/ai/providers/mock.d.ts +20 -0
- package/dist/ai/providers/mock.js +84 -0
- package/dist/ai/providers/none.d.ts +6 -0
- package/dist/ai/providers/none.js +23 -0
- package/dist/ai/providers/openai-compatible.d.ts +21 -0
- package/dist/ai/providers/openai-compatible.js +151 -0
- package/dist/ai/redact.d.ts +8 -0
- package/dist/ai/redact.js +21 -0
- package/dist/ai/types.d.ts +71 -0
- package/dist/ai/types.js +6 -0
- package/dist/architecture/contract.d.ts +64 -0
- package/dist/architecture/contract.js +373 -0
- package/dist/assurance/change.d.ts +211 -0
- package/dist/assurance/change.js +624 -0
- package/dist/assurance/proof.d.ts +136 -0
- package/dist/assurance/proof.js +338 -0
- package/dist/auth/index.d.ts +81 -0
- package/dist/auth/index.js +130 -0
- package/dist/auth/rbac.d.ts +9 -0
- package/dist/auth/rbac.js +26 -0
- package/dist/cli/commands/agent.d.ts +27 -0
- package/dist/cli/commands/agent.js +153 -0
- package/dist/cli/commands/architecture.d.ts +6 -0
- package/dist/cli/commands/architecture.js +109 -0
- package/dist/cli/commands/assurance.d.ts +67 -0
- package/dist/cli/commands/assurance.js +210 -0
- package/dist/cli/commands/chat.d.ts +14 -0
- package/dist/cli/commands/chat.js +155 -0
- package/dist/cli/commands/complete.js +2 -2
- package/dist/cli/commands/learn.d.ts +12 -0
- package/dist/cli/commands/learn.js +107 -0
- package/dist/cli/commands/platform.d.ts +2 -0
- package/dist/cli/commands/platform.js +5 -1
- package/dist/cli/commands/policy-graph-run.d.ts +40 -0
- package/dist/cli/commands/policy-graph-run.js +200 -0
- package/dist/cli/commands/workspace.d.ts +9 -0
- package/dist/cli/commands/workspace.js +82 -0
- package/dist/cli/program.js +627 -17
- package/dist/constants.d.ts +1 -1
- package/dist/constants.js +1 -1
- package/dist/contracts/index.d.ts +1 -1
- package/dist/contracts/index.js +2 -2
- package/dist/core/brain-product/init.js +5 -2
- package/dist/core/secrets/scan.d.ts +7 -1
- package/dist/core/secrets/scan.js +9 -9
- package/dist/coverage/cobertura.d.ts +6 -0
- package/dist/coverage/cobertura.js +52 -0
- package/dist/coverage/istanbul.d.ts +7 -0
- package/dist/coverage/istanbul.js +134 -0
- package/dist/coverage/lcov.d.ts +7 -0
- package/dist/coverage/lcov.js +59 -0
- package/dist/coverage/load.d.ts +9 -0
- package/dist/coverage/load.js +39 -0
- package/dist/coverage/types.d.ts +23 -0
- package/dist/coverage/types.js +5 -0
- package/dist/dashboard/server.d.ts +7 -1
- package/dist/dashboard/server.js +110 -6
- package/dist/enforcement/runner.d.ts +52 -3
- package/dist/enforcement/runner.js +467 -16
- package/dist/index.d.ts +36 -2
- package/dist/index.js +23 -2
- package/dist/intelligence/graph/build.d.ts +2 -0
- package/dist/intelligence/graph/build.js +49 -5
- package/dist/intelligence/graph/incremental.d.ts +68 -0
- package/dist/intelligence/graph/incremental.js +234 -0
- package/dist/intelligence/resolve/imports.d.ts +36 -0
- package/dist/intelligence/resolve/imports.js +245 -0
- package/dist/languages/go.d.ts +9 -0
- package/dist/languages/go.js +50 -0
- package/dist/languages/index.d.ts +11 -0
- package/dist/languages/index.js +76 -0
- package/dist/languages/php.d.ts +8 -0
- package/dist/languages/php.js +202 -0
- package/dist/languages/python.d.ts +11 -0
- package/dist/languages/python.js +180 -0
- package/dist/languages/types.d.ts +42 -0
- package/dist/languages/types.js +26 -0
- package/dist/languages/typescript.d.ts +3 -0
- package/dist/languages/typescript.js +95 -0
- package/dist/mcp/agent/registry.d.ts +13 -0
- package/dist/mcp/agent/registry.js +234 -0
- package/dist/mcp/agentdoctor/server.js +8 -1
- package/dist/mcp/intelligence/handlers.d.ts +5 -0
- package/dist/mcp/intelligence/handlers.js +229 -40
- package/dist/mcp/intelligence/path-safety.d.ts +2 -4
- package/dist/mcp/intelligence/path-safety.js +25 -44
- package/dist/mcp/intelligence/registry.d.ts +1 -1
- package/dist/mcp/intelligence/registry.js +69 -1
- package/dist/platform/firewall/evaluate.d.ts +6 -3
- package/dist/platform/firewall/evaluate.js +66 -15
- package/dist/platform/graph/build.js +19 -23
- package/dist/platform/health/analyze.js +23 -17
- package/dist/platform/index.js +2 -0
- package/dist/platform/test-impact/analyze.d.ts +21 -3
- package/dist/platform/test-impact/analyze.js +214 -28
- package/dist/platform/tokens/plan.js +39 -20
- package/dist/platform/types.d.ts +9 -0
- package/dist/policy/compose.d.ts +34 -0
- package/dist/policy/compose.js +118 -0
- package/dist/policy/packs.js +33 -1
- package/dist/security/paths.d.ts +21 -0
- package/dist/security/paths.js +133 -0
- package/dist/storage/postgres.d.ts +26 -0
- package/dist/storage/postgres.js +90 -0
- package/dist/storage/provider.d.ts +2 -7
- package/dist/storage/provider.js +22 -16
- package/dist/storage/sqlite.d.ts +33 -0
- package/dist/storage/sqlite.js +77 -0
- package/dist/team/auth.js +1 -1
- package/dist/workspace/index.d.ts +69 -0
- package/dist/workspace/index.js +220 -0
- package/package.json +9 -3
package/CHANGELOG.md
CHANGED
|
@@ -7,10 +7,145 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
|
|
|
7
7
|
|
|
8
8
|
## [Unreleased]
|
|
9
9
|
|
|
10
|
-
|
|
10
|
+
## [2.1.0] — 2026-09-23
|
|
11
|
+
|
|
12
|
+
Optional Project AI Agent line on top of 2.0.1 assurance. AI remains **opt-in**.
|
|
13
|
+
Canonical release notes: [docs/RELEASE_2_1_0.md](docs/RELEASE_2_1_0.md).
|
|
14
|
+
Checklist: [docs/RELEASE_CHECKLIST_2_1_0.md](docs/RELEASE_CHECKLIST_2_1_0.md).
|
|
15
|
+
|
|
16
|
+
#### Project Intelligence
|
|
17
|
+
|
|
18
|
+
- Project-aware context retrieval (Brain / graph / planContext orchestration).
|
|
19
|
+
- Project Chat CLI (`agentdoctor chat` / `ask`) with evidence-backed answers.
|
|
20
|
+
- Truth labels: `VERIFIED` | `INFERRED` | `UNKNOWN` | `EXTERNAL`.
|
|
21
|
+
|
|
22
|
+
#### AI Agent
|
|
23
|
+
|
|
24
|
+
- Provider abstraction (`ModelProvider`): `none` | `mock` | `openai-compatible` | `ollama`.
|
|
25
|
+
- Optional AI architecture: model reasons; AgentDoctor provides context, controls tools, verifies results.
|
|
26
|
+
- Native Anthropic / Gemini SDKs remain **NOT IMPLEMENTED** (fail closed via `none`).
|
|
27
|
+
|
|
28
|
+
#### Agent Tools
|
|
29
|
+
|
|
30
|
+
- Read / search tools (path-safe).
|
|
31
|
+
- Create / edit / delete with diffs (approval required).
|
|
32
|
+
- Controlled command and test execution via `runControlledCommand` (`shell=false`).
|
|
33
|
+
- Coding loop: PLAN → APPROVAL → TOOLS → OBSERVE → VERIFY.
|
|
34
|
+
|
|
35
|
+
#### Safety
|
|
36
|
+
|
|
37
|
+
- Path safety and symlink-dir escape rejection on writes.
|
|
38
|
+
- Workspace isolation when `WorkspaceModel` is provided; otherwise repo-root binding.
|
|
39
|
+
- Mode `allowWrites` enforcement (LEARN hard-blocks writes).
|
|
40
|
+
- Approval gates (`--approve` / `approvedByHuman`); model cannot self-approve.
|
|
41
|
+
- Dangerous command blocking; prompt-injection data separation (`PROJECT_DATA` / `TOOL_OUTPUT_UNTRUSTED`).
|
|
42
|
+
- Secret redaction (reuses existing redaction infrastructure).
|
|
43
|
+
- Hard agent limits: tool calls, iterations, wall time, files modified, context chars.
|
|
44
|
+
|
|
45
|
+
#### Verification
|
|
46
|
+
|
|
47
|
+
- Post-change analysis / evidence / proof / architecture (where applicable).
|
|
48
|
+
- Optional controlled test run (`--run-tests`).
|
|
49
|
+
- Always preserves `ENGINEERING_CORRECTNESS_NOT_CLAIMED`.
|
|
50
|
+
|
|
51
|
+
#### Student
|
|
52
|
+
|
|
53
|
+
- `agentdoctor learn` — project explain, viva, docs.
|
|
54
|
+
- Default student experience: **BUILD_WITH_ME** (explain → plan → teach → approve → `runCodingLoop` → verify).
|
|
55
|
+
- Rich interactive student UI remains **PARTIAL**.
|
|
56
|
+
|
|
57
|
+
#### MCP
|
|
58
|
+
|
|
59
|
+
- Agent tools: `project_context`, `project_ask`, `code_search`, `file_read`, `file_create`, `file_edit`, `agent_plan`, `change_verify`.
|
|
60
|
+
- No unrestricted shell.
|
|
61
|
+
- `project_ask` fail-closed when provider is `none`.
|
|
62
|
+
- MCP `approved=true` is **trusted-caller input**, not cryptographic human identity; MCP does not carry `AgentMode`.
|
|
63
|
+
|
|
64
|
+
#### Dashboard
|
|
65
|
+
|
|
66
|
+
- Project Chat via `POST /api/chat` (ask-only; no file writes).
|
|
67
|
+
- Fail-closed when AI provider resolves to `none` (no silent mock fallback).
|
|
68
|
+
|
|
69
|
+
#### Known limitations
|
|
70
|
+
|
|
71
|
+
- Not an OS sandbox / EDR (**EXTERNAL LIMITATION**).
|
|
72
|
+
- Native Anthropic / Gemini SDKs **NOT IMPLEMENTED**.
|
|
73
|
+
- Correctness is never guaranteed.
|
|
74
|
+
- MCP approval is trusted-caller input (not cryptographic human identity); MCP does not carry AgentMode.
|
|
75
|
+
- Rich interactive student UI remains **PARTIAL**.
|
|
76
|
+
|
|
77
|
+
## [2.0.1] — 2026-09-23
|
|
78
|
+
|
|
79
|
+
Hardening and change-assurance cut on top of 2.0.0, plus a deepening pass that
|
|
80
|
+
closes controllable PARTIALs with honest EXTERNAL/EXPERIMENTAL gates. Canonical
|
|
81
|
+
docs: [docs/2.0.1/](docs/2.0.1/README.md). Completion map:
|
|
82
|
+
[docs/2.0.1/FINAL_COMPLETION_AUDIT.md](docs/2.0.1/FINAL_COMPLETION_AUDIT.md).
|
|
83
|
+
|
|
84
|
+
### Added
|
|
85
|
+
|
|
86
|
+
- Change assurance CLI: `agentdoctor change analyze|verify|explain|diff|status`
|
|
87
|
+
assemble repository signals into a structured `ChangeAssessment`.
|
|
88
|
+
- Evidence bundles under `.agentdoctor/evidence/<change-id>/` with versioned
|
|
89
|
+
`manifest.json` and SHA-256 file hashes; `evidence inspect|verify`.
|
|
90
|
+
- Change Proof CLI: `proof build|inspect|explain|verify|export` (integrity +
|
|
91
|
+
optional engineering checks; `correctnessStatus` always
|
|
92
|
+
`ENGINEERING_CORRECTNESS_NOT_CLAIMED`).
|
|
93
|
+
- Architecture contract: `architecture init|analyze|check|explain`.
|
|
94
|
+
- Optional coverage-backed test impact (`--coverage`) with explicit
|
|
95
|
+
`testAttribution` labels (`coverage-map` / `hybrid-heuristic` / `none`).
|
|
96
|
+
- Controlled runner: `run` / `run explain` and `policy check|explain|enforce`
|
|
97
|
+
(execute only when explicitly allowed).
|
|
98
|
+
- Policy composition (builtin pack + `.agentdoctor/policy.json`).
|
|
99
|
+
- Incremental graph surfaces: `graph build|update|rebuild|status`.
|
|
100
|
+
- Workspace isolation CLI: `workspace create|add|list|status|remove`.
|
|
101
|
+
- Language adapters: Python/PHP toolchain bridges; Go honest unsupported stub;
|
|
102
|
+
Java/Kotlin/Rust/Dart unsupported stubs.
|
|
103
|
+
- Storage: SQLite (`node:sqlite`) and Postgres (`tryCreatePostgresStorage`) with
|
|
104
|
+
env/runtime gates.
|
|
105
|
+
- Auth library path: OIDC JWT/JWKS validation + RBAC helpers (browser OAuth
|
|
106
|
+
redirect remains experimental).
|
|
107
|
+
- Combined MCP tools: `change_analyze`, `architecture_check`, `proof_inspect`,
|
|
108
|
+
`evidence_inspect`, `graph_query`.
|
|
109
|
+
- Docs: `docs/2.0.1/` including FINAL_COMPLETION_AUDIT and updated limitations.
|
|
110
|
+
|
|
111
|
+
### Changed
|
|
112
|
+
|
|
113
|
+
- Package positioning: engineering assurance for AI coding agents; description
|
|
114
|
+
and keywords updated (`change-assurance`, `evidence`, `engineering-assurance`).
|
|
115
|
+
- Action default `version` input and CI published-package pins → **2.0.1**.
|
|
116
|
+
- `npm run verify` builds before tests so STDIO MCP suites use fresh `dist/`.
|
|
117
|
+
- Firewall load path seeds DEFAULT_POLICY when no repo policy exists; force-push
|
|
118
|
+
is `require-approval` (not hard-block via baseline pack alone).
|
|
119
|
+
- README / CONTRIBUTING / ROADMAP aligned to honest status labels.
|
|
120
|
+
|
|
121
|
+
### Fixed
|
|
122
|
+
|
|
123
|
+
- CodeQL high alerts: crypto usage, ReDoS hardening, temp-file handling, and
|
|
124
|
+
TOCTOU fixes across secrets scan, graph/health/tokens, team auth, and related
|
|
125
|
+
tests.
|
|
126
|
+
- CI Typecheck / Lint / Test / Build: track plugin fixtures previously ignored
|
|
127
|
+
under `.agentdoctor/`, and normalize TypeScript AST source paths so Windows
|
|
128
|
+
runners match discovered files.
|
|
129
|
+
- Language adapter barrel exports (`pythonAvailable` / `phpAvailable` /
|
|
130
|
+
`goAvailable`) kept consistent.
|
|
131
|
+
|
|
132
|
+
### Security
|
|
133
|
+
|
|
134
|
+
- CodeQL-driven hardening on path/temp and regex surfaces (see Fixed).
|
|
135
|
+
- Central path safety helpers; secret severity≠confidence fields.
|
|
136
|
+
- Change assurance / policy path remains evaluate-only by default
|
|
137
|
+
(`executionResult: "not-executed"`); no fake full browser SSO.
|
|
138
|
+
|
|
139
|
+
### Known limitations (at release)
|
|
11
140
|
|
|
12
|
-
-
|
|
13
|
-
|
|
141
|
+
- Test impact is heuristic without coverage; hybrid when coverage lacks a test
|
|
142
|
+
map.
|
|
143
|
+
- Architecture C4 impact remains **inferred**; contract is repo-local only.
|
|
144
|
+
- Proof `verified` / hash integrity ≠ engineering correctness or compliance.
|
|
145
|
+
- Browser OAuth incomplete (EXPERIMENTAL); Postgres needs live URL (EXTERNAL);
|
|
146
|
+
Java/Kotlin/Rust/Dart/Go AST extractors EXTERNAL; IDE interception EXTERNAL.
|
|
147
|
+
- Published npm Action pins require a human `npm publish` of 2.0.1 before remote
|
|
148
|
+
CI against `version: 2.0.1` succeeds.
|
|
14
149
|
|
|
15
150
|
## [2.0.0] — 2026-09-21
|
|
16
151
|
|
|
@@ -385,7 +520,9 @@ First public beta.
|
|
|
385
520
|
- Not a complete secret scanner
|
|
386
521
|
- Git “tracked secret” detection deferred
|
|
387
522
|
|
|
388
|
-
[Unreleased]: https://github.com/pranee54/AgentDoctor/compare/v2.
|
|
523
|
+
[Unreleased]: https://github.com/pranee54/AgentDoctor/compare/v2.1.0...HEAD
|
|
524
|
+
[2.1.0]: https://github.com/pranee54/AgentDoctor/compare/v2.0.1...v2.1.0
|
|
525
|
+
[2.0.1]: https://github.com/pranee54/AgentDoctor/compare/v2.0.0...v2.0.1
|
|
389
526
|
[2.0.0]: https://github.com/pranee54/AgentDoctor/compare/v1.1.1...v2.0.0
|
|
390
527
|
[1.1.1]: https://github.com/pranee54/AgentDoctor/releases/tag/v1.1.1
|
|
391
528
|
[1.1.0]: https://github.com/pranee54/AgentDoctor/releases/tag/v1.1.0
|