Files
ruvnet--RuView/v2/crates/homecore-migrate/Cargo.toml
T
ruv e3696da8d8 docs(adr): write ADR-165 (HOMECORE-MIGRATE), repoint migrate 134→165 — ADR-164 G3
homecore-migrate cited "ADR-134 (HOMECORE-MIGRATE)", but on-disk ADR-134 is
"First-Class CIR Support" — a different decision. The migrate crate was governed
by a phantom identity (ADR-164 Gap G3).

- New ADR-165-homecore-migrate-from-home-assistant.md (next free number),
  reverse-documented from the shipped P1 scaffold: HA .storage reader, versioned
  format gate (unknown minor_version = hard error), per-artifact parsers, inspect
  CLI, structured errors. Status: Accepted — P1 scaffold (full conversion P2).
  Trust-boundary rationale for the untrusted .storage import is the centerpiece.
- Repointed every ADR-134 governing reference in v2/crates/homecore-migrate/
  (Cargo.toml, README.md, src/lib.rs, src/config_entries.rs,
  src/storage_format/mod.rs) → ADR-165. Left the ADR-132 (recorder-feature)
  refs intact. Explanatory renumber notes retained.
- On-disk ADR-134 (CIR) untouched. ADR-126 series-map registry row owner-gated.

Docs/comments only — cargo build -p homecore-migrate --no-default-features
still compiles.

Co-Authored-By: claude-flow <ruv@ruv.net>
2026-06-12 23:00:33 -04:00

62 lines
1.8 KiB
TOML

# homecore-migrate — Migration tooling from Python Home Assistant.
# Implements ADR-165 (HOMECORE-MIGRATE), P1 scaffold:
# (was cited as "ADR-134"; renumbered to ADR-165 — on-disk ADR-134 is CIR. See ADR-164/ADR-165.)
# - HaStorageDir + HaStorageEnvelope: reads `.storage/*.json` files
# - Versioned format parsers under `storage_format::v<N>`
# - entity_registry, device_registry, config_entries parsers
# - secrets.yaml + automations.yaml parsers
# - CLI: `homecore-migrate inspect` / `homecore-migrate import-entities`
#
# P2 will add homecore-recorder side-by-side DB export (feature-gated).
[package]
name = "homecore-migrate"
version = "0.1.0-alpha.0"
edition = "2021"
license = "MIT"
authors = ["rUv <ruv@ruv.net>", "HOMECORE Contributors"]
description = "Migration tooling from Python Home Assistant to HOMECORE (ADR-165 P1 scaffold)"
repository = "https://github.com/ruvnet/RuView"
[[bin]]
name = "homecore-migrate"
path = "src/main.rs"
[lib]
name = "homecore_migrate"
path = "src/lib.rs"
[features]
default = []
# P2: enable when homecore-recorder ships (ADR-132). Exports side-by-side DB.
recorder = []
[dependencies]
# HOMECORE state machine — local path (ADR-127).
homecore = { path = "../homecore", version = "0.1.0-alpha.0" }
# Async runtime.
tokio = { version = "1", features = ["full"] }
# Serialisation — JSON for .storage files, YAML for secrets/automations.
serde = { version = "1", features = ["derive"] }
serde_json = "1"
serde_yaml = "0.9"
# Error handling.
thiserror = "1"
# Tracing/logging.
tracing = "0.1"
tracing-subscriber = "0.3"
# CLI argument parsing.
clap = { version = "4", features = ["derive"] }
# Error handling in main.rs
anyhow = "1"
[dev-dependencies]
tokio = { version = "1", features = ["full", "test-util"] }
tempfile = "3"