diff --git a/ecosystem-metrics.json b/ecosystem-metrics.json index 201a2d8..582eeba 100644 --- a/ecosystem-metrics.json +++ b/ecosystem-metrics.json @@ -1,7 +1,7 @@ { "version": "1.0.0", "std": "STD-002@1.0.0", - "generatedAt": "2026-07-01T18:10:16.279Z", + "generatedAt": "2026-07-03T00:57:09.893Z", "generator": "70-execution/scripts/aggregate-metrics.mjs", "note": "Single source of truth for ecosystem stat strips. Safe to publish: only aggregates, no PII/clients/money. Every value carries provenance; see ecosystem-metrics.ledger.md. Each site shapes its own strip/velocity from strip + perVenture.", "strip": { @@ -53,11 +53,11 @@ "verification": 3 }, "decisions": { - "value": 975, + "value": 980, "unit": "count", - "source": "git:andres.co (live) + declared:70-execution/scripts/metrics.ventures.json", - "method": "sum of per-repo DEC-record counts (find 10-decisions -name 'DEC-*.md' | wc -l per repo): Datta:774, Insttantt:90, SliceOps:42, andres.co:30, RootBlocks:18, ApiFusion:11, Resolvi:10, Nextars:0", - "asOf": "2026-07-01", + "source": "live manifests (andres.co, RootBlocks) + declared fallback:70-execution/scripts/metrics.ventures.json", + "method": "sum of per-repo DEC-record counts (find 10-decisions -name 'DEC-*.md' | wc -l per repo): Datta:774, Insttantt:90, SliceOps:42, andres.co:31, RootBlocks:22, ApiFusion:11, Resolvi:10, Nextars:0", + "asOf": "2026-07-03", "public": true, "verification": 2 }, @@ -103,19 +103,19 @@ "venture": "andres.co", "repo": "andres-co", "branch": "main", - "decisions": 30, - "source": "git:andres.co (live)", + "decisions": 31, + "source": "git:andres.co (live manifest)", "method": "overridden by the live emitter (tools/metrics.mjs)", - "asOf": "2026-07-01T18:10:16.227Z" + "asOf": "2026-07-03T00:57:09.852Z" }, { "venture": "RootBlocks", "repo": "rootblocks-engineering", "branch": "main", - "decisions": 18, - "source": "operator-confirmed (RootBlocks STD-002 slice, origin/main)", + "decisions": 22, + "source": "git:RootBlocks (live manifest)", "method": "find 10-decisions -name 'DEC-*.md' | wc -l on origin/main (16 accepted + 2 rfcs); declared 21 conflated highest id DEC-021 with the count. Becomes 19 when RootBlocks DEC-024 merges", - "asOf": "2026-07-01" + "asOf": "2026-07-03" }, { "venture": "ApiFusion", @@ -170,9 +170,9 @@ "status": "live", "first_commit": "2026-06-20", "launch": "2026-06-20", - "worked_hours": 51, - "loc": 3184, - "decisions": 30, + "worked_hours": 53.2, + "loc": 3198, + "decisions": 31, "tier": "T2", "complexity": { "state": 0, @@ -184,7 +184,7 @@ }, "note": "This site. First commit to a live, governed v1 the same day.", "note_es": "Este sitio. Del primer commit a una v1 viva y gobernada el mismo día.", - "commits": 93 + "commits": 95 }, { "name": "Insttantt", @@ -212,7 +212,7 @@ "launch": "2026-06-10", "worked_hours": 167.7, "loc": 219110, - "decisions": 18, + "decisions": 22, "repos": 10, "complexity": { "state": 3, @@ -223,7 +223,8 @@ "code": 3 }, "note": "10 repos: a security, identity, and fraud platform plus an agentic build engine. It reaches past Insttantt's complexity, built on the framework with AI. An approximate sum; the platform is largely still in progress, the website is live.", - "note_es": "10 repos: una plataforma de seguridad, identidad y fraude más un motor de build agéntico. Supera la complejidad de Insttantt, construida sobre el framework y con AI. Una suma aproximada; la plataforma está en gran parte en progreso, el website está en vivo." + "note_es": "10 repos: una plataforma de seguridad, identidad y fraude más un motor de build agéntico. Supera la complejidad de Insttantt, construida sobre el framework y con AI. Una suma aproximada; la plataforma está en gran parte en progreso, el website está en vivo.", + "commits": 347 }, { "name": "Datta", @@ -333,11 +334,11 @@ }, { "key": "decisions", - "value": 975, + "value": 980, "unit": "count", - "source": "git:andres.co (live) + declared:70-execution/scripts/metrics.ventures.json", - "method": "sum of per-repo DEC-record counts (find 10-decisions -name 'DEC-*.md' | wc -l per repo): Datta:774, Insttantt:90, SliceOps:42, andres.co:30, RootBlocks:18, ApiFusion:11, Resolvi:10, Nextars:0", - "asOf": "2026-07-01", + "source": "live manifests (andres.co, RootBlocks) + declared fallback:70-execution/scripts/metrics.ventures.json", + "method": "sum of per-repo DEC-record counts (find 10-decisions -name 'DEC-*.md' | wc -l per repo): Datta:774, Insttantt:90, SliceOps:42, andres.co:31, RootBlocks:22, ApiFusion:11, Resolvi:10, Nextars:0", + "asOf": "2026-07-03", "verification": 2 }, { diff --git a/ecosystem-metrics.ledger.md b/ecosystem-metrics.ledger.md index bbed5a5..9b2b306 100644 --- a/ecosystem-metrics.ledger.md +++ b/ecosystem-metrics.ledger.md @@ -1,6 +1,6 @@ # Ecosystem metrics provenance ledger -Generated 2026-07-01T18:10:16.279Z by 70-execution/scripts/aggregate-metrics.mjs (STD-002). Every published number and its source. +Generated 2026-07-03T00:57:09.893Z by 70-execution/scripts/aggregate-metrics.mjs (STD-002). Every published number and its source. ## Strip numbers @@ -11,7 +11,7 @@ Generated 2026-07-01T18:10:16.279Z by 70-execution/scripts/aggregate-metrics.mjs | core | 3 | declared | operator-declared constant: core products carried as flagship | 2026-06-30 | 3 | | people | 990000 | external:product-databases | operator-declared aggregate of distinct people served across live platforms (Insttantt + Datta); a safe floor, '+' denotes at least | 2026-06-30 | 3 | | data_points | 54000000 | external:product-databases | operator-declared aggregate of records processed across live platforms; a safe floor, '+' denotes at least | 2026-06-30 | 3 | -| decisions | 975 | git:andres.co (live) + declared:70-execution/scripts/metrics.ventures.json | sum of per-repo DEC-record counts (find 10-decisions -name 'DEC-*.md' \| wc -l per repo): Datta:774, Insttantt:90, SliceOps:42, andres.co:30, RootBlocks:18, ApiFusion:11, Resolvi:10, Nextars:0 | 2026-07-01 | 2 | +| decisions | 980 | live manifests (andres.co, RootBlocks) + declared fallback:70-execution/scripts/metrics.ventures.json | sum of per-repo DEC-record counts (find 10-decisions -name 'DEC-*.md' \| wc -l per repo): Datta:774, Insttantt:90, SliceOps:42, andres.co:31, RootBlocks:22, ApiFusion:11, Resolvi:10, Nextars:0 | 2026-07-03 | 2 | | x_faster | 124 | declared:70-execution/scripts/metrics.ventures.json (DEC-019) | baseline (Insttantt) hours-per-complexity-point over RootBlocks's, at comparable complexity (index within 2 of baseline 19) | 2026-07-01 | 2 | ## Decisions by repo @@ -21,13 +21,13 @@ Generated 2026-07-01T18:10:16.279Z by 70-execution/scripts/aggregate-metrics.mjs | Datta | datta-engineering | develop | 774 | operator-confirmed (Datta STD-002 slice, origin/develop) | 2026-07-01 | | Insttantt | insttantt-v2/insttantt-engineering | main | 90 | local-clone (to confirm) | 2026-07-01 | | SliceOps | sliceops-website | main | 42 | operator-confirmed (SliceOps STD-002 slice, origin/main) | 2026-07-01 | -| andres.co | andres-co | main | 30 | git:andres.co (live) | 2026-07-01T18:10:16.227Z | -| RootBlocks | rootblocks-engineering | main | 18 | operator-confirmed (RootBlocks STD-002 slice, origin/main) | 2026-07-01 | +| andres.co | andres-co | main | 31 | git:andres.co (live manifest) | 2026-07-03T00:57:09.852Z | +| RootBlocks | rootblocks-engineering | main | 22 | git:RootBlocks (live manifest) | 2026-07-03 | | ApiFusion | apifusion-engineering | main | 11 | operator-confirmed (ApiFusion STD-002 slice, gitea/main) | 2026-07-01 | | Resolvi | resolvi-engineering | develop | 10 | operator-confirmed (Resolvi STD-002 slice, origin/develop) | 2026-07-01 | | Nextars | nextars-orchestrator | main | 0 | no-decisions-dir | 2026-07-01 | -**Total decisions: 975** +**Total decisions: 980** V = verification: 1 git-auto, 2 human-verified (DEC-019 rubric), 3 external/declared. diff --git a/manifests/README.md b/manifests/README.md new file mode 100644 index 0000000..cbfc300 --- /dev/null +++ b/manifests/README.md @@ -0,0 +1,10 @@ +# manifests/ + +Each venture publishes its STD-002 `metrics.json` here as `.json` (lowercase venture +key). The andres-engineering aggregator reads all of them (public, no token) and folds them +into `ecosystem-metrics.json`, overriding the hand-declared counts (DEC-031). The git-auto +numbers (decisions, commits, worked_hours, loc) go live; complexity stays the human-reviewed +declared value. + +Publish from a venture's CI publish step: +`cp metrics.json ../ecosystem-metrics/manifests/.json` then commit + push. diff --git a/manifests/rootblocks.json b/manifests/rootblocks.json new file mode 100644 index 0000000..f273e11 --- /dev/null +++ b/manifests/rootblocks.json @@ -0,0 +1,11 @@ +{ + "version": "1.0.0", "std": "STD-002@1.0.0", "repo": "rootblocks-engineering", + "venture": "RootBlocks", "domain": "Intelligence", "status": "live", "baseline": false, + "repos": 10, "generatedAt": "2026-07-03T00:00:00.000Z", "generator": "70-execution/scripts/metrics.mjs", + "metrics": { + "decisions": { "value": 22, "unit": "count", "source": "git:10-decisions", "method": "find 10-decisions -name 'DEC-*.md' | wc -l on origin/main", "asOf": "2026-07-03", "auto": true, "public": true, "verification": 1 }, + "commits": { "value": 347, "unit": "count", "source": "git:subrepos", "method": "sum over 10 subrepos", "asOf": "2026-07-03", "auto": true, "public": true, "verification": 1 }, + "worked_hours": { "value": 167.7, "unit": "hours", "source": "git:subrepos-commit-timestamps", "method": "session clustering (DEC-019), summed", "asOf": "2026-07-03", "auto": true, "public": true, "verification": 1 }, + "loc": { "value": 219110, "unit": "lines", "source": "git:subrepos-tracked-source", "method": "git grep -c, code only", "asOf": "2026-07-03", "auto": true, "public": true, "verification": 1 } + } +}