@hed-hog/operations 0.0.3 → 0.0.286
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 +122 -0
- package/dist/index.d.ts +1 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +1 -0
- package/dist/index.js.map +1 -1
- package/dist/operations-data.controller.d.ts +139 -0
- package/dist/operations-data.controller.d.ts.map +1 -0
- package/dist/operations-data.controller.js +113 -0
- package/dist/operations-data.controller.js.map +1 -0
- package/dist/operations-growth.controller.d.ts +48 -0
- package/dist/operations-growth.controller.d.ts.map +1 -0
- package/dist/operations-growth.controller.js +90 -0
- package/dist/operations-growth.controller.js.map +1 -0
- package/dist/operations.module.d.ts.map +1 -1
- package/dist/operations.module.js +10 -4
- package/dist/operations.module.js.map +1 -1
- package/dist/operations.service.d.ts +178 -0
- package/dist/operations.service.d.ts.map +1 -0
- package/dist/operations.service.js +134 -0
- package/dist/operations.service.js.map +1 -0
- package/hedhog/data/menu.yaml +251 -132
- package/hedhog/data/operations_career_level.yaml +102 -0
- package/hedhog/data/operations_career_track.yaml +8 -0
- package/hedhog/data/operations_certification.yaml +38 -0
- package/hedhog/data/operations_evaluation_cycle.yaml +18 -0
- package/hedhog/data/operations_performance_criterion.yaml +48 -0
- package/hedhog/data/role.yaml +14 -7
- package/hedhog/data/route.yaml +143 -80
- package/hedhog/frontend/app/_components/allocation-calendar.tsx.ejs +56 -56
- package/hedhog/frontend/app/_components/kanban-board.tsx.ejs +626 -83
- package/hedhog/frontend/app/_components/operations-header.tsx.ejs +29 -29
- package/hedhog/frontend/app/_components/section-card.tsx.ejs +32 -32
- package/hedhog/frontend/app/_components/status-badge.tsx.ejs +15 -15
- package/hedhog/frontend/app/_components/timesheet-entry-dialog.tsx.ejs +142 -142
- package/hedhog/frontend/app/_lib/hooks/use-operations-data.ts.ejs +41 -41
- package/hedhog/frontend/app/_lib/hooks/use-operations-growth-data.ts.ejs +63 -0
- package/hedhog/frontend/app/_lib/mocks/allocations.mock.ts.ejs +74 -74
- package/hedhog/frontend/app/_lib/mocks/contracts.mock.ts.ejs +74 -74
- package/hedhog/frontend/app/_lib/mocks/operations-growth.mock.ts.ejs +824 -0
- package/hedhog/frontend/app/_lib/mocks/projects.mock.ts.ejs +455 -60
- package/hedhog/frontend/app/_lib/mocks/tasks.mock.ts.ejs +117 -88
- package/hedhog/frontend/app/_lib/mocks/timesheets.mock.ts.ejs +84 -84
- package/hedhog/frontend/app/_lib/mocks/users.mock.ts.ejs +67 -67
- package/hedhog/frontend/app/_lib/services/contracts.service.ts.ejs +10 -10
- package/hedhog/frontend/app/_lib/services/operations-growth.service.ts.ejs +31 -0
- package/hedhog/frontend/app/_lib/services/projects.service.ts.ejs +10 -10
- package/hedhog/frontend/app/_lib/services/tasks.service.ts.ejs +10 -10
- package/hedhog/frontend/app/_lib/services/timesheets.service.ts.ejs +10 -10
- package/hedhog/frontend/app/_lib/types/operations-growth.ts.ejs +209 -0
- package/hedhog/frontend/app/_lib/types/operations.ts.ejs +156 -95
- package/hedhog/frontend/app/_lib/utils/format.ts.ejs +25 -25
- package/hedhog/frontend/app/_lib/utils/growth.ts.ejs +62 -0
- package/hedhog/frontend/app/_lib/utils/metrics.ts.ejs +103 -103
- package/hedhog/frontend/app/_lib/utils/status.ts.ejs +80 -80
- package/hedhog/frontend/app/allocations/page.tsx.ejs +155 -99
- package/hedhog/frontend/app/approvals/page.tsx.ejs +147 -147
- package/hedhog/frontend/app/career/page.tsx.ejs +143 -0
- package/hedhog/frontend/app/certifications/page.tsx.ejs +202 -0
- package/hedhog/frontend/app/contracts/[id]/page.tsx.ejs +108 -108
- package/hedhog/frontend/app/contracts/page.tsx.ejs +181 -124
- package/hedhog/frontend/app/evaluations/page.tsx.ejs +278 -0
- package/hedhog/frontend/app/goals/page.tsx.ejs +171 -0
- package/hedhog/frontend/app/growth/page.tsx.ejs +288 -0
- package/hedhog/frontend/app/layout.tsx.ejs +9 -9
- package/hedhog/frontend/app/manager/page.tsx.ejs +175 -0
- package/hedhog/frontend/app/page.tsx.ejs +177 -177
- package/hedhog/frontend/app/projects/[id]/page.tsx.ejs +936 -186
- package/hedhog/frontend/app/projects/page.tsx.ejs +1074 -111
- package/hedhog/frontend/app/rewards/page.tsx.ejs +196 -0
- package/hedhog/frontend/app/tasks/page.tsx.ejs +999 -47
- package/hedhog/frontend/app/timesheets/page.tsx.ejs +126 -126
- package/hedhog/frontend/messages/en.json +454 -142
- package/hedhog/frontend/messages/pt.json +454 -142
- package/hedhog/table/operations_allocation.yaml +52 -0
- package/hedhog/table/operations_calibration_item.yaml +61 -0
- package/hedhog/table/operations_calibration_session.yaml +25 -0
- package/hedhog/table/operations_career_level.yaml +75 -0
- package/hedhog/table/operations_career_track.yaml +21 -0
- package/hedhog/table/operations_certification.yaml +48 -0
- package/hedhog/table/operations_contract.yaml +57 -0
- package/hedhog/table/operations_employee.yaml +64 -0
- package/hedhog/table/operations_employee_certification.yaml +43 -0
- package/hedhog/table/operations_employee_connect.yaml +61 -0
- package/hedhog/table/operations_employee_evaluation.yaml +113 -0
- package/hedhog/table/operations_employee_evaluation_item.yaml +39 -0
- package/hedhog/table/operations_employee_profile.yaml +80 -0
- package/hedhog/table/operations_employee_skill_matrix.yaml +30 -0
- package/hedhog/table/operations_evaluation_cycle.yaml +31 -0
- package/hedhog/table/operations_goal.yaml +67 -0
- package/hedhog/table/operations_goal_progress.yaml +31 -0
- package/hedhog/table/operations_performance_criterion.yaml +29 -0
- package/hedhog/table/operations_project.yaml +66 -0
- package/hedhog/table/operations_promotion_readiness.yaml +49 -0
- package/hedhog/table/operations_promotion_recommendation.yaml +63 -0
- package/hedhog/table/operations_public_recognition.yaml +46 -0
- package/hedhog/table/operations_reward.yaml +100 -0
- package/hedhog/table/operations_score_event.yaml +81 -0
- package/hedhog/table/operations_task.yaml +60 -0
- package/hedhog/table/operations_timesheet.yaml +49 -0
- package/hedhog/table/operations_timesheet_entry.yaml +51 -0
- package/package.json +4 -4
- package/src/index.ts +2 -1
- package/src/language/en.json +8 -8
- package/src/language/pt.json +8 -8
- package/src/operations-data.controller.ts +54 -0
- package/src/operations-growth.controller.ts +44 -0
- package/src/operations.module.ts +21 -15
- package/src/operations.service.ts +137 -0
|
@@ -1,60 +1,455 @@
|
|
|
1
|
-
import type { Project } from '../types/operations';
|
|
2
|
-
|
|
3
|
-
export const projectsMock: Project[] = [
|
|
4
|
-
{
|
|
5
|
-
id: 'prj-orion-web',
|
|
6
|
-
name: 'Orion Commerce Revamp',
|
|
7
|
-
client: 'Orion Retail Group',
|
|
8
|
-
progress: 72,
|
|
9
|
-
status: 'active',
|
|
10
|
-
teamMemberIds: ['usr-ana', 'usr-bruno', 'usr-elisa', 'usr-fabio'],
|
|
11
|
-
hoursLogged: 386,
|
|
12
|
-
startDate: '2026-01-08',
|
|
13
|
-
endDate: '2026-06-30',
|
|
14
|
-
description:
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
1
|
+
import type { Project } from '../types/operations';
|
|
2
|
+
|
|
3
|
+
export const projectsMock: Project[] = [
|
|
4
|
+
{
|
|
5
|
+
id: 'prj-orion-web',
|
|
6
|
+
name: 'Orion Commerce Revamp',
|
|
7
|
+
client: 'Orion Retail Group',
|
|
8
|
+
progress: 72,
|
|
9
|
+
status: 'active',
|
|
10
|
+
teamMemberIds: ['usr-ana', 'usr-bruno', 'usr-elisa', 'usr-fabio'],
|
|
11
|
+
hoursLogged: 386,
|
|
12
|
+
startDate: '2026-01-08',
|
|
13
|
+
endDate: '2026-06-30',
|
|
14
|
+
description:
|
|
15
|
+
'Frontend and middleware modernization for the main commerce experience.',
|
|
16
|
+
contractId: 'ctr-orion',
|
|
17
|
+
budget: 128000,
|
|
18
|
+
health: {
|
|
19
|
+
overall: 'stable',
|
|
20
|
+
scope: 'stable',
|
|
21
|
+
schedule: 'attention',
|
|
22
|
+
budget: 'stable',
|
|
23
|
+
quality: 'excellent',
|
|
24
|
+
},
|
|
25
|
+
milestones: [
|
|
26
|
+
{
|
|
27
|
+
id: 'ms-orion-web-1',
|
|
28
|
+
title: 'Checkout architecture approved',
|
|
29
|
+
date: '2026-02-10',
|
|
30
|
+
status: 'done',
|
|
31
|
+
description:
|
|
32
|
+
'Core checkout orchestration and rollback strategy approved.',
|
|
33
|
+
},
|
|
34
|
+
{
|
|
35
|
+
id: 'ms-orion-web-2',
|
|
36
|
+
title: 'Mobile redesign beta',
|
|
37
|
+
date: '2026-04-02',
|
|
38
|
+
status: 'next',
|
|
39
|
+
description:
|
|
40
|
+
'Mobile PDP and cart refinements available to pilot stores.',
|
|
41
|
+
},
|
|
42
|
+
{
|
|
43
|
+
id: 'ms-orion-web-3',
|
|
44
|
+
title: 'Go-live window',
|
|
45
|
+
date: '2026-06-25',
|
|
46
|
+
status: 'next',
|
|
47
|
+
description:
|
|
48
|
+
'Final release cut with observability and rollback checklists.',
|
|
49
|
+
},
|
|
50
|
+
],
|
|
51
|
+
risks: [
|
|
52
|
+
{
|
|
53
|
+
id: 'risk-orion-web-1',
|
|
54
|
+
title: 'Payment fallback latency in peak season',
|
|
55
|
+
ownerUserId: 'usr-diego',
|
|
56
|
+
severity: 'high',
|
|
57
|
+
status: 'open',
|
|
58
|
+
impact: 'Potential conversion drop during high traffic windows.',
|
|
59
|
+
mitigation: 'Add edge caching and asynchronous fallback queue.',
|
|
60
|
+
},
|
|
61
|
+
{
|
|
62
|
+
id: 'risk-orion-web-2',
|
|
63
|
+
title: 'Client QA team availability reduced',
|
|
64
|
+
ownerUserId: 'usr-ana',
|
|
65
|
+
severity: 'medium',
|
|
66
|
+
status: 'mitigated',
|
|
67
|
+
impact: 'Approval cycle can delay final release by one sprint.',
|
|
68
|
+
mitigation: 'Shared acceptance criteria and mid-sprint QA handoff.',
|
|
69
|
+
},
|
|
70
|
+
],
|
|
71
|
+
dependencies: [
|
|
72
|
+
{
|
|
73
|
+
id: 'dep-orion-web-1',
|
|
74
|
+
title: 'Pricing API stabilization',
|
|
75
|
+
owner: 'Platform Squad',
|
|
76
|
+
type: 'internal',
|
|
77
|
+
status: 'watch',
|
|
78
|
+
},
|
|
79
|
+
{
|
|
80
|
+
id: 'dep-orion-web-2',
|
|
81
|
+
title: 'Storefront CDN contract update',
|
|
82
|
+
owner: 'Orion Procurement',
|
|
83
|
+
type: 'client',
|
|
84
|
+
status: 'on-track',
|
|
85
|
+
},
|
|
86
|
+
],
|
|
87
|
+
decisions: [
|
|
88
|
+
{
|
|
89
|
+
id: 'dec-orion-web-1',
|
|
90
|
+
date: '2026-02-14',
|
|
91
|
+
title: 'Adopt phased rollout by region',
|
|
92
|
+
ownerUserId: 'usr-ana',
|
|
93
|
+
summary:
|
|
94
|
+
'Release by region to reduce blast radius and accelerate learning.',
|
|
95
|
+
},
|
|
96
|
+
{
|
|
97
|
+
id: 'dec-orion-web-2',
|
|
98
|
+
date: '2026-03-05',
|
|
99
|
+
title: 'Prioritize checkout reliability over catalog animation scope',
|
|
100
|
+
ownerUserId: 'usr-carla',
|
|
101
|
+
summary:
|
|
102
|
+
'Shifted effort from low-impact visual scope to transactional reliability.',
|
|
103
|
+
},
|
|
104
|
+
],
|
|
105
|
+
nextActions: [
|
|
106
|
+
'Concluir fallback de pricing e validar em carga.',
|
|
107
|
+
'Executar dry-run do plano de rollout regional.',
|
|
108
|
+
'Fechar checklist de observabilidade de checkout.',
|
|
109
|
+
],
|
|
110
|
+
monthlyForecast: [
|
|
111
|
+
{
|
|
112
|
+
month: 'Jan',
|
|
113
|
+
plannedCost: 14000,
|
|
114
|
+
actualCost: 13200,
|
|
115
|
+
plannedProgress: 14,
|
|
116
|
+
actualProgress: 12,
|
|
117
|
+
},
|
|
118
|
+
{
|
|
119
|
+
month: 'Feb',
|
|
120
|
+
plannedCost: 18000,
|
|
121
|
+
actualCost: 19250,
|
|
122
|
+
plannedProgress: 30,
|
|
123
|
+
actualProgress: 28,
|
|
124
|
+
},
|
|
125
|
+
{
|
|
126
|
+
month: 'Mar',
|
|
127
|
+
plannedCost: 22000,
|
|
128
|
+
actualCost: 23500,
|
|
129
|
+
plannedProgress: 48,
|
|
130
|
+
actualProgress: 45,
|
|
131
|
+
},
|
|
132
|
+
{
|
|
133
|
+
month: 'Apr',
|
|
134
|
+
plannedCost: 21000,
|
|
135
|
+
actualCost: 0,
|
|
136
|
+
plannedProgress: 63,
|
|
137
|
+
actualProgress: 0,
|
|
138
|
+
},
|
|
139
|
+
{
|
|
140
|
+
month: 'May',
|
|
141
|
+
plannedCost: 19500,
|
|
142
|
+
actualCost: 0,
|
|
143
|
+
plannedProgress: 82,
|
|
144
|
+
actualProgress: 0,
|
|
145
|
+
},
|
|
146
|
+
{
|
|
147
|
+
month: 'Jun',
|
|
148
|
+
plannedCost: 17000,
|
|
149
|
+
actualCost: 0,
|
|
150
|
+
plannedProgress: 100,
|
|
151
|
+
actualProgress: 0,
|
|
152
|
+
},
|
|
153
|
+
],
|
|
154
|
+
},
|
|
155
|
+
{
|
|
156
|
+
id: 'prj-orion-data',
|
|
157
|
+
name: 'Orion Data Foundation',
|
|
158
|
+
client: 'Orion Retail Group',
|
|
159
|
+
progress: 48,
|
|
160
|
+
status: 'at-risk',
|
|
161
|
+
teamMemberIds: ['usr-carla', 'usr-diego', 'usr-gabi'],
|
|
162
|
+
hoursLogged: 244,
|
|
163
|
+
startDate: '2026-02-03',
|
|
164
|
+
endDate: '2026-09-15',
|
|
165
|
+
description:
|
|
166
|
+
'Data governance and reporting layer for omnichannel operations.',
|
|
167
|
+
contractId: 'ctr-orion',
|
|
168
|
+
budget: 98000,
|
|
169
|
+
health: {
|
|
170
|
+
overall: 'attention',
|
|
171
|
+
scope: 'stable',
|
|
172
|
+
schedule: 'critical',
|
|
173
|
+
budget: 'attention',
|
|
174
|
+
quality: 'stable',
|
|
175
|
+
},
|
|
176
|
+
milestones: [
|
|
177
|
+
{
|
|
178
|
+
id: 'ms-orion-data-1',
|
|
179
|
+
title: 'Data ownership mapping',
|
|
180
|
+
date: '2026-03-07',
|
|
181
|
+
status: 'done',
|
|
182
|
+
description:
|
|
183
|
+
'Ownership and stewardship model approved by operations and BI.',
|
|
184
|
+
},
|
|
185
|
+
{
|
|
186
|
+
id: 'ms-orion-data-2',
|
|
187
|
+
title: 'Warehouse latency dashboard',
|
|
188
|
+
date: '2026-04-20',
|
|
189
|
+
status: 'delayed',
|
|
190
|
+
description: 'Delayed due to source system inconsistencies.',
|
|
191
|
+
},
|
|
192
|
+
],
|
|
193
|
+
risks: [
|
|
194
|
+
{
|
|
195
|
+
id: 'risk-orion-data-1',
|
|
196
|
+
title: 'Source systems have inconsistent SKU IDs',
|
|
197
|
+
ownerUserId: 'usr-gabi',
|
|
198
|
+
severity: 'high',
|
|
199
|
+
status: 'open',
|
|
200
|
+
impact: 'Executive dashboards may show wrong reconciled volume.',
|
|
201
|
+
mitigation:
|
|
202
|
+
'Introduce temporary canonical mapping table and nightly audit.',
|
|
203
|
+
},
|
|
204
|
+
],
|
|
205
|
+
dependencies: [
|
|
206
|
+
{
|
|
207
|
+
id: 'dep-orion-data-1',
|
|
208
|
+
title: 'ERP extract contract extension',
|
|
209
|
+
owner: 'Client IT',
|
|
210
|
+
type: 'client',
|
|
211
|
+
status: 'blocked',
|
|
212
|
+
},
|
|
213
|
+
],
|
|
214
|
+
decisions: [
|
|
215
|
+
{
|
|
216
|
+
id: 'dec-orion-data-1',
|
|
217
|
+
date: '2026-03-02',
|
|
218
|
+
title: 'Adopt weekly release train for analytics assets',
|
|
219
|
+
ownerUserId: 'usr-carla',
|
|
220
|
+
summary: 'Move from ad-hoc delivery to weekly controlled releases.',
|
|
221
|
+
},
|
|
222
|
+
],
|
|
223
|
+
nextActions: [
|
|
224
|
+
'Destravar contrato de extracao ERP com TI do cliente.',
|
|
225
|
+
'Concluir camada de reconciliacao de SKUs.',
|
|
226
|
+
],
|
|
227
|
+
monthlyForecast: [
|
|
228
|
+
{
|
|
229
|
+
month: 'Feb',
|
|
230
|
+
plannedCost: 11000,
|
|
231
|
+
actualCost: 12100,
|
|
232
|
+
plannedProgress: 12,
|
|
233
|
+
actualProgress: 10,
|
|
234
|
+
},
|
|
235
|
+
{
|
|
236
|
+
month: 'Mar',
|
|
237
|
+
plannedCost: 15000,
|
|
238
|
+
actualCost: 16800,
|
|
239
|
+
plannedProgress: 24,
|
|
240
|
+
actualProgress: 20,
|
|
241
|
+
},
|
|
242
|
+
{
|
|
243
|
+
month: 'Apr',
|
|
244
|
+
plannedCost: 17000,
|
|
245
|
+
actualCost: 0,
|
|
246
|
+
plannedProgress: 38,
|
|
247
|
+
actualProgress: 0,
|
|
248
|
+
},
|
|
249
|
+
{
|
|
250
|
+
month: 'May',
|
|
251
|
+
plannedCost: 16500,
|
|
252
|
+
actualCost: 0,
|
|
253
|
+
plannedProgress: 55,
|
|
254
|
+
actualProgress: 0,
|
|
255
|
+
},
|
|
256
|
+
],
|
|
257
|
+
},
|
|
258
|
+
{
|
|
259
|
+
id: 'prj-zenith-cloud',
|
|
260
|
+
name: 'Zenith Cloud Stabilization',
|
|
261
|
+
client: 'Zenith Health',
|
|
262
|
+
progress: 61,
|
|
263
|
+
status: 'active',
|
|
264
|
+
teamMemberIds: ['usr-ana', 'usr-diego', 'usr-fabio'],
|
|
265
|
+
hoursLogged: 322,
|
|
266
|
+
startDate: '2026-01-12',
|
|
267
|
+
endDate: '2026-07-31',
|
|
268
|
+
description:
|
|
269
|
+
'Ops stabilization and incident reduction program after migration.',
|
|
270
|
+
contractId: 'ctr-zenith',
|
|
271
|
+
budget: 115000,
|
|
272
|
+
health: {
|
|
273
|
+
overall: 'stable',
|
|
274
|
+
scope: 'stable',
|
|
275
|
+
schedule: 'stable',
|
|
276
|
+
budget: 'stable',
|
|
277
|
+
quality: 'attention',
|
|
278
|
+
},
|
|
279
|
+
milestones: [
|
|
280
|
+
{
|
|
281
|
+
id: 'ms-zenith-1',
|
|
282
|
+
title: 'Alert routing automation',
|
|
283
|
+
date: '2026-03-15',
|
|
284
|
+
status: 'done',
|
|
285
|
+
description: 'Critical incidents now route by service ownership.',
|
|
286
|
+
},
|
|
287
|
+
{
|
|
288
|
+
id: 'ms-zenith-2',
|
|
289
|
+
title: 'Quarterly resilience test',
|
|
290
|
+
date: '2026-05-12',
|
|
291
|
+
status: 'next',
|
|
292
|
+
description: 'Failure simulation for top-priority services.',
|
|
293
|
+
},
|
|
294
|
+
],
|
|
295
|
+
risks: [
|
|
296
|
+
{
|
|
297
|
+
id: 'risk-zenith-1',
|
|
298
|
+
title: 'On-call fatigue after migration incidents',
|
|
299
|
+
ownerUserId: 'usr-bruno',
|
|
300
|
+
severity: 'medium',
|
|
301
|
+
status: 'accepted',
|
|
302
|
+
impact: 'Potential drop in response quality and team morale.',
|
|
303
|
+
mitigation: 'Rotate on-call and enforce cooldown policies.',
|
|
304
|
+
},
|
|
305
|
+
],
|
|
306
|
+
dependencies: [
|
|
307
|
+
{
|
|
308
|
+
id: 'dep-zenith-1',
|
|
309
|
+
title: 'Client security review for runbook tooling',
|
|
310
|
+
owner: 'Zenith Security Board',
|
|
311
|
+
type: 'client',
|
|
312
|
+
status: 'on-track',
|
|
313
|
+
},
|
|
314
|
+
],
|
|
315
|
+
decisions: [
|
|
316
|
+
{
|
|
317
|
+
id: 'dec-zenith-1',
|
|
318
|
+
date: '2026-03-16',
|
|
319
|
+
title: 'Switch major incidents to follow-the-sun protocol',
|
|
320
|
+
ownerUserId: 'usr-ana',
|
|
321
|
+
summary:
|
|
322
|
+
'Distribute high-severity handling to reduce response bottlenecks.',
|
|
323
|
+
},
|
|
324
|
+
],
|
|
325
|
+
nextActions: [
|
|
326
|
+
'Publicar runbook atualizado no comite mensal.',
|
|
327
|
+
'Executar simulacao de falha em ambiente controlado.',
|
|
328
|
+
],
|
|
329
|
+
monthlyForecast: [
|
|
330
|
+
{
|
|
331
|
+
month: 'Jan',
|
|
332
|
+
plannedCost: 16000,
|
|
333
|
+
actualCost: 15700,
|
|
334
|
+
plannedProgress: 16,
|
|
335
|
+
actualProgress: 17,
|
|
336
|
+
},
|
|
337
|
+
{
|
|
338
|
+
month: 'Feb',
|
|
339
|
+
plannedCost: 17000,
|
|
340
|
+
actualCost: 17400,
|
|
341
|
+
plannedProgress: 31,
|
|
342
|
+
actualProgress: 30,
|
|
343
|
+
},
|
|
344
|
+
{
|
|
345
|
+
month: 'Mar',
|
|
346
|
+
plannedCost: 19500,
|
|
347
|
+
actualCost: 18800,
|
|
348
|
+
plannedProgress: 45,
|
|
349
|
+
actualProgress: 47,
|
|
350
|
+
},
|
|
351
|
+
{
|
|
352
|
+
month: 'Apr',
|
|
353
|
+
plannedCost: 18200,
|
|
354
|
+
actualCost: 0,
|
|
355
|
+
plannedProgress: 58,
|
|
356
|
+
actualProgress: 0,
|
|
357
|
+
},
|
|
358
|
+
],
|
|
359
|
+
},
|
|
360
|
+
{
|
|
361
|
+
id: 'prj-atlas-crm',
|
|
362
|
+
name: 'Atlas CRM Implementation',
|
|
363
|
+
client: 'Atlas Logistics',
|
|
364
|
+
progress: 29,
|
|
365
|
+
status: 'planning',
|
|
366
|
+
teamMemberIds: ['usr-carla', 'usr-elisa', 'usr-gabi'],
|
|
367
|
+
hoursLogged: 104,
|
|
368
|
+
startDate: '2026-03-01',
|
|
369
|
+
endDate: '2026-08-31',
|
|
370
|
+
description: 'Sales and service CRM rollout with operational dashboards.',
|
|
371
|
+
contractId: 'ctr-atlas',
|
|
372
|
+
budget: 89000,
|
|
373
|
+
health: {
|
|
374
|
+
overall: 'stable',
|
|
375
|
+
scope: 'excellent',
|
|
376
|
+
schedule: 'stable',
|
|
377
|
+
budget: 'stable',
|
|
378
|
+
quality: 'stable',
|
|
379
|
+
},
|
|
380
|
+
milestones: [
|
|
381
|
+
{
|
|
382
|
+
id: 'ms-atlas-1',
|
|
383
|
+
title: 'Discovery and process mapping',
|
|
384
|
+
date: '2026-03-18',
|
|
385
|
+
status: 'done',
|
|
386
|
+
description:
|
|
387
|
+
'Cross-functional mapping completed for sales and support flows.',
|
|
388
|
+
},
|
|
389
|
+
{
|
|
390
|
+
id: 'ms-atlas-2',
|
|
391
|
+
title: 'Pilot launch',
|
|
392
|
+
date: '2026-05-30',
|
|
393
|
+
status: 'next',
|
|
394
|
+
description: 'Pilot branch launch for LATAM service teams.',
|
|
395
|
+
},
|
|
396
|
+
],
|
|
397
|
+
risks: [
|
|
398
|
+
{
|
|
399
|
+
id: 'risk-atlas-1',
|
|
400
|
+
title: 'Data migration quality from legacy CRM',
|
|
401
|
+
ownerUserId: 'usr-elisa',
|
|
402
|
+
severity: 'medium',
|
|
403
|
+
status: 'open',
|
|
404
|
+
impact: 'Historical data can affect reporting confidence.',
|
|
405
|
+
mitigation:
|
|
406
|
+
'Two-step migration with sample reconciliation by business users.',
|
|
407
|
+
},
|
|
408
|
+
],
|
|
409
|
+
dependencies: [
|
|
410
|
+
{
|
|
411
|
+
id: 'dep-atlas-1',
|
|
412
|
+
title: 'Vendor integration environment',
|
|
413
|
+
owner: 'CRM Vendor',
|
|
414
|
+
type: 'vendor',
|
|
415
|
+
status: 'watch',
|
|
416
|
+
},
|
|
417
|
+
],
|
|
418
|
+
decisions: [
|
|
419
|
+
{
|
|
420
|
+
id: 'dec-atlas-1',
|
|
421
|
+
date: '2026-03-20',
|
|
422
|
+
title: 'Adopt phased migration by business unit',
|
|
423
|
+
ownerUserId: 'usr-carla',
|
|
424
|
+
summary: 'Move migration in waves to protect frontline operations.',
|
|
425
|
+
},
|
|
426
|
+
],
|
|
427
|
+
nextActions: [
|
|
428
|
+
'Confirmar escopo da primeira onda de migracao.',
|
|
429
|
+
'Publicar roteiro de treinamento dos usuarios finais.',
|
|
430
|
+
],
|
|
431
|
+
monthlyForecast: [
|
|
432
|
+
{
|
|
433
|
+
month: 'Mar',
|
|
434
|
+
plannedCost: 10500,
|
|
435
|
+
actualCost: 9600,
|
|
436
|
+
plannedProgress: 10,
|
|
437
|
+
actualProgress: 12,
|
|
438
|
+
},
|
|
439
|
+
{
|
|
440
|
+
month: 'Apr',
|
|
441
|
+
plannedCost: 13000,
|
|
442
|
+
actualCost: 0,
|
|
443
|
+
plannedProgress: 24,
|
|
444
|
+
actualProgress: 0,
|
|
445
|
+
},
|
|
446
|
+
{
|
|
447
|
+
month: 'May',
|
|
448
|
+
plannedCost: 14800,
|
|
449
|
+
actualCost: 0,
|
|
450
|
+
plannedProgress: 41,
|
|
451
|
+
actualProgress: 0,
|
|
452
|
+
},
|
|
453
|
+
],
|
|
454
|
+
},
|
|
455
|
+
];
|