Hacker Newsnew | past | comments | ask | show | jobs | submit | Nizoss's commentslogin

This is how I would also love to work but not all teams prefer this way. How many are you in your team? Was it easy to switch?


I twice worked in a teams where we did not use branches (or PRs). Both were working like that when I joined them.

The first was because we were svn (and maybe even csv before that, but I cannot remember) and that did not support branching easily. That team did switch to git, which did not go with its some struggles, and misconceptions, such as: "Never use rebase."

The second team was already working without branches and releasing a new version of the tool (the Bond3D Slicer for 3D printing) every night. It worked very well. Often we were able to implement and release new features within two or three days allowing the users to continue with their experiments.

When after some years the organization implemented more 'quality assurance' they demanded that we would make monthly releases that were formally tested by the users, we created branches for each release. The idea was that some of the users would test the releases before they were official released, but that testing would often take more than a month, one time even three months, because they were 'too busy' to do the formal review. But at the same time some users were using the daily builds because these builds had the features implemented that they needed. As a result of this, the quality did not improve and a lot of time was wasted, although the formal quality assurance, dictated by some ISO standard, was assured.

I have no experience with moving away from using branches. It might be a good idea to point your manager/team lead/scrum master to dora.dev or the YouTube channel: https://www.youtube.com/@ModernSoftwareEngineeringYT


I would love to hear your thoughts on TDD-Guard. An open source plugin I created to enfore Test-Driven Development practices on agents:

https://github.com/nizos/tdd-guard


Yes! This is something that I also value. Having demo gifs of before and after helps a lot. I have encountered situations where what I thought was a minor finishing clean up had an effect that I didn't anticipate. By including demos in the PR it becomes a kind of guardrail against those situations for me. I also think it is neat and generally helpful for everyone.


If you write your tests the Test-Driven Development way in that they first fail before production changes are introduced, you will be able to trust them a lot more. Especially if they are well-written tests that test behavior or contracts, not implementation details. I find that dependency injection helps a lot with this. I try to avoid mocking and complex dependencies as much as possible. This also allows me to easily refactor the code without having to worry about breaking anything if all the tests still pass.

When it comes to agentic coding. I created an open source tool that enforces those practices. The agent gets blocked by a hook if it tries to do anything that violates those principles. I think it helps a lot if I may say so myself.

https://github.com/nizos/tdd-guard

Edit: I realize now that I misunderstood your comment. I was quick to respond.


This looks really useful! Great work!


Thanks! I hope it helps with your workflow. Let me know if you find any bugs or have feature requests!


If you're on Windows and using vscode, add thiss to keybinds.json

[ { "key": "shift+enter", "command": "workbench.action.terminal.sendSequence", "args": { "text": "\u001b\n" }, "when": "terminalFocus" }, ]

It will allow you to get new lines without any strange output.


And here I am still waiting for some kind of hooks support for ChatGPT/Codex.


Same issue here, dark mode on mobile.


Yeah, this is a no brainer for certain use cases.


Thanks for the TL;DR!

Go support was recently added, and TDD-Guard also works with these frameworks:

JavaScript/TypeScript: Vitest and Jest Python: Pytest PHP: PHPUnit Go: Native go test

Adding a new language or framework just means creating a reporter that outputs test results in a format that TDD-Guard can consume.

I'm not familiar with Opencode. Is there something particular that interests you in it?


Yes, it is: https://opencode.ai/

You'd get more traction if you were somewhat agent agnostic, so you could support Codex, Opencode, Gemini CLI, etc.

Looking forward to expanding support for languages too. I'd be interested in Nim and Kotlin.


That sounds amazing! Thanks for the heads up!

I deliberately picked a vendor-agnostic name. Adding support for other clients mainly means extending IClient:

https://github.com/nizos/tdd-guard/blob/main/src%2Fcontracts...

https://github.com/nizos/tdd-guard/tree/main/src%2Fvalidatio...

I'll take a closer look into adding this support. I'd also welcome a contribution if that's something you would be interested in!

The question is, do other agent platforms support hooks or similar functionality?


I don't know but it's something really ought to be implemented by the agents. Is there an agent plugin standard? Mcp doesn't do enforcement like yours does it?


Not that I'm aware of. I'll check what possibilities exist with Opencode on their Discord.


Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: