@surlymochan/evalid 0.0.0-stage → 0.4.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +94 -0
- package/LICENSE +21 -0
- package/README.md +315 -2
- package/RELEASE_NOTES.md +124 -0
- package/atoms/registry.json +758 -0
- package/bin/xflow.js +7261 -0
- package/docs/adoption/README.md +128 -0
- package/docs/adoption/openflow-release-hardening.md +61 -0
- package/docs/benchmark-openflow-vs-gstack-superpowers-openspec-2026-05-25.md +81 -0
- package/docs/compatibility.md +52 -0
- package/docs/competitive-benchmark.md +108 -0
- package/docs/corps-operator-guide.md +75 -0
- package/docs/demo-proof.md +126 -0
- package/docs/examples-gallery.md +115 -0
- package/docs/fixtures/tracker-item.json +7 -0
- package/docs/goal-vs-codex.md +129 -0
- package/docs/gstack-comparison.md +88 -0
- package/docs/install-upgrade.md +133 -0
- package/docs/integrations.md +49 -0
- package/docs/launch-demo.md +123 -0
- package/docs/launch-dossier.md +180 -0
- package/docs/methodology.md +149 -0
- package/docs/npm-publish-handoff.md +96 -0
- package/docs/openspec-migration.md +106 -0
- package/docs/public-benchmark.md +68 -0
- package/docs/public-release.md +145 -0
- package/docs/quality-assessment.md +139 -0
- package/docs/quickstart.md +156 -0
- package/docs/reviewer-guide.md +43 -0
- package/docs/spec-kit-benchmark.md +73 -0
- package/docs/super-assistant-comparison.md +106 -0
- package/docs/superpowers-comparison.md +82 -0
- package/docs/team-adoption.md +123 -0
- package/docs/tooling-matrix.md +91 -0
- package/docs/walkthrough.md +76 -0
- package/docs/workflow-manual.md +1130 -0
- package/package.json +83 -4
- package/prompts/pencil-draft.md +46 -0
- package/prompts/pencil-refine.md +46 -0
- package/prompts/phase-artifact.md +24 -0
- package/prompts/phase-execution.md +32 -0
- package/schemas/competitor-reconstruction-contract.schema.json +91 -0
- package/schemas/llm-design-review-aggregate.schema.json +83 -0
- package/schemas/visual-benchmark.schema.json +978 -0
- package/schemas/workflow.schema.json +100 -0
- package/scripts/run-tests.mjs +23 -0
- package/scripts/takein_digest.py +139 -0
- package/specs/README.md +118 -0
- package/specs/architecture.md +36 -0
- package/specs/product.md +33 -0
- package/specs/workflow.md +349 -0
- package/src/agent_team/atoms/codex-app-bridge.js +8 -0
- package/src/agent_team/atoms/design/competitor-reconstruction-review.js +44 -0
- package/src/agent_team/atoms/design/contract-freeze.js +8 -0
- package/src/agent_team/atoms/design/generation-contract.js +442 -0
- package/src/agent_team/atoms/design/reconstruction-pack.js +246 -0
- package/src/agent_team/atoms/design/reference-surface-lock.js +49 -0
- package/src/agent_team/atoms/patch-challenge.js +19 -0
- package/src/agent_team/atoms/pencil/accept.js +9 -0
- package/src/agent_team/atoms/pencil/draft.js +365 -0
- package/src/agent_team/atoms/pencil/refine.js +229 -0
- package/src/agent_team/atoms/phase-run-dispatch.js +8 -0
- package/src/agent_team/atoms/team-run.js +380 -0
- package/src/agent_team/atoms/visual/aesthetic-review.js +231 -0
- package/src/agent_team/atoms/visual/benchmark-repair-plan.js +291 -0
- package/src/agent_team/atoms/visual/benchmark.js +1652 -0
- package/src/agent_team/atoms/visual/design-selection.js +23 -0
- package/src/agent_team/atoms/visual/direction-synthesis.js +124 -0
- package/src/agent_team/atoms/visual/dom-rect-export.js +129 -0
- package/src/agent_team/atoms/visual/image-diff.js +186 -0
- package/src/agent_team/atoms/visual/layout-competition.js +8 -0
- package/src/agent_team/atoms/visual/page-evidence-capture.js +806 -0
- package/src/agent_team/atoms/visual/playwright-runtime.js +8 -0
- package/src/agent_team/atoms/visual/review-aggregate.js +87 -0
- package/src/agent_team/atoms/visual/review.js +77 -0
- package/src/agent_team/atoms/visual/visual-report.js +197 -0
- package/src/agent_team/atoms/visual/visual-token-export.js +417 -0
- package/src/agent_team/common.js +311 -0
- package/src/core/atoms/agent-invoke.js +684 -0
- package/src/core/atoms/event/ingest.js +30 -0
- package/src/core/atoms/experience/digest.js +55 -0
- package/src/core/atoms/gate/artifact-verify.js +83 -0
- package/src/core/atoms/gate/competitor-contract-validate.js +119 -0
- package/src/core/atoms/gate/evidence-collect.js +64 -0
- package/src/core/atoms/gate/payload-from-phase-run.js +78 -0
- package/src/core/atoms/gate/visual-benchmark-validate.js +183 -0
- package/src/core/atoms/gate/workbench.js +79 -0
- package/src/core/atoms/intake/classify.js +15 -0
- package/src/core/atoms/intake/design-skill-select.js +16 -0
- package/src/core/atoms/intake/preview-or-refine.js +19 -0
- package/src/core/atoms/intake/recommend.js +20 -0
- package/src/core/atoms/intake/research-same-category.js +19 -0
- package/src/core/atoms/intervention/create.js +30 -0
- package/src/core/atoms/memory/manage.js +27 -0
- package/src/core/atoms/memory/mount.js +13 -0
- package/src/core/atoms/mission/create.js +19 -0
- package/src/core/atoms/mission/list.js +14 -0
- package/src/core/atoms/mission/show.js +26 -0
- package/src/core/atoms/notify/checkpoint.js +46 -0
- package/src/core/atoms/phase-run/complete.js +42 -0
- package/src/core/atoms/phase-run/fail.js +40 -0
- package/src/core/atoms/phase-run/persist.js +39 -0
- package/src/core/atoms/phase-run/start.js +30 -0
- package/src/core/atoms/plugin/run.js +76 -0
- package/src/core/atoms/policy/gate.js +90 -0
- package/src/core/atoms/policy/resolve.js +11 -0
- package/src/core/atoms/storage/sync.js +57 -0
- package/src/core/atoms/workflow/advance.js +25 -0
- package/src/core/atoms/workflow/guard.js +127 -0
- package/src/core/atoms/workflow/state-load.js +37 -0
- package/src/core/bindings.js +37 -0
- package/src/core/change-artifacts.js +134 -0
- package/src/core/competitive-score.js +265 -0
- package/src/core/concurrency-policy.js +35 -0
- package/src/core/execution-log.js +108 -0
- package/src/core/intake-recommendation.js +134 -0
- package/src/core/memory-state.js +62 -0
- package/src/core/mission-state.js +780 -0
- package/src/core/pending-gates.js +66 -0
- package/src/core/phase-cost.js +116 -0
- package/src/core/phase-run-read.js +27 -0
- package/src/core/policy-overlay.js +180 -0
- package/src/core/state-store.js +201 -0
- package/src/core/workflow-executor.js +1014 -0
- package/src/core/workflow-integrity.js +111 -0
- package/src/core/workflow-loader.js +163 -0
- package/src/core/workflow-rerun.js +84 -0
- package/src/core/workflow-state.js +119 -0
- package/src/server.js +1307 -0
- package/workflows/corps.yaml +481 -0
- package/workflows/yolo.yaml +241 -0
- package/xflow/README.md +76 -0
- package/xflow/aha/SKILL.md +82 -0
- package/xflow/aha/scripts/append_aha.py +50 -0
- package/xflow/archive/scripts/archive_change.py +338 -0
- package/xflow/archive/templates/merge-design.md +54 -0
- package/xflow/archive/templates/merge-workflow.md +26 -0
- package/xflow/atoms/__init__.py +6 -0
- package/xflow/atoms/a1_issue_create_or_patch.py +70 -0
- package/xflow/atoms/a2_branch_create_and_link.py +42 -0
- package/xflow/atoms/a3_repo_doctor.py +11 -0
- package/xflow/atoms/a4_project_set_status.py +11 -0
- package/xflow/atoms/a5_archive_commit_push_close.py +11 -0
- package/xflow/atoms/a6_pr_create.py +72 -0
- package/xflow/atoms/b1_change_scaffold.py +11 -0
- package/xflow/atoms/b2_status_read.py +16 -0
- package/xflow/atoms/b2b_status_write.py +20 -0
- package/xflow/atoms/b3_status_transition.py +27 -0
- package/xflow/atoms/b4_handoff_scaffold_or_refresh.py +11 -0
- package/xflow/atoms/b5_aha_append.py +11 -0
- package/xflow/atoms/b6_takein_digest.py +11 -0
- package/xflow/atoms/b6b_lookback_digest.py +11 -0
- package/xflow/atoms/b7_change_mission_bind.py +43 -0
- package/xflow/atoms/c1_mem.py +54 -0
- package/xflow/atoms/e6_gate_local_precheck.py +23 -0
- package/xflow/atoms/h1_design_lite_gate.py +74 -0
- package/xflow/atoms/i6a_tdd_run.py +107 -0
- package/xflow/atoms/i6b_tdd_proof_validate.py +184 -0
- package/xflow/atoms/i6c_tdd_quality_review.py +372 -0
- package/xflow/atoms/j1_tests_run.py +129 -0
- package/xflow/atoms/j4a_spec_consistency_structural.py +105 -0
- package/xflow/atoms/j4b_spec_delta_review.py +316 -0
- package/xflow/atoms/j4c_openspec_migration_map.py +121 -0
- package/xflow/atoms/j4d_spec_clarify_gate.py +373 -0
- package/xflow/atoms/j6_cr_review.py +443 -0
- package/xflow/atoms/k1_artifacts_complete_check.py +39 -0
- package/xflow/atoms/k2_merge_snippets_apply.py +11 -0
- package/xflow/atoms/k3_handoff_refresh.py +14 -0
- package/xflow/atoms/k4_mem_lesson_persist.py +65 -0
- package/xflow/atoms/k5_archive_publish.py +21 -0
- package/xflow/atoms/k6_aha_merge.py +42 -0
- package/xflow/atoms/tdd_lib.py +956 -0
- package/xflow/corps/SKILL.md +109 -0
- package/xflow/exec/scripts/set_issue_in_progress.py +159 -0
- package/xflow/goal/SKILL.md +150 -0
- package/xflow/handoff/SKILL.md +95 -0
- package/xflow/handoff/scripts/scaffold_handoff.py +304 -0
- package/xflow/lookback/SKILL.md +66 -0
- package/xflow/lookback/scripts/lookback_digest.py +46 -0
- package/xflow/openissue/scripts/open_issue_flow.py +438 -0
- package/xflow/plan/SKILL.md +47 -0
- package/xflow/ralph/SKILL.md +123 -0
- package/xflow/scripts/check_installed_xflow_skill_sync.sh +44 -0
- package/xflow/scripts/common.py +483 -0
- package/xflow/scripts/doctor.py +278 -0
- package/xflow/scripts/sync_installed_xflow_skill.sh +134 -0
- package/xflow/takein/SKILL.md +81 -0
- package/xflow/takein/scripts/takein_digest.py +88 -0
- package/xflow/yolo/SKILL.md +75 -0
- package/xflow/yolo/scripts/scaffold_specs_change.py +673 -0
- package/xflow/yolo/scripts/yolo_gate.py +312 -0
- package/xflow/yolo/templates/DESIGN.md +179 -0
|
@@ -0,0 +1,145 @@
|
|
|
1
|
+
# Public Release Gate
|
|
2
|
+
|
|
3
|
+
This page defines the final public-release boundary for evalid. It is intentionally stricter than local development because distribution is part of the product surface.
|
|
4
|
+
|
|
5
|
+
## Current Registry Status
|
|
6
|
+
|
|
7
|
+
The package name `evalid` was checked against the npm public registry during the release-hardening pass and returned `404 Not Found`, meaning no published package with that name was visible at that time.
|
|
8
|
+
|
|
9
|
+
Do not treat this as permanent ownership. Re-check before publishing.
|
|
10
|
+
|
|
11
|
+
```bash
|
|
12
|
+
npm view @surlymochan/evalid name version --json
|
|
13
|
+
```
|
|
14
|
+
|
|
15
|
+
## Release Check
|
|
16
|
+
|
|
17
|
+
Run:
|
|
18
|
+
|
|
19
|
+
```bash
|
|
20
|
+
npm run publish:check
|
|
21
|
+
xflow evaluate --json
|
|
22
|
+
xflow release status --json
|
|
23
|
+
xflow launch dossier --output docs/launch-dossier.md
|
|
24
|
+
xflow launch claims --json
|
|
25
|
+
xflow launch copy --json
|
|
26
|
+
xflow adoption trial --name <team-or-project> --source <tracker-or-pr> --track yolo --json
|
|
27
|
+
xflow goal audit --json
|
|
28
|
+
xflow adoption status --json
|
|
29
|
+
xflow package status --json
|
|
30
|
+
xflow package preflight --check-registry --check-auth --json
|
|
31
|
+
xflow launch audit --pre-publish --strict --json
|
|
32
|
+
xflow package audit --check-registry --json
|
|
33
|
+
xflow launch audit --strict
|
|
34
|
+
```
|
|
35
|
+
|
|
36
|
+
For the exact last-mile command sequence and current auth boundary, use
|
|
37
|
+
[npm Publish Handoff](./npm-publish-handoff.md).
|
|
38
|
+
|
|
39
|
+
This expands to:
|
|
40
|
+
|
|
41
|
+
```bash
|
|
42
|
+
npm run release:pack
|
|
43
|
+
npm publish --dry-run --access public
|
|
44
|
+
```
|
|
45
|
+
|
|
46
|
+
Expected proof:
|
|
47
|
+
|
|
48
|
+
- full test suite passes
|
|
49
|
+
- active-surface drift scan passes
|
|
50
|
+
- installed xflow skill diff is clean
|
|
51
|
+
- npm package dry-run excludes local config, tests, Python caches, and Finder metadata
|
|
52
|
+
- npm publish dry-run can construct the public package without mutating the registry
|
|
53
|
+
- evaluate gives a single machine-readable brief with score, Codex goal / Superpowers positioning, launch blockers, package evidence, release-owner status, safe claims, and the recommended first-run path
|
|
54
|
+
- launch dossier gives reviewers one concise, audit-backed summary of quality, goal comparison, yolo/corps proof paths, release gate, and blockers
|
|
55
|
+
- launch claims lists public claims that are safe now and claims that must wait for missing evidence
|
|
56
|
+
- launch copy generates announcement text, evaluation commands, and forbidden phrases from the same claim boundary
|
|
57
|
+
- launch audit includes `next_actions` so the release owner can see the exact commands needed to clear missing evidence
|
|
58
|
+
- launch audit embeds package preflight/audit `next_actions` under
|
|
59
|
+
`package_evidence` so automation can diagnose npm auth or registry blockers
|
|
60
|
+
without a second CLI call
|
|
61
|
+
- launch audit separates `available_surfaces` from `ready_surfaces` so runnable checks are not mistaken for evidence that has already passed
|
|
62
|
+
- goal audit proves `.xflow/GOAL.md` exists and the core skill family still consumes it before goal superiority claims are published
|
|
63
|
+
- package preflight confirms npm identity and package-name/version availability before the irreversible publish
|
|
64
|
+
- npm publish handoff records the current auth boundary and exact stop conditions
|
|
65
|
+
- pre-publish launch audit confirms the release is ready for the irreversible publish step, while still refusing to hide missing adoption or package proof
|
|
66
|
+
- package audit confirms the public npm registry reports the expected name and version
|
|
67
|
+
- launch audit separates verified engine/adoption/package evidence from missing registry proof
|
|
68
|
+
|
|
69
|
+
## Authentication Check
|
|
70
|
+
|
|
71
|
+
The real publish requires an authenticated npm session:
|
|
72
|
+
|
|
73
|
+
```bash
|
|
74
|
+
npm whoami
|
|
75
|
+
```
|
|
76
|
+
|
|
77
|
+
If this returns `E401 Unauthorized`, stop at `npm run publish:check`; the package is dry-run ready but cannot be published from this machine until npm auth is restored.
|
|
78
|
+
|
|
79
|
+
## Actual Publish Boundary
|
|
80
|
+
|
|
81
|
+
Only run the real publish after the release check is green and version ownership is confirmed.
|
|
82
|
+
|
|
83
|
+
```bash
|
|
84
|
+
npm publish --access public
|
|
85
|
+
```
|
|
86
|
+
|
|
87
|
+
## Required Pre-Publish Evidence
|
|
88
|
+
|
|
89
|
+
Record these in the release note or PR:
|
|
90
|
+
|
|
91
|
+
- `npm run release:pack`
|
|
92
|
+
- `npm run publish:check`
|
|
93
|
+
- `xflow evaluate --json`
|
|
94
|
+
- `xflow release status --json`
|
|
95
|
+
- `xflow launch dossier --output docs/launch-dossier.md`
|
|
96
|
+
- `xflow launch claims --json`
|
|
97
|
+
- `xflow launch copy --json`
|
|
98
|
+
- `xflow adoption trial --name <team-or-project> --source <tracker-or-pr> --track yolo --json`
|
|
99
|
+
- `xflow goal audit --json`
|
|
100
|
+
- `xflow adoption status --json`
|
|
101
|
+
- `xflow package status --json`
|
|
102
|
+
- `xflow package preflight --check-registry --check-auth --json`
|
|
103
|
+
- `xflow launch audit --pre-publish --strict --json`
|
|
104
|
+
- `xflow adoption validate --json`
|
|
105
|
+
- `xflow adoption validate --splash --json`
|
|
106
|
+
- `xflow package audit --check-registry --json`
|
|
107
|
+
- `xflow launch audit --strict --json`
|
|
108
|
+
- `xflow launch audit --splash --strict --json`
|
|
109
|
+
- `docs/adoption/README.md` reviewed, with at least one real adoption record before splash launch
|
|
110
|
+
- `docs/adoption/openflow-release-hardening.md` reviewed as the current non-fixture adoption record
|
|
111
|
+
- `docs/npm-publish-handoff.md` reviewed before real publish
|
|
112
|
+
- `xflow score`
|
|
113
|
+
- `xflow compare superpowers`
|
|
114
|
+
- `xflow compare super-assistant`
|
|
115
|
+
- `xflow compare openspec`
|
|
116
|
+
- `xflow compare gstack`
|
|
117
|
+
- `xflow compare spec-kit`
|
|
118
|
+
- `docs/team-adoption.md` 95 percent readiness gate reviewed
|
|
119
|
+
- `git status --short --branch`
|
|
120
|
+
|
|
121
|
+
## Failure Rules
|
|
122
|
+
|
|
123
|
+
- If `npm view @surlymochan/evalid` returns an existing package not owned by this project, choose a new package name before publishing.
|
|
124
|
+
- If `xflow package preflight --check-registry --check-auth --json` fails, do not run the real publish.
|
|
125
|
+
- If `xflow goal audit --json` fails, do not claim xflow goal is stronger than Codex native goal.
|
|
126
|
+
- If `xflow launch claims --json` lists a claim under `blocked_claims`, do not use that claim in launch copy.
|
|
127
|
+
- If `xflow launch copy --json` lists a phrase under `forbidden_phrases`, do not use that phrase in launch posts, README badges, or release notes.
|
|
128
|
+
- If `xflow launch audit --pre-publish --strict --json` fails, do not run the real publish; strict pre-publish mode runs the same npm identity and registry checks as package preflight, then combines them with score and adoption evidence.
|
|
129
|
+
- If `xflow package audit --check-registry --json` fails after publish, do not claim public package availability.
|
|
130
|
+
- If `npm publish --dry-run` includes `test/`, `.claude/`, `__pycache__`, `.pyc`, or local `.as-xflow/` state, fix package inclusion before publishing.
|
|
131
|
+
- If `xflow score` falls below `100/100`, fix score evidence before publishing.
|
|
132
|
+
- If `xflow launch audit --strict --json` lists `real_external_adoption` as missing,
|
|
133
|
+
publish can still be dry-run ready, but do not claim an industry-splash
|
|
134
|
+
launch until a real adoption artifact exists under `docs/adoption/` or a
|
|
135
|
+
linked public PR provides equivalent evidence. The audit removes this gap
|
|
136
|
+
only when the adoption validator passes.
|
|
137
|
+
- If `xflow launch audit --splash --strict --json` lists `third_party_adoption`
|
|
138
|
+
as missing, do not claim broad third-party adoption or industry-splash
|
|
139
|
+
readiness; maintainer dogfooding can support quality claims, but not ecosystem
|
|
140
|
+
adoption claims.
|
|
141
|
+
- If `xflow compare spec-kit` points to missing docs, do not publish a superiority claim.
|
|
142
|
+
- If `xflow compare gstack` cannot clearly explain where gstack is stronger, do not publish a fair comparison claim.
|
|
143
|
+
- If `xflow compare superpowers` cannot explain where Superpowers is stronger, do not publish a fair comparison claim.
|
|
144
|
+
- If `xflow compare super-assistant` cannot explain where Super-Assistant keeps stronger enterprise connector breadth, do not publish a fair comparison claim.
|
|
145
|
+
- If the team adoption operating model is not linked from README or reviewer docs, do not promote the package for multi-person adoption.
|
|
@@ -0,0 +1,139 @@
|
|
|
1
|
+
# evalid Quality Assessment
|
|
2
|
+
|
|
3
|
+
Date: 2026-05-23
|
|
4
|
+
|
|
5
|
+
## Verdict
|
|
6
|
+
|
|
7
|
+
`evalid` is strong enough to present as a serious open-source agent delivery
|
|
8
|
+
runtime today. The core engine is no longer the weak point: yolo and corps both
|
|
9
|
+
have executable workflow data, verification gates, and release checks.
|
|
10
|
+
|
|
11
|
+
The remaining gap for an industry splash is distribution proof: publish the
|
|
12
|
+
package and show a polished external demo. Fixture-only adoption proof has been
|
|
13
|
+
replaced with a reviewable maintainer release-hardening record, while broader
|
|
14
|
+
third-party adoption remains the next ecosystem win.
|
|
15
|
+
|
|
16
|
+
In readiness terms, the current state is:
|
|
17
|
+
|
|
18
|
+
- `source_checkout`: ready
|
|
19
|
+
- `open_source_launch`: blocked by `published_package`
|
|
20
|
+
- `industry_splash`: blocked by `published_package` and `third_party_adoption`
|
|
21
|
+
|
|
22
|
+
## Objective Audit
|
|
23
|
+
|
|
24
|
+
- `goal_vs_codex`: proven at the project layer
|
|
25
|
+
- `yolo_delivery`: proven from source checkout
|
|
26
|
+
- `corps_delivery`: proven from source checkout
|
|
27
|
+
- `skill_family_open_source_credibility`: ready from source checkout
|
|
28
|
+
- `open_source_launch`: blocked by `published_package`
|
|
29
|
+
- `industry_splash`: blocked by `published_package` and `third_party_adoption`
|
|
30
|
+
|
|
31
|
+
## Can xflow Beat Codex Native Goal?
|
|
32
|
+
|
|
33
|
+
Yes, but only in a specific way.
|
|
34
|
+
|
|
35
|
+
Codex native goal is better for one active thread: it is close to the model,
|
|
36
|
+
cheap to update, and useful for completion accounting. `xflow:goal` is better
|
|
37
|
+
for project delivery when `.xflow/GOAL.md` becomes a durable artifact that yolo,
|
|
38
|
+
corps, Ralph, handoff, and takein all read and audit.
|
|
39
|
+
|
|
40
|
+
That distinction is the product claim:
|
|
41
|
+
|
|
42
|
+
```text
|
|
43
|
+
Codex goal = thread memory
|
|
44
|
+
xflow goal = project alignment evidence
|
|
45
|
+
```
|
|
46
|
+
|
|
47
|
+
## Scorecard
|
|
48
|
+
|
|
49
|
+
| Surface | Grade | Current Evidence | Next Win |
|
|
50
|
+
| --- | --- | --- | --- |
|
|
51
|
+
| `xflow:goal` | A | `.xflow/GOAL.md`, `xflow goal set`, `xflow goal show --json`, `xflow goal audit --json`, `docs/goal-vs-codex.md` | Real examples where goal alignment changed review or handoff quality |
|
|
52
|
+
| `xflow:yolo` | A | YAML workflow, split TDD proof, quality review, archive order, drift tests | Tiny public bugfix demo from red proof to archive |
|
|
53
|
+
| `xflow:corps` | A | Governed corps entry, `xflow corps --explain`, `corps_proof.json`, visual benchmark gates, no-stub witnesses | Real product/UI adoption walkthrough backed by corps proof |
|
|
54
|
+
| Skill family | A- | `xflow quickstart`, `xflow guide`, `xflow assess`, `xflow score`, tooling matrix, skill sync/diff, `docs/adoption/openflow-release-hardening.md` | Public npm publish plus third-party adoption evidence |
|
|
55
|
+
|
|
56
|
+
## Public Proof Path
|
|
57
|
+
|
|
58
|
+
```bash
|
|
59
|
+
xflow objective
|
|
60
|
+
xflow objective --json
|
|
61
|
+
xflow assess
|
|
62
|
+
xflow assess --json
|
|
63
|
+
xflow evaluate
|
|
64
|
+
xflow evaluate --json
|
|
65
|
+
xflow compare codex-goal --json
|
|
66
|
+
xflow compare superpowers --json
|
|
67
|
+
xflow compare super-assistant --json
|
|
68
|
+
xflow compare gstack --json
|
|
69
|
+
xflow demo launch
|
|
70
|
+
xflow demo launch --json
|
|
71
|
+
xflow launch dossier
|
|
72
|
+
xflow launch claims --json
|
|
73
|
+
xflow launch copy --json
|
|
74
|
+
xflow launch audit
|
|
75
|
+
xflow launch audit --json
|
|
76
|
+
xflow launch audit --strict --json
|
|
77
|
+
xflow adoption kit --name <team-or-project> --source <tracker-or-pr> --track yolo
|
|
78
|
+
xflow adoption init --name <team-or-project> --source <tracker-or-pr> --track yolo
|
|
79
|
+
xflow adoption status --json
|
|
80
|
+
xflow adoption validate --json
|
|
81
|
+
xflow adoption validate --splash --json
|
|
82
|
+
xflow package status --json
|
|
83
|
+
xflow package preflight --check-registry --check-auth --json
|
|
84
|
+
xflow launch audit --pre-publish --strict --json
|
|
85
|
+
xflow launch audit --splash --strict --json
|
|
86
|
+
xflow package audit --check-registry --json
|
|
87
|
+
xflow score --json
|
|
88
|
+
xflow goal show --json
|
|
89
|
+
xflow goal audit --json
|
|
90
|
+
xflow corps --explain --json
|
|
91
|
+
npm run drift:scan
|
|
92
|
+
npm run release:pack
|
|
93
|
+
```
|
|
94
|
+
|
|
95
|
+
`xflow assess` is the human-facing assessment. `xflow score` is the repository
|
|
96
|
+
evidence gate. `release:pack` proves the shipped package includes the current
|
|
97
|
+
docs, CLI, workflows, atoms, and skill sources.
|
|
98
|
+
`docs/npm-publish-handoff.md` is the last-mile publish checklist once npm auth
|
|
99
|
+
is restored.
|
|
100
|
+
|
|
101
|
+
## Completion Boundary
|
|
102
|
+
|
|
103
|
+
Internal quality is ready: `xflow score --json` is 100/100, `xflow goal audit
|
|
104
|
+
--json` proves the Codex-goal comparison at the project layer, and
|
|
105
|
+
`npm run release:pack` proves the package contents. The remaining blockers are
|
|
106
|
+
external proof, not hidden engine work:
|
|
107
|
+
|
|
108
|
+
- `npm_auth_and_publish`: requires release-owner npm auth, preflight, real
|
|
109
|
+
`npm publish --access public`, and registry audit.
|
|
110
|
+
- `third_party_adoption`: requires a real third-party project or public PR
|
|
111
|
+
started from `xflow adoption kit`, captured with
|
|
112
|
+
`docs/adoption/<team-or-project>.md`, and validated by `xflow adoption
|
|
113
|
+
validate --splash --json`.
|
|
114
|
+
|
|
115
|
+
`xflow evaluate --json` reports both ordinary launch readiness and stricter
|
|
116
|
+
`splash_launch` readiness, plus ordinary `claims` and stricter `splash_claims`,
|
|
117
|
+
so evaluators can distinguish source-checkout quality, post-publish package
|
|
118
|
+
proof, and broad ecosystem claims.
|
|
119
|
+
|
|
120
|
+
## Open-Source Launch Bar
|
|
121
|
+
|
|
122
|
+
Before calling the launch story excellent rather than merely ready:
|
|
123
|
+
|
|
124
|
+
1. Publish the npm package from the verified tarball only after `xflow package preflight --check-registry --check-auth --json` confirms npm identity and package-name/version availability, and `xflow launch audit --pre-publish --strict --json` confirms score plus adoption evidence are not being bypassed.
|
|
125
|
+
2. Keep `xflow adoption validate --json` green with at least one non-fixture
|
|
126
|
+
adoption record. The current maintainer release-hardening record proves the
|
|
127
|
+
gate works and names the remaining npm-publication failure; the next
|
|
128
|
+
ecosystem upgrade is a third-party project or public PR using
|
|
129
|
+
`xflow adoption kit` before converting trial results into the same
|
|
130
|
+
evidence shape.
|
|
131
|
+
3. Keep `docs/launch-demo.md`, `docs/launch-dossier.md`,
|
|
132
|
+
`docs/corps-operator-guide.md`, and `xflow demo launch` current as the
|
|
133
|
+
canonical walkthrough for `goal -> yolo` and `goal -> corps proof`, and keep
|
|
134
|
+
`xflow launch dossier` aligned as the concise public-facing summary.
|
|
135
|
+
4. Make `published_package` disappear from `xflow launch audit --strict --json` only
|
|
136
|
+
after `xflow package audit --check-registry --json` confirms the npm
|
|
137
|
+
registry reports the expected package name and version.
|
|
138
|
+
5. Keep the scorecard honest: if any public claim lacks a runnable command,
|
|
139
|
+
checked artifact, or drift test, downgrade it until evidence exists.
|
|
@@ -0,0 +1,156 @@
|
|
|
1
|
+
# evalid Quickstart
|
|
2
|
+
|
|
3
|
+
Use this path when you want a project to adopt xflow without reading the implementation first.
|
|
4
|
+
|
|
5
|
+
## 0. See The Delivery Loop
|
|
6
|
+
|
|
7
|
+
Use the published package path when `evalid` is available from npm:
|
|
8
|
+
|
|
9
|
+
```bash
|
|
10
|
+
npm install -g @surlymochan/evalid
|
|
11
|
+
xflow quickstart
|
|
12
|
+
xflow guide
|
|
13
|
+
xflow evaluate
|
|
14
|
+
xflow assess
|
|
15
|
+
xflow demo clean
|
|
16
|
+
xflow demo launch
|
|
17
|
+
xflow launch dossier
|
|
18
|
+
```
|
|
19
|
+
|
|
20
|
+
Use source checkout mode before npm publication:
|
|
21
|
+
|
|
22
|
+
```bash
|
|
23
|
+
git clone <repo-url> evalid
|
|
24
|
+
cd evalid
|
|
25
|
+
npm install
|
|
26
|
+
npm run release:pack
|
|
27
|
+
node bin/xflow.js quickstart
|
|
28
|
+
node bin/xflow.js evaluate
|
|
29
|
+
node bin/xflow.js assess
|
|
30
|
+
node bin/xflow.js demo clean
|
|
31
|
+
node bin/xflow.js compare codex-goal
|
|
32
|
+
node bin/xflow.js launch dossier
|
|
33
|
+
```
|
|
34
|
+
|
|
35
|
+
This shows the human-facing loop and the current quality scorecard for goal,
|
|
36
|
+
yolo, corps, and the overall skill family. The demo command shows the public
|
|
37
|
+
goal-to-yolo and goal-to-corps proof story; the launch audit names any missing
|
|
38
|
+
evidence before public promotion; the launch dossier turns the same evidence
|
|
39
|
+
into a one-page public narrative.
|
|
40
|
+
|
|
41
|
+
Release-owner checks are deliberately separate from this first-run path:
|
|
42
|
+
|
|
43
|
+
```bash
|
|
44
|
+
xflow release status --json
|
|
45
|
+
xflow adoption trial --name first-team --source first-tracker --track yolo
|
|
46
|
+
xflow adoption kit --name first-team --source first-tracker --track yolo
|
|
47
|
+
xflow adoption init --name first-team --source first-tracker --track yolo
|
|
48
|
+
xflow adoption status --json
|
|
49
|
+
xflow adoption validate --json
|
|
50
|
+
xflow adoption validate --splash --json
|
|
51
|
+
xflow package status --json
|
|
52
|
+
xflow package preflight --check-registry --check-auth --json
|
|
53
|
+
xflow launch audit --pre-publish --strict --json
|
|
54
|
+
xflow launch audit --splash --strict --json
|
|
55
|
+
xflow package audit --check-registry --json
|
|
56
|
+
```
|
|
57
|
+
|
|
58
|
+
`xflow adoption status` summarizes ordinary and splash adoption blockers without
|
|
59
|
+
failing the release-owner checklist. `xflow adoption trial` previews the external team's copy-paste command sequence
|
|
60
|
+
and evidence checklist without writing files. `xflow adoption kit` creates a
|
|
61
|
+
shareable trial packet for an external project.
|
|
62
|
+
`xflow adoption init` creates only a draft that must be filled from that real
|
|
63
|
+
trial before `xflow adoption validate --json` can pass. Package preflight blocks
|
|
64
|
+
the irreversible publish when npm identity or package availability is missing;
|
|
65
|
+
`xflow package status --json` summarizes that package state without failing;
|
|
66
|
+
package audit fails until the npm registry reports the expected public package
|
|
67
|
+
name and version. Splash validation is stricter than ordinary adoption
|
|
68
|
+
validation: it requires third-party adoption evidence beyond maintainer
|
|
69
|
+
dogfooding before broad ecosystem claims are allowed.
|
|
70
|
+
|
|
71
|
+
## 1. Initialize
|
|
72
|
+
|
|
73
|
+
```bash
|
|
74
|
+
xflow init --project-root .
|
|
75
|
+
xflow goal set "Ship the next verified change" --project-root .
|
|
76
|
+
xflow goal audit --project-root . --json
|
|
77
|
+
```
|
|
78
|
+
|
|
79
|
+
This writes `.as-xflow/config.json` with portable defaults for workflow paths, skill paths, and issue routing.
|
|
80
|
+
Workflow aliases such as `yolo` and `corps` read this config when `--project-root` points at the initialized project. Issue setup and installed skill sync can also read their defaults from this file.
|
|
81
|
+
The goal command writes `.xflow/GOAL.md`, the project direction anchor consumed by `xflow:goal`, `xflow:yolo`, `xflow:corps`, `xflow:ralph`, `xflow:handoff`, and `xflow:takein`. The audit command fails if the project has no durable goal or if the packaged skill family stops declaring that goal as an intake and proof input.
|
|
82
|
+
|
|
83
|
+
## 2. Check Readiness
|
|
84
|
+
|
|
85
|
+
```bash
|
|
86
|
+
xflow doctor --project-root .
|
|
87
|
+
```
|
|
88
|
+
|
|
89
|
+
Doctor checks package scripts, workflow YAML validity, skill topology, and the project root used by execution.
|
|
90
|
+
|
|
91
|
+
## 3. Validate The Lite Workflow
|
|
92
|
+
|
|
93
|
+
```bash
|
|
94
|
+
xflow workflow validate yolo
|
|
95
|
+
```
|
|
96
|
+
|
|
97
|
+
Use `corps` instead of `yolo` when validating the heavy workflow.
|
|
98
|
+
Validation is preflight only; run the heavy track through `xflow corps` and
|
|
99
|
+
confirm final completion with `xflow proof --track corps`.
|
|
100
|
+
|
|
101
|
+
## 4. Run A Lite Change
|
|
102
|
+
|
|
103
|
+
```bash
|
|
104
|
+
xflow workflow run yolo --title "<中文标题>" --change-type backend \
|
|
105
|
+
--tdd-red-command "npm test -- --grep new-failing-case" \
|
|
106
|
+
--tdd-green-command "npm test"
|
|
107
|
+
```
|
|
108
|
+
|
|
109
|
+
For real project work, run this from a branch whose name can derive a `CHANGE_ID`, or pass `--change-id <id>`.
|
|
110
|
+
The red command runs before implementation and must fail. After the execute step, the green command must pass, and xflow writes `quality-0.json` to prove code changes came with meaningful changed tests instead of empty assertions, snapshot-only tests, or mock-heavy smoke.
|
|
111
|
+
|
|
112
|
+
## 5. Run A Heavy Corps Change
|
|
113
|
+
|
|
114
|
+
```bash
|
|
115
|
+
xflow serve &
|
|
116
|
+
xflow corps --title "<产品标题>" --change-type frontend --change-id <id>
|
|
117
|
+
xflow proof --track corps --change-id <id>
|
|
118
|
+
```
|
|
119
|
+
|
|
120
|
+
The conversation AI should not manually emulate `xflow:corps`; it clarifies
|
|
121
|
+
requirements, handles human-gate acknowledgements, and inspects
|
|
122
|
+
`corps_proof.json`. The proof only passes when the built-in corps manifest,
|
|
123
|
+
hash-linked phase/atom/gate witnesses, required artifacts, product contracts,
|
|
124
|
+
and no stubbed runtime fallback all pass together.
|
|
125
|
+
|
|
126
|
+
## Release Checks
|
|
127
|
+
|
|
128
|
+
```bash
|
|
129
|
+
npm run drift:scan
|
|
130
|
+
npm run verify
|
|
131
|
+
npm run skill:sync
|
|
132
|
+
npm run skill:diff
|
|
133
|
+
npm run release:pack
|
|
134
|
+
xflow host status --json
|
|
135
|
+
```
|
|
136
|
+
|
|
137
|
+
Use `npm run release:local` when you intentionally want verification followed by installed skill sync.
|
|
138
|
+
By default, `npm run skill:sync` refreshes `~/.codex/skills`, and falls back to
|
|
139
|
+
`~/.agents/skills` only when the Codex install root does not exist. `xmem`
|
|
140
|
+
follows the same target selection. Set `SKILL_SYNC_TARGET_DIRS` when you want
|
|
141
|
+
an explicit multi-target sync.
|
|
142
|
+
|
|
143
|
+
For a clean adoption example, use the minimal temporary project flow shown in [docs/demo-proof.md](./demo-proof.md).
|
|
144
|
+
|
|
145
|
+
Low-friction spec and QA helpers:
|
|
146
|
+
|
|
147
|
+
```bash
|
|
148
|
+
xflow spec start --title "example change" --change-type backend
|
|
149
|
+
xflow qa capture --url http://127.0.0.1:3000 --platform-profile mobile_h5
|
|
150
|
+
```
|
|
151
|
+
|
|
152
|
+
## Team Adoption
|
|
153
|
+
|
|
154
|
+
For a team rollout, use [docs/team-adoption.md](./team-adoption.md) before the
|
|
155
|
+
first shared PR. It defines the operator/reviewer/release-owner roles, required
|
|
156
|
+
CI checks, PR acceptance checklist, and the 95 percent public-promotion gate.
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
# evalid Reviewer Guide
|
|
2
|
+
|
|
3
|
+
Use this guide when reviewing an xflow-driven change in an issue, PR, or handoff.
|
|
4
|
+
For team rollout policy, pair this with [Team Adoption Operating Model](./team-adoption.md).
|
|
5
|
+
|
|
6
|
+
## What To Check First
|
|
7
|
+
|
|
8
|
+
1. `HANDOFF.md` current-state block names the active change, stage, verification state, archive state, and next action.
|
|
9
|
+
2. `specs/changes/<change-id>/proposal.md` and `plan.md` match the PR scope.
|
|
10
|
+
3. `verify_proof.json` or the PR body names the verification commands and outcomes.
|
|
11
|
+
4. TDD proof includes a failing red command before implementation, a passing green/refactor command after implementation, and an `I6c` quality proof.
|
|
12
|
+
5. `AHA.md` records durable lessons when the change exposed a reusable workflow insight.
|
|
13
|
+
6. Archive order keeps publish/commit/push/close in `A5.archive.commit_push_close` before `A6.pr.create`.
|
|
14
|
+
|
|
15
|
+
## Required Reviewer Questions
|
|
16
|
+
|
|
17
|
+
- Did the implementation stay inside the frozen proposal and plan?
|
|
18
|
+
- Did the workflow data, docs, and tests move together?
|
|
19
|
+
- Did `I6b.tdd.proof_validate` accept red/green semantics, and did `I6c.tdd.quality_review` reject empty/snapshot-only/mock-heavy tests?
|
|
20
|
+
- Did `npm run drift:scan` pass when active workflow or skill surfaces changed?
|
|
21
|
+
- Did `npm run skill:diff` pass after skill source changes?
|
|
22
|
+
- Is any local-machine assumption documented or moved into `.as-xflow/config.json`?
|
|
23
|
+
- Does the PR identify the operator, implementer, reviewer, and release owner when it is part of a team rollout?
|
|
24
|
+
|
|
25
|
+
## Accept / Request Changes
|
|
26
|
+
|
|
27
|
+
Accept when the implementation, workflow artifacts, verification proof, and handoff agree.
|
|
28
|
+
|
|
29
|
+
Request changes when any of these are true:
|
|
30
|
+
|
|
31
|
+
- The PR changes workflow behavior without schema or test coverage.
|
|
32
|
+
- The PR changes public skill surfaces without `npm run skill:diff` evidence.
|
|
33
|
+
- The PR adds prose workflow steps without matching workflow YAML or atom registry updates.
|
|
34
|
+
- The PR claims archive completion while local status, issue state, or git history disagrees.
|
|
35
|
+
|
|
36
|
+
## Reviewer Shortcuts
|
|
37
|
+
|
|
38
|
+
```bash
|
|
39
|
+
xflow doctor
|
|
40
|
+
xflow score
|
|
41
|
+
npm run drift:scan
|
|
42
|
+
npm run skill:diff
|
|
43
|
+
```
|
|
@@ -0,0 +1,73 @@
|
|
|
1
|
+
# spec-kit Benchmark
|
|
2
|
+
|
|
3
|
+
This benchmark is the repeatable comparison path for spec-kit-style specification-driven delivery.
|
|
4
|
+
|
|
5
|
+
## Scenario
|
|
6
|
+
|
|
7
|
+
Use the same brownfield change in both systems:
|
|
8
|
+
|
|
9
|
+
> Add a deterministic spec delta review for a project that already has proposal, plan, task checklist, and durable root specs.
|
|
10
|
+
|
|
11
|
+
## xflow Run
|
|
12
|
+
|
|
13
|
+
```bash
|
|
14
|
+
xflow init --project-root .
|
|
15
|
+
xflow guide
|
|
16
|
+
xflow workflow validate yolo --project-root .
|
|
17
|
+
xflow spec delta --project-root . --change-id <change-id>
|
|
18
|
+
xflow score
|
|
19
|
+
npm run release:pack
|
|
20
|
+
```
|
|
21
|
+
|
|
22
|
+
Expected xflow artifacts:
|
|
23
|
+
|
|
24
|
+
- `specs/changes/<change-id>/proposal.md`
|
|
25
|
+
- `specs/changes/<change-id>/plan.md`
|
|
26
|
+
- `specs/changes/<change-id>/spec_delta_review.json`
|
|
27
|
+
- `specs/changes/<change-id>/spec_delta_review.md`
|
|
28
|
+
- `specs/changes/<change-id>/tdd/red-0.json`
|
|
29
|
+
- `specs/changes/<change-id>/tdd/green-0.json`
|
|
30
|
+
- `specs/changes/<change-id>/tdd/quality-0.json`
|
|
31
|
+
- `HANDOFF.md`
|
|
32
|
+
- `AHA.md`
|
|
33
|
+
|
|
34
|
+
## spec-kit Run
|
|
35
|
+
|
|
36
|
+
Use the equivalent spec-kit flow:
|
|
37
|
+
|
|
38
|
+
```text
|
|
39
|
+
/speckit.constitution
|
|
40
|
+
/speckit.specify
|
|
41
|
+
/speckit.plan
|
|
42
|
+
/speckit.tasks
|
|
43
|
+
/speckit.implement
|
|
44
|
+
/speckit.analyze
|
|
45
|
+
```
|
|
46
|
+
|
|
47
|
+
Record the generated spec, plan, tasks, implementation evidence, and quality checks.
|
|
48
|
+
|
|
49
|
+
## Scoring Rubric
|
|
50
|
+
|
|
51
|
+
| Dimension | xflow Win Condition |
|
|
52
|
+
| --- | --- |
|
|
53
|
+
| Requirements traceability | Requirement-level statements appear in `requirements_delta`. |
|
|
54
|
+
| Executable workflow | Workflow order validates from YAML and atom registry. |
|
|
55
|
+
| TDD semantics | Red fails before implementation; green passes after implementation. |
|
|
56
|
+
| Test quality | `quality-0.json` rejects empty, snapshot-only, or mock-heavy tests without assertions. |
|
|
57
|
+
| Archive closure | Handoff/AHA/archive order is explicit and test-covered. |
|
|
58
|
+
| Release readiness | `npm run release:pack` passes. |
|
|
59
|
+
| Public comparison | `xflow compare spec-kit --json` prints machine-readable edges. |
|
|
60
|
+
|
|
61
|
+
## Current Judgment
|
|
62
|
+
|
|
63
|
+
xflow should win the local engineering rigor section. spec-kit may still win public ecosystem breadth until xflow has public registry release, richer external adapters, and a larger example library.
|
|
64
|
+
|
|
65
|
+
Do not claim a full spec-kit product win unless:
|
|
66
|
+
|
|
67
|
+
- `npm run publish:check` passes
|
|
68
|
+
- `xflow package preflight --check-registry --check-auth --json` passes before public publish
|
|
69
|
+
- `xflow launch audit --pre-publish --strict --json` passes before the irreversible publish step
|
|
70
|
+
- `xflow package audit --check-registry --json` passes after public publish
|
|
71
|
+
- `docs/integrations.md` covers the target integration class
|
|
72
|
+
- `xflow compare spec-kit --json` is green
|
|
73
|
+
- the benchmark artifacts above are produced for the same change
|
|
@@ -0,0 +1,106 @@
|
|
|
1
|
+
# Super-Assistant Comparison
|
|
2
|
+
|
|
3
|
+
Use this page when someone asks whether evalid should absorb Super-Assistant's
|
|
4
|
+
enterprise delivery harness or split separate personal/team workflows.
|
|
5
|
+
|
|
6
|
+
## Verdict
|
|
7
|
+
|
|
8
|
+
Super-Assistant has useful enterprise ingredients: team constraints, checkpoint
|
|
9
|
+
notifications, plugin execution, an experience index, and S3-backed team sync.
|
|
10
|
+
Those ideas are worth absorbing.
|
|
11
|
+
|
|
12
|
+
evalid should not absorb the whole harness. After the policy-overlay
|
|
13
|
+
integration, xflow is stronger because the same capabilities are expressed as
|
|
14
|
+
thin atoms, provider seams, and structured proof artifacts on top of the
|
|
15
|
+
existing `yolo` and `corps` tracks.
|
|
16
|
+
|
|
17
|
+
```text
|
|
18
|
+
Super-Assistant = enterprise harness and connector inventory
|
|
19
|
+
xflow = workflow runtime plus policy overlay and atomized proof
|
|
20
|
+
```
|
|
21
|
+
|
|
22
|
+
## Scorecard
|
|
23
|
+
|
|
24
|
+
Overall, xflow wins the productized workflow comparison: `95/100` versus
|
|
25
|
+
`76/100`. Super-Assistant still has broader concrete enterprise connector
|
|
26
|
+
coverage, but xflow now has the cleaner runtime contract.
|
|
27
|
+
|
|
28
|
+
| Dimension | Weight | Super-Assistant | xflow | Winner |
|
|
29
|
+
| --- | ---: | ---: | ---: | --- |
|
|
30
|
+
| Workflow runtime authority | 15 | 10 | 15 | xflow |
|
|
31
|
+
| Policy overlay and team constraints | 15 | 12 | 15 | xflow |
|
|
32
|
+
| Adaptive intake | 10 | 8 | 10 | xflow |
|
|
33
|
+
| Enterprise atomization | 15 | 11 | 14 | xflow |
|
|
34
|
+
| Notification / gate separation | 10 | 6 | 10 | xflow |
|
|
35
|
+
| Experience reuse | 10 | 8 | 9 | xflow |
|
|
36
|
+
| Verification and packaging | 15 | 9 | 14 | xflow |
|
|
37
|
+
| Portability and secret boundary | 10 | 5 | 8 | xflow |
|
|
38
|
+
|
|
39
|
+
Machine-readable form:
|
|
40
|
+
|
|
41
|
+
```bash
|
|
42
|
+
xflow compare super-assistant --json
|
|
43
|
+
```
|
|
44
|
+
|
|
45
|
+
## What xflow Absorbed
|
|
46
|
+
|
|
47
|
+
- `team_constraints.py` becomes `.xflow/profile.json`,
|
|
48
|
+
`.xflow/team-policy.json`, and `policy_effective.json`. Numeric thresholds
|
|
49
|
+
take the stricter value, lists merge and dedupe, and team strings/booleans
|
|
50
|
+
override personal defaults.
|
|
51
|
+
- Demand profiling becomes `workflow_recommendation.json`, generated by
|
|
52
|
+
`xflow intake recommend`, and remains advisory input rather than a workflow
|
|
53
|
+
bypass.
|
|
54
|
+
- Checkpoint notification becomes `notify.checkpoint`, which writes
|
|
55
|
+
`notification/checkpoint-*.json` and explicitly records
|
|
56
|
+
`approves_gate=false`.
|
|
57
|
+
- Plugin, storage, and experience reuse become `plugin.run`, `storage.sync`,
|
|
58
|
+
and `experience.digest`. The first provider set is `file`/`mock`/dry-run
|
|
59
|
+
safe, so DingTalk/S3-style secrets stay outside the core.
|
|
60
|
+
- Team enforcement becomes `policy.gate`, which emits structured
|
|
61
|
+
`failed_checks` for coverage, reviewer, smoke, and review-artifact
|
|
62
|
+
requirements.
|
|
63
|
+
|
|
64
|
+
## Why Not Fork Team Workflows
|
|
65
|
+
|
|
66
|
+
Do not create `team-yolo` or `personal-yolo`. That would duplicate workflow
|
|
67
|
+
YAML and drift as soon as a phase changes.
|
|
68
|
+
|
|
69
|
+
The better split is execution mode:
|
|
70
|
+
|
|
71
|
+
- `personal`: default, local-first, no external providers required.
|
|
72
|
+
- `team`: loads the team policy, enables optional notification/experience
|
|
73
|
+
atoms, and checks stricter gates.
|
|
74
|
+
|
|
75
|
+
The workflow authority stays with `workflows/yolo.yaml`,
|
|
76
|
+
`workflows/corps.yaml`, the atom registry, and proof artifacts. External
|
|
77
|
+
systems may inform the run, but they do not advance state by themselves.
|
|
78
|
+
|
|
79
|
+
## Proof Commands
|
|
80
|
+
|
|
81
|
+
```bash
|
|
82
|
+
xflow compare super-assistant --json
|
|
83
|
+
xflow profile show --json
|
|
84
|
+
xflow policy validate --json
|
|
85
|
+
xflow intake recommend --change-id team-api-feature --title "team API feature" --description "touches API DB user data and CI" --repo-count 2 --json
|
|
86
|
+
xflow workflow validate yolo
|
|
87
|
+
xflow workflow validate corps
|
|
88
|
+
npm run verify
|
|
89
|
+
npm run drift:scan
|
|
90
|
+
```
|
|
91
|
+
|
|
92
|
+
For the reference checkout, run Super-Assistant's own validation commands and
|
|
93
|
+
compare the resulting evidence:
|
|
94
|
+
|
|
95
|
+
```bash
|
|
96
|
+
npm run check
|
|
97
|
+
python3 -m unittest discover -s tests -p 'test*.py' -v
|
|
98
|
+
python3 -m unittest discover -s .harness -p 'test*.py' -v
|
|
99
|
+
```
|
|
100
|
+
|
|
101
|
+
## Boundary
|
|
102
|
+
|
|
103
|
+
xflow should keep Super-Assistant's domain lessons, not its coupling model.
|
|
104
|
+
Concrete enterprise providers can be added later, but the first-class contract
|
|
105
|
+
must remain: notification is not approval, plugins are not workflow state, and
|
|
106
|
+
experience is advisory context rather than a gate substitute.
|