generated from coulomb/repo-seed
feat(dashboard): nav restructure, full context-help coverage, 11 new ref docs
Navigation: - New order: Overview · Todo · Domains · Repos · Workstreams (collapsible, open:false, with atomic sub-entries: Decisions, Tasks, Debt, Extends, Dependencies) · Contributions · SBOM · Progress · Reference (collapsible) - Reference section gains path:/reference landing page; all 18 doc pages listed in nav (alphabetical) and in reference.md table New pages: - todo.md — Internal / Ecosystem / Third-party todo classification - dependencies.md — dependency edge table derived from state/summary - reference.md — Reference landing page with full doc index New reference doc pages (11): contributions, debt, dependencies, domains, extensions, overview, repos, tasks, todo + reference (meta) already added previously doc-overlay.js — lazy bubblehelp tooltip: - _titleCache Map + _fetchDocTitle(docPath): on first hover of any ? button, fetches the target doc page, parses <h1>, sets btn.title - Native browser tooltip appears exactly on the ? circle on subsequent hover Context-help wired on all 14 dashboard pages: - h1 withDocHelp added to: index, todo, domains, repos, tasks, techdept, extensions, dependencies (contributions/workstreams/decisions/sbom/ progress/reference were already wired) - domains.md + repos.md: added missing withDocHelp import and live-data link - tasks/techdept/extensions: removed duplicate _h1 const that caused SyntaxError: Identifier '_h1' has already been declared Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
102
dashboard/src/docs/extensions.md
Normal file
102
dashboard/src/docs/extensions.md
Normal file
@@ -0,0 +1,102 @@
|
||||
---
|
||||
title: Extension Points — Reference
|
||||
---
|
||||
|
||||
# Extension Points — Reference
|
||||
|
||||
The Extension Points page tracks known future enhancement opportunities across
|
||||
all six domains — design forks the system *could* take, parked deliberately
|
||||
for later consideration rather than acted on immediately.
|
||||
|
||||
---
|
||||
|
||||
## What is an extension point?
|
||||
|
||||
An extension point (EP) captures a place in the design where additional
|
||||
capability could be added — an API surface that could be extended, a schema
|
||||
that could grow, an integration that could be built. Recording an EP
|
||||
acknowledges the opportunity without committing to it.
|
||||
|
||||
Extension points are distinct from technical debt: debt is a known compromise
|
||||
that should be fixed; EPs are optional future directions that may or may not
|
||||
be pursued.
|
||||
|
||||
---
|
||||
|
||||
## EP types
|
||||
|
||||
| Type | Examples |
|
||||
|------|---------|
|
||||
| **api** | New endpoints, query parameters, response fields |
|
||||
| **schema** | New tables, columns, relationships |
|
||||
| **mcp** | New MCP tools or resources |
|
||||
| **dashboard** | New pages, charts, or components |
|
||||
| **architecture** | Structural changes to the system design |
|
||||
| **integration** | Connections to external systems |
|
||||
| **other** | Anything that doesn't fit the above |
|
||||
|
||||
---
|
||||
|
||||
## Statuses
|
||||
|
||||
| Status | Meaning |
|
||||
|--------|---------|
|
||||
| **open** | Identified, not yet acted on |
|
||||
| **in_progress** | Being implemented as part of an active workstream |
|
||||
| **addressed** | The capability has been built |
|
||||
| **deferred** | Intentionally postponed |
|
||||
| **wont_fix** | Decided not to pursue — kept for documentation |
|
||||
|
||||
Items are sorted by status (open → in_progress → deferred → addressed → wont_fix)
|
||||
then by priority (critical → high → medium → low).
|
||||
|
||||
---
|
||||
|
||||
## Priorities
|
||||
|
||||
| Priority | Meaning |
|
||||
|----------|---------|
|
||||
| **critical** | Needed to unblock other work |
|
||||
| **high** | High-value enhancement for the near term |
|
||||
| **medium** | Would be useful but not urgent |
|
||||
| **low** | Speculative or long-horizon idea |
|
||||
|
||||
---
|
||||
|
||||
## Filters
|
||||
|
||||
| Filter | Effect |
|
||||
|--------|--------|
|
||||
| **Status** | Multi-select |
|
||||
| **Priority** | Multi-select |
|
||||
| **Domain** | Multi-select |
|
||||
| **Type** | Multi-select |
|
||||
|
||||
---
|
||||
|
||||
## Registering an extension point
|
||||
|
||||
Via MCP:
|
||||
|
||||
```
|
||||
register_extension_point(
|
||||
domain = "custodian",
|
||||
title = "Configurable poll interval per dashboard page",
|
||||
ep_type = "dashboard",
|
||||
priority = "low",
|
||||
description = "Each page hard-codes POLL = 15_000. An env var or per-page config would allow slowing down low-priority pages to reduce API load.",
|
||||
location = "state-hub/dashboard/src/*.md",
|
||||
workstream_id = "<uuid>" # optional
|
||||
)
|
||||
```
|
||||
|
||||
```
|
||||
update_ep_status(ep_uuid="<uuid>", status="addressed")
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## Human-readable IDs
|
||||
|
||||
Each EP carries an ID in the form `EP-<DOMAIN>-NNN` (e.g. `EP-CUST-001`).
|
||||
IDs are optional at creation and auto-assigned if omitted.
|
||||
Reference in New Issue
Block a user