# -*- coding: utf-8 -*-
r"""B173: bóc các mục 06/10/2026 -> 14/10/2026 từ Locqc.md và Tri qc.md thành 2 nguồn riêng."""
import io, os, re

QC = r'C:\Claw 2\QC'
RA = os.path.join(QC, '_tomtat_1410')
os.makedirs(RA, exist_ok=True)

RE_H = re.compile(r'^# BÁO CÁO[^\n]*CẬP NHẬT\s*(\d{1,2})/(\d{1,2})/(\d{4})', re.M)
TU, DEN = (2026, 10, 6), (2026, 10, 14)

for f, ten in (('Locqc.md', 'LOC'), ('Tri qc.md', 'TRI')):
    s = io.open(os.path.join(QC, f), encoding='utf-8').read()
    hs = [(m.start(), int(m.group(1)), int(m.group(2)), int(m.group(3)), m.group(0)) for m in RE_H.finditer(s)]
    hs.append((len(s), 99, 99, 9999, 'HET'))
    chon = []
    for i in range(len(hs) - 1):
        _, d, mo, y, h = hs[i]
        khoa = (y, mo, d)
        if TU <= khoa <= DEN:
            chon.append((hs[i][0], hs[i + 1][0], d, mo, y, h))
    ra = []
    for (a, b, d, mo, y, h) in chon:
        ra.append(s[a:b].rstrip() + '\n')
    txt = ('\n\n'.join(ra)).strip() + '\n'
    p = os.path.join(RA, 'NGUON_%s.md' % ten)
    io.open(p, 'w', encoding='utf-8').write(txt)
    print('  %-12s %d mục trong khoảng | %d ký tự -> %s' % (f, len(chon), len(txt), os.path.basename(p)))
    for (a, b, d, mo, y, h) in chon:
        print('      %02d/%02d/%d · %5d ký tự · %s' % (d, mo, y, b - a, h[:80].replace('# BÁO CÁO', '').strip(' —:-')))
