Skip to content

feat: improve repository best practices compliance (40% → 90%+)#151

Draft
Copilot wants to merge 3 commits intomainfrom
copilot/improve-repository-compliance
Draft

feat: improve repository best practices compliance (40% → 90%+)#151
Copilot wants to merge 3 commits intomainfrom
copilot/improve-repository-compliance

Conversation

Copy link
Contributor

Copilot AI commented Mar 12, 2026

Three Plures org best practices were missing: conventional commit enforcement (practice-003), and Svelte 5 design system adoption (practice-006). The CI/CD pipeline (practice-005) was already in place via release.yml → reusable workflow.

practice-003 — Conventional Commits enforcement

  • Added .github/workflows/pr-lint.yml validating PR titles against type(scope)!: description format (min 3-char description)
  • Fails CI with examples on mismatch

practice-006 — Svelte 5 runes + @plures/design-dojo

State management: Replaces lib/stores.ts (legacy writable/derived) with lib/state.svelte.ts — a runes-based DbState class:

class DbState {
  nodes     = $state<Record<string, NodeItem>>({});
  selectedId = $state<string | null>(null);
  settings  = $state<AppSettings>({});
  readonly selected = $derived.by((): NodeItem | null =>
    this.selectedId ? (this.nodes[this.selectedId] ?? null) : null,
  );
}
export const db = new DbState();

App.svelte redesigned using @plures/design-dojo/layout components:

  • TitleBar + Tabs replaces hand-rolled <nav> with 24 manual buttons
  • Sidebar for collapsible node list in the Data view
  • StatusBar / StatusBarItem / StatusBarSpacer for bottom status

ViewKey type is derived from the tabs array via as const satisfies Tab[] — single source of truth.

Migrated components from legacy store subscriptions ($store) and Svelte 4 event directives (on:click) to runes + onclick: NodeList, NodeDetail, SearchPanel, SettingsPanel, GraphView, Notebooks, VirtualList.

Vite config: @tauri-apps/api/window externalized — TitleBar conditionally wires Tauri window controls; not available in the web-only build target.

Note: imports use @plures/design-dojo/layout sub-path rather than the package root due to a duplicate SyncIndicator export in the package's main index.js.

Original prompt

This section details on the original issue you should resolve

<issue_title>Improve Repository Best Practices Compliance (40% → 90%+)</issue_title>
<issue_description>## 📊 Current Compliance Score: 40%

This repository is missing key Plures organization best practices. Based on automated analysis, we need to implement the following practices to improve compliance:

Missing Practices (3/5 applicable):

  1. practice-005: Standardized CI/CD pipeline (required)

    • Add .github/workflows/release.yml calling plures/.github/.github/workflows/release-reusable.yml@main
    • Enables: lint → test → build → sign → publish pipeline
    • Benefits: Uniform releases, code signing, automated publishing
  2. practice-003: Conventional Commits (recommended)

    • Use format: feat(scope): description, fix(scope): description
    • Enables: Automated changelog generation, semantic versioning
  3. practice-006: Svelte 5 design system (required for UI components)

    • Use @plures/design-dojo components instead of custom UI
    • Only applies if this repo has UI components

Implementation Plan:

  1. Week 1: Add standardized CI/CD pipeline
  2. Week 2: Adopt conventional commits format + documentation

Expected Impact:

  • Compliance score: 40% → 90%+
  • Reduced cognitive overhead for releases
  • Consistent quality gates across ecosystem
  • Automated artifact signing and publishing

References:

@copilot Please implement the missing best practices, prioritizing the required CI/CD pipeline first.</issue_description>

Comments on the Issue (you are @copilot in this section)


💡 You can make Copilot smarter by setting up custom instructions, customizing its development environment and configuring Model Context Protocol (MCP) servers. Learn more Copilot coding agent tips in the docs.

Copilot AI review requested due to automatic review settings March 12, 2026 15:49
Copilot AI review requested due to automatic review settings March 12, 2026 15:49
@kayodebristol
Copy link
Contributor

This PR is still marked Draft.

To get this to merge:

  • Convert to "Ready for review" once CI is green and the description includes: what changed, why, and how to test.
  • Ensure all required checks pass (CI).
  • If conflicts exist, rebase/merge main and resolve.

