- 8 DB models (services, incidents, monitors, subscribers, etc.) - Full CRUD API for services, incidents, monitors - Public status page with live data - Incident detail page with timeline - API key authentication - Uptime monitoring scheduler - 13 tests passing - TECHNICAL_DESIGN.md with full spec
11 lines
273 B
Python
11 lines
273 B
Python
from __future__ import annotations
|
|
|
|
|
|
def trigger_to_target(s: str) -> str:
|
|
assert s[0] == "<"
|
|
# Strip off the angle brackets
|
|
s = s[1:-1]
|
|
# If there is a [wildcard] or similar, strip that off too
|
|
if s[-1] == "]":
|
|
s = s.split("[")[0]
|
|
return s
|