Sistema de ámbitos
Sistema de ámbitos
El sistema de alcance controla dónde son visibles y compartidas las secciones reutilizables de FaceFlow.
Para usuarios técnicos, el alcance es una de las reglas arquitectónicas centrales en FaceFlow. Decide si una sección reutilizable se comporta como un recurso global, un recurso de familia de páginas o un recurso local solo de página.
Three Scope Levels
- Sitio: compartido en todo el sitio
- Diseño: compartido entre Páginas que usan el mismo Diseño
- Página: local a una Página
Technical Mental Model
Piensa en el alcance como un contrato de visibilidad e impacto de cambios adjunto a una instancia de sección reutilizable.
Conceptualmente:
{
"component": "announcement-strip",
"scope": "site"
}El campo importante no es la forma exacta de almacenamiento. La regla importante es que el alcance determina con qué amplitud debe reutilizarse esa instancia y con qué amplitud se propagará una edición posterior.
Why Scope Matters
El alcance evita que la reutilización se convierta en caos.
Sin reglas de alcance, los equipos o bien:
- duplican el mismo bloque en todas partes
- comparten en exceso un bloque que debería haberse quedado local
- pierden la trazabilidad de qué cambios afectan a qué Páginas
El alcance hace explícitos esos límites.
Mental Model
Site scope
-> affects all relevant Pages across the site
Layout scope
-> affects Pages that share one Layout
Page scope
-> affects only one PageEsto no es una preferencia de contenido. Es una regla sobre el impacto de los cambios.
Example Instance Mapping
Un ensamblaje de Página simplificado podría verse así:
Layout: docs-shell
Site scope:
announcement-strip
Layout scope:
docs-sidebar
docs-subnav
Page scope:
release-notes-cta
migration-faqEse único diagrama explica dos hechos técnicos importantes:
- no todas las secciones reutilizables se comparten por igual
- la revisión de cambios debe tener en cuenta el alcance antes de aprobar la edición
Scope Examples
Alcance del sitio
Úsalo cuando una sección debe comportarse como un recurso de todo el sitio.
Ejemplos:
- barra de anuncios global
- franja de soporte para navegación compartida
- banner de confianza usado en todo el sitio
Alcance del diseño
Úsalo cuando una sección pertenece a una familia de páginas.
Ejemplos:
- barra lateral de docs usada solo en páginas de documentación
- subnavegación compartida para una sección de servicio
- carril de soporte a nivel de sección para una familia de diseños
Alcance de la página
Úsalo cuando la sección es única para una Página.
Ejemplos:
- un hero de campaña único
- una franja de CTA local
- FAQ o bloque de pruebas específico de la página
Change Radius Example
El mismo tipo de sección puede ser válido en diferentes alcances dependiendo de la intención:
announcement-strip at Site scope
-> change affects all relevant Pages
announcement-strip at Layout scope
-> change affects one page family
announcement-strip at Page scope
-> change affects only one PagePor eso el alcance debe elegirse según el radio de impacto previsto, no por la conveniencia del editor.
Decision Rule
Hazte una pregunta:
If I change this section, which Pages should change with it?Si la respuesta es:
- "todas las Páginas relevantes" -> Sitio
- "Páginas en esta familia" -> Diseño
- "solo esta Página" -> Página
Example Composition
Site scope:
global-announcement
Layout scope:
docs-sidebar
Page scope:
pricing-faqEse modelo mantiene la reutilización intencional y hace predecible el impacto de los cambios.
Architectural Guidance
Usa el alcance para responder estas preguntas técnicas:
- ¿dónde debe ser descubrible esta instancia?
- ¿cuántas Páginas deben heredar futuras ediciones?
- ¿quién debería ser el responsable del cambio?
- ¿qué nivel de revisión se justifica antes de publicar?
En la práctica:
- el alcance Sitio generalmente necesita la revisión más estricta porque el impacto es amplio
- el alcance Diseño requiere conciencia de la familia de páginas
- el alcance Página es el lugar más seguro para experimentación local
Technical Impact
El alcance afecta:
- dónde está disponible una sección reutilizable
- cuántas Páginas puede afectar un cambio
- cómo los equipos razonan sobre la propiedad
- cómo se mantiene la estructura compartida con el tiempo
Por eso las decisiones de alcance deben tratarse como decisiones arquitectónicas, no como elecciones por conveniencia del editor.
Review Pattern
Cuando un equipo propone ampliar el alcance, revísalo como un cambio arquitectónico:
page -> layout
question: is this section now shared by a durable page family?
layout -> site
question: does this section now belong to the broader site, not one section?Si la respuesta es "no realmente", probablemente se esté ampliando el alcance demasiado pronto.
Technical Review Checklist
- ¿el alcance elegido coincide con el radio de impacto previsto?
- ¿la sección es realmente reutilizable a ese nivel?
- ¿un editor futuro entendería por qué la sección se comparte?
- ¿la sección contiene contenido que debería haberse quedado local?
- ¿se está copiando una sección supuestamente local en muchas Páginas?
Antipatrones
Evita:
- alcance de sitio para contenido que solo necesita una familia de páginas
- alcance de página para contenido copiado en muchas Páginas
- alcance de diseño para contenido que pertenece al shell global del sitio
- ampliar el alcance solo para ahorrar trabajo a corto plazo
Example Rule in Practice
Main navigation utility bar -> Site scope
Developer docs sidebar -> Layout scope
Landing page final CTA -> Page scopeRelated Design Rule
El alcance debe revisarse junto con la responsabilidad del objeto:
- si el cambio afecta al shell, revisa el Layout
- si el cambio afecta a un contrato de sección reutilizable, revisa el Component
- si el cambio afecta solo a una experiencia ensamblada, revisa la Page