MMonthAnchor
Espacio de programación con IA

Cambio de mes con ajuste de día

Desplaza una fecha por meses completos y limita el día al último del mes de destino.

● ● ●MonthAnchor●
Flujos de trabajo · Cambio de mes con ajuste de día ×
from calendar import monthrange
from datetime import date

def add_months(day, delta):
    if type(day) is not date or type(delta) is not int:
        raise ValueError("month.input")
    year, month0 = divmod(day.year * 12 + day.month - 1 + delta, 12)
    if not 1 <= year <= 9999:
        raise ValueError("month.year")
    last = monthrange(year, month0 + 1)[1]
    return date(year, month0 + 1, min(day.day, last))
✳Cambio de mes con ajuste de día
✓ CambiosRevisa antes de aplicar ↗
Vista ilustrativa
Proyecto
Prueba el 31 de enero en años bisiestos y comunes y un desplazamiento negativo, rechazando fracciones y años fuera del rango.
Revisa antes de aplicar
Compara el comportamiento real con el resultado esperado. Si una prueba falla, investiga la causa antes de hacer más cambios.
Modelos
Configura un endpoint compatible con OpenAI o Anthropic usando la URL base y, si hace falta, una clave API. Prueba la conexión. Un servidor local debe estar en ejecución; las herramientas remotas pueden enviar datos por separado.
Flujos de trabajo

Cambio de mes con ajuste de día

Flujos de trabajo ↗
Flujos de trabajo
from calendar import monthrange
from datetime import date

def add_months(day, delta):
    if type(day) is not date or type(delta) is not int:
        raise ValueError("month.input")
    year, month0 = divmod(day.year * 12 + day.month - 1 + delta, 12)
    if not 1 <= year <= 9999:
        raise ValueError("month.year")
    last = monthrange(year, month0 + 1)[1]
    return date(year, month0 + 1, min(day.day, last))
Espacio de programación con IA

Convierte las expectativas del calendario en comportamiento explícito del software

Los cambios de fechas suelen ocultar una decisión de producto dentro de una función auxiliar. MonthAnchor es un entorno de programación con IA para Windows donde analizar esa decisión con la implementación a la vista. Abre tu proyecto y describe el resultado de calendario esperado antes de pedir al modelo conectado que edite el código. Incluye el código que depende del comportamiento actual, no solo la función de fechas.

Un recordatorio recurrente ofrece una tarea concreta: adelantar una fecha un mes cuando su día no existe en el mes de destino. Pide al asistente que inspeccione la regla actual y proponga un cambio solo después de decidir si debe limitar el día al último disponible o seguir otra política. Ese recordatorio es un escenario de desarrollo, no un servicio de programación de tareas incluido.

Revisa la propuesta a lo largo de operaciones sucesivas. Limitar el día una vez puede afectar a lo que ocurre al añadir otro mes, así que define si debe recordarse en otra parte el día de referencia original. Ejecuta pruebas del proyecto para finales de mes, años bisiestos y el intervalo de años admitido. Comprueba la fecha mostrada al usuario además del valor inmediato devuelto por la función antes de aceptar el cambio.

MonthAnchor se conecta a endpoints compatibles con OpenAI o de Anthropic admitidos. Un modelo de IA con los mecanismos de rechazo eliminados puede ayudar cuando lo ofrezca el servicio configurado; los límites de contexto y las herramientas dependen de esa configuración. El modelo puede proponer código de calendario, pero tus requisitos determinan si su comportamiento es correcto.

Antes de cambiar el comportamiento basado en meses

¿Por qué especificar el avance por meses por separado de los días transcurridos?

Las dos operaciones responden a requisitos distintos. Un recordatorio en una fecha de calendario puede no seguir una duración fija. Indica al asistente qué regla promete la aplicación y comprueba si la implementación propuesta la conserva para los meses cortos.

¿Qué ocurre cuando una fecha ajustada vuelve a avanzar?

Depende de si la aplicación recuerda un día de referencia original o utiliza el último resultado como nueva entrada. Indica explícitamente la secuencia prevista. Prueba varios avances en lugar de suponer que un único resultado correcto demuestra el comportamiento recurrente.

¿Debe este parche añadir también gestión de zonas horarias?

Solo si el requisito afectado implica horas o conversiones de zona. Una función que solo maneja fechas puede tener un contrato deliberadamente más limitado. Pregunta qué código que la llama necesita comportamiento adicional antes de ampliar el parche a otra clase de problema de calendario.

¿Qué límites merecen un caso de prueba para la revisión?

Incluye meses de destino cortos, una transición de año bisiesto, movimientos negativos y los límites de años admitidos. Escribe los resultados esperados según la política de tu aplicación. Ejecuta esos casos en el proyecto en lugar de depender únicamente de los ejemplos del asistente.

Descargar para Windows ↗

MonthAnchor · Actualizado 2026-10-25