@basementuniverse/kanbn 0.9.0 → 1.0.0

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 (46) hide show
  1. package/docs/commands/burndown.txt +7 -1
  2. package/docs/commands/gantt.txt +36 -0
  3. package/docs/commands/help.txt +1 -0
  4. package/docs/index-structure.md +20 -1
  5. package/docs/quick-start.md +1 -1
  6. package/docs/task-structure.md +47 -0
  7. package/example/.kanbn/index.md +63 -0
  8. package/example/.kanbn/tasks/add-basic-activity-feed.md +53 -0
  9. package/example/.kanbn/tasks/add-passwordless-login-option.md +34 -0
  10. package/example/.kanbn/tasks/add-usage-alert-email-thresholds.md +35 -0
  11. package/example/.kanbn/tasks/build-email-template-system.md +30 -0
  12. package/example/.kanbn/tasks/build-invoice-download-endpoint.md +43 -0
  13. package/example/.kanbn/tasks/build-tenant-settings-page.md +48 -0
  14. package/example/.kanbn/tasks/create-organization-switcher.md +53 -0
  15. package/example/.kanbn/tasks/create-sandbox-environment-provisioner.md +36 -0
  16. package/example/.kanbn/tasks/create-self-serve-cancellation-flow.md +38 -0
  17. package/example/.kanbn/tasks/define-product-pricing-strategy.md +37 -0
  18. package/example/.kanbn/tasks/design-onboarding-checklist.md +30 -0
  19. package/example/.kanbn/tasks/design-team-invite-expiry-flow.md +33 -0
  20. package/example/.kanbn/tasks/implement-data-retention-policy-jobs.md +30 -0
  21. package/example/.kanbn/tasks/implement-feature-flags-foundation.md +36 -0
  22. package/example/.kanbn/tasks/implement-project-creation-wizard.md +44 -0
  23. package/example/.kanbn/tasks/implement-stripe-webhook-signature-check.md +54 -0
  24. package/example/.kanbn/tasks/implement-team-permissions-ui.md +57 -0
  25. package/example/.kanbn/tasks/implement-user-signup-and-login.md +62 -0
  26. package/example/.kanbn/tasks/integrate-crm-lead-sync.md +35 -0
  27. package/example/.kanbn/tasks/legal-review-terms-and-privacy.md +30 -0
  28. package/example/.kanbn/tasks/migrate-legacy-events-to-new-schema.md +48 -0
  29. package/example/.kanbn/tasks/optimize-dashboard-first-load.md +52 -0
  30. package/example/.kanbn/tasks/prototype-report-export-scheduler.md +34 -0
  31. package/example/.kanbn/tasks/publish-internal-qa-checklist.md +53 -0
  32. package/example/.kanbn/tasks/setup-ci-pipeline.md +53 -0
  33. package/package.json +3 -2
  34. package/routes/gantt.json +27 -0
  35. package/skills/kanbn-plan/SKILL.md +0 -0
  36. package/src/board.js +21 -2
  37. package/src/controller/add.js +33 -1
  38. package/src/controller/burndown.js +72 -5
  39. package/src/controller/edit.js +68 -1
  40. package/src/controller/find.js +5 -0
  41. package/src/controller/gantt.js +375 -0
  42. package/src/controller/init.js +2 -1
  43. package/src/controller/sort.js +8 -0
  44. package/src/main.d.ts +295 -340
  45. package/src/main.js +2591 -2050
  46. package/src/parse-task.js +211 -3
@@ -5,6 +5,12 @@ Show a burndown chart between a date range, or for a particular sprint.
5
5
  If no dates or sprint identifiers are specified, show data for the current sprint.
6
6
  If no sprints are defined, show data from the earliest created date to the current date.
7
7
 
8
+ Burndown data source:
9
+ When a task has a structured `History` section, burndown uses its lifecycle events (created, moved, progress,
10
+ archived, restored) to reconstruct task activity over time.
11
+ For older tasks without history, burndown falls back to metadata/date inference (created/started/completed +
12
+ startedColumns/completedColumns).
13
+
8
14
  Options:
