@bvdm/delano 0.1.5 → 0.1.8

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 (145) hide show
  1. package/.delano/README.md +7 -0
  2. package/.delano/viewer/README.md +19 -0
  3. package/.delano/viewer/public/app.js +818 -0
  4. package/.delano/viewer/public/explorer.svg +3 -0
  5. package/.delano/viewer/public/index.html +21 -0
  6. package/.delano/viewer/public/markdown.svg +6 -0
  7. package/.delano/viewer/public/styles.css +1042 -0
  8. package/.delano/viewer/public/vscode.svg +24 -0
  9. package/.delano/viewer/server.js +389 -0
  10. package/HANDBOOK.md +66 -45
  11. package/README.md +21 -2
  12. package/assets/install-manifest.json +112 -23
  13. package/assets/payload/.agents/README.md +31 -6
  14. package/assets/payload/.agents/adapters/claude/README.md +22 -3
  15. package/assets/payload/.agents/adapters/codex/README.md +22 -3
  16. package/assets/payload/.agents/adapters/opencode/README.md +22 -3
  17. package/assets/payload/.agents/adapters/pi/README.md +22 -3
  18. package/assets/payload/.agents/common/log-safety.js +55 -0
  19. package/assets/payload/.agents/eval-fixtures/skill-output/invalid/missing-evidence/output.json +6 -0
  20. package/assets/payload/.agents/eval-fixtures/skill-output/valid/summary/output.json +7 -0
  21. package/assets/payload/.agents/fixtures/github/status-snapshot.json +6 -0
  22. package/assets/payload/.agents/fixtures/linear/issue-snapshot.json +6 -0
  23. package/assets/payload/.agents/hooks/bash-worktree-fix.sh +2 -1
  24. package/assets/payload/.agents/hooks/post-tool-logger.js +2 -1
  25. package/assets/payload/.agents/hooks/session-tracker.js +0 -0
  26. package/assets/payload/.agents/hooks/user-prompt-logger.js +17 -1
  27. package/assets/payload/.agents/logs/delivery-metrics.md +22 -0
  28. package/assets/payload/.agents/logs/schema.md +20 -1
  29. package/assets/payload/.agents/rules/delivery-modes.md +17 -0
  30. package/assets/payload/.agents/schemas/README.md +22 -0
  31. package/assets/payload/.agents/schemas/artifact-scope.json +237 -0
  32. package/assets/payload/.agents/schemas/artifacts/context.schema.json +11 -0
  33. package/assets/payload/.agents/schemas/artifacts/decision_log.schema.json +12 -0
  34. package/assets/payload/.agents/schemas/artifacts/evidence.schema.json +17 -0
  35. package/assets/payload/.agents/schemas/artifacts/plan.schema.json +83 -0
  36. package/assets/payload/.agents/schemas/artifacts/spec.schema.json +101 -0
  37. package/assets/payload/.agents/schemas/artifacts/task.schema.json +121 -0
  38. package/assets/payload/.agents/schemas/artifacts/update.schema.json +12 -0
  39. package/assets/payload/.agents/schemas/artifacts/workstream.schema.json +66 -0
  40. package/assets/payload/.agents/schemas/evidence-map.json +53 -0
  41. package/assets/payload/.agents/schemas/learning/closeout-learning-proposal.schema.json +20 -0
  42. package/assets/payload/.agents/schemas/learning/delivery-metric-event.schema.json +21 -0
  43. package/assets/payload/.agents/schemas/leases/lease.schema.json +39 -0
  44. package/assets/payload/.agents/schemas/metrics/delivery-event.schema.json +29 -0
  45. package/assets/payload/.agents/schemas/metrics/delivery-events.schema.json +49 -0
  46. package/assets/payload/.agents/schemas/operating-modes.json +42 -0
  47. package/assets/payload/.agents/schemas/status-transitions.json +31 -0
  48. package/assets/payload/.agents/schemas/sync/drift-report.schema.json +25 -0
  49. package/assets/payload/.agents/schemas/sync/drift-taxonomy.json +38 -0
  50. package/assets/payload/.agents/schemas/sync/sync-map.schema.json +39 -0
  51. package/assets/payload/.agents/scripts/README.md +1 -0
  52. package/assets/payload/.agents/scripts/audit-context-files.mjs +54 -0
  53. package/assets/payload/.agents/scripts/audit-context-scoring.mjs +14 -0
  54. package/assets/payload/.agents/scripts/build-drift-report.mjs +133 -0
  55. package/assets/payload/.agents/scripts/check-artifact-schemas.mjs +116 -0
  56. package/assets/payload/.agents/scripts/check-closeout-learning-proposals.mjs +23 -0
  57. package/assets/payload/.agents/scripts/check-context-audit.mjs +61 -0
  58. package/assets/payload/.agents/scripts/check-delivery-metric-events.mjs +35 -0
  59. package/assets/payload/.agents/scripts/check-delivery-metrics.mjs +52 -0
  60. package/assets/payload/.agents/scripts/check-evidence-map.mjs +143 -0
  61. package/assets/payload/.agents/scripts/check-github-status-inspection.mjs +93 -0
  62. package/assets/payload/.agents/scripts/check-github-sync.mjs +159 -0
  63. package/assets/payload/.agents/scripts/check-handoff-summaries.mjs +57 -0
  64. package/assets/payload/.agents/scripts/check-lease-conflicts.mjs +24 -0
  65. package/assets/payload/.agents/scripts/check-lease-contracts.mjs +17 -0
  66. package/assets/payload/.agents/scripts/check-linear-issue-inspection.mjs +63 -0
  67. package/assets/payload/.agents/scripts/check-local-sync-map.mjs +151 -0
  68. package/assets/payload/.agents/scripts/check-log-safety.sh +62 -0
  69. package/assets/payload/.agents/scripts/check-operating-modes.mjs +99 -0
  70. package/assets/payload/.agents/scripts/check-path-standards.sh +1 -1
  71. package/assets/payload/.agents/scripts/check-skill-output-evals.mjs +13 -0
  72. package/assets/payload/.agents/scripts/check-status-transitions.mjs +169 -0
  73. package/assets/payload/.agents/scripts/check-strict-fixtures.mjs +140 -0
  74. package/assets/payload/.agents/scripts/check-sync-schemas.mjs +52 -0
  75. package/assets/payload/.agents/scripts/check-text-safety.mjs +158 -0
  76. package/assets/payload/.agents/scripts/check-worktree-health.mjs +100 -0
  77. package/assets/payload/.agents/scripts/fix-path-standards.sh +1 -1
  78. package/assets/payload/.agents/scripts/git-sparse-download.sh +0 -0
  79. package/assets/payload/.agents/scripts/inspect-github-sync.mjs +108 -0
  80. package/assets/payload/.agents/scripts/lease-manager.mjs +88 -0
  81. package/assets/payload/.agents/scripts/log-event.js +3 -0
  82. package/assets/payload/.agents/scripts/log-event.sh +0 -0
  83. package/assets/payload/.agents/scripts/plan-sync-repairs.mjs +66 -0
  84. package/assets/payload/.agents/scripts/pm/blocked.sh +0 -0
  85. package/assets/payload/.agents/scripts/pm/epic-list.sh +0 -0
  86. package/assets/payload/.agents/scripts/pm/in-progress.sh +0 -0
  87. package/assets/payload/.agents/scripts/pm/init.sh +0 -0
  88. package/assets/payload/.agents/scripts/pm/next.sh +0 -0
  89. package/assets/payload/.agents/scripts/pm/prd-list.sh +0 -0
  90. package/assets/payload/.agents/scripts/pm/search.sh +0 -0
  91. package/assets/payload/.agents/scripts/pm/standup.sh +0 -0
  92. package/assets/payload/.agents/scripts/pm/status.sh +0 -0
  93. package/assets/payload/.agents/scripts/pm/validate.sh +657 -2
  94. package/assets/payload/.agents/scripts/propose-closeout-learning.mjs +20 -0
  95. package/assets/payload/.agents/scripts/query-log.sh +0 -0
  96. package/assets/payload/.agents/scripts/read-local-sync-map.mjs +135 -0
  97. package/assets/payload/.agents/scripts/select-next-task.mjs +22 -0
  98. package/assets/payload/.agents/scripts/summarize-project-metrics.mjs +15 -0
  99. package/assets/payload/.agents/scripts/test-and-log.sh +0 -0
  100. package/assets/payload/.agents/skills/README.md +6 -0
  101. package/assets/payload/.agents/skills/closeout-skill/SKILL.md +3 -0
  102. package/assets/payload/.agents/skills/closeout-skill/references/runbook.md +5 -2
  103. package/assets/payload/.agents/skills/closeout-skill/templates/closure-checklist.md +2 -0
  104. package/assets/payload/.agents/skills/closeout-skill/templates/learning-proposal.md +21 -0
  105. package/assets/payload/.agents/skills/closeout-skill/templates/learning-proposals.md +25 -0
  106. package/assets/payload/.agents/skills/manage-context/SKILL.md +55 -0
  107. package/assets/payload/.agents/skills/manage-context/references/context-audit-checklist.md +26 -0
  108. package/assets/payload/.agents/skills/manage-context/references/runbook.md +26 -0
  109. package/assets/payload/.agents/skills/manage-context/templates/context-debt-report.md +22 -0
  110. package/assets/payload/.agents/skills/manage-context/templates/context-refresh-summary.md +13 -0
  111. package/assets/payload/.agents/skills/onboarding/SKILL.md +49 -0
  112. package/assets/payload/.agents/skills/onboarding/references/agents-md-best-practices.md +76 -0
  113. package/assets/payload/.agents/skills/prototype-skill/SKILL.md +51 -0
  114. package/assets/payload/.agents/skills/prototype-skill/references/probe-design-checklist.md +26 -0
  115. package/assets/payload/.agents/skills/prototype-skill/references/runbook.md +27 -0
  116. package/assets/payload/.agents/skills/prototype-skill/templates/probe-approval-recommendation.md +13 -0
  117. package/assets/payload/.agents/skills/prototype-skill/templates/probe-findings.md +16 -0
  118. package/assets/payload/.agents/validation-fixtures/strict/invalid/broken-dependencies/dependency.md +18 -0
  119. package/assets/payload/.agents/validation-fixtures/strict/invalid/broken-dependencies/task.md +24 -0
  120. package/assets/payload/.agents/validation-fixtures/strict/invalid/invalid-transition/task.md +20 -0
  121. package/assets/payload/.agents/validation-fixtures/strict/invalid/missing-evidence/task.md +27 -0
  122. package/assets/payload/.agents/validation-fixtures/strict/invalid/path-leak/task.md +27 -0
  123. package/assets/payload/.agents/validation-fixtures/strict/invalid/stale-context/context.md +9 -0
  124. package/assets/payload/.agents/validation-fixtures/strict/manifest.json +11 -0
  125. package/assets/payload/.agents/validation-fixtures/strict/valid/minimal-project/task.md +27 -0
  126. package/assets/payload/.delano/viewer/README.md +19 -0
  127. package/assets/payload/.delano/viewer/public/app.js +818 -0
  128. package/assets/payload/.delano/viewer/public/explorer.svg +3 -0
  129. package/assets/payload/.delano/viewer/public/index.html +21 -0
  130. package/assets/payload/.delano/viewer/public/markdown.svg +6 -0
  131. package/assets/payload/.delano/viewer/public/styles.css +1042 -0
  132. package/assets/payload/.delano/viewer/public/vscode.svg +24 -0
  133. package/assets/payload/.delano/viewer/server.js +389 -0
  134. package/assets/payload/.project/templates/plan.md +1 -1
  135. package/assets/payload/.project/templates/spec.md +1 -1
  136. package/assets/payload/.project/templates/task.md +1 -0
  137. package/assets/payload/HANDBOOK.md +66 -45
  138. package/assets/payload/install-delano.sh +0 -0
  139. package/install-delano.sh +0 -0
  140. package/package.json +31 -2
  141. package/src/cli/commands/onboarding.js +29 -0
  142. package/src/cli/commands/viewer.js +81 -0
  143. package/src/cli/index.js +20 -0
  144. package/src/cli/lib/install.js +1 -0
  145. package/src/cli/lib/onboarding.js +243 -0
