Google Sign-In Required

Use your company Google account to access the BetterFleet private content.

Back to private home

BetterFleet Support Private
Skip to content
BetterFleet Dev Wiki
Product Engineering Workflow in Linear
Initializing search
    bf-dev
    • Home
    • Process
    • Products
    • Reference
    • Decisions
    • Work
    • Operations
    bf-dev
    • Home
      • Process Handbook
      • BetterFleet Workflow Map
      • Product Development System
      • Product Engineering Workflow
        • Process Workflows
        • Work Intake and Weekly Planning
        • Product Engineering Workflow in Linear
          • What Linear Owns
          • Project Rules
          • Issue Rules
          • Estimates
          • Readiness
          • Cycles
          • Status And Ownership
          • Labels
          • Out Of Scope
        • Product Engineering Delivery
        • Agent Guidance
        • Workflow
        • Skills
        • Skill Sources
        • Process Guides
        • GitLab Feature Flags
        • In-App Docs Authoring
        • Release Notes
        • Process Templates
        • Release Plan: <title>
      • Process Publishing
      • Product overview
        • General Reference
          • Core Domain Training
          • System Topology
          • Two-Axis Ontology Model
          • Ontology Primer
          • Worked Example
          • Evidence, Ownership, and Lineage
          • Energy Management
          • Standards and Protocol Map
          • Charging, Roaming, and Commercial Model
          • Charge Planning and Operations
          • Cross-Cutting Domains
          • Domain Coverage Matrix
        • BetterFleet Product Ontology
        • Core Operations Data Ontology
        • BetterFleet R&D Plan
        • Index
        • Architecture
        • Manage Product Capabilities
        • Manage Data and State
        • Manage Service Interaction Flows
        • Manage Reference
        • Manage Internal Application Diagrams
          • Manage Authorization And Permissions
          • bf-manage-core Auth and Authorization Model
          • Manage Authorization and Permissions
          • bf-manage-web Auth and Permission Model
          • Manage Service Catalog
          • bf-depot-sim
          • bf-digital-twin (Manage Role)
          • bf-fleet-health
          • bf-manage-connect
          • bf-manage-core
          • bf-manage-incidents
          • bf-manage-roaming
          • bf-manage-sitepwrmon
          • bf-manage-web
          • bf-schedule-creator (Manage Role)
          • bf-support-microsite
          • bf-telematics
        • Index
        • Architecture
        • Plan Reference
        • Plan Internal Application Diagrams
        • Plan Migration and Flags
        • Plan Simulation Request Lifecycle
          • Plan Service Catalog
          • bf-bnl-schedule-analysis-compute
          • bf-bnl-settings
          • bf-bnl-ui
          • bf-digital-twin (Plan Role)
          • bf-route-modelling
          • bf-schedule-creator (Plan Role)
      • Where to Ask Product Questions
      • Reference
        • Platform Reference
        • Platform Architecture
        • Script Runtime Model
        • Compose Profiles and Modes
        • Repository Map
        • Monolithic Git Transition FAQ
        • Monolithic Git Sizing
        • CI and Release Integration
        • Shared Reference
        • Shared Infrastructure Architecture
        • Secrets and Env Strategy
        • Vendors and Local Dependencies
        • System Reference
        • Cloud Data Dependencies
        • Ports and URLs
        • Service Matrix
          • API Docs
          • OCPI API Docs
          • OCPP API Docs
          • OSCP API Docs
          • VDV API Docs
          • Yard State API Docs
        • System Design
        • System Design: BBA Microgrid Controller Generic Packet Translation
        • System Design: Depot Simulation
        • System Design: IoT Sensor Packet
        • System Design: Microgrid Energy Orchestration
          • System Design: OCPP Profile 3 And ISO 15118 PKI
          • Architecture: BetterFleet OCPP Profile 3 and ISO 15118 PKI
          • Specification: BetterFleet OCPP Profile 3 and ISO 15118 Certificate Lifecycle Management
          • System Design: On-Prem Control
          • Challenge
          • Specification: BetterFleet On-Prem Continuity Control
          • System Design: OSCP
          • OSCP Protocol Documentation
          • Depot Sim Testing Requirements
          • System Design: OSCP Flexibility Provider Domain
      • Decisions
        • Architecture Decision Records
        • 0001 - Record architecture decisions
        • 0002 - Cognito for Authentication and Authorisation
        • 0003 - AWS Amplify for Authentication
        • 0004 - DynamoDB for default database
        • 0005 - Data Persistence
        • 0006 - Trunk-Based Development
        • 0007 - Generalised principle for automation
        • 0008 - Naming Repositories, Services, and URLs
        • 0009 - Use Timezone Aware DateTimes and UTC
        • 0010 - Use semantic release
        • 0011 - Centralized feature flag repository
        • 0012 - Use Named Exports in Storybook
        • 0013 - RESTful TITLE GraphQL
        • 0014 - Service Granularity
        • 0015 - Async/co-routine exception handling pattern
        • 0016 - Logging & log levels
        • 0017 - Instantiated Models
        • 0018 - Repository Pattern for Database Access
        • 0019 - Use of Design Tokens in TypeScript React Application
        • 0020 - API backwards compatibility and versioning
        • 0021 - Alembic Migration strategy
        • 0022 - Consistent react-hook-form usage
        • 0023 - Domain Event-Driven Architecture
        • 0024 - Domain Event Bus Tech Stack
        • 0025 - No enum types in DB table columns
        • 0026 - In-Memory Ormar Stores for Repository testing
        • 0027 - Storing Tab State in Query and Local Storage
        • 0028 - Adopt OpenTelemetry Semantic Conventions for Structured Logging
        • 0029 - Adopt RFC 9457 for HTTP Error Responses
        • 0030 - Use GitLab registry and Terraform state for ECS services
        • 0031 - Adopt DDD, Hexagonal Architecture, and CQRS for Python Domain Services
      • Work
        • Active Work
          • Work: Bba Microgrid Controller
          • Implementation Specification: BBA Microgrid Controller
          • BBA Microgrid Controller Deliverables (Stories)
          • Work: BFDev Monolithic Git
          • Challenge
          • Specification: BFDev Monolithic Git v2
          • BFDev Monolithic Git v2 Stories
          • Work: Complex Circuit Load Balancing
          • Implementation Specification: Complex Circuit Load Balancing
          • Complex Circuit Load Balancing Deliverables (Stories)
            • COR-10 and COR-11 Consolidation Review
          • Work: Dispatch Reliability and Reconciliation
          • Challenge
          • Specification: Dispatch Reliability and Reconciliation
          • Dispatch Reliability and Reconciliation (Unit User Stories)
            • Dispatch populated vehicle cards grey surface snapshot
            • Dispatch Visual Review
          • Work: Enable Scheduled Managed Charger Access
          • Challenge: Enable Scheduled Managed Charger Access
          • Specification Exploration Dossier: Enable Scheduled Managed Charger Access
          • Specification Review: Enable Scheduled Managed Charger Access
          • Specification: Enable Scheduled Managed Charger Access
          • Work: Guided Cut-Off and Release Orchestration
          • Specification: Guided Cut-Off and Release Orchestration
          • Guided Cut-Off and Release Orchestration (Unit User Stories)
          • Work: Production Deployment Validation
          • Challenge
          • Work: Scheduled Report Parity
          • Specification: Scheduled Report Parity
          • Work: Telematics
          • Telematics EventBridge Path
          • Telematics Ingress Architecture
          • Specification: Telematics Migration into bf-manage-core with 5-Minute Freshness and Health Visibility
          • Telematics Core Migration MVP (Implementation-Time BDD)
          • Work: Vector Derms
          • Implementation Specification: Vector DERMS
          • Vector DERMS Deliverables (Stories)
          • Work: Visiting Vehicle Charging Visibility
          • Specification: Visiting Vehicle Charging Visibility
          • Visiting Vehicle Charging Visibility (Unit User Stories)
          • Work: Workspace Owned Stripe Roaming
          • Specification: Workspace-Owned Stripe Credentials for Roaming Payments
        • Backlog Work
          • Work: Microgrid
          • Microgrid Backlog Stories
          • Work: Mobile Ops Companion
          • Challenge
          • Specification: Mobile Operations Companion v1
          • Mobile Operations Companion Deliverables (Stories)
          • Work: Oscp
          • OSCP Backlog Stories
        • Archived Work
          • Work: Code Canonical Orchestration
          • Challenge
          • Specification: Product Engineering Workflow
          • Product Engineering Workflow Deliverables (Unit User Stories)
          • Work: Release Notes Automation
          • Release Plan: Release Notes Automation
          • Release Notes Automation Backlog Stories
      • Operations
      • Onboarding Runbook
        • Operations Runbooks
        • Production Hotfix Release
        • Staging Hotfix Release
        • Manage Staging Release Validation
        • Terraform Plan Dry Runs
        • Operations Tooling
        • Code Indexing
        • Operations Evidence
        • Database Restoration Test Report
      • Daily Operations Runbook
      • Testing Guide
      • Troubleshooting
    • What Linear Owns
    • Project Rules
    • Issue Rules
    • Estimates
    • Readiness
    • Cycles
    • Status And Ownership
    • Labels
    • Out Of Scope
    1. Home
    2. Process
    3. Workflows
    Operations & Dispatch Process general

    Product Engineering Workflow in Linear¶

    Use this page when touching Linear: Projects, issues, estimates, dependencies, cycles, milestones, labels, ownership, or status. For intake and weekly selection, start with Work Intake and Weekly Planning.

    What Linear Owns¶

    Object Use
    Triage issue One seed record for new or unowned work.
    Project Governed product specification and project-level operating state.
    Issue Active work, delivery slice, support/bug, small fix, docs work, or execution step.
    Milestone Released-together customer scope or governed gate.
    Cycle Weekly planning container, not a release boundary.

    Index owns governed challenge framing. Repos own implementation and shipped-output artifacts. Linear owns the operating view.

    Project Rules¶

    A governed Project should:

    • contain the canonical specification
    • link to or clearly name the Index challenge
    • have the owning team set
    • have a lead assigned
    • have start and target dates once it is In Progress
    • have status updates at least every two days while active, or sooner when state, risk, timing, or scope changes
    • contain issues shaped as unit user stories or focused execution steps rather than broad buckets

    If a Project is only a rough thought, keep it as a placeholder and make the missing specification work explicit.

    Issue Rules¶

    Story issues should:

    • map to one unit user story
    • belong to the relevant Project
    • include acceptance criteria or equivalent completion rules
    • show material dependencies or blockers
    • carry the Kind / Story label
    • have an estimate when selected into the current cycle or moved to In Progress

    Execution-only issues should:

    • point back to the parent story or scope issue when one exists
    • represent one hours-scale delivery step
    • carry exactly one of Kind / Technical, Kind / Spike, Kind / Validation, or Kind / Docs
    • use blockedBy when completion is required before the parent can finish
    • use relatedTo for supporting work that should remain visible but is not a blocker
    • be assigned to the person doing the current step

    If an issue grows beyond one focused delivery step, split it or push the broader scope back into shaping.

    Estimates¶

    BetterFleet uses Linear's T-shirt estimates:

    Estimate Meaning
    XS = 1 Very narrow, tightly bounded change.
    S = 2 Clean small slice with light cross-checking.
    M = 3 Straightforward multi-file or multi-surface change.
    L = 5 Broader story or shaping slice with meaningful coordination.
    XL = 8 Rare; prefer splitting before assigning.

    Estimate the intended shape of the issue, not elapsed calendar time. If a body of work contains multiple independently shippable slices, split it instead of inflating the estimate.

    Readiness¶

    An issue is ready for governed pickup only when:

    • it belongs to the right Project
    • it links to the parent story or scope issue when needed
    • its scope and completion rules are clear
    • material dependencies and blockers are visible
    • estimate, owner, and status are current when active

    A Project is ready for active delivery tracking only when the specification is usable, the owning team and lead are set, dates exist for active work, and Project issues are shaped as deliverable slices.

    A milestone is ready only when it represents real released-together customer scope or a governed gate, with a target date when timing is being planned or communicated.

    Cycles¶

    • A cycle is a weekly planning container.
    • Only work intended for the week should be in the current cycle.
    • Issues in the cycle should already be actionable enough to plan.
    • Story issues may sit in the cycle for visibility while day-to-day work happens through execution-only issues.
    • Automatic rollover is a review prompt, not an automatic recommitment.
    • Rolled-over issues stay in the cycle only when the team re-selects them.

    Status And Ownership¶

    • Do not move placeholder, not-ready, or wrongly shaped work into In Progress.
    • Once work starts, move or keep the active issue in In Progress and assign it to the person doing the current step.
    • If a story needs multiple delivery steps, prefer moving the execution-only issue to In Progress rather than the broader story.
    • If ownership changes, reassign the issue instead of leaving ambiguous ownership.
    • If the active issue does not match the work actually happening, correct the Linear state or switch work before continuing.
    • If scope, dependencies, blockers, linked planning references, or owner change, update Linear.

    Before proposing Done or In Review, confirm the work meets the done conditions in Product Engineering Delivery.

    Labels¶

    Use the existing Kind label group:

    • Kind / Story
    • Kind / Technical
    • Kind / Spike
    • Kind / Validation
    • Kind / Docs

    Out Of Scope¶

    This is not a general Linear user guide. It defines BetterFleet's operating rules for keeping Linear accurate and useful.

    Made with Material for MkDocs
    BFDev Docs Assistant
    New conversation?
    Ask one focused question at a time, this helps the assistant provide accurate answers about what's been implemented in BetterFleet.