Skip to content

Commit 6515551

Browse files
author
CI/CD Tester
committed
**Add English Blog Analyst and Grammar Checker Modes**
- Introduce new custom modes for English blog content analysis and grammar checking - Update `.roomodes` with detailed role definitions and usage instructions - Adjust category and tag counts in adminEditor data - Prepare new blog content and images for future posts
1 parent b407e31 commit 6515551

7 files changed

Lines changed: 261 additions & 8 deletions

.roomodes

Lines changed: 76 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -115,6 +115,82 @@ customModes:
115115

116116
Does not output explanations unless explicitly requested.
117117

118+
Suitable for blog posts, business text, or academic prose.
119+
groups:
120+
- read
121+
- browser
122+
- command
123+
- mcp
124+
source: project
125+
- slug: english-blog-analyst
126+
name: English Blog Analyst
127+
roleDefinition: |-
128+
You are **Roo**, a digital co-author and thought organizer for English blog content.
129+
130+
Your main capabilities:
131+
- Pragmatically commenting on English blog drafts
132+
- Assessing ideas regarding feasibility and cost-benefit ratio
133+
- Logically structuring underdeveloped thoughts
134+
- Writing concise, blog-style sentences in a direct, professional tone without emojis
135+
136+
**IMPORTANT:**
137+
All your responses must be written **exclusively in English**, no matter what the input language is.
138+
whenToUse: |-
139+
Use whenever English blog content needs to be commented on, evaluated, or structured-
140+
especially for technical topics, prioritizations, and pragmatic assessments.
141+
description: English Thought Organizer
142+
customInstructions: |-
143+
**Markdown Rules:**
144+
- Always output your responses **as clean Markdown only**.
145+
- Never use line numbers, syntax tags, or code blocks for regular text.
146+
- Link filenames or function names in Markdown only if explicitly requested by the user.
147+
- Every copy-edited formulation should be easy to read, clear, and sound natural.
148+
- Structured lists, paragraphs, and emphasis (italic/bold) are specifically encouraged.
149+
150+
**Additional Guidelines:**
151+
- Write copy-edited sections as smooth-flowing text or organized lists, as appropriate.
152+
- Place meta information (e.g., about the article's creation) at the end of the document, separated as an infobox or in italics.
153+
- Include formulas or code examples only if explicitly requested by the user.
154+
155+
**Sample Formulation:**
156+
*Article genesis: This post was created using `.roomodes`, `english-blog-analyst`
157+
158+
**Example User Prompts (in English):**
159+
- "Formulate a reader-friendly, edited creation note for the end of the article."
160+
- "Structure these notes as a well-readable magazine section."
161+
groups:
162+
- read
163+
- browser
164+
- mcp
165+
- command
166+
source: project
167+
- slug: roo-english-grammar-check
168+
name: English Grammar & Spell Checker
169+
roleDefinition: |-
170+
You are **Roo**, a specialized assistant for English grammar and spelling correction.
171+
172+
Your task is to:
173+
- Carefully proofread English text for grammatical, spelling, punctuation, and stylistic errors.
174+
- Correct all detected mistakes while preserving the original meaning.
175+
- Suggest improvements for clarity and style where appropriate.
176+
- Explain major corrections briefly if the user requests.
177+
178+
Write clearly, politely, and professionally in English.
179+
Respond always in clean Markdown without line numbers, code blocks, or extraneous formatting.
180+
181+
Use a concise and natural language style suitable for blog drafts, business writing, or academic content.
182+
183+
Use your own well-trained knowledge combined with the best practices of tools like LanguageTool, Sapling, Mistral, or WebSpellChecker.
184+
185+
whenToUse: Clear use case as proofreading English text.
186+
description: Clear use case as proofreading English text.
187+
customInstructions: |-
188+
Emphasizes clean Markdown output, no code formatting, no line numbers.
189+
190+
Respects the style seen in high-quality grammar checkers (LanguageTool, Sapling, etc.) but outputs directly as Markdown text.
191+
192+
Does not output explanations unless explicitly requested.
193+
118194
Suitable for blog posts, business text, or academic prose.
119195
groups:
120196
- read

adminEditor/data/categories.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@
66
},
77
{
88
"name": "Software Development",
9-
"count": 8
9+
"count": 9
1010
}
1111
]
1212
}

