Skip to content

Commit 1113193

Browse files
committed
chore: establish Open Workflow Library foundation
Reposition project as Open Workflow Library. Add audit, catalog, validation, search, runtime proof, and review tooling. Add generated workflow template pack and validation reports. Add security, contribution, docs, CI, and public-readiness hardening. Normalize license to standard MIT. Sanitize detected credential-like workflow values with placeholders. No behavioural n8n execution, production readiness, or full multi-framework export is claimed.
1 parent d899968 commit 1113193

1,429 files changed

Lines changed: 405681 additions & 268 deletions

File tree

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.
Lines changed: 67 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,67 @@
1+
name: Bug report
2+
description: Report a defect in a tool, schema, generated workflow, or docs.
3+
title: "[bug] "
4+
labels:
5+
- bug
6+
- needs-triage
7+
body:
8+
- type: markdown
9+
attributes:
10+
value: |
11+
Thanks for taking the time to file a bug. Please redact any real
12+
credentials, customer data, webhook URLs, or PII from logs and
13+
screenshots before posting.
14+
- type: input
15+
id: tool_or_file
16+
attributes:
17+
label: Tool, schema, or file affected
18+
description: e.g. `tools/audit_workflows.py`, `schemas/workflow-ir.schema.json`, or a path under `workflows/`.
19+
placeholder: tools/<name>.py
20+
validations:
21+
required: true
22+
- type: textarea
23+
id: what_happened
24+
attributes:
25+
label: What happened
26+
description: Describe the unexpected behaviour. Include any console output, with secrets redacted.
27+
validations:
28+
required: true
29+
- type: textarea
30+
id: expected
31+
attributes:
32+
label: What you expected
33+
validations:
34+
required: true
35+
- type: textarea
36+
id: repro
37+
attributes:
38+
label: Reproduction steps
39+
description: Exact command(s) and inputs. Use `<REDACTED>` for any sensitive value.
40+
placeholder: |
41+
1. python tools/<name>.py "..."
42+
2. observe ...
43+
validations:
44+
required: true
45+
- type: input
46+
id: python
47+
attributes:
48+
label: Python version
49+
placeholder: e.g. 3.12.4
50+
validations:
51+
required: false
52+
- type: input
53+
id: os
54+
attributes:
55+
label: OS
56+
placeholder: e.g. Ubuntu 24.04, macOS 14, Windows 11
57+
validations:
58+
required: false
59+
- type: checkboxes
60+
id: safety
61+
attributes:
62+
label: Safety checks
63+
options:
64+
- label: I confirm no real credentials, tokens, JWTs, API keys, webhook URLs, or PII are pasted in this issue.
65+
required: true
66+
- label: I confirm any attached logs have been redacted.
67+
required: true
Lines changed: 62 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,62 @@
1+
name: Feature request
2+
description: Propose a new tool, schema field, exporter, validator, doc, or other change.
3+
title: "[feature] "
4+
labels:
5+
- enhancement
6+
- needs-triage
7+
body:
8+
- type: markdown
9+
attributes:
10+
value: |
11+
Please review [`docs/roadmap.md`](../docs/roadmap.md) before opening
12+
a feature request — the roadmap lists what is in scope and what is
13+
explicitly out of scope.
14+
- type: textarea
15+
id: problem
16+
attributes:
17+
label: Problem
18+
description: What is the concrete problem this feature would solve? Who is affected?
19+
validations:
20+
required: true
21+
- type: textarea
22+
id: proposal
23+
attributes:
24+
label: Proposal
25+
description: What should change? Be specific about files, tools, schema fields, or docs.
26+
validations:
27+
required: true
28+
- type: textarea
29+
id: alternatives
30+
attributes:
31+
label: Alternatives considered
32+
validations:
33+
required: false
34+
- type: dropdown
35+
id: area
36+
attributes:
37+
label: Area
38+
options:
39+
- audit / secret scan
40+
- catalog / search
41+
- schemas
42+
- prompt-to-IR
43+
- IR-to-n8n exporter
44+
- static n8n validator
45+
- repair proposals
46+
- learning events
47+
- review queue
48+
- docs / wiki
49+
- CI
50+
- new exporter (Dify / LangGraph / Make / Zapier / other)
51+
- other
52+
validations:
53+
required: true
54+
- type: checkboxes
55+
id: scope_check
56+
attributes:
57+
label: Scope check
58+
options:
59+
- label: I have read `docs/roadmap.md` and this feature is in scope, or I am proposing a scope change with rationale.
60+
required: true
61+
- label: I am not requesting autonomous self-improvement, regulatory certification, or behavioural-validation claims without an actual sandbox.
62+
required: true
Lines changed: 105 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,105 @@
1+
name: Workflow submission
2+
description: Propose adding a workflow file to this repository.
3+
title: "[workflow] "
4+
labels:
5+
- workflow-submission
6+
- needs-triage
7+
body:
8+
- type: markdown
9+
attributes:
10+
value: |
11+
Workflow submissions must pass the project's audit cleanly and
12+
carry no real credentials. Review
13+
[`CONTRIBUTING.md`](../CONTRIBUTING.md) before opening this issue.
14+
- type: input
15+
id: title
16+
attributes:
17+
label: Workflow title
18+
placeholder: e.g. "Lead intake with HubSpot enrichment"
19+
validations:
20+
required: true
21+
- type: dropdown
22+
id: framework
23+
attributes:
24+
label: Framework
25+
options:
26+
- n8n
27+
- dify
28+
- langgraph
29+
- node-red
30+
- make
31+
- zapier
32+
- pipedream
33+
- airflow
34+
- temporal
35+
- other / unknown
36+
validations:
37+
required: true
38+
- type: input
39+
id: category
40+
attributes:
41+
label: Category
42+
description: e.g. sales, customer-support, homecare-admin, finance-admin, devops, etc.
43+
validations:
44+
required: true
45+
- type: dropdown
46+
id: risk
47+
attributes:
48+
label: Risk level (operator-declared)
49+
options:
50+
- low
51+
- medium
52+
- high
53+
- regulated-domain (healthcare / homecare / legal / finance / security)
54+
validations:
55+
required: true
56+
- type: textarea
57+
id: integrations
58+
attributes:
59+
label: Required integrations
60+
description: List by symbolic service name only. Do not paste credentials.
61+
placeholder: |
62+
- hubspot (API key)
63+
- slack (OAuth)
64+
validations:
65+
required: true
66+
- type: textarea
67+
id: summary
68+
attributes:
69+
label: Workflow summary
70+
description: What does the workflow do? What is its trigger? What is its output?
71+
validations:
72+
required: true
73+
- type: textarea
74+
id: behavioural_testing
75+
attributes:
76+
label: Behavioural testing status
77+
description: Have you imported and executed this workflow in n8n (or the relevant framework)? If yes, briefly describe the test environment and outcome. If no, say so.
78+
placeholder: |
79+
- Imported into: <n8n version / sandbox>
80+
- Triggered with: <synthetic payload>
81+
- Result: <observed behaviour>
82+
OR
83+
- Not behaviourally tested.
84+
validations:
85+
required: true
86+
- type: textarea
87+
id: safety
88+
attributes:
89+
label: Safety notes (required for regulated domains)
90+
description: For healthcare, homecare, legal, finance, or security workflows, describe the admin-only scope and any compliance considerations the operator must handle.
91+
validations:
92+
required: false
93+
- type: checkboxes
94+
id: contributor_checklist
95+
attributes:
96+
label: Contributor checklist
97+
options:
98+
- label: I confirm no real credentials, tokens, JWTs, API keys, webhook URLs, customer emails, or phone numbers appear in the proposed workflow.
99+
required: true
100+
- label: I ran `python tools/audit_workflows.py` locally and the workflow added no new `secretFindings`.
101+
required: true
102+
- label: I used placeholder values (`REPLACE_WITH_YOUR_VALUE`, `api.example.com`, etc.) where credentials or hosts would appear.
103+
required: true
104+
- label: If this workflow targets a regulated domain, I added the required admin-only notice in the workflow notes/README.
105+
required: false

