@synap-core/workspace-templates 0.12.0 → 0.24.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.
- package/README.md +509 -0
- package/automations/bookmark-enrichment.automation.json +321 -0
- package/automations/github-pr-events.automation.json +505 -0
- package/automations/mail-feed.automation.json +86 -0
- package/automations/ship-a-change-checks-green.automation.json +106 -0
- package/automations/ship-a-change-checks-red.automation.json +106 -0
- package/automations/ship-a-change-deployed.automation.json +56 -0
- package/automations/ship-a-change-pr-merged.automation.json +110 -0
- package/automations/ship-a-change-pr-opened.automation.json +104 -0
- package/automations/url-bookmark-capture.automation.json +132 -0
- package/capabilities/agency-skills.capability.json +157 -0
- package/capabilities/apify.capability.json +265 -0
- package/capabilities/apollo.capability.json +120 -0
- package/capabilities/arch-backend.capability.json +97 -0
- package/capabilities/arch-client-intelligence.capability.json +401 -0
- package/capabilities/backblaze-b2.capability.json +205 -0
- package/capabilities/cal-com.capability.json +266 -0
- package/capabilities/canva.capability.json +274 -0
- package/capabilities/claude-code-routines.capability.json +172 -0
- package/capabilities/claude-managed-agents.capability.json +215 -0
- package/capabilities/client-comms-report.capability.json +246 -0
- package/capabilities/content-idea-to-production.capability.json +29 -0
- package/capabilities/datagouv.capability.json +315 -0
- package/capabilities/discord-bot.capability.json +157 -0
- package/capabilities/dropbox.capability.json +281 -0
- package/capabilities/exa.capability.json +109 -0
- package/capabilities/fal-ai.capability.json +83 -0
- package/capabilities/fal-media-lab.capability.json +158 -0
- package/capabilities/fireflies.capability.json +191 -0
- package/capabilities/freellmapi.capability.json +114 -0
- package/capabilities/generic-apikey.capability.json +92 -0
- package/capabilities/github-merge.capability.json +99 -0
- package/capabilities/github-read.capability.json +325 -0
- package/capabilities/governance-tighten-recommender.capability.json +81 -0
- package/capabilities/jev.capability.json +226 -0
- package/capabilities/lead-conversion-enrollment.capability.json +246 -0
- package/capabilities/mail-feed.capability.json +277 -0
- package/capabilities/mailgun.capability.json +52 -0
- package/capabilities/nango-google.capability.json +639 -0
- package/capabilities/notion.capability.json +417 -0
- package/capabilities/omniroute.capability.json +137 -0
- package/capabilities/posthog-analytics.capability.json +258 -0
- package/capabilities/postiz.capability.json +467 -0
- package/capabilities/proactive-digest.capability.json +190 -0
- package/capabilities/proton.capability.json +288 -0
- package/capabilities/replicate-rvm.capability.json +97 -0
- package/capabilities/research-methods.capability.json +57 -0
- package/capabilities/shopify.capability.json +395 -0
- package/capabilities/slack.capability.json +369 -0
- package/capabilities/stripe.capability.json +1496 -0
- package/capabilities/telegram-bridge.capability.json +56 -0
- package/capabilities/treg.capability.json +102 -0
- package/capabilities/unipile-linkedin.capability.json +494 -0
- package/capabilities/vercel.capability.json +424 -0
- package/dist/define-DqoItRiR.d.ts +1370 -0
- package/dist/index.d.ts +174 -900
- package/dist/index.js +26447 -24075
- package/dist/index.js.map +1 -1
- package/dist/wire.d.ts +222 -0
- package/dist/wire.js +77 -0
- package/dist/wire.js.map +1 -0
- package/package.json +27 -4
- package/retired.yaml +136 -0
- package/skills/app-factory-build-slice/SKILL.md +70 -0
- package/skills/app-factory-build-slice.catalog.json +17 -0
- package/skills/app-factory-design-canvas/SKILL.md +96 -0
- package/skills/app-factory-design-canvas.catalog.json +17 -0
- package/skills/app-factory-design-review/SKILL.md +105 -0
- package/skills/app-factory-design-review.catalog.json +18 -0
- package/skills/app-factory-research/SKILL.md +123 -0
- package/skills/app-factory-research.catalog.json +17 -0
- package/skills/bookmark-enrichment/SKILL.md +40 -0
- package/skills/carousel-format/carousel-format.skill.json +18 -0
- package/skills/collage-broll/collage-broll.skill.json +20 -0
- package/skills/content-taste/content-taste.skill.json +18 -0
- package/skills/creative-director/creative-director.skill.json +18 -0
- package/skills/design-critique/SKILL.md +138 -0
- package/skills/design-critique.catalog.json +12 -0
- package/skills/designing-with-real-components/SKILL.md +140 -0
- package/skills/designing-with-real-components.catalog.json +12 -0
- package/skills/edit-loop/edit-loop.skill.json +25 -0
- package/skills/facecam-edit/facecam-edit.skill.json +24 -0
- package/skills/mapping-the-server/SKILL.md +54 -0
- package/skills/math-explainer-manimgx/math-explainer-manimgx.skill.json +20 -0
- package/skills/motion-quality-gates/motion-quality-gates.skill.json +20 -0
- package/skills/open-design-edit/open-design-edit.skill.json +24 -0
- package/skills/reading-client-progress/SKILL.md +65 -0
- package/skills/routing-to-channels/SKILL.md +54 -0
- package/skills/stellar-scf-grants-advisor/ASSOCIATE-CHEATSHEET.md +133 -0
- package/skills/stellar-scf-grants-advisor/ASSOCIATE-ONBOARDING-GUIDE.md +761 -0
- package/skills/stellar-scf-grants-advisor/CLIENT-FAQ.md +181 -0
- package/skills/stellar-scf-grants-advisor/PARTNER-HANDOVER.md +130 -0
- package/skills/stellar-scf-grants-advisor/SKILL.md +102 -0
- package/skills/stellar-scf-grants-advisor/examples/README.md +43 -0
- package/skills/stellar-scf-grants-advisor/examples/chat-summary-templates.md +158 -0
- package/skills/stellar-scf-grants-advisor/examples/corpus-comparable-rows.md +136 -0
- package/skills/stellar-scf-grants-advisor/examples/q10-team-rewrites.md +109 -0
- package/skills/stellar-scf-grants-advisor/examples/q2-description-rewrites.md +88 -0
- package/skills/stellar-scf-grants-advisor/examples/q6-integration-rewrites.md +107 -0
- package/skills/stellar-scf-grants-advisor/examples/tranche-structures.md +176 -0
- package/skills/stellar-scf-grants-advisor/reference/01-methodology.md +96 -0
- package/skills/stellar-scf-grants-advisor/reference/02-scoring-framework.md +199 -0
- package/skills/stellar-scf-grants-advisor/reference/03-rejection-patterns.md +241 -0
- package/skills/stellar-scf-grants-advisor/reference/04-winner-patterns.md +120 -0
- package/skills/stellar-scf-grants-advisor/reference/05-comeback-patterns.md +92 -0
- package/skills/stellar-scf-grants-advisor/reference/06-budget-benchmarks.md +125 -0
- package/skills/stellar-scf-grants-advisor/reference/07-integration-list.md +147 -0
- package/skills/stellar-scf-grants-advisor/reference/08-abstract-fields.md +258 -0
- package/skills/stellar-scf-grants-advisor/reference/09-build-fields.md +259 -0
- package/skills/stellar-scf-grants-advisor/reference/10-corpus-winners.md +135 -0
- package/skills/stellar-scf-grants-advisor/reference/11-corpus-rejects.md +267 -0
- package/skills/stellar-scf-grants-advisor/reference/12-client-communication.md +131 -0
- package/skills/stellar-scf-grants-advisor/reference/13-excel-output-spec.md +199 -0
- package/skills/stellar-scf-grants-advisor/reference/14-worked-examples.md +160 -0
- package/skills/stellar-scf-grants-advisor/templates/abstract-review-builder.py +253 -0
- package/skills/stellar-scf-grants-advisor/templates/build-review-builder.py +213 -0
- package/skills/video-direction/video-direction.skill.json +20 -0
- package/skills/video-style-vocabulary/video-style-vocabulary.skill.json +20 -0
- package/skills/video-toolbox/video-toolbox.skill.json +20 -0
- package/src/__fixtures__/lifecycle-presets.flat-before.json +205 -0
- package/src/agency-os.yaml +122 -0
- package/src/agent-os-skill-slugs.test.ts +65 -0
- package/src/apify-social-reader.test.ts +317 -0
- package/src/base.yaml +85 -39
- package/src/blockchain-ecosystem.yaml +1 -0
- package/src/brand-library.yaml +525 -14
- package/src/builder-dev-fold.template.test.ts +113 -0
- package/src/builder.yaml +779 -91
- package/src/business-model-catalog-description.test.ts +47 -0
- package/src/business-model-grp.template.test.ts +214 -0
- package/src/business-model.yaml +296 -49
- package/src/catalog-safety.test.ts +198 -0
- package/src/catalog.template-items.test.ts +75 -0
- package/src/catalog.ts +66 -2
- package/src/concept-guard.test.ts +28 -8
- package/src/concept-guard.ts +2 -2
- package/src/content-creation.template.test.ts +52 -0
- package/src/content-creation.yaml +192 -0
- package/src/content-os.edit-loop.template.test.ts +210 -0
- package/src/content-os.publish-due-posts.template.test.ts +261 -0
- package/src/content-os.template.test.ts +349 -0
- package/src/content-os.video-takes.template.test.ts +338 -0
- package/src/content-os.work-a-take.template.test.ts +125 -0
- package/src/content-os.yaml +1873 -39
- package/src/content-studio-retired.template.test.ts +82 -0
- package/src/corpus-flow-validity.test.ts +4 -5
- package/src/crm-absorbs-outreach.template.test.ts +117 -0
- package/src/crm-build-plan.template.test.ts +128 -0
- package/src/crm-lists.template.test.ts +96 -0
- package/src/crm-messages-cadence.template.test.ts +246 -0
- package/src/crm-one-send-door.template.test.ts +65 -0
- package/src/crm.yaml +1563 -181
- package/src/decisions-wave.template.test.ts +186 -0
- package/src/define.ts +146 -17
- package/src/design-to-implementation.template.test.ts +94 -0
- package/src/domain-template-type.test.ts +75 -0
- package/src/ecosystem.yaml +27 -66
- package/src/enterprise-os.yaml +10 -134
- package/src/facecam-edit.audio-studio.test.ts +188 -0
- package/src/fal-generate-image.test.ts +200 -0
- package/src/fal-media-lab-pod-files.test.ts +180 -0
- package/src/finance.yaml +254 -1
- package/src/foundation.yaml +78 -38
- package/src/frame-host-modules.d.mts +6 -0
- package/src/frame-host-modules.mjs +58 -0
- package/src/generate.mjs +9 -3
- package/src/github-merge.test.ts +210 -0
- package/src/grants.yaml +46 -17
- package/src/hr.yaml +39 -6
- package/src/index.ts +36 -1
- package/src/intent.test.ts +161 -0
- package/src/internal-runbook.yaml +19 -1
- package/src/jev.test.ts +356 -0
- package/src/legal.yaml +33 -1
- package/src/life-os.yaml +51 -240
- package/src/lifecycle-coverage.test.ts +124 -0
- package/src/lifecycle-declarations.test.ts +252 -0
- package/src/lifecycle-presets.test.ts +468 -0
- package/src/lifecycle-presets.ts +494 -0
- package/src/lifecycle-stuck.test.ts +46 -0
- package/src/lifecycle-waits.parity.test.ts +319 -0
- package/src/marketing.yaml +108 -4
- package/src/meetings-knowledge.yaml +18 -0
- package/src/networking.yaml +23 -2
- package/src/operations.yaml +304 -4
- package/src/pipeline-views.template.test.ts +88 -0
- package/src/playbook-goal-placeholders.test.ts +57 -0
- package/src/postiz-contract.test.ts +134 -0
- package/src/presentation-declarations.test.ts +174 -0
- package/src/process-contract.validate.test.ts +352 -0
- package/src/project-management.yaml +39 -740
- package/src/publish-body.d.mts +29 -0
- package/src/publish-body.mjs +74 -0
- package/src/publish-body.test.ts +74 -0
- package/src/publish-official-lib.test.ts +176 -0
- package/src/replicate-rvm.test.ts +504 -0
- package/src/research-base.yaml +119 -20
- package/src/research-decision.yaml +60 -3
- package/src/reserved-profile-slugs.test.ts +81 -0
- package/src/retired-goal-kinds.test.ts +52 -0
- package/src/role-reference-and-step-domain.test.ts +192 -0
- package/src/seed-obligation.test.ts +1 -6
- package/src/send-message-maps.test.ts +227 -0
- package/src/shared-role-ssot.test.ts +40 -2
- package/src/ship-a-change.template.test.ts +177 -0
- package/src/skills.test.ts +170 -0
- package/src/social.yaml +85 -27
- package/src/space-packages.freshness.test.ts +97 -0
- package/src/space-packages.generated.ts +40 -0
- package/src/space-packages.test.ts +125 -0
- package/src/space-packages.ts +73 -0
- package/src/start.test.ts +188 -0
- package/src/stripe-capability.test.ts +192 -0
- package/src/task-intents.test.ts +293 -0
- package/src/template-documents.test.ts +158 -0
- package/src/templates.ts +20907 -21464
- package/src/types.ts +475 -61
- package/src/unipile-linkedin-find-profile.test.ts +183 -0
- package/src/unipile-publish-post.test.ts +162 -0
- package/src/validate-flow.drift.test.ts +2 -3
- package/src/validate-flow.ts +22 -2
- package/src/validate-onboarding.test.ts +59 -0
- package/src/validate.test.ts +71 -4
- package/src/validate.ts +1416 -7
- package/src/wire-core.ts +231 -0
- package/src/wire.test.ts +159 -0
- package/src/wire.ts +107 -0
- package/views/bookmark-views-pack.view.json +39 -0
- package/views/event-views-pack.view.json +45 -0
- package/views/task-views-pack.view.json +53 -0
- package/src/agent-fleet.yaml +0 -1645
- package/src/business-developer.template.test.ts +0 -351
- package/src/business-developer.yaml +0 -860
- package/src/content-studio.yaml +0 -361
- package/src/dev-dashboard.yaml +0 -990
- package/src/outreach-comms.yaml +0 -486
- package/src/the-arch.yaml +0 -201
|
@@ -9,164 +9,25 @@ meta:
|
|
|
9
9
|
slug: project-management
|
|
10
10
|
domain: build
|
|
11
11
|
name: Project Management OS
|
|
12
|
-
description: "
|
|
12
|
+
description: "Project management workspace. Sprints, tasks, milestones and people as connected entities, filed into your pod's projects — navigable from any direction in a relationship graph. Designed for solo founders and small teams who want delivery planning without per-seat overhead. What you are working toward is a goal on your pod, not a record here."
|
|
13
13
|
icon: kanban-square
|
|
14
14
|
color: "#3B82F6"
|
|
15
|
-
tags: [projects, tasks, sprints,
|
|
15
|
+
tags: [projects, tasks, sprints, agile, milestones, team]
|
|
16
16
|
isPublic: true
|
|
17
|
+
# What this space PRODUCES (homes): the purpose word, then its kinds/roles.
|
|
18
|
+
intent:
|
|
19
|
+
label: Planning
|
|
20
|
+
produces:
|
|
21
|
+
- profile: sprint
|
|
17
22
|
|
|
18
23
|
workspace:
|
|
19
24
|
name: Project Management OS
|
|
20
|
-
description: "
|
|
25
|
+
description: "Project management workspace. Sprints, tasks, milestones and people as connected entities, filed into your pod's projects — navigable from any direction in a relationship graph. Designed for solo founders and small teams who want delivery planning without per-seat overhead. What you are working toward is a goal on your pod, not a record here."
|
|
21
26
|
proposalId: pm-os-v1
|
|
22
27
|
subtype: project-management
|
|
23
28
|
visibility: pod_visible
|
|
24
29
|
|
|
25
30
|
profiles:
|
|
26
|
-
- slug: okr
|
|
27
|
-
displayName: OKR
|
|
28
|
-
icon: target
|
|
29
|
-
color: "#2E4EAD"
|
|
30
|
-
description: "A quarterly objective with measurable key results"
|
|
31
|
-
scope: WORKSPACE
|
|
32
|
-
properties:
|
|
33
|
-
- slug: okr-status
|
|
34
|
-
label: Status
|
|
35
|
-
valueType: string
|
|
36
|
-
inputType: select
|
|
37
|
-
enumValues: [Planning, Active, On Track, At Risk, Completed, Cancelled]
|
|
38
|
-
constraints:
|
|
39
|
-
defaultValue: Active
|
|
40
|
-
- slug: okr-quarter
|
|
41
|
-
label: Quarter
|
|
42
|
-
valueType: string
|
|
43
|
-
inputType: select
|
|
44
|
-
enumValues:
|
|
45
|
-
[
|
|
46
|
-
"Q1 2025",
|
|
47
|
-
"Q2 2025",
|
|
48
|
-
"Q3 2025",
|
|
49
|
-
"Q4 2025",
|
|
50
|
-
"Q1 2026",
|
|
51
|
-
"Q2 2026",
|
|
52
|
-
"Q3 2026",
|
|
53
|
-
"Q4 2026",
|
|
54
|
-
]
|
|
55
|
-
- slug: okr-owner
|
|
56
|
-
label: Owner
|
|
57
|
-
valueType: entity_id
|
|
58
|
-
targetProfileSlug: person
|
|
59
|
-
- slug: okr-type
|
|
60
|
-
label: Type
|
|
61
|
-
valueType: string
|
|
62
|
-
inputType: select
|
|
63
|
-
enumValues: [Company, Team, Personal]
|
|
64
|
-
- slug: kr1-label
|
|
65
|
-
label: Key Result 1
|
|
66
|
-
valueType: string
|
|
67
|
-
- slug: kr1-target
|
|
68
|
-
label: KR1 Target
|
|
69
|
-
valueType: number
|
|
70
|
-
- slug: kr1-current
|
|
71
|
-
label: KR1 Current
|
|
72
|
-
valueType: number
|
|
73
|
-
- slug: kr1-unit
|
|
74
|
-
label: KR1 Unit
|
|
75
|
-
valueType: string
|
|
76
|
-
- slug: kr2-label
|
|
77
|
-
label: Key Result 2
|
|
78
|
-
valueType: string
|
|
79
|
-
- slug: kr2-target
|
|
80
|
-
label: KR2 Target
|
|
81
|
-
valueType: number
|
|
82
|
-
- slug: kr2-current
|
|
83
|
-
label: KR2 Current
|
|
84
|
-
valueType: number
|
|
85
|
-
- slug: kr2-unit
|
|
86
|
-
label: KR2 Unit
|
|
87
|
-
valueType: string
|
|
88
|
-
- slug: kr3-label
|
|
89
|
-
label: Key Result 3
|
|
90
|
-
valueType: string
|
|
91
|
-
- slug: kr3-target
|
|
92
|
-
label: KR3 Target
|
|
93
|
-
valueType: number
|
|
94
|
-
- slug: kr3-current
|
|
95
|
-
label: KR3 Current
|
|
96
|
-
valueType: number
|
|
97
|
-
- slug: kr3-unit
|
|
98
|
-
label: KR3 Unit
|
|
99
|
-
valueType: string
|
|
100
|
-
- slug: okr-confidence
|
|
101
|
-
label: Confidence
|
|
102
|
-
valueType: string
|
|
103
|
-
inputType: select
|
|
104
|
-
enumValues: [High, Medium, Low]
|
|
105
|
-
- slug: okr-review-date
|
|
106
|
-
label: Review Date
|
|
107
|
-
valueType: date
|
|
108
|
-
- slug: okr-notes
|
|
109
|
-
label: Notes
|
|
110
|
-
valueType: string
|
|
111
|
-
|
|
112
|
-
- slug: project
|
|
113
|
-
displayName: Project
|
|
114
|
-
icon: folder
|
|
115
|
-
color: "#7C3AED"
|
|
116
|
-
description: "A bounded body of work with a clear scope, owner, and deadline"
|
|
117
|
-
scope: WORKSPACE
|
|
118
|
-
properties:
|
|
119
|
-
- slug: project-status
|
|
120
|
-
label: Status
|
|
121
|
-
valueType: string
|
|
122
|
-
inputType: select
|
|
123
|
-
enumValues:
|
|
124
|
-
[Backlog, Planning, In Progress, On Hold, Completed, Cancelled]
|
|
125
|
-
constraints:
|
|
126
|
-
defaultValue: In Progress
|
|
127
|
-
- slug: project-priority
|
|
128
|
-
label: Priority
|
|
129
|
-
valueType: string
|
|
130
|
-
inputType: select
|
|
131
|
-
enumValues: [Critical, High, Medium, Low]
|
|
132
|
-
- slug: project-linked-okr
|
|
133
|
-
label: Linked OKR
|
|
134
|
-
valueType: entity_id
|
|
135
|
-
targetProfileSlug: okr
|
|
136
|
-
- slug: project-owner
|
|
137
|
-
label: Owner
|
|
138
|
-
valueType: entity_id
|
|
139
|
-
targetProfileSlug: person
|
|
140
|
-
- slug: project-start
|
|
141
|
-
label: Start Date
|
|
142
|
-
valueType: date
|
|
143
|
-
- slug: project-deadline
|
|
144
|
-
label: Deadline
|
|
145
|
-
valueType: date
|
|
146
|
-
- slug: project-milestone
|
|
147
|
-
label: Milestone
|
|
148
|
-
valueType: string
|
|
149
|
-
- slug: project-health
|
|
150
|
-
label: Health
|
|
151
|
-
valueType: string
|
|
152
|
-
inputType: select
|
|
153
|
-
enumValues: [Green, Yellow, Red]
|
|
154
|
-
- slug: project-effort
|
|
155
|
-
label: Effort (days)
|
|
156
|
-
valueType: number
|
|
157
|
-
- slug: project-tags
|
|
158
|
-
label: Tags
|
|
159
|
-
valueType: array
|
|
160
|
-
inputType: select
|
|
161
|
-
enumValues: [Product, Marketing, Ops, Engineering, Design, Research]
|
|
162
|
-
- slug: project-outcome
|
|
163
|
-
label: Expected Outcome
|
|
164
|
-
valueType: string
|
|
165
|
-
- slug: project-description
|
|
166
|
-
label: Description
|
|
167
|
-
valueType: string
|
|
168
|
-
inputType: textarea
|
|
169
|
-
|
|
170
31
|
- slug: task
|
|
171
32
|
displayName: Task
|
|
172
33
|
icon: check-square
|
|
@@ -192,10 +53,6 @@ profiles:
|
|
|
192
53
|
label: Assignee
|
|
193
54
|
valueType: entity_id
|
|
194
55
|
targetProfileSlug: person
|
|
195
|
-
- slug: task-project
|
|
196
|
-
label: Project
|
|
197
|
-
valueType: entity_id
|
|
198
|
-
targetProfileSlug: project
|
|
199
56
|
- slug: task-sprint
|
|
200
57
|
label: Sprint
|
|
201
58
|
valueType: entity_id
|
|
@@ -226,6 +83,14 @@ profiles:
|
|
|
226
83
|
color: "#D97706"
|
|
227
84
|
description: "A fixed execution cycle with a clear scope, start/end, and retrospective"
|
|
228
85
|
scope: WORKSPACE
|
|
86
|
+
# The ONE lifecycle (work model L1): every option's category.
|
|
87
|
+
lifecycle:
|
|
88
|
+
property: sprint-status
|
|
89
|
+
options:
|
|
90
|
+
- { key: Planning, category: open }
|
|
91
|
+
- { key: Active, category: active }
|
|
92
|
+
- { key: Review, category: active }
|
|
93
|
+
- { key: Completed, category: done }
|
|
229
94
|
properties:
|
|
230
95
|
- slug: sprint-status
|
|
231
96
|
label: Status
|
|
@@ -258,10 +123,6 @@ profiles:
|
|
|
258
123
|
- slug: sprint-completed-count
|
|
259
124
|
label: Completed Count
|
|
260
125
|
valueType: number
|
|
261
|
-
- slug: sprint-linked-okr
|
|
262
|
-
label: Linked OKR
|
|
263
|
-
valueType: entity_id
|
|
264
|
-
targetProfileSlug: okr
|
|
265
126
|
|
|
266
127
|
- slug: person
|
|
267
128
|
displayName: Person
|
|
@@ -296,9 +157,6 @@ profiles:
|
|
|
296
157
|
- slug: person-focus
|
|
297
158
|
label: Current Focus
|
|
298
159
|
valueType: string
|
|
299
|
-
- slug: person-okr-owner
|
|
300
|
-
label: OKR Owner
|
|
301
|
-
valueType: boolean
|
|
302
160
|
- slug: person-availability
|
|
303
161
|
label: Availability (hrs/week)
|
|
304
162
|
valueType: number
|
|
@@ -330,26 +188,6 @@ profiles:
|
|
|
330
188
|
inputType: textarea
|
|
331
189
|
|
|
332
190
|
views:
|
|
333
|
-
- name: OKR Dashboard
|
|
334
|
-
slug: okr-dashboard
|
|
335
|
-
type: kanban
|
|
336
|
-
scopeProfileSlug: okr
|
|
337
|
-
defaultView: true
|
|
338
|
-
groupBy: okr-status
|
|
339
|
-
description: "All OKRs by status with progress indicators"
|
|
340
|
-
config:
|
|
341
|
-
groupByField: okr-status
|
|
342
|
-
|
|
343
|
-
- name: OKR → Projects → Tasks
|
|
344
|
-
slug: okr-hierarchy
|
|
345
|
-
type: graph
|
|
346
|
-
scopeProfileSlugs: [okr, project, task]
|
|
347
|
-
description: "Three-level drill-down: OKR expands to linked projects, projects expand to tasks"
|
|
348
|
-
config:
|
|
349
|
-
hierarchyEdges:
|
|
350
|
-
- { parent: okr, child: project, via: project-linked-okr }
|
|
351
|
-
- { parent: project, child: task, via: task-project }
|
|
352
|
-
|
|
353
191
|
- name: Sprint Board
|
|
354
192
|
slug: sprint-board
|
|
355
193
|
type: kanban
|
|
@@ -382,25 +220,6 @@ views:
|
|
|
382
220
|
]
|
|
383
221
|
defaultSort: { field: sprint-number, direction: desc }
|
|
384
222
|
|
|
385
|
-
- name: Project Timeline
|
|
386
|
-
slug: project-timeline
|
|
387
|
-
type: timeline
|
|
388
|
-
scopeProfileSlug: project
|
|
389
|
-
description: "Gantt-style timeline of all active projects"
|
|
390
|
-
config:
|
|
391
|
-
startField: project-start
|
|
392
|
-
endField: project-deadline
|
|
393
|
-
colorBy: project-status
|
|
394
|
-
|
|
395
|
-
- name: Project Board
|
|
396
|
-
slug: project-board
|
|
397
|
-
type: kanban
|
|
398
|
-
scopeProfileSlug: project
|
|
399
|
-
groupBy: project-status
|
|
400
|
-
description: "Projects by status lane"
|
|
401
|
-
config:
|
|
402
|
-
groupByField: project-status
|
|
403
|
-
|
|
404
223
|
- name: Task Inbox
|
|
405
224
|
slug: task-inbox
|
|
406
225
|
type: table
|
|
@@ -438,8 +257,8 @@ views:
|
|
|
438
257
|
- name: Relationship Graph
|
|
439
258
|
slug: relationship-graph
|
|
440
259
|
type: graph
|
|
441
|
-
scopeProfileSlugs: [
|
|
442
|
-
description: "Full entity graph:
|
|
260
|
+
scopeProfileSlugs: [task, sprint, person]
|
|
261
|
+
description: "Full entity graph: Task → Sprint → Person. The Synap PM OS structural demo."
|
|
443
262
|
config:
|
|
444
263
|
layout: force
|
|
445
264
|
showRelations: true
|
|
@@ -451,7 +270,7 @@ views:
|
|
|
451
270
|
description: "Team members with linked task count, sprint assignment, and availability"
|
|
452
271
|
config:
|
|
453
272
|
visibleColumns:
|
|
454
|
-
[person-role, person-focus, person-availability
|
|
273
|
+
[person-role, person-focus, person-availability]
|
|
455
274
|
|
|
456
275
|
- name: Retrospective Board
|
|
457
276
|
slug: retrospective-board
|
|
@@ -462,23 +281,6 @@ views:
|
|
|
462
281
|
config:
|
|
463
282
|
groupByField: sprint-status
|
|
464
283
|
|
|
465
|
-
- name: OKR Progress Table
|
|
466
|
-
slug: okr-progress
|
|
467
|
-
type: table
|
|
468
|
-
scopeProfileSlug: okr
|
|
469
|
-
description: "All OKRs with key result progress bars for quarterly review"
|
|
470
|
-
config:
|
|
471
|
-
visibleColumns:
|
|
472
|
-
[
|
|
473
|
-
okr-status,
|
|
474
|
-
okr-quarter,
|
|
475
|
-
okr-type,
|
|
476
|
-
okr-owner,
|
|
477
|
-
okr-confidence,
|
|
478
|
-
okr-review-date,
|
|
479
|
-
]
|
|
480
|
-
defaultSort: { field: okr-quarter, direction: desc }
|
|
481
|
-
|
|
482
284
|
- name: Backlog
|
|
483
285
|
slug: backlog
|
|
484
286
|
type: table
|
|
@@ -495,22 +297,11 @@ views:
|
|
|
495
297
|
- name: Calendar
|
|
496
298
|
slug: calendar
|
|
497
299
|
type: calendar
|
|
498
|
-
scopeProfileSlugs: [task, sprint
|
|
499
|
-
description: "Unified calendar of task due dates
|
|
300
|
+
scopeProfileSlugs: [task, sprint]
|
|
301
|
+
description: "Unified calendar of task due dates and sprint cycles"
|
|
500
302
|
config:
|
|
501
303
|
dateField: properties.task-due-date
|
|
502
304
|
|
|
503
|
-
- name: OKRs by Quarter
|
|
504
|
-
slug: okr-by-quarter
|
|
505
|
-
type: table
|
|
506
|
-
scopeProfileSlug: okr
|
|
507
|
-
groupBy: okr-quarter
|
|
508
|
-
description: "Historical OKRs organized by quarter for retrospective planning"
|
|
509
|
-
config:
|
|
510
|
-
groupByField: okr-quarter
|
|
511
|
-
visibleColumns:
|
|
512
|
-
[okr-status, okr-quarter, okr-type, okr-owner, okr-confidence]
|
|
513
|
-
|
|
514
305
|
# Pack views (inlined from project-management-pack).
|
|
515
306
|
- name: Task Board
|
|
516
307
|
slug: task-board
|
|
@@ -520,229 +311,7 @@ views:
|
|
|
520
311
|
config:
|
|
521
312
|
groupByField: status
|
|
522
313
|
|
|
523
|
-
- name: Projects
|
|
524
|
-
slug: projects
|
|
525
|
-
type: table
|
|
526
|
-
scopeProfileSlug: project
|
|
527
|
-
description: "Pack projects table"
|
|
528
|
-
config: {}
|
|
529
|
-
|
|
530
314
|
# Bento dashboard views (per-profile).
|
|
531
|
-
- name: OKR Dashboard
|
|
532
|
-
slug: okr-dashboard-bento
|
|
533
|
-
type: bento
|
|
534
|
-
scopeProfileSlug: okr
|
|
535
|
-
config:
|
|
536
|
-
layout: bento
|
|
537
|
-
blocks:
|
|
538
|
-
- {
|
|
539
|
-
id: okr-header,
|
|
540
|
-
kind: widget,
|
|
541
|
-
widgetType: section-header,
|
|
542
|
-
pos: { x: 0, y: 0, w: 12, h: 2 },
|
|
543
|
-
config:
|
|
544
|
-
{ title: OKRs, icon: Target, color: "#14B8A6", profileSlug: okr },
|
|
545
|
-
}
|
|
546
|
-
- {
|
|
547
|
-
id: okr-count-active,
|
|
548
|
-
kind: widget,
|
|
549
|
-
widgetType: stat-card,
|
|
550
|
-
pos: { x: 0, y: 2, w: 3, h: 3 },
|
|
551
|
-
config:
|
|
552
|
-
{
|
|
553
|
-
label: Active OKRs,
|
|
554
|
-
aggregation: count,
|
|
555
|
-
profileSlug: okr,
|
|
556
|
-
color: "#14B8A6",
|
|
557
|
-
icon: Target,
|
|
558
|
-
},
|
|
559
|
-
}
|
|
560
|
-
- {
|
|
561
|
-
id: okr-count-on-track,
|
|
562
|
-
kind: widget,
|
|
563
|
-
widgetType: entity-count,
|
|
564
|
-
pos: { x: 3, y: 2, w: 3, h: 3 },
|
|
565
|
-
config:
|
|
566
|
-
{
|
|
567
|
-
profileSlug: okr,
|
|
568
|
-
label: On Track,
|
|
569
|
-
icon: TrendingUp,
|
|
570
|
-
filter: { status: on-track },
|
|
571
|
-
color: "#10B981",
|
|
572
|
-
},
|
|
573
|
-
}
|
|
574
|
-
- {
|
|
575
|
-
id: okr-count-at-risk,
|
|
576
|
-
kind: widget,
|
|
577
|
-
widgetType: entity-count,
|
|
578
|
-
pos: { x: 6, y: 2, w: 3, h: 3 },
|
|
579
|
-
config:
|
|
580
|
-
{
|
|
581
|
-
profileSlug: okr,
|
|
582
|
-
label: At Risk,
|
|
583
|
-
icon: AlertTriangle,
|
|
584
|
-
filter: { status: at-risk },
|
|
585
|
-
color: "#F59E0B",
|
|
586
|
-
},
|
|
587
|
-
}
|
|
588
|
-
- {
|
|
589
|
-
id: okr-count-completed,
|
|
590
|
-
kind: widget,
|
|
591
|
-
widgetType: entity-count,
|
|
592
|
-
pos: { x: 9, y: 2, w: 3, h: 3 },
|
|
593
|
-
config:
|
|
594
|
-
{
|
|
595
|
-
profileSlug: okr,
|
|
596
|
-
label: Completed,
|
|
597
|
-
icon: CheckCircle,
|
|
598
|
-
filter: { status: completed },
|
|
599
|
-
color: "#6366F1",
|
|
600
|
-
},
|
|
601
|
-
}
|
|
602
|
-
- {
|
|
603
|
-
id: okr-spotlight,
|
|
604
|
-
kind: widget,
|
|
605
|
-
widgetType: entity-spotlight,
|
|
606
|
-
pos: { x: 0, y: 5, w: 5, h: 4 },
|
|
607
|
-
config:
|
|
608
|
-
{
|
|
609
|
-
profileSlug: okr,
|
|
610
|
-
seed: daily,
|
|
611
|
-
layout: detail,
|
|
612
|
-
subtitleField: owner,
|
|
613
|
-
color: "#14B8A6",
|
|
614
|
-
},
|
|
615
|
-
}
|
|
616
|
-
- {
|
|
617
|
-
id: okr-projects,
|
|
618
|
-
kind: widget,
|
|
619
|
-
widgetType: entity-list,
|
|
620
|
-
pos: { x: 5, y: 5, w: 7, h: 4 },
|
|
621
|
-
config:
|
|
622
|
-
{
|
|
623
|
-
profileSlug: project,
|
|
624
|
-
title: Active Projects,
|
|
625
|
-
limit: 8,
|
|
626
|
-
variant: compact,
|
|
627
|
-
},
|
|
628
|
-
}
|
|
629
|
-
- {
|
|
630
|
-
id: okr-table,
|
|
631
|
-
kind: view,
|
|
632
|
-
viewName: OKR Progress Table,
|
|
633
|
-
pos: { x: 0, y: 9, w: 12, h: 8 },
|
|
634
|
-
}
|
|
635
|
-
|
|
636
|
-
- name: Project Dashboard
|
|
637
|
-
slug: project-dashboard
|
|
638
|
-
type: bento
|
|
639
|
-
scopeProfileSlug: project
|
|
640
|
-
config:
|
|
641
|
-
layout: bento
|
|
642
|
-
blocks:
|
|
643
|
-
- {
|
|
644
|
-
id: proj-header,
|
|
645
|
-
kind: widget,
|
|
646
|
-
widgetType: section-header,
|
|
647
|
-
pos: { x: 0, y: 0, w: 12, h: 2 },
|
|
648
|
-
config:
|
|
649
|
-
{
|
|
650
|
-
title: Projects,
|
|
651
|
-
icon: FolderOpen,
|
|
652
|
-
color: "#F97316",
|
|
653
|
-
profileSlug: project,
|
|
654
|
-
},
|
|
655
|
-
}
|
|
656
|
-
- {
|
|
657
|
-
id: proj-active,
|
|
658
|
-
kind: widget,
|
|
659
|
-
widgetType: entity-count,
|
|
660
|
-
pos: { x: 0, y: 2, w: 3, h: 3 },
|
|
661
|
-
config:
|
|
662
|
-
{
|
|
663
|
-
profileSlug: project,
|
|
664
|
-
label: Active,
|
|
665
|
-
icon: Play,
|
|
666
|
-
filter: { status: active },
|
|
667
|
-
color: "#10B981",
|
|
668
|
-
},
|
|
669
|
-
}
|
|
670
|
-
- {
|
|
671
|
-
id: proj-planning,
|
|
672
|
-
kind: widget,
|
|
673
|
-
widgetType: entity-count,
|
|
674
|
-
pos: { x: 3, y: 2, w: 3, h: 3 },
|
|
675
|
-
config:
|
|
676
|
-
{
|
|
677
|
-
profileSlug: project,
|
|
678
|
-
label: Planning,
|
|
679
|
-
icon: Map,
|
|
680
|
-
filter: { status: planning },
|
|
681
|
-
color: "#3B82F6",
|
|
682
|
-
},
|
|
683
|
-
}
|
|
684
|
-
- {
|
|
685
|
-
id: proj-hold,
|
|
686
|
-
kind: widget,
|
|
687
|
-
widgetType: entity-count,
|
|
688
|
-
pos: { x: 6, y: 2, w: 3, h: 3 },
|
|
689
|
-
config:
|
|
690
|
-
{
|
|
691
|
-
profileSlug: project,
|
|
692
|
-
label: On Hold,
|
|
693
|
-
icon: PauseCircle,
|
|
694
|
-
filter: { status: on-hold },
|
|
695
|
-
color: "#F59E0B",
|
|
696
|
-
},
|
|
697
|
-
}
|
|
698
|
-
- {
|
|
699
|
-
id: proj-done,
|
|
700
|
-
kind: widget,
|
|
701
|
-
widgetType: entity-count,
|
|
702
|
-
pos: { x: 9, y: 2, w: 3, h: 3 },
|
|
703
|
-
config:
|
|
704
|
-
{
|
|
705
|
-
profileSlug: project,
|
|
706
|
-
label: Completed,
|
|
707
|
-
icon: CheckCircle,
|
|
708
|
-
filter: { status: completed },
|
|
709
|
-
color: "#8B5CF6",
|
|
710
|
-
},
|
|
711
|
-
}
|
|
712
|
-
- {
|
|
713
|
-
id: proj-spotlight,
|
|
714
|
-
kind: widget,
|
|
715
|
-
widgetType: entity-spotlight,
|
|
716
|
-
pos: { x: 0, y: 5, w: 5, h: 4 },
|
|
717
|
-
config:
|
|
718
|
-
{
|
|
719
|
-
profileSlug: project,
|
|
720
|
-
seed: daily,
|
|
721
|
-
layout: detail,
|
|
722
|
-
subtitleField: area,
|
|
723
|
-
color: "#F97316",
|
|
724
|
-
},
|
|
725
|
-
}
|
|
726
|
-
- {
|
|
727
|
-
id: proj-tasks,
|
|
728
|
-
kind: widget,
|
|
729
|
-
widgetType: entity-list,
|
|
730
|
-
pos: { x: 5, y: 5, w: 7, h: 4 },
|
|
731
|
-
config:
|
|
732
|
-
{
|
|
733
|
-
profileSlug: task,
|
|
734
|
-
title: Open Tasks,
|
|
735
|
-
limit: 8,
|
|
736
|
-
variant: compact,
|
|
737
|
-
},
|
|
738
|
-
}
|
|
739
|
-
- {
|
|
740
|
-
id: proj-board,
|
|
741
|
-
kind: view,
|
|
742
|
-
viewName: Project Board,
|
|
743
|
-
pos: { x: 0, y: 9, w: 12, h: 8 },
|
|
744
|
-
}
|
|
745
|
-
|
|
746
315
|
- name: Task Dashboard
|
|
747
316
|
slug: task-dashboard
|
|
748
317
|
type: bento
|
|
@@ -927,179 +496,7 @@ views:
|
|
|
927
496
|
pos: { x: 0, y: 9, w: 12, h: 8 },
|
|
928
497
|
}
|
|
929
498
|
|
|
930
|
-
# Schema-level links between entity types (inlined from project-management-pack).
|
|
931
|
-
entityLinks:
|
|
932
|
-
- {
|
|
933
|
-
sourceProfileSlug: task,
|
|
934
|
-
targetProfileSlug: project,
|
|
935
|
-
type: belongs_to,
|
|
936
|
-
label: "Belongs to",
|
|
937
|
-
}
|
|
938
|
-
- {
|
|
939
|
-
sourceProfileSlug: milestone,
|
|
940
|
-
targetProfileSlug: project,
|
|
941
|
-
type: belongs_to,
|
|
942
|
-
label: "Part of",
|
|
943
|
-
}
|
|
944
|
-
|
|
945
499
|
displayTemplates:
|
|
946
|
-
- name: OKR Card
|
|
947
|
-
description: ""
|
|
948
|
-
entityType: okr
|
|
949
|
-
targetType: entity
|
|
950
|
-
isDefault: true
|
|
951
|
-
config:
|
|
952
|
-
layout:
|
|
953
|
-
structure:
|
|
954
|
-
header:
|
|
955
|
-
{
|
|
956
|
-
enabled: true,
|
|
957
|
-
slots: [okr-status, okr-quarter, okr-type],
|
|
958
|
-
layout: horizontal,
|
|
959
|
-
}
|
|
960
|
-
sidebar:
|
|
961
|
-
{
|
|
962
|
-
enabled: true,
|
|
963
|
-
slots: [okr-owner, okr-confidence, okr-review-date],
|
|
964
|
-
position: right,
|
|
965
|
-
width: 260px,
|
|
966
|
-
layout: vertical,
|
|
967
|
-
}
|
|
968
|
-
content:
|
|
969
|
-
{
|
|
970
|
-
enabled: true,
|
|
971
|
-
slots:
|
|
972
|
-
[
|
|
973
|
-
kr1-label,
|
|
974
|
-
kr1-current,
|
|
975
|
-
kr2-label,
|
|
976
|
-
kr2-current,
|
|
977
|
-
kr3-label,
|
|
978
|
-
kr3-current,
|
|
979
|
-
],
|
|
980
|
-
layout: vertical,
|
|
981
|
-
}
|
|
982
|
-
fieldMapping:
|
|
983
|
-
okr-status: { slot: okr-status, renderer: { type: badge }, order: 1 }
|
|
984
|
-
okr-quarter:
|
|
985
|
-
{ slot: okr-quarter, renderer: { type: badge }, order: 2 }
|
|
986
|
-
okr-type: { slot: okr-type, renderer: { type: badge }, order: 3 }
|
|
987
|
-
okr-owner: { slot: okr-owner, renderer: { type: avatar }, order: 4 }
|
|
988
|
-
okr-confidence:
|
|
989
|
-
{ slot: okr-confidence, renderer: { type: badge }, order: 5 }
|
|
990
|
-
okr-review-date:
|
|
991
|
-
{
|
|
992
|
-
slot: okr-review-date,
|
|
993
|
-
renderer: { type: date, format: relative },
|
|
994
|
-
order: 6,
|
|
995
|
-
}
|
|
996
|
-
kr1-label:
|
|
997
|
-
{
|
|
998
|
-
slot: kr1-label,
|
|
999
|
-
renderer: { type: text },
|
|
1000
|
-
order: 7,
|
|
1001
|
-
label: KR1,
|
|
1002
|
-
showLabel: true,
|
|
1003
|
-
}
|
|
1004
|
-
kr1-current:
|
|
1005
|
-
{ slot: kr1-current, renderer: { type: progress }, order: 8 }
|
|
1006
|
-
kr2-label:
|
|
1007
|
-
{
|
|
1008
|
-
slot: kr2-label,
|
|
1009
|
-
renderer: { type: text },
|
|
1010
|
-
order: 9,
|
|
1011
|
-
label: KR2,
|
|
1012
|
-
showLabel: true,
|
|
1013
|
-
}
|
|
1014
|
-
kr2-current:
|
|
1015
|
-
{ slot: kr2-current, renderer: { type: progress }, order: 10 }
|
|
1016
|
-
kr3-label:
|
|
1017
|
-
{
|
|
1018
|
-
slot: kr3-label,
|
|
1019
|
-
renderer: { type: text },
|
|
1020
|
-
order: 11,
|
|
1021
|
-
label: KR3,
|
|
1022
|
-
showLabel: true,
|
|
1023
|
-
}
|
|
1024
|
-
kr3-current:
|
|
1025
|
-
{ slot: kr3-current, renderer: { type: progress }, order: 12 }
|
|
1026
|
-
colors:
|
|
1027
|
-
accent: "#2E4EAD"
|
|
1028
|
-
|
|
1029
|
-
- name: Project Card
|
|
1030
|
-
description: ""
|
|
1031
|
-
entityType: project
|
|
1032
|
-
targetType: entity
|
|
1033
|
-
isDefault: true
|
|
1034
|
-
config:
|
|
1035
|
-
layout:
|
|
1036
|
-
structure:
|
|
1037
|
-
header:
|
|
1038
|
-
{
|
|
1039
|
-
enabled: true,
|
|
1040
|
-
slots: [project-status, project-priority, project-health],
|
|
1041
|
-
layout: horizontal,
|
|
1042
|
-
}
|
|
1043
|
-
sidebar:
|
|
1044
|
-
{
|
|
1045
|
-
enabled: true,
|
|
1046
|
-
slots:
|
|
1047
|
-
[
|
|
1048
|
-
project-linked-okr,
|
|
1049
|
-
project-owner,
|
|
1050
|
-
project-deadline,
|
|
1051
|
-
project-effort,
|
|
1052
|
-
],
|
|
1053
|
-
position: right,
|
|
1054
|
-
width: 260px,
|
|
1055
|
-
layout: vertical,
|
|
1056
|
-
}
|
|
1057
|
-
content:
|
|
1058
|
-
{
|
|
1059
|
-
enabled: true,
|
|
1060
|
-
slots: [project-milestone, project-outcome, project-tags],
|
|
1061
|
-
layout: vertical,
|
|
1062
|
-
}
|
|
1063
|
-
fieldMapping:
|
|
1064
|
-
project-status:
|
|
1065
|
-
{ slot: project-status, renderer: { type: badge }, order: 1 }
|
|
1066
|
-
project-priority:
|
|
1067
|
-
{ slot: project-priority, renderer: { type: badge }, order: 2 }
|
|
1068
|
-
project-health:
|
|
1069
|
-
{ slot: project-health, renderer: { type: badge }, order: 3 }
|
|
1070
|
-
project-linked-okr:
|
|
1071
|
-
{ slot: project-linked-okr, renderer: { type: link }, order: 4 }
|
|
1072
|
-
project-owner:
|
|
1073
|
-
{ slot: project-owner, renderer: { type: avatar }, order: 5 }
|
|
1074
|
-
project-deadline:
|
|
1075
|
-
{
|
|
1076
|
-
slot: project-deadline,
|
|
1077
|
-
renderer: { type: date, format: relative },
|
|
1078
|
-
order: 6,
|
|
1079
|
-
}
|
|
1080
|
-
project-effort:
|
|
1081
|
-
{ slot: project-effort, renderer: { type: number }, order: 7 }
|
|
1082
|
-
project-milestone:
|
|
1083
|
-
{
|
|
1084
|
-
slot: project-milestone,
|
|
1085
|
-
renderer: { type: text },
|
|
1086
|
-
order: 8,
|
|
1087
|
-
label: Milestone,
|
|
1088
|
-
showLabel: true,
|
|
1089
|
-
}
|
|
1090
|
-
project-outcome:
|
|
1091
|
-
{
|
|
1092
|
-
slot: project-outcome,
|
|
1093
|
-
renderer: { type: text },
|
|
1094
|
-
order: 9,
|
|
1095
|
-
label: Expected Outcome,
|
|
1096
|
-
showLabel: true,
|
|
1097
|
-
}
|
|
1098
|
-
project-tags:
|
|
1099
|
-
{ slot: project-tags, renderer: { type: badge }, order: 10 }
|
|
1100
|
-
colors:
|
|
1101
|
-
accent: "#7C3AED"
|
|
1102
|
-
|
|
1103
500
|
- name: Task Card
|
|
1104
501
|
description: ""
|
|
1105
502
|
entityType: task
|
|
@@ -1119,7 +516,6 @@ displayTemplates:
|
|
|
1119
516
|
enabled: true,
|
|
1120
517
|
slots:
|
|
1121
518
|
[
|
|
1122
|
-
task-project,
|
|
1123
519
|
task-sprint,
|
|
1124
520
|
task-assignee,
|
|
1125
521
|
task-due-date,
|
|
@@ -1141,8 +537,6 @@ displayTemplates:
|
|
|
1141
537
|
task-priority:
|
|
1142
538
|
{ slot: task-priority, renderer: { type: badge }, order: 2 }
|
|
1143
539
|
task-type: { slot: task-type, renderer: { type: badge }, order: 3 }
|
|
1144
|
-
task-project:
|
|
1145
|
-
{ slot: task-project, renderer: { type: link }, order: 4 }
|
|
1146
540
|
task-sprint: { slot: task-sprint, renderer: { type: link }, order: 5 }
|
|
1147
541
|
task-assignee:
|
|
1148
542
|
{ slot: task-assignee, renderer: { type: avatar }, order: 6 }
|
|
@@ -1184,7 +578,7 @@ displayTemplates:
|
|
|
1184
578
|
{
|
|
1185
579
|
enabled: true,
|
|
1186
580
|
slots:
|
|
1187
|
-
[sprint-
|
|
581
|
+
[sprint-start, sprint-end, sprint-capacity],
|
|
1188
582
|
position: right,
|
|
1189
583
|
width: 260px,
|
|
1190
584
|
layout: vertical,
|
|
@@ -1200,8 +594,6 @@ displayTemplates:
|
|
|
1200
594
|
{ slot: sprint-status, renderer: { type: badge }, order: 1 }
|
|
1201
595
|
sprint-number:
|
|
1202
596
|
{ slot: sprint-number, renderer: { type: number }, order: 2 }
|
|
1203
|
-
sprint-linked-okr:
|
|
1204
|
-
{ slot: sprint-linked-okr, renderer: { type: link }, order: 3 }
|
|
1205
597
|
sprint-start:
|
|
1206
598
|
{ slot: sprint-start, renderer: { type: date }, order: 4 }
|
|
1207
599
|
sprint-end:
|
|
@@ -1246,12 +638,10 @@ app:
|
|
|
1246
638
|
|
|
1247
639
|
# Browser sidebar + layout config.
|
|
1248
640
|
layout:
|
|
1249
|
-
defaultView:
|
|
641
|
+
defaultView: Sprint Board
|
|
1250
642
|
defaultApp: null
|
|
1251
643
|
pinnedApps: [dashboard, data]
|
|
1252
644
|
sidebarItems:
|
|
1253
|
-
- { kind: view, viewName: OKR Dashboard, label: OKRs, icon: target }
|
|
1254
|
-
- { kind: view, viewName: Project Board, label: Projects, icon: folder }
|
|
1255
645
|
- { kind: view, viewName: Sprint Board, label: Sprint Board, icon: zap }
|
|
1256
646
|
- { kind: view, viewName: All Sprints, label: Sprints, icon: list }
|
|
1257
647
|
- { kind: view, viewName: Task Inbox, label: Tasks, icon: check-square }
|
|
@@ -1277,21 +667,9 @@ bento:
|
|
|
1277
667
|
config:
|
|
1278
668
|
{
|
|
1279
669
|
title: Project Management OS,
|
|
1280
|
-
subtitle: "
|
|
670
|
+
subtitle: "Projects → Sprints → Tasks — all connected.",
|
|
1281
671
|
},
|
|
1282
672
|
}
|
|
1283
|
-
- {
|
|
1284
|
-
kind: widget,
|
|
1285
|
-
widgetType: entity-count,
|
|
1286
|
-
pos: { x: 0, y: 2, w: 2, h: 3 },
|
|
1287
|
-
config: { profileSlug: okr, label: Active OKRs, icon: target },
|
|
1288
|
-
}
|
|
1289
|
-
- {
|
|
1290
|
-
kind: widget,
|
|
1291
|
-
widgetType: entity-count,
|
|
1292
|
-
pos: { x: 2, y: 2, w: 2, h: 3 },
|
|
1293
|
-
config: { profileSlug: project, label: Active Projects, icon: folder },
|
|
1294
|
-
}
|
|
1295
673
|
- {
|
|
1296
674
|
kind: widget,
|
|
1297
675
|
widgetType: entity-count,
|
|
@@ -1316,82 +694,11 @@ bento:
|
|
|
1316
694
|
pos: { x: 10, y: 2, w: 2, h: 3 },
|
|
1317
695
|
config: { profileSlug: task, label: Due This Week, icon: calendar },
|
|
1318
696
|
}
|
|
1319
|
-
- {
|
|
1320
|
-
kind: view,
|
|
1321
|
-
viewName: OKR Progress Table,
|
|
1322
|
-
pos: { x: 0, y: 5, w: 7, h: 8 },
|
|
1323
|
-
}
|
|
1324
697
|
- { kind: view, viewName: Sprint Board, pos: { x: 7, y: 5, w: 5, h: 8 } }
|
|
1325
|
-
- {
|
|
1326
|
-
kind: view,
|
|
1327
|
-
viewName: Project Timeline,
|
|
1328
|
-
pos: { x: 0, y: 13, w: 8, h: 6 },
|
|
1329
|
-
}
|
|
1330
698
|
- { kind: view, viewName: Weekly Focus, pos: { x: 8, y: 13, w: 4, h: 6 } }
|
|
1331
699
|
|
|
1332
700
|
# Per-profile entity detail bento layouts.
|
|
1333
701
|
profileEntityBentoTemplates:
|
|
1334
|
-
okr:
|
|
1335
|
-
blocks:
|
|
1336
|
-
- {
|
|
1337
|
-
id: okr-eb-header,
|
|
1338
|
-
kind: widget,
|
|
1339
|
-
widgetType: entity-header,
|
|
1340
|
-
pos: { x: 0, y: 0, w: 12, h: 2 },
|
|
1341
|
-
}
|
|
1342
|
-
- {
|
|
1343
|
-
id: okr-eb-props,
|
|
1344
|
-
kind: widget,
|
|
1345
|
-
widgetType: entity-properties,
|
|
1346
|
-
pos: { x: 0, y: 2, w: 4, h: 8 },
|
|
1347
|
-
}
|
|
1348
|
-
- {
|
|
1349
|
-
id: okr-eb-projects,
|
|
1350
|
-
kind: widget,
|
|
1351
|
-
widgetType: entity-list,
|
|
1352
|
-
pos: { x: 4, y: 2, w: 8, h: 4 },
|
|
1353
|
-
config:
|
|
1354
|
-
{
|
|
1355
|
-
profileSlug: project,
|
|
1356
|
-
title: Projects,
|
|
1357
|
-
limit: 6,
|
|
1358
|
-
variant: compact,
|
|
1359
|
-
},
|
|
1360
|
-
}
|
|
1361
|
-
- {
|
|
1362
|
-
id: okr-eb-content,
|
|
1363
|
-
kind: widget,
|
|
1364
|
-
widgetType: entity-content,
|
|
1365
|
-
pos: { x: 4, y: 6, w: 8, h: 4 },
|
|
1366
|
-
}
|
|
1367
|
-
project:
|
|
1368
|
-
blocks:
|
|
1369
|
-
- {
|
|
1370
|
-
id: proj-eb-header,
|
|
1371
|
-
kind: widget,
|
|
1372
|
-
widgetType: entity-header,
|
|
1373
|
-
pos: { x: 0, y: 0, w: 12, h: 2 },
|
|
1374
|
-
}
|
|
1375
|
-
- {
|
|
1376
|
-
id: proj-eb-props,
|
|
1377
|
-
kind: widget,
|
|
1378
|
-
widgetType: entity-properties,
|
|
1379
|
-
pos: { x: 0, y: 2, w: 4, h: 8 },
|
|
1380
|
-
}
|
|
1381
|
-
- {
|
|
1382
|
-
id: proj-eb-tasks,
|
|
1383
|
-
kind: widget,
|
|
1384
|
-
widgetType: entity-list,
|
|
1385
|
-
pos: { x: 4, y: 2, w: 8, h: 4 },
|
|
1386
|
-
config:
|
|
1387
|
-
{ profileSlug: task, title: Tasks, limit: 8, variant: compact },
|
|
1388
|
-
}
|
|
1389
|
-
- {
|
|
1390
|
-
id: proj-eb-content,
|
|
1391
|
-
kind: widget,
|
|
1392
|
-
widgetType: entity-content,
|
|
1393
|
-
pos: { x: 4, y: 6, w: 8, h: 4 },
|
|
1394
|
-
}
|
|
1395
702
|
task:
|
|
1396
703
|
blocks:
|
|
1397
704
|
- {
|
|
@@ -1449,22 +756,21 @@ playbooks:
|
|
|
1449
756
|
|
|
1450
757
|
# Per-workspace onboarding context (read by the shared onboard skill).
|
|
1451
758
|
onboarding:
|
|
1452
|
-
goal: "Capture the
|
|
1453
|
-
framing: "Act as a sharp delivery lead / chief of staff. Tease out what outcomes matter this quarter, what's actively being worked, what's in the current cycle, and who owns what. Translate that into
|
|
759
|
+
goal: "Capture the projects in flight, the current sprint, and who's involved — so the workspace mirrors how their team actually plans and delivers."
|
|
760
|
+
framing: "Act as a sharp delivery lead / chief of staff. Tease out what outcomes matter this quarter, what's actively being worked, what's in the current cycle, and who owns what. Translate that into a sprint, tasks, and people. What they are working toward is a goal on the pod (a track), not a record in this space. Projects are the pod's own projects, not an entity kind: create each one in flight through the project door and file its tasks into it."
|
|
1454
761
|
expertise:
|
|
1455
762
|
starters:
|
|
1456
763
|
- >
|
|
1457
|
-
Don't
|
|
1458
|
-
|
|
1459
|
-
|
|
1460
|
-
at everything is aiming at nothing.
|
|
764
|
+
Don't plan a wishlist of work — name the ONE thing this cycle has to deliver and size the
|
|
765
|
+
sprint to it. Five priorities is zero priorities; a team that's aiming at everything is
|
|
766
|
+
aiming at nothing.
|
|
1461
767
|
- >
|
|
1462
768
|
Capture what's actually in flight and impose a WIP limit as you go. Ask "what's genuinely
|
|
1463
769
|
being worked THIS week" — not the backlog — and if it's more than the team can finish,
|
|
1464
770
|
that's the finding. Too many projects in progress means nothing ships; the map should make
|
|
1465
771
|
the overload visible.
|
|
1466
772
|
- >
|
|
1467
|
-
Every project and
|
|
773
|
+
Every project and task gets a named owner before anything else. Lead with "who owns this?" —
|
|
1468
774
|
a goal with no owner is a hope, and it will quietly slip. Capture the person on the project
|
|
1469
775
|
the moment you capture the project; ownerless work is the first thing to surface, not the
|
|
1470
776
|
last.
|
|
@@ -1475,30 +781,23 @@ onboarding:
|
|
|
1475
781
|
loudest. Push back on the priority field — force a real ranking, because if you can't say
|
|
1476
782
|
what's LESS important, you haven't prioritized at all.
|
|
1477
783
|
- >
|
|
1478
|
-
|
|
1479
|
-
|
|
1480
|
-
|
|
784
|
+
Work with no owner is a hope, and hopes don't ship. The task that belongs to "the team"
|
|
785
|
+
belongs to no one. Surface every ownerless project and task — accountability is a name,
|
|
786
|
+
not a shared intention.
|
|
1481
787
|
- >
|
|
1482
788
|
Too much work-in-progress is the silent throughput killer. Founders equate "many things
|
|
1483
789
|
started" with progress, but a dozen 60%-done projects deliver nothing while three finished
|
|
1484
790
|
ones deliver value. Watch the count of In-Progress items and flag when it exceeds what the
|
|
1485
791
|
team can actually close in a cycle.
|
|
1486
792
|
bar: >
|
|
1487
|
-
A great result is a workspace where the line from
|
|
1488
|
-
|
|
1489
|
-
|
|
793
|
+
A great result is a workspace where the line from the sprint down to the task in flight this
|
|
794
|
+
week is unbroken: every project and task owned by a named person, a real priority ranking
|
|
795
|
+
(not all-P1), and a WIP that matches
|
|
1490
796
|
capacity. You can answer "are we on track, who owns the thing that's slipping, and what should
|
|
1491
797
|
we STOP to ship what matters?" in one look.
|
|
1492
798
|
collect:
|
|
1493
|
-
- profileSlug: okr
|
|
1494
|
-
what: The goals / OKRs that define success this quarter
|
|
1495
|
-
cardinality: few
|
|
1496
|
-
keyFields: [title, okr-quarter, okr-owner, kr1-label]
|
|
1497
|
-
- profileSlug: project
|
|
1498
|
-
what: The projects actively in flight and their priority
|
|
1499
|
-
cardinality: several
|
|
1500
|
-
keyFields: [title, project-status, project-priority, project-linked-okr]
|
|
1501
799
|
- profileSlug: sprint
|
|
800
|
+
min: 1
|
|
1502
801
|
what: The current cycle / sprint and its goal
|
|
1503
802
|
cardinality: one
|
|
1504
803
|
keyFields: [title, sprint-goal, sprint-start, sprint-end]
|
|
@@ -1507,7 +806,7 @@ onboarding:
|
|
|
1507
806
|
cardinality: several
|
|
1508
807
|
keyFields: [name, person-role, person-email]
|
|
1509
808
|
openingQuestions:
|
|
1510
|
-
- "What
|
|
809
|
+
- "What does this cycle have to deliver?"
|
|
1511
810
|
- "What projects are actively in flight right now, and which matter most?"
|
|
1512
811
|
- "Who's on the team, and what does each person own?"
|
|
1513
|
-
doneWhen: "
|
|
812
|
+
doneWhen: "A current sprint is defined, and the core team is on the board."
|