openapi

package
v0.0.0-...-909ddd0 Latest Latest
Warning

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

Go to latest
Published: Sep 2, 2026 License: Apache-2.0 Imports: 15 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

View Source
var (
	ErrInvalidParams = errors.New("invalid params")
)

Functions

This section is empty.

Types

type Arg

type Arg struct {
	Schema     *SchemaFacts `json:"schema,omitempty"`
	Name       string       `json:"name"`
	Type       string       `json:"type,omitempty"`
	Location   string       `json:"location,omitempty"`
	Confidence string       `json:"confidence,omitempty"`
	Service    string       `json:"service_name,omitempty"`
	Path       string       `json:"path,omitempty"`
	Required   bool         `json:"required,omitempty"`
}

type Args

type Args struct {
	Spec              *map[string]any `json:"spec,omitempty"`
	ExistingSteps     *map[string]any `json:"existing_steps,omitempty"`
	IncludeRegistered *bool           `json:"include_registered,omitempty"`
	SpecText          string          `json:"spec_text,omitempty"`
}

type Capabilities

type Capabilities = argyllfacts.Capabilities

type EndpointCapability

type EndpointCapability = argyllfacts.EndpointCapability

type Info

type Info struct {
	Title       string `json:"title"`
	Version     string `json:"version"`
	Description string `json:"description"`
}

type MappingCapability

type MappingCapability = argyllfacts.MappingCapability

type MatchCapability

type MatchCapability = argyllfacts.MatchCapability

type Operation

type Operation struct {
	ID          string   `json:"id"`
	Method      string   `json:"method,omitempty"`
	Path        string   `json:"path,omitempty"`
	Endpoint    string   `json:"endpoint,omitempty"`
	Summary     string   `json:"summary,omitempty"`
	Description string   `json:"description,omitempty"`
	Entity      string   `json:"entity,omitempty"`
	Inputs      []Arg    `json:"inputs"`
	Outputs     []Arg    `json:"outputs"`
	Rationale   []string `json:"rationale"`
	Ambiguities []string `json:"ambiguities"`
}

type RegisteredStep

type RegisteredStep struct {
	ID       string   `json:"id"`
	Name     string   `json:"name"`
	Source   string   `json:"source"`
	Path     string   `json:"path,omitempty"`
	Required []string `json:"required"`
	Optional []string `json:"optional"`
	Outputs  []string `json:"outputs"`
}

type Result

type Result struct {
	Info          Info             `json:"info"`
	Mode          string           `json:"mode,omitempty"`
	BaseURL       string           `json:"base_url,omitempty"`
	LLMHandoff    string           `json:"llm_handoff_prompt,omitempty"`
	ExistingSteps []RegisteredStep `json:"existing_steps,omitempty"`
	Operations    []Operation      `json:"operations,omitempty"`
	Ambiguities   []string         `json:"ambiguities,omitempty"`
	Warnings      []string         `json:"warnings,omitempty"`
	Capabilities  Capabilities     `json:"argyll_capabilities"`
}

func AnalyzeContract

func AnalyzeContract(
	args Args, existing []Step, warnings []string,
) (Result, error)

type SchemaFacts

type SchemaFacts struct {
	Properties map[string]SchemaFacts `json:"properties,omitempty"`
	Type       string                 `json:"type,omitempty"`
	Required   []string               `json:"required,omitempty"`
	Enum       []any                  `json:"enum,omitempty"`
}

type Step

type Step struct {
	InputsByType  map[string]string
	OutputsByType map[string]string
	ID            string
	Name          string
	Source        string
	Method        string
	Path          string
	Required      []string
	Optional      []string
	Outputs       []string
}

Directories

Path Synopsis

Jump to

Keyboard shortcuts

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