Documentation
¶
Index ¶
- func EvaluateJSONL(path string, out io.Writer) error
- func EvaluateJSONLWithEngine(db *sql.DB, path string, out io.Writer, engine Engine) error
- func EvaluateJSONLWithState(db *sql.DB, path string, out io.Writer) error
- type Decision
- type DecisionRecord
- func EvaluateAndPersist(db *sql.DB, event Event, rawPayload string) (DecisionRecord, error)
- func EvaluateRuntimeEvent(db *sql.DB, eventID string) (DecisionRecord, bool, error)
- func EvaluateRuntimeEventWithEngine(db *sql.DB, eventID string, engine Engine) (DecisionRecord, bool, error)
- func ListDecisions(db *sql.DB, runID string) ([]DecisionRecord, error)
- func PersistDecision(db *sql.DB, event Event, rawPayload string, decision Decision) (DecisionRecord, error)
- type Engine
- type Event
- type QueryRefs
- type ResponseActionRecord
- type ResponseActionView
- type ResponseActionsReport
- type RiskSignalRecord
- type RiskSignalView
- type RiskSignalsReport
- type Rule
- type RuleFile
- type RuleMatch
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func EvaluateJSONLWithEngine ¶
Types ¶
type DecisionRecord ¶
type DecisionRecord struct {
ID string `json:"id"`
EventID string `json:"event_id"`
RunID string `json:"run_id"`
SessionID string `json:"session_id"`
RuleID string `json:"rule_id"`
Decision string `json:"decision"`
Reason string `json:"reason"`
CreatedAt string `json:"created_at"`
}
func EvaluateAndPersist ¶
func EvaluateRuntimeEvent ¶
func ListDecisions ¶
func ListDecisions(db *sql.DB, runID string) ([]DecisionRecord, error)
func PersistDecision ¶
type Event ¶
type Event struct {
Source string `json:"source"`
EventType string `json:"event_type"`
RunID string `json:"run_id"`
SessionID string `json:"session_id"`
ToolCallID string `json:"tool_call_id"`
ProcessID string `json:"process_id"`
SnapshotID string `json:"snapshot_id"`
DstIP string `json:"dst_ip"`
Path string `json:"path"`
Args []string `json:"args"`
}
type ResponseActionRecord ¶
type ResponseActionRecord struct {
ID string `json:"id"`
RunID string `json:"run_id"`
SessionID string `json:"session_id"`
ProcessID string `json:"process_id"`
SnapshotID string `json:"snapshot_id"`
RiskSignalID string `json:"risk_signal_id"`
PolicyDecisionID string `json:"policy_decision_id"`
ActionType string `json:"action_type"`
TargetType string `json:"target_type"`
TargetID string `json:"target_id"`
Status string `json:"status"`
ResultRef string `json:"result_ref"`
Payload string `json:"payload"`
CreatedAt string `json:"created_at"`
}
func ListResponseActions ¶
func ListResponseActions(db *sql.DB, runID string) ([]ResponseActionRecord, error)
type ResponseActionView ¶
type ResponseActionView struct {
Response ResponseActionRecord `json:"response"`
Query QueryRefs `json:"query"`
}
type ResponseActionsReport ¶
type ResponseActionsReport struct {
SchemaVersion string `json:"schema_version"`
RunID string `json:"run_id,omitempty"`
ResultSetID string `json:"result_set_id"`
PageHash string `json:"page_hash"`
Count int `json:"count"`
Responses []ResponseActionView `json:"responses"`
}
func BuildResponseActionsReport ¶
func BuildResponseActionsReport(db *sql.DB, runID string) (ResponseActionsReport, error)
type RiskSignalRecord ¶
type RiskSignalRecord struct {
ID string `json:"id"`
RunID string `json:"run_id"`
SessionID string `json:"session_id"`
ToolCallID string `json:"tool_call_id"`
ProcessID string `json:"process_id"`
SnapshotID string `json:"snapshot_id"`
EventID string `json:"event_id"`
PolicyDecisionID string `json:"policy_decision_id"`
SignalType string `json:"signal_type"`
Severity string `json:"severity"`
Reason string `json:"reason"`
RecommendedAction string `json:"recommended_action"`
Payload string `json:"payload"`
CreatedAt string `json:"created_at"`
}
func ListRiskSignals ¶
func ListRiskSignals(db *sql.DB, runID string) ([]RiskSignalRecord, error)
type RiskSignalView ¶
type RiskSignalView struct {
Risk RiskSignalRecord `json:"risk"`
Query QueryRefs `json:"query"`
}
type RiskSignalsReport ¶
type RiskSignalsReport struct {
SchemaVersion string `json:"schema_version"`
RunID string `json:"run_id,omitempty"`
ResultSetID string `json:"result_set_id"`
PageHash string `json:"page_hash"`
Count int `json:"count"`
Risks []RiskSignalView `json:"risks"`
}
func BuildRiskSignalsReport ¶
func BuildRiskSignalsReport(db *sql.DB, runID string) (RiskSignalsReport, error)
Click to show internal directories.
Click to hide internal directories.