@inharness-ai/claude4spec 1.0.20 → 1.0.21

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.
Files changed (106) hide show
  1. package/.claude/skills/c4s-brief-implementer/SKILL.md +6 -13
  2. package/CHANGELOG.md +13 -0
  3. package/dist/client/assets/{arc-qrIe4IVl.js → arc-Coa9fbDO.js} +1 -1
  4. package/dist/client/assets/{architectureDiagram-3BPJPVTR-CF6sgG8n.js → architectureDiagram-3BPJPVTR-VJZcRMEN.js} +1 -1
  5. package/dist/client/assets/{blockDiagram-GPEHLZMM-Cf8Tx0VN.js → blockDiagram-GPEHLZMM-C7dU2lW1.js} +1 -1
  6. package/dist/client/assets/{c4Diagram-AAUBKEIU-BDkuMEyf.js → c4Diagram-AAUBKEIU-CG_BBm_5.js} +1 -1
  7. package/dist/client/assets/channel-D5gzBvo7.js +1 -0
  8. package/dist/client/assets/{chunk-2J33WTMH-ChycTonk.js → chunk-2J33WTMH-BnS95YpK.js} +1 -1
  9. package/dist/client/assets/{chunk-4BX2VUAB-BpUgWjxx.js → chunk-4BX2VUAB-COr8w3X3.js} +1 -1
  10. package/dist/client/assets/{chunk-55IACEB6-CeHg_yjT.js → chunk-55IACEB6-CxrIbZhB.js} +1 -1
  11. package/dist/client/assets/{chunk-727SXJPM-BpxYq7ab.js → chunk-727SXJPM-DRchPPRe.js} +1 -1
  12. package/dist/client/assets/{chunk-AQP2D5EJ-bghkOtr6.js → chunk-AQP2D5EJ-_SfN7mED.js} +1 -1
  13. package/dist/client/assets/{chunk-FMBD7UC4-4sXokGgd.js → chunk-FMBD7UC4-p2tIiP1D.js} +1 -1
  14. package/dist/client/assets/{chunk-ND2GUHAM-DYQOCE5T.js → chunk-ND2GUHAM-B1mbl2hP.js} +1 -1
  15. package/dist/client/assets/{chunk-QZHKN3VN-NkVuDlFD.js → chunk-QZHKN3VN-DBUpeqvS.js} +1 -1
  16. package/dist/client/assets/classDiagram-4FO5ZUOK-CT-amIxa.js +1 -0
  17. package/dist/client/assets/classDiagram-v2-Q7XG4LA2-CT-amIxa.js +1 -0
  18. package/dist/client/assets/{cose-bilkent-S5V4N54A-1l4P4WRI.js → cose-bilkent-S5V4N54A-BBsY5aKD.js} +1 -1
  19. package/dist/client/assets/{dagre-BM42HDAG-CSQie-gR.js → dagre-BM42HDAG-b-vu4RC9.js} +1 -1
  20. package/dist/client/assets/{diagram-2AECGRRQ-DME9ULoN.js → diagram-2AECGRRQ-j-DW9qSf.js} +1 -1
  21. package/dist/client/assets/{diagram-5GNKFQAL-Dn1Rw5k5.js → diagram-5GNKFQAL-DHX_WYWQ.js} +1 -1
  22. package/dist/client/assets/{diagram-KO2AKTUF-Duh_PNWR.js → diagram-KO2AKTUF-DxdQok_M.js} +1 -1
  23. package/dist/client/assets/{diagram-LMA3HP47-B7Q5pV60.js → diagram-LMA3HP47-BbTIX5c1.js} +1 -1
  24. package/dist/client/assets/{diagram-OG6HWLK6-C0KL_RDd.js → diagram-OG6HWLK6-BQ9ODAlH.js} +1 -1
  25. package/dist/client/assets/{erDiagram-TEJ5UH35-D5elfwSC.js → erDiagram-TEJ5UH35-6lwAL1y9.js} +1 -1
  26. package/dist/client/assets/{flowDiagram-I6XJVG4X-BHmjX-WI.js → flowDiagram-I6XJVG4X-ioSHb5-t.js} +1 -1
  27. package/dist/client/assets/{ganttDiagram-6RSMTGT7-KvoGFbS2.js → ganttDiagram-6RSMTGT7-CXFQp9Nj.js} +1 -1
  28. package/dist/client/assets/{gitGraphDiagram-PVQCEYII-DsZL8BfK.js → gitGraphDiagram-PVQCEYII-C1pVD_NQ.js} +1 -1
  29. package/dist/client/assets/index-DyAnw7YN.js +798 -0
  30. package/dist/client/assets/{index-zzILqHQN.js → index-JaAxQJXh.js} +1 -1
  31. package/dist/client/assets/{index-ClaVbrEF.js → index-hz5T_W2e.js} +1 -1
  32. package/dist/client/assets/{infoDiagram-5YYISTIA-DoQ6iSpJ.js → infoDiagram-5YYISTIA-C2Guev-g.js} +1 -1
  33. package/dist/client/assets/{ishikawaDiagram-YF4QCWOH-akftyN0J.js → ishikawaDiagram-YF4QCWOH-D3v8VBb2.js} +1 -1
  34. package/dist/client/assets/{journeyDiagram-JHISSGLW-PPex4PiV.js → journeyDiagram-JHISSGLW-DX1AW_Ap.js} +1 -1
  35. package/dist/client/assets/{kanban-definition-UN3LZRKU-D114i3s1.js → kanban-definition-UN3LZRKU-CzXThvq2.js} +1 -1
  36. package/dist/client/assets/{linear-BuwQPJom.js → linear-CVw4gl5i.js} +1 -1
  37. package/dist/client/assets/{mermaid.core-CMX3GAvM.js → mermaid.core-C29eoXRj.js} +4 -4
  38. package/dist/client/assets/{mindmap-definition-RKZ34NQL-ClBxWJju.js → mindmap-definition-RKZ34NQL-DEEGVQVA.js} +1 -1
  39. package/dist/client/assets/{pieDiagram-4H26LBE5-hj5zVPj5.js → pieDiagram-4H26LBE5-Dme-VM6m.js} +1 -1
  40. package/dist/client/assets/{quadrantDiagram-W4KKPZXB-CRbR0G7M.js → quadrantDiagram-W4KKPZXB-CURFNo24.js} +1 -1
  41. package/dist/client/assets/{requirementDiagram-4Y6WPE33-Dto4B70I.js → requirementDiagram-4Y6WPE33-DxMZWXME.js} +1 -1
  42. package/dist/client/assets/{sankeyDiagram-5OEKKPKP-DyYP8rwY.js → sankeyDiagram-5OEKKPKP-BW64D4_P.js} +1 -1
  43. package/dist/client/assets/{sequenceDiagram-3UESZ5HK-C-mrSLrJ.js → sequenceDiagram-3UESZ5HK-BATRPm8Q.js} +1 -1
  44. package/dist/client/assets/{stateDiagram-AJRCARHV-IoDlhAe6.js → stateDiagram-AJRCARHV-pgHVMnO3.js} +1 -1
  45. package/dist/client/assets/stateDiagram-v2-BHNVJYJU-szm_LIuD.js +1 -0
  46. package/dist/client/assets/{timeline-definition-PNZ67QCA-DEXg3TEw.js → timeline-definition-PNZ67QCA-qBxJZPWd.js} +1 -1
  47. package/dist/client/assets/{vennDiagram-CIIHVFJN-CNu7LaT1.js → vennDiagram-CIIHVFJN-BZJK9hqJ.js} +1 -1
  48. package/dist/client/assets/{wardley-L42UT6IY-0hGvREmD.js → wardley-L42UT6IY-BobtgEXg.js} +1 -1
  49. package/dist/client/assets/{wardleyDiagram-YWT4CUSO-CVLz-xFz.js → wardleyDiagram-YWT4CUSO-DuWfX_-P.js} +1 -1
  50. package/dist/client/assets/{xychartDiagram-2RQKCTM6-CFymKAcX.js → xychartDiagram-2RQKCTM6-DCw1iURo.js} +1 -1
  51. package/dist/client/index.html +1 -1
  52. package/dist/server/core/plugin-host/entities-router.d.ts +2 -1
  53. package/dist/server/core/plugin-host/entities-router.js +16 -1
  54. package/dist/server/core/plugin-host/entities-router.js.map +1 -1
  55. package/dist/server/db/migrations/041_chat_thread_transagent.sql +22 -0
  56. package/dist/server/index.js +16 -0
  57. package/dist/server/index.js.map +1 -1
  58. package/dist/server/mcp/release-tools/index.d.ts +11 -0
  59. package/dist/server/mcp/release-tools/index.js +68 -5
  60. package/dist/server/mcp/release-tools/index.js.map +1 -1
  61. package/dist/server/mcp/release-tools/projection.d.ts +11 -2
  62. package/dist/server/mcp/release-tools/projection.js +36 -7
  63. package/dist/server/mcp/release-tools/projection.js.map +1 -1
  64. package/dist/server/mcp/release-tools/types.d.ts +39 -2
  65. package/dist/server/mcp/transagent-tools.d.ts +26 -0
  66. package/dist/server/mcp/transagent-tools.js +75 -0
  67. package/dist/server/mcp/transagent-tools.js.map +1 -0
  68. package/dist/server/routes/agent-turn.d.ts +9 -0
  69. package/dist/server/routes/agent-turn.js +58 -1
  70. package/dist/server/routes/agent-turn.js.map +1 -1
  71. package/dist/server/routes/briefs.js +12 -4
  72. package/dist/server/routes/briefs.js.map +1 -1
  73. package/dist/server/routes/chat.js +18 -0
  74. package/dist/server/routes/chat.js.map +1 -1
  75. package/dist/server/routes/plans.js +13 -0
  76. package/dist/server/routes/plans.js.map +1 -1
  77. package/dist/server/routes/threads.js +9 -2
  78. package/dist/server/routes/threads.js.map +1 -1
  79. package/dist/server/services/brief.d.ts +30 -8
  80. package/dist/server/services/brief.js +58 -28
  81. package/dist/server/services/brief.js.map +1 -1
  82. package/dist/server/services/chat-context.js +10 -6
  83. package/dist/server/services/chat-context.js.map +1 -1
  84. package/dist/server/services/chat.d.ts +12 -1
  85. package/dist/server/services/chat.js +56 -21
  86. package/dist/server/services/chat.js.map +1 -1
  87. package/dist/server/services/entity-indexer.js +21 -14
  88. package/dist/server/services/entity-indexer.js.map +1 -1
  89. package/dist/server/services/plan.d.ts +7 -1
  90. package/dist/server/services/plan.js +17 -4
  91. package/dist/server/services/plan.js.map +1 -1
  92. package/dist/server/services/transagent-dispatcher.d.ts +60 -0
  93. package/dist/server/services/transagent-dispatcher.js +147 -0
  94. package/dist/server/services/transagent-dispatcher.js.map +1 -0
  95. package/dist/server/skills/brief-author/SKILL.md +26 -17
  96. package/dist/server/workspace/project-context.js +2 -1
  97. package/dist/server/workspace/project-context.js.map +1 -1
  98. package/dist/shared/entities.d.ts +46 -3
  99. package/dist/shared/entities.js +1 -0
  100. package/dist/shared/entities.js.map +1 -1
  101. package/package.json +1 -1
  102. package/dist/client/assets/channel-CTF_J4I4.js +0 -1
  103. package/dist/client/assets/classDiagram-4FO5ZUOK-Dt9RLC8r.js +0 -1
  104. package/dist/client/assets/classDiagram-v2-Q7XG4LA2-Dt9RLC8r.js +0 -1
  105. package/dist/client/assets/index-DnLELaLA.js +0 -798
  106. package/dist/client/assets/stateDiagram-v2-BHNVJYJU-BblFLijq.js +0 -1
