545068d222
Implements the full vertical slice for invariant #9 tool-call assessment: - core:toolintent — new module with ToolCallRule seam, ToolCallAssessor, WorldProbe/FileSystemWorldProbe, WorkspacePolicy, PathContainmentRule, and RiskMapping (assessment → RiskSummary / AssessedIssue) - core:tools — ToolCallAssessmentRecord + ToolInvocationRecord.assessment field; DefaultToolReducer handles ToolCallAssessedEvent (replay proof) - core:config — ToolsConfig gains workspaceRoot + privilegedLocations; ConfigLoader parses both; DEFAULT_PRIVILEGED_LOCATIONS built-in - core:kernel — OrchestratorEngines gains toolCallAssessor/workspacePolicy/ worldProbe fields; SessionOrchestrator.dispatchToolCalls runs runPlane2Assessment before the tier gate: BLOCK → hard-reject without executing; PROMPT_USER → elevates tier into approval path with plane2Risk in the ApprovalRequestedEvent - apps/server — constructs PathContainmentRule + ToolCallAssessor + WorkspacePolicy from config and wires them into OrchestratorEngines Assessment is recorded as ToolCallAssessedEvent (environment observed once, facts stored, replay reads events — invariant #9). Assessor and WorldProbe are only invoked on the live orchestrator path, never in replay.
28 lines
1.2 KiB
Groovy
28 lines
1.2 KiB
Groovy
plugins {
|
|
id 'java-library'
|
|
id 'org.jetbrains.kotlin.jvm'
|
|
id 'org.jetbrains.kotlin.plugin.serialization'
|
|
}
|
|
|
|
dependencies {
|
|
testImplementation(project(":core:events"))
|
|
testImplementation(project(":core:sessions"))
|
|
testImplementation(project(":core:transitions"))
|
|
testImplementation(project(":core:validation"))
|
|
testImplementation(project(":core:approvals"))
|
|
testImplementation(project(":core:context"))
|
|
testImplementation(project(":core:inference"))
|
|
testImplementation(project(":core:kernel"))
|
|
testImplementation(project(":core:risk"))
|
|
testImplementation(project(":core:tools"))
|
|
testImplementation(project(":core:toolintent"))
|
|
testImplementation(project(":infrastructure:persistence"))
|
|
testImplementation("org.jetbrains.kotlin:kotlin-test")
|
|
testImplementation(project(":core:artifacts"))
|
|
testImplementation(project(":core:artifacts-store"))
|
|
testImplementation(project(":testing:fixtures"))
|
|
testImplementation(project(":testing:kernel"))
|
|
testImplementation(project(":testing:contracts"))
|
|
testImplementation(testFixtures(project(":testing:contracts")))
|
|
testImplementation("org.jetbrains.kotlinx:kotlinx-coroutines-test:1.9.0")
|
|
} |