onetool-mcp 1.0.0rc2__py3-none-any.whl → 1.0.0rc3__py3-none-any.whl
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.
- onetool/cli.py +2 -0
- {onetool_mcp-1.0.0rc2.dist-info → onetool_mcp-1.0.0rc3.dist-info}/METADATA +26 -33
- {onetool_mcp-1.0.0rc2.dist-info → onetool_mcp-1.0.0rc3.dist-info}/RECORD +31 -33
- ot/config/__init__.py +90 -48
- ot/config/global_templates/__init__.py +2 -2
- ot/config/global_templates/diagram-templates/api-flow.mmd +33 -33
- ot/config/global_templates/diagram-templates/c4-context.puml +30 -30
- ot/config/global_templates/diagram-templates/class-diagram.mmd +87 -87
- ot/config/global_templates/diagram-templates/feature-mindmap.mmd +70 -70
- ot/config/global_templates/diagram-templates/microservices.d2 +81 -81
- ot/config/global_templates/diagram-templates/project-gantt.mmd +37 -37
- ot/config/global_templates/diagram-templates/state-machine.mmd +42 -42
- ot/config/global_templates/diagram.yaml +167 -167
- ot/config/global_templates/onetool.yaml +2 -0
- ot/config/global_templates/prompts.yaml +102 -102
- ot/config/global_templates/security.yaml +1 -4
- ot/config/global_templates/servers.yaml +1 -1
- ot/config/global_templates/tool_templates/__init__.py +7 -7
- ot/config/loader.py +226 -869
- ot/config/models.py +735 -0
- ot/config/secrets.py +243 -192
- ot/executor/tool_loader.py +10 -1
- ot/executor/validator.py +11 -1
- ot/meta.py +338 -33
- ot/prompts.py +228 -218
- ot/proxy/manager.py +168 -8
- ot/registry/__init__.py +199 -189
- ot/config/dynamic.py +0 -121
- ot/config/mcp.py +0 -149
- ot/config/tool_config.py +0 -125
- {onetool_mcp-1.0.0rc2.dist-info → onetool_mcp-1.0.0rc3.dist-info}/WHEEL +0 -0
- {onetool_mcp-1.0.0rc2.dist-info → onetool_mcp-1.0.0rc3.dist-info}/entry_points.txt +0 -0
- {onetool_mcp-1.0.0rc2.dist-info → onetool_mcp-1.0.0rc3.dist-info}/licenses/LICENSE.txt +0 -0
- {onetool_mcp-1.0.0rc2.dist-info → onetool_mcp-1.0.0rc3.dist-info}/licenses/NOTICE.txt +0 -0
|
@@ -1,87 +1,87 @@
|
|
|
1
|
-
%% Class Diagram Template
|
|
2
|
-
%% Replace with your actual data model
|
|
3
|
-
|
|
4
|
-
classDiagram
|
|
5
|
-
class User {
|
|
6
|
-
+String id
|
|
7
|
-
+String email
|
|
8
|
-
+String name
|
|
9
|
-
+DateTime createdAt
|
|
10
|
-
+DateTime updatedAt
|
|
11
|
-
+login() bool
|
|
12
|
-
+logout() void
|
|
13
|
-
+updateProfile(data) User
|
|
14
|
-
}
|
|
15
|
-
|
|
16
|
-
class Organisation {
|
|
17
|
-
+String id
|
|
18
|
-
+String name
|
|
19
|
-
+String slug
|
|
20
|
-
+Plan plan
|
|
21
|
-
+getMembers() List~User~
|
|
22
|
-
+addMember(user) void
|
|
23
|
-
+removeMember(user) void
|
|
24
|
-
}
|
|
25
|
-
|
|
26
|
-
class Project {
|
|
27
|
-
+String id
|
|
28
|
-
+String name
|
|
29
|
-
+String description
|
|
30
|
-
+Status status
|
|
31
|
-
+DateTime deadline
|
|
32
|
-
+getTasks() List~Task~
|
|
33
|
-
+addTask(task) void
|
|
34
|
-
+archive() void
|
|
35
|
-
}
|
|
36
|
-
|
|
37
|
-
class Task {
|
|
38
|
-
+String id
|
|
39
|
-
+String title
|
|
40
|
-
+String description
|
|
41
|
-
+Priority priority
|
|
42
|
-
+Status status
|
|
43
|
-
+User assignee
|
|
44
|
-
+assign(user) void
|
|
45
|
-
+complete() void
|
|
46
|
-
}
|
|
47
|
-
|
|
48
|
-
class Comment {
|
|
49
|
-
+String id
|
|
50
|
-
+String content
|
|
51
|
-
+User author
|
|
52
|
-
+DateTime createdAt
|
|
53
|
-
+edit(content) void
|
|
54
|
-
+delete() void
|
|
55
|
-
}
|
|
56
|
-
|
|
57
|
-
%% Relationships
|
|
58
|
-
User "1" --> "*" Organisation : belongs to
|
|
59
|
-
Organisation "1" --> "*" Project : owns
|
|
60
|
-
Project "1" --> "*" Task : contains
|
|
61
|
-
User "1" --> "*" Task : assigned to
|
|
62
|
-
Task "1" --> "*" Comment : has
|
|
63
|
-
User "1" --> "*" Comment : writes
|
|
64
|
-
|
|
65
|
-
%% Enums
|
|
66
|
-
class Status {
|
|
67
|
-
<<enumeration>>
|
|
68
|
-
DRAFT
|
|
69
|
-
ACTIVE
|
|
70
|
-
COMPLETED
|
|
71
|
-
ARCHIVED
|
|
72
|
-
}
|
|
73
|
-
|
|
74
|
-
class Priority {
|
|
75
|
-
<<enumeration>>
|
|
76
|
-
LOW
|
|
77
|
-
MEDIUM
|
|
78
|
-
HIGH
|
|
79
|
-
CRITICAL
|
|
80
|
-
}
|
|
81
|
-
|
|
82
|
-
class Plan {
|
|
83
|
-
<<enumeration>>
|
|
84
|
-
FREE
|
|
85
|
-
PRO
|
|
86
|
-
ENTERPRISE
|
|
87
|
-
}
|
|
1
|
+
%% Class Diagram Template
|
|
2
|
+
%% Replace with your actual data model
|
|
3
|
+
|
|
4
|
+
classDiagram
|
|
5
|
+
class User {
|
|
6
|
+
+String id
|
|
7
|
+
+String email
|
|
8
|
+
+String name
|
|
9
|
+
+DateTime createdAt
|
|
10
|
+
+DateTime updatedAt
|
|
11
|
+
+login() bool
|
|
12
|
+
+logout() void
|
|
13
|
+
+updateProfile(data) User
|
|
14
|
+
}
|
|
15
|
+
|
|
16
|
+
class Organisation {
|
|
17
|
+
+String id
|
|
18
|
+
+String name
|
|
19
|
+
+String slug
|
|
20
|
+
+Plan plan
|
|
21
|
+
+getMembers() List~User~
|
|
22
|
+
+addMember(user) void
|
|
23
|
+
+removeMember(user) void
|
|
24
|
+
}
|
|
25
|
+
|
|
26
|
+
class Project {
|
|
27
|
+
+String id
|
|
28
|
+
+String name
|
|
29
|
+
+String description
|
|
30
|
+
+Status status
|
|
31
|
+
+DateTime deadline
|
|
32
|
+
+getTasks() List~Task~
|
|
33
|
+
+addTask(task) void
|
|
34
|
+
+archive() void
|
|
35
|
+
}
|
|
36
|
+
|
|
37
|
+
class Task {
|
|
38
|
+
+String id
|
|
39
|
+
+String title
|
|
40
|
+
+String description
|
|
41
|
+
+Priority priority
|
|
42
|
+
+Status status
|
|
43
|
+
+User assignee
|
|
44
|
+
+assign(user) void
|
|
45
|
+
+complete() void
|
|
46
|
+
}
|
|
47
|
+
|
|
48
|
+
class Comment {
|
|
49
|
+
+String id
|
|
50
|
+
+String content
|
|
51
|
+
+User author
|
|
52
|
+
+DateTime createdAt
|
|
53
|
+
+edit(content) void
|
|
54
|
+
+delete() void
|
|
55
|
+
}
|
|
56
|
+
|
|
57
|
+
%% Relationships
|
|
58
|
+
User "1" --> "*" Organisation : belongs to
|
|
59
|
+
Organisation "1" --> "*" Project : owns
|
|
60
|
+
Project "1" --> "*" Task : contains
|
|
61
|
+
User "1" --> "*" Task : assigned to
|
|
62
|
+
Task "1" --> "*" Comment : has
|
|
63
|
+
User "1" --> "*" Comment : writes
|
|
64
|
+
|
|
65
|
+
%% Enums
|
|
66
|
+
class Status {
|
|
67
|
+
<<enumeration>>
|
|
68
|
+
DRAFT
|
|
69
|
+
ACTIVE
|
|
70
|
+
COMPLETED
|
|
71
|
+
ARCHIVED
|
|
72
|
+
}
|
|
73
|
+
|
|
74
|
+
class Priority {
|
|
75
|
+
<<enumeration>>
|
|
76
|
+
LOW
|
|
77
|
+
MEDIUM
|
|
78
|
+
HIGH
|
|
79
|
+
CRITICAL
|
|
80
|
+
}
|
|
81
|
+
|
|
82
|
+
class Plan {
|
|
83
|
+
<<enumeration>>
|
|
84
|
+
FREE
|
|
85
|
+
PRO
|
|
86
|
+
ENTERPRISE
|
|
87
|
+
}
|
|
@@ -1,70 +1,70 @@
|
|
|
1
|
-
%% Feature Mindmap Template
|
|
2
|
-
%% Replace with your actual feature breakdown
|
|
3
|
-
|
|
4
|
-
mindmap
|
|
5
|
-
root((Product))
|
|
6
|
-
Authentication
|
|
7
|
-
Login
|
|
8
|
-
Email/Password
|
|
9
|
-
Social OAuth
|
|
10
|
-
SSO/SAML
|
|
11
|
-
Registration
|
|
12
|
-
Email verification
|
|
13
|
-
Onboarding flow
|
|
14
|
-
Security
|
|
15
|
-
2FA/MFA
|
|
16
|
-
Session management
|
|
17
|
-
Password policies
|
|
18
|
-
User Management
|
|
19
|
-
Profiles
|
|
20
|
-
Avatar upload
|
|
21
|
-
Preferences
|
|
22
|
-
Notifications
|
|
23
|
-
Organisations
|
|
24
|
-
Team creation
|
|
25
|
-
Role assignment
|
|
26
|
-
Invitations
|
|
27
|
-
Permissions
|
|
28
|
-
Role-based access
|
|
29
|
-
Resource sharing
|
|
30
|
-
Audit logging
|
|
31
|
-
Core Features
|
|
32
|
-
Dashboard
|
|
33
|
-
Analytics widgets
|
|
34
|
-
Quick actions
|
|
35
|
-
Recent activity
|
|
36
|
-
Projects
|
|
37
|
-
CRUD operations
|
|
38
|
-
Collaboration
|
|
39
|
-
Version history
|
|
40
|
-
Tasks
|
|
41
|
-
Assignment
|
|
42
|
-
Due dates
|
|
43
|
-
Comments
|
|
44
|
-
Attachments
|
|
45
|
-
Integrations
|
|
46
|
-
APIs
|
|
47
|
-
REST endpoints
|
|
48
|
-
GraphQL
|
|
49
|
-
Webhooks
|
|
50
|
-
Third-party
|
|
51
|
-
Slack
|
|
52
|
-
GitHub
|
|
53
|
-
Jira
|
|
54
|
-
Import/Export
|
|
55
|
-
CSV
|
|
56
|
-
JSON
|
|
57
|
-
PDF reports
|
|
58
|
-
Infrastructure
|
|
59
|
-
Performance
|
|
60
|
-
Caching
|
|
61
|
-
CDN
|
|
62
|
-
Database optimisation
|
|
63
|
-
Reliability
|
|
64
|
-
Backups
|
|
65
|
-
Monitoring
|
|
66
|
-
Alerting
|
|
67
|
-
Scalability
|
|
68
|
-
Load balancing
|
|
69
|
-
Auto-scaling
|
|
70
|
-
Multi-region
|
|
1
|
+
%% Feature Mindmap Template
|
|
2
|
+
%% Replace with your actual feature breakdown
|
|
3
|
+
|
|
4
|
+
mindmap
|
|
5
|
+
root((Product))
|
|
6
|
+
Authentication
|
|
7
|
+
Login
|
|
8
|
+
Email/Password
|
|
9
|
+
Social OAuth
|
|
10
|
+
SSO/SAML
|
|
11
|
+
Registration
|
|
12
|
+
Email verification
|
|
13
|
+
Onboarding flow
|
|
14
|
+
Security
|
|
15
|
+
2FA/MFA
|
|
16
|
+
Session management
|
|
17
|
+
Password policies
|
|
18
|
+
User Management
|
|
19
|
+
Profiles
|
|
20
|
+
Avatar upload
|
|
21
|
+
Preferences
|
|
22
|
+
Notifications
|
|
23
|
+
Organisations
|
|
24
|
+
Team creation
|
|
25
|
+
Role assignment
|
|
26
|
+
Invitations
|
|
27
|
+
Permissions
|
|
28
|
+
Role-based access
|
|
29
|
+
Resource sharing
|
|
30
|
+
Audit logging
|
|
31
|
+
Core Features
|
|
32
|
+
Dashboard
|
|
33
|
+
Analytics widgets
|
|
34
|
+
Quick actions
|
|
35
|
+
Recent activity
|
|
36
|
+
Projects
|
|
37
|
+
CRUD operations
|
|
38
|
+
Collaboration
|
|
39
|
+
Version history
|
|
40
|
+
Tasks
|
|
41
|
+
Assignment
|
|
42
|
+
Due dates
|
|
43
|
+
Comments
|
|
44
|
+
Attachments
|
|
45
|
+
Integrations
|
|
46
|
+
APIs
|
|
47
|
+
REST endpoints
|
|
48
|
+
GraphQL
|
|
49
|
+
Webhooks
|
|
50
|
+
Third-party
|
|
51
|
+
Slack
|
|
52
|
+
GitHub
|
|
53
|
+
Jira
|
|
54
|
+
Import/Export
|
|
55
|
+
CSV
|
|
56
|
+
JSON
|
|
57
|
+
PDF reports
|
|
58
|
+
Infrastructure
|
|
59
|
+
Performance
|
|
60
|
+
Caching
|
|
61
|
+
CDN
|
|
62
|
+
Database optimisation
|
|
63
|
+
Reliability
|
|
64
|
+
Backups
|
|
65
|
+
Monitoring
|
|
66
|
+
Alerting
|
|
67
|
+
Scalability
|
|
68
|
+
Load balancing
|
|
69
|
+
Auto-scaling
|
|
70
|
+
Multi-region
|
|
@@ -1,81 +1,81 @@
|
|
|
1
|
-
# Microservices Architecture Template
|
|
2
|
-
# Replace placeholders with actual service names
|
|
3
|
-
|
|
4
|
-
direction: right
|
|
5
|
-
|
|
6
|
-
# External actors
|
|
7
|
-
user: "User" {
|
|
8
|
-
shape: person
|
|
9
|
-
}
|
|
10
|
-
|
|
11
|
-
# Frontend layer
|
|
12
|
-
frontend: "Frontend" {
|
|
13
|
-
style.fill: "#e3f2fd"
|
|
14
|
-
|
|
15
|
-
web: "Web App"
|
|
16
|
-
mobile: "Mobile App"
|
|
17
|
-
}
|
|
18
|
-
|
|
19
|
-
# API layer
|
|
20
|
-
gateway: "API Gateway" {
|
|
21
|
-
style.fill: "#fff3e0"
|
|
22
|
-
|
|
23
|
-
auth: "Auth"
|
|
24
|
-
routing: "Router"
|
|
25
|
-
rate_limit: "Rate Limiter"
|
|
26
|
-
}
|
|
27
|
-
|
|
28
|
-
# Services layer
|
|
29
|
-
services: "Services" {
|
|
30
|
-
style.fill: "#e8f5e9"
|
|
31
|
-
|
|
32
|
-
user_svc: "User Service"
|
|
33
|
-
order_svc: "Order Service"
|
|
34
|
-
notification_svc: "Notification Service"
|
|
35
|
-
}
|
|
36
|
-
|
|
37
|
-
# Data layer
|
|
38
|
-
data: "Data Stores" {
|
|
39
|
-
style.fill: "#fce4ec"
|
|
40
|
-
|
|
41
|
-
postgres: "PostgreSQL" {
|
|
42
|
-
shape: cylinder
|
|
43
|
-
}
|
|
44
|
-
redis: "Redis" {
|
|
45
|
-
shape: cylinder
|
|
46
|
-
}
|
|
47
|
-
queue: "Message Queue" {
|
|
48
|
-
shape: queue
|
|
49
|
-
}
|
|
50
|
-
}
|
|
51
|
-
|
|
52
|
-
# External services
|
|
53
|
-
external: "External" {
|
|
54
|
-
style.stroke-dash: 3
|
|
55
|
-
|
|
56
|
-
email: "Email Provider"
|
|
57
|
-
payment: "Payment Gateway"
|
|
58
|
-
}
|
|
59
|
-
|
|
60
|
-
# Connections
|
|
61
|
-
user -> frontend.web
|
|
62
|
-
user -> frontend.mobile
|
|
63
|
-
|
|
64
|
-
frontend.web -> gateway.routing
|
|
65
|
-
frontend.mobile -> gateway.routing
|
|
66
|
-
|
|
67
|
-
gateway.routing -> gateway.auth
|
|
68
|
-
gateway.auth -> services.user_svc
|
|
69
|
-
gateway.routing -> services.order_svc
|
|
70
|
-
gateway.routing -> services.notification_svc
|
|
71
|
-
|
|
72
|
-
services.user_svc -> data.postgres
|
|
73
|
-
services.order_svc -> data.postgres
|
|
74
|
-
services.order_svc -> data.queue
|
|
75
|
-
|
|
76
|
-
services.notification_svc -> data.queue
|
|
77
|
-
services.notification_svc -> external.email
|
|
78
|
-
|
|
79
|
-
services.order_svc -> external.payment
|
|
80
|
-
|
|
81
|
-
data.redis <- gateway.rate_limit: "Rate limits"
|
|
1
|
+
# Microservices Architecture Template
|
|
2
|
+
# Replace placeholders with actual service names
|
|
3
|
+
|
|
4
|
+
direction: right
|
|
5
|
+
|
|
6
|
+
# External actors
|
|
7
|
+
user: "User" {
|
|
8
|
+
shape: person
|
|
9
|
+
}
|
|
10
|
+
|
|
11
|
+
# Frontend layer
|
|
12
|
+
frontend: "Frontend" {
|
|
13
|
+
style.fill: "#e3f2fd"
|
|
14
|
+
|
|
15
|
+
web: "Web App"
|
|
16
|
+
mobile: "Mobile App"
|
|
17
|
+
}
|
|
18
|
+
|
|
19
|
+
# API layer
|
|
20
|
+
gateway: "API Gateway" {
|
|
21
|
+
style.fill: "#fff3e0"
|
|
22
|
+
|
|
23
|
+
auth: "Auth"
|
|
24
|
+
routing: "Router"
|
|
25
|
+
rate_limit: "Rate Limiter"
|
|
26
|
+
}
|
|
27
|
+
|
|
28
|
+
# Services layer
|
|
29
|
+
services: "Services" {
|
|
30
|
+
style.fill: "#e8f5e9"
|
|
31
|
+
|
|
32
|
+
user_svc: "User Service"
|
|
33
|
+
order_svc: "Order Service"
|
|
34
|
+
notification_svc: "Notification Service"
|
|
35
|
+
}
|
|
36
|
+
|
|
37
|
+
# Data layer
|
|
38
|
+
data: "Data Stores" {
|
|
39
|
+
style.fill: "#fce4ec"
|
|
40
|
+
|
|
41
|
+
postgres: "PostgreSQL" {
|
|
42
|
+
shape: cylinder
|
|
43
|
+
}
|
|
44
|
+
redis: "Redis" {
|
|
45
|
+
shape: cylinder
|
|
46
|
+
}
|
|
47
|
+
queue: "Message Queue" {
|
|
48
|
+
shape: queue
|
|
49
|
+
}
|
|
50
|
+
}
|
|
51
|
+
|
|
52
|
+
# External services
|
|
53
|
+
external: "External" {
|
|
54
|
+
style.stroke-dash: 3
|
|
55
|
+
|
|
56
|
+
email: "Email Provider"
|
|
57
|
+
payment: "Payment Gateway"
|
|
58
|
+
}
|
|
59
|
+
|
|
60
|
+
# Connections
|
|
61
|
+
user -> frontend.web
|
|
62
|
+
user -> frontend.mobile
|
|
63
|
+
|
|
64
|
+
frontend.web -> gateway.routing
|
|
65
|
+
frontend.mobile -> gateway.routing
|
|
66
|
+
|
|
67
|
+
gateway.routing -> gateway.auth
|
|
68
|
+
gateway.auth -> services.user_svc
|
|
69
|
+
gateway.routing -> services.order_svc
|
|
70
|
+
gateway.routing -> services.notification_svc
|
|
71
|
+
|
|
72
|
+
services.user_svc -> data.postgres
|
|
73
|
+
services.order_svc -> data.postgres
|
|
74
|
+
services.order_svc -> data.queue
|
|
75
|
+
|
|
76
|
+
services.notification_svc -> data.queue
|
|
77
|
+
services.notification_svc -> external.email
|
|
78
|
+
|
|
79
|
+
services.order_svc -> external.payment
|
|
80
|
+
|
|
81
|
+
data.redis <- gateway.rate_limit: "Rate limits"
|
|
@@ -1,37 +1,37 @@
|
|
|
1
|
-
%% Project Gantt Chart Template
|
|
2
|
-
%% Replace with your actual project timeline
|
|
3
|
-
|
|
4
|
-
gantt
|
|
5
|
-
title Project Timeline
|
|
6
|
-
dateFormat YYYY-MM-DD
|
|
7
|
-
excludes weekends
|
|
8
|
-
|
|
9
|
-
section Planning
|
|
10
|
-
Requirements gathering :a1, 2024-01-08, 5d
|
|
11
|
-
Technical design :a2, after a1, 5d
|
|
12
|
-
Architecture review :milestone, m1, after a2, 0d
|
|
13
|
-
|
|
14
|
-
section Development
|
|
15
|
-
Core infrastructure :b1, after m1, 10d
|
|
16
|
-
Feature A implementation :b2, after b1, 8d
|
|
17
|
-
Feature B implementation :b3, after b1, 12d
|
|
18
|
-
Integration :b4, after b2, 5d
|
|
19
|
-
Development complete :milestone, m2, after b4, 0d
|
|
20
|
-
|
|
21
|
-
section Testing
|
|
22
|
-
Unit testing :c1, after b2, 5d
|
|
23
|
-
Integration testing :c2, after m2, 5d
|
|
24
|
-
Performance testing :c3, after c2, 3d
|
|
25
|
-
UAT :c4, after c3, 5d
|
|
26
|
-
Testing complete :milestone, m3, after c4, 0d
|
|
27
|
-
|
|
28
|
-
section Deployment
|
|
29
|
-
Staging deployment :d1, after m3, 2d
|
|
30
|
-
Production preparation :d2, after d1, 2d
|
|
31
|
-
Go-live :milestone, m4, after d2, 0d
|
|
32
|
-
Post-launch support :d3, after m4, 5d
|
|
33
|
-
|
|
34
|
-
section Documentation
|
|
35
|
-
API documentation :e1, after b1, 15d
|
|
36
|
-
User guide :e2, after c2, 10d
|
|
37
|
-
Release notes :e3, after m3, 3d
|
|
1
|
+
%% Project Gantt Chart Template
|
|
2
|
+
%% Replace with your actual project timeline
|
|
3
|
+
|
|
4
|
+
gantt
|
|
5
|
+
title Project Timeline
|
|
6
|
+
dateFormat YYYY-MM-DD
|
|
7
|
+
excludes weekends
|
|
8
|
+
|
|
9
|
+
section Planning
|
|
10
|
+
Requirements gathering :a1, 2024-01-08, 5d
|
|
11
|
+
Technical design :a2, after a1, 5d
|
|
12
|
+
Architecture review :milestone, m1, after a2, 0d
|
|
13
|
+
|
|
14
|
+
section Development
|
|
15
|
+
Core infrastructure :b1, after m1, 10d
|
|
16
|
+
Feature A implementation :b2, after b1, 8d
|
|
17
|
+
Feature B implementation :b3, after b1, 12d
|
|
18
|
+
Integration :b4, after b2, 5d
|
|
19
|
+
Development complete :milestone, m2, after b4, 0d
|
|
20
|
+
|
|
21
|
+
section Testing
|
|
22
|
+
Unit testing :c1, after b2, 5d
|
|
23
|
+
Integration testing :c2, after m2, 5d
|
|
24
|
+
Performance testing :c3, after c2, 3d
|
|
25
|
+
UAT :c4, after c3, 5d
|
|
26
|
+
Testing complete :milestone, m3, after c4, 0d
|
|
27
|
+
|
|
28
|
+
section Deployment
|
|
29
|
+
Staging deployment :d1, after m3, 2d
|
|
30
|
+
Production preparation :d2, after d1, 2d
|
|
31
|
+
Go-live :milestone, m4, after d2, 0d
|
|
32
|
+
Post-launch support :d3, after m4, 5d
|
|
33
|
+
|
|
34
|
+
section Documentation
|
|
35
|
+
API documentation :e1, after b1, 15d
|
|
36
|
+
User guide :e2, after c2, 10d
|
|
37
|
+
Release notes :e3, after m3, 3d
|
|
@@ -1,42 +1,42 @@
|
|
|
1
|
-
%% State Machine Template
|
|
2
|
-
%% Replace states and transitions with your workflow
|
|
3
|
-
|
|
4
|
-
stateDiagram-v2
|
|
5
|
-
[*] --> Draft: create
|
|
6
|
-
|
|
7
|
-
Draft --> Submitted: submit
|
|
8
|
-
Draft --> Cancelled: cancel
|
|
9
|
-
|
|
10
|
-
Submitted --> UnderReview: assign_reviewer
|
|
11
|
-
Submitted --> Draft: request_changes
|
|
12
|
-
|
|
13
|
-
UnderReview --> Approved: approve
|
|
14
|
-
UnderReview --> Rejected: reject
|
|
15
|
-
UnderReview --> Draft: request_changes
|
|
16
|
-
|
|
17
|
-
Approved --> Published: publish
|
|
18
|
-
Approved --> Draft: unpublish
|
|
19
|
-
|
|
20
|
-
Rejected --> Draft: revise
|
|
21
|
-
Rejected --> Cancelled: abandon
|
|
22
|
-
|
|
23
|
-
Published --> Archived: archive
|
|
24
|
-
Published --> Draft: unpublish
|
|
25
|
-
|
|
26
|
-
Cancelled --> [*]
|
|
27
|
-
Archived --> [*]
|
|
28
|
-
|
|
29
|
-
note right of Draft
|
|
30
|
-
Initial state for new items.
|
|
31
|
-
Can be edited freely.
|
|
32
|
-
end note
|
|
33
|
-
|
|
34
|
-
note right of UnderReview
|
|
35
|
-
Assigned to a reviewer.
|
|
36
|
-
Cannot be edited by author.
|
|
37
|
-
end note
|
|
38
|
-
|
|
39
|
-
note right of Published
|
|
40
|
-
Visible to all users.
|
|
41
|
-
Audit trail maintained.
|
|
42
|
-
end note
|
|
1
|
+
%% State Machine Template
|
|
2
|
+
%% Replace states and transitions with your workflow
|
|
3
|
+
|
|
4
|
+
stateDiagram-v2
|
|
5
|
+
[*] --> Draft: create
|
|
6
|
+
|
|
7
|
+
Draft --> Submitted: submit
|
|
8
|
+
Draft --> Cancelled: cancel
|
|
9
|
+
|
|
10
|
+
Submitted --> UnderReview: assign_reviewer
|
|
11
|
+
Submitted --> Draft: request_changes
|
|
12
|
+
|
|
13
|
+
UnderReview --> Approved: approve
|
|
14
|
+
UnderReview --> Rejected: reject
|
|
15
|
+
UnderReview --> Draft: request_changes
|
|
16
|
+
|
|
17
|
+
Approved --> Published: publish
|
|
18
|
+
Approved --> Draft: unpublish
|
|
19
|
+
|
|
20
|
+
Rejected --> Draft: revise
|
|
21
|
+
Rejected --> Cancelled: abandon
|
|
22
|
+
|
|
23
|
+
Published --> Archived: archive
|
|
24
|
+
Published --> Draft: unpublish
|
|
25
|
+
|
|
26
|
+
Cancelled --> [*]
|
|
27
|
+
Archived --> [*]
|
|
28
|
+
|
|
29
|
+
note right of Draft
|
|
30
|
+
Initial state for new items.
|
|
31
|
+
Can be edited freely.
|
|
32
|
+
end note
|
|
33
|
+
|
|
34
|
+
note right of UnderReview
|
|
35
|
+
Assigned to a reviewer.
|
|
36
|
+
Cannot be edited by author.
|
|
37
|
+
end note
|
|
38
|
+
|
|
39
|
+
note right of Published
|
|
40
|
+
Visible to all users.
|
|
41
|
+
Audit trail maintained.
|
|
42
|
+
end note
|