gh-inari 0.9.0 → 0.10.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "inari",
3
- "version": "0.9.0",
3
+ "version": "0.10.2",
4
4
  "description": "Governed GitHub Issue/PR/template workflows via the inari CLI. Prefer inari over raw gh for operations it owns; use inari skill for operational playbooks.",
5
5
  "skills": "skills/inari"
6
6
  }
package/README.md CHANGED
@@ -90,8 +90,10 @@ recovery command. The current capability identifiers are
90
90
  `canonical-invocation`, `machine-readable-version`, `capability-diagnostics`,
91
91
  and `extension-bootstrap`.
92
92
 
93
- The `inari`, `gh-inari`, and `gh inari` invocation forms are behaviorally
94
- identical:
93
+ The `inari` executable is canonical. The direct package executable
94
+ `gh-inari` and the `gh inari` extension form are compatibility paths with the
95
+ same governed command semantics; prefer `inari` for agent and human-facing
96
+ commands:
95
97
 
96
98
  ```bash
97
99
  inari issue schema feature --json
@@ -260,6 +262,22 @@ templates:
260
262
 
261
263
  Template and section bindings are deterministic. Stale, unknown, or ambiguous template/section references fail closed. `linkedIssue: true` means that the field contains a GitHub closing reference: `close`, `closes`, `closed`, `fix`, `fixes`, `fixed`, `resolve`, `resolves`, or `resolved`, followed by `#ISSUE-NUMBER` or `OWNER/REPOSITORY#ISSUE-NUMBER`, with an optional colon and case-insensitive keyword. This validates syntax only; GitHub applies automatic linking/closure only under its own contextual rules, including the target default branch.
262
264
 
265
+ When `issue create` or `pr create` omits `--template`, the shared resolver uses
266
+ the repository's optional `.github/inari/template-resolution.yml` authority:
267
+
268
+ ```yaml
269
+ version: 1
270
+ defaults:
271
+ issue: feature
272
+ pr: default
273
+ ```
274
+
275
+ The precedence is explicit selector, configured default, sole candidate,
276
+ interactive TTY selection, then bounded failure. Non-interactive execution never
277
+ guesses among multiple candidates. An invalid or unavailable configured default
278
+ also fails closed. Candidate identifiers and an explicit `--template` recovery
279
+ action are included in structured ambiguity diagnostics.
280
+
263
281
  Issue Form top-level `title` is a fixed native prefix for create validation, but it does not satisfy the caller's required title metadata by itself. An explicit caller title is used as supplied without inferred prefix concatenation or automatic generation. Top-level `labels` are repository-governed defaults and are always retained; caller-supplied labels are appended in order with duplicates removed. Top-level `assignees`, `projects`, and `type`, and upload fields remain unsupported and fail closed rather than being approximated.
264
282
 
265
283
  ## Scope
@@ -0,0 +1,24 @@
1
+ import { GitHubAdapter } from "./github/index.js";
2
+ import type { TemplateResolverDependencies } from "./template-resolver.js";
3
+ interface PackageMetadata {
4
+ readonly name: string;
5
+ readonly version: string;
6
+ readonly description: string;
7
+ }
8
+ interface DiagnosticCommandResult {
9
+ readonly status: number | null;
10
+ readonly stdout: string;
11
+ readonly stderr: string;
12
+ readonly error?: string;
13
+ }
14
+ export interface CliDependencies {
15
+ readonly repositoryRoot?: string;
16
+ readonly createAdapter?: (options: ConstructorParameters<typeof GitHubAdapter>[0]) => GitHubAdapter;
17
+ readonly packageMetadata?: PackageMetadata;
18
+ readonly runDiagnosticCommand?: (args: readonly string[]) => DiagnosticCommandResult;
19
+ readonly runGhFallback?: (argv: readonly string[]) => number;
20
+ readonly templateResolver?: TemplateResolverDependencies;
21
+ }
22
+ /** The installed gh-inari executable entrypoint. */
23
+ export declare function runCli(argv: string[], dependencies?: CliDependencies): Promise<number>;
24
+ export {};