9
15
  {b}kanbn burndown --json{b}
10
16
  {b}kanbn burndown -j{b}
@@ -31,5 +37,5 @@ Options:
31
37
 
32
38
  {b}kanbn burndown --normalise "days"|"hours"|"minutes"|"seconds"{b}
33
39
  {b}kanbn burndown --n "days"|"hours"|"minutes"|"seconds"{b}
34
- Normalise dates. Task created, started and completed times will be rounded down to the nearest day, hour, minute or second. This may cause task events to be grouped together.
40
+ Normalise dates. Task event times (history events or legacy created/started/completed dates) will be rounded down to the nearest day, hour, minute or second. This may cause task events to be grouped together.
35
41
  If this option is set to a blank or unsupported value, the normalisation mode will be automatically selected based on the date range.
@@ -0,0 +1,36 @@
1
+ {b}kanbn gantt{b}
2
+ {b}kanbn gt{b}
3
+
4
+ Show a gantt chart for tracked tasks.
5
+
6
+ Tasks are ordered using `depends-on` relations when present. The chart uses task dates, workload, and the optional
7
+ `postponed` metadata field to estimate when work can start.
8
+ The rendered chart includes:
9
+ • A unified date axis at the bottom for easy time reference
10
+ • A vertical "now" line marking the current date (if within the chart range)
11
+ • Dependency arrows (└─→) showing which tasks depend on others
12
+ • Task bars with progress indicators: █ (completed), ▓ (in progress), ░ (not started)
13
+ • A blocked indicator (⧗) showing tasks delayed by dependencies
14
+
15
+ Options:
16
+ {b}kanbn gantt --json{b}
17
+ {b}kanbn gantt -j{b}
18
+ Output raw data instead of rendering a chart. The data will be returned in JSON format.
19
+
20
+ {b}kanbn gantt --assigned "user"{b}
21
+ {b}kanbn gantt -a "user"{b}
22
+ Filter for tasks that are assigned to a particular user.
23
+
24
+ {b}kanbn gantt --column "column"{b}
25
+ {b}kanbn gantt -c "column"{b}
26
+ Filter for tasks in a particular column. This option can be repeated to include multiple columns.
27
+
28
+ {b}kanbn gantt --date "date"{b}
29
+ {b}kanbn gantt -d "date"{b}
30
+ Filter for tasks created within a specified date range.
31
+ If only one date is provided, show tasks created from this date up to the present date.
32
+ If more than one date is provided, show tasks created between the earliest and latest date.
33
+
34
+ {b}kanbn gantt --now "date"{b}
35
+ {b}kanbn gantt -n "date"{b}
36
+ Mock the current date used for the "now" line and single-date range filtering.
@@ -19,6 +19,7 @@ Where {b}<command>{b} is one of:
19
19
  {b}sort{b} {d}..........{d} Sort a column in the index
20
20
  {b}sprint{b} {d}........{d} Start a new sprint
21
21
  {b}burndown{b} {d}......{d} View a burndown chart
22
+ {b}gantt{b} {d}.........{d} View a gantt chart
22
23
  {b}validate{b} {d}......{d} Validate index and task files
23
24
  {b}archive{b} {d}.......{d} Archive a task
24
25
  {b}restore{b} {d}.......{d} Restore a task from the archive
@@ -146,12 +146,15 @@ dueMessage
146
146
  column
147
147
  workload
148
148
  progress
