USAFacts should group by geo before smoothing
USAFacts smoothing just jams the whole data series in there without regard for geo_id:

https://github.com/cmu-delphi/covidcast-indicators/blob/e8035936647065e8b082b75a76d39046e99d7f81/usafacts/delphi_usafacts/run.py#L100-L101

& has been that way since November: https://github.com/cmu-delphi/covidcast-indicators/pull/429/files

The equivalent operation in JHU groups by what I'm assuming is geo_id first before applying the smoother in a transform operation:

https://github.com/cmu-delphi/covidcast-indicators/blob/e8035936647065e8b082b75a76d39046e99d7f81/jhu/delphi_jhu/run.py#L106

The grouping implementation is correct.
diff --git a/usafacts/delphi_usafacts/run.py b/usafacts/delphi_usafacts/run.py
index 96dc81c3..309f7e2c 100644
--- a/usafacts/delphi_usafacts/run.py
+++ b/usafacts/delphi_usafacts/run.py
@@ -98,7 +98,9 @@ def run_module():
         df = dfs[metric]
         # Aggregate to appropriate geographic resolution
         df = geo_map(df, geo_res, sensor)
-        df["val"] = SMOOTHERS_MAP[smoother][0].smooth(df[sensor].values)
+        df["val"] = df[["geo_id", sensor]].groupby("geo_id")[sensor].transform(
+            SMOOTHERS_MAP[smoother][0].smooth
+        )
         df["se"] = np.nan
         df["sample_size"] = np.nan
         # Drop early entries where data insufficient for smoothing
diff --git a/usafacts/tests/test_run.py b/usafacts/tests/test_run.py
index 2b8bfab9..2134c444 100644
--- a/usafacts/tests/test_run.py
+++ b/usafacts/tests/test_run.py
@@ -39,6 +39,8 @@ class TestRun:
         for date in dates:
             for geo in geos:
                 for metric in metrics:
+                    if "7dav" in metric and date in dates[:6]:
+                        continue  # there are no 7dav signals for first 6 days
                     expected_files += [date + "_" + geo + "_" + metric + ".csv"]
 
         assert set(csv_files) == set(expected_files)
['usafacts/delphi_usafacts/run.py', 'usafacts/tests/test_run.py']