3.6.0: grabaciones siempre por día y por fuente, grabadoras en su carpeta, y «Organizar carpetas»

Las grabaciones van siempre a su día de rodaje y dentro a una carpeta por fuente; el DJI Mic, la Tascam y
las Zoom se reconocen por su nombre y van a DJI_MIC, TASCAM y ZOOM en vez de caer juntas en AUDIO. El plan
repasa lo ya ordenado sin carpeta de día o con la grabadora en AUDIO. «Mapa» pasa a «Organizar carpetas»:
el árbol salía en fila por una regla CSS del ejemplo de tipo de trabajo; ahora va en vertical a toda la
altura y a la derecha, fijos, «Qué va en esta carpeta» y «¿Dónde va a parar este archivo?».

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Este commit está contenido en:
Labstream
2026-10-14 06:11:34 -05:00
padre 91618474a0
commit 93b8f4843d
Se han modificado 6 ficheros con 131 adiciones y 67 borrados

Ver fichero

@@ -509,7 +509,7 @@ def p_entrada():
assert esperar(lambda: get('/api/estado')['traer'].get('estado') not in ('copiando', 'ordenando'), 120)
tr = get('/api/estado')['traer']
assert tr['estado'] == 'listo' and tr['copiados'] == 1 and not tr['errores_n'], tr
final = os.path.join(RAIZ, '2026', '08- Agosto', '00_Grabacion', 'DJI', 'DJI_0007.MP4')
final = os.path.join(RAIZ, '2026', '08- Agosto', '00_Grabacion', '10- Lunes', 'DJI', 'DJI_0007.MP4')
assert os.path.isfile(final), 'no llegó a su sitio: %s' % [x for x in arbol() if 'dji' in x]
assert os.path.getsize(final) == 700_000 and abs(os.path.getmtime(final) - t) < 2, 'la copia no conserva peso o fecha'
assert os.path.isfile(clip), 'tocó la tarjeta'
@@ -524,7 +524,7 @@ def p_entrada():
assert any(x['clave'] == 'entrada' and x['estado'] == 'toca' for x in a['acciones']), [x['clave'] for x in a['acciones']]
c, o = post('/api/entrada/ordenar', {'raiz': RAIZ})
assert c == 200 and o['movimientos'] >= 1 and not o['errores'] and o['quedan'] == 0, o
assert os.path.isfile(os.path.join(RAIZ, '2026', '08- Agosto', '00_Grabacion', 'SONY', 'C0099.MP4')), [x for x in arbol() if 'c0099' in x]
assert os.path.isfile(os.path.join(RAIZ, '2026', '08- Agosto', '00_Grabacion', '10- Lunes', 'SONY', 'C0099.MP4')), [x for x in arbol() if 'c0099' in x]
return 'trae de una tarjeta con copia comprobada y la reparte; lo dejado a mano en la bandeja también'