149
+ {...customFields}
149
150
  ```
150
151
 
151
152
  The default task template is `^+^_${overdue ? '^R' : ''}${name}^: ${created ? ('\\n^-^/' + created) : ''}`.
152
153
 
153
154
  This string can contain markup sequences. See [terminal-kit](https://github.com/cronvel/terminal-kit/blob/21607fb51749853dd9193c6aaf205b14c63b2768/doc/markup.md#markup) for markup reference.
154
155
 
156
+ *Note: custom fields can also be interpolated into the task template, but only if they are defined in `customFields` (see below).*
157
+
155
158
  ### `dateFormat`
156
159
 
157
160
  The date format to use for dates on the kanbn board and burndown chart views. See [dateformat](https://www.npmjs.com/package/dateformat) for date format reference.
@@ -180,8 +183,24 @@ Additionally, if a custom field has type `date`, the custom field can have a str
180
183
 
181
184
  ### `{customFieldName}Columns`
182
185
 
183
- A list of column names. `{customFieldName}` should match a custom field with type `date`. When a task is created in or dragged into one of these columns, the matching custom field in the task can be set to the current time.
186
+ A list of column names. `{customFieldName}` should be the name of a custom field with type `date` (see the `customFields` section above for more information).
187
+
188
+ When a task is created in or dragged into one of these columns, the matching custom field in the task can be set to the current time.
184
189
 
185
190
  If the custom field has `updateDate` set to `once`, the field will only be updated if it doesn't already have a value.
186
191
 
187
192
  If the custom field has `updateDate` set to `always`, the field will be updated every time the task is moved into a linked column.
193
+
194
+ Here's an example of how this could be used:
195
+
196
+ * Assume we have added a column called `Testing`
197
+ * In `index.md` (or `kanbn.json` / `kanbn.yml` if using a separate configuration file), we have:
198
+ ```
199
+ customFields:
200
+ - name: testedAt
201
+ type: date
202
+ updateDate: once
203
+ testedAtColumns:
204
+ - Testing
205
+ ```
206
+ * When a task is moved into the `Testing` column and the task doesn't already have a `testedAt` value in its metadata, this value will be automatically populated with the current date/time.
@@ -55,7 +55,7 @@ This will show a kanbn board, something like this:
55
55
  kanbn edit "my-new-task" -t "Large"
56
56
  ```
57
57
 
58
- This will add a "Huge" tag to the task and modify the task's updated date. If you're using the default settings, this will also affect the task's workload.
58
+ This will add a "Large" tag to the task and modify the task's updated date. If you're using the default settings, this will also affect the task's workload.
59
59
 
60
60
  Run `kanbn edit --help` for more information on editing tasks.
61
61
 
@@ -13,6 +13,7 @@ progress: 0.5
13
13
  started: 2021-03-21T04:58:38.653Z
14
14
  completed: 2021-03-21T04:58:38.653Z
15
15
  due: 2021-03-21T04:58:38.653Z
16
+ postponed: 2021-03-20T04:58:38.653Z
16
17
  ---
17
18
 
18
19
  # Task Name
@@ -34,6 +35,26 @@ Task description...
34
35
  - author: Username
35
36
  date: 2021-03-31T07:47:05.775Z
36
37
  This is a comment...
