smart_ide/docs/ia_dev-submodule.md
Nicolas Cantu 7f1cee487c Cursor ia-dev bridge, versioned project confs, docv and ecosystem docs
- Add .cursor agents ia-dev-* and smart-ide-ia-dev-bridge rule
- Track ia_dev project conf under projects/smart_ide; link script for ia_dev/projects
- Document docv AI integration and ecosystem architecture/sync strategy
- Update README, platform-target, system-architecture, submodule doc
2026-04-03 16:30:42 +02:00

65 lines
2.9 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# Submodule `ia_dev`
The repository [4nk/ia_dev](https://git.4nkweb.com/4nk/ia_dev.git) is integrated as a **Git submodule** at `./ia_dev`.
It holds the **centralized AI agent team** (definitions under `.cursor/agents/`, `.cursor/rules/`), `deploy/`, `gitea-issues/`, etc. Les **`conf.json` par projet** pour ce monorepo sont versionnés sous **`./projects/<id>/` à la racine de `smart_ide`** (voir [projects/README.md](../projects/README.md)), pas mélangés avec les clones applicatifs (`../projects/` ou autre). Un **lien symbolique** `ia_dev/projects/smart_ide``../../projects/smart_ide` permet aux scripts ia_dev de résoudre `projects/smart_ide/conf.json`. Après chaque `git submodule update --init`, exécuter :
```bash
./scripts/ensure-ia-dev-smart-ide-project-link.sh
```
Execution remains **from the `ia_dev` root** per upstream README; `smart_ide` provides the surrounding IDE vision, host scripts, and systemd units.
## Clone with submodule
```bash
git clone --recurse-submodules https://git.4nkweb.com/4nk/smart_ide.git
cd smart_ide
```
## Submodule already present but empty
```bash
git submodule update --init --recursive
```
## Update to latest `ia_dev` commit
```bash
cd ia_dev
git fetch origin
git checkout <branch-or-tag> # e.g. main
cd ..
git add ia_dev
git commit -m "chore: bump ia_dev submodule"
```
## SSH remote for `ia_dev` (optional)
If you use SSH instead of HTTPS for the submodule:
```bash
git config submodule.ia_dev.url git@git.4nkweb.com:4nk/ia_dev.git
```
(Requires host key and deploy key configured for Gitea.)
## Relation to `smart_ide`
| Repository | Role |
|------------|------|
| **smart_ide** | IDE target UX, local AI stack scripts, systemd, docs for deployment |
| **ia_dev** (submodule) | Agent registry, deploy/ticketing/notary pipelines ; configs projet **smart_ide** dans `./projects/` (racine monorepo) + lien |
The future **agent gateway** should treat `./ia_dev` as the canonical checkout path on the server unless overridden by configuration. See [system-architecture.md](./system-architecture.md).
## Trajectoire : service `ia-dev-gateway`
Un service HTTP dédié ([features/ia-dev-service.md](./features/ia-dev-service.md), [API/ia-dev-gateway.md](./API/ia-dev-gateway.md)) prendra le relais pour les **clients** (Lapce, front, orchestrateur) : le sous-module reste la **source de vérité des fichiers** `ia_dev` jusquà migration vers un **fork** cloné ou embarqué au même chemin (`IA_DEV_ROOT`).
1. **Phase actuelle** : sous-module + exécution manuelle / scripts depuis la racine `ia_dev`.
2. **Phase gateway** : binaire `ia-dev-gateway` sur lhôte, `IA_DEV_ROOT` pointant vers `./ia_dev`.
3. **Phase fork** : le fork `ia_dev` est référencé par `smart_ide` (sous-module mis à jour vers le fork ou remplacement documenté) ; le gateway ne change pas de contrat HTTP.
Ne pas supprimer le sous-module tant que la CI et les postes de dev ne sont pas alignés sur le fork et le service.