generated from DevPlus1/Unity-Customer-Template
Initial commit
This commit is contained in:
commit
ed87277ef8
64 changed files with 4639 additions and 0 deletions
113
docs/AUTOMATION.md
Normal file
113
docs/AUTOMATION.md
Normal file
|
|
@ -0,0 +1,113 @@
|
|||
# Automation
|
||||
|
||||
## Intentional Behavior
|
||||
|
||||
This repository is for customer debugging projects.
|
||||
|
||||
Customers are expected to upload broken code.
|
||||
|
||||
Because of that:
|
||||
|
||||
- Green workflow means automation completed.
|
||||
- Red workflow means automation failed.
|
||||
- Customer code errors are listed in `reports/errors.md`.
|
||||
- Broken customer code does not fail the workflow red.
|
||||
|
||||
This behavior is intentional for DevPlus1.
|
||||
|
||||
## Workflows
|
||||
|
||||
### `validate.yml`
|
||||
|
||||
- Runs on `push`
|
||||
- Runs on `pull_request`
|
||||
- Uses runner label `linux-dev`
|
||||
- Runs `tools/validate-code.sh`
|
||||
- Prints `reports/errors.md` into Forgejo logs
|
||||
- Fails only if the validation script crashes or `reports/errors.md` is missing
|
||||
|
||||
### `project-report.yml`
|
||||
|
||||
- Runs on `push`
|
||||
- Runs on `pull_request`
|
||||
- Uses runner label `linux-dev`
|
||||
- Runs `tools/validate-code.sh`
|
||||
- Runs `tools/project-report.sh`
|
||||
- Prints report summaries into Forgejo logs
|
||||
- Fails only if report generation crashes or required report files are missing
|
||||
|
||||
### `code-docs.yml`
|
||||
|
||||
- Runs on `push`
|
||||
- Runs on `pull_request`
|
||||
- Uses runner label `linux-dev`
|
||||
- Runs `tools/generate-code-docs.sh`
|
||||
- Prints code documentation summary output into Forgejo logs
|
||||
- Fails only if the documentation script crashes or required code documentation reports are missing
|
||||
|
||||
## Scripts
|
||||
|
||||
### `tools/validate-code.sh`
|
||||
|
||||
- Recursively scans the repository
|
||||
- Excludes common dependency and generated directories
|
||||
- Validates supported files when tools are installed
|
||||
- Always writes `reports/errors.md`
|
||||
- Always prints a terminal summary
|
||||
- Exits `0` even when customer code errors are found
|
||||
- Exits non-zero only for automation/report generation failure
|
||||
|
||||
### `tools/project-report.sh`
|
||||
|
||||
- Generates project analysis reports
|
||||
- Reads customer code error status when available
|
||||
- Writes summary and generated-file tracking reports
|
||||
- Exits non-zero only if the script itself cannot generate required outputs
|
||||
|
||||
### `tools/generate-code-docs.sh`
|
||||
|
||||
- Reads customer source files without modifying them
|
||||
- Generates best-effort API, file-purpose, Unity lifecycle, and call-map reports
|
||||
- Uses regex-based extraction and cautious wording
|
||||
- Exits non-zero only if report generation fails
|
||||
|
||||
## Generated Report Files
|
||||
|
||||
- `reports/errors.md`
|
||||
- `reports/project-flow.md`
|
||||
- `reports/file-summary.md`
|
||||
- `reports/languages.md`
|
||||
- `reports/summary.md`
|
||||
- `reports/generated-files.md`
|
||||
- `reports/customer-code-status.txt`
|
||||
- `reports/api-reference.md`
|
||||
- `reports/file-purpose.md`
|
||||
- `reports/unity-scripts.md`
|
||||
- `reports/call-map.md`
|
||||
- `reports/code-docs-summary.md`
|
||||
|
||||
## Validation Sample Files
|
||||
|
||||
The repository includes intentional validator fixtures under `tests/validation-samples/`.
|
||||
|
||||
These files exist to prove:
|
||||
|
||||
- valid samples are accepted
|
||||
- broken samples are reported
|
||||
- broken customer code does not force the workflow red
|
||||
|
||||
## Extending The System
|
||||
|
||||
To add more validators later:
|
||||
|
||||
1. Update `tools/validate-code.sh`
|
||||
2. Document the validator in `docs/VALIDATORS.md`
|
||||
3. Update `docs/AUTOMATION.md` and `docs/WORKFLOWS.md` if workflow behavior changes
|
||||
4. Update `docs/CODEX_INSTRUCTIONS.md`
|
||||
|
||||
To add more code documentation extraction later:
|
||||
|
||||
1. Update `tools/generate-code-docs.sh`
|
||||
2. Document new reports in `docs/REPORTS.md`
|
||||
3. Document workflow changes in `docs/WORKFLOWS.md`
|
||||
4. Update `docs/CODEX_INSTRUCTIONS.md`
|
||||
Loading…
Add table
Add a link
Reference in a new issue