@bongos/core 1.21.113 → 1.21.115
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 +608 -188
- package/.claude/skills/ask-for-help/SKILL.md +1 -1
- package/.claude/skills/bongos-feedback/SKILL.md +1 -1
- package/.claude/skills/builder-sequence/SKILL.md +1 -1
- package/.claude/skills/builder-ship/SKILL.md +1 -0
- package/GOVERNMENT.md +128 -11
- package/clients/bongos-client/README.md +1 -1
- package/clients/bongos-client/bongos-client.global.js +28 -0
- package/clients/bongos-client/index.cjs +28 -0
- package/clients/bongos-client/index.d.ts +45 -2
- package/clients/bongos-client/index.mjs +28 -0
- package/docs/adr/0372-an-ask-is-stored-per-docket-matter-and-the-server-refuses-slop.md +33 -0
- package/docs/adr/0373-an-ai-session-files-a-blocker-with-an-ask.md +31 -0
- package/docs/adr/0374-a-building-lead-is-a-held-position-appointed-by-a-people-matter.md +30 -0
- package/docs/adr/0375-who-may-build-without-a-vote-comes-from-the-form-of-government.md +38 -0
- package/docs/adr/0376-every-ask-is-routed-to-a-real-seat-on-the-server.md +30 -0
- package/docs/adr/0377-governance-is-a-held-position-read-on-me.md +24 -0
- package/docs/adr/0378-a-leads-build-outs-are-rows-built-at-once-or-by-a-passed-vote.md +33 -0
- package/docs/adr/0379-the-treasury-is-pots-per-goal-a-reserve-and-borrowing-over-real-spend.md +32 -0
- package/docs/adr/0380-a-strictness-preset-is-a-bundle-of-laws-switched-by-one-laws-vote.md +26 -0
- package/docs/adr/README.md +10 -1
- package/docs/api/openapi.json +989 -87
- package/docs/api-reference.md +18 -4
- package/docs/copy-inventory.md +709 -626
- package/docs/copy-registry.json +1673 -858
- package/docs/file-map.md +2 -1
- package/docs/module-api-changelog.md +4 -0
- package/docs/packs/engineer.md +2 -1
- package/docs/page-inventory.json +91 -6
- package/docs/page-readings.json +4875 -4748
- package/modules/builder-settings/law-locks.js +202 -0
- package/modules/builder-settings/routes/settings.js +66 -6
- package/modules/builder-settings/settings.js +7 -0
- package/modules/discord/ship-broadcast.js +22 -13
- package/modules/government/asks-db.js +54 -0
- package/modules/government/asks.js +269 -0
- package/modules/government/board-idea-reads.js +68 -0
- package/modules/government/board.js +21 -57
- package/modules/government/build-rights.js +148 -0
- package/modules/government/buildouts.js +160 -0
- package/modules/government/counts.js +81 -0
- package/modules/government/db.js +242 -0
- package/modules/government/decision-board.js +234 -8
- package/modules/government/decision-rules.js +2 -0
- package/modules/government/docket.js +114 -6
- package/modules/government/law-board.js +131 -0
- package/modules/government/laws.js +241 -0
- package/modules/government/leads.js +170 -0
- package/modules/government/migrations/government_027_laws.sql +143 -0
- package/modules/government/migrations/government_028_asks.sql +57 -0
- package/modules/government/migrations/government_029_leads.sql +135 -0
- package/modules/government/migrations/government_030_buildouts.sql +111 -0
- package/modules/government/migrations/government_031_treasury.sql +107 -0
- package/modules/government/module.json +2 -1
- package/modules/government/pollers/treasury-borrow.js +62 -0
- package/modules/government/positions.js +107 -0
- package/modules/government/presets.js +149 -0
- package/modules/government/routes/government.js +425 -2
- package/modules/government/routing.js +154 -0
- package/modules/government/treasury-db.js +166 -0
- package/modules/government/treasury.js +241 -0
- package/modules/hall-ui/public/atlas.html +2 -2
- package/modules/hall-ui/public/blockers.html +2 -2
- package/modules/hall-ui/public/board-room.html +2 -2
- package/modules/hall-ui/public/board-room.js +2 -0
- package/modules/hall-ui/public/city-draw.js +604 -11
- package/modules/hall-ui/public/city.css +157 -1
- package/modules/hall-ui/public/city.html +37 -7
- package/modules/hall-ui/public/city.js +441 -21
- package/modules/hall-ui/public/city.states.json +110 -5
- package/modules/hall-ui/public/collab.html +2 -2
- package/modules/hall-ui/public/commands.html +2 -2
- package/modules/hall-ui/public/copy-desk.html +2 -2
- package/modules/hall-ui/public/craft-mode.js +112 -29
- package/modules/hall-ui/public/deploy.html +2 -2
- package/modules/hall-ui/public/diagram-viewer.css +12 -0
- package/modules/hall-ui/public/diagram-viewer.js +4 -0
- package/modules/hall-ui/public/diagrams.html +2 -2
- package/modules/hall-ui/public/drachmae.html +2 -2
- package/modules/hall-ui/public/fleet.html +2 -2
- package/modules/hall-ui/public/gate.html +2 -2
- package/modules/hall-ui/public/goal-map.html +2 -2
- package/modules/hall-ui/public/goals.html +2 -2
- package/modules/hall-ui/public/gov-feeds.js +141 -0
- package/modules/hall-ui/public/gov-living.js +1002 -0
- package/modules/hall-ui/public/gov-positions.js +97 -0
- package/modules/hall-ui/public/government.html +2 -2
- package/modules/hall-ui/public/hall-render.js +3 -0
- package/modules/hall-ui/public/idea.html +2 -2
- package/modules/hall-ui/public/ideas.html +2 -2
- package/modules/hall-ui/public/index.html +3 -3
- package/modules/hall-ui/public/modules.html +2 -2
- package/modules/hall-ui/public/my-agents.css +334 -0
- package/modules/hall-ui/public/my-agents.html +72 -0
- package/modules/hall-ui/public/my-agents.js +603 -0
- package/modules/hall-ui/public/my-agents.states.json +37 -0
- package/modules/hall-ui/public/primer.html +2 -2
- package/modules/hall-ui/public/profile-connections.js +40 -28
- package/modules/hall-ui/public/profile.html +2 -2
- package/modules/hall-ui/public/project-settings.html +2 -2
- package/modules/hall-ui/public/ranks.html +2 -2
- package/modules/hall-ui/public/roadmap.html +2 -2
- package/modules/hall-ui/public/room.css +8 -0
- package/modules/hall-ui/public/roster.html +2 -2
- package/modules/hall-ui/public/sessions.html +2 -2
- package/modules/hall-ui/public/settings.html +2 -2
- package/modules/hall-ui/public/shell.js +116 -16
- package/modules/hall-ui/public/street-card.js +18 -1
- package/modules/hall-ui/public/street-deck.css +299 -0
- package/modules/hall-ui/public/street-deck.js +1145 -0
- package/modules/hall-ui/public/street-depth.js +712 -0
- package/modules/hall-ui/public/street-desk.js +5 -2
- package/modules/hall-ui/public/street-draw.js +109 -16
- package/modules/hall-ui/public/street-inside.js +137 -22
- package/modules/hall-ui/public/street-office.js +705 -0
- package/modules/hall-ui/public/street.css +161 -11
- package/modules/hall-ui/public/street.html +41 -11
- package/modules/hall-ui/public/street.js +78 -66
- package/modules/hall-ui/public/street.states.json +129 -21
- package/modules/hall-ui/public/studio.html +2 -2
- package/modules/hall-ui/public/style.css +5 -1
- package/modules/hall-ui/public/task.html +2 -2
- package/modules/hall-ui/public/thinking.html +2 -2
- package/modules/hall-ui/public/tweak-editor.html +2 -2
- package/modules/hall-ui/public/watch.html +2 -2
- package/modules/hall-ui/public/watch.js +14 -1
- package/modules/hall-ui/public/work.html +2 -2
- package/modules/hall-ui/records/living-city.md +57 -0
- package/modules/hall-ui/records/my-agents.md +21 -0
- package/modules/hall-ui/records/oversight-family.md +1 -0
- package/modules/hall-ui/records/profile-connections.md +10 -0
- package/modules/hall-ui/records/reading-rooms.md +2 -0
- package/modules/ideas/routes/blockers.js +92 -3
- package/modules/lifecycle/module.json +2 -1
- package/modules/lifecycle/moving.js +17 -1
- package/modules/lifecycle/routes/moving.js +6 -0
- package/modules/lifecycle/routes/project-settings.js +23 -0
- package/modules/onboarding/approval-broadcast.js +8 -0
- package/modules/onboarding/routes/access-requests.js +16 -6
- package/modules/platform-identity/connections.js +13 -2
- package/modules/platform-identity/routes/connections.js +7 -1
- package/modules/public-landing/public/account-private.states.json +2 -2
- package/modules/public-landing/public/account.html +65 -5
- package/modules/public-landing/public/account.states.json +3 -3
- package/modules/public-landing/public/assets/world/r2-bongos-chrome-b.jpg.json +1 -1
- package/modules/public-landing/public/assets/world/r2-bongos-chrome-b.webp +0 -0
- package/modules/public-landing/public/assets/world/r2-bongos-chrome-b.webp.json +13 -0
- package/modules/public-landing/public/assets/world/r2-chrome-blob-one.jpg.json +1 -1
- package/modules/public-landing/public/assets/world/r2-chrome-blob-one.webp +0 -0
- package/modules/public-landing/public/assets/world/r2-chrome-blob-one.webp.json +13 -0
- package/modules/public-landing/public/assets/world/r2-chrome-blobs-set.jpg.json +1 -1
- package/modules/public-landing/public/assets/world/r2-chrome-blobs-set.webp +0 -0
- package/modules/public-landing/public/assets/world/r2-chrome-blobs-set.webp.json +13 -0
- package/modules/public-landing/public/assets/world.css +4 -4
- package/modules/public-landing/public/connections-empty.states.json +14 -0
- package/modules/public-landing/public/connections-inactive.states.json +14 -0
- package/modules/public-landing/public/connections.html +450 -0
- package/modules/public-landing/public/connections.probes.json +414 -0
- package/modules/public-landing/public/connections.states.json +17 -0
- package/modules/public-landing/public/contact.html +2 -2
- package/modules/public-landing/public/guild.html +2 -2
- package/modules/public-landing/public/index.html +2 -2
- package/modules/public-landing/public/invitations.html +2 -2
- package/modules/public-landing/public/privacy.html +2 -2
- package/modules/public-landing/public/projects-hall-live.states.json +0 -5
- package/modules/public-landing/public/projects.html +169 -6
- package/modules/public-landing/public/projects.probes.json +10 -6
- package/modules/public-landing/public/projects.states.json +13 -13
- package/modules/public-landing/public/terms.html +2 -2
- package/modules/ui-design/kit/fixtures/connections-empty.json +12 -0
- package/modules/ui-design/kit/fixtures/connections-inactive.json +7 -0
- package/modules/ui-design/kit/fixtures/connections.json +22 -0
- package/modules/ui-design/kit/serve.js +95 -0
- package/package-lock.json +2 -2
- package/package.json +1 -1
- package/release-notes.json +128 -0
- package/scripts/discord/README.md +8 -5
- package/scripts/discord/post.js +12 -1
- package/scripts/gds/artifact-audit.js +20 -3
- package/scripts/gds/ask.js +164 -0
- package/scripts/gds/autobongos-verify.js +21 -2
- package/scripts/gds/government-walk.js +638 -4
- package/scripts/gds/pulse.js +9 -6
- package/scripts/gds/ship-escalation.js +22 -3
- package/scripts/gds/ship-finish.js +5 -4
- package/scripts/gds/ship-merge-gate.js +18 -6
- package/scripts/hall-preview/README.md +41 -1
- package/scripts/hall-preview/pref-writes.js +140 -0
- package/scripts/hall-preview/refresh-fixtures.js +101 -7
- package/scripts/hall-preview/scrub-identity.js +366 -7
- package/scripts/hall-preview/server.js +27 -1
- package/scripts/render-diagrams.sh +4 -2
- package/src/bongos/auth-idp.js +6 -1
- package/src/bongos/project-settings.js +41 -0
- package/src/bongos/route-rank-check.js +27 -0
- package/src/bongos/routes/me.js +68 -7
- package/src/bongos/serve-internal.js +5 -1
- package/src/module-api.js +7 -1
- package/src/platform-server.js +10 -0
- package/tests/application_lifecycle.mjs +47 -5
- package/tests/conductor_main_e2e.mjs +21 -0
- package/tests/connections_api.mjs +18 -0
- package/tests/craft_mode_nav.mjs +5 -3
- package/tests/craft_mode_tallies.mjs +52 -16
- package/tests/discord_approvals.mjs +11 -0
- package/tests/discord_channels.mjs +20 -0
- package/tests/fixtures/gov-seated.mjs +64 -0
- package/tests/fixtures/government-ask-cards.json +1284 -0
- package/tests/government_act_alone_buildings.mjs +1 -0
- package/tests/government_agent_asks.mjs +322 -0
- package/tests/government_asks.mjs +408 -0
- package/tests/government_build_rights.mjs +253 -0
- package/tests/government_buildouts.mjs +382 -0
- package/tests/government_counts.mjs +143 -0
- package/tests/government_decision_rules.mjs +5 -1
- package/tests/government_laws.mjs +488 -0
- package/tests/government_laws_session.mjs +321 -0
- package/tests/government_leads.mjs +375 -0
- package/tests/government_positions.mjs +127 -0
- package/tests/government_presets.mjs +215 -0
- package/tests/government_routes.mjs +8 -1
- package/tests/government_routing.mjs +118 -0
- package/tests/government_seed.mjs +5 -0
- package/tests/government_treasury.mjs +394 -0
- package/tests/governor_docket.mjs +26 -2
- package/tests/hall_buildouts.mjs +208 -0
- package/tests/hall_city.mjs +14 -6
- package/tests/hall_city_living.mjs +617 -0
- package/tests/hall_gov_counts.mjs +336 -0
- package/tests/hall_gov_living.mjs +636 -0
- package/tests/hall_gov_real_site.mjs +655 -0
- package/tests/hall_matter_card.mjs +6 -1
- package/tests/hall_my_agents.mjs +481 -0
- package/tests/hall_nav.mjs +107 -4
- package/tests/hall_page_gate_map.mjs +4 -0
- package/tests/hall_preview_governor_fixtures.mjs +30 -3
- package/tests/hall_preview_scrub.mjs +59 -1
- package/tests/hall_preview_security.mjs +169 -0
- package/tests/hall_reading_world.mjs +44 -0
- package/tests/hall_roster_world.mjs +6 -2
- package/tests/hall_street.mjs +18 -2
- package/tests/hall_street_amend.mjs +1 -1
- package/tests/hall_street_deck.mjs +609 -0
- package/tests/hall_street_depth.mjs +559 -0
- package/tests/hall_street_desk.mjs +1 -1
- package/tests/hall_street_inside.mjs +29 -5
- package/tests/hall_tweak_editor.mjs +4 -1
- package/tests/hub_account_page.mjs +94 -3
- package/tests/hub_connections_page.mjs +507 -0
- package/tests/hub_invite_badge.mjs +1 -1
- package/tests/idp_device_exchange.mjs +18 -0
- package/tests/landing_legal_pages.mjs +8 -5
- package/tests/landing_page.mjs +23 -4
- package/tests/nav_permission_atoms.mjs +4 -1
- package/tests/profile_connections_ui.mjs +88 -25
- package/tests/projects_hub.mjs +15 -0
- package/tests/projects_hub_pre_uat.mjs +4 -2
- package/tests/render_check.mjs +2 -2
- package/tests/ship_broadcast_routing.mjs +57 -16
- package/tests/ship_broadcast_server.mjs +40 -7
- package/tests/ship_merge_gate.mjs +19 -0
- package/tests/ui_design_kit.mjs +2 -2
- package/tests/watch_applications_queue.mjs +23 -0
- package/tests/wizard_physics.mjs +1 -1
- package/tests/wizard_physics_more.mjs +133 -0
|
@@ -42,7 +42,7 @@ They are **complementary, not alternatives.** An owner-only task (a credential r
|
|
|
42
42
|
|
|
43
43
|
2. **Attach at most one context.** `task_id` **or** `goal_id`, never both (400 `two_contexts`). Neither is allowed — a general "who knows about X" has no context row.
|
|
44
44
|
|
|
45
|
-
3. **
|
|
45
|
+
3. **Open `what_is_stuck` with the ask, then the detail.** The first lines are the card as `node scripts/gds/ask.js check <file>` prints it — one question, two or three answers, your pick, who it waits on, what happens if nobody answers — so the person can answer at a glance (agents ask like humans, task 1004704). Below it, write the detail so it is answerable without this session (≤ 4000 chars in all). The recipient has none of your context. Cover:
|
|
46
46
|
- what is stuck, in plain words;
|
|
47
47
|
- why it needs *this* person (rank, access, a call only they can make) — being asked without a reason reads as work being dumped;
|
|
48
48
|
- the concrete steps, so the ask is actionable rather than a summons;
|
|
@@ -14,7 +14,7 @@ Sends a note about Bongos — the tool — straight to its maintainers (tasks 10
|
|
|
14
14
|
|
|
15
15
|
**When.** File when the builder (a) labels it — "Bongos feedback: …", "tell the Bongos team" — that **is** the go; (b) wishes — "Bongos should…" (**Suggestions count**: send with `--idea`, even if you also fix it in their project); or (c) vents that Bongos is broken — **File it without being asked**, don't argue them out of it. Only about **Bongos itself** (a `bongos`/`/builder-*` command, claim, ship, grade, deploy, upgrade, hall, Settings, sign-in, credits, how it organises work). Not their own project's code, Claude, their laptop or GitHub, nor a rule working as designed. **One filing per distinct problem per session.**
|
|
16
16
|
|
|
17
|
-
**Write it yourself — Never paste the rant.** First line = what went wrong (it becomes the title); then what they did, what they expected, what happened, the exact error line. No code, file contents, secrets or personal data.
|
|
17
|
+
**Write it yourself — Never paste the rant.** First line = what went wrong, in at most twelve words (it becomes the title); then what they did, what they expected, what happened, the exact error line. A wish (`--idea`) asks the maintainers to decide something, so it opens with the card `node scripts/gds/ask.js check <file>` prints, and the rest follows as detail (agents ask like humans, task 1004704). No code, file contents, secrets or personal data.
|
|
18
18
|
|
|
19
19
|
**Send** (stdin, so nothing in the text is mangled by the shell):
|
|
20
20
|
|
|
@@ -83,7 +83,7 @@ Two more halts are yours to detect, not the script's:
|
|
|
83
83
|
- **`ship_failed`** — the ship bounced, the grade failed, or the task did not reach `shipped`. Tell the two non-pass grade shapes apart first: **`GRADER UNAVAILABLE`** (`panel_outcome='unavailable'`) is **not a quality rejection** — the panel could not run, there is nothing to fix, and `node scripts/gds/ship.js <id> --regrade` re-runs the grade once the grader is reachable (a recoverable pause, not a halt). A genuine **`FAIL`** has findings: fix, commit, re-run `node scripts/gds/ship.js <id> --regrade`; if it still will not land, halt and report.
|
|
84
84
|
- **`scope_surprise`** — the task turns out to need work outside its `touches[]`, or its premise is wrong (the thing it describes is already done, or no longer true). Do not quietly widen the scope; that is a new task.
|
|
85
85
|
|
|
86
|
-
**On any halt:** leave the current task claimed, stop, and report — what you hit, which task, and what it needs from a human. Then say plainly what already landed. Everything shipped stays shipped; a halt costs the rest of the run, not the work done.
|
|
86
|
+
**On any halt:** leave the current task claimed, stop, and report — what you hit, which task, and what it needs from a human. What it needs from a human is an ask, not prose: write the card, run `node scripts/gds/ask.js check <file>`, paste what it prints (task 1004704). Then say plainly what already landed. Everything shipped stays shipped; a halt costs the rest of the run, not the work done.
|
|
87
87
|
|
|
88
88
|
To inspect one task without running anything:
|
|
89
89
|
|
|
@@ -99,6 +99,7 @@ The CLI drives a **three-state lifecycle** with a subagent grader between states
|
|
|
99
99
|
- If no visualization tool is available at all (headless / cron / a session without it), the **monospace card already printed IS the summary** — relay the `[otb-confirm]` line and stop there.
|
|
100
100
|
- **Beyond that one line: do NOT add a free-form recap** of what shipped, credits, files, cost, or next steps. The card already carries all of it, and its built-in action ("Start next task" / "Land it" / "Fix & re-grade") is the next-step prompt — you don't need to restate it. This replaces the old per-ship prose summary the owner asked us to retire. (The `[otb-confirm]` line is the deliberate exception, and it is *one line* — that is what keeps the redundancy trivial when the card does paint.)
|
|
101
101
|
- The ONLY thing you may add is a single **required** action the card can't express — e.g. a sandbox `🔍 REVIEW REQUIRED` URL from a review pause (see step 1), or a blocker that needs the owner. One line, then stop.
|
|
102
|
+
- **Something the person must decide or confirm is an ask, never a prose list** (task 1004704): write the card, run `node scripts/gds/ask.js check <file>`, and paste the card it prints — one per decision.
|
|
102
103
|
- A Hero sound + Discord broadcast may still fire on a milestone (CLAUDE.md §2); that's automatic — no need to narrate it.
|
|
103
104
|
|
|
104
105
|
## Constraints
|
package/GOVERNMENT.md
CHANGED
|
@@ -2,7 +2,17 @@
|
|
|
2
2
|
|
|
3
3
|
> This is about **your project's** government. How Cloud Bongos itself is run is a different file: [`GOVERNANCE.md`](GOVERNANCE.md).
|
|
4
4
|
|
|
5
|
-
|
|
5
|
+
**Government is how your project steers its AI.** AI agents do the building. Your government decides what they must obey, who they ask when they're stuck, who answers for each part of the project, and how much they may spend. It's not a theme or a label on a page. It's the rules the server actually checks every time someone, or some agent, tries to do something. Pick it at the start, change it later by vote, and every change is on the record.
|
|
6
|
+
|
|
7
|
+
In one minute:
|
|
8
|
+
|
|
9
|
+
- **Laws** are the standing orders every agent reads first.
|
|
10
|
+
- **Asks** are how an agent asks a person for a decision: one short card, sent to the right seat.
|
|
11
|
+
- **Leads** answer for each of the nine buildings. The owner answers for any building without one.
|
|
12
|
+
- **The treasury** gives goals a monthly pot and lends from a reserve when one runs dry.
|
|
13
|
+
- **Votes** change all of the above. Nothing else can.
|
|
14
|
+
|
|
15
|
+
What you see in the hall is the real state of your project, never a sample. A new project's city shows the owner on every building, nothing built and no laws, because that's the truth until you vote otherwise.
|
|
6
16
|
|
|
7
17
|
A few words you'll see a lot:
|
|
8
18
|
|
|
@@ -55,19 +65,19 @@ Honest note: the clock is built, but the walk below doesn't test a clock running
|
|
|
55
65
|
|
|
56
66
|
### Who decides in each building
|
|
57
67
|
|
|
58
|
-
Your project's decisions are split into nine **buildings**, one per kind of decision. You'll find them
|
|
68
|
+
Your project's decisions are split into nine **buildings**, one per kind of decision. You'll find them in the city (`/city`) and on the street (`/street`) in the hall.
|
|
59
69
|
|
|
60
70
|
| Building | What it covers | Who decides as today |
|
|
61
71
|
|---|---|---|
|
|
62
72
|
| **Charter** | The government itself | Always the board, under the rules in force |
|
|
63
73
|
| **Rules** | Project settings (when work counts as stale, ship mode) and editing work categories | Whoever may change project settings |
|
|
64
74
|
| **Disputes** | Security reports: confirm, dispute, mark fixed | Whoever may judge reports |
|
|
65
|
-
| **People** | Giving and taking custom ranks, access requests, invites | Whoever may manage ranks |
|
|
75
|
+
| **People** | Giving and taking custom ranks, access requests, invites, appointing Leads | Whoever may manage ranks |
|
|
66
76
|
| **Planning** | Creating and ordering goals, new work categories, the focus version | Whoever may create goals |
|
|
67
77
|
| **Automation** | Unattended building (AI agents working with nobody watching): on or off, which goals, priority, pausing a runner | Whoever may switch it on and off |
|
|
68
78
|
| **Review** | Marking a goal's done-when check as met or not met | Whoever may mark work as meeting its checks |
|
|
69
79
|
| **Release** | Clearing a PR's gate, override requests, putting a new version live, releases and deploys | Whoever may put a release live |
|
|
70
|
-
| **Treasury** | Builders' monthly spending limits | Whoever may set spending limits |
|
|
80
|
+
| **Treasury** | Builders' monthly spending limits, goal pots and borrowing from the reserve, and the project's optional spend cap | Whoever may set spending limits |
|
|
71
81
|
|
|
72
82
|
Every building except the Charter is in one of three states:
|
|
73
83
|
|
|
@@ -83,11 +93,13 @@ This is the part that matters. A passed vote doesn't just get recorded, it **doe
|
|
|
83
93
|
|
|
84
94
|
| Building | What a passed vote carries out |
|
|
85
95
|
|---|---|
|
|
86
|
-
| **
|
|
96
|
+
| **Charter** | Changes the government, passes or repeals laws, switches the strictness preset |
|
|
97
|
+
| **People** | Gives someone a custom rank or takes it away; appoints, replaces or removes a Lead |
|
|
87
98
|
| **Automation** | Switches unattended building on or off, or allows a goal to be built unattended |
|
|
88
99
|
| **Release** | Approves an override request, or clears the gate on a PR |
|
|
89
100
|
| **Review** | Signs off a done-when check |
|
|
90
101
|
| **Treasury** | Sets a builder's monthly spending limit |
|
|
102
|
+
| **Any building** | Puts up a build-out that your form of government sends to a vote |
|
|
91
103
|
|
|
92
104
|
Two more things the walk proved: a returned vote changes nothing, and someone the building doesn't seat can't vote on its matters.
|
|
93
105
|
|
|
@@ -97,7 +109,7 @@ At **Rules, Disputes and Planning** a vote stops people acting alone, but a pass
|
|
|
97
109
|
|
|
98
110
|
**1. When you found the project.** Every project is born a Monarchy. At the decide step of founding you pick your form. That pick is filed as your first amendment, and your one yes as founder ratifies it. After that, the five founding stages (scope, strategize, charter, legalize, legislation) are each closed by a vote of the government you picked. Pick a Timocratic Republic and you can't close a stage alone: your trusted builders have to say yes too. A stage with unfinished tasks can't be put to a vote at all. Once all five pass the project comes alive, still governed by your pick.
|
|
99
111
|
|
|
100
|
-
**2. Any time after: the Charter building.** Open the Charter
|
|
112
|
+
**2. Any time after: the Charter building.** Open the Charter and hit "change how this works". The forms are one tap each. A Foundation needs its council rank first, and the forms that aren't ready yet are shown as later. Or pick who decides and how by hand. Add a reason and file it. That's an amendment, and your current government votes on it.
|
|
101
113
|
|
|
102
114
|
**3. Any building, the same way.** "Change how this works" on any building drafts a change to who decides there.
|
|
103
115
|
|
|
@@ -110,6 +122,104 @@ The rules every amendment follows:
|
|
|
110
122
|
- If your change would take away your own vote, it stops and asks you to confirm first.
|
|
111
123
|
- Every attempt, passed or returned, stays on the record.
|
|
112
124
|
|
|
125
|
+
## Laws: the standing orders every AI agent obeys
|
|
126
|
+
|
|
127
|
+
A **law** is a short, one-line rule that every AI agent on your project follows, like "Stuck? Note it, skip it, keep going" or "Ask like a human". It can say in one more line what it means for an agent, and it can **lock** a personal setting it overrides (fix it to one value, or cap it).
|
|
128
|
+
|
|
129
|
+
- **Only a vote makes or ends a law.** Propose laws to pass, laws to repeal, or both at once. That's an amendment your current government votes on. A passed sitting writes the laws; a returned one changes nothing. The database refuses any law a passed vote didn't write.
|
|
130
|
+
- **On the record.** Each law keeps the vote that passed it, who proposed it, who said yes, and when. A repealed law stays on the record too.
|
|
131
|
+
- **Every agent reads them first.** The laws in force go into every AI session on your project, ahead of anyone's own settings. The server writes the words and the session gets them as they are, so nobody's local files can change or drop them. Pass or repeal a law and the next session reads the new book.
|
|
132
|
+
|
|
133
|
+
Your project starts with **no laws**. The first ones are yours to pass.
|
|
134
|
+
|
|
135
|
+
### How strict: a preset
|
|
136
|
+
|
|
137
|
+
Instead of passing laws one by one, pick a **strictness preset**, a ready set of laws:
|
|
138
|
+
|
|
139
|
+
| Preset | What it means for your agents |
|
|
140
|
+
|---|---|
|
|
141
|
+
| **Open workshop** | One law: agents land their work; going live waits for a person. |
|
|
142
|
+
| **Guild** | The standard set: that, plus "stuck? note it and move on", and agents stay on the task. |
|
|
143
|
+
| **Factory** | Strict: agents never wander off the task, every model slot has a cap, every question is a short card, and nothing runs unattended. |
|
|
144
|
+
|
|
145
|
+
Switching presets is one vote. It passes the preset's laws, repeals the other presets' laws, and leaves any law you wrote yourself alone. Which preset you run is simply whatever your laws in force add up to. My agents and the Charter preview what each preset would lock before you put it to a vote. (Factory's "nothing runs unattended" is words agents read; it doesn't switch unattended building off by itself yet.)
|
|
146
|
+
|
|
147
|
+
## Your agents and the project's agents
|
|
148
|
+
|
|
149
|
+
Each builder steers their own agents from **My agents** (under You in the hall): how technical replies are, how long, how far an agent may wander from its task, which model runs, and a few more. Every row is a real setting your agents obey.
|
|
150
|
+
|
|
151
|
+
The project's laws sit above that. If a law fixes or caps one of your settings, that's what your agents use, even if you'd chosen something else before the law passed. My agents shows the row locked and names the law, and won't save a value the law doesn't allow. **The project always wins.**
|
|
152
|
+
|
|
153
|
+
It works the other way too. If you've found a setting that works, **Make it a law** on My agents puts it to a vote, so every agent on the project follows it.
|
|
154
|
+
|
|
155
|
+
## Asks: how an agent asks you something
|
|
156
|
+
|
|
157
|
+
When an agent needs a person to decide, it doesn't send a wall of text. It sends an **ask**: one card in a fixed shape.
|
|
158
|
+
|
|
159
|
+
- a question of twelve words or fewer
|
|
160
|
+
- two or three answers you can tap, each with one line saying what happens
|
|
161
|
+
- which one it would pick, and why
|
|
162
|
+
- who it's waiting on
|
|
163
|
+
- what happens if nobody answers
|
|
164
|
+
|
|
165
|
+
The server checks every ask and **refuses slop** (too long, no real choice, no fallback), naming each thing to fix. An AI session that files a blocker (work stuck on a person) without a proper ask is turned away, so nothing reaches you that you can't decide in one tap. Blocker cards answer with "go ahead", "need more" or "not now".
|
|
166
|
+
|
|
167
|
+
### Who an ask goes to
|
|
168
|
+
|
|
169
|
+
Every ask is sent to a **seat**, not a person: a building's Lead, a building's board, or the owner. The server works out who holds that seat right now. A building without a Lead sends its asks to the owner.
|
|
170
|
+
|
|
171
|
+
- **To do** is what waits on you. It's the main number in the hall: "4 to do".
|
|
172
|
+
- **Wait on others** is what you're waiting on someone else for.
|
|
173
|
+
- **Pass it on.** If an ask waiting on you belongs with someone else, pass it on. It moves word for word. Only the person it waits on can pass it, and a board vote can't be passed.
|
|
174
|
+
- **Nobody answers?** An overdue ask settles the way its card said it would.
|
|
175
|
+
|
|
176
|
+
You answer asks one at a time on the **decision deck** (`/street#deck`): tap 1, 2 or 3, skip, or pass it on.
|
|
177
|
+
|
|
178
|
+
## Leads: who answers for each building
|
|
179
|
+
|
|
180
|
+
Each of the nine buildings can have a **Lead**: one person in charge of it, with a one-line charter saying what they answer for, like "Goals, priorities and the order of work."
|
|
181
|
+
|
|
182
|
+
- **Appointed by vote.** A Lead is appointed, replaced or removed by a People vote, and nothing else. If People has a sitting of its own, that sitting decides; if not, your current government does.
|
|
183
|
+
- **On the building.** The city and the street show each Lead on their building. A building with no Lead shows the owner.
|
|
184
|
+
- **The owner answers for the rest.** A building with no Lead falls to the owner (every Archon on the project).
|
|
185
|
+
- **On the record.** Each appointment keeps the vote that made it, and when it ended. The database refuses a Lead a People vote didn't appoint.
|
|
186
|
+
|
|
187
|
+
Your project starts with no Leads, so every building starts with the owner. Being a Lead routes that building's asks to you and lets you build it out (below). It gives no other powers, and the charter is just words.
|
|
188
|
+
|
|
189
|
+
## Governing is a position you hold
|
|
190
|
+
|
|
191
|
+
Governing isn't a craft you pick. It's a **seat you hold**: the owner, a building's Lead, a seat on a building's own sitting, or a place on the board. The server works out your seats on every request. If you hold one, the hall shows the City, the Board Room and the Government tabs, and names you by it ("Planning Lead"). If you hold none, those tabs are hidden. Hiding a tab is only tidiness: what you may actually do is still checked by the server every time.
|
|
192
|
+
|
|
193
|
+
## Who may build without a vote
|
|
194
|
+
|
|
195
|
+
Whoever holds a building (its Lead, or the owner when it has none) can build it out: a committee room, a new floor, an annex, or growing it into a district of its own. Whether that goes up at once or goes to a vote depends on your **form of government**, never on the Lead or their charter.
|
|
196
|
+
|
|
197
|
+
| Form | A committee room, a new floor or an annex |
|
|
198
|
+
|---|---|
|
|
199
|
+
| **Monarchy / BDFL** | Goes up at once. The founder decides alone, and whoever holds a building acts for them in it. |
|
|
200
|
+
| **Timocratic Republic** | Goes up at once if the person holding the building sits on the board. If not, the board votes. |
|
|
201
|
+
| **Direct Democracy** | A vote. Every builder decides changes together. |
|
|
202
|
+
| **Foundation** | A vote. The council of trustees decides changes. |
|
|
203
|
+
| **Custom** | A vote. Settings that match no named form grant nothing beyond what they say. |
|
|
204
|
+
|
|
205
|
+
Three things come before the form:
|
|
206
|
+
|
|
207
|
+
- **A district is always a vote.** It's a new part of the city, not a change inside one building.
|
|
208
|
+
- **A building nobody holds builds nothing.**
|
|
209
|
+
- **A building with its own sitting follows that sitting.** A group that decides alone or on the first yes lets its members build at once; any other rule puts it to that group as a vote.
|
|
210
|
+
|
|
211
|
+
Inside a building, the holder sees **BUILD OUT** in the Lead's office, and each choice says whether it builds now or goes to a vote. Built at once, the city shows scaffolding and a crane for a day, then the new part stands. Sent to a vote, it shows as a dashed outline with the vote's count over it, and the vote card carries a picture of the building with the change drawn in, so the board votes on a picture. Everything built stays on the record: what it is, who asked, and the vote or rule that allowed it.
|
|
212
|
+
|
|
213
|
+
## The treasury
|
|
214
|
+
|
|
215
|
+
The project's AI spend is its treasury. There is **no spend limit**. A project can switch on a spend cap (a project setting, off by default), but today it only reports going over; it doesn't stop work.
|
|
216
|
+
|
|
217
|
+
- **Pots.** Whoever answers for the Treasury (its Lead, or the owner) can give a goal a **pot**: a budget for the month. A pot's spending is the project's real spend on that goal's work this month.
|
|
218
|
+
- **The reserve.** Last month's real spend that no pot was given, less what it has lent.
|
|
219
|
+
- **Borrowing.** When a pot runs dry, it asks to borrow from the reserve: an ask card (lend it all, lend half, or say no) waiting on the Treasury. Saying no never stops work; the overspend shows as debt.
|
|
220
|
+
|
|
221
|
+
Nothing here moves real money.
|
|
222
|
+
|
|
113
223
|
## What can never be changed, and why
|
|
114
224
|
|
|
115
225
|
Some things no vote can move, and that's on purpose.
|
|
@@ -117,7 +227,7 @@ Some things no vote can move, and that's on purpose.
|
|
|
117
227
|
- **The Archon rank.** You can't edit it from the government page, so nobody can click the founder out of their own project.
|
|
118
228
|
- **Pushing to main, touching protected files, and server access.** These are enforced outside the app, by git hooks and audits, not by the database. So no rank can ever be given them, not even by vote. A switch that looked like it granted them would be a switch that does nothing, so we don't show one.
|
|
119
229
|
- **A file can't give anyone power.** Editing `CLAUDE.md`, a config file, your settings or your hooks gets you nothing. The server checks your rank against the live database on every request, with no caching.
|
|
120
|
-
- **Nothing outside a vote changes the constitution.** Not an environment variable and not a hand edit. The only way in is
|
|
230
|
+
- **Nothing outside a vote changes the constitution, the laws or the Leads.** Not an environment variable and not a hand edit. The only way in is a vote.
|
|
121
231
|
|
|
122
232
|
These walls are proven by their own tests. The government walk below doesn't cover them.
|
|
123
233
|
|
|
@@ -126,15 +236,22 @@ These walls are proven by their own tests. The government walk below doesn't cov
|
|
|
126
236
|
| | Today | Later |
|
|
127
237
|
|---|---|---|
|
|
128
238
|
| **Forms** | Monarchy / BDFL, Timocratic Republic, Direct Democracy, Foundation, and your own Custom mix | Presidential, Cooperative, Federation |
|
|
129
|
-
| **Dials** | Who votes, how many must agree, the voting clock | Veto points (how many separate approvals a big change needs),
|
|
130
|
-
| **What a vote does** | People, Automation, Release, Review
|
|
239
|
+
| **Dials** | Who votes, how many must agree, the voting clock | Veto points (how many separate approvals a big change needs), replacing a leader by vote, judicial review (who can cancel a decision that breaks the charter), a government that changes as you grow |
|
|
240
|
+
| **What a vote does** | People, Automation, Release, Review and Treasury carry out their actions; laws and presets pass and repeal; Leads are appointed and removed; build-outs go up | An action at Rules, Disputes and Planning; grade appeals; votes on treasury spending |
|
|
241
|
+
| **Laws** | Read first by every agent; locks and caps enforced on personal settings; three presets | Factory's "nothing runs unattended" actually switching unattended runs off |
|
|
242
|
+
| **Asks** | One card shape, slop refused, AI blockers must carry one, sent to a seat, passed on, counted | Committees answering their own asks |
|
|
243
|
+
| **Leads** | Appointed by vote, shown on their building, asks routed to them, may build out | Deputies; people seated in committee rooms; an appoint button in the hall (today it's filed as a People vote) |
|
|
244
|
+
| **Build-outs** | At once or by vote, as your form decides | A cost from the building's pot; goals loosening or holding a building's build rights |
|
|
245
|
+
| **Treasury** | Pots, the reserve, borrowing by ask; spend cap reports only | A spend cap that stops work |
|
|
246
|
+
| **Positions** | Your seats decide which governing tabs you see | A seat granting its own powers |
|
|
247
|
+
| **The owner's call** | — | Starting laws for new projects, a restyled decision card, and taste seats (people who judge how the project looks and reads) are waiting on the owner |
|
|
131
248
|
| **Proof** | The walk, in memory, re-run in CI | The same walk against a real database |
|
|
132
249
|
|
|
133
250
|
## How we know it works
|
|
134
251
|
|
|
135
|
-
We don't take our own word for it. There's a walk: one repeatable run over a throwaway test project with six people. It founds the project, closes all five stages, switches through every form, puts every building to a vote and tries to act alone everywhere, then passes every kind of matter and checks the thing actually happened.
|
|
252
|
+
We don't take our own word for it. There's a walk: one repeatable run over a throwaway test project with six people. It founds the project, closes all five stages, switches through every form, puts every building to a vote and tries to act alone everywhere, then passes every kind of matter and checks the thing actually happened. It also passes and repeals laws and switches presets, appoints and removes a Lead, puts up build-outs under each form, files and routes asks, runs a pot dry and borrows from the reserve, and checks each person's seats. Then it takes everything down again.
|
|
136
253
|
|
|
137
|
-
**
|
|
254
|
+
**169 checks, 169 pass.** Every request goes through the real code that makes every decision. One honest catch: the storage underneath is an in-memory stand-in for the database. A real-database run is later.
|
|
138
255
|
|
|
139
256
|
Run it yourself:
|
|
140
257
|
|
|
@@ -5,7 +5,7 @@ A **generated**, zero-dependency typed client for the Bongos API — produced fr
|
|
|
5
5
|
by hand; it regenerates when the spec changes, so it can never drift from the routes.
|
|
6
6
|
|
|
7
7
|
- API version: **v1** (served at `/api/bongos/v1`)
|
|
8
|
-
-
|
|
8
|
+
- 555 operations across 76 resource groups
|
|
9
9
|
|
|
10
10
|
## Use it from your project
|
|
11
11
|
|
|
@@ -501,6 +501,12 @@ function createClient(opts = {}) {
|
|
|
501
501
|
getGoalsSuggestions: (args) => request("GET", "/goals/suggestions", { hasBody: false }, args),
|
|
502
502
|
},
|
|
503
503
|
"government": {
|
|
504
|
+
// PUT /government/asks/{matterId} — rank: any-builder — PUT /government/asks/:matterId
|
|
505
|
+
putGovernmentAsksMatterId: (args) => request("PUT", "/government/asks/{matterId}", { hasBody: true }, args),
|
|
506
|
+
// POST /government/asks/{matterId}/pass — rank: any-builder — POST /government/asks/:matterId/pass
|
|
507
|
+
postGovernmentAsksMatterIdPass: (args) => request("POST", "/government/asks/{matterId}/pass", { hasBody: true }, args),
|
|
508
|
+
// POST /government/asks/check — rank: any-builder — POST /government/asks/check
|
|
509
|
+
postGovernmentAsksCheck: (args) => request("POST", "/government/asks/check", { hasBody: true }, args),
|
|
504
510
|
// GET /government/assignments — rank: archon — GET /government/assignments
|
|
505
511
|
getGovernmentAssignments: (args) => request("GET", "/government/assignments", { hasBody: false }, args),
|
|
506
512
|
// POST /government/assignments — rank: archon — POST /government/assignments
|
|
@@ -521,14 +527,28 @@ function createClient(opts = {}) {
|
|
|
521
527
|
postGovernmentBoardItemsItemIdVotes: (args) => request("POST", "/government/board/items/{itemId}/votes", { hasBody: true }, args),
|
|
522
528
|
// POST /government/board/items/{itemId}/withdraw — rank: metic+archon — POST /government/board/items/:itemId/withdraw
|
|
523
529
|
postGovernmentBoardItemsItemIdWithdraw: (args) => request("POST", "/government/board/items/{itemId}/withdraw", { hasBody: true }, args),
|
|
530
|
+
// POST /government/board/laws — rank: metic+archon — POST /government/board/laws
|
|
531
|
+
postGovernmentBoardLaws: (args) => request("POST", "/government/board/laws", { hasBody: true }, args),
|
|
524
532
|
// POST /government/board/matters — rank: metic+archon — POST /government/board/matters
|
|
525
533
|
postGovernmentBoardMatters: (args) => request("POST", "/government/board/matters", { hasBody: true }, args),
|
|
534
|
+
// POST /government/board/presets — rank: metic+archon — POST /government/board/presets
|
|
535
|
+
postGovernmentBoardPresets: (args) => request("POST", "/government/board/presets", { hasBody: true }, args),
|
|
536
|
+
// POST /government/buildouts — rank: any-builder — POST /government/buildouts
|
|
537
|
+
postGovernmentBuildouts: (args) => request("POST", "/government/buildouts", { hasBody: true }, args),
|
|
526
538
|
// GET /government/constitution — rank: any-builder — GET /government/constitution
|
|
527
539
|
getGovernmentConstitution: (args) => request("GET", "/government/constitution", { hasBody: false }, args),
|
|
540
|
+
// GET /government/counts — rank: any-builder — GET /government/counts
|
|
541
|
+
getGovernmentCounts: (args) => request("GET", "/government/counts", { hasBody: false }, args),
|
|
528
542
|
// GET /government/docket — rank: any-builder — GET /government/docket
|
|
529
543
|
getGovernmentDocket: (args) => request("GET", "/government/docket", { hasBody: false }, args),
|
|
544
|
+
// GET /government/laws — rank: any-builder — GET /government/laws
|
|
545
|
+
getGovernmentLaws: (args) => request("GET", "/government/laws", { hasBody: false }, args),
|
|
546
|
+
// GET /government/leads — rank: any-builder — GET /government/leads
|
|
547
|
+
getGovernmentLeads: (args) => request("GET", "/government/leads", { hasBody: false }, args),
|
|
530
548
|
// GET /government/permissions — rank: archon — GET /government/permissions
|
|
531
549
|
getGovernmentPermissions: (args) => request("GET", "/government/permissions", { hasBody: false }, args),
|
|
550
|
+
// GET /government/presets — rank: any-builder — GET /government/presets
|
|
551
|
+
getGovernmentPresets: (args) => request("GET", "/government/presets", { hasBody: false }, args),
|
|
532
552
|
// POST /government/rank-sets/apply — rank: archon — POST /government/rank-sets/apply
|
|
533
553
|
postGovernmentRankSetsApply: (args) => request("POST", "/government/rank-sets/apply", { hasBody: true }, args),
|
|
534
554
|
// GET /government/ranks — rank: archon — GET /government/ranks
|
|
@@ -543,6 +563,12 @@ function createClient(opts = {}) {
|
|
|
543
563
|
putGovernmentRanksRankKeyPermissionsPermissionKey: (args) => request("PUT", "/government/ranks/{rankKey}/permissions/{permissionKey}", { hasBody: true }, args),
|
|
544
564
|
// POST /government/ranks/{rankKey}/reset — rank: archon — POST /government/ranks/:rankKey/reset
|
|
545
565
|
postGovernmentRanksRankKeyReset: (args) => request("POST", "/government/ranks/{rankKey}/reset", { hasBody: true }, args),
|
|
566
|
+
// GET /government/treasury — rank: any-builder — GET /government/treasury
|
|
567
|
+
getGovernmentTreasury: (args) => request("GET", "/government/treasury", { hasBody: false }, args),
|
|
568
|
+
// POST /government/treasury/borrows/{borrowId}/answer — rank: any-builder — POST /government/treasury/borrows/:borrowId/answer
|
|
569
|
+
postGovernmentTreasuryBorrowsBorrowIdAnswer: (args) => request("POST", "/government/treasury/borrows/{borrowId}/answer", { hasBody: true }, args),
|
|
570
|
+
// PUT /government/treasury/pots/{goalId} — rank: any-builder — PUT /government/treasury/pots/:goalId
|
|
571
|
+
putGovernmentTreasuryPotsGoalId: (args) => request("PUT", "/government/treasury/pots/{goalId}", { hasBody: true }, args),
|
|
546
572
|
},
|
|
547
573
|
"grades": {
|
|
548
574
|
// GET /grades/by-builder — rank: metic+archon — GET /grades/by-builder
|
|
@@ -871,6 +897,8 @@ function createClient(opts = {}) {
|
|
|
871
897
|
getProjectSettingsShipMode: (args) => request("GET", "/project-settings/ship-mode", { hasBody: false }, args),
|
|
872
898
|
// PATCH /project-settings/ship-mode — rank: metic+archon — PATCH /project-settings/ship-mode
|
|
873
899
|
patchProjectSettingsShipMode: (args) => request("PATCH", "/project-settings/ship-mode", { hasBody: true }, args),
|
|
900
|
+
// PATCH /project-settings/spend-cap — rank: metic+archon — PATCH /project-settings/spend-cap
|
|
901
|
+
patchProjectSettingsSpendCap: (args) => request("PATCH", "/project-settings/spend-cap", { hasBody: true }, args),
|
|
874
902
|
// GET /project-settings/tweak-autopickup — rank: any-builder — GET /project-settings/tweak-autopickup
|
|
875
903
|
getProjectSettingsTweakAutopickup: (args) => request("GET", "/project-settings/tweak-autopickup", { hasBody: false }, args),
|
|
876
904
|
// PATCH /project-settings/tweak-autopickup — rank: metic+archon — PATCH /project-settings/tweak-autopickup
|
|
@@ -500,6 +500,12 @@ function createClient(opts = {}) {
|
|
|
500
500
|
getGoalsSuggestions: (args) => request("GET", "/goals/suggestions", { hasBody: false }, args),
|
|
501
501
|
},
|
|
502
502
|
"government": {
|
|
503
|
+
// PUT /government/asks/{matterId} — rank: any-builder — PUT /government/asks/:matterId
|
|
504
|
+
putGovernmentAsksMatterId: (args) => request("PUT", "/government/asks/{matterId}", { hasBody: true }, args),
|
|
505
|
+
// POST /government/asks/{matterId}/pass — rank: any-builder — POST /government/asks/:matterId/pass
|
|
506
|
+
postGovernmentAsksMatterIdPass: (args) => request("POST", "/government/asks/{matterId}/pass", { hasBody: true }, args),
|
|
507
|
+
// POST /government/asks/check — rank: any-builder — POST /government/asks/check
|
|
508
|
+
postGovernmentAsksCheck: (args) => request("POST", "/government/asks/check", { hasBody: true }, args),
|
|
503
509
|
// GET /government/assignments — rank: archon — GET /government/assignments
|
|
504
510
|
getGovernmentAssignments: (args) => request("GET", "/government/assignments", { hasBody: false }, args),
|
|
505
511
|
// POST /government/assignments — rank: archon — POST /government/assignments
|
|
@@ -520,14 +526,28 @@ function createClient(opts = {}) {
|
|
|
520
526
|
postGovernmentBoardItemsItemIdVotes: (args) => request("POST", "/government/board/items/{itemId}/votes", { hasBody: true }, args),
|
|
521
527
|
// POST /government/board/items/{itemId}/withdraw — rank: metic+archon — POST /government/board/items/:itemId/withdraw
|
|
522
528
|
postGovernmentBoardItemsItemIdWithdraw: (args) => request("POST", "/government/board/items/{itemId}/withdraw", { hasBody: true }, args),
|
|
529
|
+
// POST /government/board/laws — rank: metic+archon — POST /government/board/laws
|
|
530
|
+
postGovernmentBoardLaws: (args) => request("POST", "/government/board/laws", { hasBody: true }, args),
|
|
523
531
|
// POST /government/board/matters — rank: metic+archon — POST /government/board/matters
|
|
524
532
|
postGovernmentBoardMatters: (args) => request("POST", "/government/board/matters", { hasBody: true }, args),
|
|
533
|
+
// POST /government/board/presets — rank: metic+archon — POST /government/board/presets
|
|
534
|
+
postGovernmentBoardPresets: (args) => request("POST", "/government/board/presets", { hasBody: true }, args),
|
|
535
|
+
// POST /government/buildouts — rank: any-builder — POST /government/buildouts
|
|
536
|
+
postGovernmentBuildouts: (args) => request("POST", "/government/buildouts", { hasBody: true }, args),
|
|
525
537
|
// GET /government/constitution — rank: any-builder — GET /government/constitution
|
|
526
538
|
getGovernmentConstitution: (args) => request("GET", "/government/constitution", { hasBody: false }, args),
|
|
539
|
+
// GET /government/counts — rank: any-builder — GET /government/counts
|
|
540
|
+
getGovernmentCounts: (args) => request("GET", "/government/counts", { hasBody: false }, args),
|
|
527
541
|
// GET /government/docket — rank: any-builder — GET /government/docket
|
|
528
542
|
getGovernmentDocket: (args) => request("GET", "/government/docket", { hasBody: false }, args),
|
|
543
|
+
// GET /government/laws — rank: any-builder — GET /government/laws
|
|
544
|
+
getGovernmentLaws: (args) => request("GET", "/government/laws", { hasBody: false }, args),
|
|
545
|
+
// GET /government/leads — rank: any-builder — GET /government/leads
|
|
546
|
+
getGovernmentLeads: (args) => request("GET", "/government/leads", { hasBody: false }, args),
|
|
529
547
|
// GET /government/permissions — rank: archon — GET /government/permissions
|
|
530
548
|
getGovernmentPermissions: (args) => request("GET", "/government/permissions", { hasBody: false }, args),
|
|
549
|
+
// GET /government/presets — rank: any-builder — GET /government/presets
|
|
550
|
+
getGovernmentPresets: (args) => request("GET", "/government/presets", { hasBody: false }, args),
|
|
531
551
|
// POST /government/rank-sets/apply — rank: archon — POST /government/rank-sets/apply
|
|
532
552
|
postGovernmentRankSetsApply: (args) => request("POST", "/government/rank-sets/apply", { hasBody: true }, args),
|
|
533
553
|
// GET /government/ranks — rank: archon — GET /government/ranks
|
|
@@ -542,6 +562,12 @@ function createClient(opts = {}) {
|
|
|
542
562
|
putGovernmentRanksRankKeyPermissionsPermissionKey: (args) => request("PUT", "/government/ranks/{rankKey}/permissions/{permissionKey}", { hasBody: true }, args),
|
|
543
563
|
// POST /government/ranks/{rankKey}/reset — rank: archon — POST /government/ranks/:rankKey/reset
|
|
544
564
|
postGovernmentRanksRankKeyReset: (args) => request("POST", "/government/ranks/{rankKey}/reset", { hasBody: true }, args),
|
|
565
|
+
// GET /government/treasury — rank: any-builder — GET /government/treasury
|
|
566
|
+
getGovernmentTreasury: (args) => request("GET", "/government/treasury", { hasBody: false }, args),
|
|
567
|
+
// POST /government/treasury/borrows/{borrowId}/answer — rank: any-builder — POST /government/treasury/borrows/:borrowId/answer
|
|
568
|
+
postGovernmentTreasuryBorrowsBorrowIdAnswer: (args) => request("POST", "/government/treasury/borrows/{borrowId}/answer", { hasBody: true }, args),
|
|
569
|
+
// PUT /government/treasury/pots/{goalId} — rank: any-builder — PUT /government/treasury/pots/:goalId
|
|
570
|
+
putGovernmentTreasuryPotsGoalId: (args) => request("PUT", "/government/treasury/pots/{goalId}", { hasBody: true }, args),
|
|
545
571
|
},
|
|
546
572
|
"grades": {
|
|
547
573
|
// GET /grades/by-builder — rank: metic+archon — GET /grades/by-builder
|
|
@@ -870,6 +896,8 @@ function createClient(opts = {}) {
|
|
|
870
896
|
getProjectSettingsShipMode: (args) => request("GET", "/project-settings/ship-mode", { hasBody: false }, args),
|
|
871
897
|
// PATCH /project-settings/ship-mode — rank: metic+archon — PATCH /project-settings/ship-mode
|
|
872
898
|
patchProjectSettingsShipMode: (args) => request("PATCH", "/project-settings/ship-mode", { hasBody: true }, args),
|
|
899
|
+
// PATCH /project-settings/spend-cap — rank: metic+archon — PATCH /project-settings/spend-cap
|
|
900
|
+
patchProjectSettingsSpendCap: (args) => request("PATCH", "/project-settings/spend-cap", { hasBody: true }, args),
|
|
873
901
|
// GET /project-settings/tweak-autopickup — rank: any-builder — GET /project-settings/tweak-autopickup
|
|
874
902
|
getProjectSettingsTweakAutopickup: (args) => request("GET", "/project-settings/tweak-autopickup", { hasBody: false }, args),
|
|
875
903
|
// PATCH /project-settings/tweak-autopickup — rank: metic+archon — PATCH /project-settings/tweak-autopickup
|
|
@@ -241,6 +241,8 @@ export interface PatchProjectSettingsRotDaysRequest { days: number }
|
|
|
241
241
|
export interface PatchProjectSettingsRotDaysResponse { ok: boolean; rot_days: unknown; source: unknown; describe: unknown }
|
|
242
242
|
export interface PatchProjectSettingsShipModeRequest { mode: string }
|
|
243
243
|
export interface PatchProjectSettingsShipModeResponse { ok: boolean; mode: unknown; chosen: unknown; source: unknown; sentence: unknown }
|
|
244
|
+
export interface PatchProjectSettingsSpendCapRequest { usd?: unknown }
|
|
245
|
+
export interface PatchProjectSettingsSpendCapResponse { ok: boolean; on: unknown; usd: unknown; sentence: unknown }
|
|
244
246
|
export interface PatchProjectSettingsTweakAutopickupRequest { mode?: string; cap?: number }
|
|
245
247
|
export interface PatchProjectsIdFeaturedRequest { featured: boolean }
|
|
246
248
|
export interface PatchProjectsIdFeaturedResponse { project: unknown }
|
|
@@ -289,8 +291,8 @@ export interface PostBackupTriggerResponse { ok: boolean; message: unknown; star
|
|
|
289
291
|
export interface PostBlockersIdLinkRequest { task_id: StringifiableId }
|
|
290
292
|
export interface PostBlockersIdLinkResponse { ok: boolean; blocked: unknown }
|
|
291
293
|
export interface PostBlockersIdResolveRequest { resolution_note?: string }
|
|
292
|
-
export interface PostBlockersRequest { title: string; body_md?: string; source?: string; source_ref?: string }
|
|
293
|
-
export interface PostBlockersResponse { skipped?: boolean; reason?: unknown; blocker?: unknown }
|
|
294
|
+
export interface PostBlockersRequest { title: string; body_md?: string; source?: string; source_ref?: string; ask?: Record<string, unknown> }
|
|
295
|
+
export interface PostBlockersResponse { skipped?: boolean; reason?: unknown; blocker?: unknown; ask?: unknown; ask_saved?: boolean }
|
|
294
296
|
export interface PostClaimsBatchReleaseRequest { claim_ids: unknown[]; force?: boolean }
|
|
295
297
|
export interface PostClaimsBatchReleaseResponse { released: unknown; failures: unknown }
|
|
296
298
|
export interface PostClaimsBatchRequest { task_ids: unknown[]; worktree_name?: string; bind_session?: boolean }
|
|
@@ -365,6 +367,9 @@ export interface PostGoalsReorderRequest { version_id: string; ordered_ids: numb
|
|
|
365
367
|
export interface PostGoalsReorderResponse { ok: boolean; goals: unknown }
|
|
366
368
|
export interface PostGoalsRequest { version_id: string; title: string; subtitle?: string; description?: string; scope_modules?: string[]; succeeds_goal_id?: number; category_id?: number; admit_reason?: string; spec_task?: boolean }
|
|
367
369
|
export interface PostGoalsResponse { ok: boolean; goal: unknown; succeeds_goal_id: unknown; category_advisory: unknown; admitted: unknown; spec_task: unknown }
|
|
370
|
+
export interface PostGovernmentAsksCheckResponse { ok: boolean; ask: unknown; question_words: unknown; rules: unknown }
|
|
371
|
+
export interface PostGovernmentAsksMatterIdPassRequest { seat: string }
|
|
372
|
+
export interface PostGovernmentAsksMatterIdPassResponse { ok: boolean; matter_id: unknown; ask: unknown; route: unknown }
|
|
368
373
|
export interface PostGovernmentAssignmentsRequest { builder_id: number; rank_key: string }
|
|
369
374
|
export interface PostGovernmentBoardCharterRequest { form?: string; franchise?: string; council_rank?: string; pass_rule?: string; window_minutes?: unknown; rationale_md?: string; acknowledge_self_removal?: boolean }
|
|
370
375
|
export interface PostGovernmentBoardCharterResponse { ok: boolean; amendment: unknown; item: unknown; reads_as: unknown }
|
|
@@ -374,13 +379,21 @@ export interface PostGovernmentBoardItemsItemIdVotesRequest { direction: string;
|
|
|
374
379
|
export interface PostGovernmentBoardItemsItemIdWithdrawResponse { ok: boolean; item_closed: boolean; outcome: unknown; item: unknown }
|
|
375
380
|
export interface PostGovernmentBoardItemsRequest { subject_type: string; proposal: Record<string, unknown>; rationale_md?: string; acknowledge_self_removal?: boolean }
|
|
376
381
|
export interface PostGovernmentBoardItemsResponse { ok: boolean; amendment: unknown; item: unknown }
|
|
382
|
+
export interface PostGovernmentBoardLawsRequest { enact?: unknown[]; repeal?: unknown[]; rationale_md?: string }
|
|
383
|
+
export interface PostGovernmentBoardLawsResponse { ok: boolean; amendment: unknown; item: unknown; proposal: unknown }
|
|
377
384
|
export interface PostGovernmentBoardMattersRequest { area: string; title: string; detail_md?: string; action?: Record<string, unknown> }
|
|
378
385
|
export interface PostGovernmentBoardMattersResponse { ok: boolean; matter: unknown; item: unknown; decided: unknown }
|
|
386
|
+
export interface PostGovernmentBoardPresetsRequest { preset: string }
|
|
387
|
+
export interface PostGovernmentBoardPresetsResponse { ok: boolean; preset: unknown; amendment: unknown; item: unknown; proposal: unknown }
|
|
388
|
+
export interface PostGovernmentBuildoutsRequest { building: string; capsule: string; name?: string; line?: string }
|
|
389
|
+
export interface PostGovernmentBuildoutsResponse { ok: boolean; path: unknown; buildout?: unknown; rights: unknown; matter?: unknown; item?: unknown; decided?: unknown }
|
|
379
390
|
export interface PostGovernmentRankSetsApplyRequest { type?: string; headcount: number }
|
|
380
391
|
export interface PostGovernmentRankSetsApplyResponse { ok: boolean; type: unknown; size: unknown; created: unknown; skipped: unknown }
|
|
381
392
|
export interface PostGovernmentRanksRankKeyResetResponse { ok: boolean; rank_key: unknown; seeded_rank: unknown; permission_count: unknown }
|
|
382
393
|
export interface PostGovernmentRanksRequest { rank_key: string; label: string; description?: string }
|
|
383
394
|
export interface PostGovernmentRanksResponse { rank: unknown }
|
|
395
|
+
export interface PostGovernmentTreasuryBorrowsBorrowIdAnswerRequest { key: string }
|
|
396
|
+
export interface PostGovernmentTreasuryBorrowsBorrowIdAnswerResponse { ok: boolean; borrow: unknown }
|
|
384
397
|
export interface PostGuildRequestsIdAcceptRequest { visibility?: string; counted_in_totals?: unknown }
|
|
385
398
|
export interface PostGuildRequestsIdAcceptResponse { status: unknown }
|
|
386
399
|
export interface PostGuildsRequest { slug: string; name: string; description?: string; visibility: string }
|
|
@@ -565,7 +578,9 @@ export interface PutCopyDeskPagesPageIdDraftRequest { reading_hash: string; line
|
|
|
565
578
|
export interface PutCopyDeskPagesPageIdDraftResponse { ok: boolean; outcome: unknown; page_id: unknown; round: unknown; draft: unknown; counter: unknown }
|
|
566
579
|
export interface PutDoneWhenCriterionIdBackendOnlyRequest { backend_only: boolean }
|
|
567
580
|
export interface PutDoneWhenCriterionIdBackendOnlyResponse { ok: boolean; criterion_id: unknown; backend_only: unknown }
|
|
581
|
+
export interface PutGovernmentAsksMatterIdResponse { ok: boolean; matter_id: unknown; ask: unknown }
|
|
568
582
|
export interface PutGovernmentRanksRankKeyPermissionsPermissionKeyResponse { ok: boolean; rank_key: unknown; permission_key: unknown; granted: unknown }
|
|
583
|
+
export interface PutGovernmentTreasuryPotsGoalIdRequest { budget_usd?: unknown }
|
|
569
584
|
export interface PutMingleOptInRequest { opted_in: boolean }
|
|
570
585
|
export interface PutMingleOptInResponse { opted_in: unknown; updated_at: unknown }
|
|
571
586
|
export interface PutMingleProjectRequest { enabled: boolean }
|
|
@@ -1011,6 +1026,12 @@ export interface BongosClient {
|
|
|
1011
1026
|
getGoalsSuggestions(args?: RequestArgs): Promise<ApiResponse>;
|
|
1012
1027
|
};
|
|
1013
1028
|
"government": {
|
|
1029
|
+
/** PUT /government/asks/{matterId} — rank: any-builder */
|
|
1030
|
+
putGovernmentAsksMatterId(args?: RequestArgs): Promise<PutGovernmentAsksMatterIdResponse>;
|
|
1031
|
+
/** POST /government/asks/{matterId}/pass — rank: any-builder */
|
|
1032
|
+
postGovernmentAsksMatterIdPass(args: RequestArgs & { body: PostGovernmentAsksMatterIdPassRequest }): Promise<PostGovernmentAsksMatterIdPassResponse>;
|
|
1033
|
+
/** POST /government/asks/check — rank: any-builder */
|
|
1034
|
+
postGovernmentAsksCheck(args?: RequestArgs): Promise<PostGovernmentAsksCheckResponse>;
|
|
1014
1035
|
/** GET /government/assignments — rank: archon */
|
|
1015
1036
|
getGovernmentAssignments(args?: RequestArgs): Promise<GetGovernmentAssignmentsResponse>;
|
|
1016
1037
|
/** POST /government/assignments — rank: archon */
|
|
@@ -1031,14 +1052,28 @@ export interface BongosClient {
|
|
|
1031
1052
|
postGovernmentBoardItemsItemIdVotes(args: RequestArgs & { body: PostGovernmentBoardItemsItemIdVotesRequest }): Promise<ApiResponse>;
|
|
1032
1053
|
/** POST /government/board/items/{itemId}/withdraw — rank: metic+archon */
|
|
1033
1054
|
postGovernmentBoardItemsItemIdWithdraw(args?: RequestArgs): Promise<PostGovernmentBoardItemsItemIdWithdrawResponse>;
|
|
1055
|
+
/** POST /government/board/laws — rank: metic+archon */
|
|
1056
|
+
postGovernmentBoardLaws(args?: RequestArgs & { body?: PostGovernmentBoardLawsRequest }): Promise<PostGovernmentBoardLawsResponse>;
|
|
1034
1057
|
/** POST /government/board/matters — rank: metic+archon */
|
|
1035
1058
|
postGovernmentBoardMatters(args: RequestArgs & { body: PostGovernmentBoardMattersRequest }): Promise<PostGovernmentBoardMattersResponse>;
|
|
1059
|
+
/** POST /government/board/presets — rank: metic+archon */
|
|
1060
|
+
postGovernmentBoardPresets(args: RequestArgs & { body: PostGovernmentBoardPresetsRequest }): Promise<PostGovernmentBoardPresetsResponse>;
|
|
1061
|
+
/** POST /government/buildouts — rank: any-builder */
|
|
1062
|
+
postGovernmentBuildouts(args: RequestArgs & { body: PostGovernmentBuildoutsRequest }): Promise<PostGovernmentBuildoutsResponse>;
|
|
1036
1063
|
/** GET /government/constitution — rank: any-builder */
|
|
1037
1064
|
getGovernmentConstitution(args?: RequestArgs): Promise<ApiResponse>;
|
|
1065
|
+
/** GET /government/counts — rank: any-builder */
|
|
1066
|
+
getGovernmentCounts(args?: RequestArgs): Promise<ApiResponse>;
|
|
1038
1067
|
/** GET /government/docket — rank: any-builder */
|
|
1039
1068
|
getGovernmentDocket(args?: RequestArgs): Promise<ApiResponse>;
|
|
1069
|
+
/** GET /government/laws — rank: any-builder */
|
|
1070
|
+
getGovernmentLaws(args?: RequestArgs): Promise<ApiResponse>;
|
|
1071
|
+
/** GET /government/leads — rank: any-builder */
|
|
1072
|
+
getGovernmentLeads(args?: RequestArgs): Promise<ApiResponse>;
|
|
1040
1073
|
/** GET /government/permissions — rank: archon */
|
|
1041
1074
|
getGovernmentPermissions(args?: RequestArgs): Promise<GetGovernmentPermissionsResponse>;
|
|
1075
|
+
/** GET /government/presets — rank: any-builder */
|
|
1076
|
+
getGovernmentPresets(args?: RequestArgs): Promise<ApiResponse>;
|
|
1042
1077
|
/** POST /government/rank-sets/apply — rank: archon */
|
|
1043
1078
|
postGovernmentRankSetsApply(args: RequestArgs & { body: PostGovernmentRankSetsApplyRequest }): Promise<PostGovernmentRankSetsApplyResponse>;
|
|
1044
1079
|
/** GET /government/ranks — rank: archon */
|
|
@@ -1053,6 +1088,12 @@ export interface BongosClient {
|
|
|
1053
1088
|
putGovernmentRanksRankKeyPermissionsPermissionKey(args?: RequestArgs): Promise<PutGovernmentRanksRankKeyPermissionsPermissionKeyResponse>;
|
|
1054
1089
|
/** POST /government/ranks/{rankKey}/reset — rank: archon */
|
|
1055
1090
|
postGovernmentRanksRankKeyReset(args?: RequestArgs): Promise<PostGovernmentRanksRankKeyResetResponse>;
|
|
1091
|
+
/** GET /government/treasury — rank: any-builder */
|
|
1092
|
+
getGovernmentTreasury(args?: RequestArgs): Promise<ApiResponse>;
|
|
1093
|
+
/** POST /government/treasury/borrows/{borrowId}/answer — rank: any-builder */
|
|
1094
|
+
postGovernmentTreasuryBorrowsBorrowIdAnswer(args: RequestArgs & { body: PostGovernmentTreasuryBorrowsBorrowIdAnswerRequest }): Promise<PostGovernmentTreasuryBorrowsBorrowIdAnswerResponse>;
|
|
1095
|
+
/** PUT /government/treasury/pots/{goalId} — rank: any-builder */
|
|
1096
|
+
putGovernmentTreasuryPotsGoalId(args?: RequestArgs & { body?: PutGovernmentTreasuryPotsGoalIdRequest }): Promise<ApiResponse>;
|
|
1056
1097
|
};
|
|
1057
1098
|
"grades": {
|
|
1058
1099
|
/** GET /grades/by-builder — rank: metic+archon */
|
|
@@ -1381,6 +1422,8 @@ export interface BongosClient {
|
|
|
1381
1422
|
getProjectSettingsShipMode(args?: RequestArgs): Promise<GetProjectSettingsShipModeResponse>;
|
|
1382
1423
|
/** PATCH /project-settings/ship-mode — rank: metic+archon */
|
|
1383
1424
|
patchProjectSettingsShipMode(args: RequestArgs & { body: PatchProjectSettingsShipModeRequest }): Promise<PatchProjectSettingsShipModeResponse>;
|
|
1425
|
+
/** PATCH /project-settings/spend-cap — rank: metic+archon */
|
|
1426
|
+
patchProjectSettingsSpendCap(args?: RequestArgs & { body?: PatchProjectSettingsSpendCapRequest }): Promise<PatchProjectSettingsSpendCapResponse>;
|
|
1384
1427
|
/** GET /project-settings/tweak-autopickup — rank: any-builder */
|
|
1385
1428
|
getProjectSettingsTweakAutopickup(args?: RequestArgs): Promise<ApiResponse>;
|
|
1386
1429
|
/** PATCH /project-settings/tweak-autopickup — rank: metic+archon */
|
|
@@ -497,6 +497,12 @@ export function createClient(opts = {}) {
|
|
|
497
497
|
getGoalsSuggestions: (args) => request("GET", "/goals/suggestions", { hasBody: false }, args),
|
|
498
498
|
},
|
|
499
499
|
"government": {
|
|
500
|
+
// PUT /government/asks/{matterId} — rank: any-builder — PUT /government/asks/:matterId
|
|
501
|
+
putGovernmentAsksMatterId: (args) => request("PUT", "/government/asks/{matterId}", { hasBody: true }, args),
|
|
502
|
+
// POST /government/asks/{matterId}/pass — rank: any-builder — POST /government/asks/:matterId/pass
|
|
503
|
+
postGovernmentAsksMatterIdPass: (args) => request("POST", "/government/asks/{matterId}/pass", { hasBody: true }, args),
|
|
504
|
+
// POST /government/asks/check — rank: any-builder — POST /government/asks/check
|
|
505
|
+
postGovernmentAsksCheck: (args) => request("POST", "/government/asks/check", { hasBody: true }, args),
|
|
500
506
|
// GET /government/assignments — rank: archon — GET /government/assignments
|
|
501
507
|
getGovernmentAssignments: (args) => request("GET", "/government/assignments", { hasBody: false }, args),
|
|
502
508
|
// POST /government/assignments — rank: archon — POST /government/assignments
|
|
@@ -517,14 +523,28 @@ export function createClient(opts = {}) {
|
|
|
517
523
|
postGovernmentBoardItemsItemIdVotes: (args) => request("POST", "/government/board/items/{itemId}/votes", { hasBody: true }, args),
|
|
518
524
|
// POST /government/board/items/{itemId}/withdraw — rank: metic+archon — POST /government/board/items/:itemId/withdraw
|
|
519
525
|
postGovernmentBoardItemsItemIdWithdraw: (args) => request("POST", "/government/board/items/{itemId}/withdraw", { hasBody: true }, args),
|
|
526
|
+
// POST /government/board/laws — rank: metic+archon — POST /government/board/laws
|
|
527
|
+
postGovernmentBoardLaws: (args) => request("POST", "/government/board/laws", { hasBody: true }, args),
|
|
520
528
|
// POST /government/board/matters — rank: metic+archon — POST /government/board/matters
|
|
521
529
|
postGovernmentBoardMatters: (args) => request("POST", "/government/board/matters", { hasBody: true }, args),
|
|
530
|
+
// POST /government/board/presets — rank: metic+archon — POST /government/board/presets
|
|
531
|
+
postGovernmentBoardPresets: (args) => request("POST", "/government/board/presets", { hasBody: true }, args),
|
|
532
|
+
// POST /government/buildouts — rank: any-builder — POST /government/buildouts
|
|
533
|
+
postGovernmentBuildouts: (args) => request("POST", "/government/buildouts", { hasBody: true }, args),
|
|
522
534
|
// GET /government/constitution — rank: any-builder — GET /government/constitution
|
|
523
535
|
getGovernmentConstitution: (args) => request("GET", "/government/constitution", { hasBody: false }, args),
|
|
536
|
+
// GET /government/counts — rank: any-builder — GET /government/counts
|
|
537
|
+
getGovernmentCounts: (args) => request("GET", "/government/counts", { hasBody: false }, args),
|
|
524
538
|
// GET /government/docket — rank: any-builder — GET /government/docket
|
|
525
539
|
getGovernmentDocket: (args) => request("GET", "/government/docket", { hasBody: false }, args),
|
|
540
|
+
// GET /government/laws — rank: any-builder — GET /government/laws
|
|
541
|
+
getGovernmentLaws: (args) => request("GET", "/government/laws", { hasBody: false }, args),
|
|
542
|
+
// GET /government/leads — rank: any-builder — GET /government/leads
|
|
543
|
+
getGovernmentLeads: (args) => request("GET", "/government/leads", { hasBody: false }, args),
|
|
526
544
|
// GET /government/permissions — rank: archon — GET /government/permissions
|
|
527
545
|
getGovernmentPermissions: (args) => request("GET", "/government/permissions", { hasBody: false }, args),
|
|
546
|
+
// GET /government/presets — rank: any-builder — GET /government/presets
|
|
547
|
+
getGovernmentPresets: (args) => request("GET", "/government/presets", { hasBody: false }, args),
|
|
528
548
|
// POST /government/rank-sets/apply — rank: archon — POST /government/rank-sets/apply
|
|
529
549
|
postGovernmentRankSetsApply: (args) => request("POST", "/government/rank-sets/apply", { hasBody: true }, args),
|
|
530
550
|
// GET /government/ranks — rank: archon — GET /government/ranks
|
|
@@ -539,6 +559,12 @@ export function createClient(opts = {}) {
|
|
|
539
559
|
putGovernmentRanksRankKeyPermissionsPermissionKey: (args) => request("PUT", "/government/ranks/{rankKey}/permissions/{permissionKey}", { hasBody: true }, args),
|
|
540
560
|
// POST /government/ranks/{rankKey}/reset — rank: archon — POST /government/ranks/:rankKey/reset
|
|
541
561
|
postGovernmentRanksRankKeyReset: (args) => request("POST", "/government/ranks/{rankKey}/reset", { hasBody: true }, args),
|
|
562
|
+
// GET /government/treasury — rank: any-builder — GET /government/treasury
|
|
563
|
+
getGovernmentTreasury: (args) => request("GET", "/government/treasury", { hasBody: false }, args),
|
|
564
|
+
// POST /government/treasury/borrows/{borrowId}/answer — rank: any-builder — POST /government/treasury/borrows/:borrowId/answer
|
|
565
|
+
postGovernmentTreasuryBorrowsBorrowIdAnswer: (args) => request("POST", "/government/treasury/borrows/{borrowId}/answer", { hasBody: true }, args),
|
|
566
|
+
// PUT /government/treasury/pots/{goalId} — rank: any-builder — PUT /government/treasury/pots/:goalId
|
|
567
|
+
putGovernmentTreasuryPotsGoalId: (args) => request("PUT", "/government/treasury/pots/{goalId}", { hasBody: true }, args),
|
|
542
568
|
},
|
|
543
569
|
"grades": {
|
|
544
570
|
// GET /grades/by-builder — rank: metic+archon — GET /grades/by-builder
|
|
@@ -867,6 +893,8 @@ export function createClient(opts = {}) {
|
|
|
867
893
|
getProjectSettingsShipMode: (args) => request("GET", "/project-settings/ship-mode", { hasBody: false }, args),
|
|
868
894
|
// PATCH /project-settings/ship-mode — rank: metic+archon — PATCH /project-settings/ship-mode
|
|
869
895
|
patchProjectSettingsShipMode: (args) => request("PATCH", "/project-settings/ship-mode", { hasBody: true }, args),
|
|
896
|
+
// PATCH /project-settings/spend-cap — rank: metic+archon — PATCH /project-settings/spend-cap
|
|
897
|
+
patchProjectSettingsSpendCap: (args) => request("PATCH", "/project-settings/spend-cap", { hasBody: true }, args),
|
|
870
898
|
// GET /project-settings/tweak-autopickup — rank: any-builder — GET /project-settings/tweak-autopickup
|
|
871
899
|
getProjectSettingsTweakAutopickup: (args) => request("GET", "/project-settings/tweak-autopickup", { hasBody: false }, args),
|
|
872
900
|
// PATCH /project-settings/tweak-autopickup — rank: metic+archon — PATCH /project-settings/tweak-autopickup
|