git rebase --onto: mueve los commits a una base nueva
Entiende git rebase --onto con grafos concretos: mueve ramas apiladas, extrae commits y corrige una base equivocada sin arrastrar historial ajeno a tu rama.
class ContactRequestSerializer(serializers.Serializer):
email = serializers.EmailField()
mission = serializers.ChoiceField(choices=Mission.choices)
message = serializers.CharField(min_length=10)
def test_rejects_a_short_message(api_client):
response = api_client.post("/api/contact/", {"message": "too short"})
assert response.status_code == 400class ContactRequest(BaseModel):
email: EmailStr
mission: Mission
message: str = Field(min_length=10)
@app.post("/api/contact", status_code=202)
async def contact(request: ContactRequest, mailer: Mailer = Depends(get_mailer)):
await mailer.send(request)
return {"sent": True}func (r ContactRequest) Validate() error {
if _, err := mail.ParseAddress(r.Email); err != nil {
return fmt.Errorf("email: %w", err)
}
if utf8.RuneCountInString(r.Message) < 10 {
return errors.New("message: too short")
}
return nil
}| Servicio | Lo que obtienes |
|---|---|
| Python | |
| DJANGODRFNINJA | APIs REST con Django REST Framework o Django Ninja, diseñadas o retomadas, con tests y documentación. |
| FASTAPI | Servicios asíncronos tipados con Pydantic y documentación OpenAPI generada. |
| FLASK | Servicios ligeros, o la recuperación y migración de una aplicación existente. |
| Go | |
| SERVICIOS GO | Servicios Go rápidos y sobrios, con la misma exigencia de tests y arquitectura. |
| Arquitectura y calidad | |
| HEXAGONALDDD | El negocio aislado del framework, cuando el dominio lo justifica. |
| REFACTORINGTDD | Un código saneado: SOLID, Clean Code, primero los tests. |
| IA nativa | |
| AGENTES PYDANTIC AI | Agentes IA en tu producto, con salidas validadas y testeadas. |
| SERVIDORES MCP | Tus datos y herramientas expuestos a los modelos, con permisos bajo control. |
Un agente conectado a un código frágil acelera sobre todo los bugs. Como una cercha de madera, un proyecto aguanta porque cada pieza absorbe un esfuerzo concreto.
Pasa el cursor sobre una pieza para verla en la estructura.
Artículos técnicos en dev-flow.io: Django y su ORM, TDD, arquitectura, despliegue.
Describe el contexto: el stack actual, el tamaño del equipo, el plazo. Cuanto más concreto, más concreta será mi primera respuesta.
Circonflex, desarrollo backend