Operations Manual Writer
This skill guides agents producing operations manual content for the GSD OpenStack Cloud Platform. Every procedure must follow NASA document standards adapted for cloud operations per SP-6105 SS 5.5 (Product Transition) and NPR 7123.1 Process 9 (Product Transition). The operations manual is the primary handoff artifact between the deployment crew and the operations crew.
The goal is consistency and verifiability: every procedure an operator follows must be structured so that another agent (doc-verifier) can confirm the procedure matches the running system, and another operator can execute it without ambiguity.
Procedure Format Template
Every operational procedure follows the standard format derived from NASA-STD-3001 (adapted for cloud operations) as specified in the project reference document (Section 3.4 of gsd-openstack-nasa-reference.md):
PROCEDURE ID: OPS-{SERVICE}-{NUMBER}
TITLE: {What this procedure accomplishes}
SE PHASE: Phase E (Operations & Sustainment)
NPR REFERENCE: NPR 7123.1 SS 3.2 Process 9 (Product Transition)
LAST VERIFIED: {YYYY-MM-DD} against {OpenStack release version}
VERIFIED BY: {doc-verifier agent / manual verification}
PURPOSE
{One to three sentences explaining why an operator would perform this
procedure and when it should be executed.}
PRECONDITIONS
1. {System state required before starting}
2. {Services that must be running}
3. {Access credentials or permissions needed}
4. {Backup state confirmed if procedure is destructive}
SAFETY CONSIDERATIONS
- {What could go wrong during this procedure}
- {Data loss risks and mitigation}
- {Service disruption scope and duration}
- {Dependencies that may be affected}
PROCEDURE
Step 1: {Exact command or action}
Expected result: {What the operator should see}
If unexpected: {What to do -- specific recovery action or escalation}
Step 2: {Exact command or action}
Expected result: {What the operator should see}
If unexpected: {What to do}
Step N: ...
VERIFICATION
1. {How to confirm the procedure succeeded}
2. {Specific command and expected output}
3. {Service health check to run after completion}
ROLLBACK
1. {How to undo the procedure if needed}
2. {Steps in reverse order with commands}
3. {How to confirm rollback succeeded}
REFERENCES
- {Related OPS procedures by ID}
- {Related runbooks by RB-{SERVICE}-{NNN} ID}
- {OpenStack documentation URL}
- {SP-6105 or NPR 7123.1 section reference}
Procedure ID Format
- Pattern:
OPS-{SERVICE}-{NUMBER}
- SERVICE: Uppercase service name (KEYSTONE, NOVA, NEUTRON, CINDER, GLANCE, SWIFT, HEAT, HORIZON, KOLLA, GENERAL)
- NUMBER: 3-digit sequential number per service, starting at 001
- Cross-service procedures use GENERAL prefix
- Example:
OPS-KEYSTONE-001, OPS-NOVA-003, OPS-GENERAL-002
Writing Standards
These rules are mandatory for all procedure authoring. Violations cause verification failures.
Language Rules
- Imperative mood for all procedure steps. Write "Run", "Verify", "Check" -- never "You should run" or "The operator runs".
- Exact commands only. Every step must include the precise command or action. Never write "configure as needed" or "adjust accordingly".
- Expected results for every step. State what the operator should see after executing the step. Include example output where practical.
- If-unexpected branches for failure-prone steps. Any step that could fail must include a recovery path: retry, escalate, or redirect to a troubleshooting runbook.
- No assumptions about operator knowledge. Spell out paths, service names, and configuration file locations. Do not assume the operator knows where files are stored.
Safety Rules
- Safety considerations before any destructive operation. If a procedure can cause data loss, service disruption, or configuration damage, the safety section must be populated.
- Backup confirmation before destructive steps. Any procedure that modifies data or configuration must confirm backup state in preconditions.
- Rollback section is mandatory. Every procedure must have a rollback path. If a procedure is truly irreversible, the rollback section must state this explicitly with justification.
Reference Rules
- All external references must include NASA document identifiers. Cross-references to NASA methodology use SP-6105 SS {section} or NPR 7123.1 SS {section} format.
- OpenStack documentation links must be specific. Link to the exact page, not the top-level docs site. Include the OpenStack release name when relevant.
- Related procedures linked by ID. Use OPS-{SERVICE}-{NUMBER} for operations manual cross-references and RB-{SERVICE}-{NNN} for runbook cross-references.
Per-Service Procedure Categories
Each OpenStack service in the operations manual requires procedures in these standard categories. This ensures consistent coverage across all services.
Required Categories
| Category |
Frequency |
Description |
| Service Health Check |
Daily |
Verify service is running, API responds, logs show no errors |
| Configuration Verification |
After changes |
Confirm configuration matches expected state after any modification |
| Backup and Restore |
As scheduled |
Create backup of service data/config and verify restore capability |
| Upgrade (Minor) |
Per release |
Apply minor version updates with pre-check, upgrade, post-verify |
| Upgrade (Major) |
Per release cycle |
Apply major version updates with extended testing and rollback plan |
| Troubleshooting Common Failures |
On demand |
Diagnose and resolve the 3-5 most common failure modes per service |
| Security Audit |
Monthly |
Verify security configuration, certificates, RBAC policies, and access logs |
Service-Specific Additions
Some services require additional procedure categories beyond the standard set:
- Keystone: Token rotation, federation configuration, catalog management
- Nova: Live migration, flavor management, hypervisor maintenance
- Neutron: Network topology changes, floating IP management, security group audit
- Cinder: Volume migration, backend failover, snapshot management
- Glance: Image format conversion, metadata management, backend rotation
- Swift: Ring rebalancing, replication monitoring, container quota management
- Heat: Stack template validation, resource dependency analysis, orphan cleanup
- Horizon: Session management, custom panel deployment, theme configuration
Verification Requirements
Procedures are not complete until they are verified. This section defines how verification works within the documentation lifecycle.
Verification Process
- Every procedure must have a verification section that proves the procedure succeeded. The verification section contains specific commands with expected output.
- Procedures must be testable against a running system. A procedure that cannot be verified against the actual infrastructure is incomplete.
- The doc-verifier skill handles automated verification. When a procedure is marked for automated verification, doc-verifier extracts the verification commands and runs them against the system.
- Last-verified date and system version must be recorded. The LAST VERIFIED field in the procedure header tracks when the procedure was last confirmed accurate.
- Unverified procedures must carry a visible warning. If a procedure has not been verified against the current system version, add a warning block at the top.
Unverified Warning Format
WARNING: This procedure has not been verified against the current system.
Last verified: {date} against {version}.
Current system: {version}.
Use with caution and verify each step manually.
Output Location
All operations manual procedures are written to docs/operations-manual/ following the filesystem contracts:
| File |
Content |
docs/operations-manual/keystone-procedures.md |
All OPS-KEYSTONE-* procedures |
docs/operations-manual/nova-procedures.md |
All OPS-NOVA-* procedures |
docs/operations-manual/neutron-procedures.md |
All OPS-NEUTRON-* procedures |
docs/operations-manual/cinder-procedures.md |
All OPS-CINDER-* procedures |
docs/operations-manual/glance-procedures.md |
All OPS-GLANCE-* procedures |
docs/operations-manual/swift-procedures.md |
All OPS-SWIFT-* procedures |
docs/operations-manual/heat-procedures.md |
All OPS-HEAT-* procedures |
docs/operations-manual/horizon-procedures.md |
All OPS-HORIZON-* procedures |
Each file contains all procedures for that service, ordered by procedure number.
Cross-References
| Resource |
Purpose |
skills/methodology/nasa-se/SKILL.md |
SE lifecycle phase context -- procedures map to Phase E (Operations & Sustainment) per SP-6105 SS 5.4-5.5 |
skills/methodology/doc-verifier/SKILL.md |
Automated verification methods for procedure accuracy against running infrastructure |
skills/methodology/runbook-generator/SKILL.md |
Runbook format alignment -- procedures reference runbooks for troubleshooting branches |
docs/filesystem-contracts.md |
Output location contracts for docs/operations-manual/ directory |
| NASA SP-6105 SS 5.5 |
Product Transition process -- operations documentation as transition artifact |
| NPR 7123.1 SS 3.2 Process 9 |
Product Transition requirements -- procedures satisfy handoff documentation |
| NASA-STD-3001 (adapted) |
Procedure format origin -- adapted from crew procedures standard for cloud operations |
1---2name: ops-manual-writer3description: Guidance for writing OpenStack operations manual procedures following NASA document standards. Use when authoring per-service procedures, maintenance workflows, or operational documentation that must be verified against running infrastructure.4---5
6# Operations Manual Writer
7
8This skill guides agents producing operations manual content for the GSD OpenStack Cloud Platform. Every procedure must follow NASA document standards adapted for cloud operations per SP-6105 SS 5.5 (Product Transition) and NPR 7123.1 Process 9 (Product Transition). The operations manual is the primary handoff artifact between the deployment crew and the operations crew.
9
10The goal is consistency and verifiability: every procedure an operator follows must be structured so that another agent (doc-verifier) can confirm the procedure matches the running system, and another operator can execute it without ambiguity.
11
12## Procedure Format Template
13
14Every operational procedure follows the standard format derived from NASA-STD-3001 (adapted for cloud operations) as specified in the project reference document (Section 3.4 of gsd-openstack-nasa-reference.md):
15
16```
17PROCEDURE ID: OPS-{SERVICE}-{NUMBER}
18TITLE: {What this procedure accomplishes}
19SE PHASE: Phase E (Operations & Sustainment)
20NPR REFERENCE: NPR 7123.1 SS 3.2 Process 9 (Product Transition)
21LAST VERIFIED: {YYYY-MM-DD} against {OpenStack release version}
22VERIFIED BY: {doc-verifier agent / manual verification}
23
24PURPOSE
25 {One to three sentences explaining why an operator would perform this
26 procedure and when it should be executed.}
27
28PRECONDITIONS
29 1. {System state required before starting}
30 2. {Services that must be running}
31 3. {Access credentials or permissions needed}
32 4. {Backup state confirmed if procedure is destructive}
33
34SAFETY CONSIDERATIONS
35 - {What could go wrong during this procedure}
36 - {Data loss risks and mitigation}
37 - {Service disruption scope and duration}
38 - {Dependencies that may be affected}
39
40PROCEDURE
41 Step 1: {Exact command or action}
42 Expected result: {What the operator should see}
43 If unexpected: {What to do -- specific recovery action or escalation}
44
45 Step 2: {Exact command or action}
46 Expected result: {What the operator should see}
47 If unexpected: {What to do}
48
49 Step N: ...
50
51VERIFICATION
52 1. {How to confirm the procedure succeeded}
53 2. {Specific command and expected output}
54 3. {Service health check to run after completion}
55
56ROLLBACK
57 1. {How to undo the procedure if needed}
58 2. {Steps in reverse order with commands}
59 3. {How to confirm rollback succeeded}
60
61REFERENCES
62 - {Related OPS procedures by ID}
63 - {Related runbooks by RB-{SERVICE}-{NNN} ID}
64 - {OpenStack documentation URL}
65 - {SP-6105 or NPR 7123.1 section reference}
66```
67
68### Procedure ID Format
69
70- Pattern: `OPS-{SERVICE}-{NUMBER}`
71- SERVICE: Uppercase service name (KEYSTONE, NOVA, NEUTRON, CINDER, GLANCE, SWIFT, HEAT, HORIZON, KOLLA, GENERAL)
72- NUMBER: 3-digit sequential number per service, starting at 001
73- Cross-service procedures use GENERAL prefix
74- Example: `OPS-KEYSTONE-001`, `OPS-NOVA-003`, `OPS-GENERAL-002`
75
76## Writing Standards
77
78These rules are mandatory for all procedure authoring. Violations cause verification failures.
79
80### Language Rules
81
821. **Imperative mood for all procedure steps.** Write "Run", "Verify", "Check" -- never "You should run" or "The operator runs".
832. **Exact commands only.** Every step must include the precise command or action. Never write "configure as needed" or "adjust accordingly".
843. **Expected results for every step.** State what the operator should see after executing the step. Include example output where practical.
854. **If-unexpected branches for failure-prone steps.** Any step that could fail must include a recovery path: retry, escalate, or redirect to a troubleshooting runbook.
865. **No assumptions about operator knowledge.** Spell out paths, service names, and configuration file locations. Do not assume the operator knows where files are stored.
87
88### Safety Rules
89
906. **Safety considerations before any destructive operation.** If a procedure can cause data loss, service disruption, or configuration damage, the safety section must be populated.
917. **Backup confirmation before destructive steps.** Any procedure that modifies data or configuration must confirm backup state in preconditions.
928. **Rollback section is mandatory.** Every procedure must have a rollback path. If a procedure is truly irreversible, the rollback section must state this explicitly with justification.
93
94### Reference Rules
95
969. **All external references must include NASA document identifiers.** Cross-references to NASA methodology use SP-6105 SS {section} or NPR 7123.1 SS {section} format.
9710. **OpenStack documentation links must be specific.** Link to the exact page, not the top-level docs site. Include the OpenStack release name when relevant.
9811. **Related procedures linked by ID.** Use OPS-{SERVICE}-{NUMBER} for operations manual cross-references and RB-{SERVICE}-{NNN} for runbook cross-references.
99
100## Per-Service Procedure Categories
101
102Each OpenStack service in the operations manual requires procedures in these standard categories. This ensures consistent coverage across all services.
103
104### Required Categories
105
106| Category | Frequency | Description |
107|----------|-----------|-------------|
108| Service Health Check | Daily | Verify service is running, API responds, logs show no errors |
109| Configuration Verification | After changes | Confirm configuration matches expected state after any modification |
110| Backup and Restore | As scheduled | Create backup of service data/config and verify restore capability |
111| Upgrade (Minor) | Per release | Apply minor version updates with pre-check, upgrade, post-verify |
112| Upgrade (Major) | Per release cycle | Apply major version updates with extended testing and rollback plan |
113| Troubleshooting Common Failures | On demand | Diagnose and resolve the 3-5 most common failure modes per service |
114| Security Audit | Monthly | Verify security configuration, certificates, RBAC policies, and access logs |
115
116### Service-Specific Additions
117
118Some services require additional procedure categories beyond the standard set:
119
120- **Keystone:** Token rotation, federation configuration, catalog management
121- **Nova:** Live migration, flavor management, hypervisor maintenance
122- **Neutron:** Network topology changes, floating IP management, security group audit
123- **Cinder:** Volume migration, backend failover, snapshot management
124- **Glance:** Image format conversion, metadata management, backend rotation
125- **Swift:** Ring rebalancing, replication monitoring, container quota management
126- **Heat:** Stack template validation, resource dependency analysis, orphan cleanup
127- **Horizon:** Session management, custom panel deployment, theme configuration
128
129## Verification Requirements
130
131Procedures are not complete until they are verified. This section defines how verification works within the documentation lifecycle.
132
133### Verification Process
134
1351. **Every procedure must have a verification section** that proves the procedure succeeded. The verification section contains specific commands with expected output.
1362. **Procedures must be testable against a running system.** A procedure that cannot be verified against the actual infrastructure is incomplete.
1373. **The doc-verifier skill handles automated verification.** When a procedure is marked for automated verification, doc-verifier extracts the verification commands and runs them against the system.
1384. **Last-verified date and system version must be recorded.** The LAST VERIFIED field in the procedure header tracks when the procedure was last confirmed accurate.
1395. **Unverified procedures must carry a visible warning.** If a procedure has not been verified against the current system version, add a warning block at the top.
140
141### Unverified Warning Format
142
143```
144WARNING: This procedure has not been verified against the current system.
145Last verified: {date} against {version}.
146Current system: {version}.
147Use with caution and verify each step manually.
148```
149
150## Output Location
151
152All operations manual procedures are written to `docs/operations-manual/` following the filesystem contracts:
153
154| File | Content |
155|------|---------|
156| `docs/operations-manual/keystone-procedures.md` | All OPS-KEYSTONE-* procedures |
157| `docs/operations-manual/nova-procedures.md` | All OPS-NOVA-* procedures |
158| `docs/operations-manual/neutron-procedures.md` | All OPS-NEUTRON-* procedures |
159| `docs/operations-manual/cinder-procedures.md` | All OPS-CINDER-* procedures |
160| `docs/operations-manual/glance-procedures.md` | All OPS-GLANCE-* procedures |
161| `docs/operations-manual/swift-procedures.md` | All OPS-SWIFT-* procedures |
162| `docs/operations-manual/heat-procedures.md` | All OPS-HEAT-* procedures |
163| `docs/operations-manual/horizon-procedures.md` | All OPS-HORIZON-* procedures |
164
165Each file contains all procedures for that service, ordered by procedure number.
166
167## Cross-References
168
169| Resource | Purpose |
170|----------|---------|
171| `skills/methodology/nasa-se/SKILL.md` | SE lifecycle phase context -- procedures map to Phase E (Operations & Sustainment) per SP-6105 SS 5.4-5.5 |
172| `skills/methodology/doc-verifier/SKILL.md` | Automated verification methods for procedure accuracy against running infrastructure |
173| `skills/methodology/runbook-generator/SKILL.md` | Runbook format alignment -- procedures reference runbooks for troubleshooting branches |
174| `docs/filesystem-contracts.md` | Output location contracts for `docs/operations-manual/` directory |
175| NASA SP-6105 SS 5.5 | Product Transition process -- operations documentation as transition artifact |
176| NPR 7123.1 SS 3.2 Process 9 | Product Transition requirements -- procedures satisfy handoff documentation |
177| NASA-STD-3001 (adapted) | Procedure format origin -- adapted from crew procedures standard for cloud operations |