Der-Albert.com;18864 wrote:
The problem in this case is that NCrunch currently runs only under Windows. So the IDE cannot work inside because NCrunch and the IDE need access to the source code. So it would be possible to mount the code in the container, but then the file system performance would be terrible. For the IDE and the agent working inside the container, it would be the best scenario. But this would leave NCrunch out.
Yes, the Windows-only limitation is starting to get much more painful now. AI seems to be naturally gravitating towards linux based setups.
As I've discussed much throughout this forum, Linux support is not in scope for NCrunch right now. It would theoretically be a massive piece of work, since the product was never designed with it in mind. There's a couple of things that give me some hope here though:
1. An AI-only version of NCrunch wouldn't need a GUI. Porting the GUI to Linux is the hardest part.
2. Agents are getting really good at handling these sorts of problems. I don't think we're quite there yet, but this may eventually be something I can task to an agent and have it perform two years worth of work autonomously.
So I'm hopeful. On my personal list of things I want from NCrunch, Linux support is at the top of the list. I make no promises right now.
Der-Albert.com;18864 wrote:
We know that NCrunch has a Grid Node Server. It can run the test independently on a different machine. The code and the server part of the IDE could live in the container. And on the Client/Host (inside the IDE), NCrunch acts like a "local" grid node, and on the Container, it is just running a small NCrunch Files service that just transports the files from the Container to the host (or other Grid Nodes, with the IDE NCrunch as a proxy if needed).
With that, I would say it would be possible to lock the container with minimal rights in the container. Work inside the container via remote development, and NCrunch could still run the test on the Windows host. And NCrunch could still work as I type and run the tests as fast as possible. Of course I think working inside a container is not for every type of application, but that is an application and not an NCrunch problem.
I'm not sure if I completely understand the boundaries of this, but if we have an NCrunch grid node running on a Windows machine, doesn't that mean that the containerised agent has the ability to execute code outside the container? And wouldn't that be a security risk?
Without a Linux-capable grid node or MCP server, we don't have a way to let an agent run tests inside a Linux based container. The setup I'm using personally involves a Linux VM hosting the agent, which has broad access to a Windows based VM running the NCrunch MCP server with grid node. Access controls are then placed around the VMs using an external firewall. This seems to work well, though I honestly have no idea if such a setup would be allowed inside a larger organisation with more constraints.
Der-Albert.com;18864 wrote:
As we are moving increasingly to AI-assisted coding, I would love to see such a possibility. And I think compliance and security will require AI development inside containers in the near future, if a company does not do this already. And that would also rule out the usage of NCrunch when there is no possibility.
I think it's reasonable to expect that there will be security and compliance standards establishing how agents should be controlled. I have to admit though that with the pace the technology is moving right now, the standards may simply be playing catch-up. There is probably more disruption coming. Some possibilities:
- What if model architectures develop the ability to cheaply train in real time? (i.e evolving intelligence)
- What if the massive push to build AI chips results in oversupply and prices crash? It might become economical for organisations to host their own models outside the datacentre
- What if the intelligence of models reaches a point where we cannot reasonably contain them, or they become more trustworthy than the people tasked to do so?
Whether any of these are actually realistic is probably a matter of opinion at this stage, but there is a lot that could change the way that trust boundaries are established around AI. Building an MCP server for NCrunch was clearly a sensible choice, because people wanted it immediately and they wanted it badly. Building things based on speculation about the technology or the standards around it is harder to justify.
Probably the safest choice would be to just add Linux support. It's just hard, so it's not done yet :)