@bongos/core 1.18.0 → 1.18.3
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/.bongos-core.json +132 -322
- package/README.md +1 -1
- package/config/branding.neutral.json +5 -1
- package/docs/adr/0142-project-context-is-prose-only.md +41 -0
- package/docs/adr/0143-onboarding-repo-picker-oauth-scope.md +35 -0
- package/docs/adr/README.md +5 -2
- package/docs/api/openapi.json +1789 -450
- package/docs/api-reference.md +52 -5
- package/docs/file-map.md +7 -7
- package/docs/recipes/packaging-the-core.md +13 -0
- package/docs/recipes/upgrading-the-core.md +5 -2
- package/migrations/039_newcomer_friendly_column.sql +5 -0
- package/migrations/102_remove_box_first_provision_approval.sql +4 -0
- package/migrations/core_192_github_oauth_tokens.sql +33 -0
- package/modules/hall-ui/public/my-projects.html +78 -0
- package/modules/hall-ui/public/my-projects.js +142 -0
- package/modules/hall-ui/public/scouting.html +45 -0
- package/modules/hall-ui/public/scouting.js +73 -0
- package/modules/status-ui/public/explore.html +54 -0
- package/modules/status-ui/public/explore.js +67 -0
- package/package-lock.json +2 -2
- package/package.json +1 -1
- package/public-landing/create.html +211 -14
- package/scripts/gds/cli-lib.js +11 -5
- package/scripts/gds/lint-migrations.js +102 -0
- package/scripts/gds/login.js +42 -10
- package/scripts/gds/mirror-redact.js +5 -0
- package/scripts/gds/package-core.js +263 -4
- package/scripts/gds/provision.js +145 -7
- package/scripts/gds/publish-manifest.js +15 -0
- package/scripts/gds/run-unit-tests.js +38 -14
- package/scripts/gds/setup.js +41 -0
- package/scripts/gds/ship.js +115 -31
- package/scripts/gds/upgrade.js +147 -5
- package/scripts/migrate.sh +10 -0
- package/src/bongos/auth.js +362 -5
- package/src/bongos/db.js +66 -0
- package/src/bongos/github-repos.js +93 -0
- package/src/bongos/routes/auth.js +93 -11
- package/src/bongos/routes/github.js +90 -0
- package/src/bongos/routes/instance.js +15 -3
- package/src/bongos/routes.js +2 -0
- package/src/branding.js +17 -2
- package/src/instance-config.js +16 -0
- package/src/module-api.js +29 -1
- package/tests/branding.mjs +29 -23
- package/tests/github_repos_helpers.mjs +91 -0
- package/tests/github_token_store.mjs +121 -0
- package/tests/idp_device_exchange.mjs +105 -0
- package/tests/idp_federation.mjs +100 -0
- package/tests/migrations_forward_safe.mjs +86 -0
- package/tests/module_api.mjs +1 -1
- package/tests/package_core.mjs +246 -1
- package/tests/provision.mjs +157 -0
- package/tests/pruned_lockfile_integrity.mjs +79 -0
- package/tests/ship_ci_deploy.mjs +60 -0
- package/tests/upgrade.mjs +254 -5
- package/.gitignore +0 -91
- package/docs/adr/0139-platform-history-migration-to-cloudbongos.md +0 -94
- package/docs/adr/0140-cloudbongos-standalone-reprovision.md +0 -43
- package/scripts/hall-preview/fixtures/access-requests.json +0 -20
- package/scripts/hall-preview/fixtures/achievements.json +0 -76
- package/scripts/hall-preview/fixtures/analytics__builder.json +0 -251
- package/scripts/hall-preview/fixtures/audit-log.json +0 -68
- package/scripts/hall-preview/fixtures/blockers__detail.json +0 -12
- package/scripts/hall-preview/fixtures/box__me.json +0 -5
- package/scripts/hall-preview/fixtures/boxes__cost-ledger.json +0 -69
- package/scripts/hall-preview/fixtures/builders__active-claims.json +0 -1
- package/scripts/hall-preview/fixtures/builders__directory.json +0 -81
- package/scripts/hall-preview/fixtures/builders__roster.json +0 -48
- package/scripts/hall-preview/fixtures/goals.json +0 -502
- package/scripts/hall-preview/fixtures/goals__25.json +0 -96
- package/scripts/hall-preview/fixtures/goals__26.json +0 -67
- package/scripts/hall-preview/fixtures/goals__3.json +0 -103
- package/scripts/hall-preview/fixtures/goals__35.json +0 -49
- package/scripts/hall-preview/fixtures/goals__conflicts.json +0 -154
- package/scripts/hall-preview/fixtures/goals__detail.json +0 -96
- package/scripts/hall-preview/fixtures/goals__inbox.json +0 -5
- package/scripts/hall-preview/fixtures/goals__requests.json +0 -3
- package/scripts/hall-preview/fixtures/grades__by-builder.json +0 -32
- package/scripts/hall-preview/fixtures/inbox.json +0 -330
- package/scripts/hall-preview/fixtures/inbox__detail.json +0 -15
- package/scripts/hall-preview/fixtures/instance.json +0 -124
- package/scripts/hall-preview/fixtures/leaderboard.json +0 -184
- package/scripts/hall-preview/fixtures/me.json +0 -476
- package/scripts/hall-preview/fixtures/me__art-key__own.json +0 -6
- package/scripts/hall-preview/fixtures/me__event-sound-prefs.json +0 -209
- package/scripts/hall-preview/fixtures/me__recent-ships.json +0 -304
- package/scripts/hall-preview/fixtures/me__render.json +0 -5
- package/scripts/hall-preview/fixtures/me__skill-prefs.json +0 -143
- package/scripts/hall-preview/fixtures/me__sound-prefs.json +0 -67
- package/scripts/hall-preview/fixtures/me__wandering.json +0 -43
- package/scripts/hall-preview/fixtures/override-requests.json +0 -15
- package/scripts/hall-preview/fixtures/provisioning__fleet.json +0 -1
- package/scripts/hall-preview/fixtures/provisioning__fleet__cost-ledger.json +0 -1
- package/scripts/hall-preview/fixtures/provisioning__instances.json +0 -1
- package/scripts/hall-preview/fixtures/public__analytics__ecosystem.json +0 -516
- package/scripts/hall-preview/fixtures/public__bounty-table.json +0 -37
- package/scripts/hall-preview/fixtures/public__cost-summary.json +0 -742
- package/scripts/hall-preview/fixtures/public__estimation-drift.json +0 -41
- package/scripts/hall-preview/fixtures/public__grades.json +0 -50
- package/scripts/hall-preview/fixtures/public__progress.json +0 -124
- package/scripts/hall-preview/fixtures/public__recent-shipped.json +0 -426
- package/scripts/hall-preview/fixtures/public__repo-health.json +0 -160
- package/scripts/hall-preview/fixtures/public__repo-info.json +0 -5
- package/scripts/hall-preview/fixtures/security__docs.json +0 -10
- package/scripts/hall-preview/fixtures/security__reports.json +0 -31
- package/scripts/hall-preview/fixtures/sessions__search.json +0 -9
- package/scripts/hall-preview/fixtures/tasks.json +0 -2420
- package/scripts/hall-preview/fixtures/tasks__claimable.json +0 -2555
- package/scripts/hall-preview/fixtures/tasks__detail.json +0 -111
- package/scripts/hall-preview/fixtures/tasks__peer-votes__feed.json +0 -330
- package/scripts/hall-preview/fixtures/versions.json +0 -89
|
@@ -1,103 +0,0 @@
|
|
|
1
|
-
{
|
|
2
|
-
"goal": {
|
|
3
|
-
"id": "3",
|
|
4
|
-
"version_id": "BONGOS-V1",
|
|
5
|
-
"title": "BONGOS-V1 — general",
|
|
6
|
-
"description": "Default catch-all goal for BONGOS-V1, auto-created by migration 160 (ADR 0086 §2). Holds the criteria that predate the goal tier; Archon-owned, members empty.",
|
|
7
|
-
"scope_modules": [],
|
|
8
|
-
"status": "open",
|
|
9
|
-
"visibility": "public",
|
|
10
|
-
"created_by": null,
|
|
11
|
-
"succeeded_by_goal_id": null,
|
|
12
|
-
"sort_order": 5,
|
|
13
|
-
"created_at": "2026-06-24T19:35:31.472Z",
|
|
14
|
-
"updated_at": "2026-07-05T21:41:32.144Z"
|
|
15
|
-
},
|
|
16
|
-
"members": [
|
|
17
|
-
{
|
|
18
|
-
"goal_id": "3",
|
|
19
|
-
"builder_id": "1",
|
|
20
|
-
"role": "member",
|
|
21
|
-
"joined_at": "2026-07-02T11:53:56.350Z",
|
|
22
|
-
"github_login": "lars589",
|
|
23
|
-
"display_name": "lars589",
|
|
24
|
-
"avatar_url": "https://avatars.githubusercontent.com/u/283020391?v=4",
|
|
25
|
-
"rank": "archon"
|
|
26
|
-
},
|
|
27
|
-
{
|
|
28
|
-
"goal_id": "3",
|
|
29
|
-
"builder_id": "95",
|
|
30
|
-
"role": "member",
|
|
31
|
-
"joined_at": "2026-07-02T17:01:01.676Z",
|
|
32
|
-
"github_login": "jaxri",
|
|
33
|
-
"display_name": "Jackson Rini",
|
|
34
|
-
"avatar_url": "https://avatars.githubusercontent.com/u/64553469?v=4",
|
|
35
|
-
"rank": "metic"
|
|
36
|
-
}
|
|
37
|
-
],
|
|
38
|
-
"criteria": [
|
|
39
|
-
{
|
|
40
|
-
"id": "101",
|
|
41
|
-
"version_id": "BONGOS-V1",
|
|
42
|
-
"criterion_id": "signed-installable",
|
|
43
|
-
"criterion_md": "**Signed, installable, and permission-guided on Mac + Windows.** A code-signed, notarized macOS build and a signed Windows build install from a branded download and launch as a floating menu-bar/tray app, reusing the existing Dev Box app distribution + Apple Developer ID; the Dev Box switch is absorbed as a module of the bongos app rather than shipping as a separate install. Done when: the bongos app is one Electron app that contains the prior Dev Box functionality as a module; a signed+notarized Mac build and a signed Windows build install from the branded /downloads redirect and auto-update; a first-run permission wizard detects + deep-links Screen Recording and Microphone grants with live grant-state; and an unsigned dev-build path exists for local iteration.",
|
|
44
|
-
"satisfied": false,
|
|
45
|
-
"sort_order": 1,
|
|
46
|
-
"goal_id": "3"
|
|
47
|
-
},
|
|
48
|
-
{
|
|
49
|
-
"id": "102",
|
|
50
|
-
"version_id": "BONGOS-V1",
|
|
51
|
-
"criterion_id": "captures-anywhere",
|
|
52
|
-
"criterion_md": "**Captures narrated feedback over any on-screen target.** The floating toolbar overlays any window (the Zoom annotation model) and records the microphone plus time-aligned ~1/sec snapshots of the chosen target, with freehand/box/arrow/text markup and a freeze-frame, on macOS and Windows. Done when: a transparent, always-on-top, click-through overlay draws over arbitrary other apps (surviving macOS fullscreen/Spaces and Windows multi-monitor DPI); a global hotkey summons/dismisses the bar; Record captures mic + the chosen window/screen at ~1/sec with snapshot-on-change + perceptual dedup + a frame cap; and Markup draws and freezes over any pixels.",
|
|
53
|
-
"satisfied": false,
|
|
54
|
-
"sort_order": 2,
|
|
55
|
-
"goal_id": "3"
|
|
56
|
-
},
|
|
57
|
-
{
|
|
58
|
-
"id": "103",
|
|
59
|
-
"version_id": "BONGOS-V1",
|
|
60
|
-
"criterion_id": "cheap-complete-synthesis",
|
|
61
|
-
"criterion_md": "**Synthesizes one cheap, complete, model-agnostic prompt.** The capture is fused into a single LLM-ready bundle at a disciplined token envelope — frames dominate cost, so audio is transcribed on-device to text and frames are deduped + salience-escalated rather than sent 1/sec at full resolution. Done when: on-device transcription (whisper.cpp) yields word-timestamped text; transcript and frames are time-aligned and only transcript/markup-flagged frames escalate to full resolution; a deterministic prompt.md is assembled with inlined absolute image paths; and a typical multi-minute session lands at the disciplined envelope (~5-11k tokens), not the ~70k+ naive cost.",
|
|
62
|
-
"satisfied": false,
|
|
63
|
-
"sort_order": 3,
|
|
64
|
-
"goal_id": "3"
|
|
65
|
-
},
|
|
66
|
-
{
|
|
67
|
-
"id": "104",
|
|
68
|
-
"version_id": "BONGOS-V1",
|
|
69
|
-
"criterion_id": "lands-in-claude",
|
|
70
|
-
"criterion_md": "**Lands in Claude — Desktop and Code — reliably and model-agnostically.** The synthesized bundle reaches both Claude surfaces without a fragile step, under a documented contract that works for any agent. Done when: a file-bundle handoff (prompt.md + image files) plus clipboard text works for Claude Desktop; a /feedback path injects the prompt and loads the image paths in Claude Code; an optional local stdio MCP server exposes the latest bundle for a hands-free pull; and an ADR + README document the architecture and the model-agnostic prompt/handoff contract.",
|
|
71
|
-
"satisfied": false,
|
|
72
|
-
"sort_order": 4,
|
|
73
|
-
"goal_id": "3"
|
|
74
|
-
},
|
|
75
|
-
{
|
|
76
|
-
"id": "106",
|
|
77
|
-
"version_id": "BONGOS-V1",
|
|
78
|
-
"criterion_id": "module-system-live",
|
|
79
|
-
"criterion_md": "**The project-extensible module system is live — the whole product is `core + modules`.** Cloud Bongos's closed four-module registry becomes self-describing packages the platform discovers, validates, and mounts; a host can ADD or CONFIGURE modules without forking core, and the trust boundary (ADR 0016) is ENFORCED across module routes, not trusted. Built as an incremental strangler migration (ADR 0083) — reorganize, not rewrite; single-package, single-process, no-bundler preserved. Done when: (1) `src/module-api.js` is the stable, semver'd doorway and the only core file a module may import; (2) a loader discovers/validates/mounts `modules/*/module.json` behind kernel-composed auth and replaces the hardcoded `KNOWN_MODULES` registry, with a kernel seam registry (ports + events) for cross-module capability; (3) the four feature modules (dev-box, game, discord, art-pipeline) are moved into `modules/<key>/` and the inline `if (isModuleEnabled())` gates are deleted, with OTB behaving byte-identically (the proof); (4) fitness functions fail the build on any boundary violation (core never imports a module, modules import only the published API, every module write-route is rank-gated, core carries no module code, module migrations are additive + namespaced); (5) module-owned migrations generalize the `migrations/game/` precedent to `modules/<key>/migrations/` (enabled-gated apply, disable-preserves-data); (6) `bongos module new <key>` scaffolds a module and `bongos upgrade` pre-checks coreVersion; and (7) docs/modules-contract.md documents the plugin-API contract + a module-author recipe.",
|
|
80
|
-
"satisfied": true,
|
|
81
|
-
"sort_order": 5,
|
|
82
|
-
"goal_id": "3"
|
|
83
|
-
},
|
|
84
|
-
{
|
|
85
|
-
"id": "108",
|
|
86
|
-
"version_id": "BONGOS-V1",
|
|
87
|
-
"criterion_id": "goal-scoped-work-hierarchy",
|
|
88
|
-
"criterion_md": "**Builders are assigned module-scoped goals, not individual tasks — and can author their own work within a goal's wall, enforced server-side.** The owner stops hand-authoring every task; a builder joins a shared, module-scoped goal and gains bounded authority to create + organize tasks beneath it, never exceeding the goal's module scope or touching the protected core. The six-tier hierarchy (Project → Version → Goal → Criteria → Task → Sub-task) is a per-instance config preset; enforcement is core (ADR 0086, building on ADR 0016/0043/0049/0083/0084). Done when: (1) a module-scope map (`module-scope-map.js`, importing `PROTECTED_GLOBS`) + a configurable hierarchy preset (`config/hierarchy.json` + `hierarchy-config.js`, onboarding-edited) exist; (2) a `goals` tier (shared, joinable, `scope_modules`) sits between versions and criteria, `done_when_criteria` re-parent under goals (backfilled under a per-version default goal), and `tasks` carry `goal_id`, with the `/status` rollup running Version → Goals → Criteria → Tasks; (3) a goal member can author a task via `POST /goals/:id/tasks` only if it is scope-subset + clears the protected-path gate + the auto-derived rank floor, with two fitness checks (goal routes pinned in `route-rank-check`; scope code imports `PROTECTED_GLOBS`) and an abuse-matrix test proving the wall holds; (4) a polymorphic dependency edge spans tasks/goals/criteria and resolves at the existing claim gate, a criterion auto-flags \"met — pending review\" when its tasks ship, a `/goal-review` cadence (Metic+) confirms → auto-achieves goals, and goals archive/reopen/carry-forward at rescope; and (5) a sub-Metic builder demonstrably authors, claims, and ships a task inside an assigned goal while being BLOCKED server-side from authoring one that touches a protected path outside scope (the live proof). Phase 5 of the ADR (an AI relevance judge + sub-Metic membership inside protected-scope goals) is deferred to its own security-reviewed ADR.",
|
|
89
|
-
"satisfied": false,
|
|
90
|
-
"sort_order": 6,
|
|
91
|
-
"goal_id": "3"
|
|
92
|
-
}
|
|
93
|
-
],
|
|
94
|
-
"dependencies": [
|
|
95
|
-
{
|
|
96
|
-
"id": "26",
|
|
97
|
-
"title": "Cloud Bongos productization and self-host",
|
|
98
|
-
"status": "open",
|
|
99
|
-
"version_id": "BONGOS-V1",
|
|
100
|
-
"satisfied": false
|
|
101
|
-
}
|
|
102
|
-
]
|
|
103
|
-
}
|
|
@@ -1,49 +0,0 @@
|
|
|
1
|
-
{
|
|
2
|
-
"goal": {
|
|
3
|
-
"id": "35",
|
|
4
|
-
"version_id": "BONGOS-V1",
|
|
5
|
-
"title": "Project creation flow",
|
|
6
|
-
"description": "A new owner goes from zero to a live, owned STANDALONE Cloud Bongos instance (own repo + pinned @cloudbongos/core, ADR 0108) through one guided flow — no hand-editing of servers — with the human-only steps (GitHub repo, OAuth app + secret, domain, first sign-in) precise, UI-first, and verified. The canonical step sequence is the source of truth; skill/CLI/hall are forms over it. Distilled from the Emersonian Circles standup (task 1917).",
|
|
7
|
-
"scope_modules": [],
|
|
8
|
-
"status": "open",
|
|
9
|
-
"visibility": "public",
|
|
10
|
-
"created_by": "1",
|
|
11
|
-
"succeeded_by_goal_id": null,
|
|
12
|
-
"sort_order": 3,
|
|
13
|
-
"created_at": "2026-07-04T09:16:29.595Z",
|
|
14
|
-
"updated_at": "2026-07-08T22:08:03.567Z"
|
|
15
|
-
},
|
|
16
|
-
"members": [
|
|
17
|
-
{
|
|
18
|
-
"goal_id": "35",
|
|
19
|
-
"builder_id": "1",
|
|
20
|
-
"role": "lead",
|
|
21
|
-
"joined_at": "2026-07-04T09:16:29.595Z",
|
|
22
|
-
"github_login": "lars589",
|
|
23
|
-
"display_name": "lars589",
|
|
24
|
-
"avatar_url": "https://avatars.githubusercontent.com/u/283020391?v=4",
|
|
25
|
-
"rank": "archon"
|
|
26
|
-
}
|
|
27
|
-
],
|
|
28
|
-
"criteria": [
|
|
29
|
-
{
|
|
30
|
-
"id": "165",
|
|
31
|
-
"version_id": "BONGOS-V1",
|
|
32
|
-
"criterion_id": "project-creation-flow",
|
|
33
|
-
"criterion_md": "A new owner goes from zero to a live, owned STANDALONE Cloud Bongos instance (own repo + pinned @cloudbongos/core, ADR 0108) through one guided flow — no hand-editing of servers — with the human-only steps (GitHub repo, OAuth app + secret, domain, first sign-in) precise, UI-first, and verified. The canonical step sequence is the source of truth; skill/CLI/hall are forms over it. Distilled from the Emersonian Circles standup (task 1917).",
|
|
34
|
-
"satisfied": true,
|
|
35
|
-
"sort_order": 41,
|
|
36
|
-
"goal_id": "35"
|
|
37
|
-
},
|
|
38
|
-
{
|
|
39
|
-
"id": "166",
|
|
40
|
-
"version_id": "BONGOS-V1",
|
|
41
|
-
"criterion_id": "adopt-existing-repo",
|
|
42
|
-
"criterion_md": "An owner with an EXISTING repository (app code, git history, backlog) can adopt Cloud Bongos onto it — layer the pinned @cloudbongos/core + config/ + .claude/ without clobbering, reflect the repo's REAL current state (not a synthetic 'V1 — Prove the loop'), import its existing backlog into GDS tasks, and get a conflict pre-flight — through the same guided flow. Complements the greenfield criterion (project-creation-flow); this is the brownfield branch. Raised while abandoning task 1689 (2026-07-04); the standalone two-repo model is already proven by Emersonian Circles (task 1917).",
|
|
43
|
-
"satisfied": true,
|
|
44
|
-
"sort_order": 42,
|
|
45
|
-
"goal_id": "35"
|
|
46
|
-
}
|
|
47
|
-
],
|
|
48
|
-
"dependencies": []
|
|
49
|
-
}
|
|
@@ -1,154 +0,0 @@
|
|
|
1
|
-
{
|
|
2
|
-
"ok": true,
|
|
3
|
-
"goal_id": 25,
|
|
4
|
-
"conflicts": [
|
|
5
|
-
{
|
|
6
|
-
"task_a": 2168,
|
|
7
|
-
"task_b": 2169,
|
|
8
|
-
"title_a": "Delete orphaned builders.js render paths (security-reports, roster, skill-prefs)",
|
|
9
|
-
"title_b": "Home redesign: attention inbox, Projects card, linked stat tiles, zone budgets",
|
|
10
|
-
"overlapping_paths": [
|
|
11
|
-
"modules/hall-ui/public/builders.js"
|
|
12
|
-
],
|
|
13
|
-
"severity": "low",
|
|
14
|
-
"has_active_claims": false,
|
|
15
|
-
"cross_goal": false
|
|
16
|
-
},
|
|
17
|
-
{
|
|
18
|
-
"task_a": 2168,
|
|
19
|
-
"task_b": 2174,
|
|
20
|
-
"title_a": "Delete orphaned builders.js render paths (security-reports, roster, skill-prefs)",
|
|
21
|
-
"title_b": "Standing consolidation: 4 rail sections, Achievements folded in, bounties to Economy",
|
|
22
|
-
"overlapping_paths": [
|
|
23
|
-
"modules/hall-ui/public/builders.js"
|
|
24
|
-
],
|
|
25
|
-
"severity": "low",
|
|
26
|
-
"has_active_claims": false,
|
|
27
|
-
"cross_goal": false
|
|
28
|
-
},
|
|
29
|
-
{
|
|
30
|
-
"task_a": 2168,
|
|
31
|
-
"task_b": 2177,
|
|
32
|
-
"title_a": "Delete orphaned builders.js render paths (security-reports, roster, skill-prefs)",
|
|
33
|
-
"title_b": "Widget-registry governance: zone budgets, metadata validation, placement doctrine",
|
|
34
|
-
"overlapping_paths": [
|
|
35
|
-
"modules/hall-ui/public/builders.js"
|
|
36
|
-
],
|
|
37
|
-
"severity": "low",
|
|
38
|
-
"has_active_claims": false,
|
|
39
|
-
"cross_goal": false
|
|
40
|
-
},
|
|
41
|
-
{
|
|
42
|
-
"task_a": 2169,
|
|
43
|
-
"task_b": 2174,
|
|
44
|
-
"title_a": "Home redesign: attention inbox, Projects card, linked stat tiles, zone budgets",
|
|
45
|
-
"title_b": "Standing consolidation: 4 rail sections, Achievements folded in, bounties to Economy",
|
|
46
|
-
"overlapping_paths": [
|
|
47
|
-
"modules/hall-ui/public/builders.js",
|
|
48
|
-
"modules/hall-ui/public/hall-widgets.js",
|
|
49
|
-
"modules/hall-ui/public/index.html"
|
|
50
|
-
],
|
|
51
|
-
"severity": "low",
|
|
52
|
-
"has_active_claims": false,
|
|
53
|
-
"cross_goal": false
|
|
54
|
-
},
|
|
55
|
-
{
|
|
56
|
-
"task_a": 2169,
|
|
57
|
-
"task_b": 2177,
|
|
58
|
-
"title_a": "Home redesign: attention inbox, Projects card, linked stat tiles, zone budgets",
|
|
59
|
-
"title_b": "Widget-registry governance: zone budgets, metadata validation, placement doctrine",
|
|
60
|
-
"overlapping_paths": [
|
|
61
|
-
"modules/hall-ui/public/builders.js"
|
|
62
|
-
],
|
|
63
|
-
"severity": "low",
|
|
64
|
-
"has_active_claims": false,
|
|
65
|
-
"cross_goal": false
|
|
66
|
-
},
|
|
67
|
-
{
|
|
68
|
-
"task_a": 2174,
|
|
69
|
-
"task_b": 2175,
|
|
70
|
-
"title_a": "Standing consolidation: 4 rail sections, Achievements folded in, bounties to Economy",
|
|
71
|
-
"title_b": "Sidebar IA regroup by audience + Economy in Docs + task page breadcrumb",
|
|
72
|
-
"overlapping_paths": [
|
|
73
|
-
"modules/hall-ui/public/shell.js"
|
|
74
|
-
],
|
|
75
|
-
"severity": "low",
|
|
76
|
-
"has_active_claims": false,
|
|
77
|
-
"cross_goal": false
|
|
78
|
-
},
|
|
79
|
-
{
|
|
80
|
-
"task_a": 2174,
|
|
81
|
-
"task_b": 2177,
|
|
82
|
-
"title_a": "Standing consolidation: 4 rail sections, Achievements folded in, bounties to Economy",
|
|
83
|
-
"title_b": "Widget-registry governance: zone budgets, metadata validation, placement doctrine",
|
|
84
|
-
"overlapping_paths": [
|
|
85
|
-
"modules/hall-ui/public/builders.js"
|
|
86
|
-
],
|
|
87
|
-
"severity": "low",
|
|
88
|
-
"has_active_claims": false,
|
|
89
|
-
"cross_goal": false
|
|
90
|
-
},
|
|
91
|
-
{
|
|
92
|
-
"task_a": 2174,
|
|
93
|
-
"task_b": 2178,
|
|
94
|
-
"title_a": "Standing consolidation: 4 rail sections, Achievements folded in, bounties to Economy",
|
|
95
|
-
"title_b": "Jump palette: Ctrl/Cmd-K + top-bar search slot (client-side)",
|
|
96
|
-
"overlapping_paths": [
|
|
97
|
-
"modules/hall-ui/public/shell.js"
|
|
98
|
-
],
|
|
99
|
-
"severity": "low",
|
|
100
|
-
"has_active_claims": false,
|
|
101
|
-
"cross_goal": false
|
|
102
|
-
},
|
|
103
|
-
{
|
|
104
|
-
"task_a": 2175,
|
|
105
|
-
"task_b": 2178,
|
|
106
|
-
"title_a": "Sidebar IA regroup by audience + Economy in Docs + task page breadcrumb",
|
|
107
|
-
"title_b": "Jump palette: Ctrl/Cmd-K + top-bar search slot (client-side)",
|
|
108
|
-
"overlapping_paths": [
|
|
109
|
-
"modules/hall-ui/public/shell.js",
|
|
110
|
-
"modules/hall-ui/public/style.css"
|
|
111
|
-
],
|
|
112
|
-
"severity": "low",
|
|
113
|
-
"has_active_claims": false,
|
|
114
|
-
"cross_goal": false
|
|
115
|
-
},
|
|
116
|
-
{
|
|
117
|
-
"task_a": 2175,
|
|
118
|
-
"task_b": 2179,
|
|
119
|
-
"title_a": "Sidebar IA regroup by audience + Economy in Docs + task page breadcrumb",
|
|
120
|
-
"title_b": "Hall consistency audit + density polish (final)",
|
|
121
|
-
"overlapping_paths": [
|
|
122
|
-
"modules/hall-ui/public/style.css"
|
|
123
|
-
],
|
|
124
|
-
"severity": "low",
|
|
125
|
-
"has_active_claims": false,
|
|
126
|
-
"cross_goal": false
|
|
127
|
-
},
|
|
128
|
-
{
|
|
129
|
-
"task_a": 2177,
|
|
130
|
-
"task_b": 2179,
|
|
131
|
-
"title_a": "Widget-registry governance: zone budgets, metadata validation, placement doctrine",
|
|
132
|
-
"title_b": "Hall consistency audit + density polish (final)",
|
|
133
|
-
"overlapping_paths": [
|
|
134
|
-
"modules/hall-ui/CLAUDE.md"
|
|
135
|
-
],
|
|
136
|
-
"severity": "low",
|
|
137
|
-
"has_active_claims": false,
|
|
138
|
-
"cross_goal": false
|
|
139
|
-
},
|
|
140
|
-
{
|
|
141
|
-
"task_a": 2178,
|
|
142
|
-
"task_b": 2179,
|
|
143
|
-
"title_a": "Jump palette: Ctrl/Cmd-K + top-bar search slot (client-side)",
|
|
144
|
-
"title_b": "Hall consistency audit + density polish (final)",
|
|
145
|
-
"overlapping_paths": [
|
|
146
|
-
"modules/hall-ui/public/style.css"
|
|
147
|
-
],
|
|
148
|
-
"severity": "low",
|
|
149
|
-
"has_active_claims": false,
|
|
150
|
-
"cross_goal": false
|
|
151
|
-
}
|
|
152
|
-
],
|
|
153
|
-
"cross_goals_considered": []
|
|
154
|
-
}
|
|
@@ -1,96 +0,0 @@
|
|
|
1
|
-
{
|
|
2
|
-
"goal": {
|
|
3
|
-
"id": "25",
|
|
4
|
-
"version_id": "BONGOS-V1",
|
|
5
|
-
"title": "Builder experience — hall, dev box, and skills",
|
|
6
|
-
"description": "GDS-V4 carryover (ADR 0103): everything a builder directly touches — the builders hall UI, the dev box + sandbox, and the day-to-day skills — works without needing Claude for routine actions.",
|
|
7
|
-
"scope_modules": [],
|
|
8
|
-
"status": "open",
|
|
9
|
-
"visibility": "public",
|
|
10
|
-
"created_by": "1",
|
|
11
|
-
"succeeded_by_goal_id": null,
|
|
12
|
-
"sort_order": 7,
|
|
13
|
-
"created_at": "2026-07-02T21:03:02.890Z",
|
|
14
|
-
"updated_at": "2026-07-05T21:41:32.144Z"
|
|
15
|
-
},
|
|
16
|
-
"members": [
|
|
17
|
-
{
|
|
18
|
-
"goal_id": "25",
|
|
19
|
-
"builder_id": "1",
|
|
20
|
-
"role": "lead",
|
|
21
|
-
"joined_at": "2026-07-03T02:29:09.054Z",
|
|
22
|
-
"github_login": "lars589",
|
|
23
|
-
"display_name": "lars589",
|
|
24
|
-
"avatar_url": "https://avatars.githubusercontent.com/u/283020391?v=4",
|
|
25
|
-
"rank": "archon"
|
|
26
|
-
},
|
|
27
|
-
{
|
|
28
|
-
"goal_id": "25",
|
|
29
|
-
"builder_id": "95",
|
|
30
|
-
"role": "lead",
|
|
31
|
-
"joined_at": "2026-07-03T14:54:15.322Z",
|
|
32
|
-
"github_login": "jaxri",
|
|
33
|
-
"display_name": "Jackson Rini",
|
|
34
|
-
"avatar_url": "https://avatars.githubusercontent.com/u/64553469?v=4",
|
|
35
|
-
"rank": "metic"
|
|
36
|
-
},
|
|
37
|
-
{
|
|
38
|
-
"goal_id": "25",
|
|
39
|
-
"builder_id": "94",
|
|
40
|
-
"role": "member",
|
|
41
|
-
"joined_at": "2026-07-03T19:06:25.045Z",
|
|
42
|
-
"github_login": "scootermack",
|
|
43
|
-
"display_name": "scootermack",
|
|
44
|
-
"avatar_url": "https://avatars.githubusercontent.com/u/295990394?v=4",
|
|
45
|
-
"rank": "metic"
|
|
46
|
-
}
|
|
47
|
-
],
|
|
48
|
-
"criteria": [
|
|
49
|
-
{
|
|
50
|
-
"id": "138",
|
|
51
|
-
"version_id": "BONGOS-V1",
|
|
52
|
-
"criterion_id": "gcarry-bx-hall",
|
|
53
|
-
"criterion_md": "Core task actions (claim, release, ship-trigger, triage) and a task board work in the builders hall WITHOUT invoking the LLM.",
|
|
54
|
-
"satisfied": false,
|
|
55
|
-
"sort_order": 10,
|
|
56
|
-
"goal_id": "25"
|
|
57
|
-
},
|
|
58
|
-
{
|
|
59
|
-
"id": "139",
|
|
60
|
-
"version_id": "BONGOS-V1",
|
|
61
|
-
"criterion_id": "gcarry-bx-identity",
|
|
62
|
-
"criterion_md": "A builder can view and edit their own profile, see works-completed, and read an efficiency-aware leaderboard.",
|
|
63
|
-
"satisfied": false,
|
|
64
|
-
"sort_order": 20,
|
|
65
|
-
"goal_id": "25"
|
|
66
|
-
},
|
|
67
|
-
{
|
|
68
|
-
"id": "140",
|
|
69
|
-
"version_id": "BONGOS-V1",
|
|
70
|
-
"criterion_id": "gcarry-bx-onramp",
|
|
71
|
-
"criterion_md": "Newcomers never dead-end: auth/re-auth is browser-clickable and self-explanatory, and the dev box + sandbox are discoverable.",
|
|
72
|
-
"satisfied": false,
|
|
73
|
-
"sort_order": 30,
|
|
74
|
-
"goal_id": "25"
|
|
75
|
-
},
|
|
76
|
-
{
|
|
77
|
-
"id": "141",
|
|
78
|
-
"version_id": "BONGOS-V1",
|
|
79
|
-
"criterion_id": "gcarry-bx-box",
|
|
80
|
-
"criterion_md": "A builder dev box + sandbox is robust: uncommitted work is not lost on reclaim, host-keys survive rebuilds, and staging is cross-platform.",
|
|
81
|
-
"satisfied": false,
|
|
82
|
-
"sort_order": 40,
|
|
83
|
-
"goal_id": "25"
|
|
84
|
-
},
|
|
85
|
-
{
|
|
86
|
-
"id": "172",
|
|
87
|
-
"version_id": "BONGOS-V1",
|
|
88
|
-
"criterion_id": "accessibility-fluency-profile",
|
|
89
|
-
"criterion_md": "**The build experience is accessible to every builder type — by default, and measured — not just tuned for engineers.** A non-technical owner-builder and an expert engineer can issue the same prompt and each gets an experience pitched to them, without having to know to ask; accessibility is a default the system owns and measures, and an expert's terse experience is never degraded to help a newcomer. **Done when:** a portable per-builder communication/fluency profile lives in the core (a reserved `behavior_prefs` key, server-resolved and injected each session like the wandering knob, accessible-leaning default, no rank cap); CLAUDE.md §2 'The Prompter' is refactored to express itself through that core knob so the behavior ships to any scaffolded instance; the methodology core carries a plain-language posture (product/cost framing before pattern taxonomy, jargon defined on first use, UI click-path before terminal command) injected via the Conductor hook and scaled by the profile; the session evaluator (grader or BFG 6D) gains an accessibility dimension scored from the transcript (unexplained-jargon density, terminal-where-a-UI-exists, outcome-vs-implementation), tracked per-builder and surfaced on the dashboard; a small replayable 'same prompts, two experiences' regression is graded against a floor; widget richness is profile-aware not binary; and the system biases toward the supported path over a bespoke technical fix. Proof: replay a fixed beginner-prompt set under a non-technical vs engineer profile and show the accessibility score clears the floor for the former without regressing terseness for the latter. (Carried from GDS-V4 C10 / proposal-337 on 2026-07-04; foundation shipped as the wandering (task 1268) + widget (task 1279) behavior_prefs knobs; primary implementation task is 2010 / BV1.R130.)",
|
|
90
|
-
"satisfied": false,
|
|
91
|
-
"sort_order": 51,
|
|
92
|
-
"goal_id": "25"
|
|
93
|
-
}
|
|
94
|
-
],
|
|
95
|
-
"dependencies": []
|
|
96
|
-
}
|
|
@@ -1,32 +0,0 @@
|
|
|
1
|
-
{
|
|
2
|
-
"window_days": 30,
|
|
3
|
-
"builders": [
|
|
4
|
-
{
|
|
5
|
-
"builder_id": "90",
|
|
6
|
-
"display_name": "Preview Alpha",
|
|
7
|
-
"github_login": "preview-alpha",
|
|
8
|
-
"n": 14,
|
|
9
|
-
"avg_score": "8.6",
|
|
10
|
-
"pass_rate": 0.93,
|
|
11
|
-
"last_graded_at": "2026-07-10T11:00:00.000Z"
|
|
12
|
-
},
|
|
13
|
-
{
|
|
14
|
-
"builder_id": "91",
|
|
15
|
-
"display_name": "Preview Beta",
|
|
16
|
-
"github_login": "preview-beta",
|
|
17
|
-
"n": 9,
|
|
18
|
-
"avg_score": "7.9",
|
|
19
|
-
"pass_rate": 0.78,
|
|
20
|
-
"last_graded_at": "2026-07-09T16:20:00.000Z"
|
|
21
|
-
},
|
|
22
|
-
{
|
|
23
|
-
"builder_id": "92",
|
|
24
|
-
"display_name": "Preview Gamma",
|
|
25
|
-
"github_login": "preview-gamma",
|
|
26
|
-
"n": 4,
|
|
27
|
-
"avg_score": "9.1",
|
|
28
|
-
"pass_rate": 1.0,
|
|
29
|
-
"last_graded_at": "2026-07-08T08:05:00.000Z"
|
|
30
|
-
}
|
|
31
|
-
]
|
|
32
|
-
}
|