.github/PULL_REQUEST_TEMPLATE.md

Lines changed: 65 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,65 @@
1+
<!--
2+
Thanks for contributing. Please redact any real credentials or PII from
3+
descriptions, logs, and screenshots before opening this PR.
4+
-->
5+
6+
## Summary
7+
8+
<!-- One paragraph: what changes and why. -->
9+
10+
## Type of change
11+
12+
- [ ] Bug fix
13+
- [ ] New workflow file(s)
14+
- [ ] Tool or schema change
15+
- [ ] Docs / wiki only
16+
- [ ] CI / `.github/` only
17+
- [ ] Other (describe)
18+
19+
## Affected paths
20+
21+
<!-- e.g. tools/<name>.py, schemas/<name>.schema.json, workflows/... -->
22+
23+
## Behavioural testing
24+
25+
<!-- For workflow PRs only. -->
26+
- [ ] Not applicable (tool / schema / docs change).
27+
- [ ] I imported and executed the affected workflow(s) in n8n
28+
(or the relevant framework). I described the environment and
29+
outcome below.
30+
31+
Behavioural testing notes:
32+
33+
<!-- e.g. "Imported into local n8n v1.X; triggered with synthetic
34+
payload {...}; observed expected fields in the response." -->
35+
36+
## Local validation (required for tool / schema / workflow PRs)
37+
38+
- [ ] `python tools/audit_workflows.py` — no new `secretFindings`, no
39+
new `invalidJsonFiles`.
40+
- [ ] `python tools/validate_generated_pack.py``ALL CHECKS PASSED`
41+
(if the generated pack was touched).
42+
- [ ] `python tools/validate_schemas.py` — all gates `PASS`.
43+
- [ ] `python tools/build_unified_catalog.py` — runs cleanly.
44+
- [ ] `python tools/build_review_queue.py` — runs cleanly.
45+
- [ ] `python tools/final_readiness_check.py` — exit 0.
46+
47+
## Safety checklist (hard requirements)
48+
49+
- [ ] No real credentials, tokens, JWTs, API keys, bearer tokens, webhook
50+
URLs, customer emails, phone numbers, addresses, or other PII
51+
appear anywhere in this PR.
52+
- [ ] Placeholder hosts only (`api.example.com`, `api.example.invalid`,
53+
`localhost`).
54+
- [ ] No autonomous self-improvement language has been introduced.
55+
- [ ] No "production-ready", "behaviourally validated", "fully
56+
autonomous", or compliance-claim language has been introduced.
57+
- [ ] No AI attribution has been added to any generated file or to this
58+
PR description.
59+
- [ ] If this PR touches a regulated-domain workflow (healthcare /
60+
homecare / legal / finance / security), the admin-only notice is
61+
present and accurate.
62+
63+
## Reviewer notes
64+
65+
<!-- Anything a reviewer should look at first; any open questions. -->

0 commit comments

Comments
 (0)