docs: capture agent workflow decisions
This commit is contained in:
@@ -88,8 +88,6 @@
|
|||||||
- Ariadne Rust tests are declared in Bazel `BUILD` files; do not add `[[test]]` entries to
|
- Ariadne Rust tests are declared in Bazel `BUILD` files; do not add `[[test]]` entries to
|
||||||
`src/ariadne/Cargo.toml` unless explicitly requested.
|
`src/ariadne/Cargo.toml` unless explicitly requested.
|
||||||
- In this monorepo, "dotfiles" refers to the dotfiles/NixOS configuration under `src/dotfiles/` and `configs/nixos/`.
|
- In this monorepo, "dotfiles" refers to the dotfiles/NixOS configuration under `src/dotfiles/` and `configs/nixos/`.
|
||||||
- The flake does not currently define `formatter.x86_64-linux`.
|
|
||||||
Do not use `nix fmt` as a validation command until a formatter is added.
|
|
||||||
- The `fix` app passes its current directory to Deadnix.
|
- The `fix` app passes its current directory to Deadnix.
|
||||||
Run `nix run .#fix` from the repository root so path exclusions match.
|
Run `nix run .#fix` from the repository root so path exclusions match.
|
||||||
- Git pathspec searches started in a subdirectory default to that subtree.
|
- Git pathspec searches started in a subdirectory default to that subtree.
|
||||||
@@ -113,3 +111,6 @@
|
|||||||
- The default Pi model for NixOS user configuration is set in `configs/nixos/modules/shell/pi/default.nix`, not in vendored Pi source.
|
- The default Pi model for NixOS user configuration is set in `configs/nixos/modules/shell/pi/default.nix`, not in vendored Pi source.
|
||||||
- The `monorepo` and `status` libraries do not have `README.md` files.
|
- The `monorepo` and `status` libraries do not have `README.md` files.
|
||||||
- Check root and `src/skills/.pi/skills/` for enabled symlinks before removing a monorepo skill.
|
- Check root and `src/skills/.pi/skills/` for enabled symlinks before removing a monorepo skill.
|
||||||
|
- Ariadne Rust source files live directly under `src/ariadne/`. The binary entry point is `ariadne_main.rs.
|
||||||
|
- Bazel build-style rules live under `src/skills/style/build/rules/`, not `src/skills/style/rules/`.
|
||||||
|
- Bazel passes arguments after `--` to the executed binary verbatim. A scaffold can define `//path` as a destination-path syntax.
|
||||||
|
|||||||
18
docs/.obsidian/workspace.json
vendored
18
docs/.obsidian/workspace.json
vendored
@@ -219,6 +219,15 @@
|
|||||||
},
|
},
|
||||||
"active": "daab69fc3faab88f",
|
"active": "daab69fc3faab88f",
|
||||||
"lastOpenFiles": [
|
"lastOpenFiles": [
|
||||||
|
"00 INBOX/ai/tldr-design.md",
|
||||||
|
"00 INBOX/ai/caps-escape-design.md",
|
||||||
|
"AGENTS.md",
|
||||||
|
"00 INBOX/ai/tldr-design-tree.md",
|
||||||
|
"00 INBOX/ai/grill-skill-design.md",
|
||||||
|
"03 wrk/tasks/0012-gitea-axi-pr-merge-guardrail.md",
|
||||||
|
"03 wrk/tasks/0011-gitea-axi-rust-migration.md",
|
||||||
|
"00 INBOX/ai/gitea-axi-pr-merge-guardrail.md",
|
||||||
|
"00 INBOX/ai/gitea-axi-rust-migration.md",
|
||||||
"00 INBOX/valheim progression.md",
|
"00 INBOX/valheim progression.md",
|
||||||
"03 wrk/tasks/0010-fix-main-monitor-detection.md",
|
"03 wrk/tasks/0010-fix-main-monitor-detection.md",
|
||||||
"00 INBOX/credits.md",
|
"00 INBOX/credits.md",
|
||||||
@@ -236,15 +245,6 @@
|
|||||||
"03 wrk/monorepo.md",
|
"03 wrk/monorepo.md",
|
||||||
"03 wrk/tasks/0001-todo-cli.md",
|
"03 wrk/tasks/0001-todo-cli.md",
|
||||||
"03 wrk/productivity.md",
|
"03 wrk/productivity.md",
|
||||||
"99 meta/templates/task.md",
|
|
||||||
"03 wrk/dotfiles.md",
|
|
||||||
"03 wrk/machoke.md",
|
|
||||||
"03 wrk/falinks.md",
|
|
||||||
"03 wrk/ariadne.md",
|
|
||||||
"03 wrk/tasks/0005-modules-services-navidrome.md",
|
|
||||||
"03 wrk/tasks/0003-registry-homepage.md",
|
|
||||||
"03 wrk/tasks/0039-hosts-zeus-hardware-configuration.md",
|
|
||||||
"03 wrk/tasks/0030-dotfiles-hosts.md",
|
|
||||||
"03 wrk/tasks",
|
"03 wrk/tasks",
|
||||||
"00 INBOX/let order name resolution.md~",
|
"00 INBOX/let order name resolution.md~",
|
||||||
"00 INBOX/nix name resolution.md~",
|
"00 INBOX/nix name resolution.md~",
|
||||||
|
|||||||
39
docs/00 INBOX/ai/caps-escape-design.md
Normal file
39
docs/00 INBOX/ai/caps-escape-design.md
Normal file
@@ -0,0 +1,39 @@
|
|||||||
|
# Caps Escape Design
|
||||||
|
|
||||||
|
## Facts
|
||||||
|
|
||||||
|
- Commit `250b0b71f` removed `services.xserver.xkb.options` from the shared host module.
|
||||||
|
- The removed option was `caps:escape_shifted_capslock`.
|
||||||
|
- That XKB option maps Caps Lock to Escape.
|
||||||
|
- Shift+Caps Lock still enables Caps Lock.
|
||||||
|
- The shared host module configures Neogaia, Zeus, and Pikachu.
|
||||||
|
- Zeus has QMK firmware that provides equivalent keyboard behavior.
|
||||||
|
- Neogaia and Zeus enable `modules.host.cachyos` and `modules.desktop`.
|
||||||
|
- Pikachu enables neither module.
|
||||||
|
- `configs/nixos/hosts/neogaia/default.nix` directly sets Neogaia-specific hardware, networking, desktop application, and Waybar settings.
|
||||||
|
- The current configuration has no Caps Lock or Escape remapping.
|
||||||
|
- This session runs on Zeus, not Neogaia.
|
||||||
|
|
||||||
|
## Design Tree
|
||||||
|
|
||||||
|
- Restore Caps Lock behavior
|
||||||
|
- Scope the configuration
|
||||||
|
- Configure Neogaia only. ✓
|
||||||
|
- Select the mapping behavior.
|
||||||
|
- Restore `caps:escape_shifted_capslock`. ✓
|
||||||
|
- Set `services.xserver.xkb.options` in `configs/nixos/hosts/neogaia/default.nix`. ✓
|
||||||
|
- Define validation for Neogaia.
|
||||||
|
- Run static checks and manually verify both keys after deployment. ✓
|
||||||
|
- Stop after source and static validation. ✓
|
||||||
|
|
||||||
|
## Settled Decisions
|
||||||
|
|
||||||
|
1. Configure the mapping on Neogaia only.
|
||||||
|
2. Restore `caps:escape_shifted_capslock`.
|
||||||
|
3. Set `services.xserver.xkb.options` directly in Neogaia's host configuration.
|
||||||
|
4. Run static checks and manually verify both keys on Neogaia after deployment.
|
||||||
|
5. Stop after source and static validation.
|
||||||
|
|
||||||
|
## Frontier
|
||||||
|
|
||||||
|
None.
|
||||||
39
docs/00 INBOX/ai/tldr-design.md
Normal file
39
docs/00 INBOX/ai/tldr-design.md
Normal file
@@ -0,0 +1,39 @@
|
|||||||
|
# TL;DR command design
|
||||||
|
|
||||||
|
## Goal
|
||||||
|
|
||||||
|
Add a Pi command that summarizes the preceding agent response by default.
|
||||||
|
An explicit command argument identifies the source to summarize.
|
||||||
|
|
||||||
|
## Decision tree
|
||||||
|
|
||||||
|
- Command form and scope
|
||||||
|
- Settled: Create a project prompt template at `.pi/prompts/tldr.md`.
|
||||||
|
- Command interface
|
||||||
|
- Settled: Pass arguments through as a free-form source request.
|
||||||
|
- Default source selection
|
||||||
|
- Settled: Summarize the preceding agent response when no source request exists.
|
||||||
|
- Summary format and length
|
||||||
|
- Settled: Use a compact, format-free summary.
|
||||||
|
- Ambiguous-source behavior
|
||||||
|
- Settled: Add no special handling policy.
|
||||||
|
|
||||||
|
## Settled decisions
|
||||||
|
|
||||||
|
- **Q1 — Command form and scope:** Create a project prompt template.
|
||||||
|
- **Q2 — Explicit source interface:** Accept a free-form source request.
|
||||||
|
- **Default source selection:** Summarize the preceding agent response when the command has no arguments.
|
||||||
|
- **Q3 — Summary shape:** Use a compact, format-free summary.
|
||||||
|
- **Q4 — Unavailable source:** Add no special handling policy.
|
||||||
|
|
||||||
|
## Frontier
|
||||||
|
|
||||||
|
The frontier is empty.
|
||||||
|
|
||||||
|
## Shared understanding pending confirmation
|
||||||
|
|
||||||
|
The project gets a `/tldr` prompt command in `.pi/prompts/tldr.md`.
|
||||||
|
Without arguments, it summarizes the preceding agent response.
|
||||||
|
With arguments, it interprets them as a free-form source request.
|
||||||
|
It produces a compact summary with no fixed format.
|
||||||
|
The prompt adds no special policy for unavailable or unclear sources.
|
||||||
@@ -29,7 +29,6 @@
|
|||||||
# Migration
|
# Migration
|
||||||
|
|
||||||
- [[technical-writing]] -> skill?
|
- [[technical-writing]] -> skill?
|
||||||
- gitea-axi
|
|
||||||
- skills
|
- skills
|
||||||
- claude-code/codebase-design
|
- claude-code/codebase-design
|
||||||
- claude-code/implement
|
- claude-code/implement
|
||||||
|
|||||||
Reference in New Issue
Block a user