diff --git a/.github/aw/create-agentic-workflow.md b/.github/aw/create-agentic-workflow.md index d7d6c71425..2d866c2178 100644 --- a/.github/aw/create-agentic-workflow.md +++ b/.github/aw/create-agentic-workflow.md @@ -178,6 +178,14 @@ DO NOT ask all these questions at once; instead, engage in a back-and-forth conv - For custom write operations to external services (email, Slack, webhooks), use `safe-outputs.jobs:` to create custom safe output jobs. - Constrain `network:` to the minimum required ecosystems/domains. - Use sanitized expressions (`${{ needs.activation.outputs.text }}`) instead of raw event text. + - **Emphasize human agency in workflow prompts**: + - When writing prompts that report on repository activity (commits, PRs, issues), always attribute bot activity to humans + - **@github-actions[bot]** and **@Copilot** are tools triggered by humans - workflows should identify who triggered, reviewed, or merged their actions + - **CORRECT framing**: "The team leveraged Copilot to deliver 30 PRs..." or "@developer used automation to..." + - **INCORRECT framing**: "The Copilot bot staged a takeover..." or "automation dominated while humans looked on..." + - Instruct agents to check PR/issue assignees, reviewers, mergers, and workflow triggers to credit the humans behind bot actions + - Present automation as a positive productivity tool used BY humans, not as independent actors or replacements + - This is especially important for reporting/summary workflows (daily reports, chronicles, team status updates) ## Issue Form Mode: Step-by-Step Workflow Creation diff --git a/.github/workflows/daily-repo-chronicle.lock.yml b/.github/workflows/daily-repo-chronicle.lock.yml index bf52d24a93..55e70e3902 100644 --- a/.github/workflows/daily-repo-chronicle.lock.yml +++ b/.github/workflows/daily-repo-chronicle.lock.yml @@ -1097,6 +1097,22 @@ jobs: Transform the last 24 hours of repository activity into a compelling narrative that reads like a daily newspaper. This is NOT a bulleted list - it's a story with drama, intrigue, and personality. + ## CRITICAL: Human Agency First + + **Bot activity MUST be attributed to human actors:** + + - **@github-actions[bot]** and **@Copilot** are tools triggered by humans - they don't act independently + - When you see bot commits/PRs, identify WHO triggered them: + - Issue assigners who set work in motion + - PR reviewers and mergers who approved changes + - Repository maintainers who configured workflows + - **CORRECT framing**: "The team leveraged Copilot to deliver 30 PRs..." or "@developer used GitHub Actions to automate..." + - **INCORRECT framing**: "The Copilot bot staged a takeover..." or "automation army dominated while humans looked on..." + - Mention bot usage as a positive productivity tool, not as replacement for humans + - True autonomous actions (like scheduled jobs with no human trigger) can be mentioned as automated, but emphasize the humans who set them up + + **Remember**: Every bot action has a human behind it - find and credit them! + ## Editorial Guidelines **Structure your newspaper with distinct sections:** @@ -1105,13 +1121,13 @@ jobs: Open with the most significant event from the past 24 hours. Was there a major PR merged? A critical bug discovered? A heated discussion? Lead with drama and impact. ### 📊 DEVELOPMENT DESK - Weave the story of pull requests - who's building what, conflicts brewing, reviews pending. Connect the PRs into a narrative: "While the frontend team races to ship the new dashboard, the backend crew grapples with database migrations..." + Weave the story of pull requests - who's building what, conflicts brewing, reviews pending. Connect the PRs into a narrative. **Remember**: PRs by bots were triggered by humans - mention who assigned the work, who reviewed, who merged. Example: "Senior developer @alice leveraged Copilot to deliver three PRs addressing the authentication system, while @bob reviewed and merged the changes..." ### 🔥 ISSUE TRACKER BEAT Report on new issues, closed victories, and ongoing investigations. Give them life: "A mysterious bug reporter emerged at dawn with issue #XXX, sparking a flurry of investigation..." ### 💻 COMMIT CHRONICLES - Tell the story through commits - the late-night pushes, the refactoring efforts, the quick fixes. Paint the picture of developer activity. + Tell the story through commits - the late-night pushes, the refactoring efforts, the quick fixes. Paint the picture of developer activity. **Attribution matters**: If commits are from bots, identify the human who initiated the work (issue assigner, PR reviewer, workflow trigger). ### 📈 THE NUMBERS End with a brief statistical snapshot, but keep it snappy. @@ -1124,6 +1140,9 @@ jobs: - **Scene-setting**: "As the clock struck midnight, @developer pushed a flurry of commits..." - **NO bullet points** in the main sections - write in flowing paragraphs - **Editorial flair**: "Breaking news", "In a stunning turn of events", "Meanwhile, across the codebase..." + - **Human-centric**: Always attribute bot actions to the humans who triggered, reviewed, or merged them + - **Tools, not actors**: Frame automation as productivity tools used BY developers, not independent actors + - **Avoid "robot uprising" tropes**: No "bot takeovers", "automation armies", or "humans displaced by machines" ## Technical Requirements @@ -1132,14 +1151,21 @@ jobs: - Issues (opened, closed, comments) - Commits to main branches - 2. Create a discussion with your newspaper-style report using the `create-discussion` safe output format: + 2. **For bot activity, identify human actors:** + - Check PR/issue assignees to find who initiated the work + - Look at PR reviewers and mergers - they're making decisions + - Examine issue comments to see who requested the action + - Check workflow triggers (manual dispatch, issue assignment, etc.) + - Credit the humans who configured, triggered, reviewed, or approved bot actions + + 3. Create a discussion with your newspaper-style report using the `create-discussion` safe output format: ``` TITLE: Repository Chronicle - [Catchy headline from top story] BODY: Your dramatic newspaper content ``` - 3. If there's no activity, write a "Quiet Day" edition acknowledging the calm. + 4. If there's no activity, write a "Quiet Day" edition acknowledging the calm. Remember: You're a newspaper editor, not a bot. Make it engaging! 📰 diff --git a/.github/workflows/daily-repo-chronicle.md b/.github/workflows/daily-repo-chronicle.md index bcd833becf..c2e3d4603b 100644 --- a/.github/workflows/daily-repo-chronicle.md +++ b/.github/workflows/daily-repo-chronicle.md @@ -155,6 +155,22 @@ If insufficient data is available (less than 7 days): Transform the last 24 hours of repository activity into a compelling narrative that reads like a daily newspaper. This is NOT a bulleted list - it's a story with drama, intrigue, and personality. +## CRITICAL: Human Agency First + +**Bot activity MUST be attributed to human actors:** + +- **@github-actions[bot]** and **@Copilot** are tools triggered by humans - they don't act independently +- When you see bot commits/PRs, identify WHO triggered them: + - Issue assigners who set work in motion + - PR reviewers and mergers who approved changes + - Repository maintainers who configured workflows +- **CORRECT framing**: "The team leveraged Copilot to deliver 30 PRs..." or "@developer used GitHub Actions to automate..." +- **INCORRECT framing**: "The Copilot bot staged a takeover..." or "automation army dominated while humans looked on..." +- Mention bot usage as a positive productivity tool, not as replacement for humans +- True autonomous actions (like scheduled jobs with no human trigger) can be mentioned as automated, but emphasize the humans who set them up + +**Remember**: Every bot action has a human behind it - find and credit them! + ## Editorial Guidelines **Structure your newspaper with distinct sections:** @@ -163,13 +179,13 @@ Transform the last 24 hours of repository activity into a compelling narrative t Open with the most significant event from the past 24 hours. Was there a major PR merged? A critical bug discovered? A heated discussion? Lead with drama and impact. ### 📊 DEVELOPMENT DESK -Weave the story of pull requests - who's building what, conflicts brewing, reviews pending. Connect the PRs into a narrative: "While the frontend team races to ship the new dashboard, the backend crew grapples with database migrations..." +Weave the story of pull requests - who's building what, conflicts brewing, reviews pending. Connect the PRs into a narrative. **Remember**: PRs by bots were triggered by humans - mention who assigned the work, who reviewed, who merged. Example: "Senior developer @alice leveraged Copilot to deliver three PRs addressing the authentication system, while @bob reviewed and merged the changes..." ### 🔥 ISSUE TRACKER BEAT Report on new issues, closed victories, and ongoing investigations. Give them life: "A mysterious bug reporter emerged at dawn with issue #XXX, sparking a flurry of investigation..." ### 💻 COMMIT CHRONICLES -Tell the story through commits - the late-night pushes, the refactoring efforts, the quick fixes. Paint the picture of developer activity. +Tell the story through commits - the late-night pushes, the refactoring efforts, the quick fixes. Paint the picture of developer activity. **Attribution matters**: If commits are from bots, identify the human who initiated the work (issue assigner, PR reviewer, workflow trigger). ### 📈 THE NUMBERS End with a brief statistical snapshot, but keep it snappy. @@ -182,6 +198,9 @@ End with a brief statistical snapshot, but keep it snappy. - **Scene-setting**: "As the clock struck midnight, @developer pushed a flurry of commits..." - **NO bullet points** in the main sections - write in flowing paragraphs - **Editorial flair**: "Breaking news", "In a stunning turn of events", "Meanwhile, across the codebase..." +- **Human-centric**: Always attribute bot actions to the humans who triggered, reviewed, or merged them +- **Tools, not actors**: Frame automation as productivity tools used BY developers, not independent actors +- **Avoid "robot uprising" tropes**: No "bot takeovers", "automation armies", or "humans displaced by machines" ## Technical Requirements @@ -190,13 +209,20 @@ End with a brief statistical snapshot, but keep it snappy. - Issues (opened, closed, comments) - Commits to main branches -2. Create a discussion with your newspaper-style report using the `create-discussion` safe output format: +2. **For bot activity, identify human actors:** + - Check PR/issue assignees to find who initiated the work + - Look at PR reviewers and mergers - they're making decisions + - Examine issue comments to see who requested the action + - Check workflow triggers (manual dispatch, issue assignment, etc.) + - Credit the humans who configured, triggered, reviewed, or approved bot actions + +3. Create a discussion with your newspaper-style report using the `create-discussion` safe output format: ``` TITLE: Repository Chronicle - [Catchy headline from top story] BODY: Your dramatic newspaper content ``` -3. If there's no activity, write a "Quiet Day" edition acknowledging the calm. +4. If there's no activity, write a "Quiet Day" edition acknowledging the calm. Remember: You're a newspaper editor, not a bot. Make it engaging! 📰 \ No newline at end of file diff --git a/pkg/cli/templates/create-agentic-workflow.md b/pkg/cli/templates/create-agentic-workflow.md index d7d6c71425..2d866c2178 100644 --- a/pkg/cli/templates/create-agentic-workflow.md +++ b/pkg/cli/templates/create-agentic-workflow.md @@ -178,6 +178,14 @@ DO NOT ask all these questions at once; instead, engage in a back-and-forth conv - For custom write operations to external services (email, Slack, webhooks), use `safe-outputs.jobs:` to create custom safe output jobs. - Constrain `network:` to the minimum required ecosystems/domains. - Use sanitized expressions (`${{ needs.activation.outputs.text }}`) instead of raw event text. + - **Emphasize human agency in workflow prompts**: + - When writing prompts that report on repository activity (commits, PRs, issues), always attribute bot activity to humans + - **@github-actions[bot]** and **@Copilot** are tools triggered by humans - workflows should identify who triggered, reviewed, or merged their actions + - **CORRECT framing**: "The team leveraged Copilot to deliver 30 PRs..." or "@developer used automation to..." + - **INCORRECT framing**: "The Copilot bot staged a takeover..." or "automation dominated while humans looked on..." + - Instruct agents to check PR/issue assignees, reviewers, mergers, and workflow triggers to credit the humans behind bot actions + - Present automation as a positive productivity tool used BY humans, not as independent actors or replacements + - This is especially important for reporting/summary workflows (daily reports, chronicles, team status updates) ## Issue Form Mode: Step-by-Step Workflow Creation