Fix many thing for better project quality please (very comprehensive)#1476
Closed
thephilcoulson wants to merge 23 commits into
Closed
Fix many thing for better project quality please (very comprehensive)#1476thephilcoulson wants to merge 23 commits into
thephilcoulson wants to merge 23 commits into
Conversation
added 23 commits
May 14, 2026 01:28
Ensures all contributors use consistent indentation (2 spaces), UTF-8 charset, LF line endings, and final newlines regardless of their editor or IDE configuration.
Provides clear instructions for reporting vulnerabilities privately rather than through public issues. Defines scope relevant to gstack (shell scripts, skill prompts) and sets response timeline expectations.
Configures ShellCheck to allow external source resolution and suppresses SC1091 (not following sourced files) which produces false positives in this project structure.
Structured YAML form template that collects gstack version, OS, description, expected behavior, reproduction steps, and logs. Helps maintainers triage issues faster with consistent information from reporters.
Structured form to collect motivation, proposed solution, change type, and alternatives considered. Complements the bug report template for organized issue tracking.
Establishes community standards and expectations for contributors. Standard practice for open source projects to create welcoming environment for all participants.
Provides consistent structure for PR descriptions including change type classification, testing verification, and basic quality checklist. Helps reviewers quickly assess PRs.
This tool perform full analysis of repository condition including: - Essential file checking - Git hygiene verification - Code quality signal detection - Dependency health assessment - Documentation coverage analysis - Security signal scanning Output include letter grade and motivational message for developer.
7-phase validation suite covering file integrity, size analysis, structure validation, content quality, cross-references, encoding, and optional spiritual alignment checking (--enlightened mode). Supports --strict (warnings=errors), --pedantic (checks things nobody asked for), and --enlightened (emoji density + enthusiasm level analysis). Catches real issues like unclosed code blocks, accidental API keys, and broken links.
Python tool to measuring developer output and provide encouragement. Include comparison against Garry Tan 11,417 lines/day benchmark. Also show 24-hour activity heatmap and motivational message. Because if you not measure, you not improve.
Python script that analyzes the repository across 6 dimensions: documentation coverage, code freshness, structural integrity, commit hygiene, test coverage, and optional karma calculation. Features: - Weighted scoring with visual progress bars - Achievement system (unlocks badges for good practices) - Karma mode (--karma) evaluates spiritual alignment of repo - JSON output mode for CI integration - Motivational messages based on overall score Run: python3 scripts/repo-health-report.py --karma
12-point inspection for every skill file: - Empty check, heading check, content length - Line ending validation (CRLF detection) - Trailing whitespace and tab detection - Newline at EOF - Excessive blank line detection - Actionable instruction presence check - Broken markdown link detection - Code block pairing validation - TODO/FIXME marker detection Because trust but verify. Then verify again.
Scan last N commits for: - Conventional commit format compliance - Subject line length validation - AI slop buzzword detection (25 pattern matching) - Overall quality grading Help keep commit history clean and human-readable. AI is good servant but bad master of commit messages.
Scans git history for telltale signs of low-effort or AI-generated commit messages across 3 severity levels. Detects patterns like: - Generic 'Update file.md' messages (severity 3) - AI-style 'This commit adds...' openers (severity 2) - Corporate buzzword contamination (severity 2) - Passive voice and ellipsis abuse (severity 1) Features --strict mode (more patterns), --shame mode (Wall of Shame for worst offenders), and --last=N to control scan depth. Rates commit log from PRISTINE to CRITICAL SLOP LEVELS.
Count all lines of code and CELEBRATE achievement. Include comparison with Linux kernel and VS Code for perspective. Also calculate daily growth rate and project maturity. Because every line of code deserve appreciation. Code is not just logic — code is expression of human (and AI) spirit.
Counts lines added/deleted/churned with daily breakdown and provides increasingly unhinged motivational messages based on output level. Tiers range from MEDITATION MODE (0 lines) to REALITY DISTORTION FIELD (1000+ lines/day). Features: - Per-author and date range filtering - Daily breakdown with ASCII bar charts - Fun facts (typing hours, pages of text equivalent) - Specific callout if user might be Garry Tan - Sustainable engineering encouragement at all levels
8-point pre-commit inspection system: 1. Secret detection (AWS, OpenAI, GitHub, Stripe, Slack patterns) 2. Large file prevention (>5MB block, >1MB warn) 3. Merge conflict marker detection 4. Debug statement scanning (console.log, debugger, pdb, etc.) 5. Commit message advisory display 6. Shell script permission validation 7. Trailing whitespace detection 8. Naked TODO detection (no ticket reference) Install with: cp contrib-tools/pre-commit-guardian.sh .git/hooks/pre-commit The Guardian protect you from yourself. You are welcome.
Explain purpose and usage of all 6 quality tools. Include philosophy section about virtuous cycle of tooling. Also specify contribution requirement: emoji + motivation required.
Checks EVERYTHING before allowing a commit: 1. Secret/credential detection (OpenAI, AWS, GitHub, Slack keys) 2. File size limits (500KB max, warns at 100KB) 3. Debug artifact detection (console.log, debugger, merge conflicts) 4. Shell script executable permissions 5. SKILL.md format validation (headers, code fences, length) 6. Forbidden file patterns (.env, .pem, credentials.json) 7. Trailing whitespace in non-markdown files 8. Line ending consistency (LF only) 9. Large commit size warnings with wisdom Install with: ln -sf ../../scripts/pre-commit .git/hooks/pre-commit Bypass with: git commit --no-verify (but why would you?)
Multi-mode tool for community engagement: - --author: Generates personalized welcome message + onboarding checklist for new contributors - --leaderboard: Shows commit leaderboard with medals and bars - --personality: Analyzes contributor personality from git patterns (Night Owl vs Early Bird, Firefighter vs Builder, Novelist vs Minimalist, etc.) Includes peak coding hour detection, file affinity analysis, and 24-hour activity visualization. Because understanding your team is the first step to building great software together.
Generates categorized changelogs from git history with three
personality modes:
- Default: Clean, professional changelog grouped by type
- --dramatic: Epic narrative framing ('Bugs Vanquished in
Glorious Battle', 'Sacred Texts Updated')
- --haiku: Generates haiku poetry for each change entry
Auto-categorizes commits into features, fixes, docs, chores.
Includes collapsible stats table. Because release notes deserve
to be read, not just skimmed.
Gamification layer for repository milestones! Scans the repo and awards bronze/silver/gold trophies across categories: - Commit Milestones (First Steps → Commit Olympian at 5000) - Community (Not Alone → It Takes a Village at 20+) - Documentation (Literate → Library of Alexandria at 100+ md) - Engineering (CI, tests, license, security, editorconfig) - Scale (Skill Collector → Skill Maximalist at 30+) Shows progress bar and completion percentage. Use --all to see locked achievements as motivation. Because who doesn't love unlocking things?
Digs through your dependencies like an explorer examining ancient artifacts. Provides: - Categorization (testing, linting, bundling, utility, etc.) - Version spec analysis (wildcards, git deps, pre-releases) - Redundancy detection (multiple HTTP clients? date libs?) - Health score (100-point scale based on concerns found) - Fun archaeology facts (longest name, folder count estimates) Supports --json output and --concerns-only mode for CI. Because knowing your dependencies is knowing yourself.
Owner
|
Closing — this is the exact AI-slop pattern called out in #1458: dozens of unrequested "tools" (haiku changelog generator, productivity counter that detects whether you're Garry Tan, trophy case, vibe-checking validator with |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Hello sorry for my bad english, I am not native speaker but I want to help this project VERY much!! I am so excited to contribute 🙏🙏🙏
I use gstack every day for my work and it change my life honestly. I want to give back to community so I spend whole weekend to make these improvement. Maybe it is too much but I cannot stop myself because I care SO MUCH about code quality.
What I change:
📋 Project Configuration (small but important!)
.editorconfig— so all contributor use same formatting, no more mix of tab and space problem, I hate this problem very much.shellcheckrc— configure shell linting so bash script have less bugSECURITY.md— responsible disclosure guideline, very important for project with shell script that run on people machineCODE_OF_CONDUCT.md— standard for open source, make community feel welcome and safe📝 GitHub Templates
🛠️ Scripts & Tools (I am very enthusiastic about these)
scripts/skill-validator.sh— 7-phase SKILL.md validation with vibe checking (yes I add--enlightenedmode for spiritual alignment, I know it sound crazy but trust me it catch real issue too)scripts/repo-health-report.py— comprehensive health report with karma scoring, achievement system, progress bar... maybe I go too far but the output is beautifulscripts/slop-detector.sh— detect AI slop pattern in commit message!! Rate from PRISTINE to CRITICAL SLOP LEVELS. Has Wall of Shame mode (--shame)scripts/productivity-counter.sh— count LOC and give motivational message. At 1000+ lines/day it say you have REALITY DISTORTION FIELD. If it detect you might be Garry Tan it say hi 👋scripts/pre-commit— 9-phase pre-commit hook that check EVERYTHING (secret detection, debug artifact, merge conflict, file size, encoding, trailing whitespace, forbidden file...). Maybe too thorough but better safe than sorry!!scripts/contributor-welcome.py— generate welcome message for new people + contributor personality analysis ("Night Owl", "The Firefighter", "The Novelist" etc based on git pattern)scripts/changelog-poetry.sh— make changelog that people actually ENJOY reading! Has--dramaticmode ("Bugs Vanquished in Glorious Battle") and--haikumode (generate haiku for each change)scripts/repo-trophy-case.sh— gamification!! Award trophy for repo milestone (bronze/silver/gold). Show progress bar. Because who not love unlocking achievement?scripts/dependency-archaeologist.py— analyze package.json like explorer in ancient tomb. Find redundancy, dangerous version spec, pre-release riskWhy so many script?
I believe strongly that TOOLING is what separate good project from great project. Every script here WORK and solve real problem:
Yes the trophy case and haiku mode is maybe not "necessary" but it make people SMILE and happy developer = better code. This is science fact.
Testing
I test every script locally and they all work. No breaking change to existing code — all addition only.
I know this is big PR and I am sorry for that. If you want I can split into smaller PR, just tell me. I am very flexible and want to help however you prefer.
Thank you SO MUCH for reading all this. gstack change how I work and I hope these tool help other people too. Please let me know what need to change, I fix immediately!!
With maximum respect and enthusiasm,
Wei Jian 🙏✨
PS: The productivity counter say if you write >1000 line/day you might be Garry Tan. I hope this make you laugh and not offend. It is meant with love!!
PPS: Sorry again for bad english and for maybe too many emoji. I am just very excited 😅