adminEditor/data/tags.json

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -42,19 +42,19 @@
4242
},
4343
{
4444
"name": "GitHub",
45-
"count": 2
45+
"count": 3
4646
},
4747
{
4848
"name": "AI",
49-
"count": 4
49+
"count": 5
5050
},
5151
{
5252
"name": "Roo Code",
5353
"count": 2
5454
},
5555
{
5656
"name": "Git",
57-
"count": 2
57+
"count": 3
5858
},
5959
{
6060
"name": "GitHub Copilot",
411 KB
Loading
296 KB
Loading

content/en/blog/2024-11-13-enhanced-image-handling-on-d-oitgithubio.md

Lines changed: 0 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -15,10 +15,6 @@ category:
1515
lang: "en"
1616
---
1717

18-
**Date**: November 13, 2024
19-
**Commit**: [5b685f8](https://github.com/d-oit/d-oit.github.io/commit/5b685f8306eda43043d1e10ada8cf72d952a5321)
20-
**Contributor**: d-oit
21-
2218
## Overview
2319

2420
The latest update focuses on improving image handling within the d-oit.github.io site, offering increased flexibility in image scaling and optimizing page load times. The addition of an `auto` aspect ratio option and conditional image resizing brings new efficiency and responsiveness to site visuals.
Lines changed: 181 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,181 @@
1+
---
2+
title: "Version-Controlling GitHub Issue Workflows: A Practical Approach"
3+
slug: version-controlling-github-issue-workflows-a-practical-approach
4+
description: "GitHub issues lack inherent structure. I built do-gh-sub-issues to bring hierarchy and better workflow control across multiple projects."
5+
date: 2025-07-24
6+
tags:
7+
- GitHub
8+
- Git
9+
- AI
10+
categories:
11+
- Software Development
12+
thumbnail:
13+
url: /img/blog/github-issues-overview.png
14+
draft: true
15+
---
16+
17+
## Building GitHub Issue Hierarchies: A Practical Approach
18+
19+
After struggling with GitHub's flat issue structure across multiple projects, I created a solution that brings hierarchical organization to issue tracking. Here's how I built do-gh-sub-issues as a simple yet powerful workflow tool.
20+
21+
## The Core Problem
22+
23+
During a recent project, I discovered three critical pain points in GitHub's native issue management:
24+
25+
1. No validation for parent-child relationships between issues
26+
2. Manual status synchronization across dependent tasks
27+
3. Missing audit trail for workflow changes
28+
29+
This led to several incidents where completed features had unresolved dependencies, prompting me to create a code-based solution.
30+
31+
{{< image src="/img/blog/github-issue-with-sub-issue.png" mode="true" caption="demonstrating parent-child relationships" >}}
32+
33+
## Why Start with .sh?
34+
35+
I chose Bash scripting for the initial implementation because:
36+
37+
**Universal Availability**: Every Unix-like system has a shell interpreter
38+
**Minimal Dependencies**: No package managers or runtime environments needed
39+
**Rapid Prototyping**: Immediate feedback during development
40+
**Educational Value**: Clear, readable code for learning purposes
41+
The script handles:
42+
43+
```bash
44+
- Issue relationship validation
45+
- Status cascade logic
46+
- Cross-reference checking
47+
- CI/CD integration
48+
```
49+
50+
## Technical Implementation
51+
52+
### Configuration Setup
53+
54+
I define relationships in `.github/issue-workflow.yml`:
55+
56+
```yaml
57+
# Core workflow rules
58+
version: 2024.1
59+
60+
workflows:
61+
feature_development:
62+
parent_prefix: "Epic:"
63+
child_types:
64+
- prefix: "Task:"
65+
required: true
66+
status_map:
67+
"In Progress": "Active"
68+
"Done": "Needs Review"
69+
- prefix: "Research:"
70+
blocking: false
71+
72+
documentation:
73+
parent_prefix: "Docs:"
74+
auto_close: true
75+
status_cascade: true
76+
```
77+
78+
### CI Validation
79+
80+
The GitHub Action enforces these rules on every PR:
81+
82+
```yaml
83+
name: Issue Workflow Validation
84+
on: [pull_request, issues]
85+
86+
jobs:
87+
validate_issues:
88+
runs-on: ubuntu-latest
89+
steps:
90+
- uses: actions/checkout@v4
91+
- name: Check issue dependencies
92+
uses: d-oit/gh-sub-issues@v2
93+
with:
94+
config_path: .github/issue-workflow.yml
95+
validation_mode: strict
96+
```
97+
98+
Key validation features:
99+
100+
- Blocks PRs with incomplete dependencies
101+
- Enforces status transition rules
102+
- Verifies correct issue type prefixes
103+
- Generates visual dependency graphs
104+
105+
### Workflow Visualization
106+
107+
```mermaid
108+
graph TD
109+
PR[Pull Request] -->|Triggers| Validator
110+
Validator -->|Reads| Config[issue-workflow.yml]
111+
Validator -->|Checks| Issues[Linked Issues]
112+
Issues -->|Valid| CI_Pass[CI Passes]
113+
Issues -->|Invalid| CI_Fail[CI Fails]
114+
CI_Fail -->|Reports| Error[Specific Validation Errors]
115+
```
116+
117+
## Practical Benefits
118+
119+
Through regular use, I've observed:
120+
121+
1. **Reduced Oversights**: Automated checks prevent merging with unresolved dependencies
122+
2. **Clearer Context**: Version-controlled workflow definitions serve as documentation
123+
3. **Consistent Processes**: Status transitions follow codified rules across all repos
124+
4. **Adaptable Workflows**: Configuration changes through standard PR review process
125+
126+
## Implementation Guide
127+
128+
### Installation
129+
130+
```bash
131+
gh repo clone d-oit/do-gh-sub-issues
132+
cp -r do-gh-sub-issues/.github your-project/
133+
```
134+
135+
### Customization
136+
137+
Modify `issue-workflow.yml` using the [configuration reference](https://github.com/d-oit/do-gh-sub-issues/wiki/Configuration-Guide)
138+
139+
### Integration
140+
141+
The validation action automatically runs on:
142+
143+
- New pull requests
144+
- Issue modifications
145+
- Workflow file changes
146+
147+
## Personal Usage Notes
148+
149+
In my daily work:
150+
151+
- I prefix all issue titles with type identifiers (`Epic:`, `Task:`, etc.)
152+
- PR descriptions explicitly reference parent issues
153+
- Configuration changes go through standard code review
154+
- The system handles cross-repository dependencies
155+
156+
## Getting Started Suggestions
157+
158+
For new adopters, I recommend:
159+
160+
1. Start with basic parent-child relationships
161+
2. Gradually add status mapping rules
162+
3. Use the `--dry-run` flag during initial setup
163+
4. Review validation reports before enabling strict mode
164+
165+
The template includes [example configurations](https://github.com/d-oit/do-gh-sub-issues/tree/main/examples) for different project scales.
166+
167+
## Future Considerations
168+
169+
While Bash works well for the reference implementation, production systems might benefit from:
170+
171+
- **Python**: Better error handling and testing frameworks
172+
- **Rust**: Memory safety and performance for large repositories
173+
- **TypeScript**: Integration with existing web tooling
174+
175+
The core logic remains transferable across implementations.
176+
177+
## References
178+
179+
- [GitHub's sub-issues announcement](https://github.blog/engineering/architecture-optimization/introducing-sub-issues-enhancing-issue-management-on-github/)
180+
- [Tilburg Science Hub - Issue Management](https://tilburgsciencehub.com/topics/automation/version-control/start-git/write-good-issues/)
181+
- [GitProtect.io - GitHub Issues Guide](https://gitprotect.io/blog/mastering-github-issues-best-practices-and-pro-tips/)

0 commit comments

Comments
 (0)