Minimal project.json - rpapub/PropulsiveForce GitHub Wiki
Minimal Fixture Projects for Custom Workflow Analyzer Rules
This repository contains minimal UiPath Studio projects used to develop, verify, and reason about custom Workflow Analyzer rules. Each rule is represented by a pair of simple, focused projects: one compliant and one violating.
Structure
Each rule folder follows this structure:
RuleIdentifier_DescriptiveName/
βββ NoViolation/
β βββ project.json
β βββ Main.xaml
βββ Violation/
β βββ project.json
β βββ Main.xaml
βββ README.md (optional)
Violation
{
"name": "RuleIdentifier-Violating",
"description": "Demonstrates a UiPath project that omits the β¦ activity, thereby violating rule β¦. This project is intended to trigger the ruleβs error condition.",
"dependencies": {
"UiPath.System.Activities": "[22.10.4]",
"UiPath.Testing.Activities": "[22.10.3]"
},
"main": "Main.xaml",
"projectType": "Process",
"schemaVersion": "4.0",
"studioVersion": "22.10.5.0",
"targetFramework": "Windows"
}
NoViolation
{
"name": "RuleIdentifier-Compliant",
"description": "Demonstrates a UiPath project that includes a β¦ activity as required by rule β¦. This project complies with the custom Workflow Analyzer rule.",
"dependencies": {
"UiPath.System.Activities": "[22.10.4]",
"UiPath.Testing.Activities": "[22.10.3]"
},
"main": "Main.xaml",
"projectType": "Process",
"schemaVersion": "4.0",
"studioVersion": "22.10.5.0",
"targetFramework": "Windows"
}
Purpose
These projects are not production workflows or test cases. They are:
- Input artifacts for authoring custom Workflow Analyzer rules.
- Minimal reproducible contexts that isolate specific rule behaviors.
- Useful for manual inspection, rule debugging, or automated CI checks.
Project Conventions
Each project includes:
-
A minimal
Main.xaml
demonstrating presence or absence of the target pattern. -
A
project.json
with:- Rule-aligned name (
RuleID-Compliant
,RuleID-Violating
) - Short, descriptive
description
- Pinned, stable dependency versions
- Target framework:
Windows
- Rule-aligned name (
All .xaml
files are treated as binary and linguist-detectable in .gitattributes
.
Use Cases
- Rule authors use these to test detection logic against known inputs.
- Reviewers inspect these to understand expected rule behavior.
- CI systems may use these to validate rule correctness and stability.
Contribution Guidelines
- Follow naming convention:
RuleID_Description/
- Always include both
Violation/
andNoViolation/
- Keep workflows minimal and readable
- Use meaningful activity labels and consistent layout