mesh-issues: import hq's issue folders at their own numbers, and an issue with a folder is whole in the tracker (hq ADR 0275, to-be 53 slice 3)
mesh/merge-gate pass: builds mesh-issues → novox; no bus step; every machine composes with the change as it did without (4 of 4 compose)
mesh/repo-check pass: its merge-check.sh passed, each part in its toolchain: merge-check.sh (go), merge-check-typescript.sh (typescript)
mesh/delivery delivered

This commit is contained in:
jochen
2026-10-10 16:00:19 +02:00
parent 1fcf46fbfc
commit d05308a419
19 changed files with 2243 additions and 49 deletions
+27 -6
View File
@@ -42,18 +42,22 @@ const Unproven = "unproven"
type Issue struct {
Number uint64 `json:"number"`
Title string `json:"title"`
// Status is one of the five; empty for an issue whose folder in hq keeps its status (to-be 53 §3).
// Status is one of the five. It was empty for an issue opened with a folder in hq before the import of
// slice 3, whose folder kept its status; the import fills it (to-be 53 §8).
Status string `json:"status,omitempty"`
Report string `json:"report"`
Opened time.Time `json:"opened"`
OpenedBy string `json:"opened-by"`
Closed *time.Time `json:"closed,omitempty"`
// LocatedIn names registered owners, each optionally followed by where in it.
LocatedIn []string `json:"located-in,omitempty"`
FixedBy []string `json:"fixed-by,omitempty"`
AmendedDesign []string `json:"amended-design,omitempty"`
Replay string `json:"replay,omitempty"`
ReplayNone string `json:"replay-none,omitempty"`
LocatedIn []string `json:"located-in,omitempty"`
// LocatedInUnverified is the entries of LocatedIn that named no registered owner when the import took
// them from hq as written; a move that gives located-in anew clears it, as a move checks every entry.
LocatedInUnverified []string `json:"located-in-unverified,omitempty"`
FixedBy []string `json:"fixed-by,omitempty"`
AmendedDesign []string `json:"amended-design,omitempty"`
Replay string `json:"replay,omitempty"`
ReplayNone string `json:"replay-none,omitempty"`
// Reason is why it will not be fixed: what a wontfix needs.
Reason string `json:"reason,omitempty"`
// Record is the issue's folder in hq, when it has one.
@@ -62,6 +66,23 @@ type Issue struct {
Links []Link `json:"links,omitempty"`
// Opening is the id of the call that opened it, so a write whose answer was lost is known as its own.
Opening string `json:"opening"`
// Imported says that the issue, or its status, was taken from its folder in hq by the import of
// slice 3: when, by whom, at which commit of hq, from which document. An issue the import wrote has
// OpenedBy ImportedBy, and its Opened is the date its report gave.
Imported *Import `json:"imported,omitempty"`
}
// ImportedBy is who opened an issue the import wrote: not a caller of `open`, and not a name anybody typed.
const ImportedBy = "import"
// Import is how an issue, or its status, came from hq.
type Import struct {
At time.Time `json:"at"`
// By is who ran the import, as the runtime proves it (Unproven until it does).
By string `json:"by"`
Commit string `json:"commit"`
// From is the document read, empty for a status filled without one.
From string `json:"from,omitempty"`
}
// Note is one note on an issue: appended, never edited.