Linear Coverage & Gaps¶
Snapshot 2026-08-25. Scope: live (non-duplicate, non-canceled) issues labelled Epic / Page / Feature / System in the Pinley Mechanical Linear workspace — the feature-bearing tickets a spec page could plausibly document.
What this is¶
The spec repo is the source of truth for what each feature is; Linear holds task detail, execution status, and history. This page reconciles the two: of the feature-bearing Linear tickets, which are already referenced by a spec page, and which are not ("orphans"). Bugs, QA tickets, spikes, and small improvements legitimately live only in Linear and are out of scope here.
Headline coverage¶
| Project | Feature-bearing | Referenced | Orphan | Raw coverage |
|---|---|---|---|---|
| Bids & Preconstruction | 87 | 46 | 41 | 53% |
| Core Platform | 140 | 68 | 72 | 49% |
| Compliance & Insurance (legacy) | 20 | 6 | 14 | 30% |
| Other (no project set) | 21 | 9 | 12 | 43% |
| Total | 268 | 129 | 139 | 48% |
The spec references 200 distinct Linear tickets in total; 129 of those are feature-bearing (the remaining ~71 are bugs/improvements linked as task detail on feature pages).
Read the 48% correctly¶
Raw coverage understates how well the product is documented, because most orphans are not missing pages. The 139 orphans fall into four buckets:
1. Epics (~16) — covered via their children, by design. The reconciliation deliberately points each feature page at its true Page/Feature child ticket, not the coarse epic. An epic showing as "orphan" therefore means we linked its children instead — the intended outcome, not a gap. Examples: PIN-6 [Bids], PIN-36 [Estimate Builder], PIN-133 [Takeoff Tool], PIN-38 [Data Import], PIN-18 [Pricing], PIN-8 [Project Management], PIN-9 [AI Layer], PIN-10 Integrations, PIN-15 [Vendors], PIN-32 [Financials], PIN-37 [Executive & Reporting], PIN-146 [Drawing Viewer], PIN-242 [Estimate Revisions], PIN-351 [C8 Pilot], PIN-5 [Core].
2. Backend / infra / DevOps / seed / QA (~58) — Linear-only by design. Execution detail with no user-facing surface — exactly what the source-of-truth split keeps in Linear. Examples: DevOps PIN-356–362/376, DB hardening PIN-495–499, file storage PIN-94/95, email infra PIN-103/161/354, permissions backend PIN-84/85/124/119, estimate/data-model backend PIN-46/98/145/243, data seeds PIN-64/65/67/68/362/863, SharePoint-import backend cluster PIN-509/510/517/597/598/615/616, BC sync PIN-422, Places API PIN-70.
3. Iterations of an already-documented surface (~50) — the page exists; these are cross-link candidates. The feature already has a spec page; these tickets are later UX passes or sub-features of it. Best resolved by adding them as related links on the existing page, not by spawning new pages. Examples: PIN-278 (Estimate UX Pass 2 → estimating sheet), PIN-142/143/144/239/259/368 (Takeoff pieces → takeoff-engine), PIN-402 (Daily Logs rework → daily-logs), PIN-43/515/512 (sidebar/brand/restyle → app shell), PIN-196/247/250/435/267 (bid field/addenda/vendor iterations), PIN-914/916/915/971 (change-orders & proposal rebuilds), PIN-842/894 (award→project routing), PIN-976/975 (import reliability → runtime-ops).
4. Genuine spec gaps (~15) — feature exists or is in flight, with no spec representation at all. This is the actionable list below.
Actionable gaps — built / in-flight, no spec trace¶
Priority follow-up: shipped or in-progress, user-facing features that have no page and aren't clearly folded into one. (Distilled from the 74 completed/started orphans, filtered to genuine page/cross-link candidates.) Most are best resolved as a related link on the named existing page rather than a brand-new page.
| PIN | Status | Title | Suggested home |
|---|---|---|---|
PIN-278 |
completed | Estimate Sheet — UX Pass 2 (badges, vendor reorder, soft-delete undo) | estimating sheet (link or own page) |
PIN-143 |
completed | Takeoff: PDF drawing viewer + scale calibration | takeoff-engine |
PIN-142 |
completed | Takeoff: Data model + API + tabular MVP | takeoff-engine |
PIN-515 |
completed | Cara brand handoff v01 (design tokens, Vault login) | settings-admin (design system) |
PIN-402 |
completed | Daily Logs tabbed/stepper rework (Weather/Manpower/Work-log) | daily-logs |
PIN-43 |
completed | Sidebar Restructure | settings-admin (app shell) |
PIN-842 |
started | Award→Project: route drawings/specs into modules | projects (award/handoff) |
PIN-915 |
completed | Proposal rebuilt to official Pinley template | bids (proposal) |
PIN-971 |
started | Proposal — auto-populate SoW from estimate lines | bids (proposal) |
PIN-647 |
completed | Cara import: route documents to module records | cara / smart-import |
Note on Compliance & Insurance¶
All 20 feature-bearing tickets there are backlog/unstarted (never built) — consistent with the README plan to retire the legacy insurance-compliance layer. Its 14 orphans are expected and low-priority; none are built.
Method & provenance¶
Computed by pulling every Epic/Page/Feature/System-labelled issue (292 raw rows → 277 distinct → 9 dropped as duplicate/canceled → 268 live) and diffing their ids against the set of PINs the reconciled spec references. Linear was read-only throughout; no issues were modified. Re-run when the spec's linear: frontmatter changes materially.
Appendix — full orphan list¶
Every feature-bearing Linear ticket not yet referenced by a spec page, grouped by project → parent epic. Format: PIN — title — status. HP marks a completed/started ticket (built or in-flight — the higher-value gaps).
Bids & Preconstruction (41)¶
PIN-6[Bids] — backlog ·PIN-18[Pricing] — unstarted ·PIN-38[Data Import] — backlog ·PIN-133[Takeoff Tool] — backlog ·PIN-242[Estimate Revisions] — backlog (epics — covered via children)PIN-36[Estimate Builder] — completed HP (epic) ·PIN-42Bid → Project Conversion — backlog ·PIN-145Bid intake data model — completed HPPIN-22Compare ·PIN-23Sources ·PIN-24Smart Import — all backlog (Pricing children)PIN-49CSI Code Reference Table — completed HP ·PIN-50Pricing Module Integration — backlog ·PIN-98Estimate section/line-item backend — completed HP ·PIN-278Estimate Sheet UX Pass 2 — completed HPPIN-64Historical Bid Import ·PIN-65Vendor Import ·PIN-67Pricing Data Seed ·PIN-68Import Validation — all backlogPIN-142Takeoff data model — completed HP ·PIN-143Takeoff PDF viewer — completed HP ·PIN-144Takeoff measurement tools — completed HP ·PIN-239Takeoff Excel/CSV import — completed HP ·PIN-259PDF upload UI — completed HP ·PIN-368PDF viewer + Estimate integration — completed HPPIN-243EstimateRevision entity — completed HP ·PIN-442Concordance tab — backlog ·PIN-589Multi-check scale verify — backlogPIN-683Smart Import B5 — completed HP ·PIN-685Smart Import B7 — completed HPPIN-196Competitors field — completed HP ·PIN-199TURNKEY budgeting — backlog ·PIN-201Estimate Tab Polish — backlog ·PIN-202Documents file preview — backlog ·PIN-240Kara AI takeoff — backlog ·PIN-241Vendor proposal viewer — backlog ·PIN-247Auto-revision-on-addendum — completed HP ·PIN-250VendorUnitCost DB — completed HP ·PIN-397Bulk drawing upload — backlog ·PIN-435PDF addendum diff — completed HP
Core Platform (72)¶
- Epics:
PIN-5[Core] ·PIN-8[Project Management] ·PIN-9[AI Layer] ·PIN-10Integrations ·PIN-15[Vendors] ·PIN-32[Financials] ·PIN-37[Executive & Reporting] ·PIN-146Drawing Viewer (completed HP) ·PIN-351C8 Pilot (completed HP) — all covered via children - Permissions/roles backend:
PIN-84gorbac hot-reload — completed HP ·PIN-85frontend permission store — completed HP ·PIN-124role-system overhaul — completed HP ·PIN-119OrganizationRole normalize — completed HP ·PIN-158split Owner/Executive — completed HP ·PIN-355Permission Matrix breakdown — backlog - Files/email/infra:
PIN-94file storage — completed HP ·PIN-95file upload component — completed HP ·PIN-103email infra — unstarted ·PIN-161email infra (SendGrid) — completed HP ·PIN-354Cara outbound email setup — completed HP ·PIN-116CI/CD + staging — backlog ·PIN-118data import CLI — backlog ·PIN-154Blob/MinIO spike — completed HP - Estimate/AI backend:
PIN-46Estimate backend models — completed HP ·PIN-28AI Hub — backlog ·PIN-30Reports — backlog ·PIN-398AI doc classification — backlog ·PIN-519AI & Tools umbrella — backlog - Integrations:
PIN-70Google Places — completed HP ·PIN-72SharePoint Integration — backlog - DevOps:
PIN-356/357/358/359/360/376— completed HP ·PIN-361cluster cutover — started HP ·PIN-362real seed packages — completed HP ·PIN-502SharePoint Graph verify — completed HP ·PIN-863remove dummy seed — started HP - DB hardening:
PIN-495/496/497/498/499— all completed HP - SharePoint import cluster (parent
PIN-501):PIN-509/517/597/598/615/616— all completed HP ·PIN-510manual sync-now — completed HP - Shell/brand:
PIN-43Sidebar Restructure — completed HP ·PIN-512restyle Vendor/Client pages — completed HP ·PIN-515Cara brand handoff v01 — completed HP ·PIN-261Cara marketing one-pager — completed HP - Import/award behaviour:
PIN-839/840SharePoint import wiring — completed HP ·PIN-841Interim PO email — started HP ·PIN-842Award→Project routing — started HP ·PIN-847drawing-specs→Spec Sections — backlog - Progress markup:
PIN-443/444/446— backlog ·PIN-447G702/G703 from markup — backlog - Tasks/projects/other:
PIN-402Daily Logs rework — completed HP ·PIN-485/486Tasks calendar/type filter — backlog ·PIN-487Documents photo album — backlog ·PIN-488Equipment Schedule section — backlog ·PIN-494Stagehand QA harness — backlog ·PIN-135BMS auto-suggest — backlog
Compliance & Insurance (14) — legacy, all never built¶
PIN-31 Insurance Compliance System · PIN-86 COI CRUD · PIN-87 COIRevision · PIN-88 Document CRUD · PIN-89 ComplianceIssue · PIN-90 RiskTag/CarrierRating · PIN-97 COI intake · PIN-99 Compliance review page · PIN-100 Org insurance status · PIN-101 Secure upload link · PIN-105 Email notifications · PIN-106 E2E testing · PIN-109 Indemnity tracking · PIN-114 Document.FileId nullable — all backlog.
Other / unassigned project (12)¶
PIN-422Enrich BC opportunity sync — completed HP ·PIN-647Cara import→module records — completed HP ·PIN-649Cara CSI auto-classification — completed HP ·PIN-672SharePoint estimate-sheet import — completed HP ·PIN-894Bid↔Project auto-link — started HP ·PIN-914Change Orders S-13 remodel — completed HP ·PIN-915Proposal Pinley template — completed HP ·PIN-916Change Orders S-13 launch alignment — completed HP ·PIN-971Proposal auto-SoW — started HP ·PIN-976Reliable imports 2-replica — started HP ·PIN-975Smart Import non-SharePoint sources — backlog ·PIN-987Brand logo upload — unstarted