@adia-ai/adia-ui-factory 0.2.2 → 0.2.4
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.claude-plugin/plugin.json +12 -3
- package/.mcp.json +1 -1
- package/CHANGELOG.md +12 -0
- package/README.md +24 -1
- package/bin/adia-scaffold +93 -13
- package/package.json +1 -1
- package/references/shell-embed.md +10 -0
- package/references/spa-architecture.md +7 -0
- package/skills/adia-ui-kit/CHANGELOG.md +41 -0
- package/skills/adia-ui-kit/SKILL.md +442 -0
- package/skills/adia-ui-kit/assets/figma-make/guidelines/Guidelines.md +87 -0
- package/skills/adia-ui-kit/assets/figma-make/guidelines/components.md +142 -0
- package/skills/adia-ui-kit/assets/figma-make/guidelines/styles.md +118 -0
- package/skills/adia-ui-kit/assets/figma-make/guidelines/tokens.md +120 -0
- package/skills/adia-ui-kit/assets/team-scaffold/archive-README.md +30 -0
- package/skills/adia-ui-kit/assets/team-scaffold/drafts-README.md +57 -0
- package/skills/adia-ui-kit/assets/team-scaffold/inbox-README.md +76 -0
- package/skills/adia-ui-kit/assets/team-scaffold/outbox-README.md +46 -0
- package/skills/adia-ui-kit/assets/team-scaffold/team-root.README.md +51 -0
- package/skills/adia-ui-kit/assets/team-scaffold/tickets-README.md +208 -0
- package/skills/adia-ui-kit/assets/team-scaffold/tickets-REGISTRY.md +81 -0
- package/skills/adia-ui-kit/assets/templates/AGENTS.template.md +128 -0
- package/skills/adia-ui-kit/assets/templates/CLAUDE.template.md +1 -0
- package/skills/adia-ui-kit/assets/templates/FEEDBACK-OMISSIONS-DEFENSE.template.md +150 -0
- package/skills/adia-ui-kit/assets/templates/FEEDBACK.template.md +213 -0
- package/skills/adia-ui-kit/assets/templates/RESPONSE.template.md +114 -0
- package/skills/adia-ui-kit/assets/templates/figma-make-guidelines.md +90 -0
- package/skills/adia-ui-kit/evals/adversarial-content-trust.json +83 -0
- package/skills/adia-ui-kit/evals/evals.json +55 -0
- package/skills/adia-ui-kit/evals/routing-corpus.json +121 -0
- package/skills/adia-ui-kit/evals/teach-routing-cases.json +92 -0
- package/skills/adia-ui-kit/references/capabilities.md +245 -0
- package/skills/adia-ui-kit/references/catalog-lookup.md +186 -0
- package/skills/adia-ui-kit/references/changelog-archive/CHANGELOG-v1.md +8 -0
- package/skills/adia-ui-kit/references/changelog-archive/CHANGELOG-v2.md +3585 -0
- package/skills/adia-ui-kit/references/changelog-archive/CHANGELOG-v3.md +1899 -0
- package/skills/adia-ui-kit/references/common-gotchas-consumer.md +522 -0
- package/skills/adia-ui-kit/references/component-literacy.md +291 -0
- package/skills/adia-ui-kit/references/composition.md +245 -0
- package/skills/adia-ui-kit/references/correction-loop.md +462 -0
- package/skills/adia-ui-kit/references/css-policy.md +343 -0
- package/skills/adia-ui-kit/references/decision-model.md +158 -0
- package/skills/adia-ui-kit/references/diagnostic-output.md +57 -0
- package/skills/adia-ui-kit/references/docs-catalog.md +239 -0
- package/skills/adia-ui-kit/references/exclusions.md +225 -0
- package/skills/adia-ui-kit/references/feedback-authoring.md +466 -0
- package/skills/adia-ui-kit/references/figma-make.md +244 -0
- package/skills/adia-ui-kit/references/flows-auth.md +307 -0
- package/skills/adia-ui-kit/references/flows-content.md +206 -0
- package/skills/adia-ui-kit/references/flows-data.md +348 -0
- package/skills/adia-ui-kit/references/flows-interaction.md +181 -0
- package/skills/adia-ui-kit/references/flows-shells.md +336 -0
- package/skills/adia-ui-kit/references/gap-detection.md +266 -0
- package/skills/adia-ui-kit/references/harness.md +284 -0
- package/skills/adia-ui-kit/references/loading-protocol.md +406 -0
- package/skills/adia-ui-kit/references/local-link.md +198 -0
- package/skills/adia-ui-kit/references/mcp.md +401 -0
- package/skills/adia-ui-kit/references/migration.md +116 -0
- package/skills/adia-ui-kit/references/mission.md +194 -0
- package/skills/adia-ui-kit/references/mode-routing.md +298 -0
- package/skills/adia-ui-kit/references/patterns-agent.md +223 -0
- package/skills/adia-ui-kit/references/patterns-data.md +1065 -0
- package/skills/adia-ui-kit/references/patterns-forms.md +223 -0
- package/skills/adia-ui-kit/references/patterns-layout.md +326 -0
- package/skills/adia-ui-kit/references/patterns-recipes.md +1416 -0
- package/skills/adia-ui-kit/references/patterns-shells.md +1097 -0
- package/skills/adia-ui-kit/references/patterns-traits.md +259 -0
- package/skills/adia-ui-kit/references/patterns-wiring.md +339 -0
- package/skills/adia-ui-kit/references/pev-rationale.md +137 -0
- package/skills/adia-ui-kit/references/reasoning-gate.md +146 -0
- package/skills/adia-ui-kit/references/reasoning-methodologies.md +112 -0
- package/skills/adia-ui-kit/references/recon.md +192 -0
- package/skills/adia-ui-kit/references/rendering-model.md +431 -0
- package/skills/adia-ui-kit/references/response-authoring.md +398 -0
- package/skills/adia-ui-kit/references/session-log-schema.md +203 -0
- package/skills/adia-ui-kit/references/session-log-template.md +118 -0
- package/skills/adia-ui-kit/references/setup.md +652 -0
- package/skills/adia-ui-kit/references/skill-hygiene.md +135 -0
- package/skills/adia-ui-kit/references/spec-to-ui-reasoning.md +394 -0
- package/skills/adia-ui-kit/references/state.md +229 -0
- package/skills/adia-ui-kit/references/teach-protocol.md +421 -0
- package/skills/adia-ui-kit/references/theme.md +142 -0
- package/skills/adia-ui-kit/references/version-check.md +69 -0
- package/skills/adia-ui-kit/scripts/audit-decision-trace.mjs +198 -0
- package/skills/adia-ui-kit/scripts/audit-kit-roster.mjs +366 -0
- package/skills/adia-ui-kit/scripts/changelog-archive.mjs +126 -0
- package/skills/adia-ui-kit/scripts/check-adia-versions.py +404 -0
- package/skills/adia-ui-kit/scripts/run-skill-evals.mjs +358 -0
- package/skills/adia-ui-kit/scripts/validate-session-log.mjs +242 -0
- package/skills/adia-ui-kit/skill.json +102 -0
- package/skills/adia-ui-migration/CHANGELOG.md +47 -0
- package/skills/adia-ui-migration/SKILL.md +381 -0
- package/skills/adia-ui-migration/skill.json +29 -0
- package/skills/adia-ui-spa/SKILL.md +1 -1
- package/skills/adia-ui-verify/SKILL.md +2 -2
|
@@ -0,0 +1,208 @@
|
|
|
1
|
+
# Ticket Lifecycle Specification
|
|
2
|
+
|
|
3
|
+
> **Authoring discipline:** `adia-ui-kit` skill §FeedbackDiscipline +
|
|
4
|
+
> `../../references/feedback-authoring.md` (vendored from color-app's
|
|
5
|
+
> `.agents/team/skills/feedback-authoring.md` — battle-tested across 60+
|
|
6
|
+
> real tickets to `@adia-ai/*` packages).
|
|
7
|
+
> **Response discipline:** same skill + `../../references/response-authoring.md`.
|
|
8
|
+
> **Schema:** YAML front-matter + CommonMark body per state below.
|
|
9
|
+
|
|
10
|
+
---
|
|
11
|
+
|
|
12
|
+
## Stages & Naming
|
|
13
|
+
|
|
14
|
+
```
|
|
15
|
+
drafts/ Agent rough drafts, blocker notes
|
|
16
|
+
- filename: FEEDBACK-NN--<recipient>--YYYY-MM-DD.md (or RESPONSE-NN for self-review drafts)
|
|
17
|
+
- status: draft
|
|
18
|
+
- P3 stays here; P0/P1/P2 promoted to outbox after polish
|
|
19
|
+
|
|
20
|
+
outbox/ Polished, submitted to upstream
|
|
21
|
+
- filename: FEEDBACK-NN--<recipient>--YYYY-MM-DD.md
|
|
22
|
+
- status: submitted → responded → resolved (or retracted)
|
|
23
|
+
- Once submitted, do not edit body; corrections via --followup.md sibling
|
|
24
|
+
|
|
25
|
+
inbox/ Responses received from upstream
|
|
26
|
+
- filename: RESPONSE-NN--<sender>--YYYY-MM-DD.md
|
|
27
|
+
- status: received → triaged → resolved
|
|
28
|
+
- Triaging may produce new outbox tickets (--followup files for clarifications)
|
|
29
|
+
|
|
30
|
+
archive/ Superseded registries, historical legacy docs only
|
|
31
|
+
- Immutable after write
|
|
32
|
+
- Use when migrating storage layouts or pruning stale arcs
|
|
33
|
+
```
|
|
34
|
+
|
|
35
|
+
**Serial numbering:** `NN` is monotonic across the entire repo, allocated
|
|
36
|
+
at draft-creation time. `REGISTRY.md` shows the highest in-use number.
|
|
37
|
+
Use `ticket-tool next-id`
|
|
38
|
+
to get the next available NN.
|
|
39
|
+
|
|
40
|
+
**Recipient slug:** kebab-case identifier of the upstream maintainer or
|
|
41
|
+
package family. Examples: `adia-ui`, `adia-packages`, `pi-skills`.
|
|
42
|
+
|
|
43
|
+
**Followups:** when the original ticket needs an addendum after a
|
|
44
|
+
RESPONSE, name the addendum `FEEDBACK-NN--<recipient>--YYYY-MM-DD--followup.md`.
|
|
45
|
+
Followups land directly in `outbox/` (they're already polished — the
|
|
46
|
+
context is the existing ticket).
|
|
47
|
+
|
|
48
|
+
---
|
|
49
|
+
|
|
50
|
+
## Draft Frontmatter Contract
|
|
51
|
+
|
|
52
|
+
```yaml
|
|
53
|
+
---
|
|
54
|
+
id: "NN" # serial — see ticket-tool next-id
|
|
55
|
+
type: feedback # feedback | request | response
|
|
56
|
+
recipient: adia-ui
|
|
57
|
+
date: "YYYY-MM-DD"
|
|
58
|
+
author: "<agent-name> (<session-context>)" # don't claim a human author
|
|
59
|
+
project: "<consumer-project-name>"
|
|
60
|
+
status: draft # draft → submitted → responded → resolved (or retracted)
|
|
61
|
+
references: # every prior touchpoint
|
|
62
|
+
- "FEEDBACK-NN--adia-ui--YYYY-MM-DD"
|
|
63
|
+
- "RESPONSE-NN--adia-ui--YYYY-MM-DD"
|
|
64
|
+
- "FEEDBACK-NN--OMISSIONS-DEFENSE" # if a companion was authored
|
|
65
|
+
version: "@adia-ai/web-components@X.Y.Z" # version verified against
|
|
66
|
+
priority: p0 # highest priority in the doc (p0|p1|p2|p3)
|
|
67
|
+
---
|
|
68
|
+
```
|
|
69
|
+
|
|
70
|
+
`status: draft` is the right starting point. `ticket-tool finalize` flips
|
|
71
|
+
it to `status: submitted` and moves the file to `outbox/`. Retraction
|
|
72
|
+
flips it to `status: retracted` and moves the file BACK to `drafts/`.
|
|
73
|
+
|
|
74
|
+
---
|
|
75
|
+
|
|
76
|
+
## Body Shape — 4-block per finding
|
|
77
|
+
|
|
78
|
+
Multi-item tickets are normative. Each numbered finding (`## N. <Title> (P<x>)`)
|
|
79
|
+
contains:
|
|
80
|
+
|
|
81
|
+
1. **What happened** — concrete observed behavior. Stack trace if a
|
|
82
|
+
crash. Screenshot path if visual. Cite `file:line` for both consumer
|
|
83
|
+
code AND framework code.
|
|
84
|
+
2. **Root cause (verified end-to-end)** — walk the recipient through
|
|
85
|
+
HOW you established the cause. Probe output. Source file + line.
|
|
86
|
+
3. **Reproduction** — minimal code block the recipient can paste into
|
|
87
|
+
their test harness and observe the symptom.
|
|
88
|
+
4. **Request** — specific ask. Code patch sketch, concrete API shape,
|
|
89
|
+
doc paragraph, or a multi-option proposal (Option A/B/C with trade-offs).
|
|
90
|
+
5. **Why this matters** — one paragraph. Who else hits this? Workaround
|
|
91
|
+
cost? Cost of NOT fixing?
|
|
92
|
+
|
|
93
|
+
Plus, ticket-level:
|
|
94
|
+
- **Executive Summary** at top — one paragraph stating the headline
|
|
95
|
+
problem and net effect.
|
|
96
|
+
- **Cost-estimate table** under the summary — `| Pri | Item | Estimated cost |`
|
|
97
|
+
with honest estimates (`unknown — defer to maintainer judgement` is
|
|
98
|
+
acceptable; guesses are not).
|
|
99
|
+
- **Items deliberately NOT included** at bottom — the exclusion defense.
|
|
100
|
+
Every exclusion cites a verification anchor.
|
|
101
|
+
- **Related observations (non-asks)** at very bottom — context the
|
|
102
|
+
recipient may find useful but isn't a code ask.
|
|
103
|
+
|
|
104
|
+
If the exclusion list has 15+ items or spans 4+ rationale categories,
|
|
105
|
+
promote it to a companion `FEEDBACK-NN--OMISSIONS-DEFENSE.md` file (see
|
|
106
|
+
`../../references/feedback-authoring.md` §6b).
|
|
107
|
+
|
|
108
|
+
---
|
|
109
|
+
|
|
110
|
+
## RESPONSE Format
|
|
111
|
+
|
|
112
|
+
When upstream replies, file in `inbox/` as `RESPONSE-NN--<sender>--YYYY-MM-DD.md`.
|
|
113
|
+
Schema:
|
|
114
|
+
|
|
115
|
+
```yaml
|
|
116
|
+
---
|
|
117
|
+
id: "NN"
|
|
118
|
+
type: response
|
|
119
|
+
recipient: <consumer-project>
|
|
120
|
+
date: "YYYY-MM-DD"
|
|
121
|
+
author: "<upstream-maintainer-name>"
|
|
122
|
+
project: "<upstream-project-name>"
|
|
123
|
+
references:
|
|
124
|
+
- "FEEDBACK-NN--<recipient>--YYYY-MM-DD"
|
|
125
|
+
version: "@adia-ai/web-components@X.Y.Z"
|
|
126
|
+
status: submitted
|
|
127
|
+
---
|
|
128
|
+
```
|
|
129
|
+
|
|
130
|
+
Body: claim-by-claim verdicts using the verdict taxonomy from
|
|
131
|
+
`../../references/response-authoring.md`:
|
|
132
|
+
|
|
133
|
+
| Marker | Verdict |
|
|
134
|
+
| ------ | ---------------------- |
|
|
135
|
+
| ✅ | Confirmed (shipped / accepting) |
|
|
136
|
+
| ⚠️ | Confirmed — partial |
|
|
137
|
+
| ⏳ | Deferred |
|
|
138
|
+
| ❌ | Dismissed (not-reproducible / by-design / incorrect-claim) |
|
|
139
|
+
| 🔍 | Needs clarification |
|
|
140
|
+
| 🔀 | Out of scope — redirected |
|
|
141
|
+
|
|
142
|
+
Every claim from the original FEEDBACK gets exactly one marker.
|
|
143
|
+
|
|
144
|
+
---
|
|
145
|
+
|
|
146
|
+
## Workflow Summary
|
|
147
|
+
|
|
148
|
+
### Filing FEEDBACK
|
|
149
|
+
|
|
150
|
+
1. Agent observes issue → drafts to `drafts/FEEDBACK-NN--<recipient>--YYYY-MM-DD.md`
|
|
151
|
+
(allocate NN via `ticket-tool next-id`).
|
|
152
|
+
2. Agent polishes using `feedback-authoring.md` discipline (4-block body,
|
|
153
|
+
verified exclusions, cost estimates, references).
|
|
154
|
+
3. Human (or human-driven agent) runs `ticket-tool finalize <NN>` —
|
|
155
|
+
gates verify completeness, file moves to `outbox/`, status flips to
|
|
156
|
+
`submitted`, `REGISTRY.md` gets a row.
|
|
157
|
+
4. Commit. Submit upstream (open as GH issue / email / Slack — out of
|
|
158
|
+
scope for this tooling).
|
|
159
|
+
|
|
160
|
+
### Receiving RESPONSE
|
|
161
|
+
|
|
162
|
+
1. Upstream replies → manually create `inbox/RESPONSE-NN--<sender>--YYYY-MM-DD.md`
|
|
163
|
+
with their verdict-per-claim body.
|
|
164
|
+
2. Run `ticket-tool register-response <NN>` — adds a row to `REGISTRY.md`
|
|
165
|
+
under the RESPONSE table, updates the matching FEEDBACK row's status
|
|
166
|
+
to `responded`.
|
|
167
|
+
3. Triage: if any verdicts are partial / deferred / needs-clarification,
|
|
168
|
+
draft a `--followup.md` sibling in `outbox/`.
|
|
169
|
+
|
|
170
|
+
### Retracting
|
|
171
|
+
|
|
172
|
+
When a FEEDBACK turns out to be wrong (RESPONSE dismisses it correctly,
|
|
173
|
+
or self-review post-submission reveals a flaw):
|
|
174
|
+
|
|
175
|
+
1. Run `ticket-tool retract <NN> --reason "<one-sentence reason>"` —
|
|
176
|
+
moves file from `outbox/` back to `drafts/`, flips status to
|
|
177
|
+
`retracted`, populates `retracted-reason` front-matter field.
|
|
178
|
+
2. `REGISTRY.md` row stays — status column flips to `retracted`. The
|
|
179
|
+
ticket is part of the audit trail forever; retraction is a status
|
|
180
|
+
change, not a deletion.
|
|
181
|
+
|
|
182
|
+
### Archiving
|
|
183
|
+
|
|
184
|
+
When migrating storage layouts or pruning superseded arcs, move the
|
|
185
|
+
artifact to `archive/` and add a one-line note to `REGISTRY.md` pointing
|
|
186
|
+
at the new location. `archive/` is immutable after write.
|
|
187
|
+
|
|
188
|
+
---
|
|
189
|
+
|
|
190
|
+
## Deduplication Rules
|
|
191
|
+
|
|
192
|
+
Before promoting draft → outbox, the author MUST check:
|
|
193
|
+
|
|
194
|
+
1. `rg '<component>' outbox/FEEDBACK-*` — same component filed recently?
|
|
195
|
+
2. `rg '<symptom>' inbox/RESPONSE-*` — already addressed in a response?
|
|
196
|
+
3. `ls drafts/` — same blocker from another agent?
|
|
197
|
+
4. `cat REGISTRY.md` — grep for keywords matching the new ask.
|
|
198
|
+
|
|
199
|
+
If duplicate found: merge into existing ticket OR add as "Related
|
|
200
|
+
observations" in the existing ticket, rather than filing a new top-level
|
|
201
|
+
finding.
|
|
202
|
+
|
|
203
|
+
---
|
|
204
|
+
|
|
205
|
+
*Aligned with: RFC 2119 (key words), RFC 5322 (email envelope), ADR-0000
|
|
206
|
+
(decision record format), Keep a Changelog (date/scope/summary),
|
|
207
|
+
GitHub Issues Markdown (task lists). Layout vendored from color-app's
|
|
208
|
+
battle-tested 2026-05-17 spec.*
|
|
@@ -0,0 +1,81 @@
|
|
|
1
|
+
# `.agents/team/tickets/` — Outbound + Inbound Correspondence Registry
|
|
2
|
+
|
|
3
|
+
> **Live since:** 2026-05-20
|
|
4
|
+
> **Schema:** see the `README.md` in this directory
|
|
5
|
+
|
|
6
|
+
---
|
|
7
|
+
|
|
8
|
+
## Directory Layout
|
|
9
|
+
|
|
10
|
+
```
|
|
11
|
+
.agents/team/tickets/
|
|
12
|
+
├── REGISTRY.md ← This file: master registry of ALL tickets
|
|
13
|
+
├── README.md ← Ticket lifecycle specification
|
|
14
|
+
├── drafts/ ← Agent rough drafts → coordinator drafts
|
|
15
|
+
├── outbox/ ← Polished FEEDBACK tickets sent upstream
|
|
16
|
+
├── inbox/ ← RESPONSE tickets received from upstream
|
|
17
|
+
└── archive/ ← Superseded registries, historical legacy docs
|
|
18
|
+
```
|
|
19
|
+
|
|
20
|
+
---
|
|
21
|
+
|
|
22
|
+
## Quick Navigation
|
|
23
|
+
|
|
24
|
+
| Want to... | Go to |
|
|
25
|
+
| -------------------------------- | ---------------------------------- |
|
|
26
|
+
| File new upstream feedback | Draft to `drafts/`, then `ticket-tool finalize` |
|
|
27
|
+
| Read upstream response | `inbox/` |
|
|
28
|
+
| Read a draft before publication | `drafts/` |
|
|
29
|
+
| See all FEEDBACK ever filed | This file ↓ (FEEDBACK table) |
|
|
30
|
+
| See all RESPONSE ever received | This file ↓ (RESPONSE table) |
|
|
31
|
+
| Get the next available ticket ID | `ticket-tool next-id` |
|
|
32
|
+
|
|
33
|
+
---
|
|
34
|
+
|
|
35
|
+
## FEEDBACK Filed (0 total)
|
|
36
|
+
|
|
37
|
+
| # | File | Recipient | Date | Status | Priority | Summary |
|
|
38
|
+
|---|------|-----------|------|--------|----------|---------|
|
|
39
|
+
|
|
40
|
+
*(No tickets filed yet. New rows are appended at draft-finalize time by
|
|
41
|
+
`ticket-tool finalize`.)*
|
|
42
|
+
|
|
43
|
+
### FEEDBACK with OMISSIONS-DEFENSE companions
|
|
44
|
+
|
|
45
|
+
| FEEDBACK | Companion | Items | Categories |
|
|
46
|
+
|----------|-----------|-------|------------|
|
|
47
|
+
|
|
48
|
+
---
|
|
49
|
+
|
|
50
|
+
## RESPONSE Received (0 total)
|
|
51
|
+
|
|
52
|
+
| # | File | Recipient | Date | Status | Verdicts |
|
|
53
|
+
|---|------|-----------|------|--------|----------|
|
|
54
|
+
|
|
55
|
+
*(No responses received yet. New rows are appended by
|
|
56
|
+
`ticket-tool register-response`.)*
|
|
57
|
+
|
|
58
|
+
---
|
|
59
|
+
|
|
60
|
+
## Adding New Tickets
|
|
61
|
+
|
|
62
|
+
### Filing FEEDBACK
|
|
63
|
+
|
|
64
|
+
1. Get next ID: `ticket-tool next-id`
|
|
65
|
+
2. Draft: `ticket-tool new <type> <recipient> --slug <short-slug>`
|
|
66
|
+
3. Polish using `../../references/feedback-authoring.md` (vendored from color-app).
|
|
67
|
+
4. Finalize: `ticket-tool finalize <NN>`
|
|
68
|
+
- Runs gates, moves `drafts/` → `outbox/`, flips status to `submitted`, appends a row here.
|
|
69
|
+
5. Commit. Open upstream issue / send via the appropriate channel.
|
|
70
|
+
|
|
71
|
+
### Receiving RESPONSE
|
|
72
|
+
|
|
73
|
+
1. File in: `.agents/team/tickets/inbox/RESPONSE-NN--<sender>--YYYY-MM-DD.md`
|
|
74
|
+
2. Run: `ticket-tool register-response <NN>`
|
|
75
|
+
3. Triage in your session — if any verdicts need clarification, draft a
|
|
76
|
+
`--followup.md` sibling in `outbox/`.
|
|
77
|
+
|
|
78
|
+
---
|
|
79
|
+
|
|
80
|
+
*Live registry. Append-only via tooling; manual edits limited to status
|
|
81
|
+
column transitions (e.g. flipping `submitted` → `responded` → `resolved`).*
|
|
@@ -0,0 +1,128 @@
|
|
|
1
|
+
# {{PROJECT_NAME}} — Agent Guidelines
|
|
2
|
+
|
|
3
|
+
Auto-loaded by agentic IDE / harness at session start.
|
|
4
|
+
Read this first; defer to the AdiaUI skill for procedural detail.
|
|
5
|
+
|
|
6
|
+
## Project
|
|
7
|
+
|
|
8
|
+
{{PROJECT_DESCRIPTION_ONE_LINER}}
|
|
9
|
+
|
|
10
|
+
Stack: {{STACK}} (e.g. "Vite + TypeScript + `@adia-ai/web-components` + `@adia-ai/web-modules`").
|
|
11
|
+
|
|
12
|
+
## Skill (procedural source-of-truth)
|
|
13
|
+
|
|
14
|
+
Use the AdiaUI Kit skill for all build / wiring / pattern / ticket
|
|
15
|
+
procedural work:
|
|
16
|
+
|
|
17
|
+
`{{SKILL_PATH}}`
|
|
18
|
+
|
|
19
|
+
(Typical path: `/Users/<you>/Projects/gen-ui-kit/.agents/skills/adia-ui-kit/SKILL.md`.)
|
|
20
|
+
|
|
21
|
+
When the user invokes `use adia-ui-kit` / `load the AdiaUI skill`, render
|
|
22
|
+
the capability surface from the skill, not from this file. This file
|
|
23
|
+
holds **project-specific** decisions; the skill holds **AdiaUI-general**
|
|
24
|
+
procedure.
|
|
25
|
+
|
|
26
|
+
To verify the skill version your install resolves to:
|
|
27
|
+
|
|
28
|
+
```bash
|
|
29
|
+
grep '^version:' {{SKILL_PATH}}
|
|
30
|
+
```
|
|
31
|
+
|
|
32
|
+
Pin a specific version in your project notes if reproducibility matters.
|
|
33
|
+
|
|
34
|
+
## Ticket pipeline (upstream feedback to `@adia-ai/*`)
|
|
35
|
+
|
|
36
|
+
Findings about `@adia-ai/*` packages or the `adia-ui-kit` skill itself
|
|
37
|
+
file directly into the **central inbound store** at `chat-ui` (ADR-0031).
|
|
38
|
+
One numbering namespace across all consumer projects; no per-repo
|
|
39
|
+
drift. Set `ADIA_TICKETS_DIR` so the canonical ticket-tool routes to
|
|
40
|
+
the central store:
|
|
41
|
+
|
|
42
|
+
```bash
|
|
43
|
+
export ADIA_TICKETS_DIR=/Users/<you>/Projects/gen-ui-kit/.agents/team/tickets
|
|
44
|
+
|
|
45
|
+
# Allocate a global NN (consults chat-ui's REGISTRY, not yours)
|
|
46
|
+
ticket-tool next-id
|
|
47
|
+
|
|
48
|
+
# Scaffold polished FEEDBACK directly into chat-ui/.../inbound/
|
|
49
|
+
ticket-tool \
|
|
50
|
+
new feedback adia-ui --inbound --sender {{PROJECT_NAME_KEBAB}} \
|
|
51
|
+
--slug <kebab-topic>
|
|
52
|
+
|
|
53
|
+
# Polish per references/feedback-authoring.md in the skill bundle.
|
|
54
|
+
# Then commit the file inside chat-ui (it lives there now).
|
|
55
|
+
```
|
|
56
|
+
|
|
57
|
+
For drafts that need polishing pressure before relay, you can still
|
|
58
|
+
use a local `.agents/team/tickets/drafts/` in this project — drop
|
|
59
|
+
`ADIA_TICKETS_DIR` from the env when running `new`/`finalize`. Polished
|
|
60
|
+
tickets relay manually by `cp` into chat-ui inbound + `ticket-tool
|
|
61
|
+
registry-rebuild` in chat-ui.
|
|
62
|
+
|
|
63
|
+
See `.agents/skills/adia-ui-kit/SKILL.md` §FeedbackDiscipline + §Team
|
|
64
|
+
Tickets + §InboundTickets for the full workflow. See
|
|
65
|
+
`{{SKILL_PATH_DIR}}/../../team/tickets/inbound/README.md` for the
|
|
66
|
+
consumer-agent vs maintainer-agent role split.
|
|
67
|
+
|
|
68
|
+
Recipients:
|
|
69
|
+
- `adia-ui` — package-side bugs / gaps (`@adia-ai/web-components`,
|
|
70
|
+
`@adia-ai/web-modules`, `@adia-ai/a2ui-*`, `@adia-ai/llm`)
|
|
71
|
+
- `adia-ui-skill` — skill-side doc bugs / gaps
|
|
72
|
+
|
|
73
|
+
## Install verification
|
|
74
|
+
|
|
75
|
+
Before any non-trivial work, verify your `@adia-ai/*` install is sane:
|
|
76
|
+
|
|
77
|
+
```bash
|
|
78
|
+
{{SKILL_PATH_DIR}}/scripts/check-adia-versions.py --root .
|
|
79
|
+
```
|
|
80
|
+
|
|
81
|
+
Should exit 0 with all 9 packages on a single version, matching npm
|
|
82
|
+
latest. Drift means stale install — see SKILL.md §VersionCheck.
|
|
83
|
+
|
|
84
|
+
## Key conventions (AdiaUI-specific)
|
|
85
|
+
|
|
86
|
+
- **Never `git add -A`** — multi-agent repos demand explicit file
|
|
87
|
+
allowlists; see SKILL.md §FeedbackDiscipline + `multi-agent-git-
|
|
88
|
+
staging-discipline` skill if you have it
|
|
89
|
+
- **Always import shell CSS explicitly** when using a shell tag.
|
|
90
|
+
`admin-shell.js` / `chat-shell.js` / etc. do NOT self-import their
|
|
91
|
+
layout CSS — see SKILL.md §CSSPolicy. Add to your entry file:
|
|
92
|
+
```js
|
|
93
|
+
import '@adia-ai/web-modules/shell/admin-shell.css';
|
|
94
|
+
// or chat-shell.css, editor-shell.css, simple-shell.css
|
|
95
|
+
```
|
|
96
|
+
- **Use Vite 8-compatible glob form** for icon loaders:
|
|
97
|
+
```js
|
|
98
|
+
import.meta.glob('../node_modules/@phosphor-icons/core/assets/regular/*.svg', { … });
|
|
99
|
+
// NOT '@phosphor-icons/core/...' — rolldown rejects @-scoped
|
|
100
|
+
```
|
|
101
|
+
- **Do NOT import the full `@adia-ai/web-modules` barrel** —
|
|
102
|
+
use per-cluster subpaths (`@adia-ai/web-modules/shell`,
|
|
103
|
+
`@adia-ai/web-modules/generative`, etc.). The full barrel is broken
|
|
104
|
+
on `<v0.6.8` and noisy on `>=v0.6.8`.
|
|
105
|
+
|
|
106
|
+
## Project-specific decisions
|
|
107
|
+
|
|
108
|
+
{{PROJECT_SPECIFIC_DECISIONS}}
|
|
109
|
+
|
|
110
|
+
Examples:
|
|
111
|
+
- "All routes pre-rendered statically; SPA mode only for admin
|
|
112
|
+
dashboards under `/admin/*`."
|
|
113
|
+
- "Theme: light-only default; dark scheme opt-in per user setting."
|
|
114
|
+
- "Data layer: REST-only — no GraphQL, no SSE."
|
|
115
|
+
|
|
116
|
+
## Skill version pinning (optional)
|
|
117
|
+
|
|
118
|
+
If you want to lock the skill version this project depends on, record
|
|
119
|
+
the version + commit SHA here:
|
|
120
|
+
|
|
121
|
+
- Skill version: `{{SKILL_VERSION}}` ({{SKILL_COMMIT}})
|
|
122
|
+
- AdiaUI packages: `@adia-ai/*@{{ADIA_AI_VERSION}}`
|
|
123
|
+
|
|
124
|
+
Re-verify and bump when intentionally adopting newer skill capabilities.
|
|
125
|
+
|
|
126
|
+
---
|
|
127
|
+
|
|
128
|
+
**Last reviewed:** {{DATE}}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
@AGENTS.md
|
|
@@ -0,0 +1,150 @@
|
|
|
1
|
+
# FEEDBACK-{{ID}} Omissions Defense
|
|
2
|
+
|
|
3
|
+
**Date:** {{DATE}}
|
|
4
|
+
**Author:** {{AGENT}} ({{SESSION_CONTEXT}})
|
|
5
|
+
**Context:** Prepared for leadership + principal engineer review. Every
|
|
6
|
+
item below was considered for inclusion in `FEEDBACK-{{ID}}--{{RECIPIENT}}--{{DATE}}.md`
|
|
7
|
+
and deliberately excluded.
|
|
8
|
+
|
|
9
|
+
> **Use this companion when:** the inline `§Items deliberately NOT included`
|
|
10
|
+
> block in the main ticket would exceed ~15 items or span ~4+ rationale
|
|
11
|
+
> categories. Large inline blocks get skimmed; a standalone file forces
|
|
12
|
+
> reviewers to treat exclusions as first-class artifacts.
|
|
13
|
+
|
|
14
|
+
---
|
|
15
|
+
|
|
16
|
+
## Principle Applied
|
|
17
|
+
|
|
18
|
+
<2–4 sentences naming the scoping rule the ticket used, e.g.
|
|
19
|
+
"current-session, concrete, reproducible friction that blocked or
|
|
20
|
+
significantly slowed <feature> delivery.">
|
|
21
|
+
|
|
22
|
+
Items were excluded if they were:
|
|
23
|
+
|
|
24
|
+
1. <Category 1, e.g. "Already filed by the peer agent in FEEDBACK-NN-1">
|
|
25
|
+
2. <Category 2, e.g. "Resolved in prior releases">
|
|
26
|
+
3. <Category 3, e.g. "Standard CSS customization, not framework defects">
|
|
27
|
+
4. <Category 4, e.g. "Speculative / not yet encountered in practice">
|
|
28
|
+
5. <Category 5, e.g. "Internal to our adapter architecture">
|
|
29
|
+
|
|
30
|
+
I will flag items where my confidence is low.
|
|
31
|
+
|
|
32
|
+
---
|
|
33
|
+
|
|
34
|
+
## <Category 1> — Correctly Omitted
|
|
35
|
+
|
|
36
|
+
### Omission 1: <one-line title> (P<x>)
|
|
37
|
+
|
|
38
|
+
**<EVIDENCE TAG>** — uppercase, scannable. Examples:
|
|
39
|
+
`PEER FINDING` / `VERIFIED IN SOURCE` / `RESOLVED IN v0.5.2` /
|
|
40
|
+
`OUR INTERNAL API` / `THIRD-PARTY TOOL` / `STANDARD CUSTOMIZATION` /
|
|
41
|
+
`SPECULATIVE`
|
|
42
|
+
|
|
43
|
+
<1–2 sentences citing the verification anchor — file:line, version,
|
|
44
|
+
prior ticket ID, or skill/docs reference.>
|
|
45
|
+
|
|
46
|
+
**Defense:** <Why this exclusion is correct. 1–3 sentences.>
|
|
47
|
+
|
|
48
|
+
**Confidence:** High | Medium | Low.
|
|
49
|
+
*(Medium or Low ratings are honesty, not weakness. If you flag low
|
|
50
|
+
confidence, the reviewer can prioritize verification.)*
|
|
51
|
+
|
|
52
|
+
### Omission 2: <next title> (P<x>)
|
|
53
|
+
|
|
54
|
+
**<EVIDENCE TAG>**
|
|
55
|
+
<anchor citation>
|
|
56
|
+
|
|
57
|
+
**Defense:** <reasoning>
|
|
58
|
+
|
|
59
|
+
**Confidence:** High | Medium | Low.
|
|
60
|
+
|
|
61
|
+
<Repeat for all omissions in this category.>
|
|
62
|
+
|
|
63
|
+
---
|
|
64
|
+
|
|
65
|
+
## <Category 2> — Correctly Omitted
|
|
66
|
+
|
|
67
|
+
### Omission N: ...
|
|
68
|
+
|
|
69
|
+
<Same shape as above.>
|
|
70
|
+
|
|
71
|
+
---
|
|
72
|
+
|
|
73
|
+
## <Category 3> — Correctly Omitted
|
|
74
|
+
|
|
75
|
+
### Omission N: ...
|
|
76
|
+
|
|
77
|
+
---
|
|
78
|
+
|
|
79
|
+
## <Category 4> — Correctly Omitted
|
|
80
|
+
|
|
81
|
+
### Omission N: ...
|
|
82
|
+
|
|
83
|
+
---
|
|
84
|
+
|
|
85
|
+
## <Category 5> — Correctly Omitted
|
|
86
|
+
|
|
87
|
+
### Omission N: ...
|
|
88
|
+
|
|
89
|
+
---
|
|
90
|
+
|
|
91
|
+
## Mistakes I May Have Made
|
|
92
|
+
|
|
93
|
+
Flag items where, on reflection, exclusion might have been an error.
|
|
94
|
+
This section is the inverse of the rest of the file — it's where the
|
|
95
|
+
author voluntarily surfaces their own weakest exclusions for review.
|
|
96
|
+
|
|
97
|
+
### Potential Mistake A: <title>
|
|
98
|
+
|
|
99
|
+
**WHY IT MATTERS:** <one paragraph on why this exclusion might have
|
|
100
|
+
been wrong.>
|
|
101
|
+
|
|
102
|
+
**ACTION:** Willing to add as P<x> to FEEDBACK-{{ID}} §<N> if requested.
|
|
103
|
+
|
|
104
|
+
### Potential Mistake B: <title>
|
|
105
|
+
|
|
106
|
+
<same shape>
|
|
107
|
+
|
|
108
|
+
---
|
|
109
|
+
|
|
110
|
+
## If I Had Two More Hours
|
|
111
|
+
|
|
112
|
+
With additional time, I would:
|
|
113
|
+
|
|
114
|
+
1. <Specific verification I'd run, e.g. "Bisect Omission 6 to confirm
|
|
115
|
+
which release fixed it and whether a regression test exists.">
|
|
116
|
+
2. <Audit I'd perform.>
|
|
117
|
+
3. <Component(s) I'd test that haven't been exercised yet.>
|
|
118
|
+
4. <Docs / source I'd cross-check.>
|
|
119
|
+
|
|
120
|
+
This section gives the reviewer a roadmap for what additional verification
|
|
121
|
+
would tighten the ticket.
|
|
122
|
+
|
|
123
|
+
---
|
|
124
|
+
|
|
125
|
+
## Bottom Line
|
|
126
|
+
|
|
127
|
+
`FEEDBACK-{{ID}}` contains <N> items, all of which are <core scope claim,
|
|
128
|
+
e.g. "current-session, concrete, and blocking-or-slowing">. The <M>
|
|
129
|
+
omissions above are either <category-1>, <category-2>, <category-3>,
|
|
130
|
+
<category-4>, or <category-5>. I'm prepared to escalate any of them if
|
|
131
|
+
the reviewer disagrees with the classification.
|
|
132
|
+
|
|
133
|
+
---
|
|
134
|
+
|
|
135
|
+
## Cross-link in the main ticket
|
|
136
|
+
|
|
137
|
+
The main `FEEDBACK-{{ID}}--{{RECIPIENT}}--{{DATE}}.md` MUST include this
|
|
138
|
+
companion in front-matter:
|
|
139
|
+
|
|
140
|
+
```yaml
|
|
141
|
+
references:
|
|
142
|
+
- "FEEDBACK-{{ID}}--OMISSIONS-DEFENSE"
|
|
143
|
+
```
|
|
144
|
+
|
|
145
|
+
…and in its §Items deliberately NOT included section, replace the bullet
|
|
146
|
+
list with a one-line pointer:
|
|
147
|
+
|
|
148
|
+
> Items considered and deliberately excluded are tracked in
|
|
149
|
+
> `FEEDBACK-{{ID}}--OMISSIONS-DEFENSE.md` — <M> omissions across <N> rationale
|
|
150
|
+
> categories, each with verification anchor and confidence rating.
|