Import the remade decks on stable ids and recommend one card per job, so a saved draft still loads after a chip is renamed.

The real-group profiles stay as a test, so a change that moves a pick fails.

Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
adilalloandCursor committed 2026-11-04 14:22:54 -07:00
1 parent 96ca15d8e3
commit bcbc6f30d9
89 files changed
+36555 -2828

No files matched your search

+59 -57
View File
@@ -104,8 +104,10 @@ function bodyFromXlsxComposition(row: {
}
/**
* Curated template chip rows — sourced from product Template Composition.xlsx
* (Governance Template × category columns).
* Curated template chip rows. Chip titles are card labels from
* `messages/en/create/customRule/*.json` (October 2026 deck remake), so
* `methodSlugFromTitle` resolves each one to a live `methods[].id`.
* Values match `coreValues.json` labels (case-insensitive).
*/
const COMPOSITION_BY_SLUG: Record<
string,
@@ -118,95 +120,95 @@ const COMPOSITION_BY_SLUG: Record<
}
> = {
consensus: {
decisionMaking: "Consensus Decision-Making, Modified Consensus",
membership: "Consensus or Vote-Based Approval, Peer Sponsorship",
values: "Consensus, Community Care, Horizontalism",
communication: "In-Person Meetings, Loomio",
conflict: "Consensus Building, Facilitated Negotiation",
decisionMaking: "Decision speeds, Consensus decision-making, Modified consensus",
membership: "Members approve new members, Vouching",
values: "Consensus, Community care, Horizontalism",
communication: "How we run meetings, In-person meetings, Loomio",
conflict: "Conflict ladder, Mediation",
},
"consensus-clusters": {
decisionMaking: "Sociocracy, Holacracy",
membership: "Contribution Based, Orientation Required",
decisionMaking: "Consent (sociocracy), Delegated decision-making",
membership: "Join by contributing, Orientation",
values: "Decentralization, Adaptability, Autonomy",
communication: "Slack, Matrix / Element",
conflict: "Circle Processes, Restorative Practices",
communication: "How we run meetings, Shared records, Slack",
conflict: "Conflict ladder, Circle processes, Restorative practices",
},
"solidarity-network": {
decisionMaking: "Do-ocracy, Modified Consensus",
membership: "Open Access, Peer Sponsorship",
values: "Solidarity, Mutual Aid, Anti-oppression",
decisionMaking: "Do-ocracy, Modified consensus, Shared money",
membership: "Open admission, Vouching, Member groups",
values: "Solidarity, Mutual aid, Anti-oppression",
communication: "Signal, Matrix / Element",
conflict: "Peer Mediation, Restorative Practices",
conflict: "Conflict ladder, Restorative practices",
},
"sortition-jury": {
decisionMaking: "Lottery/Sortition, Deliberative Polling",
membership: "Lottery / Sortition",
decisionMaking: "Panel drawn by lot, Rotating roles",
membership: "Open admission, Roster upkeep",
values: "Fairness, Equity, Transparency",
communication: "In-Person Meetings, Video Meetings",
conflict: "Lottery/Sortition, Rotational Judging",
communication: "In-person meetings, Video meetings, Shared records",
conflict: "Conflict ladder, Hearing panel",
},
"liquid-democracy": {
decisionMaking: "Delegated Decision-Making, Continuous Voting",
membership: "Identity Verification, Open Access",
decisionMaking: "Liquid democracy, Continuous voting",
membership: "Open admission, One person one account",
values: "Agency, Flexibility, Transparency",
communication: "Loomio, Discourse (Forum)",
conflict: "Ad Hoc Arbitration, Peer Mediation",
communication: "Loomio, Discourse (forum)",
conflict: "Conflict ladder, Non-binding arbitration",
},
"do-ocracy": {
decisionMaking: "Do-ocracy, Lazy Consensus",
membership: "Contribution Based, Skill-Based Contribution",
decisionMaking: "Do-ocracy, Lazy consensus, Two-person sign-off",
membership: "Join by contributing, Rest and workload limits",
values: "Agency, Autonomy, Voluntarism",
communication: "GitHub / GitLab, Discord",
conflict: "Peer Mediation, Facilitated Negotiation",
conflict: "Conflict ladder, Mediation",
},
"quadratic-governance": {
decisionMaking: "Quadratic Voting",
membership: "Identity Verification, Pay-to-Join",
decisionMaking: "Quadratic voting, Two-person sign-off",
membership: "One person one account, Member share or dues",
values: "Fairness, Innovation, Independence",
communication: "Discourse (Forum), Discord",
conflict: "Supermajority Vote, Conflict Resolution Council",
communication: "Discourse (forum), Discord",
conflict: "Conflict ladder, Conflict working group",
},
"federated-clusters": {
decisionMaking: "Consensus Seeking with Delegates",
membership: "Hybrid Approval Process, Membership Agreement or Pledge",
decisionMaking: "Consensus seeking with delegates",
membership: "Member groups, Membership agreement",
values: "Interoperability, Localism, Interdependence",
communication: "Matrix / Element, Discourse (Forum)",
conflict: "Internal Tribunal, Ad Hoc Arbitration",
communication: "Matrix / Element, Discourse (forum)",
conflict: "Conflict ladder, Hearing panel, Non-binding arbitration",
},
devolution: {
decisionMaking: "Autocratic Decision-Making, Delegated Decision-Making",
membership: "Invitation Only, Open Access",
values: "Capacity Building, Education, Maintenance",
decisionMaking: "One person decides, Delegated decision-making",
membership: "Starting with one person, Open admission",
values: "Capacity building, Education, Maintenance",
communication: "Discord, GitHub / GitLab",
conflict: "Conflict Workshops, Managerial Decision",
conflict: "Conflict ladder, Conflict workshops, Managerial decision",
},
"benevolent-dictator": {
decisionMaking: "Autocratic Decision-Making, Hierarchical Decision-Making",
membership: "Invitation Only, Mentorship",
decisionMaking: "One person decides, Hierarchical decision-making",
membership: "Join by contributing, Contributors and maintainers",
values: "Reliability, Stewardship, Leadership",
communication: "Email Distribution List, GitHub / GitLab",
conflict: "Managerial Decision, Binding Contracts",
communication: "Email distribution list, GitHub / GitLab",
conflict: "Conflict ladder, Managerial decision",
},
petition: {
decisionMaking: "Ranked Choice Voting, Majority Rule",
membership: "Open Access, Identity Verification",
values: "Freedom of Information, Accountability, Participation",
communication: "Loomio, Discourse (Forum)",
conflict: "Supermajority Vote, Binding Arbitration",
decisionMaking: "Petition and referendum, Majority rule, Ranked choice voting",
membership: "Open admission, One person one account",
values: "Freedom of information, Accountability, Participation",
communication: "Loomio, Discourse (forum)",
conflict: "Conflict ladder, Non-binding arbitration, Legal action",
},
"self-appointed-board": {
decisionMaking: "Advisory Committees, Executive Committees",
membership: "Invitation Only, Application & Review",
decisionMaking: "Appointed board, Advisory committees, Coordinating committee",
membership: "Application and review, Paid staff",
values: "Stewardship, Resilience, Reliability",
communication: "Video Meetings, Email Distribution List",
conflict: "Judicial Committees, Internal Tribunal",
communication: "Video meetings, Email distribution list",
conflict: "Conflict ladder, Harassment and discrimination complaints, Hearing panel",
},
"elected-board": {
decisionMaking: "Elected Board of Directors, Majority Rule",
membership: "Application & Review, Membership Agreement or Pledge",
decisionMaking: "Elected board of directors, General meeting, Majority rule",
membership: "Application and review, Membership agreement",
values: "Accountability, Transparency, Trust",
communication: "Email Distribution List, Slack",
conflict: "Conflict Resolution Council, Mediation",
communication: "Email distribution list, Slack",
conflict: "Conflict ladder, Mediation, Conflict working group",
},
};
@@ -274,7 +276,7 @@ const TEMPLATES: {
description:
'Power is held by autonomous "cells." A central hub acts as a switchboard for resources but cannot dictate cell activities.',
sortOrder: 4,
featured: false,
featured: true,
body: bodyFromSlugComposition("solidarity-network"),
},
{
@@ -314,7 +316,7 @@ const TEMPLATES: {
description:
"Voting cost is squared (V²), preventing a majority from steamrolling a passionate minority.",
sortOrder: 8,
featured: true,
featured: false,
body: bodyFromSlugComposition("quadratic-governance"),
},
{