agentboot 0.1.0 → 0.2.0

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.
Files changed (66) hide show
  1. package/README.md +8 -7
  2. package/agentboot.config.json +4 -1
  3. package/package.json +2 -2
  4. package/scripts/cli.ts +42 -14
  5. package/scripts/compile.ts +30 -7
  6. package/scripts/dev-sync.ts +1 -1
  7. package/scripts/lib/config.ts +17 -1
  8. package/scripts/validate.ts +12 -7
  9. package/.github/ISSUE_TEMPLATE/persona-request.md +0 -62
  10. package/.github/ISSUE_TEMPLATE/quality-feedback.md +0 -67
  11. package/.github/workflows/cla.yml +0 -25
  12. package/.github/workflows/validate.yml +0 -49
  13. package/.idea/agentboot.iml +0 -9
  14. package/.idea/misc.xml +0 -6
  15. package/.idea/modules.xml +0 -8
  16. package/.idea/vcs.xml +0 -6
  17. package/CLAUDE.md +0 -230
  18. package/CONTRIBUTING.md +0 -168
  19. package/PERSONAS.md +0 -156
  20. package/core/instructions/baseline.instructions.md +0 -133
  21. package/core/instructions/security.instructions.md +0 -186
  22. package/core/personas/code-reviewer/SKILL.md +0 -175
  23. package/core/personas/security-reviewer/SKILL.md +0 -233
  24. package/core/personas/test-data-expert/SKILL.md +0 -234
  25. package/core/personas/test-generator/SKILL.md +0 -262
  26. package/core/traits/audit-trail.md +0 -182
  27. package/core/traits/confidence-signaling.md +0 -172
  28. package/core/traits/critical-thinking.md +0 -129
  29. package/core/traits/schema-awareness.md +0 -132
  30. package/core/traits/source-citation.md +0 -174
  31. package/core/traits/structured-output.md +0 -199
  32. package/docs/ci-cd-automation.md +0 -548
  33. package/docs/claude-code-reference/README.md +0 -21
  34. package/docs/claude-code-reference/agentboot-coverage.md +0 -484
  35. package/docs/claude-code-reference/feature-inventory.md +0 -906
  36. package/docs/cli-commands-audit.md +0 -112
  37. package/docs/cli-design.md +0 -924
  38. package/docs/concepts.md +0 -1117
  39. package/docs/config-schema-audit.md +0 -121
  40. package/docs/configuration.md +0 -645
  41. package/docs/delivery-methods.md +0 -758
  42. package/docs/developer-onboarding.md +0 -342
  43. package/docs/extending.md +0 -448
  44. package/docs/getting-started.md +0 -298
  45. package/docs/knowledge-layer.md +0 -464
  46. package/docs/marketplace.md +0 -822
  47. package/docs/org-connection.md +0 -570
  48. package/docs/plans/architecture.md +0 -2429
  49. package/docs/plans/design.md +0 -2018
  50. package/docs/plans/prd.md +0 -1862
  51. package/docs/plans/stack-rank.md +0 -261
  52. package/docs/plans/technical-spec.md +0 -2755
  53. package/docs/privacy-and-safety.md +0 -807
  54. package/docs/prompt-optimization.md +0 -1071
  55. package/docs/test-plan.md +0 -972
  56. package/docs/third-party-ecosystem.md +0 -496
  57. package/domains/compliance-template/README.md +0 -173
  58. package/domains/compliance-template/traits/compliance-aware.md +0 -228
  59. package/examples/enterprise/agentboot.config.json +0 -184
  60. package/examples/minimal/agentboot.config.json +0 -46
  61. package/tests/REGRESSION-PLAN.md +0 -705
  62. package/tests/TEST-PLAN.md +0 -111
  63. package/tests/cli.test.ts +0 -705
  64. package/tests/pipeline.test.ts +0 -608
  65. package/tests/validate.test.ts +0 -278
  66. package/tsconfig.json +0 -62
