Add coulombcore hosting expense at 13.99 EUR/mo from Jan 2025

One hosting expense record per month alongside domain rows. Update
infrastructure catalog, tests, and dashboard for 20.74 EUR/mo total
infrastructure.
This commit is contained in:
2026-06-22 02:20:28 +02:00
parent 86ce511764
commit fc2324692c
5 changed files with 273 additions and 157 deletions

View File

@@ -9,9 +9,7 @@
"cost_class": "infrastructure",
"amount": "3.75",
"currency": "EUR",
"source": "invoice",
"billing_term": "2026-01-31/2027-01-30",
"annual_total_eur": "45.00"
"source": "invoice"
},
{
"id": "exp-domain-pro-2025-01",
@@ -21,9 +19,17 @@
"cost_class": "infrastructure",
"amount": "3.00",
"currency": "EUR",
"source": "invoice",
"billing_term": "2026-01-31/2027-01-30",
"annual_total_eur": "36.00"
"source": "invoice"
},
{
"id": "exp-hosting-coulombcore-2025-01",
"period": "2025-01",
"vendor": "hosting.coulombcore",
"description": "coulombcore virtual server hosting",
"cost_class": "infrastructure",
"amount": "13.99",
"currency": "EUR",
"source": "invoice"
},
{
"id": "exp-domain-social-2025-02",
@@ -33,9 +39,7 @@
"cost_class": "infrastructure",
"amount": "3.75",
"currency": "EUR",
"source": "invoice",
"billing_term": "2026-01-31/2027-01-30",
"annual_total_eur": "45.00"
"source": "invoice"
},
{
"id": "exp-domain-pro-2025-02",
@@ -45,9 +49,17 @@
"cost_class": "infrastructure",
"amount": "3.00",
"currency": "EUR",
"source": "invoice",
"billing_term": "2026-01-31/2027-01-30",
"annual_total_eur": "36.00"
"source": "invoice"
},
{
"id": "exp-hosting-coulombcore-2025-02",
"period": "2025-02",
"vendor": "hosting.coulombcore",
"description": "coulombcore virtual server hosting",
"cost_class": "infrastructure",
"amount": "13.99",
"currency": "EUR",
"source": "invoice"
},
{
"id": "exp-domain-social-2025-03",
@@ -57,9 +69,7 @@
"cost_class": "infrastructure",
"amount": "3.75",
"currency": "EUR",
"source": "invoice",
"billing_term": "2026-01-31/2027-01-30",
"annual_total_eur": "45.00"
"source": "invoice"
},
{
"id": "exp-domain-pro-2025-03",
@@ -69,9 +79,17 @@
"cost_class": "infrastructure",
"amount": "3.00",
"currency": "EUR",
"source": "invoice",
"billing_term": "2026-01-31/2027-01-30",
"annual_total_eur": "36.00"
"source": "invoice"
},
{
"id": "exp-hosting-coulombcore-2025-03",
"period": "2025-03",
"vendor": "hosting.coulombcore",
"description": "coulombcore virtual server hosting",
"cost_class": "infrastructure",
"amount": "13.99",
"currency": "EUR",
"source": "invoice"
},
{
"id": "exp-domain-social-2025-04",
@@ -81,9 +99,7 @@
"cost_class": "infrastructure",
"amount": "3.75",
"currency": "EUR",
"source": "invoice",
"billing_term": "2026-01-31/2027-01-30",
"annual_total_eur": "45.00"
"source": "invoice"
},
{
"id": "exp-domain-pro-2025-04",
@@ -93,9 +109,17 @@
"cost_class": "infrastructure",
"amount": "3.00",
"currency": "EUR",
"source": "invoice",
"billing_term": "2026-01-31/2027-01-30",
"annual_total_eur": "36.00"
"source": "invoice"
},
{
"id": "exp-hosting-coulombcore-2025-04",
"period": "2025-04",
"vendor": "hosting.coulombcore",
"description": "coulombcore virtual server hosting",
"cost_class": "infrastructure",
"amount": "13.99",
"currency": "EUR",
"source": "invoice"
},
{
"id": "exp-domain-social-2025-05",
@@ -105,9 +129,7 @@
"cost_class": "infrastructure",
"amount": "3.75",
"currency": "EUR",
"source": "invoice",
"billing_term": "2026-01-31/2027-01-30",
"annual_total_eur": "45.00"
"source": "invoice"
},
{
"id": "exp-domain-pro-2025-05",
@@ -117,9 +139,17 @@
"cost_class": "infrastructure",
"amount": "3.00",
"currency": "EUR",
"source": "invoice",
"billing_term": "2026-01-31/2027-01-30",
"annual_total_eur": "36.00"
"source": "invoice"
},
{
"id": "exp-hosting-coulombcore-2025-05",
"period": "2025-05",
"vendor": "hosting.coulombcore",
"description": "coulombcore virtual server hosting",
"cost_class": "infrastructure",
"amount": "13.99",
"currency": "EUR",
"source": "invoice"
},
{
"id": "exp-domain-social-2025-06",
@@ -129,9 +159,7 @@
"cost_class": "infrastructure",
"amount": "3.75",
"currency": "EUR",
"source": "invoice",
"billing_term": "2026-01-31/2027-01-30",
"annual_total_eur": "45.00"
"source": "invoice"
},
{
"id": "exp-domain-pro-2025-06",
@@ -141,9 +169,17 @@
"cost_class": "infrastructure",
"amount": "3.00",
"currency": "EUR",
"source": "invoice",
"billing_term": "2026-01-31/2027-01-30",
"annual_total_eur": "36.00"
"source": "invoice"
},
{
"id": "exp-hosting-coulombcore-2025-06",
"period": "2025-06",
"vendor": "hosting.coulombcore",
"description": "coulombcore virtual server hosting",
"cost_class": "infrastructure",
"amount": "13.99",
"currency": "EUR",
"source": "invoice"
},
{
"id": "exp-domain-social-2025-07",
@@ -153,9 +189,7 @@
"cost_class": "infrastructure",
"amount": "3.75",
"currency": "EUR",
"source": "invoice",
"billing_term": "2026-01-31/2027-01-30",
"annual_total_eur": "45.00"
"source": "invoice"
},
{
"id": "exp-domain-pro-2025-07",
@@ -165,9 +199,17 @@
"cost_class": "infrastructure",
"amount": "3.00",
"currency": "EUR",
"source": "invoice",
"billing_term": "2026-01-31/2027-01-30",
"annual_total_eur": "36.00"
"source": "invoice"
},
{
"id": "exp-hosting-coulombcore-2025-07",
"period": "2025-07",
"vendor": "hosting.coulombcore",
"description": "coulombcore virtual server hosting",
"cost_class": "infrastructure",
"amount": "13.99",
"currency": "EUR",
"source": "invoice"
},
{
"id": "exp-domain-social-2025-08",
@@ -177,9 +219,7 @@
"cost_class": "infrastructure",
"amount": "3.75",
"currency": "EUR",
"source": "invoice",
"billing_term": "2026-01-31/2027-01-30",
"annual_total_eur": "45.00"
"source": "invoice"
},
{
"id": "exp-domain-pro-2025-08",
@@ -189,9 +229,17 @@
"cost_class": "infrastructure",
"amount": "3.00",
"currency": "EUR",
"source": "invoice",
"billing_term": "2026-01-31/2027-01-30",
"annual_total_eur": "36.00"
"source": "invoice"
},
{
"id": "exp-hosting-coulombcore-2025-08",
"period": "2025-08",
"vendor": "hosting.coulombcore",
"description": "coulombcore virtual server hosting",
"cost_class": "infrastructure",
"amount": "13.99",
"currency": "EUR",
"source": "invoice"
},
{
"id": "exp-domain-social-2025-09",
@@ -201,9 +249,7 @@
"cost_class": "infrastructure",
"amount": "3.75",
"currency": "EUR",
"source": "invoice",
"billing_term": "2026-01-31/2027-01-30",
"annual_total_eur": "45.00"
"source": "invoice"
},
{
"id": "exp-domain-pro-2025-09",
@@ -213,9 +259,17 @@
"cost_class": "infrastructure",
"amount": "3.00",
"currency": "EUR",
"source": "invoice",
"billing_term": "2026-01-31/2027-01-30",
"annual_total_eur": "36.00"
"source": "invoice"
},
{
"id": "exp-hosting-coulombcore-2025-09",
"period": "2025-09",
"vendor": "hosting.coulombcore",
"description": "coulombcore virtual server hosting",
"cost_class": "infrastructure",
"amount": "13.99",
"currency": "EUR",
"source": "invoice"
},
{
"id": "exp-domain-social-2025-10",
@@ -225,9 +279,7 @@
"cost_class": "infrastructure",
"amount": "3.75",
"currency": "EUR",
"source": "invoice",
"billing_term": "2026-01-31/2027-01-30",
"annual_total_eur": "45.00"
"source": "invoice"
},
{
"id": "exp-domain-pro-2025-10",
@@ -237,9 +289,17 @@
"cost_class": "infrastructure",
"amount": "3.00",
"currency": "EUR",
"source": "invoice",
"billing_term": "2026-01-31/2027-01-30",
"annual_total_eur": "36.00"
"source": "invoice"
},
{
"id": "exp-hosting-coulombcore-2025-10",
"period": "2025-10",
"vendor": "hosting.coulombcore",
"description": "coulombcore virtual server hosting",
"cost_class": "infrastructure",
"amount": "13.99",
"currency": "EUR",
"source": "invoice"
},
{
"id": "exp-domain-social-2025-11",
@@ -249,9 +309,7 @@
"cost_class": "infrastructure",
"amount": "3.75",
"currency": "EUR",
"source": "invoice",
"billing_term": "2026-01-31/2027-01-30",
"annual_total_eur": "45.00"
"source": "invoice"
},
{
"id": "exp-domain-pro-2025-11",
@@ -261,9 +319,17 @@
"cost_class": "infrastructure",
"amount": "3.00",
"currency": "EUR",
"source": "invoice",
"billing_term": "2026-01-31/2027-01-30",
"annual_total_eur": "36.00"
"source": "invoice"
},
{
"id": "exp-hosting-coulombcore-2025-11",
"period": "2025-11",
"vendor": "hosting.coulombcore",
"description": "coulombcore virtual server hosting",
"cost_class": "infrastructure",
"amount": "13.99",
"currency": "EUR",
"source": "invoice"
},
{
"id": "exp-domain-social-2025-12",
@@ -273,9 +339,7 @@
"cost_class": "infrastructure",
"amount": "3.75",
"currency": "EUR",
"source": "invoice",
"billing_term": "2026-01-31/2027-01-30",
"annual_total_eur": "45.00"
"source": "invoice"
},
{
"id": "exp-domain-pro-2025-12",
@@ -285,9 +349,17 @@
"cost_class": "infrastructure",
"amount": "3.00",
"currency": "EUR",
"source": "invoice",
"billing_term": "2026-01-31/2027-01-30",
"annual_total_eur": "36.00"
"source": "invoice"
},
{
"id": "exp-hosting-coulombcore-2025-12",
"period": "2025-12",
"vendor": "hosting.coulombcore",
"description": "coulombcore virtual server hosting",
"cost_class": "infrastructure",
"amount": "13.99",
"currency": "EUR",
"source": "invoice"
},
{
"id": "exp-domain-social-2026-01",
@@ -297,9 +369,7 @@
"cost_class": "infrastructure",
"amount": "3.75",
"currency": "EUR",
"source": "invoice",
"billing_term": "2026-01-31/2027-01-30",
"annual_total_eur": "45.00"
"source": "invoice"
},
{
"id": "exp-domain-pro-2026-01",
@@ -309,9 +379,17 @@
"cost_class": "infrastructure",
"amount": "3.00",
"currency": "EUR",
"source": "invoice",
"billing_term": "2026-01-31/2027-01-30",
"annual_total_eur": "36.00"
"source": "invoice"
},
{
"id": "exp-hosting-coulombcore-2026-01",
"period": "2026-01",
"vendor": "hosting.coulombcore",
"description": "coulombcore virtual server hosting",
"cost_class": "infrastructure",
"amount": "13.99",
"currency": "EUR",
"source": "invoice"
},
{
"id": "exp-domain-social-2026-02",
@@ -321,9 +399,7 @@
"cost_class": "infrastructure",
"amount": "3.75",
"currency": "EUR",
"source": "invoice",
"billing_term": "2026-01-31/2027-01-30",
"annual_total_eur": "45.00"
"source": "invoice"
},
{
"id": "exp-domain-pro-2026-02",
@@ -333,9 +409,17 @@
"cost_class": "infrastructure",
"amount": "3.00",
"currency": "EUR",
"source": "invoice",
"billing_term": "2026-01-31/2027-01-30",
"annual_total_eur": "36.00"
"source": "invoice"
},
{
"id": "exp-hosting-coulombcore-2026-02",
"period": "2026-02",
"vendor": "hosting.coulombcore",
"description": "coulombcore virtual server hosting",
"cost_class": "infrastructure",
"amount": "13.99",
"currency": "EUR",
"source": "invoice"
},
{
"id": "exp-domain-social-2026-03",
@@ -345,9 +429,7 @@
"cost_class": "infrastructure",
"amount": "3.75",
"currency": "EUR",
"source": "invoice",
"billing_term": "2026-01-31/2027-01-30",
"annual_total_eur": "45.00"
"source": "invoice"
},
{
"id": "exp-domain-pro-2026-03",
@@ -357,9 +439,17 @@
"cost_class": "infrastructure",
"amount": "3.00",
"currency": "EUR",
"source": "invoice",
"billing_term": "2026-01-31/2027-01-30",
"annual_total_eur": "36.00"
"source": "invoice"
},
{
"id": "exp-hosting-coulombcore-2026-03",
"period": "2026-03",
"vendor": "hosting.coulombcore",
"description": "coulombcore virtual server hosting",
"cost_class": "infrastructure",
"amount": "13.99",
"currency": "EUR",
"source": "invoice"
},
{
"id": "exp-domain-social-2026-04",
@@ -369,9 +459,7 @@
"cost_class": "infrastructure",
"amount": "3.75",
"currency": "EUR",
"source": "invoice",
"billing_term": "2026-01-31/2027-01-30",
"annual_total_eur": "45.00"
"source": "invoice"
},
{
"id": "exp-domain-pro-2026-04",
@@ -381,9 +469,17 @@
"cost_class": "infrastructure",
"amount": "3.00",
"currency": "EUR",
"source": "invoice",
"billing_term": "2026-01-31/2027-01-30",
"annual_total_eur": "36.00"
"source": "invoice"
},
{
"id": "exp-hosting-coulombcore-2026-04",
"period": "2026-04",
"vendor": "hosting.coulombcore",
"description": "coulombcore virtual server hosting",
"cost_class": "infrastructure",
"amount": "13.99",
"currency": "EUR",
"source": "invoice"
},
{
"id": "exp-domain-social-2026-05",
@@ -393,9 +489,7 @@
"cost_class": "infrastructure",
"amount": "3.75",
"currency": "EUR",
"source": "invoice",
"billing_term": "2026-01-31/2027-01-30",
"annual_total_eur": "45.00"
"source": "invoice"
},
{
"id": "exp-domain-pro-2026-05",
@@ -405,9 +499,17 @@
"cost_class": "infrastructure",
"amount": "3.00",
"currency": "EUR",
"source": "invoice",
"billing_term": "2026-01-31/2027-01-30",
"annual_total_eur": "36.00"
"source": "invoice"
},
{
"id": "exp-hosting-coulombcore-2026-05",
"period": "2026-05",
"vendor": "hosting.coulombcore",
"description": "coulombcore virtual server hosting",
"cost_class": "infrastructure",
"amount": "13.99",
"currency": "EUR",
"source": "invoice"
},
{
"id": "exp-domain-social-2026-06",
@@ -417,9 +519,7 @@
"cost_class": "infrastructure",
"amount": "3.75",
"currency": "EUR",
"source": "invoice",
"billing_term": "2026-01-31/2027-01-30",
"annual_total_eur": "45.00"
"source": "invoice"
},
{
"id": "exp-domain-pro-2026-06",
@@ -429,10 +529,18 @@
"cost_class": "infrastructure",
"amount": "3.00",
"currency": "EUR",
"source": "invoice",
"billing_term": "2026-01-31/2027-01-30",
"annual_total_eur": "36.00"
"source": "invoice"
},
{
"id": "exp-hosting-coulombcore-2026-06",
"period": "2026-06",
"vendor": "hosting.coulombcore",
"description": "coulombcore virtual server hosting",
"cost_class": "infrastructure",
"amount": "13.99",
"currency": "EUR",
"source": "invoice"
}
],
"note": "Infrastructure expense ledger: domains and virtual servers. Totals computed by observatory/ledger.py. Virtual server records to be added when invoice data is available."
"note": "Infrastructure expense ledger: domains and virtual server hosting. Totals computed by observatory/ledger.py."
}

View File

@@ -1,6 +1,14 @@
{
"version": 1,
"currency": "EUR",
"servers": [],
"note": "Virtual server expense records pending actual invoice data. Add entries here and mirror monthly rows in expense_records.json when available."
"servers": [
{
"name": "coulombcore",
"monthly_eur": "13.99",
"started": "2025-01",
"description": "Virtual server hosting for coulombcore"
}
],
"monthly_total_eur": "13.99",
"note": "Reference catalog. Monthly expense rows live in expense_records.json."
}