ito_domain/specs/mod.rs
1//! Promoted spec domain models and repository.
2
3mod repository;
4
5pub use repository::SpecRepository;
6
7use chrono::{DateTime, Utc};
8use std::path::PathBuf;
9
10/// Full promoted spec document.
11#[derive(Debug, Clone)]
12pub struct SpecDocument {
13 /// Spec identifier.
14 pub id: String,
15 /// Canonical source path for the spec.
16 pub path: PathBuf,
17 /// Raw markdown contents.
18 pub markdown: String,
19 /// Last modification timestamp.
20 pub last_modified: DateTime<Utc>,
21}
22
23/// Lightweight promoted spec summary.
24#[derive(Debug, Clone)]
25pub struct SpecSummary {
26 /// Spec identifier.
27 pub id: String,
28 /// Canonical source path for the spec.
29 pub path: PathBuf,
30 /// Last modification timestamp.
31 pub last_modified: DateTime<Utc>,
32}