mirror of
https://github.com/R0m1k3/CollectFlow.git
synced 2026-10-13 18:27:40 +02:00
2.8 KiB
2.8 KiB
name, description, nextStepFile, outputFile
| name | description | nextStepFile | outputFile |
|---|---|---|---|
| step-01-preflight | Verify prerequisites and detect CI platform | ./step-02-generate-pipeline.md | {test_artifacts}/ci-pipeline-progress.md |
Step 1: Preflight Checks
STEP GOAL
Verify CI prerequisites and determine target CI platform.
MANDATORY EXECUTION RULES
- 📖 Read the entire step file before acting
- ✅ Speak in
{communication_language} - 🚫 Halt if requirements fail
EXECUTION PROTOCOLS:
- 🎯 Follow the MANDATORY SEQUENCE exactly
- 💾 Record outputs before proceeding
- 📖 Load the next step only when instructed
CONTEXT BOUNDARIES:
- Available context: config, loaded artifacts, and knowledge fragments
- Focus: this step's goal only
- Limits: do not execute future steps
- Dependencies: prior steps' outputs (if any)
MANDATORY SEQUENCE
CRITICAL: Follow this sequence exactly. Do not skip, reorder, or improvise.
1. Verify Git Repository
.git/exists- Remote configured (if available)
If missing: HALT with "Git repository required for CI/CD setup."
2. Verify Test Framework
playwright.config.*orcypress.config.*exists- Framework installed in
package.json
If missing: HALT with "Run framework workflow first."
3. Ensure Tests Pass Locally
- Run the main test command (e.g.,
npm run test:e2e) - If failing: HALT and request fixes before CI setup
4. Detect CI Platform
- Check for existing CI config:
.github/workflows/*.yml(GitHub Actions).gitlab-ci.yml(GitLab CI).circleci/config.yml(Circle CI)Jenkinsfile
- If found, ask whether to update or replace
- If not found, infer from git remote (github.com → GitHub Actions)
- Respect
ci_platformif explicitly set
5. Read Environment Context
- Read
.nvmrcif present (default to Node 24+ LTS if missing) - Read
package.jsonfor dependency caching strategy
6. Save Progress
Save this step's accumulated work to {outputFile}.
-
If
{outputFile}does not exist (first save), create it with YAML frontmatter:--- stepsCompleted: ['step-01-preflight'] lastStep: 'step-01-preflight' lastSaved: '{date}' ---Then write this step's output below the frontmatter.
-
If
{outputFile}already exists, update:- Add
'step-01-preflight'tostepsCompletedarray (only if not already present) - Set
lastStep: 'step-01-preflight' - Set
lastSaved: '{date}' - Append this step's output to the appropriate section of the document.
- Add
Load next step: {nextStepFile}
🚨 SYSTEM SUCCESS/FAILURE METRICS:
✅ SUCCESS:
- Step completed in full with required outputs
❌ SYSTEM FAILURE:
- Skipped sequence steps or missing outputs Master Rule: Skipping steps is FORBIDDEN.