launchplan

package
v0.149.5 Latest Latest
Warning

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

Go to latest
Published: Oct 12, 2026 License: MIT Imports: 12 Imported by: 0

Documentation

Overview

Package launchplan explains a proposed launch using explicit, read-only inputs. It has no process, network, login, daemon, or policy mutation path.

Index

Constants

View Source
const (
	Pass  = egg.LaunchPass
	Fail  = egg.LaunchFail
	Unrun = egg.LaunchUnrun
)
View Source
const (
	Unknown     = egg.FactUnknown
	Supported   = egg.FactSupported
	Unsupported = egg.FactUnsupported
)

Variables

This section is empty.

Functions

func Render

func Render(w io.Writer, report Report) error

func WriteJSON

func WriteJSON(w io.Writer, report Report) error

Types

type Capabilities

type Capabilities = egg.LaunchCapabilities

type Fact

type Fact = egg.LaunchFact

Shared preparation owns capability, compatibility and policy decisions.

type Gate

type Gate = egg.LaunchCheck

type PathEvidence

type PathEvidence struct {
	Path      string `json:"path"`               // cleaned display path, retaining aliases
	Resolved  string `json:"resolved,omitempty"` // canonical identity for filesystem checks
	Available bool   `json:"available"`
	Source    string `json:"source"`
}

type ProviderEvidence

type ProviderEvidence = egg.LaunchProviderEvidence

type Report

type Report struct {
	Acceptance         string                 `json:"acceptance"`
	ProviderVersion    string                 `json:"provider_version,omitempty"`
	SchemaVersion      int                    `json:"schema_version"`
	ReadOnly           bool                   `json:"read_only"`
	Readiness          string                 `json:"readiness"`
	Route              string                 `json:"route"`
	Agent              string                 `json:"agent,omitempty"`
	CWD                PathEvidence           `json:"cwd"`
	Home               PathEvidence           `json:"home"`
	Executable         PathEvidence           `json:"executable"`
	ExecutableSHA256   string                 `json:"executable_sha256,omitempty"`
	EvidenceSHA256     string                 `json:"evidence_sha256,omitempty"`
	CapabilitiesSHA256 string                 `json:"capabilities_sha256,omitempty"`
	PolicyBase         PathEvidence           `json:"policy_base"`
	MergeHome          PathEvidence           `json:"merge_home"`
	PolicySource       string                 `json:"policy_source"`
	PolicyRules        []egg.PolicyRuleSource `json:"policy_rules"`
	Network            string                 `json:"network"`
	Domains            []string               `json:"domains"`
	LocalPorts         []int                  `json:"local_ports"`
	ProviderArgv       []string               `json:"provider_argv"`
	ArgvScope          string                 `json:"argv_scope"`
	Credentials        []PathEvidence         `json:"credentials"`
	Provenance         map[string]string      `json:"provenance"`
	Gates              []Gate                 `json:"gates"`
}

func Inspect

func Inspect(req Request) (Report, error)

Inspect reads only named policy/evidence inputs and path metadata. Required facts and absent paths become gates. Malformed contract inputs fail closed.

type Request

type Request struct {
	Route            string
	Agent            string
	CWD              string
	PathBase         string // required only for relative CWD; never ambient Getwd
	Home             string
	MergeHome        string // host HOME used during inheritance; empty explicitly uses Home
	PolicyBase       string // configured root for relative FS rules; empty uses proposed CWD
	AllowedHomeRoot  string
	Executable       string // explicit absolute path; never LookPath
	ProviderURL      string // explicit routing metadata; only derived host is exported
	ProviderStateDir string // explicit CODEX_HOME/etc override, never ambient
	PolicyPath       string // empty explicitly chooses built-in defaults
	BasesDir         string
	CapabilitiesPath string
	EvidencePath     string
	CredentialPaths  []string // stat metadata only; contents never opened
	Unattended       bool
}

Jump to

Keyboard shortcuts

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