Skip to content

Releases: igapyon/mikuproject-java

v0.8.3.4 区切りリリース

01 May 14:00
142d16d

Choose a tag to compare

v0.8.3.4 区切りリリース

v0.8.3.3 ビルドテスト

01 May 09:44
f752dc6

Choose a tag to compare

v0.8.3.3 ビルドテスト

v0.8.3.2 リリース(ビルドテスト)

01 May 09:39
a504ad5

Choose a tag to compare

v0.8.3.2 リリース(ビルドテスト)

v0.8.3.1 リリース、Actionsの機能テスト

01 May 09:31
7be41b8

Choose a tag to compare

v0.8.3.1 リリース、Actionsの機能テスト

v0.8.3 mikuproject-java : Agent Skills 向け grouped CLI と upstream 追従

01 May 00:38
b8f8592

Choose a tag to compare

mikuproject-java 0.8.3: Agent Skills 向け grouped CLI と upstream 追従

概要

mikuproject-java のバージョンを 0.8.3 に更新し、CLI を Agent Skills から呼び出しやすい command group / named option 体系へ整理しました。

あわせて、Node.js upstream CLI との共有コマンド契約に合わせた引数・標準入出力・diagnostics 対応、AI 向け projection bundle 出力、sources jar 配布、miku ソフトウェアシリーズ設計文書の追加・更新を含みます。

主な変更

  • pom.xml と CLI のバージョン表示を 0.8.3 に更新
  • CLI に --version / version の表示を追加
  • mvn packagemikuproject-sources.jar を生成し、配布 zip に同梱
  • CLI の正規入口を ai / state / validate / export / import / merge / report の command group 体系へ整理
  • workbook JSON state 起点の CLI 導線を追加・整理
    • state from-draft
    • state validate
    • state import
    • state merge
    • state apply-patch
    • state summarize
    • state diff
  • AI 向け CLI 導線を追加・整理
    • ai spec
    • ai detect-kind
    • ai export project-overview
    • ai export task-edit
    • ai export phase-detail
    • ai export bundle
    • ai validate-patch
  • ai export bundle を追加し、AI 向け projection bundle を出力可能に変更
  • --diagnostics text|json 対応を export / report / detect-kind 系に追加・補強
  • --in - / --out -、および --in 省略時の stdin 入力を共有コマンド向けに補強
  • binary export / report 出力で stdout 出力を扱えるように更新
  • XLSX import / export / merge と report 出力を grouped command 体系へ整理
  • ai export phase-detail の scoped root option を --root-task-uid に更新
  • ai export task-edit / ai export phase-detail--select option を追加
  • ai detect-kind の出力形式を kind 文字列のみへ変更
  • README、CLI help、runtime CLI docs のコマンド一覧と例を更新
  • CLI help と README の同期テスト、決定性テスト、Node.js upstream parity テストを更新
  • vendor/mikuproject を upstream 更新に追従
  • miku ソフトウェアシリーズの設計文書を追加・更新
    • overview design
    • main app design
    • Java app design
    • straight conversion design
    • Agent Skills design
    • MCP design
  • docs/miku-straight-conversion-guide.md を削除し、docs/miku-soft-30-straight-conversion-v20260425.md 参照へ整理

確認情報

コミット本文に記録されている確認は次の通りです。

  • mvn package 成功
  • mvn test 実行済み
  • java -jar target/mikuproject.jar --helpai export bundle--diagnostics text|json の表示を確認
  • java -jar target/mikuproject.jar --version の確認
  • java -jar target/mikuproject.jar ai spec の確認
  • target/mikuproject.jarMain-Class と AI JSON spec resource が含まれることを確認
  • target/mikuproject-dist.zipmikuproject.jar が含まれることを確認

miku straight conversion ガイド追加と関連設計文書の整理

21 Apr 22:54
f52e4e4

Choose a tag to compare

miku straight conversion ガイド追加と関連設計文書の整理

概要

miku シリーズで Node.js / TypeScript 系 upstream を Java へ移す際の straight conversion migration 方針をまとめたガイドを追加しました。

あわせて、README と STEP1 初期設計メモを、現在の位置づけに合わせて更新しています。

変更内容

  • docs/miku-straight-conversion-guide.md を新規追加

    • straight conversion の目的、基本姿勢、開始時チェックリスト、作業の再現手順を整理
    • miku Java 版の固定前提として、source / binary 1.8 compatibility、Maven、JUnit Jupiter、mvn test、single fat jar を明記
    • upstream 参照方法、class / test / CLI 対応表、follow-up log、remaining items の扱いを整理
    • package / class / method 命名、public facade、helper class、result object、warning、CLI diagnostics、classpath resource、archive determinism などの実務ルールを整理
    • Apache POI を思いつきやすい xlsx 領域でも、必要範囲が限定される場合はスクラッチ実装を選びうる方針を明記
  • README.md を更新

    • Development Docs の参照順に docs/miku-straight-conversion-guide.md を追加
    • 同ガイドを、Java port を straight conversion first として扱う理由の文書として追加
  • docs/msprojectxml-import-design.md を更新

    • STEP1 初期の import 設計メモとしての位置づけを明確化
    • 現在の正本として参照すべき文書群を追加
    • 既存実装済み class 群を踏まえ、未実装候補ではなく upstream 対応を追うための関連 class 群として表現を調整
  • docs/projectmodel-first-cut.md を更新

    • STEP1 初期の ProjectModel 実装順序メモとしての位置づけを明確化
    • 現在は主要 POJO と codec / workbook / patch / xlsx / report / AI view 連携の導線が存在する前提に更新
    • 現在の正本として参照すべき文書群を追加
    • 初期移植時の優先対象として読めるよう表現を調整
  • docs/projectmodel-pojo-class-plan.md を更新

    • STEP1 初期の POJO class 対応設計メモとしての位置づけを明確化
    • 現在の正本として参照すべき文書群を追加
    • 候補未確定 を未実装 TODO と誤読しないよう、実装後方針への参照を追加

変更範囲

  • 変更ファイル数: 5
  • 追加行数: 1002
  • 削除行数: 40

Project XLSX レイアウト補強と ProjectModel validation / report 回帰の整備

21 Apr 14:29
5a6775a

Choose a tag to compare

Project XLSX レイアウト補強と ProjectModel validation / report 回帰の整備

概要

  • Project XLSX レイアウト補強と ProjectModel validation / report 回帰の整備
  • Merge pull request #20 from igapyon/tiga0421hef

主な変更

Project XLSX 出力の補強

  • Project XLSX 出力に sheet theme、header / section / label の色付け、editable cell styling を追加
  • Project sheet に Settings section と merged range を追加
  • Options sheet の boolean 表示を定数化し、header styling を適用
  • entity sheet 出力で sheet ごとの theme を適用し、列ごとの表示形式に応じた cell style を付与
  • date / duration / percent / reference / notes などの列種別に応じた表示スタイルを整理
  • import 対象項目を sheet ごとに管理し、editable cell として強調

validation と warning の整備

  • MsProjectValidate 内の重複した warning 判定を helper メソッドへ整理
  • task / resource / assignment の baseline / timephased data の validation を専用メソッドへ分離
  • placeholder / summary / milestone を除く複数 task が、同一 start / finish かつ zero duration に潰れている場合の warning を追加

Project Patch JSON の補強

  • delete_assignment operation の dispatch と実処理を追加
  • assignment 削除時に taskUidresourceUid の change を記録
  • assignment 未存在時の warning を追加

テスト強化

  • Project XLSX の style、theme、Settings section、merged range、boolean data validation の確認を追加
  • project_draft_view import で task 日付未指定時に project 起点 fallback を使うケースを追加
  • zero duration task warning の unit test / CLI test を追加
  • report bundle、report dir、standalone wbs.xlsx の同等性確認を追加
  • monthly calendar SVG について、sample / dependency / hierarchy の各 fixture で月数・ファイル名・非空を確認するテストを追加
  • delete_assignment の warning / change 内容を確認するテストを追加
  • CLI テスト内の一時 XML 作成処理を helper 化

ドキュメント更新

  • TODO.mddocs/remaining-migration-items.mddocs/runtime-java-cli.mddocs/upstream-class-mapping.mddocs/upstream-followup-log.mddocs/upstream-test-mapping.md を更新
  • Project XLSX layout 補強、Project Patch JSON delete 系補強、zero duration warning 方針、report 同等性回帰の確認結果を反映
  • validate-xml での zero duration warning を runtime docs に追記

補足

  • 変更ファイル数: 19
  • 差分統計: 1151 insertions, 389 deletions

Java CLI 配布物整備と Node upstream parity 強化

20 Apr 22:48
7eca2d6

Choose a tag to compare

Java CLI 配布物整備と Node upstream parity 強化

Release Body

概要

Java CLI の配布成果物を固定し、CLI / workbook / report / SVG / XLSX 出力の実用性と Node upstream 追従性を強化しました。

主な内容は、fat jar / dist.zip の生成、CLI command と batch command の拡充、workbook import/export の編集対象拡張、AI JSON 仕様 Markdown の JAR 内リソース化、SVG タイムライン基準日の修正、WBS SVG / WBS XLSX / report ZIP / OOXML の Node upstream parity 強化です。

主な変更

Java CLI 配布物

  • mvn package で runtime 用の単一 fat jar を生成するように変更
    • target/mikuproject.jar
  • 配布用 zip を生成するように変更
    • target/mikuproject-dist.zip
  • target/mikuproject-dist.zip に以下を同梱
    • mikuproject.jar
    • README.md
    • LICENSE
    • docs/runtime-java-cli.md
  • Java CLI の正規実行経路を java -jar <bundled-jar> として文書化

CLI / batch command

  • CLI entrypoint を主要 Java runtime 機能へ拡張
  • report / workbook / patch / AI JSON / XLSX 系の batch command を追加・整理
  • usage error / command failed / I/O error の出力方針を整理
  • README の CLI command 一覧を更新
  • CLI test を拡充し、未知 command、usage error、batch command の pair 不整合などを確認

workbook import/export

  • workbook JSON / XLSX の編集対象列を拡張
  • Tasks に以下の export / import / merge 対応を追加
    • Type
    • Priority
    • ConstraintType
    • ConstraintDate
    • Deadline
  • Resources に以下の export / import / merge 対応を追加
    • Cost
    • ActualCost
    • RemainingCost
    • PercentWorkComplete
    • WorkGroup
    • StandardRateFormat
    • OvertimeRateFormat
  • Assignments に以下の export / import / merge 対応を追加
    • StartVariance
    • FinishVariance
    • Delay
    • Milestone
    • WorkContour
    • Cost
    • ActualCost
    • RemainingCost
    • OvertimeWork
    • ActualOvertimeWork
  • assignment の日時更新用処理を追加
  • calendar 系の真偽値列取り込み確認を追加
    • Calendars.IsBaseCalendar
    • NonWorkingDays.DayWorking

AI JSON 仕様 Markdown

  • CoreApiAiJson#getAiJsonSpecText() を classpath / JAR 内リソース読み込みに変更
  • 実行時に vendor/mikuproject/docs/mikuproject-ai-json-spec.md を相対パスで直接読まないように変更
  • Maven の process-resources で AI JSON 仕様 Markdown を classpath へコピー
  • export-ai-json-spec が working directory に vendor/... を持たない状態でも動くことを確認する CLI test を追加

