Constat
La serie SmartContracts (SC-1 a SC-15) est actuellement une collection de cellules print() qui affichent du code Solidity en texte. Les notebooks ne contiennent aucun code executable - ni compilation, ni deploiement, ni interaction avec des contrats.
Problemes identifies
- Pas d'execution reelle : tout le "code" Solidity est dans des
print() Python
- Pas de feedback etudiant : impossible de tester, deboguer ou experimenter
- Exercices fragiles : les solutions etaient directement dans les cellules (corrige dans commit f2d02c2)
- Aucune interaction blockchain : pas de deploiement, pas d'appels de fonctions, pas de tests
Objectif
Refondre la serie pour que les notebooks soient reellement executables avec des interactions blockchain en local.
Pistes techniques a discuter
| Approche |
Avantages |
Inconvenients |
| py-solc-x + web3.py |
Standard, bien documente |
Necessite solc installe |
| Brownie |
Framework complet (tests, deploy) |
Projet archive, migration vers Ape |
| Ape Framework |
Successeur de Brownie, actif |
API differente, moins de docs |
| Foundry (forge) |
Tres rapide, standard industrie |
CLI, pas natif Python |
| Ganache / Anvil |
Blockchain locale pour tests |
Dependance externe |
| Remix API |
Zero install |
Dependance reseau |
Plan propose (a valider)
- Phase 1 : Choisir le stack technique (discussion avec l'utilisateur)
- Phase 2 : Refondre SC-1 a SC-4 (fondations Solidity) avec code executable
- Phase 3 : Refondre SC-5 a SC-7 (tokens, DeFi, DAO) avec interactions reelles
- Phase 4 : Adapter SC-8 a SC-15 (securite, gas, testing, cross-chain)
- Phase 5 : Creer des exercices avec tests automatises (assertions, pas de print)
Contraintes
- Doit fonctionner sur les machines etudiants (Windows/Mac/Linux)
- Installation minimale (idealement pip install uniquement)
- Compatible avec le kernel Python 3 standard
- Les notebooks existants servent de base pour le contenu pedagogique
Labels
enhancement
symbolicai
smartcontracts
Deadline
EPITA IA Symbolique : 20 mai 2026 (si SmartContracts fait partie du programme)
Constat
La serie SmartContracts (SC-1 a SC-15) est actuellement une collection de cellules
print()qui affichent du code Solidity en texte. Les notebooks ne contiennent aucun code executable - ni compilation, ni deploiement, ni interaction avec des contrats.Problemes identifies
print()PythonObjectif
Refondre la serie pour que les notebooks soient reellement executables avec des interactions blockchain en local.
Pistes techniques a discuter
Plan propose (a valider)
Contraintes
Labels
enhancementsymbolicaismartcontractsDeadline
EPITA IA Symbolique : 20 mai 2026 (si SmartContracts fait partie du programme)