@@ -3,6 +3,12 @@ export type { TodoItem, UsageStats };
3
3
  export type EntityType = 'endpoint' | 'dto' | 'database-table' | 'ui-view' | 'ac' | 'design-system' | 'diagram' | 'section';
4
4
  export type ChangedBy = 'user' | 'agent';
5
5
  export type HttpMethod = 'GET' | 'POST' | 'PUT' | 'PATCH' | 'DELETE';
6
+ /**
7
+ * Response of `GET /api/entities/counts` (spec DTO `entity-counts-response`):
8
+ * a map of entity type → row count, feeding the sidebar ELEMENTS badges so a
9
+ * page view doesn't fetch full entity lists just to read their length.
10
+ */
11
+ export type EntityCountsResponse = Record<string, number>;
6
12
  export type EndpointDtoRelation = 'request' | 'response' | 'error';
7
13
  export interface EndpointDtoLink {
8
14
  dtoSlug: string;
@@ -618,6 +624,15 @@ export interface ChatThread {
618
624
  briefPath: string | null;
619
625
  /** M23: FS path (relative to patchesDir) — set iff contextType='patch'. */
620
626
  patchPath: string | null;
627
+ /**
628
+ * 0.1.69 Transagents: parent thread id. NULL = top-level thread (appears in
629
+ * navigation / counters); NOT NULL = child "banka" spawned via runTransagent
630
+ * (hidden — filtered out of every thread listing and counter).
631
+ */
632
+ parentThreadId: string | null;
633
+ /** 0.1.69 Transagents: the parent's tool_use id that spawned this child (F5
634
+ * reconstruction key together with parent_thread_id). NULL for top-level. */
635
+ spawnedByToolUseId: string | null;
621
636
  createdAt: string;
622
637
  updatedAt: string;
623
638
  }
@@ -706,6 +721,17 @@ export interface PlanListItem {
706
721
  lastThreadId: string | null;
707
722
  updatedAt: string;
708
723
  }
724
+ /**
725
+ * Lightweight projection of a thread attached to a plan, served by
726
+ * `GET /api/plans/:planId/threads`. PlanPage uses this dedicated projection
727
+ * (not the paginated `GET /api/threads` list) so its "Used by N threads"
728
+ * dropdown is unaffected by thread-list pagination.
729
+ */
730
+ export interface PlanThreadItem {
731
+ id: string;
732
+ title: string | null;
733
+ updatedAt: string;
734
+ }
709
735
  export interface PlanVersion {
710
736
  id: number;
711
737
  planId: number;
@@ -742,12 +768,24 @@ export type PlanExecuteResult = {
742
768
  };
743
769
  export type BriefChangedBy = 'user' | 'agent' | 'filesystem';
744
770
  /** Reserved frontmatter keys agent cannot mutate via update_brief. */
745
- export declare const BRIEF_IMMUTABLE_FRONTMATTER_KEYS: readonly ["type", "from_release", "to_release", "generated_at", "generator_version"];
771
+ export declare const BRIEF_IMMUTABLE_FRONTMATTER_KEYS: readonly ["type", "source", "from_release", "to_release", "generated_at", "generator_version"];
772
+ /**
773
+ * 0.1.69 brief provenance.
774
+ * - `release-diff` (default / legacy): self-contained brief grounded in a
775
+ * release diff (`from_release` → `to_release`).
776
+ * - `analysis`: non-self-contained brief whose grounding comes from a parent
777
+ * thread's analysis (passed via runTransagent(message)) rather than a
778
+ * release diff. Always has `to_release = null` (state relative to HEAD).
779
+ */
780
+ export type BriefSource = 'release-diff' | 'analysis';
746
781
  export interface BriefFrontmatter {
747
782
  type: 'brief';
783
+ /** 0.1.69: brief provenance. Absent in legacy briefs ⇒ defaults to 'release-diff' at parse time. */
784
+ source: BriefSource;
748
785
  /** `null` = initial brief (no previous release; `to_release` opisuje stan startowy projektu). */
749
786
  from_release: string | null;
750
- to_release: string;
787
+ /** `null` = analysis brief — state relative to HEAD, no target release. */
788
+ to_release: string | null;
751
789
  generated_at: string;
752
790
  generator_version: string;
753
791
  implemented?: boolean;
@@ -766,12 +804,17 @@ export interface Brief {
766
804
  export interface BriefListItem {
767
805
  path: string;
768
806
  title: string | null;
807
+ /** 0.1.69: brief provenance ('release-diff' | 'analysis'). */
808
+ source: string;
769
809
  /** `null` = initial brief. */
770
810
  fromRelease: string | null;
771
- toRelease: string;
811
+ /** `null` = analysis brief (no target release; state relative to HEAD). */
812
+ toRelease: string | null;
772
813
  implemented: boolean;
773
814
  generatedAt: string;
774
815
  lastModifiedAt: string | null;
816
+ /** 0.1.69 B4: count of top-level (non-banka) brief threads for this brief. */
817
+ threadCount: number;
775
818
  }
776
819
  export interface BriefCreateRequest {
777
820
  /** `null` = initial brief (no previous release to compare against). */
@@ -5,6 +5,7 @@ export const UNRESOLVED_TOKEN = 'unresolved';
5
5
  /** Reserved frontmatter keys agent cannot mutate via update_brief. */
6
6
  export const BRIEF_IMMUTABLE_FRONTMATTER_KEYS = [
7
7
  'type',
8
+ 'source',
8
9
  'from_release',
9
10
  'to_release',
10
11
  'generated_at',
@@ -1 +1 @@
1
- {"version":3,"file":"entities.js","sourceRoot":"","sources":["../../src/shared/entities.ts"],"names":[],"mappings":"AA+SA,yFAAyF;AACzF,MAAM,CAAC,MAAM,qBAAqB,GAAG,CAAC,YAAY,EAAE,QAAQ,CAAU,CAAC;AAgJvE,qGAAqG;AACrG,MAAM,CAAC,MAAM,gBAAgB,GAAG,YAAY,CAAC;AAwb7C,sEAAsE;AACtE,MAAM,CAAC,MAAM,gCAAgC,GAAG;IAC9C,MAAM;IACN,cAAc;IACd,YAAY;IACZ,cAAc;IACd,mBAAmB;CACX,CAAC;AAiFX;;;GAGG;AACH,MAAM,CAAC,MAAM,gCAAgC,GAAG;IAC9C,MAAM;IACN,OAAO;IACP,YAAY;IACZ,YAAY;IACZ,YAAY;CACJ,CAAC"}
1
+ {"version":3,"file":"entities.js","sourceRoot":"","sources":["../../src/shared/entities.ts"],"names":[],"mappings":"AAsTA,yFAAyF;AACzF,MAAM,CAAC,MAAM,qBAAqB,GAAG,CAAC,YAAY,EAAE,QAAQ,CAAU,CAAC;AAgJvE,qGAAqG;AACrG,MAAM,CAAC,MAAM,gBAAgB,GAAG,YAAY,CAAC;AA6c7C,sEAAsE;AACtE,MAAM,CAAC,MAAM,gCAAgC,GAAG;IAC9C,MAAM;IACN,QAAQ;IACR,cAAc;IACd,YAAY;IACZ,cAAc;IACd,mBAAmB;CACX,CAAC;AAmGX;;;GAGG;AACH,MAAM,CAAC,MAAM,gCAAgC,GAAG;IAC9C,MAAM;IACN,OAAO;IACP,YAAY;IACZ,YAAY;IACZ,YAAY;CACJ,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@inharness-ai/claude4spec",
3
- "version": "1.0.20",
3
+ "version": "1.0.21",
4
4
  "description": "Plan the whole system before your agent writes a line of code. Local-first planning layer with structured entities and typed relations.",
5
5
  "license": "MIT",
6
6
  "author": "Mike Tomala <mike@inharness.ai>",
@@ -1 +0,0 @@
1
- import{ai as o,aj as n}from"./mermaid.core-CMX3GAvM.js";const t=(a,r)=>o.lang.round(n.parse(a)[r]);export{t as c};
@@ -1 +0,0 @@
1
- import{s as a,c as s,a as e,C as t}from"./chunk-727SXJPM-BpxYq7ab.js";import{_ as i}from"./mermaid.core-CMX3GAvM.js";import"./chunk-FMBD7UC4-4sXokGgd.js";import"./chunk-ND2GUHAM-DYQOCE5T.js";import"./chunk-55IACEB6-CeHg_yjT.js";import"./chunk-2J33WTMH-ChycTonk.js";import"./index-DnLELaLA.js";var n={parser:e,get db(){return new t},renderer:s,styles:a,init:i(r=>{r.class||(r.class={}),r.class.arrowMarkerAbsolute=r.arrowMarkerAbsolute},"init")};export{n as diagram};
@@ -1 +0,0 @@
1
- import{s as a,c as s,a as e,C as t}from"./chunk-727SXJPM-BpxYq7ab.js";import{_ as i}from"./mermaid.core-CMX3GAvM.js";import"./chunk-FMBD7UC4-4sXokGgd.js";import"./chunk-ND2GUHAM-DYQOCE5T.js";import"./chunk-55IACEB6-CeHg_yjT.js";import"./chunk-2J33WTMH-ChycTonk.js";import"./index-DnLELaLA.js";var n={parser:e,get db(){return new t},renderer:s,styles:a,init:i(r=>{r.class||(r.class={}),r.class.arrowMarkerAbsolute=r.arrowMarkerAbsolute},"init")};export{n as diagram};