Skip to content

feat: QCHAT_PROCESS_ID and pre-push hook. #1368

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Open
wants to merge 6 commits into
base: main
Choose a base branch
from

Conversation

jsamuel1
Copy link
Collaborator

Q Chat now sets an environment variable with its process id, which may be used by downstream processes (MCP Servers, Shell Commands, Git hooks), to specify behaviour based on being run inside Q Chat.

A sample git pre-push hook is included in docs/samples/ to show how it could work, and the husky hooks in the project have been updated to include the push prevention.

By submitting this pull request, I confirm that you can use, modify, copy, and redistribute this contribution, under the terms of your choice.

…_PROCESS_ID"

This is designed to allow tools to check if they are running inside the context of a Q Chat child process, such as an MCP server, Q Chat calling a shell command, or in git hooks.

Included a sample of what a pre-push-hook may look like that uses this.
…at sessions

This hook checks for the QCHAT_PROCESS_ID environment variable and blocks
push operations when an Amazon Q chat session is active, preventing
accidental pushes during interactive sessions.

🤖 Assisted by [Amazon Q Developer](https://aws.amazon.com/q/developer)
Remove the deprecated husky initialization lines from .husky/pre-push to
prevent failures with husky v10.0.0.

🤖 Assisted by [Amazon Q Developer](https://aws.amazon.com/q/developer)
@jsamuel1 jsamuel1 requested a review from a team as a code owner April 26, 2025 03:34
@codecov-commenter
Copy link

codecov-commenter commented Apr 26, 2025

Codecov Report

Attention: Patch coverage is 0% with 21 lines in your changes missing coverage. Please review.

Project coverage is 14.29%. Comparing base (d1794d9) to head (9f75545).
Report is 2 commits behind head on main.

Files with missing lines Patch % Lines
crates/q_chat/src/lib.rs 0.00% 21 Missing ⚠️
Additional details and impacted files
@@            Coverage Diff             @@
##             main    #1368      +/-   ##
==========================================
- Coverage   14.29%   14.29%   -0.01%     
==========================================
  Files        2335     2335              
  Lines      201913   201933      +20     
  Branches   182277   182297      +20     
==========================================
+ Hits        28862    28863       +1     
- Misses     171646   171664      +18     
- Partials     1405     1406       +1     

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.
  • 📦 JS Bundle Analysis: Save yourself from yourself by tracking and limiting bundle sizes in JS merges.

@jsamuel1 jsamuel1 self-assigned this Apr 26, 2025
@jsamuel1 jsamuel1 added the enhancement New feature or request label Apr 26, 2025
@brandonskiser
Copy link
Contributor

Hey! Sorry for the late response - can you rebase main and push again?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants