Skip to content

Add TC Dashboard sidebar scaffold#25

Open
sukiraharris wants to merge 29 commits into
adr:masterfrom
OwenSweetman:track-d-dashboard
Open

Add TC Dashboard sidebar scaffold#25
sukiraharris wants to merge 29 commits into
adr:masterfrom
OwenSweetman:track-d-dashboard

Conversation

@sukiraharris

Copy link
Copy Markdown

No description provided.

NaftaliCaplan and others added 29 commits May 28, 2026 11:10
- parseTcFromYaml: extracts tc-* keys from YAML frontmatter into adr.tc
- serializeTcToYaml: merges adr.tc back into YAML on save, strips stale keys
- 6 new tests covering full parse, core-only, no-TC, round-trip, and key cleanup

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
migrate parser and data model from MADR 2.1.2 to 4.0
Add missing neutral field to consideredOptions fixtures and
migrate decisionOutcome shape from positiveConsequences/
negativeConsequences to consequences: { good, bad } + confirmation.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
TcDashboardProvider rewrite:
- Use md2adr() + Track B's TcAnnotation interface (parses all 6 tc-* fields)
- 3-level tree: Category -> ADR -> TC field details
- Confidence indicator via colored shield codicon + filled-dots label
- Honor adrManager.adrDirectory setting; multi-root aware via getAllMDs()
- Single-click opens ADR in existing webview viewer

extension.ts:
- FileSystemWatcher + onDidChangeConfiguration trigger dashboard refresh
- New vscode-adr-manager.refreshTcDashboard command (palette + view title icon)

CI (.github/workflows/ci.yml):
- Lint, jest, webpack+rollup build, vsce package, upload .vsix artifact

Schema-migration unblock (Track A leftover, blocking the build):
- extension-functions.ts: positiveConsequences/negativeConsequences ->
  consequences.{good,bad}; add neutral to consideredOptions item types;
  map old deciders:string -> decisionMakers:string[]
- tsconfig.json: exclude src/test (stale Track A fixtures)
- jest.config.ts: isolatedModules:true so tests run despite fixture
  typecheck errors

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
- serializeTcToYaml accepts mode param; pro-only fields (tc-status,
  tc-related) only written in professional mode
- adr2md passes mode through to serializeTcToYaml
- createBasicAdr/createProfessionalAdr/saveAdr pass explicit mode
- 4 new tests: partial fields, unknown enum, basic/pro mode boundary

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
…n parsing are detected and brought to users attention, does not affect storage
- Monochrome shield-with-check SVG icon for the activity bar so VS Code
  tints it correctly (replaces logo.png blob).
- Surface non-conforming ADRs in the tree with a warning indicator
  instead of dropping them entirely — TC YAML may still parse cleanly
  even when the MADR grammar rejects the markdown body.
- Click an ADR node opens the .md file via vscode.open, which works
  for non-conforming ADRs too (the existing webview viewer refuses
  them).
- Add 4 sample ADRs in docs/decisions/ exercising multiple tc-category
  values, confidence levels, full vs. core-only TC field sets, and an
  un-annotated baseline. Useful as dev fixtures and demo data.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
repo compatibility tests and version schemas
Brings Track C's TC annotation forms (basic + professional webview)
together with Track D's sidebar dashboard so both can be demoed in a
single dev host.

Track C adds:
- TemplateTCAnnotationSection.vue (basic mode TC form)
- TemplateTCAnnotationProfessionalSection.vue (pro mode TC form)
- tc-validator.ts + tests
- Fixed test fixtures (constants.ts) and parser tests (now 77 pass /
  4 fail vs. 37/9 before)

No conflicts; webpack + rollup build clean.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
fixed linked tests between Track A and B and updated change long and …
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

7 participants