38
+
39
+ ## History
40
+
41
+ - type: created
42
+ date: 2021-03-18T02:08:42.293Z
43
+ column: Backlog
44
+ - type: moved
45
+ date: 2021-03-21T04:58:38.653Z
46
+ fromColumn: Backlog
47
+ toColumn: In Progress
48
+ - type: progress
49
+ date: 2021-03-22T09:30:00.000Z
50
+ fromProgress: 0.25
51
+ toProgress: 0.5
52
+ - type: archived
53
+ date: 2021-03-31T07:47:05.775Z
54
+ fromColumn: In Progress
55
+ - type: restored
56
+ date: 2021-04-01T10:00:00.000Z
57
+ toColumn: Backlog
37
58
  ```
38
59
 
39
60
  The task file can optionally begin with YAML front-matter containing task metadata.
@@ -96,6 +117,11 @@ The date and time that the task was completed.
96
117
 
97
118
  The date and time that the task is due to be completed.
98
119
 
120
+ ### `postponed`
121
+
122
+ The date and time after which the task should be scheduled. Gantt chart rendering uses this value as an explicit
123
+ start-floor when present.
124
+
99
125
  ## Sub-tasks
100
126
 
101
127
  This should be a list of strings. Each string can optionally start with `[ ]` (incomplete) or `[x]` (completed).
@@ -104,6 +130,27 @@ This should be a list of strings. Each string can optionally start with `[ ]` (i
104
130
 
105
131
  This should be a list of links to other task files. The link text can optionally begin with a relation type.
106
132
 
133
+ The `depends-on` relation type is reserved for gantt scheduling. It means the current task should not start until the
134
+ linked task has finished.
135
+
107
136
  ## Comments
108
137
 
109
138
  An array of comments, where each comment has an `author` and `date` property, and some text.
139
+
140
+ ## History
141
+
142
+ An optional array of structured lifecycle events used for richer timeline reporting (including burndown).
143
+
144
+ Supported event types:
145
+
146
+ - `created`: requires `date` and `column`
147
+ - `moved`: requires `date`, `fromColumn`, `toColumn`
148
+ - `progress`: requires `date`, `fromProgress`, `toProgress`
149
+ - `archived`: requires `date`, `fromColumn`
150
+ - `restored`: requires `date`, `toColumn`
151
+
152
+ Notes:
153
+
154
+ - History entries are stored in the reserved `## History` section as list items.
155
+ - `date` should be an ISO timestamp.
156
+ - Additional fields (for example `author`) are preserved if present.
@@ -0,0 +1,63 @@
1
+ ---
2
+ startedColumns:
3
+ - In Progress
4
+ completedColumns:
5
+ - Done
6
+ sprints:
7
+ - start: 2026-05-06T09:00:00.000Z
8
+ name: Foundation Sprint
9
+ description: Baseline product and infrastructure work.
10
+ - start: 2026-06-10T09:00:00.000Z
11
+ name: Workflow Sprint
12
+ description: Core team workflow and onboarding features.
13
+ - start: 2026-07-08T09:00:00.000Z
14
+ name: Stabilisation Sprint
15
+ description: Reliability and release readiness improvements.
16
+ taskWorkloadTags:
17
+ Tiny: 1
18
+ Small: 2
19
+ Medium: 3
20
+ Large: 5
21
+ Huge: 8
22
+ ---
23
+
24
+ # Example SaaS Project
25
+
26
+ A realistic in-flight product board with active development, completed work, and future backlog items.
27
+
28
+ ## Backlog
29
+
30
+ - [define-product-pricing-strategy](tasks/define-product-pricing-strategy.md)
31
+ - [legal-review-terms-and-privacy](tasks/legal-review-terms-and-privacy.md)
32
+ - [design-onboarding-checklist](tasks/design-onboarding-checklist.md)
33
+ - [implement-feature-flags-foundation](tasks/implement-feature-flags-foundation.md)
34
+ - [build-email-template-system](tasks/build-email-template-system.md)
35
+ - [create-sandbox-environment-provisioner](tasks/create-sandbox-environment-provisioner.md)
36
+ - [implement-data-retention-policy-jobs](tasks/implement-data-retention-policy-jobs.md)
37
+ - [design-team-invite-expiry-flow](tasks/design-team-invite-expiry-flow.md)
38
+ - [prototype-report-export-scheduler](tasks/prototype-report-export-scheduler.md)
39
+
40
+ ## Todo
41
+
42
+ - [implement-project-creation-wizard](tasks/implement-project-creation-wizard.md)
43
+ - [add-passwordless-login-option](tasks/add-passwordless-login-option.md)
44
+ - [integrate-crm-lead-sync](tasks/integrate-crm-lead-sync.md)
45
+ - [build-invoice-download-endpoint](tasks/build-invoice-download-endpoint.md)
46
+ - [add-usage-alert-email-thresholds](tasks/add-usage-alert-email-thresholds.md)
47
+ - [create-self-serve-cancellation-flow](tasks/create-self-serve-cancellation-flow.md)
48
+
49
+ ## In Progress
50
+
51
+ - [build-tenant-settings-page](tasks/build-tenant-settings-page.md)
52
+ - [implement-team-permissions-ui](tasks/implement-team-permissions-ui.md)
53
+ - [optimize-dashboard-first-load](tasks/optimize-dashboard-first-load.md)
54
+ - [migrate-legacy-events-to-new-schema](tasks/migrate-legacy-events-to-new-schema.md)
55
+ - [implement-stripe-webhook-signature-check](tasks/implement-stripe-webhook-signature-check.md)
56
+
57
+ ## Done
58
+
59
+ - [setup-ci-pipeline](tasks/setup-ci-pipeline.md)
60
+ - [implement-user-signup-and-login](tasks/implement-user-signup-and-login.md)
61
+ - [create-organization-switcher](tasks/create-organization-switcher.md)
62
+ - [add-basic-activity-feed](tasks/add-basic-activity-feed.md)
63
+ - [publish-internal-qa-checklist](tasks/publish-internal-qa-checklist.md)
@@ -0,0 +1,53 @@
1
+ ---
2
+ created: 2026-07-01T10:00:00.000Z
3
+ updated: 2026-07-02T10:00:00.000Z
4
+ tags:
5
+ - Billing
6
+ - Medium
7
+ assigned: Sofia
8
+ progress: 1
9
+ started: 2026-07-03T10:00:00.000Z
10
+ completed: 2026-07-04T10:00:00.000Z
11
+ due: 2026-07-05T10:00:00.000Z
12
+ ---
13
+
14
+ # Add Basic Activity Feed
15
+
16
+ Add Basic Activity Feed for the SaaS platform roadmap.
17
+
18
+ Focus is on incremental delivery with low-risk rollout and measurable outcomes.
19
+
20
+ This shipped and has been validated for the current release.
21
+
22
+ ## Sub-tasks
23
+
24
+ - [ ] Confirm acceptance criteria with product and engineering.
25
+ - [ ] Document edge-cases and rollout notes for support.
26
+ - [ ] Add final QA checklist items before release.
27
+
28
+
29
+ ## History
30
+
31
+ - type: created
32
+ date: 2026-07-06T10:00:00.000Z
33
+ column: Backlog
34
+ - type: moved
35
+ date: 2026-07-07T10:00:00.000Z
36
+ fromColumn: Backlog
37
+ toColumn: Todo
38
+ - type: moved
39
+ date: 2026-07-08T10:00:00.000Z
40
+ fromColumn: Todo
41
+ toColumn: In Progress
42
+ - type: progress
43
+ date: 2026-07-09T10:00:00.000Z
44
+ fromProgress: 0
45
+ toProgress: 0.5
46
+ - type: progress
47
+ date: 2026-07-10T10:00:00.000Z
48
+ fromProgress: 0.5
49
+ toProgress: 1
50
+ - type: moved
51
+ date: 2026-07-11T10:00:00.000Z
52
+ fromColumn: In Progress
53
+ toColumn: Done
@@ -0,0 +1,34 @@
1
+ ---
2
+ created: 2026-07-02T10:00:00.000Z
3
+ updated: 2026-07-03T10:00:00.000Z
4
+ tags:
5
+ - Billing
6
+ - Medium
7
+ progress: 0
8
+ due: 2026-07-04T10:00:00.000Z
9
+ ---
10
+
11
+ # Add Passwordless Login Option
12
+
13
+ Add Passwordless Login Option for the SaaS platform roadmap.
14
+
15
+ Focus is on incremental delivery with low-risk rollout and measurable outcomes.
16
+
17
+ This has a clear scope and is ready to be picked up next.
18
+
19
+ ## Sub-tasks
20
+
21
+ - [ ] Confirm acceptance criteria with product and engineering.
22
+ - [ ] Document edge-cases and rollout notes for support.
23
+ - [ ] Add final QA checklist items before release.
24
+
25
+
26
+ ## History
27
+
28
+ - type: created
29
+ date: 2026-07-05T10:00:00.000Z
30
+ column: Backlog
31
+ - type: moved
32
+ date: 2026-07-06T10:00:00.000Z
33
+ fromColumn: Backlog
34
+ toColumn: Todo
@@ -0,0 +1,35 @@
1
+ ---
2
+ created: 2026-07-03T10:00:00.000Z
3
+ updated: 2026-07-04T10:00:00.000Z
4
+ tags:
5
+ - Growth
6
+ - Small
7
+ assigned: Noah
8
+ progress: 0
9
+ due: 2026-07-05T10:00:00.000Z
10
+ ---
11
+
12
+ # Add Usage Alert Email Thresholds
13
+
14
+ Add Usage Alert Email Thresholds for the SaaS platform roadmap.
15
+
16
+ Focus is on incremental delivery with low-risk rollout and measurable outcomes.
17
+
18
+ This has a clear scope and is ready to be picked up next.
19
+
20
+ ## Sub-tasks
21
+
22
+ - [ ] Confirm acceptance criteria with product and engineering.
23
+ - [ ] Document edge-cases and rollout notes for support.
24
+ - [ ] Add final QA checklist items before release.
25
+
26
+
27
+ ## History
28
+
29
+ - type: created
30
+ date: 2026-07-06T10:00:00.000Z
31
+ column: Backlog
32
+ - type: moved
33
+ date: 2026-07-07T10:00:00.000Z
34
+ fromColumn: Backlog
35
+ toColumn: Todo
@@ -0,0 +1,30 @@
1
+ ---
2
+ created: 2026-07-04T10:00:00.000Z
3
+ updated: 2026-07-05T10:00:00.000Z
4
+ tags:
5
+ - Backend
6
+ - Medium
7
+ progress: 0
8
+ due: 2026-07-06T10:00:00.000Z
9
+ ---
10
+
11
+ # Build Email Template System
12
+
13
+ Build Email Template System for the SaaS platform roadmap.
14
+
15
+ Focus is on incremental delivery with low-risk rollout and measurable outcomes.
16
+
17
+ This is still in discovery and scoped as a future increment.
18
+
19
+ ## Sub-tasks
20
+
21
+ - [x] Confirm acceptance criteria with product and engineering.
22
+ - [ ] Document edge-cases and rollout notes for support.
23
+ - [ ] Add final QA checklist items before release.
24
+
25
+
26
+ ## History
27
+
28
+ - type: created
29
+ date: 2026-07-07T10:00:00.000Z
30
+ column: Backlog
@@ -0,0 +1,43 @@
1
+ ---
2
+ created: 2026-07-05T10:00:00.000Z
3
+ updated: 2026-07-06T10:00:00.000Z
4
+ tags:
5
+ - Platform
6
+ - Medium
7
+ progress: 0
8
+ due: 2026-07-07T10:00:00.000Z
9
+ ---
10
+
11
+ # Build Invoice Download Endpoint
12
+
13
+ Build Invoice Download Endpoint for the SaaS platform roadmap.
14
+
15
+ Focus is on incremental delivery with low-risk rollout and measurable outcomes.
16
+
17
+ This has a clear scope and is ready to be picked up next.
18
+
19
+ ## Sub-tasks
20
+
21
+ - [ ] Confirm acceptance criteria with product and engineering.
22
+ - [ ] Document edge-cases and rollout notes for support.
23
+ - [ ] Add final QA checklist items before release.
24
+
25
+ ## Relations
26
+
27
+ - [blocks create-self-serve-cancellation-flow](create-self-serve-cancellation-flow.md)
28
+
29
+ ## Comments
30
+
31
+ - author: Liam
32
+ date: 2026-07-08T10:00:00.000Z
33
+ Captured initial implementation notes and identified one external dependency.
34
+
35
+ ## History
36
+
37
+ - type: created
38
+ date: 2026-07-09T10:00:00.000Z
39
+ column: Backlog
40
+ - type: moved
41
+ date: 2026-07-10T10:00:00.000Z
42
+ fromColumn: Backlog
43
+ toColumn: Todo
@@ -0,0 +1,48 @@
1
+ ---
2
+ created: 2026-07-06T10:00:00.000Z
3
+ updated: 2026-07-07T10:00:00.000Z
4
+ tags:
5
+ - Ops
6
+ - Small
7
+ assigned: Ravi
8
+ progress: 0.65
9
+ started: 2026-07-08T10:00:00.000Z
10
+ due: 2026-07-09T10:00:00.000Z
11
+ ---
12
+
13
+ # Build Tenant Settings Page
14
+
15
+ Build Tenant Settings Page for the SaaS platform roadmap.
16
+
17
+ Focus is on incremental delivery with low-risk rollout and measurable outcomes.
18
+
19
+ Implementation is active and this is currently being worked.
20
+
21
+ ## Sub-tasks
22
+
23
+ - [ ] Confirm acceptance criteria with product and engineering.
24
+ - [ ] Document edge-cases and rollout notes for support.
25
+ - [ ] Add final QA checklist items before release.
26
+
27
+
28
+ ## History
29
+
30
+ - type: created
31
+ date: 2026-07-10T10:00:00.000Z
32
+ column: Backlog
33
+ - type: moved
34
+ date: 2026-07-11T10:00:00.000Z
35
+ fromColumn: Backlog
36
+ toColumn: Todo
37
+ - type: moved
38
+ date: 2026-07-12T10:00:00.000Z
39
+ fromColumn: Todo
40
+ toColumn: In Progress
41
+ - type: progress
42
+ date: 2026-07-13T10:00:00.000Z
43
+ fromProgress: 0
44
+ toProgress: 0.45
45
+ - type: progress
46
+ date: 2026-07-14T10:00:00.000Z
47
+ fromProgress: 0.45
48
+ toProgress: 0.65
@@ -0,0 +1,53 @@
1
+ ---
2
+ created: 2026-07-07T10:00:00.000Z
3
+ updated: 2026-07-08T10:00:00.000Z
4
+ tags:
5
+ - Ops
6
+ - Small
7
+ assigned: Ravi
8
+ progress: 1
9
+ started: 2026-07-09T10:00:00.000Z
10
+ completed: 2026-07-10T10:00:00.000Z
11
+ due: 2026-07-11T10:00:00.000Z
12
+ ---
13
+
14
+ # Create Organization Switcher
15
+
16
+ Create Organization Switcher for the SaaS platform roadmap.
17
+
18
+ Focus is on incremental delivery with low-risk rollout and measurable outcomes.
19
+
20
+ This shipped and has been validated for the current release.
21
+
22
+ ## Sub-tasks
23
+
24
+ - [ ] Confirm acceptance criteria with product and engineering.
25
+ - [ ] Document edge-cases and rollout notes for support.
26
+ - [ ] Add final QA checklist items before release.
27
+
28
+
29
+ ## History
30
+
31
+ - type: created
32
+ date: 2026-07-12T10:00:00.000Z
33
+ column: Backlog
34
+ - type: moved
35
+ date: 2026-07-13T10:00:00.000Z
36
+ fromColumn: Backlog
37
+ toColumn: Todo
38
+ - type: moved
39
+ date: 2026-07-14T10:00:00.000Z
40
+ fromColumn: Todo
41
+ toColumn: In Progress
42
+ - type: progress
43
+ date: 2026-07-15T10:00:00.000Z
44
+ fromProgress: 0
45
+ toProgress: 0.5
46
+ - type: progress
47
+ date: 2026-07-16T10:00:00.000Z
48
+ fromProgress: 0.5
49
+ toProgress: 1
50
+ - type: moved
51
+ date: 2026-07-17T10:00:00.000Z
52
+ fromColumn: In Progress
53
+ toColumn: Done
@@ -0,0 +1,36 @@
1
+ ---
2
+ created: 2026-07-08T10:00:00.000Z
3
+ updated: 2026-07-09T10:00:00.000Z
4
+ tags:
5
+ - Ops
6
+ - Small
7
+ progress: 0
8
+ due: 2026-07-10T10:00:00.000Z
9
+ ---
10
+
11
+ # Create Sandbox Environment Provisioner
12
+
13
+ Create Sandbox Environment Provisioner for the SaaS platform roadmap.
14
+
15
+ Focus is on incremental delivery with low-risk rollout and measurable outcomes.
16
+
17
+ This is still in discovery and scoped as a future increment.
18
+
19
+ ## Sub-tasks
20
+
21
+ - [ ] Confirm acceptance criteria with product and engineering.
22
+ - [ ] Document edge-cases and rollout notes for support.
23
+ - [ ] Add final QA checklist items before release.
24
+
25
+
26
+ ## Comments
27
+
28
+ - author: Ravi
29
+ date: 2026-07-11T10:00:00.000Z
30
+ Captured initial implementation notes and identified one external dependency.
31
+
32
+ ## History
33
+
34
+ - type: created
35
+ date: 2026-07-12T10:00:00.000Z
36
+ column: Backlog
@@ -0,0 +1,38 @@
1
+ ---
2
+ created: 2026-07-09T10:00:00.000Z
3
+ updated: 2026-07-10T10:00:00.000Z
4
+ tags:
5
+ - UX
6
+ - Large
7
+ progress: 0
8
+ due: 2026-07-11T10:00:00.000Z
9
+ postponed: 2026-07-20T10:00:00.000Z
10
+ ---
11
+
12
+ # Create Self-serve Cancellation Flow
13
+
14
+ Create Self-serve Cancellation Flow for the SaaS platform roadmap.
15
+
16
+ Focus is on incremental delivery with low-risk rollout and measurable outcomes.
17
+
18
+ This has a clear scope and is ready to be picked up next.
19
+
20
+ ## Sub-tasks
21
+
22
+ - [ ] Confirm acceptance criteria with product and engineering.
23
+ - [x] Document edge-cases and rollout notes for support.
24
+ - [ ] Add final QA checklist items before release.
25
+
26
+ ## Relations
27
+
28
+ - [depends on add-usage-alert-email-thresholds](add-usage-alert-email-thresholds.md)
29
+
30
+ ## History
31
+
32
+ - type: created
33
+ date: 2026-07-12T10:00:00.000Z
34
+ column: Backlog
35
+ - type: moved
36
+ date: 2026-07-13T10:00:00.000Z
37
+ fromColumn: Backlog
38
+ toColumn: Todo
@@ -0,0 +1,37 @@
1
+ ---
2
+ created: 2026-07-10T10:00:00.000Z
3
+ updated: 2026-07-11T10:00:00.000Z
4
+ tags:
5
+ - Product
6
+ - Small
7
+ assigned: Ava
8
+ progress: 0.1
9
+ due: 2026-07-12T10:00:00.000Z
10
+ ---
11
+
12
+ # Define Product Pricing Strategy
13
+
14
+ Define Product Pricing Strategy for the SaaS platform roadmap.
15
+
16
+ Focus is on incremental delivery with low-risk rollout and measurable outcomes.
17
+
18
+ This is still in discovery and scoped as a future increment.
19
+
20
+ ## Sub-tasks
21
+
22
+ - [x] Confirm acceptance criteria with product and engineering.
23
+ - [x] Document edge-cases and rollout notes for support.
24
+ - [ ] Add final QA checklist items before release.
25
+
26
+
27
+ ## Comments
28
+
29
+ - author: Ava
30
+ date: 2026-07-13T10:00:00.000Z
31
+ Captured initial implementation notes and identified one external dependency.
32
+
33
+ ## History
34
+
35
+ - type: created
36
+ date: 2026-07-14T10:00:00.000Z
37
+ column: Backlog