Help us shape the future of Go! Take the 2026 Go Developer Survey

steering

package
v0.8.3 Latest Latest
Warning

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

Go to latest
Published: Oct 21, 2026 License: MIT Imports: 1 Imported by: 1

Documentation

Overview

Package steering 运行中转向队列:turn 执行中用户插入的新输入按投递语义 分流——guide(下一个模型请求边界前注入,不打断当前工具执行)与 queue (本 turn 结束后作为下一轮输入)。对标 ZCode steering.ts 的 pendingInputs 形态;不含 turn 机集成(那是运行时的事),只提供线程安全的队列原语。

关键语义(ZCode 踩坑固化的):

  • guide 输入不丢:模型执行窗口已关闭时(Drain 后未消费)fallback 为 queue 语义,由调用方在 turn 末尾统一取走;
  • 同一 turn 内 guide 注入后续跑而非新开 turn,保持上下文连续。

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type Delivery

type Delivery string

Delivery 投递语义。

const (
	// Guide 下一模型请求边界注入(不中断当前工具执行)。
	Guide Delivery = "guide"
	// Queued 本 turn 结束后作为下一轮输入。
	Queued Delivery = "queue"
)

type Input

type Input struct {
	Text     string
	Delivery Delivery
}

Input 一条待投递的用户输入。

type Queue

type Queue struct {
	// contains filtered or unexported fields
}

Queue 待投递输入队列(并发安全)。零值可用。

func (*Queue) DemoteGuidesToQueued

func (q *Queue) DemoteGuidesToQueued()

DemoteGuidesToQueued 把全部 guide 降级为 queued(turn 提前收尾/执行窗口 关闭时调用——guide 不丢,转排队)。

func (*Queue) DequeueQueued

func (q *Queue) DequeueQueued() (Input, bool)

DequeueQueued 取一条 queued 输入(FIFO)。队列空返回 ok=false。

func (*Queue) DrainGuides

func (q *Queue) DrainGuides() []Input

DrainGuides 取走全部 guide 输入(模型请求边界调用)。模型执行窗口关闭时 guide 降级为 queued——不丢输入。

func (*Queue) Enqueue

func (q *Queue) Enqueue(text string)

Enqueue 投递 queued 输入(turn 结束后消费)。

func (*Queue) Len

func (q *Queue) Len() int

Len 当前待投递总数(观测用)。

func (*Queue) Steer

func (q *Queue) Steer(text string)

Steer 投递 guide 输入(模型请求边界注入)。

Jump to

Keyboard shortcuts

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