Module: Magik::Check

Defined in:
lib/magik/check.rb

Overview

The guardrail linter. The guardrails are the product: ledgers must balance, field :card_number is refused, domain boundaries hold, screens and actions hold no in-process state, timestamps carry a timezone.

Implements: Build order step 12 — magik check linter of docs/idea/00-build-spec.md.

Planned DSL surface, copied from the spec:

* `magik check --scale — warns on queries missing tenant_id in WHERE`
* `boot guardrails enforced as a standalone lint pass`

Status: Not implemented — spec only. Every entry point below raises NotImplementedError. Nothing here reads config, touches a database or emits a byte of HTML.

See Also:

Constant Summary collapse

SPEC_PHASE =

The build-spec phase this subsystem implements.

Returns:

  • (String)
"Build order step 12 — `magik check` linter"
DSL_SURFACE =

The DSL this subsystem will expose, verbatim from the spec.

Returns:

  • (Array<String>)
[
  "magik check --scale — warns on queries missing tenant_id in WHERE",
  "boot guardrails enforced as a standalone lint pass"
].freeze
STATUS =

Implementation status of this subsystem.

Returns:

  • (String)
"Not implemented — spec only"

Class Method Summary collapse

Class Method Details

.define(*_args, **_options) ⇒ void

This method returns an undefined value.

Entry point for the Check DSL.

Parameters:

  • _args (Array)

    ignored

  • _options (Hash)

    ignored

Raises:

  • (NotImplementedError)

    always, until Build order step 12 lands



42
43
44
# File 'lib/magik/check.rb', line 42

def self.define(*_args, **_options)
  raise NotImplementedError, "Magik::Check is spec-only; see docs/idea/00-build-spec.md"
end