diff --git a/netkan/netkan/indexer.py b/netkan/netkan/indexer.py
index bf9bcbd..1ee11cb 100644
--- a/netkan/netkan/indexer.py
+++ b/netkan/netkan/indexer.py
@@ -103,11 +103,15 @@ class CkanMessage:
             self.ckan_meta.heads.master.checkout()
 
     def status_attrs(self, new=False):
+        inflation_time = parse(self.CheckTime)
         attrs = {
             'success': self.Success,
             # We may wish to change the name in the inflator
             # as the index will set 'last_checked'
-            'last_inflated': parse(self.CheckTime),
+            'last_inflated': inflation_time,
+            # If we have perfomed an inflation, we certainly
+            # have checked the mod!
+            'last_checked': inflation_time,
         }
         if new:
             attrs['ModIdentifier'] = self.ModIdentifier

[Bug] `last_checked` not updating in status
http://status.ksp-ckan.space/

The Last Inflated and Last Indexed columns are working, but Last Checked seems to be only pulling forward values from the Perl bot:

![image](https://user-images.githubusercontent.com/1559108/64924360-56739f00-d7d3-11e9-87ca-bbd827ac8a64.png)

A code search for `last_checked` doesn't find anyplace where it's set.

Do we need it, though? It was always pretty redundant with `last_inflated`. Maybe we should remove it completely?
diff --git a/netkan/tests/indexer.py b/netkan/tests/indexer.py
index 450e745..1276304 100644
--- a/netkan/tests/indexer.py
+++ b/netkan/tests/indexer.py
@@ -107,6 +107,7 @@ class TestCkan(unittest.TestCase):
         attrs = self.message.status_attrs(new=True)
         self.assertEqual(attrs['ModIdentifier'], 'DogeCoinFlag')
         self.assertTrue(attrs['success'])
+        self.assertIsInstance(attrs['last_checked'], datetime)
         self.assertIsInstance(attrs['last_inflated'], datetime)
         with self.assertRaises(KeyError):
             attrs['last_error']
@@ -136,6 +137,7 @@ class TestUpdateCkan(TestCkan):
         attrs = self.message.status_attrs(new=True)
         self.assertEqual(attrs['ModIdentifier'], 'DogeCoinFlag')
         self.assertTrue(attrs['success'])
+        self.assertIsInstance(attrs['last_checked'], datetime)
         self.assertIsInstance(attrs['last_inflated'], datetime)
         self.assertIsInstance(attrs['last_indexed'], datetime)
 
@@ -182,6 +184,7 @@ class TestStagedCkan(TestUpdateCkan):
         attrs = self.message.status_attrs(new=True)
         self.assertEqual(attrs['ModIdentifier'], 'DogeCoinFlag')
         self.assertTrue(attrs['success'])
+        self.assertIsInstance(attrs['last_checked'], datetime)
         self.assertIsInstance(attrs['last_inflated'], datetime)
         with self.assertRaises(KeyError):
             attrs['last_indexed']
@@ -226,6 +229,7 @@ class TestFailedCkan(TestCkan):
         attrs = self.message.status_attrs(new=True)
         self.assertEqual(attrs['ModIdentifier'], 'DogeCoinFlag')
         self.assertFalse(attrs['success'])
+        self.assertIsInstance(attrs['last_checked'], datetime)
         self.assertIsInstance(attrs['last_inflated'], datetime)
         self.assertEqual(
             attrs['last_error'],

pip install --user -e netkan/.[development]
parse_log_pytest
pytest
pytest
apt-get update apt-get install -y gcc
3.7
pytest --no-header -rA --tb=line --color=no -p no:cacheprovider -W ignore::DeprecationWarning
attrs @ file:///croot/attrs_1668696182826/work
boto3==1.33.13
botocore==1.33.13
certifi @ file:///croot/certifi_1671487769961/work/certifi
charset-normalizer==3.4.1
click==8.1.8
flit_core @ file:///opt/conda/conda-bld/flit-core_1644941570762/work/source/flit_core
gitdb==4.0.12
GitPython==3.1.44
idna==3.10
importlib-metadata @ file:///tmp/build/80754af9/importlib-metadata_1648562407465/work
iniconfig @ file:///home/linux1/recipes/ci/iniconfig_1610983019677/work
jmespath==1.0.1
-e git+https://github.com/KSP-CKAN/NetKAN-Infra.git@86ff9fb53237a6e5a2abce28baa78cb26e0e6125#egg=netkan_indexer&subdirectory=netkan
packaging @ file:///croot/packaging_1671697413597/work
pluggy @ file:///tmp/build/80754af9/pluggy_1648042572264/work
py @ file:///opt/conda/conda-bld/py_1644396412707/work
pynamodb==6.0.2
pytest==7.1.2
python-dateutil==2.9.0.post0
requests==2.31.0
s3transfer==0.8.2
six==1.17.0
smmap==5.0.2
tomli @ file:///opt/conda/conda-bld/tomli_1657175507142/work
typing_extensions @ file:///croot/typing_extensions_1669924550328/work
urllib3==1.26.20
zipp @ file:///croot/zipp_1672387121353/work

name: NetKAN-Infra
channels:
  - defaults
  - https://repo.anaconda.com/pkgs/main
  - https://repo.anaconda.com/pkgs/r
  - conda-forge
dependencies:
  - _libgcc_mutex=0.1=main
  - _openmp_mutex=5.1=1_gnu
  - attrs=22.1.0=py37h06a4308_0
  - ca-certificates=2025.2.25=h06a4308_0
  - certifi=2022.12.7=py37h06a4308_0
  - flit-core=3.6.0=pyhd3eb1b0_0
  - importlib-metadata=4.11.3=py37h06a4308_0
  - importlib_metadata=4.11.3=hd3eb1b0_0
  - iniconfig=1.1.1=pyhd3eb1b0_0
  - ld_impl_linux-64=2.40=h12ee557_0
  - libffi=3.4.4=h6a678d5_1
  - libgcc-ng=11.2.0=h1234567_1
  - libgomp=11.2.0=h1234567_1
  - libstdcxx-ng=11.2.0=h1234567_1
  - ncurses=6.4=h6a678d5_0
  - openssl=1.1.1w=h7f8727e_0
  - packaging=22.0=py37h06a4308_0
  - pip=22.3.1=py37h06a4308_0
  - pluggy=1.0.0=py37h06a4308_1
  - py=1.11.0=pyhd3eb1b0_0
  - pytest=7.1.2=py37h06a4308_0
  - python=3.7.16=h7a1cb2a_0
  - readline=8.2=h5eee18b_0
  - setuptools=65.6.3=py37h06a4308_0
  - sqlite=3.45.3=h5eee18b_0
  - tk=8.6.14=h39e8969_0
  - tomli=2.0.1=py37h06a4308_0
  - typing_extensions=4.4.0=py37h06a4308_0
  - wheel=0.38.4=py37h06a4308_0
  - xz=5.6.4=h5eee18b_1
  - zipp=3.11.0=py37h06a4308_0
  - zlib=1.2.13=h5eee18b_1
prefix: /opt/conda/envs/NetKAN-Infra

netkan/tests/indexer.py::TestCkan::test_ckan_message_status_attrs netkan/tests/indexer.py::TestUpdateCkan::test_ckan_message_status_attrs netkan/tests/indexer.py::TestStagedCkan::test_ckan_message_status_attrs netkan/tests/indexer.py::TestNewCkan::test_ckan_message_status_attrs netkan/tests/indexer.py::TestFailedCkan::test_ckan_message_status_attrs
netkan/tests/indexer.py::TestCkan::test_ckan_message_changed netkan/tests/indexer.py::TestCkan::test_ckan_message_delete_attrs netkan/tests/indexer.py::TestCkan::test_ckan_message_filename netkan/tests/indexer.py::TestCkan::test_ckan_message_identifier netkan/tests/indexer.py::TestCkan::test_ckan_message_mod_version netkan/tests/indexer.py::TestCkan::test_ckan_message_repo_dirty netkan/tests/indexer.py::TestCkan::test_ckan_message_repo_untracked netkan/tests/indexer.py::TestCkan::test_ckan_message_stage netkan/tests/indexer.py::TestCkan::test_ckan_message_success netkan/tests/indexer.py::TestCkan::test_ckan_message_write_md5_matches netkan/tests/indexer.py::TestUpdateCkan::test_ckan_message_changed netkan/tests/indexer.py::TestUpdateCkan::test_ckan_message_commit netkan/tests/indexer.py::TestUpdateCkan::test_ckan_message_delete_attrs netkan/tests/indexer.py::TestUpdateCkan::test_ckan_message_filename netkan/tests/indexer.py::TestUpdateCkan::test_ckan_message_identifier netkan/tests/indexer.py::TestUpdateCkan::test_ckan_message_mod_version netkan/tests/indexer.py::TestUpdateCkan::test_ckan_message_repo_dirty netkan/tests/indexer.py::TestUpdateCkan::test_ckan_message_repo_untracked netkan/tests/indexer.py::TestUpdateCkan::test_ckan_message_stage netkan/tests/indexer.py::TestUpdateCkan::test_ckan_message_success netkan/tests/indexer.py::TestUpdateCkan::test_ckan_message_write_md5_matches netkan/tests/indexer.py::TestStagedCkan::test_ckan_message_change_branch netkan/tests/indexer.py::TestStagedCkan::test_ckan_message_changed netkan/tests/indexer.py::TestStagedCkan::test_ckan_message_commit netkan/tests/indexer.py::TestStagedCkan::test_ckan_message_delete_attrs netkan/tests/indexer.py::TestStagedCkan::test_ckan_message_filename netkan/tests/indexer.py::TestStagedCkan::test_ckan_message_identifier netkan/tests/indexer.py::TestStagedCkan::test_ckan_message_mod_version netkan/tests/indexer.py::TestStagedCkan::test_ckan_message_repo_dirty netkan/tests/indexer.py::TestStagedCkan::test_ckan_message_repo_untracked netkan/tests/indexer.py::TestStagedCkan::test_ckan_message_stage netkan/tests/indexer.py::TestStagedCkan::test_ckan_message_success netkan/tests/indexer.py::TestStagedCkan::test_ckan_message_write_md5_matches netkan/tests/indexer.py::TestNewCkan::test_ckan_message_changed netkan/tests/indexer.py::TestNewCkan::test_ckan_message_commit netkan/tests/indexer.py::TestNewCkan::test_ckan_message_delete_attrs netkan/tests/indexer.py::TestNewCkan::test_ckan_message_filename netkan/tests/indexer.py::TestNewCkan::test_ckan_message_identifier netkan/tests/indexer.py::TestNewCkan::test_ckan_message_mod_version netkan/tests/indexer.py::TestNewCkan::test_ckan_message_repo_dirty netkan/tests/indexer.py::TestNewCkan::test_ckan_message_repo_untracked netkan/tests/indexer.py::TestNewCkan::test_ckan_message_stage netkan/tests/indexer.py::TestNewCkan::test_ckan_message_success netkan/tests/indexer.py::TestNewCkan::test_ckan_message_write_md5_matches netkan/tests/indexer.py::TestFailedCkan::test_ckan_message_changed netkan/tests/indexer.py::TestFailedCkan::test_ckan_message_delete_attrs netkan/tests/indexer.py::TestFailedCkan::test_ckan_message_error_message netkan/tests/indexer.py::TestFailedCkan::test_ckan_message_filename netkan/tests/indexer.py::TestFailedCkan::test_ckan_message_identifier netkan/tests/indexer.py::TestFailedCkan::test_ckan_message_mod_version netkan/tests/indexer.py::TestFailedCkan::test_ckan_message_repo_dirty netkan/tests/indexer.py::TestFailedCkan::test_ckan_message_repo_untracked netkan/tests/indexer.py::TestFailedCkan::test_ckan_message_stage netkan/tests/indexer.py::TestFailedCkan::test_ckan_message_success netkan/tests/indexer.py::TestFailedCkan::test_ckan_message_write_md5_matches
netkan/netkan/indexer.py
netkan/netkan/indexer.py