Jesús Pérez 9cef9b8d57 refactor: consolidate configuration directories
Merge _configs/ into config/ for single configuration directory.
Update all path references.

Changes:
- Move _configs/* to config/
- Update .gitignore for new patterns
- No code references to _configs/ found

Impact: -1 root directory (layout_conventions.md compliance)
2025-12-26 18:36:23 +00:00
..

Architecture Decision Records (ADRs)

This directory contains Architecture Decision Records (ADRs) for SYNTAXIS - significant architectural and design decisions, their rationale, and implications.

What is an ADR?

An ADR documents a significant architectural decision, the reasoning behind it, and trade-offs considered. Each ADR:

  • Describes a specific decision
  • Explains the problem and context
  • Lists alternatives considered
  • States the decision and rationale
  • Documents trade-offs and implications

Index

ADR-001: Wrapper Architecture Strategy

Status: DEPRECATED (See ADR-002 for deployment wrappers) Date: 2025-11-17

Analyzes installation orchestrator wrappers (provision.sh). Deprecated in favor of ADR-002 which focuses on runtime deployment wrappers.

Files: ADR-001-wrapper-architecture-strategy.md


ADR-002: Bundle Wrapper Deployment Architecture

Status: ACCEPTED Date: 2025-11-17

Defines three-layer wrapper deployment for bundle installations:

  1. Bash Wrapper (~/.cargo/bin/syntaxis-cli)

    • Sets environment variables
    • Calls NuShell wrapper
  2. NuShell Wrapper (~/.config/syntaxis/scripts/syntaxis-cli.nu)

    • Discovers configuration files
    • Auto-injects --config path
    • Calls actual binary
  3. Real Binary (~/.cargo/bin/syntaxis-cli.real)

    • Actual compiled executable

Decision: Bundle installations should create the same wrapper structure as development installations for consistent UX.

Key Insight: Users should NOT have to type --config path every time (frequent burden). Wrappers solve this.

Files: ADR-002-bundle-wrapper-deployment.md


How to Use These ADRs

  1. Read the Decision: Start with "Decision" section
  2. Understand the Rationale: See "Problem Statement" and analysis
  3. Review Trade-offs: Consider both sides
  4. Check Status: Is this PROPOSED, ACCEPTED, SUPERSEDED?

Contributing

When proposing a new ADR:

  1. Create ADR-NNN-short-title.md in this directory
  2. Use template from existing ADRs
  3. Include decision, rationale, trade-offs
  4. Update this README with reference

Decision Status Reference

  • PROPOSED: Under review, not yet accepted
  • ACCEPTED: Approved, implementation proceeding
  • IMPLEMENTED: Completed and in production
  • SUPERSEDED: Replaced by newer ADR (reference new one)
  • DEPRECATED: No longer relevant

SYNTAXIS v0.1.0