@@ -0,0 +1,26 @@
1
+ # Probe Design Checklist
2
+
3
+ Use this before running a Prototype Probe.
4
+
5
+ ## Probe quality
6
+ - Is the uncertainty material enough to justify a probe?
7
+ - Is the probe tied to one concrete question?
8
+ - Is the probe smaller than full implementation?
9
+ - Can the result change the spec approval decision?
10
+
11
+ ## Scope control
12
+ - What is explicitly in scope?
13
+ - What is explicitly out of scope?
14
+ - Which surfaces may be touched?
15
+ - What would make this probe too broad?
16
+
17
+ ## Evidence
18
+ - What outcome would justify approval?
19
+ - What outcome would require revision?
20
+ - What outcome would suggest another narrow probe?
21
+ - What footguns or side effects must be recorded even if the probe succeeds?
22
+
23
+ ## Safety
24
+ - Is there any risk of probe code being treated like production-ready output?
25
+ - Is there a clean way to prevent direct merge from probe artifacts?
26
+ - Are follow-up tasks likely to be needed after the probe?
@@ -0,0 +1,27 @@
1
+ # Prototype Probe Runbook
2
+
3
+ 1. Read the draft `spec.md` and identify the single material uncertainty to retire or bound.
4
+ 2. Confirm `probe_required: true` and keep the probe narrow.
5
+ 3. Define the smallest useful experiment:
6
+ - what is being tested
7
+ - what evidence is needed
8
+ - what touched surfaces are in scope
9
+ - what is explicitly out of scope
10
+ 4. Time-box the probe, normally to `<= 1 day`.
11
+ 5. Run the experiment using the safest path, CLI-first when feasible.
12
+ 6. Do not merge probe output directly into production delivery flow.
13
+ 7. Fold findings back into `spec.md`:
14
+ - what changed after probe
15
+ - touched surfaces
16
+ - footguns
17
+ - remaining uncertainty
18
+ - approval recommendation
19
+ 8. Validate if contracts changed:
20
+ - `bash .agents/scripts/pm/validate.sh`
21
+ 9. Snapshot status when useful:
22
+ - `bash .agents/scripts/pm/status.sh`
23
+
24
+ Exit gate:
25
+ - probe findings recorded
26
+ - approval recommendation is clear
27
+ - next step is explicit: approve, revise, or run another narrow probe
@@ -0,0 +1,13 @@
1
+ # Probe Approval Recommendation
2
+
3
+ ## Recommendation
4
+ - Approve
5
+ - Revise
6
+ - Run another narrow probe
7
+
8
+ ## Why
9
+
10
+ ## Remaining Uncertainty
11
+
12
+ ## Immediate Next Action
13
+ -
@@ -0,0 +1,16 @@
1
+ # Probe Findings
2
+
3
+ ## Uncertainty Tested
4
+
5
+ ## Experiment Shape
6
+
7
+ ## Evidence Observed
8
+
9
+ ## Touched Surfaces
10
+ -
11
+
12
+ ## Footguns
13
+ -
14
+
15
+ ## What Changed In The Spec
16
+ -
@@ -0,0 +1,18 @@
1
+ ---
2
+ id: T-001
3
+ name: Undone dependency fixture
4
+ status: ready
5
+ workstream: WS-A
6
+ created: 2026-04-29T00:00:00Z
7
+ updated: 2026-04-29T00:10:00Z
8
+ linear_issue_id:
9
+ github_issue:
10
+ github_pr:
11
+ depends_on: []
12
+ conflicts_with: []
13
+ parallel: false
14
+ priority: high
15
+ estimate: S
16
+ ---
17
+
18
+ # Task: Undone dependency fixture
@@ -0,0 +1,24 @@
1
+ ---
2
+ id: T-002
3
+ name: Broken dependencies fixture
4
+ status: done
5
+ workstream: WS-A
6
+ created: 2026-04-29T00:00:00Z
7
+ updated: 2026-04-29T00:10:00Z
8
+ linear_issue_id:
9
+ github_issue:
10
+ github_pr:
11
+ depends_on: [T-001]
12
+ conflicts_with: []
13
+ parallel: false
14
+ priority: high
15
+ estimate: S
16
+ ---
17
+
18
+ # Task: Broken dependencies fixture
19
+
20
+ ## Acceptance Criteria
21
+ - [x] Current repo state has been inspected before implementation starts.
22
+
23
+ ## Evidence Log
24
+ - 2026-04-29T00:10:00Z: Inspected fixture and validation passed despite intentionally broken dependency.
@@ -0,0 +1,20 @@
1
+ ---
2
+ id: T-001
3
+ name: Invalid transition fixture
4
+ status: blocked
5
+ workstream: WS-A
6
+ created: 2026-04-29T00:00:00Z
7
+ updated: 2026-04-29T00:10:00Z
8
+ linear_issue_id:
9
+ github_issue:
10
+ github_pr:
11
+ depends_on: []
12
+ conflicts_with: []
13
+ parallel: false
14
+ priority: high
15
+ estimate: S
16
+ ---
17
+
18
+ # Task: Invalid transition fixture
19
+
20
+ Blocked without owner or check-back.
@@ -0,0 +1,27 @@
1
+ ---
2
+ id: T-001
3
+ name: Missing evidence fixture
4
+ status: done
5
+ workstream: WS-A
6
+ created: 2026-04-29T00:00:00Z
7
+ updated: 2026-04-29T00:10:00Z
8
+ linear_issue_id:
9
+ github_issue:
10
+ github_pr:
11
+ depends_on: []
12
+ conflicts_with: []
13
+ parallel: false
14
+ priority: high
15
+ estimate: S
16
+ ---
17
+
18
+ # Task: Missing evidence fixture
19
+
20
+ ## Acceptance Criteria
21
+ - [x] Current repo state has been inspected before implementation starts.
22
+ - [x] The delivered change is represented in Delano runtime assets, project contracts, validation, fixtures, or docs as appropriate.
23
+ - [x] The change is validated with the smallest meaningful command or fixture.
24
+ - [x] Evidence is recorded in this task or a task update before the task is marked done.
25
+
26
+ ## Evidence Log
27
+ - 2026-04-29T00:00:00Z: Task created; implementation evidence pending.
@@ -0,0 +1,27 @@
1
+ ---
2
+ id: T-001
3
+ name: Path leak fixture
4
+ status: done
5
+ workstream: WS-A
6
+ created: 2026-04-29T00:00:00Z
7
+ updated: 2026-04-29T00:10:00Z
8
+ linear_issue_id:
9
+ github_issue:
10
+ github_pr:
11
+ depends_on: []
12
+ conflicts_with: []
13
+ parallel: false
14
+ priority: high
15
+ estimate: S
16
+ ---
17
+
18
+ # Task: Path leak fixture
19
+
20
+ Leaked path: PATH_LEAK_TOKEN(home::example::private::delano)
21
+ WSL leak form: PATH_LEAK_TOKEN(wsl-mount::example::private::delano)
22
+
23
+ ## Acceptance Criteria
24
+ - [x] Current repo state has been inspected before implementation starts.
25
+
26
+ ## Evidence Log
27
+ - 2026-04-29T00:10:00Z: Inspected fixture and validation passed.
@@ -0,0 +1,9 @@
1
+ ---
2
+ created: 2026-04-01T00:00:00Z
3
+ updated: 2026-04-01T00:00:00Z
4
+ review_by: 2026-04-15T00:00:00Z
5
+ ---
6
+
7
+ # Stale context fixture
8
+
9
+ This fixture is intentionally past its review date.
@@ -0,0 +1,11 @@
1
+ {
2
+ "schema_version": 1,
3
+ "fixtures": [
4
+ { "name": "minimal-project", "kind": "valid", "path": "valid/minimal-project", "expected": "pass" },
5
+ { "name": "missing-evidence", "kind": "invalid", "path": "invalid/missing-evidence", "expected_rule": "missing-evidence" },
6
+ { "name": "broken-dependencies", "kind": "invalid", "path": "invalid/broken-dependencies", "expected_rule": "broken-dependencies" },
7
+ { "name": "stale-context", "kind": "invalid", "path": "invalid/stale-context", "expected_rule": "stale-context" },
8
+ { "name": "path-leak", "kind": "invalid", "path": "invalid/path-leak", "expected_rule": "path-leak" },
9
+ { "name": "invalid-transition", "kind": "invalid", "path": "invalid/invalid-transition", "expected_rule": "invalid-transition" }
10
+ ]
11
+ }
@@ -0,0 +1,27 @@
1
+ ---
2
+ id: T-001
3
+ name: Valid strict fixture task
4
+ status: done
5
+ workstream: WS-A
6
+ created: 2026-04-29T00:00:00Z
7
+ updated: 2026-04-29T00:10:00Z
8
+ linear_issue_id:
9
+ github_issue:
10
+ github_pr:
11
+ depends_on: []
12
+ conflicts_with: []
13
+ parallel: false
14
+ priority: high
15
+ estimate: S
16
+ ---
17
+
18
+ # Task: Valid strict fixture task
19
+
20
+ ## Acceptance Criteria
21
+ - [x] Current repo state has been inspected before implementation starts.
22
+ - [x] The delivered change is represented in Delano runtime assets, project contracts, validation, fixtures, or docs as appropriate.
23
+ - [x] The change is validated with the smallest meaningful command or fixture.
24
+ - [x] Evidence is recorded in this task or a task update before the task is marked done.
25
+
26
+ ## Evidence Log
27
+ - 2026-04-29T00:10:00Z: Inspected fixture project, added represented runtime fixture content, and validation passed: fixture validator smoke.
@@ -0,0 +1,19 @@
1
+ # Delano Read-Only Viewer
2
+
3
+ Minimal local frontend for browsing `.project` markdown contracts.
4
+
5
+ - Read-only: serves files from `.project` and does not write delivery state.
6
+ - Default URL: `http://127.0.0.1:3977`
7
+ - Override port: `DELANO_VIEWER_PORT=3987 npm run viewer`
8
+
9
+ Run from the repository root:
10
+
11
+ ```bash
12
+ npm run viewer
13
+ ```
14
+
15
+ The viewer indexes `.project/context/**/*.md`, `.project/templates/**/*.md`, and `.project/projects/**/*.md`. It derives artifact roles (`spec`, `plan`, `workstream`, `task`, `progress`, `decision`, `context`, `template`), status fields, task/workstream relationships, relationship-like wikilinks, snippets, and renders markdown in a Tolaria-inspired read-only pane layout.
16
+
17
+ Project folders get a right-side outline for the spec, plan, decisions/progress, workstreams, and tasks. Selecting a workstream focuses the list on that workstream and its subtasks. Context and template folders keep filters scoped to the roles/statuses that actually exist in the selected folder.
18
+
19
+ The reader stays read-only, but includes convenience buttons to open the selected markdown file's containing folder in the system explorer or open the file in VS Code. These actions are guarded so they only target markdown files inside `.project`.