record

package
v0.13.3 Latest Latest
Warning

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

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

Documentation

Overview

Package record is the read side of `abcd <id>`: dispatch on a record id — iss-N, itd-N, spc-N, adr-N, and the ledger's adm-N, srp-N and rfm-N — and report what the record is, its links, and the concrete next move for its lifecycle state (spc-26). It is a leaf package over the capture, intent, and spec read paths plus a thin adr reader; nothing imports it back, and nothing here writes or knows a transport.

Index

Constants

This section is empty.

Variables

View Source
var ErrSkippedRecord = errors.New("skipped on read")

ErrSkippedRecord marks a record whose file IS in its store but that the store's reader skipped on read — an unknown or retired property, a malformed frontmatter block, a hostile leaf. It is a different answer from "not found": the record exists and cannot be described until its file is repaired, so the fault names the file and the reader's own reason (iss-2609240200426413).

View Source
var IDRe = regexp.MustCompile(`^(iss|itd|spc|adr|adm|srp|rfm)-[0-9]+$`)

IDRe is the family gate: the only positional shapes the root command routes here. Anything else stays on the unknown-command path, byte-for-byte.

adm, srp and rfm joined in one edit (spc-2609020626040342): rfm because the reframe spec (spc-2609020626048705) landed after it and inherited the gate rather than making a second edit; describeReframe is that spec's. The reading families rdi, dsp and rdg stay outside it, the residual spc-67 names.

Functions

func RecommendedVerbPaths

func RecommendedVerbPaths() []string

RecommendedVerbPaths enumerates every abcd verb path the next-move table can emit — including verbs arriving via passed-through intent.Ready remedies — for the surface-side anti-drift test.

Types

type Description

type Description struct {
	ID        string            `json:"id"`
	Family    string            `json:"family"` // issue | intent | spec | adr | admission | surprise | reframe
	Title     string            `json:"title"`
	Status    string            `json:"status"` // folder/bucket, directory-as-truth; admitted | recorded | open | complete for the folderless ledger families
	Path      string            `json:"path"`
	Links     map[string]string `json:"links,omitempty"`
	NextMoves []string          `json:"next_moves,omitempty"`
}

Description is the structured answer to "what is this, and what is my next move". Paths are repo-relative; Links carries the record's outbound edges (spec_id / intent / related_intents / related_issues / resolved_by.* / superseded_by) as present.

func Describe

func Describe(repoRoot, id string) (Description, error)

Describe locates id in its store (any status folder or bucket) and renders the read-only description. A shape-matching id found in no store is an error naming the stores searched; Describe never writes.

Directories

Path Synopsis
Package match is the canonical term-overlap primitive: it scores how much of a new text another record already holds, by the words the two share, and classifies a likely double as `duplicates` (near-identical) or `refines` (narrower).
Package match is the canonical term-overlap primitive: it scores how much of a new text another record already holds, by the words the two share, and classifies a likely double as `duplicates` (near-identical) or `refines` (narrower).

Jump to

Keyboard shortcuts

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