If you want me to make it Ready once it's safe, say so in a comment.

…onents

Co-authored-by: kayodebristol <3579196+kayodebristol@users.noreply.github.com>
Copilot AI requested review from Copilot and removed request for Copilot March 12, 2026 16:06
… regex

Co-authored-by: kayodebristol <3579196+kayodebristol@users.noreply.github.com>
Copilot AI requested review from Copilot and removed request for Copilot March 12, 2026 16:11
Copilot AI changed the title [WIP] Improve repository best practices compliance to 90% feat: improve repository best practices compliance (40% → 90%+) Mar 12, 2026
@kayodebristol kayodebristol self-requested a review March 12, 2026 16:24
@kayodebristol
Copy link
Contributor

This PR is still marked Draft.

To get this to merge:

  • Convert to "Ready for review" once CI is green and the description includes: what changed, why, and how to test.
  • Ensure all required checks pass (CI).
  • If conflicts exist, rebase/merge main and resolve.

If you want me to make it Ready once it's safe, say so in a comment.

@kayodebristol
Copy link
Contributor

This PR is still marked Draft.

To get this to merge:

  • Convert to "Ready for review" once CI is green and the description includes: what changed, why, and how to test.
  • Ensure all required checks pass (CI).
  • If conflicts exist, rebase/merge main and resolve.

If you want me to make it Ready once it's safe, say so in a comment.

@kayodebristol
Copy link
Contributor

This PR is still marked Draft.

To get this to merge:

  • Convert to "Ready for review" once CI is green and the description includes: what changed, why, and how to test.
  • Ensure all required checks pass (CI).
  • If conflicts exist, rebase/merge main and resolve.

If you want me to make it Ready once it's safe, say so in a comment.

@kayodebristol
Copy link
Contributor

This PR is still marked Draft.

To get this to merge:

  • Convert to "Ready for review" once CI is green and the description includes: what changed, why, and how to test.
  • Ensure all required checks pass (CI).
  • If conflicts exist, rebase/merge main and resolve.

If you want me to make it Ready once it's safe, say so in a comment.

@kayodebristol
Copy link
Contributor

This PR is still marked Draft.

To get this to merge:

  • Convert to "Ready for review" once CI is green and the description includes: what changed, why, and how to test.
  • Ensure all required checks pass (CI).
  • If conflicts exist, rebase/merge main and resolve.

If you want me to make it Ready once it's safe, say so in a comment.

@kayodebristol
Copy link
Contributor

This PR is still marked Draft.

To get this to merge:

  • Convert to "Ready for review" once CI is green and the description includes: what changed, why, and how to test.
  • Ensure all required checks pass (CI).
  • If conflicts exist, rebase/merge main and resolve.

If you want me to make it Ready once it's safe, say so in a comment.

@kayodebristol
Copy link
Contributor

This PR is still marked Draft.

To get this to merge:

  • Convert to "Ready for review" once CI is green and the description includes: what changed, why, and how to test.
  • Ensure all required checks pass (CI).
  • If conflicts exist, rebase/merge main and resolve.

If you want me to make it Ready once it's safe, say so in a comment.

@kayodebristol
Copy link
Contributor

This PR is still marked Draft.

To get this to merge:

  • Convert to "Ready for review" once CI is green and the description includes: what changed, why, and how to test.
  • Ensure all required checks pass (CI).
  • If conflicts exist, rebase/merge main and resolve.

If you want me to make it Ready once it's safe, say so in a comment.

@kayodebristol
Copy link
Contributor

This PR is still marked Draft.

To get this to merge:

  • Convert to "Ready for review" once CI is green and the description includes: what changed, why, and how to test.
  • Ensure all required checks pass (CI).
  • If conflicts exist, rebase/merge main and resolve.

If you want me to make it Ready once it's safe, say so in a comment.

@kayodebristol
Copy link
Contributor

This PR is still marked Draft.

To get this to merge:

  • Convert to "Ready for review" once CI is green and the description includes: what changed, why, and how to test.
  • Ensure all required checks pass (CI).
  • If conflicts exist, rebase/merge main and resolve.

If you want me to make it Ready once it's safe, say so in a comment.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Improve Repository Best Practices Compliance (40% → 90%+)

2 participants