decisionrecord

package
v0.0.0-...-b0b31a8 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Nov 3, 2026 License: MIT Imports: 2 Imported by: 0

Documentation

Overview

Package decisionrecord defines the shared, non-executing decision evidence exchanged by the host ledger and version history. Constructing these values authenticates nobody and grants no authority. Verification, policy, subject binding, persistence and execution remain with their owning packages.

Index

Constants

View Source
const (
	SuiteKind        Kind   = "suite_version"
	EffectKind       Kind   = "effect_approval"
	Accept           Action = "accept"
	Reject           Action = "reject"
	RequestChanges   Action = "request_changes"
	Approve          Action = "approve"
	Deny             Action = "deny"
	NonExecutingMode        = "non_executing_decision_v1"
)

Variables

This section is empty.

Functions

This section is empty.

Types

type Action

type Action string

type Authorization

type Authorization struct {
	Actor               Identity
	Subject             SubjectRef
	Action              Action
	Role, PolicyVersion string
	GrantIDs            []string
}

Authorization is historical evidence supplied by verified host policy. A consumer must separately check current policy, not infer power from Role.

type DecideRequest

type DecideRequest struct {
	Workspace, Key string
	Subject        SubjectRef
	Action         Action
	Feedback       string
}

type DecisionRecord

type DecisionRecord struct {
	ID, StoreID, HostLineageID string
	Request                    DecideRequest
	RequestDigest              string
	Actor                      Identity
	Outcome                    string // recorded or refused; reject/deny remain explicit human actions.
	RefusalCode                string
	Authorization              *Authorization
	CommittedAt                time.Time
	Mode                       string
}

type Identity

type Identity = api.CallerIdentity

type Kind

type Kind string

type SubjectRef

type SubjectRef struct {
	Workspace  string
	Kind       Kind
	ID         string
	Generation uint64
	Digest     string
}

SubjectRef is an opaque retained-subject identity, never an authorization.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL