- Add dns.windy.lan to Ansible inventory (adguardhome group/profile) with a read-only healthcheck template, systemd timer, and on-demand report parity with the other active hosts; verified green on the host. - Add synapse.chans.xyz to the AGENTS.md active-host quick map. - Remove plans/; migrate decisions/verification to a Linear vps project doc and file the remaining gaps as W1N-46..49 with blocking edges. - Retire scripts/check-mx2.sh; point mailcow health/update runbooks and the mx2 host file at the Ansible health report. - Trim us2 stub software to verified running services; note dormant dirs. - Normalize repo docs to English; drop the non-existent CONTEXT.md/ADR claim and remove docs/agents/domain.md.
2.0 KiB
2.0 KiB
Issue tracker: Linear
Issues and PRDs for this repo are tracked in Linear, driven entirely through the
Linear MCP configured in the current runtime. VPS operation records use the
Linear vps project (team W1ndy).
Conventions
- Create:
linear_save_issue(requirestitle+team); description as real-newline Markdown. - Read:
linear_get_issue <identifier>(e.g. LIN-123), optionally withincludeRelations. - List:
linear_list_issues, filtered byquery/state/assignee/team/project. - Comment:
linear_save_comment(passissueId+body). - Labels:
linear_save_issuelabelsfield (replaces the whole label set). - Status:
linear_save_issuestatefield (type / name / ID).
Resolve team, project, and cycle names through the Linear MCP rather than hard-coding them.
Cross-issue constraint baseline
The plans/ directory is retired (removed 2026-08-06). Plans and baselines now
live in the vps project document "VPS 运维重构:已确认决策与验收标准". Open work
items are tracked as individual issues with dependencies expressed via
blockedBy / blocks. Read that document before adding new tasks.
When a skill says "publish to the issue tracker"
Create a Linear issue with linear_save_issue (project: vps).
When a skill says "fetch the relevant ticket"
Use linear_get_issue <identifier>.
Wayfinding operations
- Map: one issue as the map; child tickets link via
parentId. - Child ticket:
linear_save_issuewithparentIdset to the map; labelswayfinder:<type>(research / prototype / grilling / task). - Blocking:
linear_save_issueblockedBy/blocks(append-only). - Frontier query: list the map's open children, excluding those blocked or already assigned; take the first in map order.
- Claim:
linear_save_issueassignee: me. - Resolve:
linear_save_commentthe answer → updatestate→ append a pointer under the map's decisions-so-far.