SVG / report 出力

  • daily / weekly SVG のタイムライン基準日を、固定日付ではなくモデル内の最初の task 開始日に基づくように変更
  • サンプル月以外の日付を持つ task が SVG viewBox 外へ配置される問題を修正
  • daily / weekly / monthly SVG の日付軸、背景、bar、milestone、summary、月次カレンダー構造を Node upstream に近づける修正を追加
  • weekly SVG の viewport trim、label placement、dependency connector routing を補強
  • report bundle の entry 順を Node upstream に合わせて変更
    • wbs.xlsx
    • wbs.md
    • mermaid.mmd
    • daily.svg
    • weekly.svg
    • monthly-calendar/*.svg

XLSX / OOXML

  • report / CLI / Core API の主要導線を、独自 workbook byte 形式から実 OOXML ZIP 出力へ切り替え
  • deterministic stored ZIP writer を追加
  • report bundle / monthly SVG ZIP / OOXML workbook ZIP の決定性を強化
  • XLSX style 生成を、固定 style から動的 style book 生成へ拡張
    • fill
    • alignment
    • number format
    • wrap
    • border
  • worksheet の data validation build / parse を追加
  • trailing empty cell 保持を追加
  • XlsxCellLikeformula を追加
  • XlsxSheetLikefreezePane を追加
  • XlsxFreezePaneLike を追加
  • worksheet XML の build / parse で formula cell と freeze pane を扱うように変更
  • inline string の xml:space、空セル、数値表現、worksheet XML 整形を調整
  • package XML の出力整形を調整

WBS XLSX

  • WBS 表示で WBS が空の場合に OutlineNumber を使うよう修正
  • row height、hidden columns、date band、progress band、legend / summary、predecessor 表示、calendar 表示を Node upstream に近づける修正を追加
  • UID / ID / WBS / outline level 用の identifier cell を追加
  • task label に summary / milestone / task の prefix と outline level に応じた indent を反映
  • progress / detail / task cell の wrap や null 表現を調整
  • header / title / legend / reference cell の style を upstream 寄りに調整

Project XLSX

  • Project / Tasks / Resources / Assignments / Calendars / NonWorkingDays / Options sheet の列幅を追加
  • boolean 入力用の data validation を追加
  • Options sheet を BooleanChoice / Meaning 形式へ変更
  • Project sheet の ScheduleFromStart に boolean data validation を追加
  • Project XLSX のテストで列幅、data validation、Options sheet の内容を確認

Patch JSON

  • delete_resource / delete_calendar で、削除拒否時の blocker 情報を warning に含めるよう改善

Node upstream parity / テスト

  • Java CLI 出力の決定性を確認するテストを追加
  • Node upstream の report directory と byte 比較する opt-in テストを追加
  • Node upstream report directory 生成用のテストスクリプトを追加
  • Node upstream report bundle ZIP 生成用のテストスクリプトを追加
  • Node upstream monthly SVG ZIP 生成用のテストスクリプトを追加
  • MikuprojectNodeParityTest に以下を追加
    • report directory の byte-level parity
    • report bundle ZIP の byte-level parity
    • monthly SVG ZIP の byte-level parity
  • ExcelIoTest に formula / freezePane の OOXML package export / import 確認を追加
  • ProjectXlsxTest に Project XLSX の列幅、boolean data validation、Options sheet の確認を追加

ドキュメント

  • README.md を更新
    • Java CLI の配布成果物を明記
    • CLI command 一覧を更新
    • Development Docs の導線を追加
    • Java 版の現在地を coreCLI / report に分けて整理
  • docs/runtime-java-cli.md を追加
    • runtime 配布物
    • dist.zip の内容
    • 正規実行経路
    • CLI 利用前提
    • AI JSON 仕様 Markdown の JAR 内リソース化
    • report SVG の注意点
  • docs/development.md を更新
    • focused test command
    • upstream 追随時の確認フロー
    • docs-only 更新時の運用メモ
  • docs/remaining-migration-items.md を更新
    • Java 版の現在地、残件、保守フェーズの論点を整理
  • docs/upstream-class-mapping.md, docs/upstream-test-mapping.md, docs/upstream-followup-log.md を追加・更新
    • upstream file と Java class / test の対応
    • upstream 追随時の確認単位
    • report / workbook / import / AI view などの follow-up 記録
  • TODO.md を整理
    • Java 版と upstream 側 TODO の役割を分離
    • straight conversion が薄い箇所と byte-level parity 方針を整理
    • 再開ポイントを追加
  • vendor/mikuproject/docs/ 配下に workbook / calendar / report / regression plan 関連文書を追加・更新

確認状況

確認状況は以下です。

  • mvn package -DskipTests
    • 実行済み
    • target/mikuproject.jartarget/mikuproject-dist.zip の生成確認済み
  • mvn test
    • セッション内で成功確認済み
  • mvn package
    • TODO 上で通過済みとして記録
  • opt-in Node parity
    • TODO 上で通過済みとして記録
  • dependency.xml の report directory / report bundle ZIP / monthly SVG ZIP
    • Node upstream と byte-level parity 済みとして記録

注意点

  • Node upstream 比較テストは opt-in です。
  • Node upstream 比較には以下が必要です。
    • MIKUPROJECT_RUN_NODE_PARITY=true
    • vendor/mikuproject/node_modules

既知の残課題

  • ProjectXlsxExport* の editable cell styling
  • sheet theme
  • Project sheet の Settings section / merged range
  • projectpatchjson の warning / blocker details の upstream 構造比較
  • 各 report の option 契約と比較粒度をどこまで細かく保守するか

Java CLI の拡張と移植状況メモの保守フェーズ整理

19 Apr 07:26
96aab44

Choose a tag to compare

Java CLI の拡張と移植状況メモの保守フェーズ整理

概要

Java 版 mikuproject の CLI を大きく拡張し、report / workbook / AI view の出力・batch 処理と比較テストを強化しました。あわせて、移植状況メモを「残作業一覧」中心ではなく、「移植完了寄りの現在地と保守フェーズの論点」を示す形へ整理しています。

主な変更

  • Java CLI entry point を追加・拡張
    • XML validate
    • Mermaid / WBS Markdown / SVG / monthly SVG zip export
    • report bundle / report directory export
    • WBS xlsx / workbook JSON / xlsx export
    • project_overview_view / phase_detail_view / task_edit_view / project_draft_request export
    • workbook JSON / patch JSON validate / import / merge / apply
    • AI JSON spec / kind / import
    • external import
  • Java CLI 独自拡張として、複数入力を扱う *-batch command を追加
  • report / SVG / WBS xlsx で option 伝播を整理
    • WBS display range / progress / holiday option
    • SVG holiday / label option
    • report bundle / report directory への option 反映
  • report / workbook / import / WBS 出力まわりの比較テストを追加・拡張
  • docs/remaining-migration-items.md を、移植完了・保守フェーズ寄りの表現へ整理

ドキュメント

  • README.md
    • CLI command 一覧を更新
  • docs/upstream-class-mapping.md
    • 現在地に合う形へ更新
  • docs/upstream-test-mapping.md
    • CLI / fixture / workbook / report / WBS まわりのテスト対応を反映
  • docs/remaining-migration-items.md
    • 進捗目安を 98% 前後に更新
    • Java CLI 独自の *-batch 拡張を明記
    • 文書全体を保守フェーズ前提の構成へ整理

補足

  • Web UI / browser main 系は Java 版の移植対象外です
  • Java CLI の *-batch は upstream にそのままあった機能ではなく、CLI 利便性向上のための後付け拡張です

確認状況

  • mvn test: 実行済み
  • 結果: Tests run: 106, Failures: 0, Errors: 0, Skipped: 0

mikuproject-java 初回リリース(開発途中)

19 Apr 00:24
c484b80

Choose a tag to compare

mikuproject-java 初回リリース(開発途中)

概要

mikuproject の Java 版として、初回リリースを公開します。

このリリースでは、Node.js upstream の思想を引き継ぎつつ、Java 1.8 / Maven 前提の移植を進めた成果を含みます。今回の移植範囲には Web UI は含めず、内部モデル、MS Project XML、patch / workbook / report 系、関連テストを中心に構成しています。

含まれるもの

  • ProjectModel 系 POJO
  • MS Project XML
    • import / export
    • normalize
    • validate
    • default calendar 補完
  • msproject 周辺機能
    • samples
    • CSV
    • Mermaid
    • AI views
  • project-patch-json*
  • project-workbook-json*
  • project-xlsx*
  • excel-io*
  • core-api*
  • wbs-markdown
  • wbs-svg
  • wbs-xlsx

方針

  • Java package は jp.igapyon.mikuproject
  • Java 1.8 をターゲット
  • upstream の file / class / method 対応を追いやすい構成を重視
  • Web UI / browser main 系は移植対象外
  • CLI が必要な方向性を前提とするが、CLI 自体の扱いは要確認

現在の状況

  • MS Project XML STEP1: およそ 95% 前後
  • upstream 全体移植: およそ 83% 前後

これは厳密な工数比ではなく、upstream file 群と Java 側の現在実装範囲から見た概算です。

確認状況

  • mvn test 実行済み
  • 結果: Tests run: 78, Failures: 0, Errors: 0, Skipped: 0

未完了・今後の対象

  • wbs-svg-axis.ts
  • wbs-svg-public.ts
  • Web UI / browser main 系
    • ただし、Java 版では移植対象外

補足

  • upstream との対応関係は docs/upstream-class-mapping.mddocs/upstream-test-mapping.md に整理済み
  • 未着手項目は docs/remaining-migration-items.md に整理済み