Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion src/data/pageHints.ts
Original file line number Diff line number Diff line change
Expand Up @@ -168,7 +168,7 @@ export const pageHints: Record<string, PageHintEntry> = {
{
heading: "Governing threshold",
items: [
"Era, time left, and required vs completed actions (pool votes, chamber votes, court actions, proposals).",
"Era, time left, and required vs completed actions (pool votes, chamber votes).",
"Stay above threshold to remain active in quorum for the next era.",
],
},
Expand Down
8 changes: 4 additions & 4 deletions src/data/vortexopedia.ts
Original file line number Diff line number Diff line change
Expand Up @@ -923,7 +923,7 @@ export const vortexopediaTerms: VortexopediaTerm[] = [
long: [
"Era = 168 epochs; each epoch is ~4 hours.",
"Active if bioauthenticated and node ran 164/168 epochs and required actions met in previous era.",
"Required actions include voting/upvoting/downvoting proposals or chamber votes.",
"Required actions include proposal-pool votes and chamber votes.",
],
tags: ["era", "quorum", "activity", "governance"],
related: ["governor", "proof_of_governance_pog"],
Expand Down Expand Up @@ -1387,7 +1387,7 @@ export const vortexopediaTerms: VortexopediaTerm[] = [
"You are comfortably above the governing threshold pace for the current era. Status scale: Ahead → Stable → Falling behind → At risk → Losing status.",
long: [
"Ahead means you have already met (or are well on track to exceed) the era’s action threshold early, leaving a buffer for the rest of the era.",
"Staying Ahead typically requires continuing normal participation (votes/upvotes/court actions) while maintaining node uptime.",
"Staying Ahead typically requires continuing normal participation (pool votes and chamber votes) while maintaining node uptime.",
"This status is based on your completed actions vs required actions for the current governing era, not on proposal outcomes.",
],
tags: ["status", "governance", "threshold", "governor", "activity"],
Expand Down Expand Up @@ -1457,7 +1457,7 @@ export const vortexopediaTerms: VortexopediaTerm[] = [
"You are below the desired pace for the era’s governing threshold, but can still recover by completing more actions. Status scale: Ahead → Stable → Falling behind → At risk → Losing status.",
long: [
"Falling behind indicates you are not yet at the target action pace for the current era, but your deficit is still manageable.",
"To move back toward Stable, complete additional required actions (e.g., proposal pool votes, chamber votes, court actions) before the era ends.",
"To move back toward Stable, complete additional required actions (proposal-pool votes and chamber votes) before the era ends.",
"This status is meant to prompt action early enough to avoid becoming At risk.",
],
tags: ["status", "governance", "threshold", "governor", "activity"],
Expand Down Expand Up @@ -1492,7 +1492,7 @@ export const vortexopediaTerms: VortexopediaTerm[] = [
"You are unlikely to meet the governing threshold without immediate additional actions. Status scale: Ahead → Stable → Falling behind → At risk → Losing status.",
long: [
"At risk means your current action count is far enough below the era requirement that you may lose active governor status for the next era if you do not act.",
"To improve: complete additional required actions (pool votes, chamber votes, court actions, proposals) before the era ends and maintain node uptime.",
"To improve: complete additional required actions (pool votes and chamber votes) before the era ends and maintain node uptime.",
"This status summarizes your action deficit; it does not imply slashing or permanent removal—only loss of active quorum eligibility in the next era.",
],
tags: ["status", "governance", "threshold", "governor", "activity"],
Expand Down
7 changes: 6 additions & 1 deletion src/pages/proposals/ProposalCreation.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -113,6 +113,11 @@ const ProposalCreation: React.FC = () => {
persistPresetId("");
return;
}
if (preset.templateId !== templateKind) {
persistPresetId("");
setPresetId("");
return;
}
setDraft((prev) => {
const shouldSoftApply = !presetInitialized.current;
presetInitialized.current = true;
Expand All @@ -135,7 +140,7 @@ const ProposalCreation: React.FC = () => {
return next;
});
persistPresetId(preset.id);
}, [presetId]);
}, [presetId, templateKind]);

useEffect(() => {
const handle = window.setTimeout(() => {
Expand Down
13 changes: 1 addition & 12 deletions src/pages/proposals/proposalCreation/presets/registry.ts
Original file line number Diff line number Diff line change
Expand Up @@ -48,7 +48,6 @@ export type ProposalPresetId =
| "project.core.delegation"
| "project.core.security.policy"
| "project.core.protocol-upgrades.policy"
| "project.admin.governor-tiers.policy"
| "project.admin.formation.policy"
| "project.admin.chamber-rules.policy"
| "project.admin.veto.policy"
Expand Down Expand Up @@ -504,16 +503,6 @@ export const PROPOSAL_PRESETS: ProposalPreset[] = [
formationEligible: false,
recommendedChamber: "Engineering chamber",
},
{
id: "project.admin.governor-tiers.policy",
label: "Governor tiers",
description: "Update governor tiers, rights, and obligations.",
templateId: "project",
proposalType: "dao-core",
formationEligible: false,
recommendedChamber: "General chamber",
defaultChamberId: "general",
},
{
id: "project.admin.formation.policy",
label: "Formation procedures",
Expand Down Expand Up @@ -626,7 +615,7 @@ export const PROPOSAL_PRESETS: ProposalPreset[] = [
},
{
id: "project.dao_core.new-node-types.policy",
label: "Human node types",
label: "Human nodes types",
description: "Creation of new types of human nodes.",
templateId: "project",
proposalType: "dao-core",
Expand Down
4 changes: 4 additions & 0 deletions src/pages/proposals/proposalCreation/steps/EssentialsStep.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -248,6 +248,10 @@ export function EssentialsStep(props: {
const nextType = e.target
.value as ProposalDraftForm["proposalType"];
setHasChosenType(true);
if (templateId === "system") {
// Keep kind stable even when this type has no system presets.
onTemplateChange("system");
}
setDraft((prev) => ({
...prev,
proposalType: nextType,
Expand Down
1 change: 0 additions & 1 deletion tests/unit/proposal-presets.test.ts
Original file line number Diff line number Diff line change
Expand Up @@ -181,7 +181,6 @@ test("preset registry contains full v1 proposal tree ids", () => {
"project.core.delegation",
"project.core.security.policy",
"project.core.protocol-upgrades.policy",
"project.admin.governor-tiers.policy",
"project.admin.formation.policy",
"project.admin.chamber-rules.policy",
"project.admin.veto.policy",
Expand Down