"""Local fictional learning reference. No website/database/cloud connection."""
import csv,json,sqlite3,hashlib,math,re,statistics,collections
from pathlib import Path

def de_storage(source,out):
 connection=sqlite3.connect(':memory:');connection.executescript((Path(source)/'setup.sql').read_text())
 result=[dict(zip(['month','value_cents'],r)) for r in connection.execute("SELECT substr(o.order_date,1,7),sum(l.quantity*l.unit_price_cents) FROM orders o JOIN order_lines l USING(order_id) WHERE status='completed' GROUP BY 1")]
 connection.close();return {'warehouse_demo':result,'raw_layer':'unchanged CSV files','prepared_layer':'validated line-grain records','serving_layer':'category/month or order-grain aggregates','format_note':'SQLite is a local relational analogue; it is not a distributed warehouse or lakehouse.'}

if __name__=='__main__':
    import argparse,platform
    parser=argparse.ArgumentParser();parser.add_argument('--source',default='.');parser.add_argument('--output',required=True);args=parser.parse_args()
    source=Path(args.source).resolve();out=Path(args.output).resolve()
    if source==out:raise ValueError('Source and output must differ')
    out.mkdir(parents=False,exist_ok=False)
    # Partial folders after an error are NOT successful; result.json is written last.
    result=de_storage(source,out)
    with (out/'result.json').open('x',encoding='utf-8') as handle:json.dump(result,handle,indent=2,allow_nan=False);handle.write(chr(10))
    print(json.dumps(result,indent=2,allow_nan=False))
