# Questionnaire Category 00b: Project-Level Questions

> **Loaded by:** step-01-cadrage (when multi-application mode detected)
> **Condition:** Only loaded when user confirms "Multiple applications"
> **Purpose:** Gather project-level information that spans all applications

---

## Questions

### Q0b.1: Project Name
```
question: "{language == 'fr' ? 'Quel nom souhaitez-vous donner au projet global ?' : 'What name would you like for the overall project?'}"
header: "Projet"
options:
  - label: "{suggested_project_name}"
    description: "{language == 'fr' ? 'Nom suggéré basé sur votre description' : 'Suggested name based on your description'}"
  - label: "{language == 'fr' ? 'Personnaliser' : 'Customize'}"
    description: "{language == 'fr' ? 'Choisir un autre nom' : 'Choose another name'}"
```

### Q0b.2: Deployment Model
```
question: "{language == 'fr' ? 'Comment ces applications seront-elles déployées ?' : 'How will these applications be deployed?'}"
header: "Déploiement"
options:
  - label: "{language == 'fr' ? 'Ensemble' : 'Together'}"
    description: "{language == 'fr' ? 'Toutes les applications sont déployées en même temps' : 'All applications deployed at the same time'}"
  - label: "{language == 'fr' ? 'Par phases' : 'Phased'}"
    description: "{language == 'fr' ? 'Chaque application est livrée séparément, par priorité' : 'Each application delivered separately, by priority'}"
```

### Q0b.3: Cross-Application Data Flows
```
question: "{language == 'fr' ? 'Existe-t-il des flux de données entre les applications identifiées ?' : 'Are there data flows between the identified applications?'}"
header: "Flux"
options:
  - label: "{language == 'fr' ? 'Oui, plusieurs' : 'Yes, several'}"
    description: "{language == 'fr' ? 'Des données sont partagées entre applications (ex: employés RH utilisés par le self-service)' : 'Data is shared between applications (e.g., HR employees used by self-service)'}"
  - label: "{language == 'fr' ? 'Quelques liens' : 'A few links'}"
    description: "{language == 'fr' ? 'Peu de dépendances entre applications' : 'Few dependencies between applications'}"
  - label: "{language == 'fr' ? 'Indépendantes' : 'Independent'}"
    description: "{language == 'fr' ? 'Les applications sont autonomes, pas de données partagées' : 'Applications are autonomous, no shared data'}"
```

### Q0b.4: Global vs Per-Application Roles
```
question: "{language == 'fr' ? 'Les rôles utilisateur sont-ils partagés entre applications ?' : 'Are user roles shared across applications?'}"
header: "Rôles"
options:
  - label: "{language == 'fr' ? 'Rôles globaux' : 'Global roles'}"
    description: "{language == 'fr' ? 'Les mêmes rôles (admin, manager...) s'appliquent à toutes les applications' : 'Same roles (admin, manager...) apply to all applications'}"
  - label: "{language == 'fr' ? 'Rôles spécifiques' : 'Specific roles'}"
    description: "{language == 'fr' ? 'Chaque application a ses propres rôles (ex: RH Admin vs Employee)' : 'Each application has its own roles (e.g., HR Admin vs Employee)'}"
  - label: "{language == 'fr' ? 'Mixte' : 'Mixed'}"
    description: "{language == 'fr' ? 'Certains rôles sont globaux, d'autres spécifiques à une application' : 'Some roles are global, others are application-specific'}"
```

### Q0b.5: Shared Infrastructure
```
question: "{language == 'fr' ? 'Quelles infrastructures partagées doivent être prises en compte ?' : 'What shared infrastructure needs to be considered?'}"
header: "Infra"
multiSelect: true
options:
  - label: "SSO / Auth"
    description: "{language == 'fr' ? 'Authentification unique entre applications' : 'Single sign-on between applications'}"
  - label: "Notifications"
    description: "{language == 'fr' ? 'Service de notification partagé (email, in-app)' : 'Shared notification service (email, in-app)'}"
  - label: "{language == 'fr' ? 'Base de données partagée' : 'Shared database'}"
    description: "{language == 'fr' ? 'Toutes les applications partagent la même base de données' : 'All applications share the same database'}"
  - label: "{language == 'fr' ? 'Aucune' : 'None'}"
    description: "{language == 'fr' ? 'Chaque application est autonome' : 'Each application is autonomous'}"
```

---

## Mapping to Project Feature.json

| Question | Target Field |
|----------|-------------|
| Q0b.1 | `metadata.projectName` |
| Q0b.2 | `cadrage.deploymentModel` |
| Q0b.3 | Informs `applicationDependencyGraph.edges[]` |
| Q0b.4 | Informs `cadrage.globalRoles[]` vs per-app `applications[].applicationRoles[]` |
| Q0b.5 | `cadrage.sharedInfrastructure[]` |
