@bongos/core 1.21.175 → 1.21.177
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 +3371 -1636
- package/.claude/skills/ask-for-help/SKILL.md +4 -4
- package/.claude/skills/backlog-review/SKILL.md +1 -1
- package/.claude/skills/blocker-review/SKILL.md +2 -2
- package/.claude/skills/blocker-solve/SKILL.md +4 -4
- package/.claude/skills/bongos-feedback/SKILL.md +1 -1
- package/.claude/skills/bug-triage/SKILL.md +8 -8
- package/.claude/skills/builder-backup/SKILL.md +3 -3
- package/.claude/skills/builder-claim/SKILL.md +5 -5
- package/.claude/skills/builder-cost/SKILL.md +5 -5
- package/.claude/skills/builder-end/SKILL.md +6 -6
- package/.claude/skills/builder-exit/SKILL.md +2 -2
- package/.claude/skills/builder-key/SKILL.md +6 -6
- package/.claude/skills/builder-reauth/SKILL.md +4 -4
- package/.claude/skills/builder-redteam/SKILL.md +3 -3
- package/.claude/skills/builder-release/SKILL.md +3 -3
- package/.claude/skills/builder-sequence/SKILL.md +8 -8
- package/.claude/skills/builder-setup/SKILL.md +4 -4
- package/.claude/skills/builder-ship/SKILL.md +7 -7
- package/.claude/skills/builder-stage/SKILL.md +8 -8
- package/.claude/skills/builder-start/SKILL.md +4 -4
- package/.claude/skills/collab-review/SKILL.md +5 -5
- package/.claude/skills/design/SKILL.md +6 -4
- package/.claude/skills/design-sync/SKILL.md +3 -3
- package/.claude/skills/figma-design-sync/SKILL.md +4 -4
- package/.claude/skills/fix-task/SKILL.md +8 -8
- package/.claude/skills/goal-close/SKILL.md +9 -9
- package/.claude/skills/goal-create/SKILL.md +18 -18
- package/.claude/skills/grade-recover/SKILL.md +8 -8
- package/.claude/skills/grade-sweep/SKILL.md +15 -15
- package/.claude/skills/idea-triage/SKILL.md +15 -15
- package/.claude/skills/merge-mode/SKILL.md +14 -14
- package/.claude/skills/new-project/SKILL.md +5 -5
- package/.claude/skills/owner-review/SKILL.md +1 -1
- package/.claude/skills/planning-session/SKILL.md +15 -15
- package/.claude/skills/priority-session/SKILL.md +6 -6
- package/.claude/skills/read-session-export/SKILL.md +3 -3
- package/.claude/skills/recall/SKILL.md +7 -7
- package/.claude/skills/scan-before-install/SKILL.md +3 -3
- package/.claude/skills/session-handoff/SKILL.md +1 -1
- package/.claude/skills/ship-check/SKILL.md +3 -3
- package/.claude/skills/status/SKILL.md +3 -3
- package/.claude/skills/strand-fix/SKILL.md +6 -6
- package/.claude/skills/worktree-clean/SKILL.md +4 -4
- package/.gitattributes +12 -32
- package/GOVERNMENT.md +1 -1
- package/README.md +8 -8
- package/bin/bongos.js +23 -23
- package/clients/bongos-client/README.md +2 -2
- package/clients/bongos-client/bongos-client.global.js +22 -4
- package/clients/bongos-client/index.cjs +22 -4
- package/clients/bongos-client/index.d.ts +33 -4
- package/clients/bongos-client/index.mjs +21 -3
- package/config/branding.neutral.json +1 -1
- package/config/design-tokens.schema.json +1 -1
- package/config/modules.neutral.json +1 -3
- package/config/scheduled-routines.json +3 -8
- package/docs/adr/0029-status-page-outage-resilience.md +6 -6
- package/docs/adr/0091-bounding-the-kernel-and-db-carve.md +1 -1
- package/docs/adr/0093-tranche-2-core-carve-sequence.md +1 -1
- package/docs/adr/0227-a-task-network-map-is-refused-the-goal-graph-is-the-map.md +1 -1
- package/docs/adr/0294-cli-sessions-do-not-expire.md +1 -1
- package/docs/adr/0383-sessions-end-after-ten-idle-days.md +35 -0
- package/docs/adr/0384-the-raise-page-is-a-hub-module-builders-edit-in-place.md +31 -0
- package/docs/adr/README.md +2 -0
- package/docs/api/openapi.json +606 -44
- package/docs/api-reference.md +25 -12
- package/docs/architecture.md +8 -7
- package/docs/canonical-permissions.md +4 -4
- package/docs/copy-inventory.md +1370 -1411
- package/docs/copy-registry.json +2136 -2536
- package/docs/design/demonolith-plan.md +6 -6
- package/docs/design/modular-architecture/00-research-report.md +1 -1
- package/docs/design/project-startup-direction.md +2 -2
- package/docs/design/projects-hub-direction-v2.md +1 -1
- package/docs/design/reviews/hall-v2/README.md +2 -2
- package/docs/design/vanilla-hall-ui-redesign-scope.md +1 -1
- package/docs/file-map.md +92 -96
- package/docs/handoff-template.md +5 -5
- package/docs/module-api-changelog.md +7 -3
- package/docs/modules-contract.md +8 -7
- package/docs/onboarding/diagrams/01-task-lifecycle.mmd +1 -1
- package/docs/onboarding/diagrams/02-rank-ladder.mmd +1 -1
- package/docs/onboarding/diagrams/03-drachmae-karma.mmd +1 -1
- package/docs/onboarding/diagrams/04-architecture.mmd +1 -1
- package/docs/onboarding/diagrams/05-versioning.mmd +1 -1
- package/docs/onboarding/diagrams/README.md +5 -9
- package/docs/onboarding/diagrams/assertions.json +3 -3
- package/docs/onboarding/slash-commands.md +2 -2
- package/docs/packs/artist.md +4 -4
- package/docs/packs/engineer.md +11 -10
- package/docs/packs/ideator.md +7 -7
- package/docs/page-inventory.json +20 -1
- package/docs/page-readings.json +4387 -4603
- package/docs/recipes/README.md +1 -1
- package/docs/recipes/audit-replay.md +4 -4
- package/docs/recipes/autobongos-windows-host.md +6 -6
- package/docs/recipes/bongos-cli-release.md +2 -2
- package/docs/recipes/claude-design-loop.md +7 -7
- package/docs/recipes/core-release-pipeline.md +19 -19
- package/docs/recipes/failed-ship-recovery-proof.md +2 -2
- package/docs/recipes/figma-design-loop.md +6 -6
- package/docs/recipes/gds-db-backup.md +9 -9
- package/docs/recipes/instance-deploy.md +3 -3
- package/docs/recipes/instance-first-run.md +1 -1
- package/docs/recipes/multi-builder-merge.md +2 -2
- package/docs/recipes/ops-gotchas.md +13 -10
- package/docs/recipes/packaging-the-core.md +6 -6
- package/docs/recipes/parallel-goal-waves.md +4 -4
- package/docs/recipes/private-npm-distribution.md +9 -9
- package/docs/recipes/redteam-patrol.md +5 -5
- package/docs/recipes/render-pilot.md +2 -2
- package/docs/recipes/reranking-a-goals-board.md +2 -2
- package/docs/recipes/search-index-ingestion.md +5 -5
- package/docs/recipes/self-host.md +1 -1
- package/docs/recipes/ship-and-regrade.md +4 -4
- package/docs/recipes/staging-environment.md +1 -1
- package/docs/recipes/standalone-live-docs.md +1 -1
- package/docs/recipes/ui-look-before-you-ship.md +2 -2
- package/docs/recipes/upgrading-the-core.md +11 -11
- package/docs/recipes/windows-builders.md +18 -18
- package/docs/research/llm-model-agnostic-and-cheaper-grader.md +6 -6
- package/docs/research/task-network-map-readability.md +3 -3
- package/migrations/core_278_builder_tester_tag.sql +18 -0
- package/migrations/core_279_bongos_shipper_new_scripts_path.sql +13 -0
- package/modules/agents/lib/answer-hold.js +1 -1
- package/modules/agents/lib/gate.js +1 -1
- package/modules/agents/lib/validate.js +1 -1
- package/modules/autonomy/db.js +9 -0
- package/modules/autonomy/gauge.js +1 -1
- package/modules/autonomy/governor-docket.js +2 -2
- package/modules/autonomy/module.json +2 -2
- package/modules/autonomy/pollers/daily-checks.js +262 -0
- package/modules/autonomy/pollers/routine-timers.js +9 -7
- package/modules/autonomy/rank-roles.js +64 -0
- package/modules/autonomy/routes/autonomy.js +3 -3
- package/modules/autonomy/server-schedule.js +37 -0
- package/modules/builder-settings/interaction-prefs.js +1 -1
- package/modules/builder-settings/render-prefs.js +1 -1
- package/modules/builder-settings/routes/settings.js +1 -1
- package/modules/builder-settings/skill-prefs.js +2 -2
- package/modules/builder-settings/wandering-prefs.js +2 -2
- package/modules/copy-desk/module.json +2 -2
- package/modules/copy-desk/page-data.js +5 -5
- package/modules/copy-desk/page-decisions.js +13 -1
- package/modules/copy-desk/proposals.js +4 -4
- package/modules/copy-desk/registry.js +2 -2
- package/modules/copy-desk/routes/copy-desk-release.js +119 -0
- package/modules/copy-desk/routes/copy-desk.js +3 -12
- package/modules/copy-desk/skills/tweak/SKILL.md +12 -12
- package/modules/copy-desk/tests/copy_flags.mjs +1 -1
- package/modules/copy-desk/tests/copy_no_cms.mjs +7 -3
- package/modules/copy-desk/tests/copy_proposals.mjs +2 -2
- package/modules/copy-desk/tests/copy_queue.mjs +1 -1
- package/modules/design-styles/skills/README.md +4 -4
- package/modules/design-styles/skills/imagegen-frontend-mobile/SKILL.md +1 -1
- package/modules/design-styles/skills/imagegen-frontend-web/SKILL.md +1 -1
- package/modules/discord/bug-attachments.js +1 -1
- package/modules/discord/ship-broadcast.js +1 -1
- package/modules/economy/achievements.js +49 -7
- package/modules/economy/cost-classify.js +6 -6
- package/modules/economy/cost-report.js +1 -1
- package/modules/economy/cost.js +1 -1
- package/modules/economy/credits.js +2 -1
- package/modules/economy/idea-size.js +2 -2
- package/modules/economy/reward.js +2 -0
- package/modules/economy/routes/cost.js +1 -1
- package/modules/economy/streak.js +43 -4
- package/modules/government/asks.js +1 -1
- package/modules/government/board.js +19 -2
- package/modules/government/catalog.js +3 -0
- package/modules/government/migrations/government_033_idea_vote.sql +46 -0
- package/modules/government/protected-surfaces.json +48 -47
- package/modules/government/recommendations.js +6 -2
- package/modules/government/routes/government.js +1 -1
- package/modules/grading/generated-provenance.js +13 -5
- package/modules/grading/grade-engine.js +1 -1
- package/modules/grading/grader-rubric.json +1 -1
- package/modules/grading/grader-score.js +1 -1
- package/modules/grading/grader-workers/index.js +1 -1
- package/modules/grading/grader.js +1 -1
- package/modules/grading/routes/grade.js +1 -1
- package/modules/hall-ui/public/atlas.html +5 -7
- package/modules/hall-ui/public/atlas.js +1 -1
- package/modules/hall-ui/public/atlas.states.json +1 -1
- package/modules/hall-ui/public/blockers.css +9 -0
- package/modules/hall-ui/public/blockers.html +4 -4
- package/modules/hall-ui/public/blockers.js +29 -30
- package/modules/hall-ui/public/board-room.css +5 -17
- package/modules/hall-ui/public/board-room.html +5 -6
- package/modules/hall-ui/public/board-room.js +41 -23
- package/modules/hall-ui/public/board-room.states.json +1 -1
- package/modules/hall-ui/public/brand-apply.js +1 -1
- package/modules/hall-ui/public/brand-holes.js +1 -1
- package/modules/hall-ui/public/builders.js +40 -86
- package/modules/hall-ui/public/city-decide.js +18 -4
- package/modules/hall-ui/public/city.html +1 -1
- package/modules/hall-ui/public/collab.html +1 -1
- package/modules/hall-ui/public/commands.html +6 -9
- package/modules/hall-ui/public/copy-desk.html +1 -1
- package/modules/hall-ui/public/copy-desk.js +2 -2
- package/modules/hall-ui/public/craft-mode.js +4 -0
- package/modules/hall-ui/public/deploy.html +6 -2
- package/modules/hall-ui/public/deploy.js +21 -13
- package/modules/hall-ui/public/diagrams.css +1 -1
- package/modules/hall-ui/public/diagrams.html +5 -8
- package/modules/hall-ui/public/diagrams.states.json +1 -1
- package/modules/hall-ui/public/drachmae.html +3 -7
- package/modules/hall-ui/public/fleet.html +3 -2
- package/modules/hall-ui/public/fleet.js +0 -4
- package/modules/hall-ui/public/gate.html +7 -7
- package/modules/hall-ui/public/gate.js +58 -77
- package/modules/hall-ui/public/goal-map.html +1 -1
- package/modules/hall-ui/public/goals-page.js +5 -5
- package/modules/hall-ui/public/goals-render.js +10 -11
- package/modules/hall-ui/public/goals.css +10 -0
- package/modules/hall-ui/public/goals.html +14 -7
- package/modules/hall-ui/public/government.html +3 -5
- package/modules/hall-ui/public/government.js +1 -5
- package/modules/hall-ui/public/hall-render.js +117 -57
- package/modules/hall-ui/public/hall-widgets.js +11 -11
- package/modules/hall-ui/public/idea.html +1 -1
- package/modules/hall-ui/public/ideas.html +3 -1
- package/modules/hall-ui/public/ideas.js +1 -0
- package/modules/hall-ui/public/index.html +12 -6
- package/modules/hall-ui/public/index.states.json +1 -1
- package/modules/hall-ui/public/mine-lens.js +1 -1
- package/modules/hall-ui/public/modules.html +7 -10
- package/modules/hall-ui/public/modules.js +0 -2
- package/modules/hall-ui/public/my-agents.html +1 -1
- package/modules/hall-ui/public/palette.js +5 -5
- package/modules/hall-ui/public/primer.html +4 -9
- package/modules/hall-ui/public/profile-connections.js +10 -2
- package/modules/hall-ui/public/profile-roles.js +3 -10
- package/modules/hall-ui/public/profile.html +12 -10
- package/modules/hall-ui/public/profile.js +13 -17
- package/modules/hall-ui/public/project-settings.html +3 -4
- package/modules/hall-ui/public/project-settings.js +0 -3
- package/modules/hall-ui/public/ranks.html +5 -11
- package/modules/hall-ui/public/ranks.js +6 -8
- package/modules/hall-ui/public/roadmap.css +0 -2
- package/modules/hall-ui/public/roadmap.html +1 -1
- package/modules/hall-ui/public/roadmap.js +16 -51
- package/modules/hall-ui/public/roster.html +1 -1
- package/modules/hall-ui/public/sessions.html +6 -8
- package/modules/hall-ui/public/sessions.js +7 -7
- package/modules/hall-ui/public/settings.html +1 -1
- package/modules/hall-ui/public/shell-trail.js +1 -1
- package/modules/hall-ui/public/shell.js +17 -17
- package/modules/hall-ui/public/street-deck.css +2 -1
- package/modules/hall-ui/public/street-deck.js +10 -2
- package/modules/hall-ui/public/street-desk.js +16 -5
- package/modules/hall-ui/public/street.html +1 -1
- package/modules/hall-ui/public/studio-lib.js +4 -0
- package/modules/hall-ui/public/studio.css +2 -0
- package/modules/hall-ui/public/studio.html +1 -1
- package/modules/hall-ui/public/studio.js +27 -1
- package/modules/hall-ui/public/style.css +43 -26
- package/modules/hall-ui/public/task-detail.js +10 -7
- package/modules/hall-ui/public/task.css +2 -0
- package/modules/hall-ui/public/task.html +3 -1
- package/modules/hall-ui/public/task.js +23 -7
- package/modules/hall-ui/public/thinking.html +1 -1
- package/modules/hall-ui/public/tweak-editor.html +1 -1
- package/modules/hall-ui/public/vote-control.js +208 -0
- package/modules/hall-ui/public/watch.html +3 -5
- package/modules/hall-ui/public/watch.js +5 -4
- package/modules/hall-ui/public/welcome-boot.css +130 -0
- package/modules/hall-ui/public/welcome-boot.js +334 -0
- package/modules/hall-ui/public/welcome-day.webp +0 -0
- package/modules/hall-ui/public/welcome-night.webp +0 -0
- package/modules/hall-ui/public/work-summary.js +1 -1
- package/modules/hall-ui/public/work.css +1 -0
- package/modules/hall-ui/public/work.html +3 -1
- package/modules/hall-ui/public/work.js +2 -1
- package/modules/hall-ui/records/accomplishments.md +16 -0
- package/modules/hall-ui/records/hall-ask-card.md +9 -0
- package/modules/hall-ui/records/karma-vote-control.md +13 -0
- package/modules/hall-ui/records/oversight-family.md +1 -1
- package/modules/hall-ui/records/profile-connections.md +2 -0
- package/modules/hall-ui/records/profile-roles.md +1 -1
- package/modules/hall-ui/records/reading-rooms.md +1 -1
- package/modules/hall-ui/records/welcome-tower.md +50 -0
- package/modules/ideas/migrations/ideas_011_idea_votes.sql +31 -0
- package/modules/ideas/projection.js +1 -1
- package/modules/ideas/routes/blockers.js +3 -3
- package/modules/ideas/routes/inbox.js +29 -1
- package/modules/ideas/routes/ratify-goal.js +1 -1
- package/modules/ideas/routing.js +1 -1
- package/modules/ideas/templates.js +1 -1
- package/modules/ideas/trail-descent.js +1 -1
- package/modules/ideas/trail-size.js +1 -1
- package/modules/ideas/votes.js +93 -0
- package/modules/lifecycle/abandon-leftovers.js +1 -1
- package/modules/lifecycle/cascade.js +1 -1
- package/modules/lifecycle/conflict-resolve.js +13 -21
- package/modules/lifecycle/criterion-ref.js +1 -1
- package/modules/lifecycle/db-analytics.js +57 -4
- package/modules/lifecycle/db-deps-criteria.js +1 -1
- package/modules/lifecycle/db-ship.js +2 -2
- package/modules/lifecycle/db-tasks.js +2 -2
- package/modules/lifecycle/db-versions.js +1 -1
- package/modules/lifecycle/db.js +2 -0
- package/modules/lifecycle/dead-deps.js +3 -3
- package/modules/lifecycle/dependency-advisory.js +3 -3
- package/modules/lifecycle/goal-category.js +1 -1
- package/modules/lifecycle/goal-forest.js +1 -1
- package/modules/lifecycle/goal-task-relevance-advisory.js +1 -1
- package/modules/lifecycle/kickoff-checklist.js +1 -1
- package/modules/lifecycle/kickoff-seed.js +1 -1
- package/modules/lifecycle/lifecycle.js +2 -0
- package/modules/lifecycle/merge-reach.js +29 -15
- package/modules/lifecycle/missing-dep-classify.js +3 -3
- package/modules/lifecycle/module.json +2 -1
- package/modules/lifecycle/page-tweak-approve.js +85 -1
- package/modules/lifecycle/page-tweak-hold.js +1 -1
- package/modules/lifecycle/publish-reconciler.js +1 -2
- package/modules/lifecycle/rot.js +1 -1
- package/modules/lifecycle/routes/artist-gate.js +1 -1
- package/modules/lifecycle/routes/gate-approvals.js +22 -1
- package/modules/lifecycle/routes/goals.js +1 -1
- package/modules/lifecycle/routes/task-route-helpers.js +1 -1
- package/modules/lifecycle/routes/task-votes.js +54 -0
- package/modules/lifecycle/routes/task-write-routes.js +1 -1
- package/modules/lifecycle/routes/tasks.js +2 -2
- package/modules/lifecycle/routes/versions.js +2 -2
- package/modules/lifecycle/ship-card.js +4 -4
- package/modules/lifecycle/ship-preflight.js +1 -1
- package/modules/lifecycle/task-classifier.js +1 -1
- package/modules/lifecycle/task-status.js +1 -1
- package/modules/lifecycle/task-visual-db.js +1 -1
- package/modules/memory/learnings.js +1 -1
- package/modules/memory/pollers/search-index.js +2 -2
- package/modules/memory/routes/learnings.js +1 -1
- package/modules/memory/routes/memory.js +1 -1
- package/modules/memory/search.js +2 -2
- package/modules/npm-release/release.js +1 -1
- package/modules/onboarding/howto-moments.js +1 -1
- package/modules/onboarding/newcomer-restock.js +3 -3
- package/modules/onboarding/onboarding.js +1 -1
- package/modules/pixel-art/skills/otb-tile-generate/SKILL.md +1 -1
- package/modules/platform-identity/origin-containment.js +1 -1
- package/modules/platform-identity/publish-gate.js +1 -1
- package/modules/platform-identity/tests/platform-identity.mjs +1 -1
- package/modules/provisioning/capacity.js +1 -1
- package/modules/provisioning/core-upgrade.js +15 -9
- package/modules/provisioning/credential-preflight.js +3 -3
- package/modules/provisioning/disconnect.js +1 -1
- package/modules/provisioning/dns-resolves.js +1 -1
- package/modules/provisioning/module.json +1 -1
- package/modules/provisioning/onboard-plan.js +1 -1
- package/modules/provisioning/paid-shape-gate.js +2 -2
- package/modules/provisioning/planet-physics.js +11 -2
- package/modules/provisioning/pollers/liveness-sweep.js +1 -1
- package/modules/provisioning/pollers/runner-drift-notify.js +5 -5
- package/modules/provisioning/provisioning.js +2 -2
- package/modules/provisioning/render-lookup.js +1 -1
- package/modules/provisioning/render-standup.js +3 -3
- package/modules/provisioning/repo-private.js +1 -1
- package/modules/provisioning/routes/callback-page.js +1 -1
- package/modules/provisioning/routes/core-upgrade.js +23 -3
- package/modules/provisioning/routes/provisioning.js +2 -2
- package/modules/provisioning/routes/render-standup.js +1 -1
- package/modules/provisioning/routes/repo-private.js +1 -1
- package/modules/provisioning/soft-limits.js +1 -1
- package/modules/provisioning/starter-bundles.js +4 -2
- package/modules/provisioning/tests/provisioning.mjs +1 -1
- package/modules/public-landing/public/account.html +4 -6
- package/modules/public-landing/public/assets/cosmos.css +13 -6
- package/modules/public-landing/public/connections.html +4 -6
- package/modules/public-landing/public/contact.html +4 -6
- package/modules/public-landing/public/guild.html +4 -6
- package/modules/public-landing/public/index.html +11 -9
- package/modules/public-landing/public/invitations.html +4 -6
- package/modules/public-landing/public/privacy.html +4 -6
- package/modules/public-landing/public/projects.html +168 -46
- package/modules/public-landing/public/terms.html +4 -6
- package/modules/raise/content/copy.json +40 -0
- package/modules/raise/content/nda.html +39 -0
- package/modules/raise/content/settings.json +49 -0
- package/modules/raise/db.js +95 -0
- package/modules/raise/migrations/raise_001_tables.sql +71 -0
- package/modules/raise/module.json +28 -0
- package/modules/raise/page.js +194 -0
- package/modules/raise/public/edit.js +152 -0
- package/modules/raise/public/favicon.svg +1 -0
- package/modules/raise/public/logo-ink.svg +1 -0
- package/modules/raise/public/logo-night.svg +1 -0
- package/modules/raise/public/mode.js +8 -0
- package/modules/raise/public/raise.css +234 -0
- package/modules/raise/public/raise.js +91 -0
- package/modules/raise/raise.js +174 -0
- package/modules/raise/routes/raise.js +152 -0
- package/modules/raise/views/gate.html +39 -0
- package/modules/raise/views/nda.html +21 -0
- package/modules/raise/views/page.html +133 -0
- package/modules/raise/web.js +72 -0
- package/modules/render-deploy/deploys.js +1 -1
- package/modules/render-deploy/render.js +2 -2
- package/modules/security/secret-scrub.js +3 -3
- package/modules/security/security.js +1 -1
- package/modules/security/tests/artifact_scan.mjs +1 -1
- package/modules/security/tests/mirror.mjs +1 -1
- package/modules/security/tests/scan_store.mjs +1 -1
- package/modules/sessions/db.js +2 -2
- package/modules/sessions/pulse.js +2 -2
- package/modules/sessions/routes/sessions.js +1 -1
- package/modules/specialities/specialities.js +1 -1
- package/modules/status-ui/public/README.md +3 -4
- package/modules/status-ui/public/index.html +5 -31
- package/modules/status-ui/public/status.js +6 -174
- package/modules/status-ui/public/style.css +4 -133
- package/modules/ui-design/docs/design-contract.md +3 -3
- package/modules/ui-design/kit/README.md +1 -1
- package/modules/ui-design/kit/serve.js +13 -4
- package/modules/ui-design/scripts/design-sync.js +1 -1
- package/modules/ui-design/scripts/figma-design-sync.js +1 -1
- package/modules/ui-design/scripts/validate-design.js +1 -1
- package/package-lock.json +27 -11
- package/package.json +2 -3
- package/release-notes.json +186 -0
- package/scripts/bongos/CLAUDE.md +15 -0
- package/scripts/bongos/abandon.js +137 -0
- package/scripts/bongos/accessibility-replay.js +195 -0
- package/scripts/bongos/address-park-sweep.sh +91 -0
- package/scripts/bongos/adopt-detect.js +123 -0
- package/scripts/bongos/adopt-import.js +111 -0
- package/scripts/bongos/adopt-preflight.js +187 -0
- package/scripts/bongos/adr-namespace.js +273 -0
- package/scripts/bongos/agent-invoke.js +689 -0
- package/scripts/bongos/agents-sync.js +502 -0
- package/scripts/bongos/api-alias-caller-scan.js +256 -0
- package/scripts/bongos/api-artifacts.js +91 -0
- package/scripts/bongos/api.js +86 -0
- package/scripts/bongos/api.ps1 +26 -0
- package/scripts/bongos/architect-audit.js +294 -0
- package/scripts/bongos/artifact-audit.js +326 -0
- package/scripts/bongos/artifact-format.js +203 -0
- package/scripts/bongos/ask.js +231 -0
- package/scripts/bongos/audit-authorship.sh +324 -0
- package/scripts/bongos/audit-deps.js +189 -0
- package/scripts/bongos/audit-gate.js +121 -0
- package/scripts/bongos/audit-rank-roles.js +131 -0
- package/scripts/bongos/audit-replay.sh +205 -0
- package/scripts/bongos/autobongos-digest.js +123 -0
- package/scripts/bongos/autobongos-grade-cap.js +187 -0
- package/scripts/bongos/autobongos-loop.js +210 -0
- package/scripts/bongos/autobongos-run.js +1361 -0
- package/scripts/bongos/autobongos-service.cmd +50 -0
- package/scripts/bongos/autobongos-service.ps1 +270 -0
- package/scripts/bongos/autobongos-tweak-lane.js +262 -0
- package/scripts/bongos/autobongos-verify.js +618 -0
- package/scripts/bongos/autonomy-gate.js +135 -0
- package/scripts/bongos/autonomy-gauge-statusline.js +124 -0
- package/scripts/bongos/autonomy-gauge.js +84 -0
- package/scripts/bongos/backfill-cost.js +176 -0
- package/scripts/bongos/backfill-disciplines.js +144 -0
- package/scripts/bongos/backfill-session-earnings.js +123 -0
- package/scripts/bongos/backfill-session-types.js +87 -0
- package/scripts/bongos/backfill-sessions.js +411 -0
- package/scripts/bongos/backfill-subagent-rewards.js +485 -0
- package/scripts/bongos/backfill-task-rewards.js +413 -0
- package/scripts/bongos/backlog-review.js +399 -0
- package/scripts/bongos/backup-dropin-sweep.sh +95 -0
- package/scripts/bongos/backup.js +116 -0
- package/scripts/bongos/baseline-staleness.js +217 -0
- package/scripts/bongos/bfg-principal-token.js +65 -0
- package/scripts/bongos/bug-attachment-audit.js +149 -0
- package/scripts/bongos/bug-attachment-recover.js +198 -0
- package/scripts/bongos/bug-triage.js +292 -0
- package/scripts/bongos/build-bongos.js +94 -0
- package/scripts/bongos/bump-version.js +221 -0
- package/scripts/bongos/capture.js +481 -0
- package/scripts/bongos/category-advisory-guard.js +206 -0
- package/scripts/bongos/ci-grade.js +82 -0
- package/scripts/bongos/claim-recall.js +112 -0
- package/scripts/bongos/claim.js +789 -0
- package/scripts/bongos/claude-materialize.js +1200 -0
- package/scripts/bongos/claude-md-template.js +142 -0
- package/scripts/bongos/cleanup-orphans.js +74 -0
- package/scripts/bongos/cli-lib.js +1226 -0
- package/scripts/bongos/client-baseurl-guard.js +116 -0
- package/scripts/bongos/codemod-rename-scripts-gds.js +380 -0
- package/scripts/bongos/conductor-dispatch.js +535 -0
- package/scripts/bongos/context-pack.js +326 -0
- package/scripts/bongos/control-manifest.js +199 -0
- package/scripts/bongos/copy-apply.js +758 -0
- package/scripts/bongos/copy-inventory.js +571 -0
- package/scripts/bongos/core-origin-follow.js +185 -0
- package/scripts/bongos/core-pin-sync.js +260 -0
- package/scripts/bongos/cost-report.js +63 -0
- package/scripts/bongos/cost.js +47 -0
- package/scripts/bongos/credential-presence.js +296 -0
- package/scripts/bongos/cutover-codemod.js +240 -0
- package/scripts/bongos/db-backup-nightly.sh +232 -0
- package/scripts/bongos/db-backup-offsite.sh +267 -0
- package/scripts/bongos/demote.js +45 -0
- package/scripts/bongos/deploy-divergence.js +454 -0
- package/scripts/bongos/deploy-main-audit-gate.sh +97 -0
- package/scripts/bongos/design-sync.js +12 -0
- package/scripts/bongos/dev-box-guard.js +166 -0
- package/scripts/bongos/dev-lib.js +722 -0
- package/scripts/bongos/dev.js +645 -0
- package/scripts/bongos/device-flow-help.js +72 -0
- package/scripts/bongos/diagnose-achievements.js +118 -0
- package/scripts/bongos/diagram-facts.js +355 -0
- package/scripts/bongos/discord-channels.js +77 -0
- package/scripts/bongos/do-api.js +109 -0
- package/scripts/bongos/doc-cli-guard.js +274 -0
- package/scripts/bongos/doc-comment-coverage.js +139 -0
- package/scripts/bongos/doc-control-claims.js +170 -0
- package/scripts/bongos/docs-entropy.js +453 -0
- package/scripts/bongos/doctor.js +493 -0
- package/scripts/bongos/enroll-control-plane.js +101 -0
- package/scripts/bongos/exec-path-guard.js +564 -0
- package/scripts/bongos/feedback-send.js +249 -0
- package/scripts/bongos/fetch-art-key.js +106 -0
- package/scripts/bongos/fetch-sound-prefs.js +126 -0
- package/scripts/bongos/figma-design-sync.js +11 -0
- package/scripts/bongos/find-untested.js +371 -0
- package/scripts/bongos/fitness-checks-error-envelope.js +134 -0
- package/scripts/bongos/fitness-checks-identity.js +332 -0
- package/scripts/bongos/fitness-checks-packaging.js +132 -0
- package/scripts/bongos/fitness-checks-route-pins.js +76 -0
- package/scripts/bongos/fitness-checks-vocabulary.js +392 -0
- package/scripts/bongos/fitness-checks-write-validation.js +157 -0
- package/scripts/bongos/fitness-lib.js +127 -0
- package/scripts/bongos/fitness-migration-contraction.js +50 -0
- package/scripts/bongos/fitness-ratchets.js +594 -0
- package/scripts/bongos/fitness.js +1498 -0
- package/scripts/bongos/forwarder.js +80 -0
- package/scripts/bongos/gate-review.js +330 -0
- package/scripts/bongos/gating.js +348 -0
- package/scripts/{gds → bongos}/gds-db-backup.service +6 -6
- package/scripts/{gds → bongos}/gds-db-backup.timer +4 -4
- package/scripts/{gds → bongos}/gds-db-offsite.service +4 -4
- package/scripts/{gds → bongos}/gds-db-offsite.timer +4 -4
- package/scripts/bongos/gds-literal-scan.js +196 -0
- package/scripts/bongos/gen-api-client.js +576 -0
- package/scripts/bongos/gen-api-docs.js +1111 -0
- package/scripts/bongos/gen-atlas.js +366 -0
- package/scripts/bongos/gen-diagrams.js +608 -0
- package/scripts/bongos/gen-file-map.js +337 -0
- package/scripts/bongos/gen-freshness.js +32 -0
- package/scripts/bongos/gen-interaction-posture.js +122 -0
- package/scripts/bongos/gen-repo-map.js +540 -0
- package/scripts/bongos/gen-role-responsibilities.js +134 -0
- package/scripts/bongos/gen-session-index.js +243 -0
- package/scripts/bongos/gen-sounds.js +176 -0
- package/scripts/bongos/git-merge-regen.js +254 -0
- package/scripts/bongos/go-live.js +1071 -0
- package/scripts/bongos/goal.js +272 -0
- package/scripts/bongos/government-walk.js +1477 -0
- package/scripts/bongos/grade-correlation-audit.js +310 -0
- package/scripts/bongos/grade-replay.js +237 -0
- package/scripts/bongos/grade-smoke.js +205 -0
- package/scripts/bongos/home-isolation-guard.js +126 -0
- package/scripts/bongos/hooks/pre-push.js +211 -0
- package/scripts/bongos/howto.js +145 -0
- package/scripts/bongos/http-api-client.js +81 -0
- package/scripts/bongos/identity-strip.js +75 -0
- package/scripts/bongos/init.js +1159 -0
- package/scripts/bongos/install-git-hooks.js +200 -0
- package/scripts/bongos/instance-apex.js +38 -0
- package/scripts/bongos/intent-retry.js +52 -0
- package/scripts/bongos/key-card.js +222 -0
- package/scripts/bongos/key-status.js +126 -0
- package/scripts/bongos/land-watch.js +201 -0
- package/scripts/bongos/leak-scan-allowlist.js +293 -0
- package/scripts/bongos/learning-capture.js +145 -0
- package/scripts/bongos/lib.sh +74 -0
- package/scripts/bongos/linkify-refs.js +655 -0
- package/scripts/bongos/lint-infra-exec.js +70 -0
- package/scripts/bongos/lint-migrations.js +102 -0
- package/scripts/bongos/lint-workflow-exec.js +63 -0
- package/scripts/bongos/local-preview-lib.js +128 -0
- package/scripts/bongos/local-preview.js +82 -0
- package/scripts/bongos/login.js +360 -0
- package/scripts/bongos/main-audit.js +625 -0
- package/scripts/bongos/me.js +97 -0
- package/scripts/bongos/memory-map.js +176 -0
- package/scripts/bongos/merge-lock.js +71 -0
- package/scripts/bongos/migration-namespace.js +313 -0
- package/scripts/bongos/mirror-lineage-check.js +343 -0
- package/scripts/bongos/mirror-redact.js +350 -0
- package/scripts/bongos/module-artifact.js +289 -0
- package/scripts/bongos/module-assess-docs.js +238 -0
- package/scripts/bongos/module-assess-installs.js +228 -0
- package/scripts/bongos/module-assess-score.js +111 -0
- package/scripts/bongos/module-assess-security.js +252 -0
- package/scripts/bongos/module-assess-tests.js +278 -0
- package/scripts/bongos/module-assess-version.js +92 -0
- package/scripts/bongos/module-error-report.js +148 -0
- package/scripts/{gds → bongos}/module-test-runner/README.md +3 -3
- package/scripts/{gds → bongos}/module-test-runner/module-tests.yml +2 -2
- package/scripts/bongos/module-test-runner.js +414 -0
- package/scripts/bongos/module.js +1376 -0
- package/scripts/bongos/move-escalation.js +141 -0
- package/scripts/{gds → bongos}/newcomer-floor.config.json +1 -1
- package/scripts/bongos/newcomer-floor.js +421 -0
- package/scripts/{gds → bongos}/newcomer-floor.templates.json +13 -13
- package/scripts/bongos/newcomer-floor.test.js +235 -0
- package/scripts/bongos/next-number.js +163 -0
- package/scripts/bongos/oauth-secret.js +202 -0
- package/scripts/bongos/onboard.js +267 -0
- package/scripts/bongos/onboarding-analyze.js +226 -0
- package/scripts/bongos/onboarding-config.js +179 -0
- package/scripts/bongos/onboarding-ship.js +92 -0
- package/scripts/bongos/pack-env-prefix.js +73 -0
- package/scripts/bongos/package-core.js +1200 -0
- package/scripts/bongos/page-inventory.js +348 -0
- package/scripts/bongos/page-reader.js +722 -0
- package/scripts/bongos/paste-token.js +212 -0
- package/scripts/bongos/plain-cards.js +351 -0
- package/scripts/bongos/portability-smoke-art.sh +85 -0
- package/scripts/bongos/portability-smoke-memory.sh +176 -0
- package/scripts/bongos/preflight.js +214 -0
- package/scripts/bongos/probe-cache.js +246 -0
- package/scripts/bongos/prove-strict-versioning.js +284 -0
- package/scripts/bongos/provision-auto-upgrade.js +162 -0
- package/scripts/bongos/provision-byo-host.js +68 -0
- package/scripts/bongos/provision-capacity.js +79 -0
- package/scripts/bongos/provision-caps.js +63 -0
- package/scripts/bongos/provision-config.js +233 -0
- package/scripts/bongos/provision-core-upgrade.js +1166 -0
- package/scripts/bongos/provision-disconnect.js +88 -0
- package/scripts/bongos/provision-github-setup.js +168 -0
- package/scripts/bongos/provision-net.js +357 -0
- package/scripts/bongos/provision-pin-key.js +176 -0
- package/scripts/bongos/provision-pin-replay.js +126 -0
- package/scripts/bongos/provision-process.js +170 -0
- package/scripts/bongos/provision-render.js +201 -0
- package/scripts/bongos/provision-repo-auth.js +164 -0
- package/scripts/bongos/provision-repo-private.js +98 -0
- package/scripts/bongos/provision-repo.js +1337 -0
- package/scripts/bongos/provision-teardown.js +106 -0
- package/scripts/bongos/provision-units.js +469 -0
- package/scripts/bongos/provision.js +1479 -0
- package/scripts/bongos/publish-credential-check.js +66 -0
- package/scripts/bongos/publish-integration-gate.js +142 -0
- package/scripts/bongos/publish-manifest.js +440 -0
- package/scripts/bongos/publish-watch.js +268 -0
- package/scripts/bongos/pulse.js +338 -0
- package/scripts/bongos/push-main.js +56 -0
- package/scripts/bongos/push-path-brief.js +100 -0
- package/scripts/bongos/read-session-export.js +359 -0
- package/scripts/bongos/reauth.js +155 -0
- package/scripts/bongos/recall.js +183 -0
- package/scripts/bongos/redteam-patrol.js +437 -0
- package/scripts/bongos/regen-instance-docs.js +47 -0
- package/scripts/bongos/release-core.js +80 -0
- package/scripts/bongos/release-notes.js +271 -0
- package/scripts/bongos/release.js +139 -0
- package/scripts/bongos/rename-history-check.js +369 -0
- package/scripts/bongos/rename-ledger-prose.js +482 -0
- package/scripts/bongos/render-api.js +197 -0
- package/scripts/bongos/render-check.js +206 -0
- package/scripts/bongos/render-ideas.js +226 -0
- package/scripts/bongos/render-payload.js +85 -0
- package/scripts/bongos/repo-metrics.js +363 -0
- package/scripts/bongos/review-sheet.js +108 -0
- package/scripts/bongos/role-pack-guard.js +142 -0
- package/scripts/bongos/route-shadow-guard.js +175 -0
- package/scripts/bongos/routine-schedule.js +318 -0
- package/scripts/bongos/run-routine.js +257 -0
- package/scripts/bongos/run-unit-tests.js +654 -0
- package/scripts/bongos/runner-drift.js +151 -0
- package/scripts/bongos/sandbox-stage.js +459 -0
- package/scripts/bongos/scope-map-guard.js +300 -0
- package/scripts/bongos/scope-roster-guard.js +118 -0
- package/scripts/bongos/seam-wiring-guard.js +275 -0
- package/scripts/bongos/search-ingest-db.js +288 -0
- package/scripts/bongos/search-ingest-md.js +269 -0
- package/scripts/bongos/seed-bongos-v1-idea-routing-tasks.js +152 -0
- package/scripts/bongos/seed-bv1-profiles-tasks.js +135 -0
- package/scripts/bongos/seed-bv2-ideator-surface-tasks.js +390 -0
- package/scripts/bongos/seed-staging.sh +117 -0
- package/scripts/bongos/seed-verify-criteria.js +124 -0
- package/scripts/bongos/sequence.js +597 -0
- package/scripts/bongos/session-cost.js +430 -0
- package/scripts/bongos/session-digest-build.js +293 -0
- package/scripts/bongos/session-digest.js +200 -0
- package/scripts/bongos/session-eval.js +631 -0
- package/scripts/bongos/session-transcript-build.js +155 -0
- package/scripts/bongos/session-transcript-upload.js +29 -0
- package/scripts/bongos/session.js +404 -0
- package/scripts/bongos/setup.js +646 -0
- package/scripts/bongos/ship-check.js +89 -0
- package/scripts/bongos/ship-deploy-target.js +393 -0
- package/scripts/bongos/ship-escalation.js +167 -0
- package/scripts/bongos/ship-finish.js +420 -0
- package/scripts/bongos/ship-flow.js +1217 -0
- package/scripts/bongos/ship-git.js +100 -0
- package/scripts/bongos/ship-grade-steps.js +547 -0
- package/scripts/bongos/ship-grade.js +426 -0
- package/scripts/bongos/ship-honesty.js +314 -0
- package/scripts/bongos/ship-io.js +139 -0
- package/scripts/bongos/ship-land.js +1130 -0
- package/scripts/bongos/ship-memory-sync.js +249 -0
- package/scripts/bongos/ship-merge-gate.js +225 -0
- package/scripts/bongos/ship-merge.js +466 -0
- package/scripts/bongos/ship-mode-ask.js +138 -0
- package/scripts/bongos/ship-mode-manual.js +54 -0
- package/scripts/bongos/ship-preflight-steps.js +399 -0
- package/scripts/bongos/ship-regen.js +291 -0
- package/scripts/bongos/ship-resume.js +201 -0
- package/scripts/bongos/ship-session-upload.js +313 -0
- package/scripts/bongos/ship-state.js +110 -0
- package/scripts/bongos/ship-surprise.js +84 -0
- package/scripts/bongos/ship-visual.js +75 -0
- package/scripts/bongos/ship.js +382 -0
- package/scripts/bongos/shipping-mode.js +71 -0
- package/scripts/bongos/skill-lint.js +250 -0
- package/scripts/bongos/skill-preflight.js +361 -0
- package/scripts/bongos/smoke-batch-claim.sh +238 -0
- package/scripts/bongos/smoke-batch-release.sh +316 -0
- package/scripts/bongos/smoke-claim-consistency.sh +222 -0
- package/scripts/bongos/smoke-dependencies.sh +143 -0
- package/scripts/bongos/smoke-gds.js +256 -0
- package/scripts/bongos/smoke-write.sh +275 -0
- package/scripts/bongos/source-text-test-scan.js +106 -0
- package/scripts/bongos/spark.js +294 -0
- package/scripts/bongos/stale-worktrees.js +212 -0
- package/scripts/bongos/start-goals.js +102 -0
- package/scripts/bongos/start.js +1090 -0
- package/scripts/bongos/status.js +545 -0
- package/scripts/bongos/strand-watch.js +315 -0
- package/scripts/bongos/stranded-rows.js +200 -0
- package/scripts/bongos/stray-unit-sweep.sh +71 -0
- package/scripts/bongos/surface.js +101 -0
- package/scripts/bongos/task.js +273 -0
- package/scripts/bongos/test-path-guard.js +99 -0
- package/scripts/bongos/triage.js +742 -0
- package/scripts/bongos/turn-end-sound.js +74 -0
- package/scripts/bongos/tweak-halt.js +70 -0
- package/scripts/bongos/tweak-renders.js +200 -0
- package/scripts/bongos/uat.js +120 -0
- package/scripts/bongos/ui-kit-transform.js +43 -0
- package/scripts/bongos/update-channel.js +512 -0
- package/scripts/bongos/update-sweep.js +829 -0
- package/scripts/bongos/upgrade-artist-gate.js +46 -0
- package/scripts/bongos/upgrade-commit-identity.js +32 -0
- package/scripts/bongos/upgrade-migrate.js +224 -0
- package/scripts/bongos/upgrade-operator.js +73 -0
- package/scripts/bongos/upgrade-outcome.js +174 -0
- package/scripts/bongos/upgrade.js +1499 -0
- package/scripts/bongos/validate-design.js +12 -0
- package/scripts/bongos/version-close.js +621 -0
- package/scripts/bongos/version-literal-guard.js +140 -0
- package/scripts/bongos/version-select.js +79 -0
- package/scripts/bongos/visual-review-nudge.js +39 -0
- package/scripts/bongos/wedge-remedy.js +174 -0
- package/scripts/bongos/worktree-claim-guard.js +130 -0
- package/scripts/bongos/worktree.js +449 -0
- package/scripts/discord/post.js +1 -1
- package/scripts/gds/README.md +9 -0
- package/scripts/gds/abandon.js +6 -136
- package/scripts/gds/accessibility-replay.js +5 -194
- package/scripts/gds/address-park-sweep.sh +7 -90
- package/scripts/gds/adopt-detect.js +5 -121
- package/scripts/gds/adopt-import.js +5 -109
- package/scripts/gds/adopt-preflight.js +5 -185
- package/scripts/gds/adr-namespace.js +5 -271
- package/scripts/gds/agent-invoke.js +5 -687
- package/scripts/gds/agents-sync.js +5 -500
- package/scripts/gds/api-alias-caller-scan.js +5 -255
- package/scripts/gds/api-artifacts.js +6 -0
- package/scripts/gds/api.js +6 -85
- package/scripts/gds/api.ps1 +8 -26
- package/scripts/gds/architect-audit.js +6 -293
- package/scripts/gds/artifact-audit.js +5 -324
- package/scripts/gds/artifact-format.js +6 -203
- package/scripts/gds/ask.js +5 -229
- package/scripts/gds/audit-authorship.sh +7 -328
- package/scripts/gds/audit-deps.js +6 -188
- package/scripts/gds/audit-gate.js +5 -119
- package/scripts/gds/audit-rank-roles.js +6 -171
- package/scripts/gds/audit-replay.sh +7 -204
- package/scripts/gds/autobongos-digest.js +5 -121
- package/scripts/gds/autobongos-grade-cap.js +5 -186
- package/scripts/gds/autobongos-loop.js +5 -208
- package/scripts/gds/autobongos-run.js +5 -1359
- package/scripts/gds/autobongos-service.cmd +8 -49
- package/scripts/gds/autobongos-service.ps1 +8 -270
- package/scripts/gds/autobongos-tweak-lane.js +5 -261
- package/scripts/gds/autobongos-verify.js +5 -616
- package/scripts/gds/autonomy-gate.js +5 -133
- package/scripts/gds/autonomy-gauge-statusline.js +5 -122
- package/scripts/gds/autonomy-gauge.js +5 -82
- package/scripts/gds/backfill-cost.js +6 -175
- package/scripts/gds/backfill-disciplines.js +5 -142
- package/scripts/gds/backfill-session-earnings.js +5 -121
- package/scripts/gds/backfill-session-types.js +5 -85
- package/scripts/gds/backfill-sessions.js +5 -409
- package/scripts/gds/backfill-subagent-rewards.js +5 -483
- package/scripts/gds/backfill-task-rewards.js +5 -411
- package/scripts/gds/backlog-review.js +6 -398
- package/scripts/gds/backup-dropin-sweep.sh +7 -94
- package/scripts/gds/backup.js +6 -115
- package/scripts/gds/baseline-staleness.js +5 -215
- package/scripts/gds/bfg-principal-token.js +6 -64
- package/scripts/gds/bug-attachment-audit.js +5 -147
- package/scripts/gds/bug-attachment-recover.js +5 -196
- package/scripts/gds/bug-triage.js +6 -291
- package/scripts/gds/build-bongos.js +5 -92
- package/scripts/gds/bump-version.js +5 -219
- package/scripts/gds/capture.js +6 -480
- package/scripts/gds/category-advisory-guard.js +5 -205
- package/scripts/gds/ci-grade.js +6 -81
- package/scripts/gds/claim-recall.js +6 -111
- package/scripts/gds/claim.js +6 -788
- package/scripts/gds/claude-materialize.js +5 -1198
- package/scripts/gds/claude-md-template.js +5 -140
- package/scripts/gds/cleanup-orphans.js +6 -73
- package/scripts/gds/cli-lib.js +6 -1204
- package/scripts/gds/client-baseurl-guard.js +5 -114
- package/scripts/gds/conductor-dispatch.js +6 -534
- package/scripts/gds/context-pack.js +6 -325
- package/scripts/gds/control-manifest.js +5 -197
- package/scripts/gds/copy-apply.js +5 -756
- package/scripts/gds/copy-inventory.js +5 -569
- package/scripts/gds/core-origin-follow.js +5 -184
- package/scripts/gds/core-pin-sync.js +5 -258
- package/scripts/gds/cost-report.js +6 -62
- package/scripts/gds/cost.js +6 -46
- package/scripts/gds/credential-presence.js +5 -294
- package/scripts/gds/cutover-codemod.js +5 -239
- package/scripts/gds/db-backup-nightly.sh +7 -231
- package/scripts/gds/db-backup-offsite.sh +7 -266
- package/scripts/gds/demote.js +6 -44
- package/scripts/gds/deploy-divergence.js +6 -445
- package/scripts/gds/deploy-main-audit-gate.sh +7 -96
- package/scripts/gds/design-sync.js +5 -10
- package/scripts/gds/dev-box-guard.js +5 -164
- package/scripts/gds/dev-lib.js +5 -721
- package/scripts/gds/dev.js +5 -643
- package/scripts/gds/device-flow-help.js +5 -70
- package/scripts/gds/diagnose-achievements.js +5 -116
- package/scripts/gds/diagram-facts.js +6 -355
- package/scripts/gds/discord-channels.js +5 -75
- package/scripts/gds/do-api.js +6 -109
- package/scripts/gds/doc-cli-guard.js +5 -266
- package/scripts/gds/doc-comment-coverage.js +5 -137
- package/scripts/gds/doc-control-claims.js +5 -166
- package/scripts/gds/docs-entropy.js +5 -443
- package/scripts/gds/doctor.js +6 -492
- package/scripts/gds/enroll-control-plane.js +5 -99
- package/scripts/gds/exec-path-guard.js +5 -562
- package/scripts/gds/feedback-send.js +5 -247
- package/scripts/gds/fetch-art-key.js +5 -104
- package/scripts/gds/fetch-sound-prefs.js +5 -124
- package/scripts/gds/figma-design-sync.js +5 -9
- package/scripts/gds/find-untested.js +5 -369
- package/scripts/gds/fitness-checks-error-envelope.js +5 -133
- package/scripts/gds/fitness-checks-identity.js +5 -342
- package/scripts/gds/fitness-checks-packaging.js +5 -131
- package/scripts/gds/fitness-checks-route-pins.js +5 -75
- package/scripts/gds/fitness-checks-vocabulary.js +5 -391
- package/scripts/gds/fitness-checks-write-validation.js +5 -156
- package/scripts/gds/fitness-lib.js +5 -126
- package/scripts/gds/fitness-migration-contraction.js +5 -49
- package/scripts/gds/fitness-ratchets.js +5 -563
- package/scripts/gds/fitness.js +5 -1493
- package/scripts/gds/gate-review.js +5 -328
- package/scripts/gds/gating.js +5 -346
- package/scripts/gds/gds-literal-scan.js +5 -194
- package/scripts/gds/gen-api-client.js +5 -555
- package/scripts/gds/gen-api-docs.js +5 -1100
- package/scripts/gds/gen-atlas.js +5 -364
- package/scripts/gds/gen-diagrams.js +6 -607
- package/scripts/gds/gen-file-map.js +5 -335
- package/scripts/gds/gen-freshness.js +5 -31
- package/scripts/gds/gen-interaction-posture.js +5 -120
- package/scripts/gds/gen-repo-map.js +5 -538
- package/scripts/gds/gen-role-responsibilities.js +5 -133
- package/scripts/gds/gen-session-index.js +5 -241
- package/scripts/gds/gen-sounds.js +5 -174
- package/scripts/gds/git-merge-regen.js +6 -291
- package/scripts/gds/go-live.js +5 -1069
- package/scripts/gds/goal.js +6 -271
- package/scripts/gds/government-walk.js +5 -1475
- package/scripts/gds/grade-correlation-audit.js +5 -308
- package/scripts/gds/grade-replay.js +5 -235
- package/scripts/gds/grade-smoke.js +6 -204
- package/scripts/gds/home-isolation-guard.js +5 -125
- package/scripts/gds/hooks/pre-push.js +5 -209
- package/scripts/gds/howto.js +5 -143
- package/scripts/gds/http-api-client.js +6 -81
- package/scripts/gds/identity-strip.js +5 -74
- package/scripts/gds/init.js +5 -1157
- package/scripts/gds/install-git-hooks.js +5 -198
- package/scripts/gds/instance-apex.js +5 -37
- package/scripts/gds/intent-retry.js +5 -51
- package/scripts/gds/key-card.js +6 -221
- package/scripts/gds/key-status.js +5 -124
- package/scripts/gds/land-watch.js +5 -199
- package/scripts/gds/leak-scan-allowlist.js +5 -291
- package/scripts/gds/learning-capture.js +6 -144
- package/scripts/gds/lib.sh +7 -73
- package/scripts/gds/linkify-refs.js +6 -654
- package/scripts/gds/lint-infra-exec.js +5 -68
- package/scripts/gds/lint-migrations.js +5 -100
- package/scripts/gds/lint-workflow-exec.js +5 -61
- package/scripts/gds/local-preview-lib.js +6 -128
- package/scripts/gds/local-preview.js +6 -81
- package/scripts/gds/login.js +5 -358
- package/scripts/gds/main-audit.js +5 -623
- package/scripts/gds/me.js +6 -96
- package/scripts/gds/memory-map.js +5 -174
- package/scripts/gds/merge-lock.js +6 -70
- package/scripts/gds/migration-namespace.js +5 -311
- package/scripts/gds/mirror-lineage-check.js +5 -341
- package/scripts/gds/mirror-redact.js +5 -348
- package/scripts/gds/module-artifact.js +6 -289
- package/scripts/gds/module-assess-docs.js +6 -237
- package/scripts/gds/module-assess-installs.js +6 -227
- package/scripts/gds/module-assess-score.js +6 -110
- package/scripts/gds/module-assess-security.js +6 -251
- package/scripts/gds/module-assess-tests.js +6 -277
- package/scripts/gds/module-assess-version.js +6 -91
- package/scripts/gds/module-error-report.js +5 -146
- package/scripts/gds/module-test-runner.js +6 -413
- package/scripts/gds/module.js +5 -1374
- package/scripts/gds/move-escalation.js +5 -140
- package/scripts/gds/newcomer-floor.js +6 -420
- package/scripts/gds/newcomer-floor.test.js +6 -234
- package/scripts/gds/next-number.js +6 -162
- package/scripts/gds/oauth-secret.js +5 -200
- package/scripts/gds/onboard.js +5 -265
- package/scripts/gds/onboarding-analyze.js +6 -225
- package/scripts/gds/onboarding-config.js +6 -179
- package/scripts/gds/onboarding-ship.js +6 -91
- package/scripts/gds/pack-env-prefix.js +5 -72
- package/scripts/gds/package-core.js +5 -1102
- package/scripts/gds/page-inventory.js +5 -346
- package/scripts/gds/page-reader.js +5 -720
- package/scripts/gds/paste-token.js +6 -211
- package/scripts/gds/plain-cards.js +5 -350
- package/scripts/gds/portability-smoke-art.sh +7 -84
- package/scripts/gds/portability-smoke-memory.sh +7 -175
- package/scripts/gds/preflight.js +5 -212
- package/scripts/gds/probe-cache.js +5 -244
- package/scripts/gds/prove-strict-versioning.js +6 -283
- package/scripts/gds/provision-auto-upgrade.js +5 -161
- package/scripts/gds/provision-byo-host.js +5 -67
- package/scripts/gds/provision-capacity.js +5 -78
- package/scripts/gds/provision-caps.js +5 -62
- package/scripts/gds/provision-config.js +5 -232
- package/scripts/gds/provision-core-upgrade.js +5 -1165
- package/scripts/gds/provision-disconnect.js +5 -87
- package/scripts/gds/provision-github-setup.js +5 -167
- package/scripts/gds/provision-net.js +5 -356
- package/scripts/gds/provision-pin-key.js +5 -175
- package/scripts/gds/provision-pin-replay.js +5 -125
- package/scripts/gds/provision-process.js +5 -169
- package/scripts/gds/provision-render.js +5 -200
- package/scripts/gds/provision-repo-auth.js +5 -163
- package/scripts/gds/provision-repo-private.js +5 -97
- package/scripts/gds/provision-repo.js +5 -1336
- package/scripts/gds/provision-teardown.js +5 -105
- package/scripts/gds/provision-units.js +5 -468
- package/scripts/gds/provision.js +5 -1477
- package/scripts/gds/publish-credential-check.js +6 -65
- package/scripts/gds/publish-integration-gate.js +5 -140
- package/scripts/gds/publish-manifest.js +5 -437
- package/scripts/gds/publish-watch.js +5 -266
- package/scripts/gds/pulse.js +6 -335
- package/scripts/gds/push-main.js +5 -54
- package/scripts/gds/push-path-brief.js +5 -98
- package/scripts/gds/read-session-export.js +5 -357
- package/scripts/gds/reauth.js +6 -154
- package/scripts/gds/recall.js +6 -182
- package/scripts/gds/redteam-patrol.js +5 -435
- package/scripts/gds/regen-instance-docs.js +5 -45
- package/scripts/gds/release-core.js +5 -78
- package/scripts/gds/release-notes.js +5 -270
- package/scripts/gds/release.js +6 -138
- package/scripts/gds/rename-history-check.js +5 -367
- package/scripts/gds/rename-ledger-prose.js +5 -480
- package/scripts/gds/render-api.js +5 -196
- package/scripts/gds/render-check.js +5 -204
- package/scripts/gds/render-ideas.js +6 -225
- package/scripts/gds/render-payload.js +5 -84
- package/scripts/gds/repo-metrics.js +6 -362
- package/scripts/gds/review-sheet.js +5 -106
- package/scripts/gds/role-pack-guard.js +5 -141
- package/scripts/gds/route-shadow-guard.js +5 -173
- package/scripts/gds/routine-schedule.js +5 -281
- package/scripts/gds/run-routine.js +5 -255
- package/scripts/gds/run-unit-tests.js +6 -659
- package/scripts/gds/runner-drift.js +5 -149
- package/scripts/gds/sandbox-stage.js +6 -458
- package/scripts/gds/scope-map-guard.js +5 -299
- package/scripts/gds/scope-roster-guard.js +5 -117
- package/scripts/gds/seam-wiring-guard.js +5 -274
- package/scripts/gds/search-ingest-db.js +6 -287
- package/scripts/gds/search-ingest-md.js +6 -268
- package/scripts/gds/seed-bongos-v1-idea-routing-tasks.js +6 -152
- package/scripts/gds/seed-bv1-profiles-tasks.js +6 -135
- package/scripts/gds/seed-bv2-ideator-surface-tasks.js +6 -390
- package/scripts/gds/seed-staging.sh +7 -116
- package/scripts/gds/seed-verify-criteria.js +6 -124
- package/scripts/gds/sequence.js +6 -596
- package/scripts/gds/session-cost.js +6 -429
- package/scripts/gds/session-digest-build.js +6 -293
- package/scripts/gds/session-digest.js +6 -199
- package/scripts/gds/session-eval.js +6 -630
- package/scripts/gds/session-transcript-build.js +6 -155
- package/scripts/gds/session-transcript-upload.js +6 -29
- package/scripts/gds/session.js +6 -403
- package/scripts/gds/setup.js +6 -645
- package/scripts/gds/ship-check.js +5 -85
- package/scripts/gds/ship-deploy-target.js +5 -392
- package/scripts/gds/ship-escalation.js +5 -166
- package/scripts/gds/ship-finish.js +5 -419
- package/scripts/gds/ship-flow.js +5 -1216
- package/scripts/gds/ship-git.js +5 -99
- package/scripts/gds/ship-grade-steps.js +5 -546
- package/scripts/gds/ship-grade.js +5 -425
- package/scripts/gds/ship-honesty.js +5 -312
- package/scripts/gds/ship-io.js +5 -138
- package/scripts/gds/ship-land.js +5 -1129
- package/scripts/gds/ship-memory-sync.js +5 -248
- package/scripts/gds/ship-merge-gate.js +5 -224
- package/scripts/gds/ship-merge.js +5 -465
- package/scripts/gds/ship-mode-ask.js +5 -137
- package/scripts/gds/ship-mode-manual.js +5 -53
- package/scripts/gds/ship-preflight-steps.js +5 -398
- package/scripts/gds/ship-regen.js +5 -313
- package/scripts/gds/ship-resume.js +5 -200
- package/scripts/gds/ship-session-upload.js +5 -312
- package/scripts/gds/ship-state.js +5 -109
- package/scripts/gds/ship-surprise.js +5 -83
- package/scripts/gds/ship-visual.js +5 -74
- package/scripts/gds/ship.js +5 -380
- package/scripts/gds/shipping-mode.js +5 -69
- package/scripts/gds/skill-lint.js +5 -248
- package/scripts/gds/skill-preflight.js +5 -359
- package/scripts/gds/smoke-batch-claim.sh +7 -237
- package/scripts/gds/smoke-batch-release.sh +7 -315
- package/scripts/gds/smoke-claim-consistency.sh +7 -221
- package/scripts/gds/smoke-dependencies.sh +7 -142
- package/scripts/gds/smoke-gds.js +6 -255
- package/scripts/gds/smoke-write.sh +7 -274
- package/scripts/gds/source-text-test-scan.js +7 -0
- package/scripts/gds/spark.js +6 -293
- package/scripts/gds/stale-worktrees.js +5 -210
- package/scripts/gds/start-goals.js +5 -101
- package/scripts/gds/start.js +6 -1089
- package/scripts/gds/status.js +6 -544
- package/scripts/gds/strand-watch.js +5 -313
- package/scripts/gds/stranded-rows.js +5 -198
- package/scripts/gds/stray-unit-sweep.sh +7 -70
- package/scripts/gds/surface.js +5 -100
- package/scripts/gds/task.js +6 -272
- package/scripts/gds/test-path-guard.js +5 -97
- package/scripts/gds/triage.js +6 -741
- package/scripts/gds/turn-end-sound.js +5 -72
- package/scripts/gds/tweak-halt.js +5 -68
- package/scripts/gds/tweak-renders.js +5 -198
- package/scripts/gds/uat.js +6 -119
- package/scripts/gds/ui-kit-transform.js +5 -41
- package/scripts/gds/update-channel.js +5 -510
- package/scripts/gds/update-sweep.js +5 -827
- package/scripts/gds/upgrade-artist-gate.js +5 -45
- package/scripts/gds/upgrade-commit-identity.js +5 -31
- package/scripts/gds/upgrade-migrate.js +5 -223
- package/scripts/gds/upgrade-operator.js +6 -73
- package/scripts/gds/upgrade-outcome.js +5 -173
- package/scripts/gds/upgrade.js +5 -1497
- package/scripts/gds/validate-design.js +5 -10
- package/scripts/gds/version-close.js +6 -620
- package/scripts/gds/version-literal-guard.js +5 -138
- package/scripts/gds/version-select.js +5 -77
- package/scripts/gds/visual-review-nudge.js +5 -38
- package/scripts/gds/wedge-remedy.js +5 -173
- package/scripts/gds/worktree-claim-guard.js +5 -129
- package/scripts/gds/worktree.js +6 -448
- package/scripts/hall-preview/refresh-fixtures.js +1 -1
- package/scripts/hall-preview/server.js +2 -2
- package/scripts/migrate.sh +3 -3
- package/scripts/public-mirror-export.js +3 -3
- package/scripts/security/dep-audit.js +50 -124
- package/scripts/setup-builder.js +7 -7
- package/src/bongos/api-errors.js +1 -0
- package/src/bongos/api-prefix.js +1 -1
- package/src/bongos/auth-github.js +19 -3
- package/src/bongos/auth-idp.js +7 -0
- package/src/bongos/claim-attribution.js +2 -2
- package/src/bongos/core-moves.js +1 -1
- package/src/bongos/core-update.js +3 -3
- package/src/bongos/craft-mode.js +2 -2
- package/src/bongos/db-kernel.js +15 -3
- package/src/bongos/db.js +30 -4
- package/src/bongos/github-repos.js +1 -1
- package/src/bongos/llm-cache.js +1 -1
- package/src/bongos/llm-pricing.js +1 -1
- package/src/bongos/metrics.js +1 -1
- package/src/bongos/middleware/rate-limit.js +2 -2
- package/src/bongos/module-listing.js +93 -1
- package/src/bongos/module-scope-map.js +90 -85
- package/src/bongos/module-store.js +1 -1
- package/src/bongos/module-submissions.js +1 -1
- package/src/bongos/optimizer.js +1 -1
- package/src/bongos/package-registry.js +1 -1
- package/src/bongos/path-match.js +1 -1
- package/src/bongos/permission-path-check.js +3 -3
- package/src/bongos/platform-visibility-gate.js +3 -5
- package/src/bongos/prelaunch-gate.js +7 -6
- package/src/bongos/route-rank-check.js +2 -2
- package/src/bongos/routes/auth.js +15 -2
- package/src/bongos/routes/backup.js +1 -1
- package/src/bongos/routes/builders.js +29 -1
- package/src/bongos/routes/me.js +49 -18
- package/src/bongos/routes/modules.js +29 -9
- package/src/bongos/routes/public.js +3 -72
- package/src/bongos/schema-lag.js +1 -1
- package/src/bongos/sensitive-surfaces.js +1 -1
- package/src/bongos/serve-internal.js +65 -16
- package/src/bongos/software-update.js +2 -2
- package/src/bongos/upgrade-hold.js +3 -3
- package/src/hall-look.js +6 -5
- package/src/module-api.js +3 -3
- package/src/module-loader/catalog.js +1 -1
- package/src/module-loader/error-tally.js +3 -3
- package/src/module-loader/manifest-schema.js +3 -3
- package/src/platform-server.js +10 -0
- package/src/role-responsibilities.js +1 -1
- package/src/stale-timer.js +2 -2
- package/tests/accessibility_replay.mjs +1 -1
- package/tests/activity_rollup_order_db.mjs +1 -1
- package/tests/activity_snapshots_db.mjs +1 -1
- package/tests/adopt_detect.mjs +1 -1
- package/tests/adopt_import.mjs +1 -1
- package/tests/adopt_preflight.mjs +1 -1
- package/tests/adr_0089_scope.mjs +10 -7
- package/tests/adr_0162_citation.mjs +1 -1
- package/tests/adr_0162_gate_citation.mjs +1 -1
- package/tests/agent_invoke.mjs +1 -1
- package/tests/agent_invoke_live.mjs +3 -3
- package/tests/agents_cron_trigger.mjs +2 -2
- package/tests/agents_roster.mjs +1 -1
- package/tests/agents_sync.mjs +4 -4
- package/tests/allow_rule_guard.mjs +20 -20
- package/tests/api_alias_caller_ratchet.mjs +9 -10
- package/tests/api_alias_exceptions.mjs +7 -6
- package/tests/api_artifacts.mjs +214 -0
- package/tests/api_cli_flags.mjs +3 -3
- package/tests/api_client.mjs +56 -54
- package/tests/api_docs.mjs +30 -9
- package/tests/api_error_envelope_buildcheck.mjs +1 -1
- package/tests/api_msys_path_repair.mjs +2 -2
- package/tests/architect.mjs +1 -1
- package/tests/art_stage.mjs +2 -2
- package/tests/artifact_audit.mjs +2 -2
- package/tests/atlas.mjs +1 -1
- package/tests/audit_deps.mjs +1 -1
- package/tests/audit_gate.mjs +1 -1
- package/tests/auth_flow_slice1.mjs +3 -3
- package/tests/auth_inactive_builder.mjs +43 -5
- package/tests/auth_session_expiry_db.mjs +16 -4
- package/tests/auth_session_ttl.mjs +23 -0
- package/tests/authorship_audit.mjs +2 -2
- package/tests/autobongos_cadence.mjs +1 -1
- package/tests/autobongos_fence.mjs +1 -1
- package/tests/autobongos_grade_cap.mjs +2 -2
- package/tests/autobongos_heartbeat_head.mjs +1 -1
- package/tests/autobongos_host_access.mjs +3 -3
- package/tests/autobongos_loop.mjs +17 -17
- package/tests/autobongos_service_ps1.mjs +3 -3
- package/tests/autobongos_tweak_lane.mjs +2 -2
- package/tests/autobongos_verify.mjs +2 -2
- package/tests/autonomous_fit_protected_paths.mjs +3 -3
- package/tests/autonomy_config_idle.mjs +1 -1
- package/tests/autonomy_daily_checks.mjs +201 -0
- package/tests/autonomy_digest.mjs +1 -1
- package/tests/autonomy_gate.mjs +1 -1
- package/tests/autonomy_gauge.mjs +2 -2
- package/tests/autonomy_runner_identity.mjs +1 -1
- package/tests/backfill_sessions.mjs +8 -8
- package/tests/backfill_subagent_rewards.mjs +1 -1
- package/tests/backfill_task_rewards.mjs +2 -2
- package/tests/backlog_review.mjs +3 -3
- package/tests/baseline_staleness.mjs +2 -2
- package/tests/bfg.mjs +11 -5
- package/tests/bfg_write.mjs +20 -11
- package/tests/blockers_hall.mjs +14 -4
- package/tests/blockers_page_ui.mjs +56 -12
- package/tests/bongos_dispatch.mjs +5 -5
- package/tests/bongos_login.mjs +2 -2
- package/tests/bug_attachment_audit.mjs +1 -1
- package/tests/bug_attachment_recover.mjs +2 -2
- package/tests/bug_triage.mjs +3 -3
- package/tests/build_info.mjs +1 -1
- package/tests/builder_tester_tag.mjs +184 -0
- package/tests/bump_version.mjs +3 -3
- package/tests/canonical_profile_url.mjs +1 -1
- package/tests/capture_error_format.mjs +1 -1
- package/tests/capture_goal_routing.mjs +2 -2
- package/tests/category_advisory_guard.mjs +3 -3
- package/tests/claim_error_surface.mjs +2 -2
- package/tests/claim_from_task_and_home.mjs +1 -1
- package/tests/claim_gate_open_blocker.mjs +7 -4
- package/tests/claim_gate_rebase.mjs +12 -8
- package/tests/claim_recall.mjs +4 -4
- package/tests/claim_resolve_worktree_lock.mjs +1 -1
- package/tests/claude_materialize.mjs +68 -68
- package/tests/clawback_confirmed_backlog.mjs +8 -5
- package/tests/cli_allowlist_permissions.mjs +11 -11
- package/tests/cli_dispatcher.mjs +2 -2
- package/tests/cli_err_code.mjs +6 -6
- package/tests/cli_exit_no_abort.mjs +7 -7
- package/tests/cli_lib_formatters.mjs +2 -2
- package/tests/cli_sessions.mjs +5 -5
- package/tests/cli_surface.mjs +15 -15
- package/tests/cli_token_reissue.mjs +2 -2
- package/tests/client_baseurl_guard.mjs +1 -1
- package/tests/client_bundle_route.mjs +35 -4
- package/tests/cloud_bongos_pack.mjs +1 -1
- package/tests/community_leaderboard_db.mjs +1 -1
- package/tests/conductor.mjs +18 -18
- package/tests/conflict_resolve.mjs +14 -16
- package/tests/consumer_layout_boot.mjs +12 -12
- package/tests/context_pack.mjs +6 -6
- package/tests/control_manifest.mjs +4 -4
- package/tests/copy_desk_page_reads.mjs +1 -1
- package/tests/copy_desk_page_release.mjs +192 -0
- package/tests/copy_inventory.mjs +2 -2
- package/tests/core_auto_upgrade.mjs +1 -1
- package/tests/core_move_notice.mjs +2 -2
- package/tests/core_origin_follow.mjs +7 -7
- package/tests/core_pin_sync.mjs +3 -3
- package/tests/core_upgrade_door.mjs +2 -2
- package/tests/core_upgrade_owner_door.mjs +34 -1
- package/tests/core_upgrade_runner.mjs +19 -19
- package/tests/credential_presence.mjs +2 -2
- package/tests/credit_grant.mjs +3 -3
- package/tests/credit_log_single_writer.mjs +5 -5
- package/tests/criterion_ref_status.mjs +2 -2
- package/tests/cross_discipline_priority_direction.mjs +3 -3
- package/tests/cutover_codemod.mjs +2 -4
- package/tests/db_backup_nightly.mjs +1 -1
- package/tests/db_backup_offsite.mjs +1 -1
- package/tests/db_ownership_handover.mjs +2 -2
- package/tests/dead_deps.mjs +3 -3
- package/tests/dependency_advisory.mjs +1 -1
- package/tests/deploy_audit_gate.mjs +4 -4
- package/tests/deploy_divergence_line.mjs +36 -16
- package/tests/deploy_page_projects.mjs +35 -4
- package/tests/dev_lib.mjs +2 -2
- package/tests/dev_windows.mjs +2 -2
- package/tests/diagram_facts_offset.mjs +1 -1
- package/tests/diagram_repo_slug.mjs +1 -1
- package/tests/diff_derived_signals.mjs +2 -2
- package/tests/dns_preflight.mjs +2 -2
- package/tests/do_api.mjs +3 -3
- package/tests/doc_cli_guard.mjs +28 -28
- package/tests/doc_comment_coverage.mjs +1 -1
- package/tests/doc_control_claims.mjs +11 -11
- package/tests/docs_entropy.mjs +2 -2
- package/tests/docs_openapi_route.mjs +8 -6
- package/tests/doctor_hooks.mjs +1 -1
- package/tests/edit_hints.mjs +3 -2
- package/tests/effective_visibility_predicate.mjs +1 -19
- package/tests/env_knobs_neutral_prefix.mjs +13 -13
- package/tests/exec_path_guard.mjs +4 -4
- package/tests/executed_closure.mjs +18 -12
- package/tests/file_map.mjs +1 -1
- package/tests/find_untested.mjs +13 -13
- package/tests/first_admin_bootstrap.mjs +1 -1
- package/tests/fitness.mjs +16 -16
- package/tests/fitness_gds_ratchet.mjs +2 -2
- package/tests/fitness_installed_core.mjs +3 -3
- package/tests/fitness_no_raw_nul.mjs +1 -1
- package/tests/fitness_ratchets.mjs +3 -3
- package/tests/fitness_scope_roster.mjs +2 -2
- package/tests/fitness_two_root.mjs +8 -8
- package/tests/fixtures/accessibility-replay.json +5 -5
- package/tests/fixtures/grade-replay/recorded-panel-grades.json +1 -1
- package/tests/fixtures/ideator-prefold/README.md +1 -1
- package/tests/fixtures/page-ledger.mjs +22 -0
- package/tests/fixtures/session-506-digest.json +5 -5
- package/tests/gate_approvals.mjs +50 -0
- package/tests/gate_review.mjs +8 -8
- package/tests/gating_review_retired.mjs +2 -2
- package/tests/gen_freshness.mjs +3 -3
- package/tests/git_guard.mjs +3 -3
- package/tests/git_merge_regen.mjs +41 -65
- package/tests/github_one_trip.mjs +4 -4
- package/tests/github_pick_up.mjs +2 -2
- package/tests/github_push_merge_driver.mjs +1 -1
- package/tests/go_live.mjs +3 -2
- package/tests/goal_category.mjs +1 -1
- package/tests/goal_cli.mjs +2 -2
- package/tests/goal_create_spec_entry.mjs +1 -1
- package/tests/goal_invite_consent.mjs +3 -1
- package/tests/goal_move.mjs +1 -1
- package/tests/goal_working_area.mjs +1 -1
- package/tests/government_agent_asks.mjs +7 -7
- package/tests/government_board_room_copy.mjs +6 -1
- package/tests/government_board_view.mjs +39 -0
- package/tests/government_board_vote_ui.mjs +39 -1
- package/tests/government_config.mjs +2 -2
- package/tests/government_live_proof_shape.mjs +1 -1
- package/tests/government_protected_surfaces.mjs +54 -53
- package/tests/government_require_permission.mjs +9 -1
- package/tests/government_vanilla_boot.mjs +1 -1
- package/tests/government_vocabulary.mjs +2 -2
- package/tests/government_walk.mjs +2 -2
- package/tests/grade_body_limit.mjs +6 -4
- package/tests/grade_correlation_audit.mjs +3 -3
- package/tests/grade_diff_hash.mjs +1 -1
- package/tests/grade_engine_replay.mjs +2 -2
- package/tests/grade_server_authoritative.mjs +1 -1
- package/tests/grade_unavailable_display.mjs +1 -1
- package/tests/grader.mjs +8 -24
- package/tests/grader_generated_provenance.mjs +14 -14
- package/tests/grader_no_artifact.mjs +1 -1
- package/tests/grader_prompt_fencing.mjs +1 -1
- package/tests/grader_quality_window_overflow.mjs +1 -1
- package/tests/grader_reader_lens.mjs +3 -3
- package/tests/grader_regrade_delta.mjs +1 -1
- package/tests/grader_unbacked_score.mjs +2 -2
- package/tests/hall_acclaim_vote_control.mjs +113 -0
- package/tests/hall_asset_cache.mjs +127 -0
- package/tests/hall_audit.mjs +63 -0
- package/tests/hall_board_world.mjs +20 -0
- package/tests/hall_city_card_words.mjs +61 -0
- package/tests/hall_client_request_shape.mjs +5 -1
- package/tests/hall_home_ships_bounded.mjs +160 -0
- package/tests/hall_landing_boot.mjs +15 -2
- package/tests/hall_nav.mjs +33 -0
- package/tests/hall_onboarding_bongos_setup.mjs +1 -1
- package/tests/hall_oversight_world.mjs +44 -4
- package/tests/hall_palette.mjs +12 -9
- package/tests/hall_preview_security.mjs +1 -1
- package/tests/hall_profile_world.mjs +17 -0
- package/tests/hall_reading_world.mjs +16 -1
- package/tests/hall_roster_world.mjs +2 -1
- package/tests/hall_studio_world.mjs +4 -1
- package/tests/hall_work_history_id.mjs +39 -0
- package/tests/held_tweak_reporting.mjs +4 -4
- package/tests/helpers.mjs +3 -3
- package/tests/home_bounded_reads.mjs +1 -1
- package/tests/home_isolation_guard.mjs +1 -1
- package/tests/hook_core_resolve.mjs +7 -7
- package/tests/hook_user_agents.mjs +1 -1
- package/tests/hooks_drain.mjs +2 -2
- package/tests/host_topology_skips.mjs +1 -1
- package/tests/howto_guide.mjs +1 -1
- package/tests/howto_moments.mjs +3 -3
- package/tests/hub_account_page.mjs +1 -1
- package/tests/idea_capture_grades.mjs +2 -2
- package/tests/idea_develop_spark.mjs +1 -1
- package/tests/idea_filed_via.mjs +2 -2
- package/tests/idea_ideate_full.mjs +1 -1
- package/tests/idea_spark_mark.mjs +1 -1
- package/tests/idea_spark_queue.mjs +1 -1
- package/tests/idea_triage.mjs +1 -1
- package/tests/idea_triage_grade.mjs +3 -3
- package/tests/idea_vote_permission.mjs +113 -0
- package/tests/idea_votes_fold_db.mjs +123 -0
- package/tests/infra_exec_paths.mjs +12 -12
- package/tests/init.mjs +2 -2
- package/tests/instance_db_migrated_on_code_move.mjs +5 -5
- package/tests/instance_feedback.mjs +9 -9
- package/tests/instance_mismatch_guard.mjs +2 -2
- package/tests/integration_parked_ratchet.mjs +24 -2
- package/tests/intent_retry.mjs +1 -1
- package/tests/interaction_posture.mjs +3 -3
- package/tests/invite_expiry_db.mjs +1 -1
- package/tests/joinability_invite_only.mjs +1 -1
- package/tests/karma_vote_lists.mjs +270 -0
- package/tests/key-card.mjs +2 -2
- package/tests/key-status.mjs +2 -2
- package/tests/knip_ratchet_ambient.mjs +2 -2
- package/tests/known_failing_ratchet.mjs +1 -1
- package/tests/land_watch.mjs +2 -2
- package/tests/landing_legal_pages.mjs +1 -1
- package/tests/landing_page.mjs +2 -2
- package/tests/leaderboard_roles.mjs +4 -1
- package/tests/leak_scan_allowlist.mjs +8 -8
- package/tests/leak_scan_fail_closed.mjs +1 -1
- package/tests/lib_sh_resolution.mjs +9 -9
- package/tests/lifecycle-card.mjs +7 -7
- package/tests/linkify_check.mjs +2 -2
- package/tests/linkify_refs.mjs +1 -1
- package/tests/llm-cache-route.mjs +1 -1
- package/tests/local_preview.mjs +2 -2
- package/tests/main_audit.mjs +3 -3
- package/tests/main_audit_attestation.mjs +1 -1
- package/tests/main_audit_db_roster.mjs +2 -2
- package/tests/main_worktree_busy_reason.mjs +3 -3
- package/tests/markdown_line_endings.mjs +2 -2
- package/tests/me_streak_leaderboard_queries.mjs +193 -0
- package/tests/membership_kind_lockstep.mjs +1 -1
- package/tests/memory_isolation.mjs +16 -8
- package/tests/memory_map.mjs +2 -2
- package/tests/memory_pull.mjs +33 -25
- package/tests/merge_driver_register.mjs +3 -3
- package/tests/migration_allocation.mjs +2 -2
- package/tests/migration_namespace.mjs +1 -1
- package/tests/migrations_forward_safe.mjs +1 -1
- package/tests/mingle.mjs +1 -1
- package/tests/mirror_lineage_fulltree.mjs +3 -3
- package/tests/mirror_lineage_proof.mjs +2 -2
- package/tests/mirror_redact.mjs +4 -4
- package/tests/missing_dep_classify.mjs +3 -3
- package/tests/module-scope-map.mjs +22 -22
- package/tests/module_api_lazy.mjs +1 -1
- package/tests/module_assess_docs.mjs +2 -2
- package/tests/module_assess_installs.mjs +3 -3
- package/tests/module_assess_price_parity.mjs +5 -5
- package/tests/module_assess_score.mjs +5 -5
- package/tests/module_assess_security.mjs +4 -4
- package/tests/module_assess_tests.mjs +3 -3
- package/tests/module_assessments_migration.mjs +1 -1
- package/tests/module_catalog.mjs +2 -2
- package/tests/module_cli.mjs +3 -3
- package/tests/module_entitlements.mjs +1 -1
- package/tests/module_error_counts.mjs +1 -1
- package/tests/module_install.mjs +4 -4
- package/tests/module_loader.mjs +3 -1
- package/tests/module_owned_tests.mjs +1 -1
- package/tests/module_release_channels.mjs +1 -1
- package/tests/module_store_howto.mjs +3 -3
- package/tests/module_store_listing.mjs +139 -2
- package/tests/module_store_publish.mjs +4 -4
- package/tests/module_store_publish_route.mjs +1 -1
- package/tests/module_store_reassess.mjs +1 -1
- package/tests/module_store_registry_migration.mjs +1 -1
- package/tests/module_test_runner.mjs +3 -3
- package/tests/module_update.mjs +4 -4
- package/tests/module_upgrade_updates.mjs +1 -1
- package/tests/move_escalation.mjs +2 -2
- package/tests/nav_permission_atoms.mjs +3 -2
- package/tests/needs_rebase.mjs +7 -3
- package/tests/newcomer_floor.mjs +1 -1
- package/tests/next_number.mjs +1 -1
- package/tests/no_artifact_escalation.mjs +3 -3
- package/tests/npm_release_where.mjs +1 -1
- package/tests/oauth_secret.mjs +2 -2
- package/tests/onboard.mjs +6 -6
- package/tests/onboarding_gate.mjs +2 -2
- package/tests/opt_in_skill_modules.mjs +3 -3
- package/tests/own_scope_guard.mjs +1 -1
- package/tests/own_session_revoke.mjs +4 -1
- package/tests/package_core.mjs +10 -11
- package/tests/page_inventory.mjs +5 -5
- package/tests/page_reader.mjs +7 -7
- package/tests/page_tweak_hold.mjs +6 -6
- package/tests/parallel-load.mjs +1 -1
- package/tests/paste_token_api_base.mjs +1 -1
- package/tests/paste_token_session_store.mjs +2 -2
- package/tests/pending_invite_purge_db.mjs +1 -1
- package/tests/permission_path.mjs +1 -1
- package/tests/pin_replay.mjs +1 -1
- package/tests/pin_write_key.mjs +7 -7
- package/tests/plain_cards.mjs +15 -15
- package/tests/pr_assign.mjs +1 -1
- package/tests/pre_push_hook.mjs +3 -3
- package/tests/preflight_checks.mjs +2 -2
- package/tests/prelaunch_gate.mjs +1 -1
- package/tests/privacy_matrix.mjs +1 -1
- package/tests/probe_cache.mjs +6 -6
- package/tests/profile_connections_ui.mjs +4 -3
- package/tests/profile_fields.mjs +11 -1
- package/tests/profile_privacy_owner_view.mjs +1 -1
- package/tests/profile_role_headline.mjs +10 -9
- package/tests/project_admin_console_model.mjs +1 -1
- package/tests/projects_hub.mjs +1 -1
- package/tests/projects_hub_cloud_hop.mjs +1 -1
- package/tests/promote_goal_id.mjs +6 -6
- package/tests/promotion_sweep.mjs +1 -1
- package/tests/provision.mjs +24 -24
- package/tests/provision_account_identity.mjs +2 -2
- package/tests/provision_byo_host.mjs +1 -1
- package/tests/provision_caddy_wiring.mjs +2 -2
- package/tests/provision_disconnect.mjs +2 -2
- package/tests/provision_dns_first.mjs +1 -1
- package/tests/provision_render.mjs +9 -9
- package/tests/provision_repo_private.mjs +3 -3
- package/tests/provision_resource_caps.mjs +5 -5
- package/tests/provision_restart.mjs +3 -3
- package/tests/provision_settings_apply.mjs +7 -7
- package/tests/provision_teardown_address.mjs +2 -2
- package/tests/provisioning_capacity.mjs +5 -5
- package/tests/provisioning_credential_preflight.mjs +1 -1
- package/tests/provisioning_disconnect.mjs +1 -1
- package/tests/provisioning_error_note_scope.mjs +4 -4
- package/tests/provisioning_paid_shape_gate.mjs +2 -2
- package/tests/provisioning_planet_physics.mjs +16 -0
- package/tests/provisioning_runner_drift_notice.mjs +2 -2
- package/tests/provisioning_settings_env.mjs +1 -1
- package/tests/pruned_lockfile_integrity.mjs +1 -1
- package/tests/public_mirror_export.mjs +1 -1
- package/tests/publish_integration_gate.mjs +2 -2
- package/tests/publish_manifest.mjs +6 -6
- package/tests/publish_watch.mjs +1 -1
- package/tests/push_path_brief.mjs +2 -2
- package/tests/raise.mjs +248 -0
- package/tests/rank_roles_audit.mjs +1 -1
- package/tests/rank_tier_single_source.mjs +2 -2
- package/tests/rate_limit_public.mjs +1 -1
- package/tests/read_default_meter.mjs +2 -2
- package/tests/read_session_export.mjs +1 -1
- package/tests/rebase_gate_set_aside.mjs +1 -1
- package/tests/recall_cli.mjs +1 -1
- package/tests/recall_corpus_health.mjs +3 -2
- package/tests/recall_hints.mjs +1 -1
- package/tests/recruiter_sliver_boundary.mjs +1 -1
- package/tests/redteam_patrol.mjs +2 -2
- package/tests/regrade_actual_minutes.mjs +2 -2
- package/tests/regrade_eligibility.mjs +2 -2
- package/tests/release_core.mjs +2 -2
- package/tests/release_notes.mjs +4 -4
- package/tests/rename_history_restraint.mjs +3 -3
- package/tests/rename_ledger_prose.mjs +6 -6
- package/tests/render_api.mjs +1 -1
- package/tests/render_check.mjs +4 -4
- package/tests/render_deploy.mjs +1 -1
- package/tests/repo_info_binding.mjs +1 -1
- package/tests/repo_map.mjs +5 -5
- package/tests/reward_mode_cost_plus_only.mjs +7 -3
- package/tests/reward_mode_surfacing.mjs +1 -1
- package/tests/role_responsibilities.mjs +1 -1
- package/tests/route_permission_check.mjs +1 -1
- package/tests/route_shadow_guard.mjs +1 -1
- package/tests/route_validation.mjs +1 -1
- package/tests/routine_capture_kind.mjs +24 -13
- package/tests/routine_schedule.mjs +51 -9
- package/tests/run_routine.mjs +5 -5
- package/tests/run_routine_two_root.mjs +5 -5
- package/tests/runner_drift.mjs +17 -17
- package/tests/sandbox_stage.mjs +5 -5
- package/tests/scope_map_guard.mjs +7 -7
- package/tests/scouting_owner_access_and_reach.mjs +1 -1
- package/tests/scripts_gds_forwarders.mjs +224 -0
- package/tests/scrubber_corpus.mjs +2 -2
- package/tests/seam_wiring_guard.mjs +1 -1
- package/tests/search_ingest.mjs +2 -2
- package/tests/search_ingest_db.mjs +1 -1
- package/tests/search_ingest_nul.mjs +6 -6
- package/tests/seed_verify_criteria.mjs +3 -3
- package/tests/sequence.mjs +3 -3
- package/tests/served_paths_shipped.mjs +3 -3
- package/tests/session_506_regression.mjs +1 -1
- package/tests/session_accessibility.mjs +1 -1
- package/tests/session_caps.mjs +1 -1
- package/tests/session_cost.mjs +1 -1
- package/tests/session_digest.mjs +2 -2
- package/tests/session_eval.mjs +6 -6
- package/tests/session_index.mjs +1 -1
- package/tests/session_records.mjs +4 -4
- package/tests/session_rename_fallback.mjs +2 -2
- package/tests/session_reward_on_land.mjs +7 -149
- package/tests/session_reward_on_land_db.mjs +191 -0
- package/tests/session_reward_reconcile.mjs +6 -88
- package/tests/session_reward_reconcile_db.mjs +132 -0
- package/tests/session_transcript.mjs +1 -1
- package/tests/sessions_kit_pager.mjs +2 -1
- package/tests/setup_device_flow_fallback.mjs +2 -2
- package/tests/setup_smoke.mjs +12 -5
- package/tests/setup_status_facts.mjs +54 -12
- package/tests/ship_autolinkify.mjs +2 -2
- package/tests/ship_automerge_injection.mjs +1 -1
- package/tests/ship_base_flag.mjs +1 -1
- package/tests/ship_broadcast_routing.mjs +1 -1
- package/tests/ship_broadcast_server.mjs +2 -2
- package/tests/ship_builder_model.mjs +1 -1
- package/tests/ship_cannot_lie.mjs +9 -9
- package/tests/ship_card.mjs +2 -2
- package/tests/ship_ci_deploy.mjs +7 -7
- package/tests/ship_error_shape.mjs +1 -1
- package/tests/ship_land_ci_not_started.mjs +3 -3
- package/tests/ship_land_conflict.mjs +3 -3
- package/tests/ship_land_proof.mjs +3 -3
- package/tests/ship_land_red_pr.mjs +5 -5
- package/tests/ship_merge_gate.mjs +14 -14
- package/tests/ship_mode.mjs +1 -1
- package/tests/ship_mode_first_ship.mjs +4 -4
- package/tests/ship_mode_hands_off.mjs +8 -8
- package/tests/ship_post_land_verify.mjs +1 -1
- package/tests/ship_preflight.mjs +19 -19
- package/tests/ship_premerge.mjs +1 -1
- package/tests/ship_publish_error.mjs +2 -2
- package/tests/ship_push_diagnosis.mjs +1 -1
- package/tests/ship_regen_copy_inventory.mjs +3 -3
- package/tests/ship_resume.mjs +4 -4
- package/tests/ship_smoke_gate.mjs +1 -1
- package/tests/ship_upload_skip.mjs +1 -1
- package/tests/ship_upstream_deletion.mjs +1 -1
- package/tests/ship_vendored_instance.mjs +8 -8
- package/tests/ship_visual_regrade.mjs +3 -3
- package/tests/ship_zero_commit.mjs +1 -1
- package/tests/skill_docs_unavailable_regrade.mjs +3 -3
- package/tests/skill_friction_kind.mjs +1 -1
- package/tests/skill_grade_recover.mjs +1 -1
- package/tests/skill_grader_health.mjs +1 -1
- package/tests/skill_lint.mjs +1 -1
- package/tests/skill_menu_ruling.mjs +1 -1
- package/tests/skill_preflight.mjs +7 -7
- package/tests/skip_is_not_pass.mjs +22 -1
- package/tests/smoke_dependencies_witness.mjs +2 -2
- package/tests/smoke_preflight.mjs +1 -1
- package/tests/smoke_target.mjs +2 -2
- package/tests/smoke_write_contract.mjs +2 -2
- package/tests/sound_player.mjs +8 -8
- package/tests/source_text_test_ratchet.mjs +97 -0
- package/tests/speciality_corpus_scope.mjs +1 -1
- package/tests/speciality_session_skills.mjs +1 -1
- package/tests/sso_checkin_legacy_field_gone.mjs +4 -2
- package/tests/stale_timer.mjs +3 -3
- package/tests/stale_worktrees.mjs +1 -1
- package/tests/start_env_guard.mjs +1 -1
- package/tests/start_goal_first.mjs +3 -3
- package/tests/start_inbox_count.mjs +1 -1
- package/tests/start_rebase_warning.mjs +1 -1
- package/tests/status_default_version.mjs +3 -3
- package/tests/status_mirror_sync.mjs +1 -1
- package/tests/status_page_no_dead_uptime.mjs +80 -0
- package/tests/stop_refcheck.mjs +1 -1
- package/tests/strand_watch.mjs +1 -1
- package/tests/stranded_rows.mjs +1 -1
- package/tests/stuck_detector.mjs +14 -14
- package/tests/sweep_app_account.mjs +3 -3
- package/tests/task_cli.mjs +2 -2
- package/tests/task_detail_ui.mjs +11 -1
- package/tests/task_discipline_required.mjs +2 -2
- package/tests/task_list_paging.mjs +1 -1
- package/tests/task_visual_slots.mjs +2 -2
- package/tests/terms_acceptance.mjs +1 -1
- package/tests/terms_grandfather_db.mjs +1 -1
- package/tests/test_path_guard.mjs +1 -1
- package/tests/triage_development.mjs +1 -1
- package/tests/tweak_batch_apply.mjs +2 -2
- package/tests/tweak_land_heal.mjs +3 -3
- package/tests/tweak_unattended.mjs +3 -3
- package/tests/ui_design_skills.mjs +2 -2
- package/tests/unit_report_status.mjs +2 -2
- package/tests/unit_runner_serial.mjs +2 -2
- package/tests/unit_runner_teardown_abort.mjs +1 -1
- package/tests/update_channel.mjs +2 -2
- package/tests/update_channel_db.mjs +4 -4
- package/tests/update_subscription_engine.mjs +26 -26
- package/tests/update_sweep_home.mjs +14 -14
- package/tests/upgrade.mjs +11 -11
- package/tests/upgrade_artist_gate.mjs +4 -4
- package/tests/upgrade_commit_identity.mjs +2 -2
- package/tests/upgrade_migrate.mjs +7 -7
- package/tests/upgrade_operator.mjs +2 -2
- package/tests/upgrade_outcome.mjs +2 -2
- package/tests/upgrade_persist_pin.mjs +5 -5
- package/tests/upkeep_home.mjs +1 -1
- package/tests/version_close.mjs +2 -2
- package/tests/version_close_cli.mjs +2 -2
- package/tests/version_close_route.mjs +1 -1
- package/tests/version_literals.mjs +23 -23
- package/tests/visual_review.mjs +5 -5
- package/tests/wedge_remedy.mjs +5 -5
- package/tests/welcome_boot.mjs +116 -0
- package/tests/welcome_boot_browser.mjs +271 -0
- package/tests/wizard_born_first_board.mjs +3 -3
- package/tests/wizard_demo.mjs +1 -1
- package/tests/wizard_one_page.mjs +4 -3
- package/tests/wizard_physics.mjs +3 -1
- package/tests/wizard_physics_more.mjs +42 -3
- package/tests/work_title_wrap.mjs +1 -1
- package/tests/workflow_exec_paths.mjs +6 -6
- package/tests/worktree_claim_guard.mjs +1 -1
- package/tests/worktree_helper.mjs +2 -2
- package/tests/write_validation_gaps.mjs +3 -3
- package/scripts/gds/api.sh +0 -6
- package/scripts/gds/artifact-staleness.js +0 -267
- package/scripts/gds/audit-exports.js +0 -128
- package/scripts/gds/classify-discipline.js +0 -153
- package/scripts/gds/codemod-rename-src-gds.js +0 -145
- package/scripts/gds/coreB-carve-proof.sh +0 -725
- package/scripts/gds/goal-names.js +0 -102
- package/scripts/gds/rename-goals.js +0 -109
- package/scripts/gds/resolve-skill-model.js +0 -57
- package/scripts/gds/security-baseline-check.sh +0 -180
- package/scripts/gds/seed-adopt-tasks.js +0 -75
- package/scripts/gds/seed-api-contract-goal-tasks.js +0 -141
- package/scripts/gds/seed-board-room-tasks.js +0 -196
- package/scripts/gds/seed-bongos-app-tasks.js +0 -294
- package/scripts/gds/seed-bongos-coreB-tranche1-tasks.js +0 -81
- package/scripts/gds/seed-bongos-coreB-tranche2-tasks.js +0 -100
- package/scripts/gds/seed-bongos-goal-hierarchy-tasks.js +0 -307
- package/scripts/gds/seed-bongos-module-system-tasks.js +0 -346
- package/scripts/gds/seed-bongos-tasks.js +0 -214
- package/scripts/gds/seed-bongos-v1-seo-tasks.js +0 -104
- package/scripts/gds/seed-bv1-community-tasks.js +0 -131
- package/scripts/gds/seed-bv1-privacy-invites-tasks.js +0 -133
- package/scripts/gds/seed-bv1-profile-page-tasks.js +0 -161
- package/scripts/gds/seed-bv1-r01-delta-tasks.js +0 -154
- package/scripts/gds/seed-bv2-tweak-mode-tasks.js +0 -277
- package/scripts/gds/seed-gds-v4-tasks.js +0 -624
- package/scripts/gds/seed-governance-tasks.js +0 -340
- package/scripts/gds/seed-medusa-tasks.js +0 -440
- package/scripts/gds/seed-module-upstreaming.js +0 -219
- package/scripts/gds/seed-productization-tasks.js +0 -235
- package/scripts/gds/seed-project-admin-console-tasks.js +0 -88
- package/scripts/gds/seed-provisioning-tasks.js +0 -83
- package/scripts/gds/seed-strict-versioning-tasks.js +0 -275
- package/scripts/gds/seed-v2-world-tasks.js +0 -283
- package/scripts/gds/spike-task-map.js +0 -899
- package/scripts/migrate_cost_ledger.sh +0 -178
- package/scripts/status-probe.mjs +0 -213
- package/src/bongos/uptime-poller.js +0 -93
- package/tests/artifact_staleness.mjs +0 -207
- package/tests/goal_names.mjs +0 -120
- package/tests/government_fold_bench.mjs +0 -50
- package/tests/spike_task_map.mjs +0 -422
- package/tests/status-probe.mjs +0 -89
- /package/{scripts/gds → modules/raise}/CLAUDE.md +0 -0
- /package/scripts/{gds → bongos}/cloudbongos-token-isolation.conf +0 -0
- /package/scripts/{gds → bongos}/discipline-modes.json +0 -0
- /package/scripts/{gds → bongos}/retired-core-skills.json +0 -0
|
@@ -1,294 +0,0 @@
|
|
|
1
|
-
#!/usr/bin/env node
|
|
2
|
-
// Seed the 17 net-new BONGOS-V1 tasks — the Cloud Bongos desktop "Feedback
|
|
3
|
-
// Capture" app (a Zoom-style floating toolbar: record + markup over any target
|
|
4
|
-
// -> one model-agnostic prompt -> Claude Desktop/Code). The Dev Box app is
|
|
5
|
-
// absorbed as a module of this app. Visual element-select is deferred to V2.
|
|
6
|
-
// Design home: the "Bongos App — V1" plan artifact (favicon 🥁).
|
|
7
|
-
//
|
|
8
|
-
// Shape mirrors seed-bongos-tasks.js exactly:
|
|
9
|
-
// - POST /api/bongos/tasks { version_id:'BONGOS-V1', criterion_ids:['C1'], ... }
|
|
10
|
-
// - POST /api/bongos/tasks/:id/dependencies { depends_on_task_ids:[...] }
|
|
11
|
-
// - idempotent on source_ref (skips already-created); deps idempotent server-side.
|
|
12
|
-
// Run migration 120_bongos_v1_planning_seed.sql FIRST so the version + C1..C4 exist.
|
|
13
|
-
// After this runs, promote the zero-dependency tasks (R01/R02/R03) to 'ready'
|
|
14
|
-
// (planning-session Phase 5 step 6) — they never auto-promote.
|
|
15
|
-
//
|
|
16
|
-
// Usage: node scripts/gds/seed-bongos-app-tasks.js [--dry-run]
|
|
17
|
-
|
|
18
|
-
const { cliClient, requireSession } = require('./cli-lib');
|
|
19
|
-
|
|
20
|
-
const DRY = process.argv.includes('--dry-run');
|
|
21
|
-
|
|
22
|
-
// key = symbolic intra-version ref used in deps[]. Display R## assigned dynamically.
|
|
23
|
-
const TASKS = [
|
|
24
|
-
{
|
|
25
|
-
key: 'R01',
|
|
26
|
-
title: 'Resolve Windows code-signing cert (reuse existing Apple Developer ID for Mac)',
|
|
27
|
-
description: `Part of Bongos App V1 / C1. The launch gate for a mic+screen app: an unsigned app that asks for Screen Recording + Microphone is treated as hostile (macOS grants may not persist; Windows SmartScreen blocks first launch). The macOS half is settled — reuse the Apple Developer ID already in hand for the Dev Box app. This task resolves the Windows code-signing path (cert acquisition + electron-builder wiring decision) so packaging (R15/R16) is unblocked on both OSes.
|
|
28
|
-
|
|
29
|
-
**Done when:** the Windows signing approach is decided + the cert/identity is available (or an explicit interim "ship Mac-signed only" decision is recorded), and the Mac path is confirmed to reuse the existing Apple Developer ID.`,
|
|
30
|
-
kind: 'decision', discipline: 'engineer', priority: 3,
|
|
31
|
-
est_minutes: 30, manual_degree: 4, credits_reward: 10,
|
|
32
|
-
touches: ['bongos-app/'], criteria: ['C1'], deps: [],
|
|
33
|
-
},
|
|
34
|
-
{
|
|
35
|
-
key: 'R02',
|
|
36
|
-
title: 'Spike — transparent always-on-top click-through overlay on Mac + Windows',
|
|
37
|
-
description: `Part of Bongos App V1 / C2. De-risk the load-bearing UX primitive before building on it: an Electron transparent, frameless, always-on-top BrowserWindow with setIgnoreMouseEvents(true,{forward:true}) that lets the user draw over any other app (the Zoom annotation model). Prove the macOS type:'panel' / setVisibleOnAllWorkspaces({visibleOnFullScreen:true}) approach survives fullscreen apps + Spaces, and Windows multi-monitor / per-monitor DPI coordinate mapping.
|
|
38
|
-
|
|
39
|
-
**Done when:** a throwaway build draws a click-through overlay over a fullscreen app on macOS and over a second monitor on Windows, with the cursor passing through to the app underneath; findings (gotchas, the chosen window flags) are captured for R04.`,
|
|
40
|
-
kind: 'spike', discipline: 'engineer', priority: 4,
|
|
41
|
-
est_minutes: 180, manual_degree: 3, credits_reward: 30,
|
|
42
|
-
touches: ['bongos-app/'], criteria: ['C2'], deps: [],
|
|
43
|
-
},
|
|
44
|
-
{
|
|
45
|
-
key: 'R03',
|
|
46
|
-
title: 'Stand up the bongos-app umbrella Electron app; absorb the Dev Box app as a module',
|
|
47
|
-
description: `Part of Bongos App V1 / C1. Establish bongos-app/ as the umbrella Cloud Bongos desktop app, and bring the existing Dev Box app (devbox-app/, ADR 0045) INTO it as a module rather than a sibling install. Reuse the Dev Box app's Electron shell + app-pairing auth (writes the same ~/.config/otb/gds-session.json), branded /downloads redirect distribution, in-app updater, brand discipline (ADR 0004), and the existing Apple Developer ID. The result is one signed app that offers both the Dev Box switch and (new) the feedback toolbar.
|
|
48
|
-
|
|
49
|
-
**Done when:** bongos-app/ builds + launches as one Electron app containing the prior Dev Box functionality as a module; auth + branded distribution + updater are reused (not reimplemented); and the migration path for existing Dev Box app users is recorded.`,
|
|
50
|
-
kind: 'infra', discipline: 'engineer', priority: 5,
|
|
51
|
-
est_minutes: 360, manual_degree: 3, credits_reward: 60,
|
|
52
|
-
touches: ['bongos-app/', 'devbox-app/'], criteria: ['C1'], deps: [],
|
|
53
|
-
},
|
|
54
|
-
{
|
|
55
|
-
key: 'R04',
|
|
56
|
-
title: 'Floating toolbar + global hotkey + click-through overlay',
|
|
57
|
-
description: `Part of Bongos App V1 / C2. Cross-ref: R02 (spike), R03 (shell). Build the production floating toolbar: a small always-on-top bar summoned/dismissed by a global hotkey, plus the transparent click-through overlay window proven in R02, with macOS panel/fullscreen/Spaces handling and Windows per-monitor-DPI coordinate handling.
|
|
58
|
-
|
|
59
|
-
**Done when:** the toolbar appears over any app via a global hotkey; the overlay draws over arbitrary windows including fullscreen apps; coordinates are correct across multiple monitors / DPI scales on both OSes.`,
|
|
60
|
-
kind: 'feature', discipline: 'engineer', priority: 5,
|
|
61
|
-
est_minutes: 300, manual_degree: 2, credits_reward: 55,
|
|
62
|
-
touches: ['bongos-app/'], criteria: ['C2'], deps: ['R02', 'R03'],
|
|
63
|
-
},
|
|
64
|
-
{
|
|
65
|
-
key: 'R05',
|
|
66
|
-
title: 'First-run macOS permission wizard (Screen Recording + Microphone)',
|
|
67
|
-
description: `Part of Bongos App V1 / C1. Cross-ref: R03. A one-screen guided wizard that detects each TCC grant state (systemPreferences.getMediaAccessStatus), deep-links straight to the exact System Settings pane, and shows a live green check as each is granted. Screen Recording + Microphone are mandatory; Accessibility is requested lazily (only when rung-2 element reads land in V2), never up front. Frame the recurring (~monthly) macOS Screen-Recording re-prompt as normal.
|
|
68
|
-
|
|
69
|
-
**Done when:** on a fresh macOS install the wizard walks the user to grant Screen Recording + Microphone with live state + deep-links, and capture works immediately after; Windows (lighter: no TCC) is handled gracefully.`,
|
|
70
|
-
kind: 'feature', discipline: 'engineer', priority: 4,
|
|
71
|
-
est_minutes: 180, manual_degree: 2, credits_reward: 35,
|
|
72
|
-
touches: ['bongos-app/'], criteria: ['C1'], deps: ['R03'],
|
|
73
|
-
},
|
|
74
|
-
{
|
|
75
|
-
key: 'R06',
|
|
76
|
-
title: 'Screen/window + microphone capture + target picker',
|
|
77
|
-
description: `Part of Bongos App V1 / C2. Cross-ref: R04, R05. Use getDisplayMedia/desktopCapturer to capture a chosen window or the full screen, plus the microphone. A target picker lets the user choose WHAT to capture (and excludes the toolbar/overlay itself from the capture).
|
|
78
|
-
|
|
79
|
-
**Done when:** the user picks a target window or screen, capture streams video + mic, and the toolbar/overlay are excluded from the captured frames; works on macOS + Windows after the R05 grants.`,
|
|
80
|
-
kind: 'feature', discipline: 'engineer', priority: 5,
|
|
81
|
-
est_minutes: 240, manual_degree: 2, credits_reward: 50,
|
|
82
|
-
touches: ['bongos-app/'], criteria: ['C2'], deps: ['R04', 'R05'],
|
|
83
|
-
},
|
|
84
|
-
{
|
|
85
|
-
key: 'R07',
|
|
86
|
-
title: '~1/sec snapshot grabber + snapshot-on-change + perceptual dedup + cap',
|
|
87
|
-
description: `Part of Bongos App V1 / C2. Cross-ref: R06. Grab ~1 frame/sec off the capture stream as the token-discipline core: snapshot-on-meaningful-change rather than fixed 1/sec, perceptual-hash dedup of near-identical frames, and a hard frame cap (~60) per session. This is what keeps a session ~90x cheaper than naive full-res 1/sec.
|
|
88
|
-
|
|
89
|
-
**Done when:** frames are grabbed at ~1/sec, near-duplicate frames are dropped, a session cannot exceed the frame cap, and each kept frame carries a timestamp for later alignment.`,
|
|
90
|
-
kind: 'feature', discipline: 'engineer', priority: 4,
|
|
91
|
-
est_minutes: 180, manual_degree: 2, credits_reward: 35,
|
|
92
|
-
touches: ['bongos-app/'], criteria: ['C2'], deps: ['R06'],
|
|
93
|
-
},
|
|
94
|
-
{
|
|
95
|
-
key: 'R08',
|
|
96
|
-
title: 'Markup canvas (box/arrow/freehand/text) + freeze-frame over any window',
|
|
97
|
-
description: `Part of Bongos App V1 / C2. Cross-ref: R04. A drawing layer on the overlay: freehand, box, arrow, and text annotation over any window's pixels, plus a "freeze" that snapshots the current frame so the user can mark up a still. Markup events are timestamped (for alignment in R10) and serialized as part of the bundle.
|
|
98
|
-
|
|
99
|
-
**Done when:** the user can freeze the target and draw box/arrow/freehand/text over it; annotations export as an image + structured strokes with timestamps.`,
|
|
100
|
-
kind: 'feature', discipline: 'engineer', priority: 4,
|
|
101
|
-
est_minutes: 180, manual_degree: 2, credits_reward: 35,
|
|
102
|
-
touches: ['bongos-app/'], criteria: ['C2'], deps: ['R04'],
|
|
103
|
-
},
|
|
104
|
-
{
|
|
105
|
-
key: 'R09',
|
|
106
|
-
title: 'On-device transcription (whisper.cpp) with word timestamps',
|
|
107
|
-
description: `Part of Bongos App V1 / C3. Cross-ref: R06. Bundle whisper.cpp (small/q5 default, base fallback, large-v3-turbo opt-in) to transcribe the recorded mic audio fully on-device — privacy-respecting and effectively free, removing ~99% of the audio token cost (audio -> text). Decide lazy-download of model weights on first use vs bundling (~250-300MB).
|
|
108
|
-
|
|
109
|
-
**Done when:** recorded audio is transcribed locally to text with per-word timestamps on macOS + Windows; no audio leaves the machine; the model-weights delivery (bundle vs lazy-download) is decided + implemented.`,
|
|
110
|
-
kind: 'feature', discipline: 'engineer', priority: 4,
|
|
111
|
-
est_minutes: 240, manual_degree: 2, credits_reward: 45,
|
|
112
|
-
touches: ['bongos-app/'], criteria: ['C3'], deps: ['R06'],
|
|
113
|
-
},
|
|
114
|
-
{
|
|
115
|
-
key: 'R10',
|
|
116
|
-
title: 'Transcript <-> frame time-alignment + salience frame-escalation',
|
|
117
|
-
description: `Part of Bongos App V1 / C3. Cross-ref: R07, R08, R09. Join the word-timestamped transcript with the timestamped frame stream and the markup events, then decide which frames escalate to full resolution: the ones the speech points at (deictic words like "this/here/that"), the ones with markup, and element/freeze moments. Everything else stays a cheap thumbnail.
|
|
118
|
-
|
|
119
|
-
**Done when:** transcript segments, frames, and markup are aligned on one clock; a salience pass selects which frames escalate to full-res (capped); the output is an ordered, aligned timeline ready for prompt assembly.`,
|
|
120
|
-
kind: 'feature', discipline: 'engineer', priority: 4,
|
|
121
|
-
est_minutes: 240, manual_degree: 3, credits_reward: 50,
|
|
122
|
-
touches: ['bongos-app/'], criteria: ['C3'], deps: ['R07', 'R08', 'R09'],
|
|
123
|
-
},
|
|
124
|
-
{
|
|
125
|
-
key: 'R11',
|
|
126
|
-
title: 'Deterministic prompt.md template + bundle writer (model-agnostic)',
|
|
127
|
-
description: `Part of Bongos App V1 / C3. Cross-ref: R10. Assemble the aligned timeline into one deterministic, model-agnostic prompt.md (no LLM call by default): target context, the transcript with timestamps, attached images with captions + inlined ABSOLUTE file paths, and the ask. Write the bundle (prompt.md + frame PNGs) to a stable dir e.g. ~/CloudBongos/feedback/<id>/. Keep it agent-neutral so it feeds Claude, Cursor, Codex, etc.
|
|
128
|
-
|
|
129
|
-
**Done when:** a session produces a self-contained prompt.md + image files at a stable path, a typical session lands at the disciplined token envelope (~5-11k), and the format is documented enough for any agent to consume.`,
|
|
130
|
-
kind: 'feature', discipline: 'engineer', priority: 5,
|
|
131
|
-
est_minutes: 180, manual_degree: 2, credits_reward: 45,
|
|
132
|
-
touches: ['bongos-app/'], criteria: ['C3'], deps: ['R10'],
|
|
133
|
-
},
|
|
134
|
-
{
|
|
135
|
-
key: 'R12',
|
|
136
|
-
title: 'File-bundle + clipboard handoff for Claude Desktop',
|
|
137
|
-
description: `Part of Bongos App V1 / C4. Cross-ref: R11. The universal handoff for Claude Desktop: copy the prompt.md text to the clipboard and open the bundle folder so the user drags the images into the composer (Desktop accepts mixed text + images). Print the one-liner that tells the user exactly what to do.
|
|
138
|
-
|
|
139
|
-
**Done when:** one click puts the prompt on the clipboard + opens the folder; pasting into Claude Desktop + dragging the images produces a complete, actionable message.`,
|
|
140
|
-
kind: 'feature', discipline: 'engineer', priority: 4,
|
|
141
|
-
est_minutes: 150, manual_degree: 2, credits_reward: 30,
|
|
142
|
-
touches: ['bongos-app/'], criteria: ['C4'], deps: ['R11'],
|
|
143
|
-
},
|
|
144
|
-
{
|
|
145
|
-
key: 'R13',
|
|
146
|
-
title: '/feedback Claude Code slash command',
|
|
147
|
-
description: `Part of Bongos App V1 / C4. Cross-ref: R11. A shipped /feedback slash command that injects the latest prompt.md into a Claude Code session (cat ~/CloudBongos/feedback/latest/prompt.md) so the inlined absolute image paths let Claude's Read tool load the frames — sidestepping the unreliable CLI clipboard-image paste.
|
|
148
|
-
|
|
149
|
-
**Done when:** running /feedback in a Claude Code session pulls in the latest bundle (text + image paths Claude can Read), with no manual file wrangling.`,
|
|
150
|
-
kind: 'feature', discipline: 'engineer', priority: 4,
|
|
151
|
-
est_minutes: 120, manual_degree: 2, credits_reward: 25,
|
|
152
|
-
touches: ['.claude/skills/', 'scripts/gds/'], criteria: ['C4'], deps: ['R11'],
|
|
153
|
-
},
|
|
154
|
-
{
|
|
155
|
-
key: 'R14',
|
|
156
|
-
title: 'Local stdio MCP server — get_latest_feedback (optional "direct" path)',
|
|
157
|
-
description: `Part of Bongos App V1 / C4. Cross-ref: R11. A local stdio MCP server (bundled with the app) exposing get_latest_feedback so both Claude Desktop and Claude Code can PULL the latest bundle hands-free. CRITICAL: return image FILE PATHS, not inline base64 (inline blows the MCP tool-result size cap). Optional/stretch for V1 — the file-bundle + /feedback paths already complete the loop.
|
|
158
|
-
|
|
159
|
-
**Done when:** a connected Claude session can call get_latest_feedback and receive the prompt text + image file paths; documented as the optional "direct" handoff.`,
|
|
160
|
-
kind: 'feature', discipline: 'engineer', priority: 2,
|
|
161
|
-
est_minutes: 180, manual_degree: 2, credits_reward: 35,
|
|
162
|
-
touches: ['bongos-app/', 'scripts/'], criteria: ['C4'], deps: ['R11'],
|
|
163
|
-
},
|
|
164
|
-
{
|
|
165
|
-
key: 'R15',
|
|
166
|
-
title: 'Code-signing + notarization config (electron-builder)',
|
|
167
|
-
description: `Part of Bongos App V1 / C1. Cross-ref: R01, R03. Wire electron-builder to sign + notarize the macOS build (reusing the existing Apple Developer ID) and sign the Windows build (per the R01 decision), including the hardened-runtime entitlements and the Info.plist usage keys (NSMicrophoneUsageDescription, screen capture) a mic+screen app needs.
|
|
168
|
-
|
|
169
|
-
**Done when:** CI produces a signed + notarized macOS build and a signed Windows build that launch without Gatekeeper/SmartScreen blocks and whose TCC grants persist across relaunches.`,
|
|
170
|
-
kind: 'infra', discipline: 'engineer', priority: 3,
|
|
171
|
-
est_minutes: 180, manual_degree: 3, credits_reward: 35,
|
|
172
|
-
touches: ['bongos-app/', '.github/'], criteria: ['C1'], deps: ['R01', 'R03'],
|
|
173
|
-
},
|
|
174
|
-
{
|
|
175
|
-
key: 'R16',
|
|
176
|
-
title: 'Branded download + auto-update wiring',
|
|
177
|
-
description: `Part of Bongos App V1 / C1. Cross-ref: R15. Reuse the Dev Box app's distribution pattern: per-platform binaries published to the public releases repo, the branded server-side /downloads/* 302-redirect, and the in-app semver updater — now serving the unified bongos app.
|
|
178
|
-
|
|
179
|
-
**Done when:** users install the bongos app from the branded /downloads link on Mac + Windows and receive in-app auto-updates; the Dev Box app's old download path redirects/upgrades to the unified app.`,
|
|
180
|
-
kind: 'infra', discipline: 'engineer', priority: 3,
|
|
181
|
-
est_minutes: 150, manual_degree: 2, credits_reward: 30,
|
|
182
|
-
touches: ['bongos-app/', '.github/'], criteria: ['C1'], deps: ['R15'],
|
|
183
|
-
},
|
|
184
|
-
{
|
|
185
|
-
key: 'R17',
|
|
186
|
-
title: 'ADR + README — architecture + model-agnostic handoff contract',
|
|
187
|
-
description: `Part of Bongos App V1 / C4. Cross-ref: R11. Write the ADR recording the bongos app architecture (umbrella app absorbing Dev Box, the capture->synthesize->handoff pipeline, the Rung-3 capture floor with element-select deferred to V2) and a README documenting the bundle format + the model-agnostic prompt/handoff contract so any agent can consume it.
|
|
188
|
-
|
|
189
|
-
**Done when:** an ADR under docs/adr/ records the architecture + the bongos-as-GDS-successor intent, and a bongos-app/README.md documents the prompt.md/bundle contract + the three handoff paths.`,
|
|
190
|
-
kind: 'infra', discipline: 'engineer', priority: 3,
|
|
191
|
-
est_minutes: 120, manual_degree: 2, credits_reward: 25,
|
|
192
|
-
touches: ['docs/adr/', 'bongos-app/'], criteria: ['C4'], deps: ['R11'],
|
|
193
|
-
},
|
|
194
|
-
];
|
|
195
|
-
|
|
196
|
-
async function main() {
|
|
197
|
-
await requireSession();
|
|
198
|
-
const api = await cliClient();
|
|
199
|
-
|
|
200
|
-
// Pull the current BONGOS-V1 task list once: idempotency (skip existing
|
|
201
|
-
// source_ref) and the next free decorative R## (fresh version -> starts at R1).
|
|
202
|
-
const list = await api.tasks.getTasks({ query: { version: 'BONGOS-V1' } });
|
|
203
|
-
const existing = list.data?.tasks || [];
|
|
204
|
-
const bySourceRef = {};
|
|
205
|
-
let maxR = 0;
|
|
206
|
-
for (const t of existing) {
|
|
207
|
-
if (t.source_ref) bySourceRef[t.source_ref] = t;
|
|
208
|
-
const m = /BV1\.R(\d+)\b/.exec(t.title || '');
|
|
209
|
-
if (m) { const n = Number(m[1]); if (n > maxR) maxR = n; }
|
|
210
|
-
}
|
|
211
|
-
console.log(`context: ${existing.length} BONGOS-V1 tasks, maxR=R${maxR}`);
|
|
212
|
-
|
|
213
|
-
// Assign display R## numbers sequentially after the current max.
|
|
214
|
-
const refByKey = {};
|
|
215
|
-
TASKS.forEach((def, i) => { refByKey[def.key] = `R${String(maxR + 1 + i).padStart(2, '0')}`; });
|
|
216
|
-
|
|
217
|
-
const idByKey = {};
|
|
218
|
-
let created = 0, skipped = 0, errors = 0;
|
|
219
|
-
|
|
220
|
-
for (const def of TASKS) {
|
|
221
|
-
const r = refByKey[def.key];
|
|
222
|
-
const source_ref = `bongos-v1-${def.key.toLowerCase()}`;
|
|
223
|
-
if (bySourceRef[source_ref]) {
|
|
224
|
-
idByKey[def.key] = Number(bySourceRef[source_ref].id);
|
|
225
|
-
console.log(`SKIP ${def.key} (${r}) already exists: id=${bySourceRef[source_ref].id}`);
|
|
226
|
-
skipped++;
|
|
227
|
-
continue;
|
|
228
|
-
}
|
|
229
|
-
const body = {
|
|
230
|
-
version_id: 'BONGOS-V1',
|
|
231
|
-
title: `BV1.${r} — ${def.title}`,
|
|
232
|
-
description: def.description,
|
|
233
|
-
kind: def.kind,
|
|
234
|
-
discipline: def.discipline,
|
|
235
|
-
status: 'backlog',
|
|
236
|
-
priority: def.priority,
|
|
237
|
-
est_minutes: def.est_minutes,
|
|
238
|
-
manual_degree: def.manual_degree,
|
|
239
|
-
credits_reward: def.credits_reward,
|
|
240
|
-
touches: def.touches || [],
|
|
241
|
-
criterion_ids: def.criteria || [],
|
|
242
|
-
source: 'planning-session',
|
|
243
|
-
source_ref,
|
|
244
|
-
};
|
|
245
|
-
if (DRY) {
|
|
246
|
-
const deps = (def.deps || []).map((d) => (refByKey[d] ? `${d}=${refByKey[d]}` : d)).join(',');
|
|
247
|
-
console.log(`DRY ${def.key} -> ${r} P${def.priority} ${def.kind} crit=${(def.criteria || []).join('/')} deps=[${deps}] ${def.title.slice(0, 52)}`);
|
|
248
|
-
continue;
|
|
249
|
-
}
|
|
250
|
-
const res = await api.tasks.postTasks({ body });
|
|
251
|
-
if (res.status !== 201) {
|
|
252
|
-
console.error(`FAIL ${def.key}: status=${res.status} ${JSON.stringify(res.data).slice(0, 220)}`);
|
|
253
|
-
errors++;
|
|
254
|
-
continue;
|
|
255
|
-
}
|
|
256
|
-
idByKey[def.key] = Number(res.data.task.id);
|
|
257
|
-
console.log(`OK ${def.key} -> BV1.${r} task id=${idByKey[def.key]} (crit ${(def.criteria || []).join('/')})`);
|
|
258
|
-
created++;
|
|
259
|
-
}
|
|
260
|
-
|
|
261
|
-
const resolveDep = (ref) => idByKey[ref] ?? null;
|
|
262
|
-
|
|
263
|
-
let depsWired = 0, depErrors = 0;
|
|
264
|
-
if (!DRY) {
|
|
265
|
-
for (const def of TASKS) {
|
|
266
|
-
const deps = def.deps || [];
|
|
267
|
-
if (deps.length === 0) continue;
|
|
268
|
-
const taskId = idByKey[def.key];
|
|
269
|
-
if (!taskId) { console.error(`DEPS ${def.key}: no task id (create failed?), skipping`); depErrors++; continue; }
|
|
270
|
-
const depIds = deps.map(resolveDep).filter((n) => Number.isFinite(n));
|
|
271
|
-
if (depIds.length !== deps.length) {
|
|
272
|
-
const missing = deps.filter((d) => !Number.isFinite(resolveDep(d)));
|
|
273
|
-
console.error(`DEPS ${def.key}: unresolved deps [${missing.join(',')}] — wiring the resolvable ones only`);
|
|
274
|
-
depErrors++;
|
|
275
|
-
if (depIds.length === 0) continue;
|
|
276
|
-
}
|
|
277
|
-
const res = await api.tasks.postTasksIdDependencies({ id: taskId, body: { depends_on_task_ids: depIds } });
|
|
278
|
-
if (res.status === 200) {
|
|
279
|
-
console.log(`DEPS ${def.key} <- [${deps.join(',')}] (ids ${depIds.join(',')})`);
|
|
280
|
-
depsWired++;
|
|
281
|
-
} else {
|
|
282
|
-
console.error(`DEPS FAIL ${def.key}: ${res.status} ${JSON.stringify(res.data).slice(0, 220)}`);
|
|
283
|
-
depErrors++;
|
|
284
|
-
}
|
|
285
|
-
}
|
|
286
|
-
}
|
|
287
|
-
|
|
288
|
-
const zeroDep = TASKS.filter((d) => (d.deps || []).length === 0).map((d) => `${d.key}=${idByKey[d.key] || '?'}`);
|
|
289
|
-
console.log(`\nDONE created=${created} skipped=${skipped} errors=${errors} deps_wired=${depsWired} dep_errors=${depErrors} (manifest: ${TASKS.length})`);
|
|
290
|
-
console.log(`NEXT promote zero-dependency tasks to 'ready' (they never auto-promote): ${zeroDep.join(', ')}`);
|
|
291
|
-
process.exit(errors === 0 && depErrors === 0 ? 0 : 1);
|
|
292
|
-
}
|
|
293
|
-
|
|
294
|
-
main().catch((err) => { console.error('FATAL', err); process.exit(1); });
|
|
@@ -1,81 +0,0 @@
|
|
|
1
|
-
#!/usr/bin/env node
|
|
2
|
-
// seed-bongos-coreB-tranche1-tasks.js
|
|
3
|
-
// Seeds BONGOS-V1 criterion C7 (gds-core-modularized) — the "Config B" core
|
|
4
|
-
// decomposition wave, tranche 1: kernel boundary + db.js per-domain carve +
|
|
5
|
-
// proving carve (memory, grading). Planning session 2026-06-26 (task 1567).
|
|
6
|
-
// Idempotent on source_ref; criterion links + dependency edges idempotent too.
|
|
7
|
-
// Run: node scripts/gds/seed-bongos-coreB-tranche1-tasks.js
|
|
8
|
-
const os = require('os');
|
|
9
|
-
const TOKEN = require(os.homedir() + '/.config/otb/gds-session.json').token;
|
|
10
|
-
const BASE = require('../../src/instance-config').resolveEnv('BASE') || 'https://example.com';
|
|
11
|
-
const H = { Authorization: `Bearer ${TOKEN}`, 'Content-Type': 'application/json' };
|
|
12
|
-
|
|
13
|
-
// ref → task spec. depends_on_refs are local R## refs resolved after create.
|
|
14
|
-
const TASKS = [
|
|
15
|
-
{ ref: 'R67', kind: 'spike', priority: 5, title: 'BV1.R67 — Define + bound the kernel (ADR amending 0083)',
|
|
16
|
-
description: 'Spike → ADR amending 0083: fix the KERNEL file roster (auth · rank · pool · audit · permission-path-check · route-rank-check · config/identity · loader · seams), decide the db.js per-domain carve strategy, and the fix for the doorway leaking domain queries (getBuilderById/createTask/insertAuditLog re-exported from module-api.js). Output: ADR + a sub-task shape for the carve. GATES the whole C7 tranche. The audit found the "kernel" is currently only the 6 loader-machinery files; this defines the real ~3.5k-LOC trust kernel. deps: none.',
|
|
17
|
-
deps: [] },
|
|
18
|
-
{ ref: 'R68', kind: 'feature', priority: 5, title: 'BV1.R68 — Doorway surface for core domains (withTx + stop leaking db.js)',
|
|
19
|
-
description: 'Add `withTx` (BEGIN/COMMIT wrapper) + any shared primitives a core-domain module needs to module-api.js; minor CORE_VERSION bump. Stop re-exporting domain-specific queries through the doorway (relocate/deprecate getBuilderById, createTask, insertAuditLog, getBuilderGeminiKeyRow — these belong to their domains, not the kernel). deps: R67.',
|
|
20
|
-
deps: ['R67'] },
|
|
21
|
-
{ ref: 'R69', kind: 'refactor', priority: 5, title: 'BV1.R69 — Per-domain db.js access pattern + carve the reference slice',
|
|
22
|
-
description: 'Establish HOW a carved core domain owns its SQL (module gets pool+withTx via the doorway and owns its queries; db.js shrinks per-domain). Prove the pattern on one reference slice. This is the mechanism every later carve copies. deps: R67, R68.',
|
|
23
|
-
deps: ['R67', 'R68'] },
|
|
24
|
-
{ ref: 'R70', kind: 'infra', priority: 4, title: 'BV1.R70 — Fitness: real KERNEL_FILES roster + kernel-imports-no-domain',
|
|
25
|
-
description: 'Replace fitness.js KERNEL_FILES (currently just the 6 loader-machinery files) with the true kernel roster from R67; add a check that the kernel imports no soon-to-be-module domain. Ratchets the boundary so core-carve regressions are a red build. deps: R67.',
|
|
26
|
-
deps: ['R67'] },
|
|
27
|
-
{ ref: 'R71', kind: 'infra', priority: 4, title: 'BV1.R71 — Register new core module keys in module-scope-map.js',
|
|
28
|
-
description: 'Add the new core module keys (memory, grading, and the tranche-2 domains as they are scoped) to src/bongos/module-scope-map.js so goals (scope walls), task→module affinity, and ship-time diff⊆module drift detection work for them. Then widen goal 10 (GDS core modularization) scope to include them via POST /goals/10/scope. deps: R67.',
|
|
29
|
-
deps: ['R67'] },
|
|
30
|
-
{ ref: 'R72', kind: 'refactor', priority: 4, title: 'BV1.R72 — Carve memory → modules/memory/',
|
|
31
|
-
description: 'Move memory/recall/search/learnings (~2.2k LOC: memory.js, search.js, search-chunker.js, learnings.js + routes) into modules/memory/ with its tables + db.js slice (per the R69 pattern). Cleanest db.js-split proof — the design scan shows memory slices cleanly. OTB byte-identical. deps: R69, R71.',
|
|
32
|
-
deps: ['R69', 'R71'] },
|
|
33
|
-
{ ref: 'R73', kind: 'refactor', priority: 4, title: 'BV1.R73 — Carve grading → modules/grading/, lifecycle resolves grade via a kernel PORT',
|
|
34
|
-
description: 'Move the grader + worker panel (~3.1k LOC) into modules/grading/. The lifecycle (tasks.js ship path) stops importing the grader directly and instead resolves a `grade` capability via a kernel PORT (registerProvider/resolve). Proves the design\'s "keep the state machine whole, extract the capability behind a seam" pattern AND closes the audit\'s unimplemented-port gap (reward/grade were illustrative-only). deps: R68, R69, R71.',
|
|
35
|
-
deps: ['R68', 'R69', 'R71'] },
|
|
36
|
-
{ ref: 'R74', kind: 'verify', priority: 3, title: 'BV1.R74 — Proof: the core-carve pattern holds (memory + grading as modules)',
|
|
37
|
-
description: 'Prove C7\'s tranche-1: memory + grading live as modules/, db.js shrank by their slices, the kernel is bounded + fitness green (R70), a capability resolves via a kernel port (R73), and OTB behaves byte-identically. The single live demonstration the criterion hinges on for tranche 1. deps: R72, R73.',
|
|
38
|
-
deps: ['R72', 'R73'] },
|
|
39
|
-
];
|
|
40
|
-
|
|
41
|
-
async function post(path, body) {
|
|
42
|
-
const r = await fetch(BASE + path, { method: 'POST', headers: H, body: JSON.stringify(body) });
|
|
43
|
-
return { status: r.status, json: await r.json().catch(() => ({})) };
|
|
44
|
-
}
|
|
45
|
-
|
|
46
|
-
(async () => {
|
|
47
|
-
const idByRef = {};
|
|
48
|
-
// Phase 1: create tasks (idempotent on source_ref), link C7 at create.
|
|
49
|
-
for (const t of TASKS) {
|
|
50
|
-
const body = {
|
|
51
|
-
version_id: 'BONGOS-V1', title: t.title, description: t.description,
|
|
52
|
-
kind: t.kind, discipline: 'engineer', priority: t.priority,
|
|
53
|
-
criterion_ids: ['C7'],
|
|
54
|
-
source: 'planning', source_ref: `BONGOS-V1-coreB-${t.ref}`,
|
|
55
|
-
};
|
|
56
|
-
let { status, json } = await post('/api/bongos/tasks', body);
|
|
57
|
-
let id = json.id || (json.task && json.task.id);
|
|
58
|
-
if (!id && t.kind === 'verify') {
|
|
59
|
-
// memory: kind=verify has 500'd before (idea #357). Fall back, keep going.
|
|
60
|
-
console.log(` ${t.ref}: kind=verify failed (${json.error || status}); retrying as kind=feature`);
|
|
61
|
-
({ status, json } = await post('/api/bongos/tasks', { ...body, kind: 'feature' }));
|
|
62
|
-
id = json.id || (json.task && json.task.id);
|
|
63
|
-
}
|
|
64
|
-
if (!id) { console.log(` ${t.ref}: CREATE FAILED — ${status} ${JSON.stringify(json).slice(0, 160)}`); continue; }
|
|
65
|
-
idByRef[t.ref] = id;
|
|
66
|
-
console.log(` ${t.ref} -> task ${id} (${t.kind}, P${t.priority})`);
|
|
67
|
-
}
|
|
68
|
-
// Phase 2: wire dependencies (idempotent on (task_id, depends_on_task_id)).
|
|
69
|
-
console.log('--- dependencies ---');
|
|
70
|
-
for (const t of TASKS) {
|
|
71
|
-
const id = idByRef[t.ref];
|
|
72
|
-
if (!id || !t.deps.length) continue;
|
|
73
|
-
for (const dep of t.deps) {
|
|
74
|
-
const depId = idByRef[dep];
|
|
75
|
-
if (!depId) { console.log(` ${t.ref}: dep ${dep} not created — skip`); continue; }
|
|
76
|
-
const { status, json } = await post(`/api/bongos/tasks/${id}/dependencies`, { depends_on_task_id: depId });
|
|
77
|
-
console.log(` ${t.ref}(${id}) depends on ${dep}(${depId}) -> ${status === 200 || status === 201 ? 'ok' : (json.error || status)}`);
|
|
78
|
-
}
|
|
79
|
-
}
|
|
80
|
-
console.log('refs:', JSON.stringify(idByRef));
|
|
81
|
-
})();
|
|
@@ -1,100 +0,0 @@
|
|
|
1
|
-
#!/usr/bin/env node
|
|
2
|
-
// seed-bongos-coreB-tranche2-tasks.js
|
|
3
|
-
// Seeds BONGOS-V1 criterion C7 (gds-core-modularized) — "Config B" core
|
|
4
|
-
// decomposition, tranche 2: the remaining core domains carved one-by-one on the
|
|
5
|
-
// infrastructure tranche 1 shipped (bounded kernel + doorway/withTx + per-domain
|
|
6
|
-
// db.js slice + fitness ratchet + coreB-carve-proof.sh). Owner greenlit
|
|
7
|
-
// 2026-06-27; sequence fixed in ADR 0093. Idempotent on source_ref; criterion
|
|
8
|
-
// links + dependency edges idempotent too.
|
|
9
|
-
// Run: node scripts/gds/seed-bongos-coreB-tranche2-tasks.js
|
|
10
|
-
const os = require('os');
|
|
11
|
-
const TOKEN = require(os.homedir() + '/.config/otb/gds-session.json').token;
|
|
12
|
-
const BASE = require('../../src/instance-config').resolveEnv('BASE') || 'https://example.com';
|
|
13
|
-
const H = { Authorization: `Bearer ${TOKEN}`, 'Content-Type': 'application/json' };
|
|
14
|
-
|
|
15
|
-
// ref → task spec. deps are local R## refs resolved after create. Clean-slicing
|
|
16
|
-
// order per ADR 0093 §1 (import-graph evidence, 02-module-map §2): economy first
|
|
17
|
-
// (it registers the `reward` port the lifecycle needs), lifecycle LAST.
|
|
18
|
-
const TASKS = [
|
|
19
|
-
{ ref: 'R76', kind: 'spike', priority: 5, title: 'BV1.R76 — Tranche-2 plan: ADR 0093 (core-carve sequence) + seed R77-R87',
|
|
20
|
-
description: 'Owner greenlit C7 tranche-2 on 2026-06-27 (deferred in ADR 0091). ADR 0093 (amends 0091) fixes the carve order, the reward economy kernel-port, and the lifecycle-as-module endgame; this seeds the carves. deps: none (R74 confirmed).',
|
|
21
|
-
deps: [] },
|
|
22
|
-
{ ref: 'R77', kind: 'refactor', priority: 4, title: 'BV1.R77 — Carve economy → modules/economy/ + register the `reward` kernel PORT',
|
|
23
|
-
description: 'Move credits·cost·streak·achievements·leaderboard (~1.0k LOC) into modules/economy/ with its db.js slice (R69 pattern). Register a `reward` capability via the kernel seam (registerProvider/resolve) — the twin of `grade` (R73); the lifecycle resolves seams.resolveOptional(\'reward\') at ship instead of importing economy. economy is FIRST so the reward port exists before the lifecycle carve (R86). OTB byte-identical (coreB-carve-proof.sh). deps: R76.',
|
|
24
|
-
deps: ['R76'] },
|
|
25
|
-
{ ref: 'R78', kind: 'refactor', priority: 4, title: 'BV1.R78 — Carve ideas → modules/ideas/',
|
|
26
|
-
description: 'Move inbox·capture·triage·blockers (~0.9k LOC) into modules/ideas/ with its db.js slice. Retire the ADR-0091 §3 doorway leak `captureIdea` behind an `ideas.*` seam (its sole consumer, discord-bugs, resolves the port). OTB byte-identical. deps: R76.',
|
|
27
|
-
deps: ['R76'] },
|
|
28
|
-
{ ref: 'R79', kind: 'refactor', priority: 4, title: 'BV1.R79 — Carve security → modules/security/',
|
|
29
|
-
description: 'Move security-the-FEATURE (red-team reports · bounty, rank-gated Metic+) into modules/security/ with its db.js slice. Note: security-the-PROPERTY (permission-path-check/route-rank-check) stays KERNEL (02-module-map §5) — this carves only the optional feature. OTB byte-identical. deps: R76.',
|
|
30
|
-
deps: ['R76'] },
|
|
31
|
-
{ ref: 'R80', kind: 'refactor', priority: 4, title: 'BV1.R80 — Carve builder-settings → modules/builder-settings/',
|
|
32
|
-
description: 'Move prefs (wandering·skill·sound·render) + builder-needs (~1.6k LOC) into modules/builder-settings/ with its db.js slice. The `me`/`public` read-aggregators stay as thin facades that resolve the module (02-module-map §2). OTB byte-identical. deps: R76.',
|
|
33
|
-
deps: ['R76'] },
|
|
34
|
-
{ ref: 'R81', kind: 'refactor', priority: 4, title: 'BV1.R81 — Carve onboarding → modules/onboarding/',
|
|
35
|
-
description: 'Move admission·setup·newcomer-floor (~1.9k LOC: onboarding-state.js, newcomer-restock.js, onboarding.js + routes) into modules/onboarding/ with its db.js slice. OTB byte-identical. deps: R76.',
|
|
36
|
-
deps: ['R76'] },
|
|
37
|
-
{ ref: 'R82', kind: 'refactor', priority: 3, title: 'BV1.R82 — Carve sessions/BFG → modules/sessions/',
|
|
38
|
-
description: 'Move session records · cost/eval/digest · transcript corpus · BFG (~2k LOC) into modules/sessions/ with its db.js slice. OTB byte-identical. deps: R76.',
|
|
39
|
-
deps: ['R76'] },
|
|
40
|
-
{ ref: 'R83', kind: 'refactor', priority: 3, title: 'BV1.R83 — Carve autonomy/MAS → modules/autonomy/',
|
|
41
|
-
description: 'Move conductor-dispatch · architect-audit · autonomy-gate · scheduled-routine wiring (~1.5k LOC) into modules/autonomy/ with its db.js slice. Cross-cutting — wire its seams carefully (it observes lifecycle events). OTB byte-identical. deps: R76.',
|
|
42
|
-
deps: ['R76'] },
|
|
43
|
-
{ ref: 'R84', kind: 'refactor', priority: 3, title: 'BV1.R84 — Carve status-UI → modules/status-ui/',
|
|
44
|
-
description: 'Move the public-status web surface (~3k LOC) into modules/status-ui/ as a module (a web surface is first-class, 02-module-map §6). Big but mechanical — mostly static assets + the public read endpoints it renders. OTB byte-identical. deps: R76.',
|
|
45
|
-
deps: ['R76'] },
|
|
46
|
-
{ ref: 'R85', kind: 'refactor', priority: 3, title: 'BV1.R85 — Carve hall-UI → modules/hall-ui/',
|
|
47
|
-
description: 'Move the public-builders hall web surface (~13k LOC — the largest module) into modules/hall-ui/. Mechanical (assets + the me/public/leaderboard reads it renders) but large; verify byte-identical carefully. OTB byte-identical. deps: R76.',
|
|
48
|
-
deps: ['R76'] },
|
|
49
|
-
{ ref: 'R86', kind: 'refactor', priority: 3, title: 'BV1.R86 — Carve lifecycle → modules/lifecycle/ (state machine, LAST)',
|
|
50
|
-
description: 'Move the build state machine — tasks·claims·versions·ship orchestration (~9k LOC) — into modules/lifecycle/ as ONE module (never split, 02-module-map §4). By now grade (R73) + reward (R77) are kernel ports, so the lifecycle imports only the kernel + resolves those ports. Retire the ADR-0091 §3 leaks `createTask`/`VOTABLE_TASK_STATUSES` behind a `lifecycle.*` seam. The db.js residue after this = the lifecycle slice + db-kernel.js. Most delicate carve — do last. OTB byte-identical. deps: R76, R77.',
|
|
51
|
-
deps: ['R76', 'R77'] },
|
|
52
|
-
{ ref: 'R87', kind: 'verify', priority: 3, title: 'BV1.R87 — Proof: the whole GDS core is decomposed (C7 satisfied)',
|
|
53
|
-
description: 'Extend coreB-carve-proof.sh to assert every tranche-2 module (economy·ideas·security·builder-settings·onboarding·sessions·autonomy·status-ui·hall-ui·lifecycle) lives in modules/, owns its db.js slice, resolves its capabilities via kernel ports (grade+reward), and that db.js shrank to the lifecycle+kernel residue — with fitness green + the full carved-surface suite byte-identical. The single live demonstration C7 hinges on. deps: all tranche-2 carves.',
|
|
54
|
-
deps: ['R77', 'R78', 'R79', 'R80', 'R81', 'R82', 'R83', 'R84', 'R85', 'R86'] },
|
|
55
|
-
];
|
|
56
|
-
|
|
57
|
-
async function post(path, body) {
|
|
58
|
-
const r = await fetch(BASE + path, { method: 'POST', headers: H, body: JSON.stringify(body) });
|
|
59
|
-
return { status: r.status, json: await r.json().catch(() => ({})) };
|
|
60
|
-
}
|
|
61
|
-
|
|
62
|
-
(async () => {
|
|
63
|
-
const idByRef = {};
|
|
64
|
-
// Phase 1: create tasks (idempotent on source_ref), link C7 explicitly.
|
|
65
|
-
for (const t of TASKS) {
|
|
66
|
-
const body = {
|
|
67
|
-
version_id: 'BONGOS-V1', title: t.title, description: t.description,
|
|
68
|
-
kind: t.kind, discipline: 'engineer', priority: t.priority,
|
|
69
|
-
criterion_ids: ['C7'],
|
|
70
|
-
source: 'planning', source_ref: `BONGOS-V1-coreB-${t.ref}`,
|
|
71
|
-
};
|
|
72
|
-
let { status, json } = await post('/api/bongos/tasks', body);
|
|
73
|
-
let id = json.id || (json.task && json.task.id);
|
|
74
|
-
if (!id && t.kind === 'verify') {
|
|
75
|
-
// memory: kind=verify has 500'd before (idea #357). Fall back, keep going.
|
|
76
|
-
console.log(` ${t.ref}: kind=verify failed (${json.error || status}); retrying as kind=feature`);
|
|
77
|
-
({ status, json } = await post('/api/bongos/tasks', { ...body, kind: 'feature' }));
|
|
78
|
-
id = json.id || (json.task && json.task.id);
|
|
79
|
-
}
|
|
80
|
-
if (!id) { console.log(` ${t.ref}: CREATE FAILED — ${status} ${JSON.stringify(json).slice(0, 160)}`); continue; }
|
|
81
|
-
idByRef[t.ref] = id;
|
|
82
|
-
// Link C7 explicitly (criterion_ids at create is not honored on this build;
|
|
83
|
-
// the /criteria endpoint is idempotent — re-adding an existing link is a no-op).
|
|
84
|
-
const link = await post(`/api/bongos/tasks/${id}/criteria`, { criterion_ids: ['C7'] });
|
|
85
|
-
console.log(` ${t.ref} -> task ${id} (${t.kind}, P${t.priority}) · C7 link ${link.status === 200 ? 'ok' : (link.json.error || link.status)}`);
|
|
86
|
-
}
|
|
87
|
-
// Phase 2: wire dependencies (idempotent on (task_id, depends_on_task_id)).
|
|
88
|
-
console.log('--- dependencies ---');
|
|
89
|
-
for (const t of TASKS) {
|
|
90
|
-
const id = idByRef[t.ref];
|
|
91
|
-
if (!id || !t.deps.length) continue;
|
|
92
|
-
for (const dep of t.deps) {
|
|
93
|
-
const depId = idByRef[dep];
|
|
94
|
-
if (!depId) { console.log(` ${t.ref}: dep ${dep} not created — skip`); continue; }
|
|
95
|
-
const { status, json } = await post(`/api/bongos/tasks/${id}/dependencies`, { depends_on_task_id: depId });
|
|
96
|
-
console.log(` ${t.ref}(${id}) depends on ${dep}(${depId}) -> ${status === 200 || status === 201 ? 'ok' : (json.error || status)}`);
|
|
97
|
-
}
|
|
98
|
-
}
|
|
99
|
-
console.log('refs:', JSON.stringify(idByRef));
|
|
100
|
-
})();
|