@@ -1,111 +0,0 @@
1
- # AgentBoot Test Plan
2
-
3
- ## Test Suite Overview
4
-
5
- | File | Tests | Scope | Runtime |
6
- |------|-------|-------|---------|
7
- | `validate.test.ts` | 20 | Unit: JSONC parsing, frontmatter, secret scanning, persona config validation | <100ms |
8
- | `pipeline.test.ts` | 33 | Integration: compile → sync pipeline, scope merging, platform output | ~3s |
9
- | `cli.test.ts` | 54 | Integration: CLI commands (AB-2 epic), compile features, uninstall safety | ~9s |
10
- | **Total** | **107** | | ~12s |
11
-
12
- ## Coverage by Feature
13
-
14
- ### Phase 1 (AB-1)
15
-
16
- | Feature | Jira | Tests | Notes |
17
- |---------|------|-------|-------|
18
- | JSONC stripping | — | 5 | validate.test.ts: comments, string preservation, escaped quotes, real config |
19
- | Frontmatter parsing | — | 4 | validate.test.ts: extraction, null case, multi-word, all real SKILL.md files |
20
- | Secret scanning | — | 7 | validate.test.ts: passwords, API keys, AWS, private keys, GitHub tokens, safe content, real files |
21
- | persona.config.json | — | 3 | validate.test.ts: existence, required fields, trait references |
22
- | Validation script (AB-11) | AB-11 | 2 | pipeline.test.ts: passes all 4 checks, detects missing persona |
23
- | Compile script (AB-12) | AB-12 | 1 | pipeline.test.ts: compiles 4 personas × 3 platforms |
24
- | Dist structure | — | 3 | pipeline.test.ts: platform dirs, persona dirs, skill dirs |
25
- | Skill output (AB-21) | AB-21 | 2 | pipeline.test.ts: SKILL.md with traits, persona.config.json |
26
- | Claude output | — | 1 | pipeline.test.ts: skills/{name}/SKILL.md with CC frontmatter |
27
- | Agent output (AB-17) | AB-17 | 1 | pipeline.test.ts: agent files with name, description, no default model |
28
- | CLAUDE.md @imports (AB-19) | AB-19 | 1 | pipeline.test.ts: all 6 traits + 2 instructions (exact match, no .md.md) |
29
- | Trait files (AB-19) | AB-19 | 1 | pipeline.test.ts: 6 trait files exist with content |
30
- | Token budget (AB-25) | AB-25 | 1 | pipeline.test.ts: per-persona token estimates in output |
31
- | Copilot output (AB-22) | AB-22 | 1 | pipeline.test.ts: copilot-instructions.md, HTML comments stripped |
32
- | Instructions (AB-20) | AB-20 | 1 | pipeline.test.ts: instructions in all 3 platforms |
33
- | PERSONAS.md (AB-23) | AB-23 | 1 | pipeline.test.ts: generated in every platform |
34
- | Trait injection | — | 1 | pipeline.test.ts: correct traits per persona |
35
- | Platform self-containment | — | 1 | pipeline.test.ts: skill/copilot parity, claude skills list |
36
- | settings.json (AB-26) | AB-26 | 1 | pipeline.test.ts: generated with hooks/permissions |
37
- | .mcp.json (AB-27) | AB-27 | 1 | pipeline.test.ts: generated with mcpServers |
38
- | Sync (AB-15) | AB-15 | 5 | pipeline.test.ts: sync to target, .claude/ dir, skills, rules, PERSONAS.md |
39
- | Manifest (AB-24) | AB-24 | 1 | pipeline.test.ts: manifest exists with correct structure and SHA-256 hashes |
40
- | Sync idempotency | — | 1 | pipeline.test.ts: skips unchanged files on re-sync |
41
- | Dry-run | — | 1 | pipeline.test.ts: no files written in dry-run mode |
42
- | Copilot sync | — | 1 | pipeline.test.ts: copilot-instructions.md to .github/ |
43
- | PR mode (AB-28) | AB-28 | 1 | pipeline.test.ts: PR mode doesn't crash without remote |
44
- | Scope merging (AB-16) | AB-16 | 2 | pipeline.test.ts: team > group > core, group > core |
45
- | Full pipeline | — | 1 | pipeline.test.ts: validate → compile end-to-end |
46
-
47
- ### Phase 2 (AB-2)
48
-
49
- | Feature | Jira | Tests | Notes |
50
- |---------|------|-------|-------|
51
- | context:fork skill output (AB-18) | AB-18 | 6 | cli.test.ts: fork frontmatter, agent reference, all 4 skills, no double FM, stripped source FM |
52
- | Welcome fragment (AB-77) | AB-77 | 4 | cli.test.ts: section exists, 4 invocations, descriptions, no .md.md |
53
- | Gotchas compilation (AB-52) | AB-52 | 1 | cli.test.ts: gotcha→rules, gotcha→skill, README filtered |
54
- | Setup wizard (AB-33) | AB-33 | 5 | cli.test.ts: config scaffold, repos.json, core dirs, no overwrite, valid JSON |
55
- | Add persona (AB-34) | AB-34 | 7 | cli.test.ts: files created, trait markers, frontmatter, style guide, config JSON, duplicate rejection, name validation |
56
- | Add trait (AB-35) | AB-35 | 1 | cli.test.ts: file created with correct sections |
57
- | Add gotcha | AB-52 | 1 | cli.test.ts: file created with paths frontmatter |
58
- | Prompt style guide (AB-55) | AB-55 | 1 | cli.test.ts: scaffold has Identity/Setup/Rules/Output/What Not To Do + style comments |
59
- | Doctor (AB-36) | AB-36 | 3 | cli.test.ts: passes on project root, detects missing config, exit code |
60
- | Status (AB-37) | AB-37 | 3 | cli.test.ts: shows org info, JSON output, empty repos |
61
- | Lint (AB-38) | AB-38 | 6 | cli.test.ts: trait-too-long, severity filter, JSON output, persona filter, vague language, secrets |
62
- | Uninstall (AB-45) | AB-45 | 5 | cli.test.ts: dry-run, removes matching hashes, skips modified, path traversal rejection, no manifest |
63
- | Config command | — | 4 | cli.test.ts: top-level key, nested key, nonexistent key, mutation fails |
64
- | YAML frontmatter safety | — | 3 | cli.test.ts: quoted descriptions in skills, quoted names in agents, special chars |
65
- | CLI global | — | 2 | cli.test.ts: --version, --help |
66
-
67
- ## Known Gaps
68
-
69
- ### Not Tested (by design or limitation)
70
-
71
- | Gap | Reason |
72
- |-----|--------|
73
- | `agentboot setup` git remote detection | Would need to mock git — tested manually |
74
- | `agentboot uninstall` directory cleanup | Tested indirectly via hash-match removal |
75
- | `agentboot lint --fix` | Not yet implemented |
76
- | `agentboot config` write mutation | Not yet implemented |
77
- | `agentboot full-build` via CLI | Tested via npm scripts in pipeline.test.ts |
78
- | Compile with external config pointing to different core/ | compile.ts hardcodes ROOT for coreDir — design limitation |
79
- | Token budget for group/team scope personas | compile.ts only checks core scope — known issue |
80
- | JSONC block comments (`/* */`) | Only `//` comments supported — documented |
81
- | Concurrent builds | Single-user build tool, no locking needed |
82
-
83
- ### Manual Test Checklist
84
-
85
- Run before each release:
86
-
87
- - [ ] `npx tsx scripts/cli.ts --help` — all commands listed
88
- - [ ] `npx tsx scripts/cli.ts --version` — matches package.json
89
- - [ ] `npx tsx scripts/cli.ts full-build` — clean pipeline completes
90
- - [ ] `npx tsx scripts/cli.ts doctor` — all checks pass
91
- - [ ] `npx tsx scripts/cli.ts status` — shows org info
92
- - [ ] `npx tsx scripts/cli.ts lint` — reports trait length warnings
93
- - [ ] `npx tsx scripts/cli.ts lint --format json` — valid JSON output (no header)
94
- - [ ] Create temp dir, run `npx tsx scripts/cli.ts setup --skip-detect`, verify files
95
- - [ ] In project root: `npx tsx scripts/cli.ts add persona test-xyz`, verify output, delete
96
- - [ ] Sync to temp repo, then uninstall — verify clean removal
97
-
98
- ## Bugs Found by Tests
99
-
100
- 1. **CRITICAL: Double .md.md extension** — `instrFileNames.push(file)` should be `push(name)` (fixed)
101
- 2. **CRITICAL: Uninstall hash truncation** — `.slice(0, 8)` vs full 64-char hash (fixed)
102
- 3. **ERROR: Uninstall double path prefix** — `path.join(repo, targetDir, entry.path)` doubled `.claude/` (fixed)
103
- 4. **ERROR: Status manifest wrong path** — looked at repo root, not `.claude/` (fixed)
104
- 5. **ERROR: YAML injection** — descriptions unquoted in frontmatter (fixed)
105
- 6. **ERROR: Frontmatter regex fragile** — `(?!---)` lookahead breaks on `---` in values (fixed)
106
- 7. **ERROR: Uninstall encoding mismatch** — UTF-8 string vs raw Buffer hash (fixed)
107
- 8. **WARN: Path traversal via manifest** — added boundary check (fixed)
108
- 9. **WARN: Lint JSON output** — header printed before JSON (fixed)
109
- 10. **WARN: Model/permissionMode unquoted in YAML** — inconsistent with other fields (fixed)
110
- 11. **WARN: Pipeline test substring match** — `toContain` masked .md.md bug (fixed to regex)
111
- 12. **WARN: Platform containment test** — didn't filter `gotchas/` directory (fixed)